
/* WAVE product story. Shared GEAI navigation and typography remain unchanged. */
.wave-page { --wave-gold:#a6803e; }
.wave-page .eyebrow,.wave-index { font-size:.875rem; }
.wave-hero { display:grid; grid-template-columns:1fr 1fr; align-items:center; min-height:100svh; gap:5vw; padding:112px 5vw 56px; }
.wave-hero-copy { padding:32px 0; max-width:660px; }
.wave-hero h1 { font-size:clamp(4rem,8.7vw,9.5rem); line-height:.96; letter-spacing:-.065em; }
.wave-tagline { font-size:clamp(1.35rem,2.3vw,2rem); letter-spacing:-.025em; margin:28px 0 16px; }
.wave-lead { font-size:1.125rem; line-height:1.6; max-width:460px; }
.wave-actions { display:flex; align-items:center; flex-wrap:wrap; gap:22px; margin-top:28px; }
.wave-note { font-size:.875rem; line-height:1.55; color:var(--muted); max-width:480px; margin:22px 0 0; }
.wave-hero-image { margin:0; display:flex; justify-content:center; }
.wave-hero-image img { width:100%; max-width:470px; height:auto; border-radius:2px; }
.wave-section { padding:96px 5vw; }
.wave-section h2 { font-size:clamp(2.5rem,4.8vw,5.4rem); }
.wave-detail { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:8vw; border-top:1px solid var(--line); }
.wave-portrait { margin:0; }
.wave-portrait img { width:100%; max-width:520px; height:auto; }
.wave-detail-copy>p:not(.eyebrow):not(.wave-note) { font-size:1.125rem; line-height:1.65; max-width:500px; }
.wave-gesture { padding-left:24px; font-size:1rem; line-height:1.8; margin-top:26px; }
.wave-section-heading { display:grid; grid-template-columns:1.25fr .75fr; gap:8vw; align-items:end; margin-bottom:38px; }
.wave-section-heading>p { font-size:1.125rem; line-height:1.65; max-width:500px; margin:0; }
.wave-modules { padding-top:44px; }
.wave-modules-image { margin:0; }
.wave-modules-image img { width:100%; height:auto; }
.wave-modules-image figcaption { font-size:.875rem; color:var(--muted); margin:12px 0 0; }
.wave-module-grid,.wave-guides { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:32px; margin-top:40px; }
.wave-module-grid article { border-top:1px solid var(--line); padding-top:24px; }
.wave-index { display:block; letter-spacing:.045em; line-height:1.5; }
.wave-module-grid h3,.wave-guides h3,.wave-app-result h3 { font-size:1.5rem; font-weight:450; letter-spacing:-.03em; line-height:1.2; margin:18px 0; }
.wave-module-grid p,.wave-guides p,.wave-app-result p { font-size:1rem; line-height:1.65; }
.wave-module-controls:not([hidden]) { display:flex; gap:clamp(12px,4vw,56px); border-bottom:1px solid var(--line); margin-top:40px; }
.wave-module-controls button { flex:1; min-height:56px; max-width:240px; padding:16px 8px; border:0; border-bottom:3px solid transparent; background:transparent; color:var(--muted); font:inherit; font-size:1rem; font-weight:500; letter-spacing:.08em; cursor:pointer; }
.wave-module-controls button[aria-selected="true"] { color:var(--deep); border-bottom-color:var(--wave-gold); }
.wave-module-controls button:focus-visible { outline:2px solid var(--deep); outline-offset:4px; }
.wave-module-grid.wave-module-explorer { display:block; margin-top:0; min-height:196px; }
.wave-module-explorer article { border:0; padding:28px 0 0; max-width:700px; }
.wave-module-explorer article[hidden] { display:none; }
.wave-module-explorer .wave-index { color:var(--muted); }
.wave-module-explorer h3 { font-size:clamp(1.7rem,3vw,2.5rem); margin:12px 0; }
.wave-module-explorer p { max-width:640px; font-size:1.125rem; }
.wave-app { background:var(--deep); color:var(--white); }
.wave-app :focus-visible { outline-color:var(--mint); }
.wave-app .eyebrow,.wave-app .wave-index { color:#dcca9e; }
.wave-guides { gap:0; border-top:1px solid #526458; padding-top:8px; margin-top:54px; }
.wave-guides article { padding:24px 28px 20px 0; }
.wave-guides article+article { border-left:1px solid #526458; padding-left:28px; }
.wave-guides .wave-guide-bonus { font-size:.875rem; color:#d2dace; margin-top:28px; }
.wave-app-result { display:grid; grid-template-columns:1.2fr .8fr; gap:9vw; border-top:1px solid #526458; margin-top:32px; padding-top:32px; align-items:center; }
.wave-app-result .wave-note { color:#d2dace; font-size:.875rem; }
.wave-next { text-align:center; }
.wave-next>p:not(.eyebrow) { font-size:1.125rem; line-height:1.6; }
.wave-next .wave-actions { justify-content:center; }
.wave-teaser { display:grid; grid-template-columns:1fr 1fr; gap:6vw; align-items:center; padding:64px 5vw; background:#102e27; color:var(--white); }
.wave-teaser :focus-visible { outline-color:var(--mint); }
.wave-teaser>div { max-width:570px; }
.wave-teaser h2 { font-size:clamp(2.4rem,4.7vw,5rem); }
.wave-teaser p:not(.eyebrow) { font-size:1rem; line-height:1.65; }
.wave-teaser .eyebrow { font-size:.875rem; color:#dcca9e; }
.wave-teaser .wave-note { font-size:.875rem; color:#d2dace; }
.wave-teaser figure { margin:0; justify-self:center; width:min(100%,340px); }
.wave-teaser figure img { width:100%; height:auto; }
.wave-link-panel { margin:28px 0; padding:26px; border:1px solid currentColor; }
.wave-link-panel p { max-width:740px; font-size:1rem; line-height:1.6; }
.wave-studio { padding:80px 5vw; border-top:1px solid var(--line); }
.wave-studio h2 { font-size:clamp(2.2rem,4vw,4.4rem); }
.wave-studio>p:not(.eyebrow) { font-size:1.125rem; line-height:1.65; max-width:760px; }
@media (min-width:1500px) { .wave-hero,.wave-section,.wave-teaser,.wave-studio { padding-left:max(5vw,calc((100vw - 1440px)/2)); padding-right:max(5vw,calc((100vw - 1440px)/2)); } }
@media (max-width:700px) {
 .wave-hero { grid-template-columns:1fr; padding:112px 5vw 48px; gap:24px; min-height:0; }
 .wave-hero-copy { display:contents; }
 .wave-hero-copy>.eyebrow { grid-row:1; margin:0; }
 .wave-hero-copy>h1 { grid-row:2; }
 .wave-hero-image { grid-row:3; }
 .wave-hero-copy>.wave-tagline { grid-row:4; margin:0; }
 .wave-hero-copy>.wave-lead { grid-row:5; margin:0; }
 .wave-hero-copy>.wave-actions { grid-row:6; margin-top:0; }
 .wave-hero-copy>.wave-note { grid-row:7; margin-top:0; }
 .wave-hero h1 { font-size:clamp(4rem,19vw,7rem); }
 .wave-hero-image img { width:auto; max-width:100%; max-height:56svh; object-fit:contain; }
 .wave-section { padding:56px 5vw; }
 .wave-detail { grid-template-columns:1fr; gap:34px; }
 .wave-detail-copy { grid-row:1; }
 .wave-portrait img { margin:auto; max-width:430px; }
 .wave-section-heading,.wave-app-result { grid-template-columns:1fr; gap:24px; }
 .wave-module-grid,.wave-guides { grid-template-columns:1fr; gap:12px; }
 .wave-module-grid.wave-module-explorer { min-height:260px; }
 .wave-guides article,.wave-guides article+article { padding:20px 0; border-left:0; }
 .wave-guides article+article { border-top:1px solid #526458; }
 .wave-guides .wave-guide-bonus { margin-top:14px; }
 .wave-teaser { grid-template-columns:1fr; gap:28px; padding:48px 5vw; }
 .wave-teaser figure { width:min(100%,330px); }
 .wave-teaser h2 { font-size:clamp(2.5rem,11vw,4rem); }
 .wave-studio { padding:56px 5vw; }
}
@media (prefers-reduced-motion:reduce) { .wave-page { scroll-behavior:auto; } }
