/* Homepage catalog, partner marquee and footer columns. */
.landing-page .partner-strip{position:relative;overflow:hidden;border:0;background:transparent}
.landing-page .partner-inner{display:grid;grid-template-columns:minmax(0,1fr);align-items:center;gap:22px 16px;width:100%;max-width:none;padding:12px 0 42px}
.landing-page .partner-inner h2{grid-column:1;grid-row:1;margin:0;text-align:center;font:600 var(--text-caption)/1.4 var(--font-sans);letter-spacing:normal;white-space:nowrap;color:var(--color-text-secondary)}
.landing-page .partner-window{grid-column:1/-1;grid-row:2;position:relative;width:100%;min-width:0;overflow:hidden;mask-image:linear-gradient(90deg,transparent 0,#000 24px,#000 calc(100% - 24px),transparent 100%);-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 24px,#000 calc(100% - 24px),transparent 100%)}
.landing-page .partner-track{display:flex;width:max-content;animation:home-partners 28s linear infinite}
.landing-page .partner-set{display:flex;align-items:center;justify-content:space-around;gap:clamp(48px,8vw,144px);margin:0;padding:0 clamp(30px,4vw,70px);list-style:none;min-width:max(980px,100vw)}
.landing-page .partner-set li{font-family:var(--font-sans);font-size:clamp(24px,2.4vw,36px);font-weight:600;letter-spacing:normal;color:var(--color-text-secondary);white-space:nowrap}
.landing-page .partner-symbol{font-family:var(--font-brand-symbol);font-weight:var(--font-weight-brand-symbol)}
.landing-page .rail-controls button{display:grid;place-items:center;flex-shrink:0;width:38px;height:38px;border:1px solid var(--color-border-strong);border-radius:50%;color:var(--color-text-secondary);background:var(--color-surface)}
.landing-page .rail-controls .material-symbols-outlined{font-size:20px}
.landing-page .rail-controls button:hover:not(:disabled){color:var(--color-action-primary-text);border-color:var(--color-accent);background:var(--color-action-primary)}
@keyframes home-partners{to{transform:translateX(-50%)}}

.landing-page .catalog-section{width:min(100%,1500px);padding-top:116px;padding-bottom:54px;scroll-margin-top:24px}
.landing-page .catalog-categories{display:grid;grid-template-columns:1fr 1fr;gap:76px 34px}
.landing-page .tool-category{min-width:0;scroll-margin-top:24px}
.landing-page .category-design,.landing-page .category-video,.landing-page .category-toolbox{grid-column:1/-1}
.landing-page .category-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px;min-height:40px}
.landing-page .category-heading h2{font-size:clamp(25px,2.2vw,35px);font-weight:650;letter-spacing:-.035em}
.landing-page .rail-controls{display:flex;gap:9px}
.landing-page .rail-controls button:disabled{cursor:default;opacity:.3}
.landing-page .tool-rail{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 75px)/4);gap:25px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:8px 5px 22px;margin:-8px -5px -22px}
.landing-page .tool-rail::-webkit-scrollbar{display:none}
.landing-page .tool-cell{min-width:0;scroll-snap-align:start}
.landing-page .category-commerce .tool-rail,.landing-page .category-operations .tool-rail{grid-auto-columns:calc((100% - 25px)/2)}
.landing-page .catalog-card{display:block;height:100%;overflow:hidden;border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-surface);backdrop-filter:none;-webkit-backdrop-filter:none;transition:transform .24s ease,border-color .24s ease,box-shadow .24s ease}
.landing-page .catalog-card:hover{transform:translateY(-6px);border-color:var(--color-accent-border);box-shadow:var(--shadow-surface)}
.landing-page .catalog-visual{position:relative;overflow:hidden;aspect-ratio:1.26;background:var(--color-surface-subtle);border-radius:var(--radius-card);margin:8px}
.landing-page .catalog-visual img{width:100%;height:100%;object-fit:cover;object-position:center 48%;transition:transform .35s ease}
.landing-page .catalog-card:hover .catalog-visual img{transform:scale(1.035)}
.landing-page .catalog-card:hover h3{color:var(--color-accent-deep)}
.landing-page .catalog-copy{padding:16px 20px 22px}
.landing-page .catalog-copy h3{font-size:16px;font-weight:650;line-height:1.5}
.landing-page .catalog-copy p{font-size:13px;line-height:1.75;color:var(--color-text-secondary);margin-top:6px}
.landing-page .catalog-visual .video-play{position:absolute;right:14px;bottom:14px;display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--color-action-primary);color:var(--color-action-primary-text);font-size:21px;box-shadow:var(--shadow-surface)}
.landing-page .visual-unavailable{display:grid;place-items:center}
.landing-page .visual-unavailable>.material-symbols-outlined{font-size:40px;color:var(--color-accent-deep)}
.landing-page .visual-unavailable .video-play{display:none}
.landing-page .category-toolbox .tool-rail{grid-auto-columns:calc((100% - 75px)/4)}
.landing-page .category-toolbox .catalog-card{display:flex;align-items:center;gap:12px;padding:12px 16px}
.landing-page .category-toolbox .catalog-visual{display:grid;place-items:center;flex:0 0 58px;height:58px;border-radius:var(--radius-card);margin:0;color:var(--color-action-primary-text);background:var(--color-action-primary)}
.landing-page .category-toolbox .catalog-visual .material-symbols-outlined{font-size:27px}
.landing-page .category-toolbox .catalog-copy{padding:5px 0;min-width:0}
.landing-page .category-toolbox .catalog-copy p{margin-top:3px}
.landing-page .footer-tools{grid-template-columns:repeat(6,minmax(0,1fr));gap:30px}

