:root {
  --ink:#241e1a; --muted:#716b65; --orange:#ef6505; --accent:#a64205;
  --line:#e8e2dc; --cream:#faf7f2; --font:"DM Sans",Arial,sans-serif;
}
* { box-sizing:border-box; }
html { scroll-behavior:smooth; scroll-padding-top:112px; }
body { margin:0; background:#fff; color:var(--ink); font:400 17px/1.65 var(--font); }
h1,h2,h3,p,figure { margin:0; }
h1,h2,h3 { font-weight:800; letter-spacing:-.045em; line-height:1.1; text-wrap:balance; }
h2 { font-size:clamp(36px,4.1vw,52px); }
h3 { font-size:25px; }
a { color:inherit; text-decoration:none; }
button,input,select { font:inherit; }
button { cursor:pointer; }
button,a,input,select,summary { -webkit-tap-highlight-color:transparent; }
button:focus-visible,a:focus-visible,summary:focus-visible { outline:3px solid var(--orange); outline-offset:5px; }
input:focus-visible,select:focus-visible { outline:2px solid var(--orange); outline-offset:2px; }
[hidden] { display:none!important; }
.wrap { width:calc(100% - 96px); max-width:1170px; margin-inline:auto; }
.section { padding-block:100px; }
.eyebrow { color:var(--accent); font-size:12px; font-weight:800; line-height:1.5; text-transform:uppercase; letter-spacing:.12em; margin-bottom:20px; }
.button { display:inline-flex; justify-content:center; align-items:center; min-height:54px; padding:14px 25px; border:0; border-radius:8px; background:var(--orange); color:#fff; font-size:20px; font-weight:800; line-height:1.3; transition:background .2s,transform .2s; }
.button:hover { background:#e85b05; transform:translateY(-2px); }
.button.small { min-height:48px; padding:12px 20px; font-size:19px; }
.text-link { font-size:15px; font-weight:800; line-height:1.4; padding:12px 0; }
.text-link span { margin-left:7px; color:var(--accent); }
.text-link:hover { color:var(--accent); }
.actions { display:flex; justify-content:center; align-items:center; gap:30px; margin-top:28px; }
.skip { position:fixed; left:20px; top:-100px; background:#fff; padding:12px; z-index:50; }
.skip:focus { top:15px; }
.header { position:sticky; top:0; z-index:10; background:rgba(255,255,255,.95); backdrop-filter:blur(12px); border-bottom:1px solid var(--line); }
.nav { height:88px; display:flex; align-items:center; justify-content:space-between; gap:24px; }
.brand { display:inline-flex; flex-shrink:0; width:190px; }
.brand img { width:100%; height:auto; }
.nav nav { display:flex; gap:28px; color:var(--ink); font-size:16px; font-weight:600; }
.nav nav a:hover { color:var(--accent); }
.hero { text-align:center; padding-top:64px; padding-bottom:48px; }
.hero .hero-audience { display:inline-block; max-width:100%; margin-bottom:24px; padding:9px 16px; border:1px solid #ffc797; border-radius:999px; background:#ffe4ca; color:var(--accent); font-size:11px; font-weight:800; line-height:1.5; letter-spacing:.07em; text-transform:uppercase; text-wrap:balance; }
.hero h1 { font-size:clamp(44px,5.4vw,70px); line-height:1.07; letter-spacing:-.055em; }
.hero h1 span,.demo-grid h2 span { color:var(--orange); }
.hero-lead { max-width:680px; margin:23px auto 0; color:var(--muted); font-size:19px; line-height:1.6; text-wrap:balance; }
.product-tour { padding-bottom:32px; }
.tour-heading { display:flex; align-items:baseline; justify-content:space-between; gap:24px; margin-bottom:24px; }
.tour-heading h2 { font-size:26px; letter-spacing:-.035em; }
.tour-heading p { color:var(--muted); font-size:14px; }
.tour-tabs { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); border-bottom:1px solid var(--line); margin-bottom:20px; }
.tour-tabs button { display:flex; align-items:center; justify-content:center; gap:10px; padding:14px 7px; border:0; border-bottom:3px solid transparent; background:transparent; color:var(--muted); font-size:14px; font-weight:700; line-height:1.4; }
.tour-tabs button span { font-size:11px; font-weight:500; color:#83786f; }
.tour-tabs button[aria-selected="true"] { border-bottom-color:var(--orange); color:var(--ink); }
.tour-tabs button[aria-selected="true"] span { color:var(--accent); }
.tour-tabs button:hover { color:var(--accent); }
.tour-screen { display:block; position:relative; width:100%; padding:0; border:1px solid #ece6e0; border-radius:20px; overflow:hidden; background:#f5f3fa; cursor:zoom-in; box-shadow:0 24px 60px -36px #6743254d; }
.tour-screen img { display:block; width:100%; height:auto; aspect-ratio:16/9; object-fit:contain; }
.screen-enlarge { position:absolute; right:16px; bottom:16px; padding:8px 12px; background:rgba(255,255,255,.96); border:1px solid var(--line); border-radius:7px; color:var(--ink); font-size:12px; font-weight:700; }
.tour-caption { display:flex; justify-content:space-between; align-items:center; gap:32px; margin-top:24px; min-height:65px; }
.tour-caption h3 { font-size:22px; letter-spacing:-.03em; }
.tour-caption p { font-size:15px; color:var(--muted); margin-top:6px; }
.walkthrough-link { display:flex; align-items:center; gap:9px; flex-shrink:0; padding:10px 0; border:0; background:transparent; color:var(--accent); font-size:13px; font-weight:700; }
.walkthrough-link>span { font-size:23px; line-height:1; }
.walkthrough-link small { font-size:11px; color:var(--muted); font-weight:400; margin-left:2px; }
.why { text-align:center; }
.why h2 { max-width:900px; margin-inline:auto; font-size:clamp(36px,4.1vw,52px); }
.why>p:not(.eyebrow) { max-width:590px; margin:25px auto 0; font-size:20px; color:var(--muted); line-height:1.65; text-wrap:balance; }
.why>strong { display:block; margin-top:22px; font-size:18px; color:var(--accent); }
.expertise-section { background:var(--cream); }
.section-intro.split { display:grid; grid-template-columns:1.2fr 1fr; gap:85px; align-items:center; }
.section-intro.split>p { max-width:430px; color:var(--muted); justify-self:end; font-size:18px; line-height:1.7; }
.method-band { display:flex; flex-wrap:wrap; gap:12px; margin-top:38px; }
.method-band>span { border:1px solid #ddd4ca; border-radius:999px; padding:9px 17px; font-size:14px; font-weight:600; background:rgba(255,255,255,.6); }
.method-band .and-more { border-color:transparent; background:transparent; color:var(--accent); }
.and-more i { font-style:normal; margin-left:6px; }
.experience-section .section-intro { text-align:center; }
.section-lead { max-width:650px; margin:20px auto 0; font-size:19px; color:var(--muted); text-wrap:balance; }
.practice-suite { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:28px; margin-top:50px; }
.practice-suite article { border-top:1px solid var(--line); padding-top:24px; }
.game-number { display:block; color:var(--accent); font-size:12px; font-weight:700; margin-bottom:18px; }
.practice-suite h3 { font-size:24px; letter-spacing:-.035em; line-height:1.25; }
.practice-suite p { color:var(--muted); font-size:16px; line-height:1.65; margin-top:14px; max-width:230px; }
.framework-section { background:var(--cream); }
.framework-layout { display:grid; grid-template-columns:1fr 1fr; gap:36px; margin-top:40px; }
.dimension-list { display:grid; gap:5px; }
.dimension { display:grid; grid-template-columns:24px 1fr 5px; gap:16px; align-items:center; min-height:57px; padding:14px 18px; text-align:left; color:var(--muted); background:transparent; border:1px solid transparent; border-radius:8px; font-size:16px; font-weight:600; }
.dimension.active { color:var(--ink); background:#fff; border-color:#e9e0d7; }
.dimension:hover { background:#fff; }
.dimension-number { color:#82746a; font-size:12px; font-weight:500; }
.dimension i { display:block; height:22px; width:5px; border-radius:2px; background:#5b4ce5; }
.dimension:nth-child(2) i { background:#fb923c; }.dimension:nth-child(3) i { background:#169cb5; }.dimension:nth-child(4) i { background:#be579e; }.dimension:nth-child(5) i { background:#3478db; }.dimension:nth-child(6) i { background:#59677f; }
.dimension-detail { --accent-color:#5b4ce5; border:1px solid #e9e0d7; border-top:4px solid var(--accent-color); border-radius:10px; padding:32px; background:white; display:flex; flex-direction:column; justify-content:center; }
.dimension-detail .eyebrow { margin-bottom:17px; font-size:11px; }
.dimension-detail h3 { font-size:34px; line-height:1.15; }
.dimension-detail>p:not(.eyebrow) { margin-top:20px; color:var(--muted); font-size:16px; }
.dimension-question { padding-top:20px; margin-top:22px; border-top:1px solid var(--line); }
.dimension-question p { font-size:17px; font-weight:700; }
.faq { display:grid; grid-template-columns:.85fr 1.15fr; gap:80px; }
.faq h2 { font-size:36px; }
.faq-list details { padding:20px 0; border-top:1px solid var(--line); }
.faq-list details:last-child { border-bottom:1px solid var(--line); }
.faq-list summary { list-style:none; display:flex; align-items:baseline; justify-content:space-between; gap:20px; cursor:pointer; font-size:17px; font-weight:700; line-height:1.5; }
.faq-list summary::-webkit-details-marker { display:none; }
.faq-list summary::after { content:"+"; font-size:22px; font-weight:400; color:var(--accent); flex-shrink:0; }
.faq-list details[open] summary::after { content:"−"; }
.faq-list p { margin-top:15px; color:var(--muted); font-size:15px; line-height:1.7; }
.faq-list p a { color:var(--ink); font-weight:700; text-decoration:underline; text-decoration-color:var(--orange); text-underline-offset:4px; }
.faq-list p a:hover { color:var(--accent); }
.demo-section { padding-block:86px; background:#fff4e8; }
.demo-grid { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:85px; }
.demo-grid h2 { font-size:48px; line-height:1.13; }
.demo-grid>div>p:not(.eyebrow) { max-width:400px; margin-top:24px; font-size:18px; color:var(--muted); }
.demo-grid form { background:#fff; border:1px solid #eee1d3; border-radius:14px; padding:32px; }
.demo-grid form h3 { font-size:25px; line-height:1.25; }
.form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px 14px; margin-block:26px; }
.form-grid label { display:flex; flex-direction:column; gap:7px; font-size:12px; font-weight:700; }
.form-grid label:nth-child(3) { grid-column:1/-1; }
.form-grid input,.form-grid select { display:block; width:100%; min-width:0; min-height:46px; padding:10px 12px; border:1px solid #ddd5ce; border-radius:6px; background:#fff; color:var(--ink); font-size:14px; font-weight:400; }
.form-grid input::placeholder { color:#8a7d73; }
.demo-grid form>.button { width:100%; }
.form-note { margin-top:14px; font-size:11px; color:var(--muted); text-align:center; }
.footer { display:flex; align-items:center; justify-content:space-between; gap:24px; padding-block:34px; }
.footer .brand { width:145px; }.footer>span { font-size:12px; color:var(--muted); }
dialog { position:fixed; max-width:600px; width:calc(100% - 32px); max-height:92vh; overflow:auto; border:1px solid #e6dfd7; border-radius:14px; padding:32px; color:var(--ink); background:#fff; }
dialog::backdrop { background:rgba(25,19,15,.75); backdrop-filter:blur(4px); }
dialog h2 { font-size:30px; }dialog>p:not(.eyebrow) { margin-top:18px; color:var(--muted); font-size:16px; }dialog>.button { margin-top:25px; }
.dialog-close { display:grid; place-items:center; width:42px; height:42px; flex-shrink:0; padding:0; border:0; background:transparent; color:var(--ink); font-size:30px; line-height:1; }
#demo-dialog .dialog-close { margin-left:auto; }
#screen-dialog,#video-dialog { max-width:1700px; width:calc(100% - 36px); padding:20px; }
.media-dialog-heading { display:flex; justify-content:space-between; align-items:center; gap:24px; margin-bottom:14px; }
.media-dialog-heading h2 { font-size:22px; letter-spacing:-.025em; }
.expanded-screen { overflow:auto; background:#f5f3fa; border-radius:8px; }
.expanded-screen img { display:block; width:100%; height:auto; }
.screen-dialog-footer { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-top:14px; }
.screen-dialog-footer button { border:0; background:transparent; padding:10px 0; color:var(--accent); font-size:14px; font-weight:700; }
.screen-dialog-footer button:disabled { opacity:.35; cursor:default; }.screen-dialog-footer span { font-size:12px; color:var(--muted); }
#video-dialog video { display:block; width:100%; max-height:72vh; background:#15121c; border-radius:8px; }
#video-dialog>p { font-size:12px; margin-top:12px; }
@media(max-width:1100px) {
  .wrap { width:calc(100% - 60px); }.nav nav { gap:20px; }.brand { width:165px; }
  .section-intro.split,.demo-grid { gap:45px; }.practice-suite { gap:23px; }.practice-suite h3 { font-size:22px; }
  .tour-tabs button { font-size:13px; gap:7px; }.demo-grid h2 { font-size:42px; }
}
@media(max-width:900px) {
  html { scroll-padding-top:92px; }.wrap { width:calc(100% - 40px); }.section { padding-block:64px; }
  .nav { height:74px; }.nav nav { display:none; }.hero { padding-top:40px; padding-bottom:40px; }
  .hero h1 { font-size:clamp(40px,6.5vw,58px); }.hero-lead { font-size:18px; max-width:620px; }
  .tour-caption { align-items:flex-start; gap:20px; }.tour-caption p { max-width:440px; }.walkthrough-link { font-size:12px; }
  .tour-heading h2 { font-size:24px; }.tour-heading p { font-size:13px; }.product-tour { padding-bottom:0; }
  .section-intro.split { grid-template-columns:1fr; gap:22px; }.section-intro.split>p { justify-self:start; max-width:660px; font-size:17px; }
  h2 { font-size:36px; }.why h2 { font-size:40px; }.why>p:not(.eyebrow) { font-size:18px; }
  .method-band { margin-top:26px; }.practice-suite { grid-template-columns:repeat(2,minmax(0,1fr)); gap:30px; margin-top:36px; }
  .practice-suite h3 { font-size:25px; }.practice-suite p { max-width:290px; }.framework-layout { gap:24px; }
  .dimension { font-size:14px; gap:12px; padding:14px; }.dimension-detail { padding:25px; }.dimension-detail h3 { font-size:28px; }
  .faq { grid-template-columns:1fr; gap:28px; }.demo-section { padding-block:64px; }.demo-grid { gap:32px; }.demo-grid h2 { font-size:36px; }
  .demo-grid form { padding:24px; }.form-grid { grid-template-columns:1fr; }.form-grid label:nth-child(3) { grid-column:auto; }
}
@media(max-width:600px) {
  .header .brand { width:min(165px,calc(100vw - 224px)); }.nav { gap:12px; }.nav .button { padding:10px; white-space:nowrap; }
  .hero { text-align:left; padding-top:34px; padding-bottom:36px; }.hero .hero-audience { padding:8px 13px; font-size:10px; line-height:1.5; letter-spacing:.07em; margin-bottom:22px; }
  .hero h1 { font-size:clamp(36px,9.8vw,56px); line-height:1.1; }.hero h1 br { display:none; }.hero-lead { text-wrap:initial; font-size:17px; margin-top:20px; }
  .actions { flex-direction:column; align-items:stretch; gap:10px; margin-top:24px; }.actions .button { width:100%; }.actions .text-link { align-self:center; font-size:14px; }
  .tour-heading { display:block; margin-bottom:18px; }.tour-heading h2 { font-size:22px; }.tour-heading p { margin-top:7px; font-size:13px; }
  .tour-tabs { grid-template-columns:repeat(3,minmax(0,1fr)); gap:2px 6px; margin-bottom:14px; border-bottom:0; }
  .tour-tabs button { justify-content:flex-start; padding:10px 4px; font-size:12px; border-bottom:2px solid var(--line); gap:6px; }.tour-tabs button span { font-size:10px; }
  .tour-screen { border-radius:11px; }.screen-enlarge { right:8px; bottom:8px; padding:5px 8px; font-size:10px; }
  .tour-caption { display:block; min-height:0; margin-top:20px; }.tour-caption h3 { font-size:22px; }.tour-caption p { font-size:15px; max-width:none; }
  .walkthrough-link { margin-top:12px; font-size:13px; }
  .section { padding-block:54px; }h2,.why h2 { font-size:33px; }.why { text-align:left; }.why h2 br,.section-intro h2 br { display:none; }
  .why>p:not(.eyebrow) { margin-top:20px; font-size:17px; text-wrap:initial; }.why>strong { font-size:16px; margin-top:18px; }
  .eyebrow { font-size:10px; margin-bottom:16px; }.section-intro.split>p { font-size:16px; }.method-band { gap:8px; }.method-band>span { font-size:12px; padding:8px 12px; }
  .experience-section .section-intro { text-align:left; }.section-lead { font-size:17px; margin-top:18px; text-wrap:initial; }
  .practice-suite { gap:26px 20px; margin-top:30px; }.practice-suite article { padding-top:18px; }.game-number { margin-bottom:12px; }.practice-suite h3 { font-size:22px; }.practice-suite p { font-size:14px; margin-top:10px; }
  .framework-layout { grid-template-columns:1fr; gap:20px; margin-top:28px; }.dimension { min-height:53px; font-size:15px; }.dimension-detail { padding:24px; }.dimension-detail h3 { font-size:28px; }
  .faq h2 { font-size:26px; }.faq-list summary { font-size:16px; }.faq-list details { padding-block:17px; }
  .demo-section { padding-block:54px; }.demo-grid { grid-template-columns:1fr; gap:28px; }.demo-grid h2 { font-size:clamp(31px,8.8vw,43px); }.demo-grid h2 br { display:none; }
  .demo-grid>div>p:not(.eyebrow) { font-size:17px; margin-top:20px; }.demo-grid form h3 { font-size:24px; }.form-grid { margin-block:22px; }
  .footer { padding-block:26px; }.footer .brand { width:140px; }
  #screen-dialog,#video-dialog { padding:12px; width:calc(100% - 16px); }.media-dialog-heading { gap:12px; margin-bottom:10px; }.media-dialog-heading h2 { font-size:17px; }
  .expanded-screen img { min-width:1600px; }.expanded-screen { -webkit-overflow-scrolling:touch; }.screen-dialog-footer { margin-top:8px; }
}
@media(max-width:360px) {
  .wrap { width:calc(100% - 32px); }.header .brand { width:140px; }.nav .button { width:132px; min-height:60px; white-space:normal; text-align:center; line-height:1.2; }
  .hero .hero-audience { font-size:9px; }.tour-tabs button { font-size:11px; gap:5px; }.practice-suite { gap:24px 16px; }.practice-suite h3 { font-size:20px; }
  .dimension { font-size:14px; gap:8px; padding:12px; }.demo-grid form { padding:20px; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; }* { transition:none!important; }.button:hover { transform:none; } }
/* Compact hero: the whole journey stays beside the story. */
.hero.wrap{max-width:1170px;display:grid;grid-template-columns:minmax(0,.84fr) minmax(0,1.4fr);gap:44px;align-items:center;text-align:left;padding-block:44px 55px}
.hero-copy{padding-bottom:12px}.hero h1{font-size:clamp(42px,3.8vw,56px);line-height:1.08;letter-spacing:-.055em}.hero h1 br{display:none}.hero-lead{max-width:460px;margin:24px 0 0;font-size:18px;line-height:1.65;text-wrap:initial}.hero .actions{justify-content:flex-start;gap:24px}.hero .text-link{font-size:13px}.hero .hero-audience{font-size:10px;max-width:420px;padding:9px 14px;line-height:1.55;letter-spacing:.055em;margin-bottom:24px}
.product-tour{min-width:0;padding:0}.tour-heading{margin:0 0 12px;align-items:center;gap:15px}.tour-heading>span{font-size:10px;font-weight:800;letter-spacing:.12em;color:var(--muted)}.tour-heading button{border:0;background:none;display:flex;align-items:center;gap:7px;padding:5px 0;color:var(--muted);font-size:11px;font-weight:600}.tour-heading button:hover{color:var(--accent)}#play-icon{font-size:14px;line-height:1}
.tour-subtitle{font-size:13px;line-height:1.4;font-weight:700;letter-spacing:-.015em;padding:12px 14px;color:var(--ink);background:#faf7f3;border:1px solid var(--line);border-bottom:0;border-radius:12px 12px 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tour-screen{border-radius:0 0 14px 14px;border-color:var(--line);cursor:default;box-shadow:0 24px 54px -30px #68432638}.native-screen{position:relative;width:100%;aspect-ratio:1600/900;overflow:hidden;background:#f5f3fa}iframe{border:0;display:block}.native-screen iframe,.expanded-screen iframe{width:1600px;height:900px;transform-origin:0 0;position:absolute;inset:0}.native-screen iframe{pointer-events:none}.screen-enlarge{right:10px;bottom:10px;font-size:10px;padding:5px 9px;cursor:zoom-in;line-height:1.5;background:rgba(255,255,255,.93)}
.tour-tabs{grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;border:0;margin:13px 0 0}.tour-tabs button{display:flex;position:relative;flex-direction:column;align-items:flex-start;gap:4px;padding:9px 2px 11px;font-size:10px;font-weight:700;line-height:1.2;border:0;border-top:2px solid #e8e2dc;white-space:nowrap}.tour-tabs button span{font-size:9px;line-height:1;letter-spacing:.06em}.tour-tabs button[aria-selected="true"]{border:0;border-top:2px solid var(--orange)}.tour-tabs button[aria-selected="true"] i{position:absolute;height:2px;background:var(--orange);inset:-2px auto auto 0;width:100%;transform-origin:left;animation:stageProgress var(--stage-duration,8s) linear forwards}.product-tour.is-paused .tour-tabs button i{animation-play-state:paused}.tour-note{font-size:10px;color:var(--muted);line-height:1.4;margin-top:5px}.tour-note span{color:#8d847a}.expanded-screen{position:relative;width:100%;aspect-ratio:1600/900;overflow:auto;background:#f5f3fa}#screen-dialog{max-width:1640px;max-height:96vh;padding:18px}.media-dialog-heading .eyebrow{font-size:10px;margin-bottom:4px}.media-dialog-heading h2{font-size:20px}.media-dialog-heading{margin-bottom:12px}#screen-dialog .screen-dialog-footer{margin-top:8px}
@keyframes stageProgress{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.coach-section{background:linear-gradient(120deg,#fff7ed,#fffdf9)}.coach-layout{display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:70px}.coach-copy>p:not(.eyebrow){font-size:18px;line-height:1.7;color:var(--muted);max-width:400px;margin-top:24px}.coach-copy>strong{display:block;font-size:17px;line-height:1.65;color:var(--accent);margin-top:25px}.coach-example{background:#fff;border:1px solid #eddfd2;border-radius:20px;box-shadow:0 25px 60px -40px #88573842;padding:28px}.coach-example-header{display:flex;align-items:center;gap:9px;padding-bottom:18px;border-bottom:1px solid var(--line);font-size:14px;font-weight:800}.coach-example-header svg{width:24px;height:24px;fill:none;stroke:var(--orange);stroke-width:1.5}.coach-example-header small{margin-left:auto;font-size:10px;color:var(--muted);font-weight:400}.learner-question{background:#f7f4fc;border-radius:12px;padding:17px 20px;margin:20px 0}.learner-question>span,.coach-answer>span{display:block;font-size:9px;font-weight:800;letter-spacing:.09em;color:#75619c;margin-bottom:8px}.learner-question p{font-size:15px;line-height:1.6;font-weight:600}.coach-answer>span{color:var(--accent)}.coach-answer p{font-size:14px;line-height:1.7;color:var(--muted)}.coach-answer blockquote{margin:20px 0;padding:0 0 0 17px;border-left:3px solid var(--orange);font-size:19px;line-height:1.5;font-weight:700;letter-spacing:-.025em;color:var(--ink)}
@media(min-width:1600px){.hero.wrap{gap:44px;padding-block:58px 70px}}
@media(max-width:1200px){.hero.wrap{gap:30px;grid-template-columns:.85fr 1.25fr}.hero h1{font-size:44px}.hero-lead{font-size:17px}.hero .actions{gap:16px}.hero .actions .text-link{max-width:130px}.hero .button{font-size:19px;padding:14px 19px}.coach-layout{gap:40px}}
@media(max-width:1000px){.hero.wrap{grid-template-columns:1fr;gap:35px;padding-top:38px}.hero-copy{text-align:center;max-width:660px;margin:auto}.hero h1{font-size:52px}.hero-lead{max-width:610px;margin:22px auto 0}.hero .actions{justify-content:center}.hero .actions .text-link{max-width:none}.hero .hero-audience{max-width:none}.tour-tabs button{font-size:12px}.tour-tabs button span{font-size:10px}.tour-subtitle{font-size:15px}.tour-note{font-size:11px}.coach-layout{grid-template-columns:1fr;gap:30px}.coach-copy>p:not(.eyebrow){max-width:660px}.coach-copy>strong br{display:none}.coach-example{max-width:720px}.coach-copy>strong{margin-top:16px}}
@media(max-width:600px){.hero.wrap{gap:28px;padding-block:34px 30px}.hero-copy{text-align:left}.hero h1{font-size:clamp(36px,9.8vw,56px)}.hero .hero-audience{font-size:9px}.hero .actions{gap:8px;align-items:stretch}.hero .actions .text-link{align-self:center;font-size:14px}.hero-lead{font-size:17px}.tour-heading{margin-bottom:8px}.tour-subtitle{font-size:12px;padding:10px}.tour-tabs{grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;margin-top:12px}.tour-tabs button{font-size:8px;padding:8px 0;gap:6px;letter-spacing:-.02em;align-items:center}.tour-tabs button span{font-size:8px}.tour-tabs button[data-step="5"]{font-size:7px}.tour-note{font-size:10px}.screen-enlarge{font-size:9px;padding:4px 6px;right:7px;bottom:7px}.coach-copy>p:not(.eyebrow){font-size:17px}.coach-copy>strong{font-size:16px}.coach-example{padding:19px;border-radius:14px}.coach-example-header{font-size:12px;gap:7px}.coach-example-header small{font-size:8px}.learner-question{padding:14px;margin-top:18px}.learner-question p{font-size:14px}.coach-answer p{font-size:13px}.coach-answer blockquote{font-size:18px}.expanded-screen{aspect-ratio:auto;height:64vh;min-height:320px}.expanded-screen iframe{transform:none!important;position:relative;min-width:1600px}.media-dialog-heading h2{font-size:15px}#screen-dialog{padding:10px}.media-dialog-heading .eyebrow{font-size:9px}}
@media(prefers-reduced-motion:reduce){.tour-tabs button i{animation:none!important}.tour-tabs button[aria-selected="true"] i{width:100%}}
@media(min-width:601px){#screen-dialog .expanded-screen{max-width:calc((100vh - 200px) * 1600 / 900);margin-inline:auto}#screen-dialog{width:min(calc(100% - 36px),calc((100vh - 200px) * 1600 / 900 + 38px))}}
@media(min-width:1001px) and (max-height:960px){.nav{height:76px}.hero.wrap{padding-block:24px 32px}.hero .product-tour{max-width:calc((100svh - 280px) * 1600 / 900);justify-self:end}}
@media(min-width:1001px) and (max-height:960px){.hero .product-tour{width:100%}}
@media(max-width:600px){.tour-tabs{grid-template-columns:repeat(4,minmax(0,1fr));gap:4px 8px}.tour-tabs button,.tour-tabs button[data-step="5"]{font-size:11px;align-items:flex-start;flex-direction:row;gap:7px;padding:11px 1px;min-height:40px}.tour-tabs button span{font-size:9px;padding-top:2px}.expanded-screen iframe{pointer-events:none}}

/* Keep the full assessment caption readable, including both named frameworks. */
.tour-subtitle{white-space:normal;min-height:43px;display:flex;align-items:center;text-overflow:clip}
@media(max-width:600px){.tour-subtitle{min-height:40px}.tour-subtitle.is-long{font-size:11px;line-height:1.5}}
@media(min-width:601px){.tour-subtitle.is-long{font-size:12px;line-height:1.5}}

/* Product hierarchy: a complete case experience, principles, then focused games. */
.nav nav { gap:22px; white-space:nowrap; }
.why.section { padding-block:72px 80px; background:var(--orange); color:var(--ink); }
.why .eyebrow { color:var(--ink); opacity:.8; }
.why .why-body { max-width:750px; margin:25px auto 0; font-size:20px; line-height:1.65; color:var(--ink); text-wrap:balance; }
.why-inner>strong { display:block; margin-top:28px; font-size:22px; line-height:1.5; font-weight:800; }
.products-section { padding-block:80px; scroll-margin-top:-56px; }
#cases,#framework,#coach { scroll-margin-top:-60px; }
.products-section .section-intro { text-align:center; }
.products-section .section-lead { margin-top:18px; }
.product-features { display:grid; grid-template-columns:1.85fr 1fr; gap:20px; margin-top:36px; }
.simulator-feature,.foundations-feature { min-width:0; border:1px solid var(--line); border-radius:20px; overflow:hidden; }
.simulator-feature { background:#fff; box-shadow:0 18px 40px -32px #67432550; }
.feature-copy { padding:26px 28px 20px; }
.product-kicker { color:var(--accent); font-size:10px; line-height:1.5; font-weight:800; letter-spacing:.08em; text-transform:uppercase; margin-bottom:10px; }
.product-features h3 { font-size:32px; line-height:1.16; }
.feature-copy>p:not(.product-kicker),.foundations-feature>p:not(.product-kicker) { color:var(--muted); font-size:16px; line-height:1.65; margin-top:12px; }
.simulator-preview { margin-inline:20px; aspect-ratio:2.3; overflow:hidden; border:1px solid var(--line); border-radius:12px; background:#f5f3fa; }
.product-link { display:inline-flex; align-items:center; gap:10px; font-size:13px; line-height:1.4; font-weight:800; background:none; border:0; padding:0; color:var(--ink); }
.product-link span { color:var(--accent); font-size:16px; }
.product-link:hover { color:var(--accent); }
.simulator-feature>.product-link { margin:20px 28px 24px; }
.product-footer { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:14px; margin:20px 28px 24px; }
.coach-included { font-size:11px; font-weight:600; color:var(--muted); padding:6px 9px; border:1px solid var(--line); border-radius:6px; }
.coach-included:hover { color:var(--accent); border-color:#ffc797; }
.foundations-feature { display:flex; flex-direction:column; padding:26px 28px; background:linear-gradient(145deg,#fff7ed,#faf7f2); }
.foundations-feature>.product-link { margin-top:auto; padding-top:20px; }
.foundations-visual { flex:1; min-height:240px; padding-top:26px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:36px; margin-block:4px 18px; }
.foundations-prism { width:102px; height:102px; position:relative; transform:scale(1.5); }
.foundations-prism span { position:absolute; width:33px; height:33px; border-radius:9px; transform:rotate(45deg); }
.foundations-prism span:nth-child(1){top:1px;left:35px;background:#5b4ce5}
.foundations-prism span:nth-child(2){top:18px;right:3px;background:#ff913d}
.foundations-prism span:nth-child(3){right:3px;bottom:18px;background:#20a68e}
.foundations-prism span:nth-child(4){bottom:1px;left:35px;background:#d9557d}
.foundations-prism span:nth-child(5){left:3px;bottom:18px;background:#3478db}
.foundations-prism span:nth-child(6){top:18px;left:3px;background:#455167}
.foundations-prism i { position:absolute; top:37px; left:37px; width:28px; height:28px; border:6px solid #13192d; border-radius:8px; background:#fff; transform:rotate(45deg); }
.foundations-visual-label { font-size:11px; line-height:1.55; font-weight:600; color:var(--muted); text-align:center; }
.skill-games { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; margin-top:24px; }
.skill-games>article { min-width:0; display:flex; flex-direction:column; border:1px solid var(--line); border-radius:16px; overflow:hidden; background:#fff; }
.game-exercise { height:204px; padding:24px; background:var(--cream); display:flex; flex-direction:column; justify-content:center; }
.exercise-label { display:block; font-size:9px; font-weight:800; text-transform:uppercase; letter-spacing:.1em; color:var(--muted); margin-bottom:18px; }
.game-exercise>p { font-size:23px; line-height:1.3; font-weight:700; letter-spacing:-.035em; }
.headline-prompt { display:flex; align-items:center; gap:7px; font-size:13px; font-weight:600; color:var(--accent); padding-top:13px; margin-top:15px; border-top:2px solid #ffc797; }
.headline-prompt i { width:2px; height:15px; background:var(--orange); }
.redflag-exercise { background:#fff4ed; }
.redflag-exercise mark { color:inherit; background:#ffdcc7; padding:1px 4px; border-bottom:2px solid var(--orange); }
.redflag-prompt { display:flex; align-items:center; gap:7px; margin-top:18px; color:var(--accent); font-size:11px; font-weight:700; }
.redflag-prompt svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.6; }
.sayless-exercise { background:#f5f4f1; }
.sayless-exercise .exercise-label { margin-bottom:12px; }
.sayless-exercise .wordy-example { font-size:16px; line-height:1.5; font-weight:400; letter-spacing:0; color:var(--muted); text-decoration:line-through; text-decoration-color:#b9aaa0; }
.sayless-arrow { color:var(--accent); line-height:1; margin-block:8px; }
.skill-game-copy { position:relative; flex:1; padding:22px 24px 24px; }
.skill-game-copy h3 { font-size:24px; line-height:1.2; }
.skill-game-copy>p:not(.product-kicker) { font-size:15px; line-height:1.6; color:var(--muted); margin-top:10px; }
.training-case-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; margin-top:34px; }
.training-case { min-width:0; background:#fff; border:1px solid var(--line); border-radius:16px; overflow:hidden; }
.training-case-photo { position:relative; aspect-ratio:16/10; overflow:hidden; background:#2c2925; }
.training-case-photo>img:first-child { display:block; width:100%; height:100%; object-fit:cover; object-position:center 43%; }
.training-case-photo::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,#00000045,transparent 48%); pointer-events:none; }
.training-case-photo .training-case-logo { position:absolute; z-index:1; top:12px; left:13px; width:92px; height:28.62px; object-fit:contain; object-position:left top; filter:brightness(0) invert(1); }
.training-case-copy { padding:18px 20px 20px; }
.training-case-copy h3 { font-size:22px; }
.training-case-copy p { margin-top:7px; font-size:13px; color:var(--muted); }
.case-selection-note { font-size:11px; color:var(--muted); margin-top:16px; }
.expertise-section .method-band { margin-top:24px; }
.expert-proofs { display:grid; grid-template-columns:1fr 1fr; gap:60px; margin-top:38px; padding-block:26px; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.expert-proofs h3 { font-size:21px; letter-spacing:-.025em; }
.expert-proofs p { max-width:460px; font-size:15px; line-height:1.6; color:var(--muted); margin-top:10px; }
.case-gallery-label { margin-top:32px; font-size:12px; font-weight:700; color:var(--muted); }
.expertise-section .training-case-grid { margin-top:16px; }




.coach-example-tabs { display:flex; gap:20px; border-bottom:1px solid var(--line); margin-top:18px; }
.coach-example-tabs button { padding:0 0 10px; font-size:12px; font-weight:700; color:var(--muted); background:none; border:0; border-bottom:2px solid transparent; }
.coach-example-tabs button[aria-selected="true"] { color:var(--ink); border-bottom-color:var(--orange); }
.coach-example [role="tabpanel"] { min-height:390px; }
.feedback-example-case { font-size:10px; font-weight:600; color:var(--muted); margin-block:17px 10px; }
.feedback-excerpt { border:1px solid var(--line); border-left:3px solid var(--orange); border-radius:9px; padding:12px 14px; margin-bottom:11px; }
.feedback-excerpt>span { display:block; font-size:9px; color:var(--accent); font-weight:800; text-transform:uppercase; letter-spacing:.065em; margin-bottom:5px; }
.feedback-excerpt h3 { font-size:16px; line-height:1.35; letter-spacing:-.025em; }
.feedback-excerpt p { font-size:13px; color:var(--muted); line-height:1.65; margin-top:6px; }
#coach-feedback-panel>.product-link { margin-top:7px; }
@media(max-width:600px){.foundations-visual{padding-top:0}}
@media(max-width:1100px){.nav nav{font-size:14px;gap:16px}.product-features{grid-template-columns:1.7fr 1fr}.feature-copy,.foundations-feature{padding:23px}.product-features h3{font-size:28px}.game-exercise{padding:20px}.game-exercise>p{font-size:21px}.skill-game-copy{padding:20px}.training-case-grid{gap:18px}}
@media(max-width:1000px){.nav nav{display:none}.product-features{grid-template-columns:1.5fr 1fr}.feature-copy>p:not(.product-kicker),.foundations-feature>p:not(.product-kicker){font-size:15px}.simulator-preview{margin-inline:15px}.simulator-feature>.product-link{margin-inline:23px}.skill-games{gap:14px}.game-exercise{height:215px}.game-exercise>p{font-size:20px}.redflag-prompt{font-size:10px}.skill-game-copy h3{font-size:22px}.skill-game-copy p{font-size:14px}.coach-example [role="tabpanel"]{min-height:350px}}
@media(max-width:700px){.product-features{grid-template-columns:1fr}.training-case-copy{padding:15px}.training-case-copy p{font-size:12px}}
@media(max-width:600px){.why.section{padding-block:48px 54px}.products-section{padding-block:54px}.products-section .section-intro{text-align:left}.product-features{margin-top:26px;gap:16px}.feature-copy{padding:22px 22px 18px}.product-kicker{font-size:9px}.product-features h3{font-size:27px}.simulator-preview{margin-inline:12px;aspect-ratio:1.95}.simulator-feature>.product-link{margin:17px 22px 22px}.foundations-feature{display:grid;grid-template-columns:1fr 110px;column-gap:15px;padding:22px}.foundations-feature>.product-kicker{grid-column:1/-1}.foundations-visual{grid-column:2;grid-row:2/4;width:110px;min-height:115px;margin:0}.foundations-prism{transform:scale(1)}.foundations-visual-label{display:none}.foundations-feature h3{grid-column:1;grid-row:2;align-self:center}.foundations-feature>p:not(.product-kicker){grid-column:1/-1;grid-row:4;margin-top:12px}.foundations-feature>.product-link{grid-column:1/-1;grid-row:5}.skill-games{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;padding-bottom:10px;margin-top:20px;scrollbar-width:thin}.skill-games>article{flex:0 0 88%;scroll-snap-align:start}.game-exercise{height:200px;padding:22px}.game-exercise>p{font-size:23px}.skill-game-copy{padding:20px 22px}.skill-game-copy h3{font-size:24px}.skill-game-copy p{font-size:14px}.training-case-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;padding-bottom:10px;margin-top:26px;scrollbar-width:thin}.training-case{flex:0 0 86%;scroll-snap-align:start}.training-case-copy{padding:17px 19px}.training-case-copy p{font-size:13px}.case-selection-note{margin-top:10px}.coach-example-tabs{gap:18px}.coach-example-tabs button{font-size:11px}.coach-example [role="tabpanel"]{min-height:0}.feedback-excerpt h3{font-size:15px}.feedback-excerpt p{font-size:12px}}
@media(max-width:360px){.foundations-feature{grid-template-columns:minmax(0,1fr) 90px}.foundations-feature h3{font-size:22px}.foundations-visual{width:90px}.foundations-prism{transform:scale(.85)}}

/* Keep product names first at every screen size. */
@media(max-width:1360px){.nav nav{font-size:14px;gap:16px}}
@media(max-width:1000px){.product-footer{margin-inline:23px}.foundations-visual{min-height:210px}.expert-proofs{gap:32px}}
@media(max-width:600px){
  .why .why-body{font-size:17px;line-height:1.65;margin-top:22px}
  .why-inner>strong{font-size:19px;margin-top:24px}
  .product-footer{margin:17px 22px 22px;gap:12px}
  .foundations-feature{display:flex;flex-direction:column}
  .foundations-feature h3{align-self:auto}
  .foundations-feature>p:not(.product-kicker){margin-top:12px}
  .foundations-visual{width:100%;min-height:155px;padding-top:20px;margin:16px 0 0;gap:18px}
  .foundations-prism{transform:scale(1.15)}
  .foundations-visual-label{display:block}
  .foundations-feature>.product-link{padding-top:22px}
  .expert-proofs{grid-template-columns:1fr;gap:22px;margin-top:26px;padding-block:24px}
  .expert-proofs h3{font-size:20px}
  .expert-proofs p{font-size:14px}
  .case-gallery-label{margin-top:26px}
}


/* Match the coach to the section introductions above it. */
.coach-section .coach-example { max-width:none; margin-top:38px; }
.coach-section #coach-practice-panel { display:grid; grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr); align-items:stretch; gap:28px; padding-top:22px; min-height:0; }
.coach-section .learner-question { display:flex; flex-direction:column; justify-content:center; margin:0; padding:26px; border:1px solid #ece6f6; }
.coach-section .learner-question p { font-size:28px; line-height:1.35; letter-spacing:-.035em; }
.coach-section .coach-answer p { font-size:16px; line-height:1.6; }
.coach-section .coach-answer blockquote { margin:16px 0; padding:17px 20px; border:1px solid #ffc797; border-left:3px solid var(--orange); border-radius:10px; background:#fff3e6; font-size:24px; line-height:1.4; }
.coach-section #coach-feedback-panel { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; align-items:start; padding-top:24px; min-height:320px; }
.coach-section .feedback-example-case { grid-column:1/-1; margin:0; }
.coach-section .feedback-excerpt { margin:0; height:100%; padding:18px; }
.coach-section .feedback-excerpt h3 { font-size:18px; }
.coach-section .feedback-excerpt p { font-size:14px; }
.coach-section #coach-feedback-panel>.product-link { grid-column:1/-1; justify-self:start; margin-top:4px; }
@media(max-width:1000px){
  .coach-section #coach-practice-panel { grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:24px; }
  .coach-section .learner-question p { font-size:23px; }
  .coach-section .coach-answer blockquote { font-size:21px; }
  .coach-section .feedback-excerpt { padding:14px; }
  .coach-section .feedback-excerpt h3 { font-size:16px; }
  .coach-section .feedback-excerpt p { font-size:13px; }
}
@media(max-width:700px){
  .coach-section .coach-example { margin-top:26px; }
  .coach-section #coach-practice-panel,.coach-section #coach-feedback-panel { grid-template-columns:1fr; min-height:0; gap:18px; padding-top:20px; }
  .coach-section .learner-question { padding:18px; }
  .coach-section .learner-question p { font-size:18px; }
  .coach-section .coach-answer p { font-size:13px; }
  .coach-section .coach-answer blockquote { font-size:19px; padding:14px 16px; }
  .coach-section .feedback-excerpt { height:auto; }
}


/* Each focused game has a clear skill label and its own visual mark. */
.skill-game-copy .product-kicker { margin:0 52px 12px 0; color:var(--accent); font-size:10px; line-height:1.5; }
.game-mark { position:absolute; top:19px; right:20px; width:40px; height:40px; display:grid; place-items:center; border-radius:11px; background:var(--orange); color:#fff; box-shadow:0 5px 12px -8px #a6420555; }
.game-mark svg { width:28px; height:28px; fill:none; stroke:currentColor; stroke-width:2.2; stroke-linecap:round; stroke-linejoin:round; }
.game-mark-flag svg path:nth-child(2) { fill:#ffffff33; }
@media(max-width:1100px){.skill-game-copy .product-kicker{font-size:9px}}
@media(max-width:1000px){.skill-game-copy>p:not(.product-kicker){font-size:14px}}
@media(max-width:600px){.skill-game-copy .product-kicker{font-size:9px}.game-mark{top:17px;right:18px}}

/* Carry the product identities through the complete training range. */
.feature-copy,.foundations-feature { position:relative; }
.product-features .product-kicker,.product-features h3 { padding-right:52px; }
.product-mark { top:24px; right:26px; }
.coach-section .learner-question p { font-weight:400; }
.coach-section .learner-question p strong { font-weight:750; }
@media(max-width:600px){
 .product-mark { top:19px; right:20px; }
 .foundations-feature { display:flex; }
 .foundations-feature .foundations-visual { margin:18px auto 0; min-height:140px; }
}

/* Two messages, with quiet speech tails and distinct speaker treatments. */
.coach-section #coach-practice-panel { gap:32px; padding:26px 8px 8px; }
.coach-section .learner-question,.coach-section .coach-answer { position:relative; border-radius:22px; box-shadow:0 8px 22px -18px #241e1a40; }
.coach-section .learner-question { border-bottom-left-radius:6px; }
.coach-section .coach-answer { padding:24px 26px; background:#fffbf6; border:1px solid #eddfd2; border-bottom-right-radius:6px; }
.coach-section .learner-question::after,.coach-section .coach-answer::after { content:""; position:absolute; bottom:20px; width:14px; height:14px; transform:rotate(45deg); }
.coach-section .learner-question::after { left:-8px; background:#f7f4fc; border-left:1px solid #ece6f6; border-bottom:1px solid #ece6f6; }
.coach-section .coach-answer::after { right:-8px; background:#fffbf6; border-right:1px solid #eddfd2; border-top:1px solid #eddfd2; }
.coach-section .coach-answer blockquote { background:#fff0df; }
@media(max-width:700px){
 .coach-section #coach-practice-panel { gap:20px; padding:22px 7px 7px; }
 .coach-section .coach-answer { padding:18px; }
}

/* Let the shorter message fit its contents, rather than the reply height. */
.coach-section .learner-question { align-self:center; justify-content:flex-start; padding:24px 26px; background:#f0eaf9; border:2px solid #d6c8eb; border-radius:22px 22px 22px 5px; }
.coach-section .coach-answer { background:#fff7ed; border:2px solid #efc39c; border-radius:22px 22px 5px 22px; }
.coach-section .learner-question::after,.coach-section .coach-answer::after { width:20px; height:20px; bottom:20px; }
.coach-section .learner-question::after { left:-12px; background:#f0eaf9; border-left:2px solid #d6c8eb; border-bottom:2px solid #d6c8eb; }
.coach-section .coach-answer::after { right:-12px; background:#fff7ed; border-right:2px solid #efc39c; border-top:2px solid #efc39c; }
@media(max-width:700px){
 .coach-section .learner-question { padding:18px; }
 .coach-section #coach-practice-panel { padding-inline:11px; }
}

/* Balance the message lengths so the conversation fills one compact row. */
@media(min-width:1001px){
 .coach-section #coach-practice-panel { grid-template-columns:minmax(0,.65fr) minmax(0,1.35fr); }
 .coach-section .learner-question { align-self:stretch; justify-content:center; padding:20px 24px; }
 .coach-section .learner-question p { font-size:36px; line-height:1.28; }
}
@media(min-width:701px) and (max-width:1000px){
 .coach-section .learner-question { align-self:stretch; justify-content:center; }
 .coach-section .learner-question p { font-size:28px; }
}

.form-trap { position:absolute; left:-10000px; width:1px; height:1px; overflow:hidden; }
.form-error { color:#9b251b; background:#fff2ee; border:1px solid #edb5a8; border-radius:10px; padding:12px 14px; font-size:14px; line-height:1.5; margin-bottom:16px; }
#demo-form .button:disabled { opacity:.7; cursor:default; transform:none; }

/* Compact navigation and touch controls for smaller screens. */
.menu-toggle,.hero-lead-mobile { display:none; }
@media(max-width:1000px){
 .nav { position:relative; gap:16px; }
 .menu-toggle { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:5px; flex-shrink:0; width:44px; height:44px; padding:10px; border:1px solid var(--line); border-radius:8px; color:var(--ink); background:#fff; }
 .menu-toggle span { width:20px; height:2px; background:currentColor; border-radius:2px; }
 .nav>.button { margin-left:auto; }
 .header.menu-open .nav nav { display:grid; grid-template-columns:1fr 1fr; gap:4px; position:absolute; top:calc(100% + 8px); left:0; right:0; padding:12px; background:#fff; border:1px solid var(--line); border-radius:12px; box-shadow:0 16px 40px -18px #241e1a55; }
 .nav nav a { min-height:48px; display:flex; align-items:center; padding:10px 12px; border-radius:7px; }
 .nav nav a:hover { background:var(--cream); }
 .menu-open .menu-toggle span:nth-child(1) { transform:translateY(7px) rotate(45deg); }
 .menu-open .menu-toggle span:nth-child(2) { opacity:0; }
 .menu-open .menu-toggle span:nth-child(3) { transform:translateY(-7px) rotate(-45deg); }
}
@media(max-width:600px){
 html { scroll-padding-top:96px; }
 .nav { gap:8px; height:76px; }
 .header .brand { width:clamp(116px,33vw,140px); }
 .nav .button { width:auto; min-height:44px; padding:10px 12px; font-size:13px; white-space:nowrap; }
 .menu-toggle { width:40px; }
 .hero-lead-full { display:none; }
 .hero-lead-mobile { display:inline; }
 .tour-heading { display:flex; }
 .tour-subtitle { white-space:normal; min-height:54px; display:flex; align-items:center; }
 .screen-enlarge { position:static; display:flex; align-items:center; justify-content:center; gap:9px; width:100%; min-height:44px; padding:10px 14px; border:0; border-top:1px solid var(--line); border-radius:0; background:#fff7ed; color:var(--accent); font-size:13px; font-weight:800; }
 .screen-enlarge span { font-size:18px; }
 .tour-tabs button { min-height:44px; }
 .dimension-list { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
 .dimension { position:relative; grid-template-columns:18px minmax(0,1fr); gap:7px; min-height:76px; padding:11px 15px 11px 10px; border-color:var(--line); font-size:13px; line-height:1.35; }
 .dimension-number { font-size:10px; }
 .dimension i { position:absolute; width:3px; height:18px; top:12px; right:6px; }
 .dimension.active { border-color:var(--ink); box-shadow:0 2px 8px -5px #241e1a60; }
 .dimension-detail { padding:22px; scroll-margin-block:16px; }
 .framework-layout { gap:16px; }
}
@media(max-width:360px){
 .nav .button { padding-inline:9px; font-size:12px; }
 .header .brand { width:116px; }
 .dimension { font-size:12px; }
}

/* Agency enquiries stay primary; returning learners have a quiet app entrance. */
.header-actions { display:flex; align-items:center; gap:20px; margin-left:auto; flex-shrink:0; }
.signin-link { display:inline-flex; align-items:center; min-height:44px; font-size:14px; font-weight:700; }
.signin-link:hover { color:var(--accent); }
.nav nav .mobile-signin { display:none; }
@media(max-width:1000px){
 .nav nav { display:none; }
 .header-actions { gap:16px; }
 .nav nav .mobile-signin { display:flex; }
 .header-actions .signin-link { display:none; }
}
@media(max-width:600px){ .header-actions { margin-left:auto; } }
