/* The homepage gives most of its space to actual work, at a consistent type scale. */
.hero { padding:56px 0 0; }
.hero-intro { grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr); gap:8%; margin-bottom:44px; }
.hero h1 { font-size:clamp(42px,4.35vw,62px); line-height:1.4; letter-spacing:-.035em; margin-top:18px; }
.hero-deck>p:first-child { font-size:16px; line-height:1.9; }
.hero-footnote { font-size:12px; }
.section { padding-block:76px; }
.assistant-section { padding-bottom:64px; background:var(--surface); }
.section-line { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:10px 24px; margin-bottom:20px; }
.section-line h2 { font-family:var(--sans); font-size:21px; font-weight:600; line-height:1.5; }
.section-line>span { font-size:12px; color:var(--muted); }
.showcase { display:grid; grid-template-columns:260px minmax(0,1fr); border:1px solid var(--line); border-radius:6px; background:var(--white); overflow:hidden; box-shadow:0 18px 48px #29262208; }
.showcase-choices { display:flex; flex-direction:column; justify-content:center; padding:20px 18px; gap:10px; background:#f1eee9; border-right:1px solid var(--line); }
.showcase-choices>button { min-width:0; width:100%; display:flex; align-items:flex-start; gap:12px; border:1px solid transparent; border-radius:4px; background:none; padding:16px 12px; text-align:left; transition:background .2s,border-color .2s; }
.showcase-choices>button>span:nth-child(2) { flex:1; min-width:0; }.showcase-choices strong { display:block; font-size:15px; line-height:1.6; font-weight:550; }.showcase-choices small { display:block; font-size:12px; color:var(--muted); line-height:1.8; margin-top:5px; }.showcase-choices>button>svg { width:15px; height:15px; margin-top:5px; flex-shrink:0; opacity:0; }
.chapter-icon { display:grid; place-items:center; width:21px; height:24px; margin-top:1px; flex-shrink:0; color:var(--accent); }.chapter-icon svg { width:20px; height:20px; }
.showcase-choices>button[aria-selected=true] { background:var(--white); border-color:#d2c9bd; box-shadow:0 3px 10px #29262205; }.showcase-choices>button[aria-selected=true]>svg { opacity:1; }.showcase-choices>button:hover { background:#fff9; border-color:#d2c9bd; }
.showcase-main { min-width:0; }.showcase-caption { display:flex; align-items:center; justify-content:space-between; gap:16px; min-height:52px; padding:4px 15px 4px 22px; color:#e8e1d7; background:#2c2925; }.showcase-caption>span { display:flex; align-items:center; gap:10px; font-size:12px; line-height:1.7; }.showcase-caption>span>svg { width:16px; height:16px; color:#d8b38e; }.showcase-caption strong { font-weight:500; }
.product-video { display:block; width:100%; height:auto; aspect-ratio:1280/800; background:#f3f4f3; object-fit:contain; }
.showcase-bottom { display:flex; justify-content:space-between; align-items:center; gap:10px 20px; padding:6px 20px; border-top:1px solid var(--line); background:#fff; }.showcase-bottom>span { font-size:11px; line-height:1.8; color:var(--muted); }.showcase-bottom .text-link { min-height:40px; font-size:12px; padding:0; background:none; border:0; white-space:nowrap; }.showcase-bottom .text-link svg { width:15px; height:15px; }
.quiet-motion { display:grid; place-items:center; width:44px; height:44px; flex-shrink:0; border:1px solid transparent; border-radius:3px; background:none; color:inherit; opacity:.65; transition:opacity .2s,background .2s; }.quiet-motion>svg { width:18px; height:18px; }.quiet-motion:hover,.quiet-motion:focus-visible { opacity:1; border-color:#a99b8b; background:#ffffff0a; }
[data-play-blocked] .quiet-motion { opacity:1; border-color:#a99b8b; }
.tool-capabilities { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:44px; padding-top:34px; }
.tool-capability { position:relative; padding-left:36px; }.tool-capability>svg { position:absolute; left:0; top:2px; width:21px; height:21px; color:var(--accent); }.tool-capability h3 { font-size:16px; font-weight:550; line-height:1.7; }.tool-capability p { margin-top:8px; font-size:13px; line-height:1.9; color:var(--muted); }
.material-section { padding-top:28px; }.feature-heading { display:grid; grid-template-columns:1.2fr 1fr; gap:10%; align-items:end; margin-bottom:32px; }.feature-heading h2,.section-heading h2,.section-heading h1 { margin-top:14px; font-family:var(--serif); font-size:clamp(28px,2.65vw,36px); font-weight:600; line-height:1.5; letter-spacing:-.025em; }.feature-heading>p { font-size:15px; line-height:1.95; color:var(--muted); max-width:490px; padding-bottom:3px; }.material-section .showcase-choices { background:#e8e3da; }.material-section .showcase { border-color:#d0c8bd; }.showcase-material { grid-template-columns:270px minmax(0,1fr); }
.hero-footnote a { text-decoration:underline; text-decoration-color:var(--line); text-underline-offset:4px; }.hero-footnote a:hover { color:var(--accent); }
.outcomes-section { padding-top:32px; padding-bottom:68px; }.outcomes-section .section-heading { max-width:none; margin-bottom:30px; }.outcome-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px; align-items:stretch; }.outcome-card { display:flex; flex-direction:column; min-width:0; border:1px solid var(--line); border-radius:5px; background:#f5f2ed; overflow:hidden; }.outcome-card:nth-child(2) { background:#eeefec; }.outcome-copy { flex:1; padding:28px 30px 26px; }.outcome-copy h3 { font-family:var(--serif); font-size:25px; font-weight:600; line-height:1.6; margin-top:12px; }.outcome-copy>p:not(.eyebrow) { font-size:14px; line-height:1.9; color:var(--muted); margin-top:12px; }.outcome-copy>span { display:block; color:var(--accent); font-size:11px; line-height:1.8; margin-top:18px; }.outcome-image { display:block; flex-shrink:0; width:100%; padding:0; border:0; border-top:1px solid var(--line); background:#fff; }.outcome-image img { display:block; width:100%; height:auto; }.outcome-image:hover { opacity:.92; }
.connected-section { padding:72px 0 32px; }.connected-section .feature-heading>p { font-size:14px; }.continuity-notes { display:grid; grid-template-columns:1fr 1fr; gap:60px; margin-top:30px; }.continuity-notes article { display:flex; align-items:start; gap:17px; }.continuity-notes article>svg { width:23px; height:23px; flex-shrink:0; margin-top:2px; color:var(--accent); }.continuity-notes h3 { font-size:17px; font-weight:550; line-height:1.65; }.continuity-notes p { font-size:14px; line-height:1.95; color:var(--muted); margin-top:9px; max-width:510px; }
.data-section { padding:62px 0; background:var(--surface); }.data-section .container { display:grid; grid-template-columns:1.05fr 1fr; gap:10%; align-items:start; }.data-section h2 { font-family:var(--serif); font-size:30px; font-weight:600; line-height:1.6; margin-top:16px; }.data-copy { color:var(--muted); font-size:14px; line-height:1.95; }.data-copy p+p { margin-top:14px; }.data-copy .text-link { margin-top:12px; font-size:13px; }
.home-final { padding:66px 0 74px; text-align:center; }.home-final h2 { font-family:var(--serif); font-size:clamp(32px,3vw,42px); line-height:1.6; font-weight:600; margin-top:17px; letter-spacing:-.025em; }.home-final .hero-actions { justify-content:center; margin-top:26px; }
.video-dialog { width:min(1320px,calc(100vw - 32px)); }.video-dialog video { display:block; width:100%; max-height:calc(100dvh - 160px); height:auto; background:#f3f3f3; }.video-dialog>p { padding:13px 20px; color:var(--muted); font-size:12px; line-height:1.8; }
.download-page .download-section { min-height:calc(100vh - 240px); }.download-page .download-heading h1 { font-family:var(--serif); font-size:38px; font-weight:600; margin:15px 0 18px; line-height:1.5; }
@media(max-width:1100px) {
 .hero-intro { gap:6%; }.showcase,.showcase-material { grid-template-columns:225px minmax(0,1fr); }.showcase-choices { padding:16px 10px; gap:6px; }.showcase-choices>button { padding:12px 10px; gap:10px; }.showcase-choices>button>svg { display:none; }.showcase-choices strong { font-size:14px; }.tool-capabilities { gap:28px; }.outcome-copy { padding:24px; }.outcome-copy h3 { font-size:23px; }.continuity-notes { gap:36px; }
}
@media(max-width:860px) {
 .hero-intro { grid-template-columns:1fr 1fr; gap:32px; align-items:center; }.hero h1 { font-size:43px; }.hero-deck>p:first-child { font-size:15px; }.showcase,.showcase-material { grid-template-columns:1fr; }.showcase-choices { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; padding:12px; border-right:0; border-bottom:1px solid var(--line); }.showcase-material .showcase-choices { grid-template-columns:repeat(3,minmax(0,1fr)); }.showcase-choices>button { display:block; height:100%; }.chapter-icon { margin-bottom:8px; }.showcase-choices small { font-size:11px; }.tool-capabilities { gap:24px; }.tool-capability { padding:0; }.tool-capability>svg { position:static; margin-bottom:12px; }.feature-heading { gap:6%; }.feature-heading>p { font-size:14px; }.outcome-grid { grid-template-columns:1fr; gap:28px; }.outcome-card { display:grid; grid-template-columns:1fr 1.2fr; align-items:center; }.outcome-image { border:0; border-left:1px solid var(--line); height:100%; display:grid; align-items:center; }.outcome-copy h3 { font-size:22px; }.data-section .container { gap:7%; }.data-section h2 { font-size:27px; }
}
@media(max-width:700px) {
 .hero { padding-top:34px; }.hero-intro { grid-template-columns:1fr; gap:22px; margin-bottom:30px; }.hero h1 { font-size:clamp(32px,8.7vw,44px); line-height:1.45; }.hero-deck>p:first-child { font-size:15px; }.section { padding-block:52px; }.material-section { padding-top:20px; }.assistant-section { padding-bottom:42px; }.section-line { gap:6px; margin-bottom:16px; }.section-line h2 { font-size:20px; }.section-line>span { font-size:11px; line-height:1.8; }
 .showcase-choices { grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px; padding:10px; }.showcase-choices>button { display:flex; padding:11px 9px; gap:9px; }.showcase-choices strong { font-size:13px; }.showcase-choices small { font-size:11px; }.chapter-icon { width:18px; margin:1px 0 0; }.chapter-icon>svg { width:18px; height:18px; }.showcase-caption { min-height:48px; padding:2px 8px 2px 14px; }.showcase-caption>span { font-size:11px; }.showcase-caption>span>svg { display:none; }.showcase-bottom { padding:7px 12px; flex-wrap:wrap; gap:3px; }.showcase-bottom>span { font-size:10px; }.showcase-bottom .text-link { margin-left:auto; font-size:11px; min-height:36px; }
 .showcase-material .showcase-choices { grid-template-columns:1fr; }.showcase-material .showcase-choices>button { padding:11px 10px; }.showcase-material .showcase-choices small { margin-top:3px; }.showcase-material .chapter-icon { margin-top:2px; }.tool-capabilities { grid-template-columns:1fr; gap:24px; padding-top:28px; }.tool-capability { padding-left:34px; }.tool-capability>svg { position:absolute; margin:0; }.tool-capability h3 { font-size:16px; }.tool-capability p { font-size:14px; margin-top:5px; }
 .feature-heading { grid-template-columns:1fr; gap:18px; margin-bottom:24px; }.feature-heading h2,.section-heading h2,.section-heading h1 { font-size:28px; line-height:1.55; }.feature-heading>p { font-size:14px; max-width:none; }.outcomes-section .section-heading { margin-bottom:24px; }.outcome-grid { gap:24px; }.outcome-card { display:flex; flex-direction:column; }.outcome-copy { padding:23px; }.outcome-copy h3 { font-size:23px; }.outcome-copy>p:not(.eyebrow) { font-size:14px; }.outcome-image { display:block; height:auto; border:0; border-top:1px solid var(--line); }.connected-section { padding:52px 0 24px; }.outcomes-section { padding-top:28px; }.continuity-notes { grid-template-columns:1fr; gap:26px; margin-top:26px; }.continuity-notes h3 { font-size:16px; }.continuity-notes p { font-size:14px; margin-top:6px; }
 .data-section { padding-block:46px; }.data-section .container { grid-template-columns:1fr; gap:24px; }.data-section h2 { font-size:27px; }.data-copy { font-size:14px; }.home-final { padding:48px 0 56px; }.home-final h2 { font-size:32px; }.home-final .hero-actions { gap:12px 20px; }.download-page .download-heading h1 { font-size:32px; }.video-dialog>p { font-size:11px; padding:12px 16px; }
}
/* Hearing preparation has its own full demonstration, after the case concept. */
.preparation-section { background:var(--surface); }
.preparation-section .showcase-choices { background:#e8e3da; }
.section-jump { display:flex; width:fit-content; margin-top:10px; font-size:13px; }
@media(max-width:860px) { .showcase-material .showcase-choices { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:700px) { .showcase-material .showcase-choices { grid-template-columns:1fr; } }