@media(max-width:1180px){.landing-page .tool-rail{grid-auto-columns:calc((100% - 48px)/3);gap:24px}.landing-page .category-toolbox .tool-rail{grid-auto-columns:calc((100% - 48px)/3)}.landing-page .footer-tools{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:850px){
  .landing-page .partner-inner{row-gap:18px;padding:12px 0 32px}.landing-page .partner-set{min-width:820px;gap:58px;padding-inline:30px}
  .landing-page .catalog-section{padding-top:78px}.landing-page .catalog-categories{display:block}.landing-page .tool-category+.tool-category{margin-top:56px}.landing-page .tool-rail,.landing-page .category-commerce .tool-rail,.landing-page .category-operations .tool-rail{grid-auto-columns:clamp(230px,70vw,310px);gap:18px}.landing-page .category-toolbox .tool-rail{grid-auto-columns:250px}.landing-page .footer-tools{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 22px}
}
@media(prefers-reduced-motion:reduce){.landing-page .partner-window{mask-image:none;-webkit-mask-image:none}.landing-page .partner-track{animation:none;transform:none;width:100%}.landing-page .partner-set{flex-wrap:wrap;min-width:0;width:100%;padding:18px 0;gap:14px 26px;justify-content:center}.landing-page .partner-set[aria-hidden="true"]{display:none}.landing-page .catalog-visual img{transition:none}.landing-page .catalog-card:hover .catalog-visual img{transform:none}}

/* Creator-style capability catalogue, built on the existing glass card system. */
.landing-page .catalog-section{position:relative;padding-top:clamp(96px,11vw,166px);padding-bottom:clamp(74px,9vw,126px)}
.landing-page .catalog-section:before{content:"";position:absolute;z-index:-1;top:10%;right:-8vw;width:32vw;min-width:320px;aspect-ratio:1;border-radius:50%;background:var(--color-accent-subtle);filter:blur(22px);pointer-events:none}
.landing-page .catalog-categories{gap:clamp(72px,8vw,118px) 34px}
.landing-page .category-heading{align-items:flex-end;margin-bottom:26px;padding-bottom:18px;border-bottom:1px solid var(--color-border)}
.landing-page .category-heading h2{font-size:clamp(27px,3.2vw,47px);line-height:1;letter-spacing:-.055em}
.landing-page .catalog-card{position:relative;background:linear-gradient(145deg,var(--color-surface),var(--color-surface));box-shadow:var(--shadow-surface);transform-style:preserve-3d;will-change:transform}
.landing-page .catalog-card:after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(115deg,transparent 20%,var(--color-sheen) 47%,transparent 66%);opacity:0;transform:translateX(-28%);transition:opacity .28s ease,transform .5s ease;pointer-events:none}
.landing-page .catalog-card:hover{transform:translateY(-8px) rotateX(1.2deg);box-shadow:var(--shadow-surface)}
.landing-page .catalog-card:hover:after{opacity:1;transform:translateX(24%)}
.landing-page .catalog-visual{background:linear-gradient(145deg,var(--color-surface-subtle),var(--color-surface-subtle))}
.landing-page .category-toolbox .catalog-card{background:linear-gradient(145deg,var(--color-surface),var(--color-surface))}
.motion-ready .landing-page .catalog-section:not(.is-visible) .tool-category{opacity:0;transform:translateY(26px)}
.landing-page .catalog-section.is-visible .tool-category{animation:catalog-category-in .72s cubic-bezier(.22,1,.36,1) both}
.landing-page .catalog-section.is-visible .tool-category:nth-child(2){animation-delay:.08s}.landing-page .catalog-section.is-visible .tool-category:nth-child(3){animation-delay:.16s}.landing-page .catalog-section.is-visible .tool-category:nth-child(4){animation-delay:.24s}.landing-page .catalog-section.is-visible .tool-category:nth-child(5){animation-delay:.32s}
@keyframes catalog-category-in{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:translateY(0)}}

