:root{--red:#df202b;--ink:#181818;--muted:#646464;--line:#dedede;--wash:#f5f5f3;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:#fff;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer;transition:background .15s,transform .15s}button:disabled{cursor:wait;opacity:.6}a{color:inherit;text-underline-offset:4px}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #2059b0;outline-offset:5px}main:focus{outline:none}.site-shell{max-width:1500px;margin:auto;padding:0 5vw}.site-header{height:102px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:23px}.brand{display:flex}.brand img{width:122px;height:49px;object-fit:contain}.collab{display:flex;gap:20px;font-size:28px;color:#999}.collab span{font-size:13px;line-height:1.18;font-weight:800;color:var(--ink);letter-spacing:.06em}nav{margin-left:auto;display:flex;gap:22px}.nav-link,.text-button{background:none;border:0;padding:8px 0;font-size:14px;text-decoration:none}.nav-link:hover,.text-button:hover{color:var(--red)}main{min-height:calc(100svh - 191px)}h1,h2,h3,p{margin:0}h1,h2{letter-spacing:-.05em;line-height:1.02}p{line-height:1.55}.primary,.secondary,.outline{display:inline-flex;align-items:center;justify-content:center;gap:20px;min-height:60px;border-radius:8px;padding:17px 25px;font-size:17px;font-weight:700;text-decoration:none;border:1px solid transparent}.primary{background:var(--red);color:#fff}.primary:hover{background:#c51924}.secondary{background:var(--ink);color:#fff}.secondary:hover{background:#363636}.outline{background:white;border-color:var(--line);color:var(--ink)}.primary:active,.secondary:active{transform:translateY(1px)}.arrow{font-size:25px;font-weight:400}.eyebrow{font-size:13px;line-height:1.4;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.red{color:var(--red)}.muted,.fine{color:var(--muted)}.fine{font-size:13px;line-height:1.5}.button-row{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.welcome{display:grid;grid-template-columns:1.05fr .95fr;min-height:690px;gap:5%;padding:46px 0}.welcome-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:20px 0}.welcome h1{font-size:clamp(54px,6.2vw,91px);font-weight:800;max-width:650px;margin:22px 0 24px}.welcome h1 em{font-style:normal;color:var(--red)}.welcome .intro{font-size:20px;max-width:435px;margin-bottom:28px}.welcome .fine{margin-top:13px}.welcome-meta{display:flex;gap:24px;margin-bottom:23px;font-size:14px}.welcome-meta span{padding-right:24px;border-right:1px solid var(--line)}.welcome-meta span:last-child{border:0}.hero-photo{position:relative;min-height:600px;overflow:hidden;border-radius:3px;background:#ddd}.hero-photo>img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:50% 48%}.photo-caption{position:absolute;bottom:24px;left:24px;right:24px;background:rgba(255,255,255,.96);padding:20px 23px;display:flex;justify-content:space-between;align-items:center;gap:15px}.photo-caption strong{font-size:23px;letter-spacing:-.04em}.photo-caption span{font-size:12px;line-height:1.4;max-width:95px;font-weight:700}.site-footer{border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px;padding:23px 0;font-size:12px;color:var(--muted)}.site-footer a{text-decoration:none}.mode-banner{font-size:13px;line-height:1.45;background:#f3f3f3;padding:10px 15px;margin:16px 0 -12px;border-radius:6px}.mode-banner a{font-weight:700}.question-shell{max-width:1010px;margin:auto;padding:56px 0 42px;animation:enter .25s ease-out}.question-top{display:flex;justify-content:space-between;gap:20px;align-items:center}.question-counter{font-size:15px;color:var(--muted)}.question-counter strong{color:var(--ink);font-size:21px}.progress{height:3px;background:#ececec;margin:20px 0 38px;overflow:hidden}.progress-fill{height:100%;background:var(--red);transition:width .2s}.question-shell h1{font-size:clamp(34px,4.2vw,59px);font-weight:700;max-width:890px;white-space:pre-line;margin:14px 0 30px}.choices{display:grid;grid-template-columns:1fr 1fr;gap:14px;border:0;padding:0;margin:0}.choice{position:relative;display:flex;text-align:left;align-items:center;gap:19px;min-height:112px;padding:23px;border:1px solid var(--line);border-radius:10px;background:white;font-size:19px;line-height:1.3;color:var(--ink)}.choice:hover{border-color:var(--ink);background:#fafafa}.choice.selected{border-color:var(--red);background:#fff4f4}.choice-mark{flex:0 0 23px;height:23px;border:1px solid #b8b8b8;border-radius:50%;display:grid;place-content:center}.selected .choice-mark{background:var(--red);border-color:var(--red);color:white}.choice-mark:after{content:'';width:8px;height:8px;border-radius:50%;background:transparent}.selected .choice-mark:after{background:white}.choice .hint{display:block;font-size:14px;color:var(--muted);margin-top:6px}.emotion .choice{font-size:26px;min-height:130px;letter-spacing:-.035em}.question-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:28px}.back{border:0;background:none;font-size:14px;padding:9px 0;color:var(--muted)}.back:hover{color:var(--ink)}.question-bottom .fine{max-width:400px;text-align:right}.result-shell{display:grid;grid-template-columns:1fr 1fr;gap:6%;padding:53px 0;animation:enter .3s ease-out}.portrait{position:relative;min-height:535px;background:var(--red);color:white;padding:37px;border-radius:3px;display:flex;flex-direction:column;overflow:hidden}.portrait-top{display:flex;justify-content:space-between;align-items:center;font-size:12px;font-weight:700;letter-spacing:.08em;position:relative;z-index:1}.portrait-type{font-size:240px;line-height:.9;font-weight:800;letter-spacing:-.1em;opacity:.23;position:absolute;right:32px;top:63px}.portrait h1{font-size:clamp(44px,4.25vw,67px);max-width:460px;position:relative;margin:105px 0 25px;overflow-wrap:anywhere}.portrait-tagline{font-size:19px;line-height:1.3;max-width:320px;position:relative}.portrait-bottom{margin-top:auto;padding-top:40px;display:flex;justify-content:space-between;gap:15px;align-items:flex-end}.portrait-bottom strong{font-size:20px;letter-spacing:.015em}.portrait-bottom span{font-size:11px;line-height:1.4;max-width:145px;text-align:right}.result-content{padding:30px 0}.result-content h2{font-size:clamp(31px,3.2vw,46px);white-space:pre-line;margin:15px 0 21px}.result-content .body{font-size:18px;color:#555}.traits{display:flex;gap:9px;flex-wrap:wrap;margin:23px 0}.trait{border:1px solid var(--line);padding:9px 12px;font-size:13px;border-radius:30px}.superpower{font-size:16px;margin:0 0 23px}.result-content .primary{width:100%;margin-bottom:12px}.share-actions{display:flex;gap:20px;margin:12px 0 18px;flex-wrap:wrap}.offer-shell{max-width:840px;padding:45px 0 58px;margin:auto}.offer-shell h1{font-size:clamp(34px,4.5vw,58px);white-space:pre-line;margin:16px 0 22px}.offer-shell .lead{font-size:19px;color:#555;max-width:720px;margin-bottom:26px}.offer-options{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:25px 0}.offer-card{border:1px solid var(--line);padding:25px;border-radius:12px;text-align:left;background:#fff;color:var(--ink);display:flex;flex-direction:column;align-items:flex-start;min-height:180px}.offer-card:hover{border-color:var(--red)}.offer-card strong{font-size:21px;letter-spacing:-.025em;line-height:1.2}.offer-card span{font-size:15px;line-height:1.5;color:var(--muted);margin:12px 0 20px}.offer-card b{font-size:14px;font-weight:700;color:var(--red);margin-top:auto}.gift-strip{background:var(--wash);padding:21px 23px;border-radius:9px;margin-top:22px}.gift-strip strong{display:block;margin-bottom:5px;font-size:18px}.gift-strip p{font-size:14px;color:var(--muted)}.contact-form{margin-top:26px}.form-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:22px}.field{display:flex;flex-direction:column;gap:8px;font-size:15px}.field input{height:58px;border:1px solid #bdbdbd;border-radius:7px;padding:14px 15px;background:#fff;width:100%;min-width:0;font-size:18px}.field input:read-only{background:#f2f2f2;color:#666}.consent{display:flex;gap:12px;align-items:flex-start;margin:15px 0;font-size:14px;line-height:1.5}.consent input{width:21px;height:21px;margin:1px 0 0;flex:0 0 21px;accent-color:var(--red)}.form-error{font-size:15px;color:#a0141d;background:#fff0f0;padding:13px 15px;border-radius:7px;margin:16px 0}.form-error:empty{display:none}.contact-form .primary{width:100%;margin-top:17px}.contact-form .fine{margin-top:11px}.receipt{max-width:790px;margin:auto;padding:58px 0;text-align:center;animation:enter .3s}.receipt h1{font-size:clamp(44px,5vw,70px);margin:23px 0}.receipt .receipt-text{font-size:19px;max-width:620px;margin:0 auto 25px}.receipt-number{display:inline-block;font-size:14px;border:1px solid var(--line);padding:11px 17px;border-radius:24px}.receipt .gift-strip{text-align:left;max-width:620px;margin:25px auto}.receipt .button-row{justify-content:center;margin-top:25px}.countdown{font-size:14px;color:var(--muted);margin-top:24px}.legal{max-width:860px;margin:45px auto 70px;font-size:16px;line-height:1.6}.legal h1{font-size:40px;margin:22px 0}.legal h2{font-size:22px;margin:26px 0 12px;letter-spacing:-.02em}.legal p{margin:12px 0}.legal .notice{background:#f6f6f6;padding:16px;border-radius:8px}.qr-page{max-width:780px;margin:45px auto 60px;text-align:center}.qr-page h1{font-size:clamp(40px,5vw,65px);margin:16px 0 20px}.qr-page img{display:block;width:270px;height:270px;margin:24px auto}.qr-page input{width:100%;padding:15px;border:1px solid var(--line);border-radius:8px;font-size:14px;margin:15px 0}.qr-page .button-row{justify-content:center}.skip{position:fixed;left:15px;top:-100px;background:var(--ink);color:white;padding:12px;z-index:99}.skip:focus{top:10px}.toast{position:fixed;left:50%;bottom:30px;transform:translate(-50%,20px);opacity:0;pointer-events:none;background:var(--ink);color:white;padding:13px 21px;border-radius:9px;font-size:15px;z-index:20;max-width:90vw;transition:.2s}.toast.visible{opacity:1;transform:translate(-50%,0)}dialog{border:1px solid var(--line);border-radius:16px;max-width:520px;width:calc(100% - 40px);padding:30px}dialog::backdrop{background:#0007}dialog h2{font-size:28px;margin-bottom:14px}dialog p{font-size:17px;margin-bottom:23px}[hidden]{display:none!important}@keyframes enter{from{opacity:.3;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(min-width:1600px){.site-shell{padding:0 60px}}@media(max-width:1000px){.welcome{min-height:620px;gap:4%}.hero-photo{min-height:560px}.welcome h1{font-size:64px}.welcome .intro{font-size:18px}.photo-caption strong{font-size:19px}.result-shell{gap:4%}.portrait{padding:28px}.portrait h1{font-size:46px}.site-footer{flex-wrap:wrap}.result-content{padding:12px 0}.question-shell{padding-top:40px}}@media(max-width:700px){.site-shell{padding:0 22px}.site-header{height:80px;gap:13px}.brand img{width:99px;height:40px}.collab{gap:12px;font-size:21px}.collab span{font-size:10px}.nav-link{font-size:12px}nav{gap:10px}.welcome{grid-template-columns:1fr;padding:34px 0;gap:28px;min-height:0}.welcome-copy{padding:0}.welcome h1{font-size:56px;margin:20px 0}.welcome .intro{font-size:18px}.welcome .primary{width:100%}.welcome-meta{margin-bottom:18px}.hero-photo{min-height:280px;max-height:330px}.hero-photo>img{object-position:50% 54%}.photo-caption{left:15px;right:15px;bottom:15px;padding:16px}.site-footer{font-size:12px;padding:22px 0;gap:12px}.site-footer span:last-child{flex-basis:100%}.mode-banner{margin-top:12px;margin-bottom:0;font-size:12px}.question-shell{padding:30px 0 36px}.question-shell h1{font-size:35px;margin:16px 0 25px}.progress{margin:16px 0 25px}.choices{grid-template-columns:1fr;gap:10px}.choice{min-height:79px;font-size:17px;padding:18px;gap:14px}.emotion .choice{font-size:24px;min-height:86px}.question-bottom{margin-top:20px}.question-bottom .fine{font-size:12px;max-width:220px}.eyebrow{font-size:12px}.result-shell{grid-template-columns:1fr;padding:28px 0 36px;gap:25px}.portrait{min-height:430px;padding:28px}.portrait h1{font-size:48px;margin-top:90px}.portrait-type{font-size:215px;top:50px;right:25px}.result-content h2{font-size:36px}.result-content .body{font-size:17px}.result-content{padding:0}.offer-shell{padding:30px 0 45px}.offer-shell h1{font-size:37px}.offer-shell .lead{font-size:17px}.offer-options{grid-template-columns:1fr}.offer-card{min-height:140px;padding:22px}.form-fields{grid-template-columns:1fr;gap:16px}.primary,.secondary,.outline{font-size:16px;min-height:56px;padding:16px 20px}.receipt{padding:36px 0}.receipt h1{font-size:44px}.receipt .receipt-text{font-size:17px}.receipt .button-row>*{width:100%}.legal h1{font-size:33px}.legal{margin-top:30px}.qr-page{margin-top:35px}.qr-page h1{font-size:42px}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}@media print{.site-header,.site-footer,.mode-banner,.qr-page input,.qr-page .button-row,.qr-controls{display:none}.site-shell{padding:0}.qr-page{max-width:none;margin:45px 0}.qr-page img{width:300px;height:300px}.qr-page h1{font-size:52px}}

.audience-switch{display:flex;gap:8px;margin-top:20px}.audience-switch button{border:1px solid var(--line);padding:9px 15px;border-radius:24px;background:#fff;color:var(--ink);font-size:14px}.audience-switch button[aria-pressed="true"]{background:var(--ink);color:white;border-color:var(--ink)}.other-types{margin:18px 0;font-size:15px;line-height:1.5}.other-types summary{cursor:pointer;text-decoration:underline;text-underline-offset:4px}.other-types li{margin:9px 0}.portrait-top img{max-width:135px;width:34%;height:auto}.welcome-meta{gap:13px}.welcome-meta span{padding-right:13px}
.take-phone{width:100%;margin-bottom:12px}.phone-handoff{max-width:760px;margin:auto;padding:42px 0;text-align:center}.phone-handoff h1{font-size:clamp(36px,4.5vw,58px);margin:18px 0}.phone-handoff .lead{font-size:18px;max-width:580px;margin:auto}.phone-handoff .result-qr{display:block;width:min(360px,100%);height:auto;aspect-ratio:1;margin:18px auto;background:white;image-rendering:pixelated}.phone-handoff .button-row{justify-content:center;margin:22px 0}.phone-handoff .fine{margin-bottom:18px}.portable-portrait .fine{margin-top:16px}@media(max-width:420px){.portrait h1{font-size:40px}.portrait-bottom{flex-wrap:wrap}.portrait-bottom span{text-align:left}.portrait-top{gap:12px}.welcome-meta{flex-wrap:wrap;row-gap:8px}.phone-handoff .button-row>*{width:100%}}

.discount-strip{background:#fff1f1;border-left:4px solid var(--red);padding:20px 22px;margin:22px 0}.discount-strip h3{font-size:24px;line-height:1.2;margin:10px 0}.discount-strip p{font-size:16px;line-height:1.5;margin:12px 0}.promo-code,.gift-code{display:inline-block;font-weight:700;font-size:16px;line-height:1.5}.gift-code{padding-top:10px}.contact-composer .field select,.field textarea{width:100%;font:inherit;border:1px solid #bbb;border-radius:6px;padding:14px;background:white;color:#17191c}.field textarea{resize:vertical;line-height:1.5}.contact-composer .field{margin:18px 0}.contact-composer .form-fields .field{margin:0}.discount-strip+.primary{margin-bottom:12px}

#request-form select{font:inherit;width:100%;padding:14px;border:1px solid #bbb;background:white;border-radius:6px}.consent-details{font-size:15px;line-height:1.6;margin:18px 0}.consent-details summary{cursor:pointer;font-weight:700}.phone-handoff .result-qr{max-width:100%;height:auto}
.goal-hint{font-size:14px;line-height:1.6;color:var(--muted);margin:12px 0 20px}.request-routing{background:var(--wash);border:1px solid var(--line);border-radius:9px;padding:15px 18px;margin:20px 0;overflow-wrap:anywhere;font-size:14px;line-height:1.6}.request-routing p{margin:4px 0}.consent-copy{white-space:pre-line;overflow-wrap:anywhere}.consent a,.legal a{overflow-wrap:anywhere}.legal .legal-status{font-size:14px;color:var(--muted)}

.story-shell{max-width:1000px;margin:0 auto;padding:30px 0 50px}.story-heading h1{font-size:clamp(2.2rem,5vw,4rem);margin:12px 0 28px}.story-layout{display:grid;grid-template-columns:minmax(0,380px) minmax(0,1fr);gap:42px;align-items:start}.story-preview{aspect-ratio:9/16;background:#df202b;display:flex;align-items:center;justify-content:center;color:white;overflow:hidden}.story-preview p{padding:28px}.story-preview img{display:block;width:100%;height:auto}.story-controls{padding-top:20px}.story-controls .lead{font-size:1.2rem}.story-controls #story-actions{display:grid;gap:12px;margin:25px 0}.story-controls .primary,.story-controls .outline{justify-content:center;text-align:center}.story-controls [hidden]{display:none!important}.story-controls #story-status{overflow-wrap:anywhere}.story-controls input{width:100%;padding:12px;font:inherit;margin-top:8px}.story-controls .back{margin-top:15px}@media(max-width:700px){.story-layout{grid-template-columns:1fr;gap:18px}.story-preview{max-width:330px;width:100%;margin:auto}.story-controls{padding-top:0}.story-shell{padding-top:15px}.story-heading h1{font-size:2.5rem}}

/* A persistent route to the city's questions, alongside the quiz controls. */
.site-header nav{align-items:center}.crossroads-chip{display:inline-flex;align-items:center;gap:9px;min-height:40px;padding:10px 13px;border:1px solid #f0cbd0;border-radius:24px;background:#fff2f3;color:var(--red);font-size:13px;font-weight:700;line-height:1.25;text-decoration:none;white-space:nowrap;transition:background .15s,color .15s,border-color .15s}.crossroads-chip svg{flex:0 0 18px}.crossroads-chip .chip-arrow{font-size:19px;line-height:1}.crossroads-chip:hover{background:var(--red);border-color:var(--red);color:#fff}.crossroads-chip:active{transform:translateY(1px)}
@media(max-width:900px){.site-header{height:auto;min-height:114px;display:grid;grid-template-columns:auto 1fr;gap:12px 18px;padding:14px 0}.site-header .collab{justify-self:start}.site-header nav{grid-column:1/-1;margin-left:0;gap:14px}.crossroads-chip{margin-right:auto}}
@media(max-width:700px){.site-header{min-height:112px;padding:12px 0;gap:10px 14px}.site-header nav{display:grid;grid-template-columns:minmax(0,1fr) 56px auto;gap:10px;align-items:center;width:100%}.crossroads-chip{margin-right:0;min-width:0;min-height:43px;padding:9px 10px;gap:7px;font-size:12px;white-space:normal}.crossroads-chip>span:not(.chip-arrow){min-width:0}.site-header .nav-link{max-width:56px;padding:5px 0;text-align:left;line-height:1.3}.site-header .brand{min-width:0}.site-header .collab{min-width:0}}
@media(max-width:350px){.site-header nav{gap:8px}.crossroads-chip{padding:9px 8px;gap:6px}.crossroads-chip .chip-arrow{display:none}}
@media print{.site-header{display:none}}

/* Compact public quiz screens: primary actions stay visible, tools unfold on demand. */
.quiz-about{margin:20px auto 28px;border-top:1px solid var(--line);font-size:14px}
.profile-details,.result-tools,.phone-qr-details{margin:12px 0;font-size:14px;line-height:1.5}
.profile-details>summary,.result-tools>summary,.phone-qr-details>summary,.gift-conditions>summary,.campaign-conditions>summary,.quiz-about>summary{cursor:pointer;min-height:44px;padding:12px 0;line-height:1.4;font-weight:700}
summary:focus-visible{outline:3px solid #2059b0;outline-offset:3px;border-radius:4px}
.profile-details[open]>summary,.result-tools[open]>summary{margin-bottom:8px}
.result-tools{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.result-tools-actions{display:grid;gap:8px;padding:0 0 12px}
.result-tools-actions .take-phone{margin-bottom:0}
.result-tools-actions .text-button{text-align:left;justify-self:start}
.result-invite{display:inline-flex;align-items:center;justify-content:center;min-height:44px;text-align:center;color:var(--red);font-weight:700;line-height:1.4}
.gift-strip .gift-code{padding-top:0;margin:5px 0}
.gift-conditions{margin:0;font-size:14px}
.gift-conditions>summary,.campaign-conditions>summary{font-weight:400;color:var(--muted)}
.gift-conditions[open] p{margin-bottom:10px}
.campaign-conditions{font-size:14px;line-height:1.5}
.campaign-conditions p{margin:0 0 10px}
.status-intro{margin:-8px 0 20px;color:var(--muted)}
.receipt .result-tools{max-width:620px;margin:14px auto;text-align:left}

@media(max-width:700px){
 .site-shell{padding:0 max(18px,env(safe-area-inset-right)) 0 max(18px,env(safe-area-inset-left))}
 main{min-height:0}
 .welcome{padding:22px 0 24px;gap:20px}
 .welcome-copy>.eyebrow{font-size:10px;letter-spacing:.07em}
 .audience-switch{margin-top:14px;gap:6px}
 .audience-switch button{min-height:44px;padding:10px 16px;font-size:14px}
 .welcome h1{font-size:clamp(42px,12vw,52px);margin:16px 0 18px}
 .welcome .intro{font-size:16px;line-height:1.5;margin-bottom:18px}
 .welcome-meta{font-size:12px;margin-bottom:18px;gap:12px}
 .welcome-meta span{padding-right:12px}
 .welcome .fine{font-size:12px;line-height:1.5;margin-top:10px}
 .hero-photo{min-height:220px;height:220px;border-radius:12px}
 .hero-photo>img{object-position:50% 49%}
 .photo-caption{bottom:12px;left:12px;right:12px;padding:12px 14px;border-radius:8px}
 .photo-caption strong{font-size:18px}
 .photo-caption span{display:none}
 .question-shell{padding:22px 0 28px}
 .question-top{align-items:flex-start;gap:12px}
 .question-top>.eyebrow{min-width:0;font-size:10px;line-height:1.4;letter-spacing:.04em}
 .question-counter{flex-shrink:0;white-space:nowrap;font-size:13px}
 .question-counter strong{font-size:18px}
 .progress{height:3px;margin:12px 0 21px}
 .question-shell h1{font-size:clamp(27px,7.5vw,32px);margin:12px 0 21px;line-height:1.08;letter-spacing:-.035em}
 .choices{gap:9px}
 .choice{min-height:72px;padding:15px 16px;gap:12px;font-size:16px;line-height:1.35;border-radius:12px}
 .choice>span:last-child{min-width:0;overflow-wrap:anywhere}
 .choice-mark{flex-basis:21px;height:21px}
 .choice .hint{font-size:13px;line-height:1.4;margin-top:4px}
 .emotion .choice{font-size:21px;min-height:70px;letter-spacing:-.015em}
 .question-bottom{margin-top:14px;gap:14px;align-items:flex-start}
 .back,.text-button{min-height:44px;padding:12px 0;font-size:14px;line-height:1.4}
 .question-bottom .fine{padding-top:12px;font-size:11px;line-height:1.4;max-width:150px}
 main[data-stage="question"]~.quiz-about,main[data-stage="status"]~.quiz-about,main[data-stage="question"]~.site-footer,main[data-stage="status"]~.site-footer{display:none}
 .status-intro{margin:-7px 0 18px;font-size:14px}
 .result-shell{padding:20px 0 28px;gap:18px}
 .portrait{min-height:260px;padding:22px;border-radius:14px}
 .portrait-top{font-size:10px;letter-spacing:.04em;gap:12px}
 .portrait-top img{width:100px;max-width:32%}
 .portrait-type{font-size:176px;top:26px;right:22px}
 .portrait h1{font-size:clamp(26px,8vw,32px);line-height:1.08;margin:40px 0 12px;letter-spacing:-.035em;overflow-wrap:normal;word-break:normal}
 .portrait-tagline{font-size:16px;line-height:1.4;max-width:290px}
 .portrait-bottom{display:none}
 .result-content>.eyebrow{display:none}
 .result-content h2{font-size:28px;line-height:1.1;margin:0 0 12px;letter-spacing:-.035em}
 .profile-details{margin:0 0 8px}
 .profile-details .body{font-size:16px;line-height:1.55}
 .traits{margin:16px 0;gap:6px}
 .trait{font-size:12px;padding:7px 10px}
 .superpower{font-size:14px;margin-bottom:14px}
 .discount-strip{padding:13px 16px;margin:10px 0 14px;border-left-width:3px;border-radius:10px}
 .discount-strip>.eyebrow{display:none}
 .discount-strip h3{font-size:20px;margin:4px 0 8px;line-height:1.25}
 .discount-strip p{font-size:14px;line-height:1.5}
 .discount-strip .promo-code{font-size:14px}
 .result-content .primary{margin-bottom:4px}
 .result-invite{width:100%;margin-bottom:8px}
 .other-types{font-size:14px;margin:12px 0}
 .other-types summary{min-height:44px;padding:12px 0;text-decoration:none;line-height:1.4}
 .gift-strip{padding:15px 17px;margin-top:16px;border-radius:12px}
 .gift-strip strong{font-size:16px;line-height:1.3}
 .gift-strip p{font-size:13px}
 .gift-code{font-size:15px}
 .offer-shell{padding:22px 0 30px}
 .offer-shell h1{font-size:clamp(30px,8.5vw,36px);line-height:1.1;margin:12px 0 16px}
 .offer-shell .lead{font-size:16px;margin-bottom:20px}
 .offer-options{gap:10px;margin:20px 0}
 .offer-card{min-height:130px;padding:18px;border-radius:12px}
 .offer-card strong{font-size:19px;line-height:1.25}
 .offer-card span{font-size:14px;margin:9px 0 15px}
 .offer-shell .button-row{gap:6px 16px}
 .primary,.secondary,.outline{min-height:52px;border-radius:10px;padding:14px 18px;font-size:16px;gap:12px;line-height:1.3}
 .field input,.contact-composer .field select,.field textarea,#request-form select{min-height:52px;font-size:16px}
 .form-fields{gap:14px}
 .contact-form{margin-top:20px}
 .phone-handoff{padding:24px 0 30px;text-align:left}
 .phone-handoff h1{font-size:34px;margin:14px 0;line-height:1.08}
 .phone-handoff .lead{font-size:16px}
 .phone-handoff .button-row{margin:20px 0;gap:6px}
 .phone-handoff .button-row>*{width:100%}
 .phone-handoff .fine{font-size:12px;margin:16px 0 6px}
 .phone-handoff .result-qr{width:min(300px,100%);margin:12px auto}
 .phone-qr-details{text-align:center;border:1px solid var(--line);border-radius:10px;padding:0 12px}
 .receipt{padding:26px 0 30px}
 .receipt h1{font-size:40px;margin:16px 0;line-height:1.08}
 .receipt .receipt-text{font-size:16px;margin-bottom:18px}
 .receipt .button-row{gap:6px;margin-top:18px}
 .receipt .gift-strip{margin:20px auto}
 .site-footer{font-size:11px;gap:8px 16px;padding:18px 0 max(18px,env(safe-area-inset-bottom));line-height:1.5}
 .site-footer a{min-height:44px;display:inline-flex;align-items:center}
 .quiz-about{font-size:13px;margin:8px auto 20px}
 .quiz-about>summary{font-size:13px}
 .toast{bottom:max(18px,env(safe-area-inset-bottom));font-size:14px;padding:12px 16px}
 dialog{padding:22px;border-radius:14px;max-height:calc(100svh - 40px);overflow:auto}
 dialog .button-row>*{flex:1 1 160px}
}