/* The sample frame occupies its scaled size only; its measured height is set by sample-report-motion.js. */
.hero-report.full-sample .current-report-window{position:relative;width:100%;contain:paint;overflow:hidden}
.hero-report.full-sample .current-report-window iframe{position:absolute;inset:0;display:block;transform-origin:top left}
/* Phone flow: sample question, readable report, then the catalogue. */
.mobile-test-sample{display:none}
header nav a:not(.btn),.textlink,.journey-next,footer a,.mobile-report-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 16px;border:1px solid #c4a263;border-radius:8px;background:#faf4e5;color:#193149;text-decoration:none;box-sizing:border-box;font-weight:600}
.feature-text>div>span{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 15px;border:1px solid #bb9349;border-radius:8px;background:linear-gradient(135deg,#f0d797,#c49b49);color:#193149;font-weight:700}
.replay-report,.motion-toggle{min-height:44px;border:1px solid #c4a263;border-radius:8px;padding:10px 14px;background:#193149;color:#fff5df}
@media(max-width:700px){
 body{font-size:16px}header nav{gap:8px;flex-wrap:wrap}header nav a{font-size:14px!important}header nav .btn{display:inline-flex}
 .editorial-hero{height:auto;max-height:none;overflow:hidden;padding-bottom:24px}.editorial-hero .hero-intro{padding:30px 20px 0}.hero-intro h1{font-size:40px}.hero-intro .edition{font-size:12px;margin-bottom:14px}.hero-intro .hero-description{font-size:16px;max-width:340px}.hero-intro .hero-start{display:none}
 .mobile-test-sample{display:flex;flex-direction:column;align-items:center;margin:24px 18px 50px;padding:24px 18px;background:#fffaf0;border:1px solid #dfc893;border-radius:14px;color:#193149;box-shadow:0 5px 0 #c8bca5,0 18px 30px #03162244;text-align:center;gap:16px}.mobile-test-sample h2{font-size:28px}.mobile-test-sample p{font-size:16px;margin:0}.mobile-test-sample .mobile-step{font-size:12px;font-weight:700;letter-spacing:1px}.mobile-test-sample .problem-crop{position:relative;left:auto;top:auto;transform:none;margin:0;flex-shrink:0;box-shadow:0 6px 15px #10273922}.mobile-test-sample a{font-size:16px;width:100%;min-height:48px}.mobile-test-sample .btn{margin:0}
 .editorial-hero .hero-gallery{position:relative;inset:auto;width:auto;height:auto;max-width:none;margin:0 18px;perspective:none}.editorial-hero .hero-sheet,.editorial-hero .desk-pen,.editorial-hero .desk-pencil{display:none}
 .editorial-hero .hero-report.full-sample{position:relative;left:auto;top:auto;width:100%;height:auto;max-width:none;transform:none!important;padding:24px 16px;box-sizing:border-box;scroll-margin-top:22px}.full-sample .sample-report-stamp{font-size:12px;right:18px;letter-spacing:1px}.full-sample .report-masthead{flex-wrap:wrap;gap:12px}.full-sample .report-masthead img{width:120px}.full-sample .report-masthead>span{font-size:12px}.full-sample .report-title{display:block;margin:20px 0}.full-sample .report-title h2{font-size:28px}.full-sample .report-title>span{display:block;font-size:14px;margin-top:8px}
 .full-sample .sample-operations{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.full-sample .sample-operation{padding:13px 6px}.full-sample .sample-operation>b{font-size:13px}.full-sample .sample-operation>span{font-size:12px}.full-sample .sample-operation svg{width:90px;height:90px}.full-sample h3{font-size:16px;line-height:1.4}.full-sample .sample-charts,.full-sample .sample-details{grid-template-columns:1fr;gap:16px;margin-top:20px}.full-sample .sample-charts>section,.full-sample .sample-details>section{padding:18px}.full-sample .sample-bar,.full-sample .sample-review{font-size:14px}.full-sample .sample-review b,.full-sample .sample-charts small,.full-sample .sample-details section>span{font-size:12px}.full-sample .sample-radar{height:220px}.full-sample .sample-details p{font-size:24px}.full-sample .sample-path{font-size:13px;gap:10px}.full-sample .sample-match{flex-wrap:wrap;padding:16px;gap:14px}.full-sample .sample-match img{width:45px;height:60px}.full-sample .sample-match small,.full-sample .sample-match span{font-size:12px}.full-sample .sample-match b,.full-sample .sample-match>strong{font-size:14px}.full-sample .report-foot{display:block;font-size:12px;line-height:1.6}
 .editorial-hero .hero-bottom{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin:26px 18px 0}.hero-bottom>span{display:none}.hero-bottom button{font-size:14px;margin:0}.journey{display:none}
 .editorial-hero .full-sample .report-part,.editorial-hero .full-sample .report-arc,.editorial-hero .full-sample .sample-bar i,.editorial-hero .full-sample .sample-review i,.editorial-hero .full-sample .sample-radar-fill{animation:none!important;opacity:1;translate:none}
 .editorial-hero .full-sample .report-part.mobile-reveal{animation:section-fill .6s both!important}
 .section-heading{align-items:stretch;gap:16px}.section-heading h2{font-size:32px}.section-heading .textlink{font-size:16px}.feature-text p,.faq p,.planned-features p,.report-band p{font-size:16px!important;line-height:1.6}.faq summary{font-size:16px;padding:16px;border:1px solid #c4a263;border-radius:8px;background:#f4ebd8;min-height:48px;box-sizing:border-box}.faq-examples figcaption{font-size:14px}.planned-features b{font-size:16px}.pack-label,.pack-number{font-size:14px!important}.feature-text>div>span{font-size:16px}footer.wrap{flex-direction:column;gap:16px;text-align:center;font-size:14px}footer a{font-size:14px}.btn{font-size:16px;min-height:48px}
}
@media(prefers-reduced-motion:reduce){.editorial-hero .full-sample .report-part.mobile-reveal{animation:none!important}}
@media(max-width:700px){.editorial-hero.is-paused .full-sample .report-part.mobile-reveal{animation-play-state:paused!important}}
/* One label style and subtle depth across the public pages. */
.full-sample .sample-report-stamp,.hero-sheet .sample-worksheet-stamp{transform:translateX(0);outline:none;border:1px solid #b69861;border-radius:4px;letter-spacing:1px;box-shadow:0 3px 8px #17374d16}.hero-sheet .sample-worksheet-stamp{transform:translateX(-50%)}.feature-text>div>span{box-shadow:0 2px 6px #19314912}.mini-coin.pack-number{border-radius:5px}.btn{box-shadow:0 3px 9px #19314915}header nav a:focus-visible,footer a:focus-visible{outline:3px solid #328fd0;outline-offset:3px}
/* Product clarity and downloadable examples. */
[data-saved-results][hidden]{display:none!important}.available-now{font-size:14px;color:#e5d0a0;line-height:1.5;margin:12px 0}.hero-intro .hero-description{max-width:430px}.free-samples{padding:28px;border:1px solid #d5c29d;border-radius:10px;background:#f5eddd;margin:36px 0}.free-samples h2{font:32px var(--font-heading)}.free-samples p{font-size:16px;line-height:1.6;max-width:760px}.free-samples>div{display:flex;flex-wrap:wrap;gap:14px}.roadmap{margin:32px 0}.roadmap>summary{display:list-item;padding:16px 20px;border:1px solid #d5c29d;border-radius:8px;cursor:pointer;font-weight:600}.roadmap>div{margin-top:18px}.editorial-packs .pack-art img{height:235px;width:auto;max-width:75%;object-fit:contain;transform:none}.editorial-packs .feature-pack:hover .pack-art img{transform:translateY(-4px)}footer.wrap{flex-wrap:wrap;gap:14px}footer.wrap>span{font-size:13px}.primary-practice{padding:12px;background:#f3ebd9;border-radius:8px}.secondary-practice{border-top:1px solid #dfd5c2;padding-top:14px}.sample-report-note{padding:14px;background:#f5eddd;border:1px solid #d5c29d;font-size:16px}@media(max-width:700px){.available-now{font-size:14px;padding:0 20px}.free-samples{padding:22px}.free-samples>div>a{width:100%}.editorial-packs .pack-art{height:320px}.editorial-packs .pack-art img{height:220px}.roadmap>div{grid-template-columns:1fr}.hero-intro h1{font-size:38px}}

/* Final public-page visual system: one header, one control language. */
:root{
  --ui-navy:#193149;
  --ui-gold:#d9b35e;
  --ui-paper:#fffdf7;
  --ui-cream:#f8f4ea;
  --ui-line:#dbc599;
  --ui-radius:8px;
}
body>header{
  align-items:center;
  background:#fffdf6;
  border-bottom:1px solid var(--ui-line);
  display:flex;
  gap:22px;
  justify-content:space-between;
  margin:0;
  max-width:none;
  padding:16px max(24px,calc((100vw - 1220px)/2));
}
body>header img{
  height:62px;
  object-fit:contain;
  width:175px;
}
body>header nav{
  align-items:center;
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  justify-content:flex-end;
  width:auto;
}
body>header nav a,
body>header nav button,
.textlink{
  align-items:center;
  background:#fffaf0;
  border:1px solid #d6c5a4;
  border-radius:var(--ui-radius);
  box-shadow:0 3px 8px #1931490d;
  color:var(--ui-navy);
  display:inline-flex;
  font-size:14px;
  font-weight:700;
  justify-content:center;
  min-height:44px;
  padding:10px 17px;
  text-decoration:none;
}
body>header nav a,
body>header nav button{
  font-family:var(--font-body);
  width:104px;
}
body>header nav a[href*="catalogue"]{
  width:122px;
}
body>header nav a:hover,
body>header nav button:hover,
.textlink:hover{
  background:#f4ead4;
}
body>header nav a[aria-current=page],
body>header nav a.nav-active,
body>header nav button.nav-active{
  background:var(--ui-navy);
  border-color:var(--ui-navy);
  color:#fff8e6;
  box-shadow:inset 0 1px #ffffff20,0 3px 8px #19314918;
}
body>header nav .btn,
.btn{
  background:linear-gradient(135deg,#f3dba0,#d9b366 60%,#c79a45);
  border:1px solid #c49a50;
  border-radius:var(--ui-radius);
  box-shadow:inset 0 1px #fff7,0 4px 9px #49300b1a;
  color:var(--ui-navy);
  font-weight:800;
  min-height:44px;
}
body>header nav .btn:hover,
.btn:hover{
  box-shadow:inset 0 1px #fff7,0 7px 14px #49300b2a;
}
@media(max-width:700px){
  body>header{
    gap:12px;
    justify-content:center;
    padding:12px 16px;
  }
  body>header img{
    height:48px;
    width:136px;
  }
  body>header nav{
    justify-content:center;
    width:100%;
  }
  body>header nav a,
  body>header nav button{
    font-size:13px!important;
    min-height:42px;
    padding:8px 12px;
    width:auto;
  }
}

/* Final shared header lock: keep public pages aligned with placement/catalogue. */
body>header{
  box-sizing:border-box;
  height:86px;
  min-height:86px;
  padding:12px max(24px,calc((100vw - 1220px)/2));
}
body>header nav{
  flex:0 0 auto;
  min-height:44px;
  transform:translateY(-6px);
}
body>header nav a,
body>header nav button,
body>header nav .btn,
body>header nav>a:first-child{
  box-sizing:border-box;
  font-family:var(--font-body);
  font-size:14px;
  height:44px;
  line-height:1;
  min-height:44px;
  padding:0 17px;
  width:104px;
}
body>header nav a[href*="catalogue"]{
  width:122px;
}
body>header nav>a:first-child:not([aria-current=page]){
  background:#fffaf0;
  border:1px solid #d6c5a4;
  color:#193149;
  box-shadow:0 3px 8px #1931490d;
}
body>header nav .btn{
  width:104px;
}
body>header nav .nav-test-stack{
  display:inline-flex;
  height:44px;
  position:relative;
  width:104px;
}
body>header nav .nav-test-stack>.btn{
  width:104px;
}
body>header nav .nav-test-stack>.nav-results{
  font-size:12px;
  height:34px;
  min-height:34px;
  padding:0 12px;
  position:absolute;
  right:0;
  top:50px;
  width:104px;
  z-index:5;
}
body>header nav .nav-test-stack:has(>.nav-results:not([hidden])){
  height:44px;
  isolation:isolate;
  overflow:visible;
  width:104px;
}
body>header nav .nav-test-stack:has(>.nav-results:not([hidden]))>.btn,
body>header nav .nav-test-stack:has(>.nav-results:not([hidden]))>.nav-results{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  position:absolute;
}
body>header nav .nav-test-stack:has(>.nav-results:not([hidden]))>.btn{
  background:linear-gradient(135deg,#f7dda0,#d9b35e 65%,#c89a42);
  border:1px solid #c49a50;
  border-radius:var(--ui-radius);
  box-shadow:inset 0 1px #fff7,0 4px 9px #49300b1a;
  color:#193149;
  height:44px;
  min-height:44px;
  left:0;
  padding:0 17px;
  top:0;
  width:104px;
  z-index:2;
}
body>header nav .nav-test-stack:has(>.nav-results:not([hidden]))>.btn::after{
  display:none;
}
body>header nav .nav-test-stack:has(>.nav-results:not([hidden]))>.nav-results{
  background:linear-gradient(135deg,#26445a,#193149);
  border:1px solid #c49a50;
  border-radius:6px;
  box-shadow:0 3px 7px #19314926;
  color:#fff8e6;
  font-size:10px;
  height:23px;
  min-height:23px;
  letter-spacing:0;
  padding:0 8px;
  right:-2px;
  top:29px;
  width:auto;
  z-index:3;
}
@media(max-width:700px){
  body>header{
    height:auto;
    min-height:0;
  }
  body>header nav a,
  body>header nav button,
  body>header nav .btn,
  body>header nav>a:first-child{
    height:42px;
    min-height:42px;
    padding:0 12px;
    width:auto;
  }
  body>header nav .nav-test-stack{
    height:auto;
    width:auto;
  }
  body>header nav .nav-test-stack>.nav-results{
    height:42px;
    min-height:42px;
    padding:0 12px;
    position:static;
    width:auto;
  }
  body>header nav .nav-test-stack:has(>.nav-results:not([hidden])){
    height:auto;
  }
  body>header nav .nav-test-stack:has(>.nav-results:not([hidden]))>.btn,
  body>header nav .nav-test-stack:has(>.nav-results:not([hidden]))>.nav-results{
    border-radius:8px;
    height:42px;
    min-height:42px;
    padding:0 12px;
    position:static;
    width:auto;
  }
  body>header nav .nav-test-stack:has(>.nav-results:not([hidden]))>.btn::after,
  body>header nav .nav-test-stack:has(>.nav-results:not([hidden]))>.nav-results::before{
    display:none;
  }
  body>header nav{
    transform:none;
  }
}

/* Homepage polish: starter packs, tighter walkthrough, and icon motion controls. */
.hero-bottom{
  justify-content:flex-end;
  gap:12px;
}
.hero-bottom>span{
  display:none;
}
.replay-report.hero-icon-button,
.motion-toggle.hero-icon-button{
  align-items:center;
  background:linear-gradient(135deg,#f3dba0,#d9b366 62%,#c79a45);
  border:1px solid #c49a50;
  border-radius:50%;
  box-shadow:inset 0 1px #fff7,0 4px 9px #49300b1a;
  color:#193149;
  display:inline-flex;
  font-size:15px;
  font-weight:900;
  height:30px;
  justify-content:center;
  line-height:1;
  min-height:30px;
  overflow:hidden;
  padding:0;
  text-indent:0;
  white-space:nowrap;
  width:30px;
}
.replay-report.hero-icon-button:hover,
.motion-toggle.hero-icon-button:hover{
  box-shadow:inset 0 1px #fff7,0 7px 14px #49300b2a;
}
.motion-toggle.hero-icon-button span{
  margin:0;
}
.editorial-packs{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:26px;
}
.editorial-packs .pack-art{
  height:320px;
  padding-top:58px;
}
.editorial-packs .pack-art img{
  background:transparent;
  box-shadow:none!important;
  filter:none!important;
  height:215px;
  max-width:76%;
  object-fit:contain;
  position:relative;
  z-index:1;
  transform:none!important;
  width:auto;
}
.editorial-packs .feature-pack:hover .pack-art img{
  transform:none!important;
}
.editorial-packs .feature-text h3{
  font-size:22px;
  line-height:1.14;
  min-height:76px;
}
.editorial-packs .feature-pack:nth-child(3) .pack-art{
  background:radial-gradient(ellipse at 65% 35%,#759386,#274d47 75%);
}
.editorial-packs .feature-pack:nth-child(4) .pack-art{
  background:radial-gradient(ellipse at 65% 35%,#7a8790,#324a5a 75%);
}
.report-band p{
  max-width:720px;
}
.journey{
  padding:60px 4.5% 50px;
}
.journey-heading{
  margin-bottom:24px;
}
.journey-tabs{
  margin:22px 0;
}
.journey-tabs button{
  font-size:14px;
}
.journey-panels{
  display:block;
  max-width:1120px;
}
.journey-panel{
  gap:24px;
  min-height:310px;
  padding:26px 5%;
}
.journey-panels>.journey-panel{
  min-width:0;
}
.journey-panels>.journey-panel[hidden]{
  display:none!important;
  pointer-events:none;
}
.panel-copy h3{
  font-size:clamp(34px,3.35vw,48px);
}
.panel-copy p{
  font-size:16px;
  line-height:1.7;
  max-width:440px;
}
.panel-kicker{
  font-size:11px;
}
.panel-note{
  font-size:12px;
  margin-top:18px;
}
.question-art{
  height:290px;
}
.sheet-under{
  right:0;
  top:8px;
  width:210px;
}
.problem-crop{
  left:12%;
  top:45px;
  transform:rotate(-7deg) scale(.88);
  transform-origin:left center;
}
.art-note{
  bottom:10px;
  left:12%;
}
@media(max-width:1050px){
  .editorial-packs{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:700px){
  .hero-bottom{
    justify-content:flex-end;
  }
  .replay-report.hero-icon-button,
  .motion-toggle.hero-icon-button{
    height:30px;
    min-height:30px;
    width:30px;
  }
  .journey{
    padding:42px 20px 36px;
  }
  .journey-panel{
    min-height:0;
    padding:26px 22px;
  }
  .question-art{
    height:250px;
  }
  .panel-copy p{
    font-size:15px;
  }
  .editorial-packs{
    grid-template-columns:1fr;
  }
  .editorial-packs .feature-text h3{
    min-height:0;
  }
}
