:root{--ink:#233128;--cream:#f7f3e9;--paper:#fffdf8;--sage:#8fa58d;--sage2:#dfe8db;--rust:#c86645;--gold:#d6a64b;--line:#dedbd0}
*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}
button,input{font:inherit}.topbar{height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100vw - 1080px)/2));border-bottom:1px solid var(--line);background:rgba(255,253,248,.92);position:sticky;top:0;z-index:5}
.brand{font-family:Georgia,serif;font-weight:700;font-size:21px;color:var(--ink);text-decoration:none}.nestmark{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--ink);color:var(--cream);margin-right:8px}.mini{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#6d766f}
main{min-height:calc(100vh - 120px)}.screen{display:none}.screen.active{display:block}
#landing{max-width:1080px;margin:auto;padding:90px 24px 50px}.hero{max-width:780px}.eyebrow,.qnum{font-size:12px;font-weight:800;letter-spacing:.14em;color:var(--rust);margin-bottom:14px}
h1,h2{font-family:Georgia,serif}.hero h1{font-size:clamp(48px,7vw,82px);line-height:.98;letter-spacing:-.04em;margin:0 0 26px}.hero h1 em{color:var(--rust);font-weight:400}.lead{font-family:Georgia,serif;font-size:21px;line-height:1.6;max-width:680px;color:#4c5a51}
.primary,.secondary{border:0;border-radius:999px;padding:17px 24px;font-weight:800;cursor:pointer}.primary{background:var(--ink);color:white;min-width:210px}.primary:hover{transform:translateY(-1px)}.micro{font-size:12px;color:#747c76;margin-left:12px}
.promise{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:75px}.promise div{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:20px;display:flex;gap:10px;align-items:center}.promise b{font-size:25px;color:var(--rust)}
.note{margin-top:16px;padding:22px 25px;background:var(--sage2);border-radius:18px;display:flex;gap:10px;flex-direction:column}
.quizwrap,.resultwrap{max-width:760px;margin:auto;padding:45px 24px 70px}.progressrow{display:flex;align-items:center;gap:12px;margin-bottom:55px}.progress{height:6px;background:#deded5;border-radius:9px;flex:1;overflow:hidden}.progress i{display:block;height:100%;width:12.5%;background:var(--rust);transition:.25s}.back{border:0;background:transparent;font-size:24px;cursor:pointer}.progressrow span{font-size:12px;color:#737b75}
.step{display:none}.step.active{display:block}.qicon{font-size:34px;margin-bottom:12px}.step h2{font-size:38px;line-height:1.1;margin:0 0 12px}.step h2 em{color:var(--rust)}.step h3{font-size:14px;margin:28px 0 10px}.hint{color:#687269;line-height:1.5;margin-bottom:24px}
label{display:block;font-weight:700;font-size:13px;margin:18px 0}input{display:block;width:100%;margin-top:8px;padding:15px 16px;border:1px solid #cfcfc5;border-radius:12px;background:var(--paper);outline:none}input:focus{border-color:var(--sage)}
.choices{display:grid;gap:10px}.grid2{grid-template-columns:1fr 1fr}.grid3{grid-template-columns:repeat(3,1fr)}.choices button{padding:15px;border:1px solid #d2d0c6;border-radius:13px;background:var(--paper);color:var(--ink);text-align:left;cursor:pointer}.choices button:hover{border-color:var(--sage)}.choices button.selected{background:var(--ink);color:white;border-color:var(--ink)}.compass{grid-template-columns:repeat(4,1fr)}.compass button{text-align:center}.compass .wide{grid-column:1/-1}.list{grid-template-columns:1fr}.floorFields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.actions{margin-top:35px}.actions .primary{width:100%}
#analyzing{padding:100px 24px}.analyzeBox{max-width:600px;margin:auto;text-align:center}.nestpulse{font-size:60px;animation:pulse 1s infinite alternate}@keyframes pulse{to{transform:scale(1.08);opacity:.6}}.analyzeBox h2{font-size:34px}.scan{display:grid;grid-template-columns:80px 1fr;align-items:center;text-align:left;margin:17px 0}.scan i,.scorecard i{height:7px;background:#e0dfd7;border-radius:10px;overflow:hidden}.scan b{display:block;width:0;height:100%;background:var(--rust);animation:scan 1.5s forwards}.scan:nth-of-type(3) b{animation-delay:.15s}.scan:nth-of-type(4) b{animation-delay:.3s}.scan:nth-of-type(5) b{animation-delay:.45s}@keyframes scan{to{width:82%}}
.resultwrap{max-width:850px}.resultwrap>h1{font-size:48px;margin:0}.muted{color:#6e776f}.scorehero{display:flex;gap:25px;align-items:center;background:var(--paper);border:1px solid var(--line);border-radius:22px;padding:25px;margin:28px 0}.ring{width:120px;height:120px;border-radius:50%;border:10px solid var(--sage2);display:grid;place-content:center;text-align:center;flex:0 0 auto}.ring strong{font-size:38px}.ring small{font-size:11px}.scorehero span,.match span{font-size:11px;letter-spacing:.12em;font-weight:800;color:var(--rust)}.scorehero h2{margin:6px 0;font-size:30px}.scorehero p,.match p{font-size:13px;color:#6b746d}
.scoregrid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.scorecard{display:grid;grid-template-columns:1fr auto;gap:12px;background:var(--paper);padding:20px;border:1px solid var(--line);border-radius:16px}.scorecard strong{font-size:23px}.scorecard i{grid-column:1/-1}.scorecard b{display:block;height:100%;background:var(--sage);width:0;transition:.6s}
.match{margin:12px 0 30px;padding:22px;border-radius:16px;background:var(--sage2)}.match strong{display:block;font-family:Georgia,serif;font-size:34px;margin-top:5px}
.findings h2{font-size:30px}.finding{background:var(--paper);border-left:4px solid var(--rust);border-radius:8px 16px 16px 8px;padding:18px 20px;margin:10px 0}.finding strong{display:block;margin-bottom:5px}.finding p{margin:0;line-height:1.5;color:#536057}
.paywall{margin-top:35px;background:var(--ink);color:white;padding:30px;border-radius:22px}.paywall h2{font-size:27px}.paywall p{color:#dce2dd;line-height:1.5}.pill{display:inline-block;background:var(--gold);color:var(--ink);font-size:10px;font-weight:900;letter-spacing:.1em;padding:6px 9px;border-radius:99px}.disclaimer{font-size:11px;color:#7a817c;line-height:1.5;margin:25px 0}.secondary{background:transparent;border:1px solid #aaa;color:var(--ink)}
footer{text-align:center;padding:25px;font-size:11px;color:#737b75;border-top:1px solid var(--line)}
@media(max-width:650px){.mini{display:none}#landing{padding-top:55px}.hero h1{font-size:52px}.lead{font-size:18px}.promise{grid-template-columns:1fr 1fr;margin-top:50px}.step h2{font-size:32px}.grid2,.floorFields,.scoregrid{grid-template-columns:1fr}.grid3{grid-template-columns:1fr 1fr 1fr}.compass{grid-template-columns:repeat(3,1fr)}.scorehero{align-items:flex-start}.ring{width:95px;height:95px}.ring strong{font-size:30px}.resultwrap>h1{font-size:39px}}

.ventilation-card{grid-column:1/-1}.freshnote{font-size:12px;color:#687269;margin-top:8px}
@media(max-width:650px){.ventilation-card{grid-column:auto}}

/* v0.3 */
.teaser-panel,.unlock-panel,.full-report{max-width:880px;margin:22px auto;padding:26px;border-radius:22px;background:#fffdf8;border:1px solid rgba(38,66,52,.14)}
.teaser-groups,.extra-scores{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:18px 0}
.teaser-groups>div{padding:16px;border-radius:15px;background:#f2efe4;display:flex;flex-direction:column;gap:6px}
.teaser-groups span{font-size:14px;color:#59645c}
.one-insight{padding:18px;border-left:4px solid #9b6844;background:#f8f2e8;border-radius:10px}
.one-insight span,.report-section-title span{display:block;font-size:11px;letter-spacing:.13em;font-weight:800;margin-bottom:8px}
.one-insight strong{display:block;font-family:Georgia,serif;font-size:20px;margin-bottom:6px}
.unlock-panel{text-align:center;background:#263e34;color:#fff}
.unlock-panel .eyebrow{color:#d7c99c}.unlock-panel button{display:block;margin:14px auto 0}
.unlock-panel small{display:block;margin-top:10px;opacity:.7}
.dev-preview{background:transparent!important;border:1px dashed rgba(255,255,255,.5)!important;color:#fff!important;font-size:12px!important;padding:9px 14px!important}
.full-report.locked{display:none}
.report-section-title{display:flex;justify-content:space-between;gap:15px;align-items:baseline;margin-bottom:12px}
.checklist-box{margin-top:22px;padding:20px;border-radius:16px;background:#f2efe4}
.checkitem{display:flex;gap:10px;padding:9px 0;border-bottom:1px solid rgba(38,66,52,.12)}
.checkitem:last-child{border-bottom:0}
.risk-low{color:#496d58}.risk-mid{color:#8a6728}.risk-high{color:#8d493d}
@media(max-width:650px){.teaser-groups,.extra-scores{grid-template-columns:1fr}.report-section-title{display:block}}

/* v0.3.1 paywall UX fix */
.paid-detail{display:none!important}
.unlock-panel{margin-top:18px!important;padding:34px 26px!important;box-shadow:0 16px 45px rgba(28,48,39,.18)}
.unlock-main{width:min(100%,520px);font-size:17px!important;font-weight:900!important;padding:17px 20px!important;background:#e7d39a!important;color:#243b31!important;border:0!important;border-radius:999px!important;cursor:pointer}
.paid-five-scores{display:grid;grid-template-columns:repeat(5,1fr);gap:9px;margin:16px 0 22px}
.paid-five-scores>div{background:#f2efe4;border-radius:14px;padding:13px 8px;text-align:center}
.paid-five-scores span{display:block;font-size:12px;color:#5c675f;margin-bottom:6px}
.paid-five-scores strong{font-size:23px}
@media(max-width:650px){.paid-five-scores{grid-template-columns:1fr 1fr}.paid-five-scores>div:last-child{grid-column:1/-1}}

/* v0.4.2 — REAL coded landing page */
.landing-v42{background:#f4efe4!important;color:#263e34;min-height:100vh}
.site-nav{height:86px;display:flex;align-items:center;max-width:1280px;margin:auto;padding:0 34px;border-bottom:1px solid rgba(38,62,52,.08);gap:30px}
.site-nav .brand{display:flex;align-items:center;gap:13px;font:700 27px Georgia,serif;color:#263e34;text-decoration:none}
.brand-mark{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:#263e34;color:#fff}
.site-nav nav{margin-left:auto;display:flex;gap:34px}.site-nav nav a{font-size:14px;text-decoration:none;color:#3f5048}
.nav-cta,.main-cta{border:0;border-radius:999px;background:#21483a;color:#fff;font-weight:800;cursor:pointer}
.nav-cta{padding:13px 23px}.main-cta{padding:17px 31px;font-size:16px}
.hero-v42{position:relative;max-width:1280px;min-height:650px;margin:auto;padding:82px 34px 32px;display:grid;grid-template-columns:46% 54%;grid-template-rows:auto auto;overflow:visible}
.hero-copy{z-index:4;padding:18px 15px 0 0}.kicker{font-size:12px;letter-spacing:.14em;color:#c96442;font-weight:900}
.hero-copy h1{font:700 clamp(54px,5vw,78px)/.94 Georgia,serif;margin:18px 0 25px;letter-spacing:-.035em}.hero-copy h1 em{display:inline-block;color:#cc6948;font-weight:400}
.hero-copy p{max-width:590px;font:400 19px/1.55 Georgia,serif;color:#526158;margin-bottom:25px}.hero-copy small{display:block;margin:12px 0 0 11px;color:#7c857f}
.nest-visual{position:relative;height:490px;border-radius:0 0 0 60px;overflow:visible;margin-top:-45px}
.nest-visual img{width:100%;height:100%;object-fit:cover;object-position:center;border-radius:28px;filter:saturate(.9) contrast(.96)}
.scan-tag{position:absolute;z-index:3;background:rgba(255,252,245,.95);padding:10px 15px;border-radius:999px;box-shadow:0 8px 24px rgba(40,45,38,.10);min-width:145px}
.scan-tag b,.scan-tag span{display:block}.scan-tag b{font-size:12px}.scan-tag span{font-size:10px;margin-top:2px;color:#6e756f}
.tag-light{left:8%;top:5%}.tag-heat{left:44%;top:0;background:#f4c5ae}.tag-noise{right:-1%;top:6%;background:#e6eadb}.tag-vent{right:-4%;top:27%;background:#dce7ef}
.tag-privacy{right:-2%;top:48%}.tag-moisture{left:4%;bottom:14%;background:#e0dcf2}.tag-smoke{left:42%;bottom:5%;background:#e3d5e8}.tag-access{right:1%;bottom:10%}
.factor-strip-v42{grid-column:1/2;display:grid;grid-template-columns:repeat(4,1fr);align-self:end;margin-top:-115px;padding-right:22px}
.factor-strip-v42 div{text-align:center;padding:11px 5px;border-right:1px solid rgba(38,62,52,.08)}.factor-strip-v42 div:nth-child(4n){border-right:0}
.factor-strip-v42 b{display:block;font-size:22px;color:#c96442}.factor-strip-v42 strong{display:block;font-size:12px;margin:5px 0}.factor-strip-v42 span{display:block;font-size:9px;line-height:1.25;color:#88908b}
.sample-result-v42{grid-column:2/3;align-self:end;margin:-30px 0 0 30px;z-index:5;background:#fffdf8;border-radius:18px;box-shadow:0 14px 40px rgba(43,53,46,.13);padding:17px 20px;display:grid;grid-template-columns:1fr 1.5fr .65fr;gap:18px;align-items:center}
.sample-result-v42 small{font-size:9px;letter-spacing:.12em}.sample-result-v42 b{display:block;font:700 20px Georgia,serif;margin:4px 0}.sample-result-v42>div>strong{font:700 47px Georgia,serif}.sample-result-v42>div>strong span{font-size:22px;color:#91a198}
.sample-result-v42 ul{list-style:none;padding:0;margin:0;border-left:1px solid #e7e0d4;padding-left:18px;font-size:11px;line-height:1.85}.check-count{text-align:center;background:#f6e9df;border-radius:14px;padding:10px!important}.check-count strong{display:block!important;color:#c96442}.check-count span{font-size:10px}
.why-v42{text-align:center;background:#fffaf2;padding:72px 32px}.why-v42>h2{font:700 clamp(32px,3.4vw,50px) Georgia,serif;margin:0}.why-v42>h2 em{color:#c96442;font-weight:400}.why-v42>p{color:#667169;font-size:17px}
.story-v42{max-width:1120px;margin:38px auto 28px;display:grid;grid-template-columns:repeat(3,1fr);gap:26px;text-align:left}.story-v42 article{display:grid;grid-template-columns:145px 1fr;column-gap:18px;align-items:start}.story-v42 h3{font:700 22px/1.08 Georgia,serif;margin:9px 0}.story-v42 p{grid-column:2;color:#7a837d;line-height:1.45;margin:0;font-size:13px}
.mini-scene{grid-row:1/3;width:145px;height:145px;border-radius:16px;display:grid;place-items:center;font-size:54px}.summer{background:radial-gradient(circle,#ffe6a5,#d7d7b6)}.midnight{background:radial-gradient(circle,#c9a95c,#334b45);color:#fff}.entry{background:linear-gradient(135deg,#ead9bc,#bfa887)}
.faq-v42{max-width:850px;margin:auto;padding:70px 30px 90px}.faq-v42 h2{font:700 42px Georgia,serif}.faq-v42 details{padding:18px 0;border-top:1px solid rgba(38,62,52,.14)}.faq-v42 summary{font-weight:800;cursor:pointer}.faq-v42 p{color:#68736c}
@media(max-width:900px){.site-nav nav{display:none}.hero-v42{display:block;padding-top:45px}.nest-visual{margin-top:40px}.factor-strip-v42{margin:20px 0;grid-template-columns:repeat(4,1fr)}.sample-result-v42{margin:20px 0}.story-v42{grid-template-columns:1fr}.story-v42 article{max-width:550px;margin:auto}}
@media(max-width:600px){.site-nav{padding:0 18px}.site-nav .brand{font-size:21px}.nav-cta{padding:10px 13px;font-size:11px}.hero-copy h1{font-size:47px}.nest-visual{height:370px}.scan-tag{transform:scale(.75);transform-origin:center}.sample-result-v42{grid-template-columns:1fr}.factor-strip-v42{grid-template-columns:repeat(2,1fr)}}

/* v0.4.3 spacing + cleaner illustration */
.hero-v42{padding-bottom:82px}
.factor-strip-v42{margin-top:-52px!important;transform:translateY(62px)}
.sample-result-v42{transform:translateY(52px)}
.hero-copy small{position:relative;z-index:8;margin-bottom:34px}
.nest-visual img{object-position:center center}
.faq-v42 details p{font-size:15px;line-height:1.75;max-width:780px;margin:13px 0 3px}
@media(max-width:900px){
 .factor-strip-v42{margin-top:25px!important;transform:none}
 .sample-result-v42{transform:none}
 .hero-v42{padding-bottom:35px}
}

/* v0.4.4 — approved WIDE Nest Scan artwork */
.approved-wide-visual{
  height:500px!important;
  margin-top:-48px!important;
  margin-left:-18px;
  margin-right:-48px;
  border-radius:0!important;
  overflow:visible!important;
}
.approved-wide-visual img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center!important;
  border-radius:0!important;
  filter:none!important;
  box-shadow:none!important;
}
/* The factor pills are part of the approved artwork itself in this build.
   No duplicate HTML pills are displayed over the image. */
.approved-wide-visual .scan-tag{display:none!important}
@media(max-width:900px){
 .approved-wide-visual{margin:35px 0 0!important;height:auto!important}
 .approved-wide-visual img{height:auto!important;object-fit:contain!important}
}

/* v0.4.5 — organic full-bleed hero, matching approved wide reference */
.hero-v42{
  grid-template-columns:43% 57%!important;
  min-height:620px!important;
  padding-top:58px!important;
  padding-bottom:0!important;
  overflow:visible!important;
}
.approved-wide-visual{
  width:calc(100% + 105px)!important;
  height:520px!important;
  margin:-58px -105px 0 -8px!important;
  overflow:visible!important;
  border-radius:0!important;
}
.approved-wide-visual img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center!important;
  border-radius:0!important;
  display:block!important;
  filter:none!important;
}
/* fade image organically into the cream page on the LEFT and BOTTOM */
.approved-wide-visual{
  -webkit-mask-image:
    linear-gradient(to right, transparent 0%, #000 13%, #000 100%),
    linear-gradient(to bottom, #000 0%, #000 82%, transparent 100%);
  -webkit-mask-composite: source-in;
  mask-image:
    linear-gradient(to right, transparent 0%, #000 13%, #000 100%),
    linear-gradient(to bottom, #000 0%, #000 82%, transparent 100%);
  mask-composite: intersect;
}
.factor-strip-v42{
  margin-top:-52px!important;
  transform:none!important;
  position:relative!important;
  z-index:6!important;
  padding-top:0!important;
}
.sample-result-v42{
  transform:none!important;
  position:relative!important;
  z-index:8!important;
  margin:-108px -55px 18px 35px!important;
}
.hero-copy{padding-top:38px!important}
.hero-copy small{margin-bottom:62px!important}
@media(max-width:900px){
 .hero-v42{padding-bottom:30px!important}
 .approved-wide-visual{
   width:100%!important;height:auto!important;margin:30px 0 0!important;
   -webkit-mask-image:none!important;mask-image:none!important;
 }
 .approved-wide-visual img{height:auto!important;object-fit:contain!important}
 .sample-result-v42{margin:20px 0!important}
 .factor-strip-v42{margin-top:25px!important}
}

/* v0.4.6 — EXTRA-WIDE scan + proper overlapping Nest Match card */
.hero-v42{
  grid-template-columns:40% 60%!important;
  max-width:1360px!important;
}
.approved-wide-visual{
  width:calc(100% + 175px)!important;
  height:525px!important;
  margin:-58px -175px 0 -20px!important;
}
.approved-wide-visual img{
  object-fit:cover!important;
  object-position:center center!important;
}
/* Keep the organic fade, but only at the left/bottom — never hide the right-side labels. */
.approved-wide-visual{
  -webkit-mask-image:
    linear-gradient(to right, transparent 0%, #000 10%, #000 100%),
    linear-gradient(to bottom, #000 0%, #000 86%, transparent 100%);
  mask-image:
    linear-gradient(to right, transparent 0%, #000 10%, #000 100%),
    linear-gradient(to bottom, #000 0%, #000 86%, transparent 100%);
}
.sample-result-v42{
  grid-column:2/3!important;
  width:calc(100% + 95px)!important;
  max-width:none!important;
  margin:-104px -95px 20px 42px!important;
  padding:17px 20px!important;
  grid-template-columns:1.05fr 1.55fr .7fr!important;
  background:rgba(255,253,248,.98)!important;
  border:1px solid rgba(42,63,52,.08);
  border-radius:17px!important;
  box-shadow:0 14px 42px rgba(43,53,46,.15)!important;
}
.sample-score-block small{display:block;font-size:9px;letter-spacing:.13em;font-weight:800;color:#758078}
.sample-score-block b{display:block!important;font:700 22px Georgia,serif!important;margin:5px 0 1px!important}
.sample-score-block>strong{font:700 52px/1 Georgia,serif!important;color:#244337}
.sample-score-block>strong span{font-size:24px!important;color:#92a198!important;font-weight:400}
.sample-result-v42 ul{font-size:11px!important;line-height:1.95!important}
.sample-result-v42 ul li span{display:inline-block;width:19px;color:#c96442;font-weight:900}
.check-count strong{font:700 40px/1 Georgia,serif!important;color:#c96442!important}
.check-count span{display:block;font-size:10px!important;line-height:1.3}
@media(max-width:900px){
 .approved-wide-visual{width:100%!important;height:auto!important;margin:30px 0 0!important}
 .sample-result-v42{width:100%!important;margin:20px 0!important}
}


/* =========================================================
   v0.6 REFERENCE-LOCKED HERO
   The uploaded approved 1774×887 reference is displayed at
   its natural 2:1 composition with no crop, no object-fit,
   no reconstructed bubbles and no competing hero layout.
   ========================================================= */

body:has(#landing.active) > .topbar { display:none !important; }

.landing-v06 {
  background:#f6f1e7 !important;
  overflow:visible !important;
  padding:0 !important;
}

.reference-hero {
  position:relative;
  width:100%;
  max-width:1774px;
  margin:0 auto;
  aspect-ratio:1774 / 887;
  background:#f6f1e7;
  overflow:hidden;
}

.reference-hero > img {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  display:block;
  object-fit:contain;
  object-position:center top;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
}

.hero-hotspot {
  position:absolute;
  z-index:10;
  display:block;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  cursor:pointer;
  padding:0 !important;
  margin:0 !important;
  opacity:0;
}

/* Coordinates are percentages of the approved 1774×887 artwork. */
.hero-main-cta { left:4.85%; top:56.45%; width:18.55%; height:8.45%; }
.hero-nav-cta  { left:78.35%; top:1.10%; width:13.85%; height:6.85%; }
.hero-how      { left:49.95%; top:1.30%; width:7.20%; height:6.10%; }
.hero-what     { left:57.65%; top:1.30%; width:7.35%; height:6.10%; }
.hero-why      { left:65.20%; top:1.30%; width:7.60%; height:6.10%; }
.hero-faq      { left:72.75%; top:1.30%; width:4.20%; height:6.10%; }

.hero-hotspot:focus-visible {
  opacity:1;
  outline:3px solid #d56646 !important;
  outline-offset:-3px;
  border-radius:999px;
}

/* Keep the good v0.4.6 sections below the exact hero. */
.landing-v06 .why-v42 {
  margin-top:0 !important;
  border-top:1px solid rgba(31,63,51,.06);
}

/* On narrower screens preserve the WHOLE approved composition rather than crop it. */
@media (max-width: 900px) {
  .reference-hero {
    width:100%;
    aspect-ratio:1774 / 887;
  }
}

/* Very small phones: make the approved hero legible by letting it occupy a
   wider canvas; the questionnaire itself remains fully responsive. */
@media (max-width: 560px) {
  .reference-hero {
    width:100%;
    min-height:50vw;
  }
}

/* v0.6.1 */
html{scroll-behavior:smooth}
.reference-hero{max-width:1600px!important}
.info-v061{max-width:1176px;margin:0 auto;padding:88px 48px;color:#203e33}
.info-v061 .kicker,.faq-v061 .kicker{color:#d36543;font:800 11px Arial,sans-serif;letter-spacing:.16em}
.info-v061 h2{margin:15px 0 22px;font:700 46px/1.07 Georgia,serif;letter-spacing:-.02em}.info-v061 h2 em{color:#d36543;font-weight:400}
.section-lead{max-width:900px;color:#52665d;font:400 18px/1.65 Georgia,serif}.section-note{color:#7a857f;font:400 14px/1.6 Arial,sans-serif}
.steps-v061{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:40px}.steps-v061 article,.tier-v061,.dimensions-v061{border:1px solid rgba(32,62,51,.09);border-radius:18px;padding:27px;background:#fffaf2}
.steps-v061 article>span,.tier-v061 small{color:#d36543;font:800 10px Arial,sans-serif;letter-spacing:.12em}.steps-v061 h3,.tier-v061 h3{font:700 24px Georgia,serif;margin:13px 0 9px}.steps-v061 p,.tier-v061 p{color:#6f7a74;font:400 14px/1.6 Arial,sans-serif;margin:0}
.get-v061{max-width:none;padding-left:max(48px,calc((100vw - 1080px)/2));padding-right:max(48px,calc((100vw - 1080px)/2));background:#fffaf2;border-block:1px solid rgba(32,62,51,.06)}
.get-grid-v061{display:grid;grid-template-columns:1.1fr .9fr 1.15fr;gap:20px;margin-top:35px}.dimensions-v061{display:grid;grid-template-columns:1fr 1fr;gap:8px;background:#f6f1e7}.dimensions-v061 span{padding:8px;font:700 13px Arial,sans-serif}
.tier-v061.full{background:#234a3b}.tier-v061.full h3{color:white}.tier-v061.full p{color:#dce4df}.tier-v061.full small{color:#f2a283}.cheeky-v061{color:#d36543;font:italic 400 18px Georgia,serif;margin:26px 0}
.matter-v061{text-align:center}.matter-v061 h2{margin-inline:auto}.matter-copy-v061{max-width:850px;margin:25px auto 0;text-align:left;color:#53665d;font:400 18px/1.75 Georgia,serif}.matter-copy-v061 em{color:#d36543}
.why-v061{padding-top:62px!important}.why-v061 h2{font-size:clamp(32px,3vw,45px)!important;line-height:1.08!important}.why-v061>p{font-size:15px!important}
#howItWorks,#whatYouGet,#whyItMatters,#faqV42{scroll-margin-top:24px}
@media(max-width:900px){.info-v061{padding:65px 28px}.info-v061 h2{font-size:38px}.steps-v061,.get-grid-v061{grid-template-columns:1fr}.get-v061{padding-inline:28px}}
@media(max-width:560px){.info-v061{padding:52px 20px}.info-v061 h2{font-size:32px}.dimensions-v061{grid-template-columns:1fr 1fr}}

/* ============================================================
   v0.6.2 HARD FIX
   The old base stylesheet capped #landing at 1080px.
   This override removes that cap entirely.
   ============================================================ */
#landing.landing-v06,
section#landing.landing-v06,
.screen#landing.landing-v06 {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

#landing.landing-v06 .reference-hero {
    width: min(96vw, 1600px) !important;
    max-width: 1600px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Give the new content real visual presence below the hero. */
#landing.landing-v06 .info-v061 {
    box-sizing: border-box;
    width: min(1180px, calc(100% - 64px)) !important;
    max-width: 1180px !important;
}
#landing.landing-v06 .get-v061 {
    width: 100% !important;
    max-width: none !important;
}
#landing.landing-v06 .faq-v061,
#landing.landing-v06 .why-v061 {
    box-sizing: border-box;
}

/* Visible build stamp so Silvia can instantly verify the correct deployment. */
.build-stamp-v062 {
    position: fixed;
    right: 12px;
    bottom: 10px;
    z-index: 9999;
    background: rgba(32,62,51,.92);
    color: #fffaf2;
    border-radius: 999px;
    padding: 6px 10px;
    font: 700 10px/1 Arial,sans-serif;
    letter-spacing: .08em;
    pointer-events: none;
    opacity: .78;
}
@media (max-width:700px){
    #landing.landing-v06 .reference-hero { width:100% !important; }
    #landing.landing-v06 .info-v061 { width:calc(100% - 32px) !important; }
}


/* ============================================================
   v0.6.3 — SURVEY / FAQ VISIBILITY FIX
   FAQ and all landing content must exist ONLY on the landing page.
   When quiz, analysis, snapshot/paywall or report is active,
   every other screen is force-hidden.
   ============================================================ */
.screen:not(.active) {
    display: none !important;
}

#landing:not(.active),
#landing.landing-v06:not(.active) {
    display: none !important;
}

#landing:not(.active) .faq-v42,
#landing:not(.active) .faq-v061,
#landing:not(.active) #faqV42,
#landing:not(.active) .info-v061,
#landing:not(.active) .why-v42 {
    display: none !important;
}

/* FAQ is explicitly a landing-page-only component. */
#landing.active #faqV42 {
    display: block;
}

/* ============================================================
   v0.7 — CONVERSION COPY ONLY
   No layout, hero, questionnaire, navigation or scoring changes.
   Makes every finding explicitly actionable.
   ============================================================ */
.one-insight #freeInsightText .noticed-copy{
  display:block;
  margin-bottom:16px;
}
.one-insight #freeInsightText .free-check-label{
  display:block;
  margin:4px 0 7px;
  color:#b65f3b;
  font:800 11px/1.2 Arial,sans-serif;
  letter-spacing:.13em;
}
.one-insight #freeInsightText .free-check-action{
  display:block;
  color:#17382d;
  font-weight:700;
  line-height:1.5;
}
.finding .what-check{
  margin-top:14px;
  padding-top:13px;
  border-top:1px solid rgba(32,62,51,.12);
}
.finding .what-check span{
  display:block;
  margin-bottom:6px;
  color:#b65f3b;
  font:800 10px/1.2 Arial,sans-serif;
  letter-spacing:.12em;
}
.finding .what-check b{
  display:block;
  color:#203e33;
  font-weight:700;
  line-height:1.5;
}


/* ============================================================
   v0.7.1 — FREE CHECK TYPOGRAPHY ONLY
   Match the paid report: restrained sans-serif + bold action.
   No other design, copy, scoring or functionality changes.
   ============================================================ */
.one-insight #freeInsightText .free-check-action {
    font-family: Arial, sans-serif !important;
    font-size: 17px !important;
    line-height: 1.5 !important;
    font-weight: 700 !important;
    letter-spacing: 0 !important;
}


/* ============================================================
   v0.7.2 — DYNAMIC PAYWALL CONTENT
   Existing palette, typography and unlock-panel layout preserved.
   ============================================================ */
.locked-findings{
  width:min(720px,90%);
  margin:18px auto 16px;
  text-align:left;
}
.locked-finding-row{
  display:grid;
  grid-template-columns:24px 1fr auto;
  align-items:center;
  gap:10px;
  padding:10px 2px;
  border-bottom:1px solid rgba(255,255,255,.16);
  color:#fff;
}
.locked-finding-row:last-child{border-bottom:0}
.locked-finding-row .lock-mark{font-size:13px}
.locked-finding-row strong{
  font-family:Arial,sans-serif;
  font-size:15px;
  font-weight:700;
  color:#fff;
}
.locked-finding-row>span:last-child{
  font-family:Arial,sans-serif;
  font-size:12px;
  color:rgba(255,255,255,.72);
}
.unlock-extra{
  margin:14px auto 20px !important;
  max-width:760px;
  font-size:14px !important;
  line-height:1.55 !important;
  color:rgba(255,255,255,.86) !important;
}
.unlock-extra strong{
  color:#ead28f;
  font-weight:800;
}
@media(max-width:600px){
  .locked-finding-row{
    grid-template-columns:22px 1fr;
  }
  .locked-finding-row>span:last-child{
    grid-column:2;
  }
}


/* ============================================================
   v0.7.3 — FREE INSIGHT EXPLANATION TYPOGRAPHY ONLY
   Quiet supporting copy: regular sans-serif, grey, no tracking.
   Everything else remains v0.7.2.
   ============================================================ */
.one-insight #freeInsightText .noticed-copy {
    font-family: Arial, sans-serif !important;
    font-size: 16px !important;
    line-height: 1.5 !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
    color: #667068 !important;
}


/* ============================================================
   v0.7.4 — ACTUAL FREE EXPLANATION FIX
   freeInsightText is now a DIV, so browser HTML repair cannot
   eject the generated spans from their styled container.
   ============================================================ */
.one-insight #freeInsightText {
    margin-top: 14px;
}
.one-insight #freeInsightText > .noticed-copy {
    display: block !important;
    margin: 0 0 16px !important;
    padding: 0 !important;
    font-family: Arial, sans-serif !important;
    font-size: 16px !important;
    line-height: 1.45 !important;
    font-style: normal !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
    color: #667068 !important;
}

/* v0.7.5 LEGAL */
.legal-footer{width:min(1500px,94vw);margin:38px auto 18px;padding:22px 18px 28px;text-align:center;border-top:1px solid rgba(42,67,50,.16);color:#687168;font-family:Arial,sans-serif;font-size:13px;line-height:1.55}
.legal-footer-brand{font-weight:700;color:#314c3a;margin-bottom:5px}
.legal-footer-links{display:flex;justify-content:center;align-items:center;gap:8px;margin:3px 0 5px}
.legal-footer-links button{appearance:none;border:0;background:none;padding:2px 3px;color:#8b4d34;font:inherit;font-weight:700;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.legal-footer-links button:hover{color:#633725}.legal-footer-meta{font-size:12px;opacity:.9}
.legal-overlay[hidden]{display:none!important}.legal-overlay{position:fixed;inset:0;z-index:99999;background:rgba(18,34,25,.68);padding:24px;display:flex;align-items:center;justify-content:center}
.legal-shell{position:relative;width:min(820px,100%);max-height:90vh;overflow:auto;background:#f5f0e4;border-radius:24px;box-shadow:0 24px 70px rgba(0,0,0,.28);padding:46px 54px 52px;color:#263d2e}
.legal-close{position:absolute;top:14px;right:18px;width:38px;height:38px;border:0;border-radius:50%;background:rgba(45,72,54,.08);color:#294734;font:400 28px/1 Arial,sans-serif;cursor:pointer}
.legal-page{font-family:Arial,sans-serif;font-size:15px;line-height:1.68}.legal-page h1,.legal-page h2{font-family:Georgia,serif;color:#2e4b38}.legal-page h1{font-size:38px;line-height:1.08;margin:4px 0 4px}.legal-page h2{font-size:20px;margin:28px 0 7px}.legal-page p{margin:0 0 12px}.legal-kicker{color:#b45d3e;font-size:12px;font-weight:800;letter-spacing:.14em}.legal-updated{color:#788078;font-size:13px;margin-bottom:26px!important}.legal-callout,.company-card{margin:22px 0;padding:18px 20px;border-radius:16px;background:#e7eadf;border:1px solid rgba(45,72,54,.12)}.company-card h2{margin-top:0}body.legal-open{overflow:hidden}
@media(max-width:650px){.legal-overlay{padding:10px}.legal-shell{padding:42px 22px 34px;border-radius:18px;max-height:94vh}.legal-page h1{font-size:30px}.legal-footer{margin-top:28px}}