@media(max-width:850px){
  .landing-page .catalog-section{padding-top:86px}.landing-page .catalog-categories{display:block}.landing-page .category-heading{margin-bottom:22px}
  .landing-page .category-heading h2{font-size:30px}
}
@media(prefers-reduced-motion:reduce){.landing-page .catalog-section.is-visible .tool-category{animation:none}.motion-ready .landing-page .catalog-section:not(.is-visible) .tool-category{opacity:1;transform:none}.landing-page .catalog-card:after{display:none}.landing-page .catalog-card:hover{transform:none}}

/* M02: two readable tool cards across the phone's available content width. */
@media (max-width: 767px) {
  .landing-page .public-container.catalog-section { padding: 40px 16px 24px; scroll-margin-top: 88px; }
  .landing-page .catalog-intro { margin-bottom: 28px; }
  .landing-page .catalog-intro h2 { font-size: 26px; line-height: 1.35; }
  .landing-page .catalog-intro > p:last-child { margin-top: 12px !important; font-size: 14px; }
  .landing-page .tool-category + .tool-category { margin-top: 32px; }
  .landing-page .category-heading { align-items: center; gap: 12px; padding-bottom: 12px; margin-bottom: 12px; }
  .landing-page .category-heading h2 { font-size: 20px; line-height: 1.4; letter-spacing: -.02em; }
  .landing-page .rail-controls { gap: 6px; flex-shrink: 0; }
  .landing-page .rail-controls button { width: 44px; height: 44px; }
  .landing-page .catalog-section .tool-category .tool-rail { grid-auto-columns: calc((100% - 12px) / 2); gap: 12px; padding: 4px 0 12px; margin: 0; scroll-padding-inline: 0; transform: none; }
  .landing-page .catalog-card { min-width: 0; scroll-snap-align: start; }
  .landing-page .catalog-visual { aspect-ratio: 4 / 3; margin: 6px; }
  .landing-page .catalog-copy { padding: 8px 12px 14px; }
  .landing-page .catalog-copy h3 { font-size: 15px; line-height: 1.4; overflow-wrap: anywhere; }
  .landing-page .catalog-copy p { font-size: 12px; line-height: 1.5; margin-top: 6px; overflow-wrap: anywhere; }
  .landing-page .category-toolbox .catalog-card { flex-direction: column; align-items: flex-start; gap: 10px; padding: 12px; }
  .landing-page .category-toolbox .catalog-visual { flex: 0 0 36px; width: 36px; height: 36px; }
  .landing-page .category-toolbox .catalog-visual .material-symbols-outlined { font-size: 22px; }
  .landing-page .category-toolbox .catalog-copy { padding: 0; }
}
