/* First visit: a clear invitation and a real, dated example. */
.home-first-visit .s1 { min-height:100svh; padding-bottom:30px; }
.home-first-visit .s1-center { width:min(1240px,100%); min-height:0; margin:auto; padding:clamp(36px,6vh,72px) 0 34px; display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); grid-template-rows:auto; align-items:center; justify-items:stretch; gap:clamp(35px,5vw,80px); }
.home-introduction { position:relative; z-index:2; }
.home-eyebrow { display:block; margin:0 0 24px; color:#9b2457; font:600 11px/1.4 var(--font-sans); letter-spacing:.13em; text-transform:uppercase; }
.home-first-visit .hero-question { display:block; width:auto; margin:0; font-size:clamp(48px,4.9vw,72px); line-height:1.06; letter-spacing:-.06em; }
.home-first-visit .hero-question > span { display:inline; }
.home-first-visit .hero-question-accent { display:block!important; }
.home-first-visit .hero-question::after { display:none; }
.home-purpose { max-width:440px; margin:25px 0 27px; color:#65545e; font:400 17px/1.7 var(--font-sans); }
.home-purpose strong { display:block; margin-bottom:5px; color:#30202a; font-weight:500; }
.home-start { display:inline-flex; justify-content:center; align-items:center; gap:24px; min-height:56px; padding:16px 24px; border:1px solid #bb2b66; border-radius:999px; background:#bb2b66; color:#fff; text-decoration:none; font:500 14px/1.3 var(--font-sans); box-shadow:0 9px 25px #b82e6420; transition:background .2s,transform .2s; }
.home-start:hover { background:#971e50; transform:translateY(-2px); }
.home-welcome { margin:12px 0 0; color:#76616d; font:400 11px/1.5 var(--font-sans); }
.home-first-visit .hero-actions { grid-row:auto; width:100%; max-width:430px; margin:32px 0 0; text-align:left; opacity:1; transform:none; }
.home-first-visit .home-search { width:100%; }
.home-first-visit .home-search label { display:block; margin-bottom:10px; color:#65545e; font:400 12px/1.5 var(--font-sans); text-transform:none; letter-spacing:0; }
.home-first-visit .home-search > div { background:#fff9fc; border:1px solid #decdd5; border-radius:12px; padding:4px; box-shadow:none; }
.home-first-visit .home-search input { min-width:0; padding:10px 12px; color:#30202a; font-size:13px; }
.home-first-visit .home-search button { padding:10px 15px; background:#f6e5ed; border-radius:8px; color:#982353; font-size:12px; }
.home-evidence-demo { position:relative; z-index:2; min-width:0; padding:30px; border:1px solid #e8d5df; border-radius:25px; background:linear-gradient(140deg,#fff 30%,#fff6fa); box-shadow:0 28px 80px #79374f13,0 3px 12px #79374f05; }
.home-demo-topline { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:22px; color:#8b2956; font:500 10px/1.4 var(--font-sans); letter-spacing:.04em; }
.home-demo-topline > span:first-child { display:inline-flex; gap:7px; align-items:center; }
.home-demo-topline i { width:6px; height:6px; border-radius:50%; background:#c73572; }
.home-evidence-demo h2 { margin:0 0 12px; max-width:420px; color:#30202a; font:500 clamp(26px,2.8vw,37px)/1.13 var(--font-sans); letter-spacing:-.045em; }
.home-demo-intro { margin:0 0 22px; color:#725e69; font:400 12px/1.6 var(--font-sans); }
.home-demo-controls { display:flex; gap:5px; margin:0 0 24px; padding:4px; border:1px solid #ecdee5; border-radius:12px; background:#f8eef3; }
.home-demo-controls[hidden],.home-demo-panel[hidden] { display:none; }
.home-demo-controls button { flex:1; min-height:40px; padding:8px 6px; border:0; border-radius:8px; background:transparent; color:#725e69; font:500 11px/1.3 var(--font-sans); cursor:pointer; }
.home-demo-controls button[aria-pressed="true"] { background:#fff; color:#9b2457; box-shadow:0 2px 7px #79374f12; }
.home-demo-controls button:hover { color:#982353; }
.home-demo-panel { min-height:202px; }
.home-demo-unit { margin:0 0 19px; color:#725e69; font:400 11px/1.5 var(--font-sans); }
.home-demo-row { margin-bottom:21px; }
.home-demo-row > div { display:flex; justify-content:space-between; align-items:baseline; gap:12px; margin-bottom:8px; }
.home-demo-row a { color:#30202a; font:500 13px/1.5 var(--font-sans); text-decoration:none; }
.home-demo-row a:hover { text-decoration:underline; text-underline-offset:3px; }
.home-demo-row strong { color:#30202a; font:500 24px/1 var(--font-sans); letter-spacing:-.035em; font-variant-numeric:tabular-nums; }
.home-demo-track { height:9px; border-radius:99px; background:#eee6eb; overflow:hidden; }
.home-demo-track i { display:block; width:var(--example-width); height:100%; border-radius:99px; background:linear-gradient(90deg,#e581a9,#bd2f6b); }
.home-demo-row--exercise .home-demo-track i { background:linear-gradient(90deg,#d8b178,#a5712a); }
.home-demo-insight { margin:23px 0 0; color:#55414d; font:400 13px/1.65 var(--font-sans); }
.home-demo-insight strong { color:#992552; font-weight:600; }
.home-demo-definition { margin:17px 0 0; padding-top:16px; border-top:1px solid #eadde3; color:#725e69; font:400 10px/1.6 var(--font-sans); }
.home-demo-provenance { margin:16px 0 0; color:#725e69; font:400 10px/1.65 var(--font-sans); }
.home-demo-provenance a { color:#982353; text-underline-offset:3px; }
.home-footnote { display:flex; justify-content:space-between; align-items:center; gap:25px; width:min(1240px,100%); margin:20px auto 0; padding-top:22px; border-top:1px solid #eadde3; color:#76616d; font:400 11px/1.6 var(--font-sans); }
.home-footnote strong { color:#55414d; font-weight:500; }
.home-footnote a { color:#982353; text-decoration:none; }
.home-first-visit :is(a,button,input):focus-visible { outline:3px solid #972153; outline-offset:4px; }
@media(min-width:1500px) { .home-first-visit .s1-center { padding-top:9vh; padding-bottom:6vh; } }
@media(max-width:1050px) { .home-first-visit .s1-center { gap:30px; }.home-evidence-demo { padding:24px; }.home-first-visit .hero-question { font-size:52px; }.home-purpose { font-size:15px; } }
@media(max-width:760px) { .home-first-visit .s1 { padding:16px 22px 100px; }.home-first-visit .s1-center { grid-template-columns:1fr; gap:34px; padding:30px 0 16px; }.home-eyebrow { margin-bottom:18px; font-size:10px; }.home-first-visit .hero-question { font-size:clamp(43px,10vw,64px); max-width:540px; }.home-purpose { margin:21px 0; max-width:460px; font-size:15px; }.home-first-visit .hero-actions { margin-top:25px; max-width:none; }.home-start { min-height:52px; font-size:13px; }.home-evidence-demo { padding:24px 22px; border-radius:21px; }.home-evidence-demo h2 { font-size:31px; }.home-demo-topline { margin-bottom:18px; }.home-demo-panel { min-height:205px; }.home-footnote { flex-wrap:wrap; gap:8px 20px; margin-top:16px; }.home-footnote > span:first-child { flex-basis:100%; } }
@media(max-width:360px) { .home-first-visit .s1 { padding-inline:17px; }.home-first-visit .hero-question { font-size:42px; }.home-evidence-demo { padding:21px 16px; }.home-evidence-demo h2 { font-size:28px; }.home-demo-controls button { font-size:10px; }.home-demo-topline { font-size:9px; } }
@media(prefers-reduced-motion:reduce) { .home-start { transition:none; }.home-first-visit .hero-butterfly { animation:none; opacity:.8; transform:translate(-30%,-65%) rotate(-12deg); } }

.home-first-visit .home-search label { position:static; width:auto; height:auto; clip:auto; clip-path:none; overflow:visible; white-space:normal; }
.home-first-visit .hero-question-future { margin-left:.14em; }
@media(min-width:761px) and (max-height:800px) { .home-first-visit .s1-center { padding-top:30px; padding-bottom:20px; }.home-evidence-demo { padding:24px; }.home-demo-topline { margin-bottom:15px; }.home-demo-intro { margin-bottom:17px; }.home-demo-controls { margin-bottom:18px; }.home-demo-panel { min-height:210px; }.home-demo-insight { margin-top:19px; font-size:12px; }.home-demo-definition { margin-top:12px; padding-top:12px; }.home-demo-provenance { margin-top:12px; }.home-first-visit .hero-actions { margin-top:24px; }.home-footnote { margin-top:10px; padding-top:17px; } }

.home-first-visit .s1 { height:auto; grid-template-rows:auto auto auto; }
.home-first-visit .s1-center { margin-block:0; }
.home-first-visit .hero-question { min-height:0; }

.home-demo-topline > a { color:inherit; text-decoration:underline; text-decoration-color:#d5a5bb; text-underline-offset:4px; line-height:1.6; padding-block:8px; }
.home-demo-topline { flex-wrap:wrap; gap:5px 12px; }
.home-demo-row a.home-demo-count { display:inline-flex; align-items:center; min-height:44px; color:#9b2457; text-decoration:underline; text-decoration-color:#dab0c2; text-underline-offset:6px; }
.home-demo-row a.home-demo-count strong { color:inherit; }
.home-demo-row--exercise a.home-demo-count { color:#936523; text-decoration-color:#d8c09f; }
.home-demo-row > div { align-items:center; margin-bottom:4px; }
.home-demo-row > div > a:first-child { display:inline-flex; align-items:center; min-height:44px; text-decoration:underline; text-decoration-color:#d9c6d0; text-underline-offset:4px; }
.home-demo-definition a { color:inherit; text-underline-offset:3px; }
.home-footnote > a { display:inline-flex; align-items:center; min-height:44px; gap:9px; text-decoration:underline; text-decoration-color:#d9b5c6; text-underline-offset:4px; }
.home-demo-topline > a:hover,.home-demo-row a.home-demo-count:hover,.home-footnote > a:hover { text-decoration-color:currentColor; }

.home-demo-topline > a { display:inline-flex; align-items:center; gap:5px; min-height:44px; padding-block:4px; font-size:11px; letter-spacing:0; }.home-demo-intro { font-size:13px; }.home-demo-unit { font-size:12px; }.home-demo-provenance { font-size:11px; }.home-footnote { font-size:12px; }
@media(max-width:360px) { .home-demo-topline > a { font-size:10px; } }
