:root { --base:#fdfdfb; --soft:#f4f4f1; --line:#e2e2dc; --text:#171714; --muted:#777773; --primary:#e25623; --success:#40b75e; }
* { box-sizing:border-box; }
html,body { margin:0; min-height:100%; background:var(--base); color:var(--text); }
body,button,input,select,textarea { font-family:"interstate","Helvetica Neue",Arial,sans-serif; }
button,input,select,textarea { font-size:inherit; }
button { color:inherit; }
.mw-logo { width:165px; }
.mw-header,
.question-header,
.intro-footer,
.question-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.mw-header .badge { margin-left: auto; }
.mw-header,.question-header { min-height:88px; padding:1.4rem clamp(1.25rem,4vw,4rem); border-bottom:1px solid var(--line); }
.button { display:inline-flex; min-height:46px; align-items:center; justify-content:center; gap:.8rem; padding:.75rem 1.2rem; border:1px solid var(--line); border-radius:.75rem; background:var(--base); font-weight:700; cursor:pointer; transition:.18s ease; }
.button:hover { transform:translateY(-2px); }
.button.primary { border-color:var(--primary); background:var(--primary); color:#fff; }
.button.ghost { border-color:transparent; background:transparent; }
.button.large { min-height:56px; }
.button.small { min-height:38px; padding:.5rem .8rem; }
.button.full { width:100%; justify-content:space-between; }
.button:disabled { border-color:var(--line); background:var(--soft); color:#b5b5b0; cursor:not-allowed; transform:none; }
.badge,.type-pill { display:inline-flex; padding:.5rem .75rem; border:1px solid var(--line); border-radius:999px; font-size:.7rem; font-weight:750; letter-spacing:.08em; text-transform:uppercase; }
.badge.success { border-color:transparent; background:#e9f7ec; color:#237a38; }
.eyebrow { display:inline-flex; align-items:center; gap:.7rem; color:var(--primary); font-size:.75rem; font-weight:800; letter-spacing:.16em; text-transform:uppercase; }
.eyebrow::before { content:""; width:2rem; height:2px; background:currentColor; }

.intro-screen,.result-screen { display:flex; min-height:100svh; flex-direction:column; padding:0 clamp(1.25rem,4vw,4rem) 2rem; overflow:hidden; background:radial-gradient(circle at 78% 52%,#e2562312,transparent 28%),var(--base); }
.intro-screen .mw-header,.result-screen .mw-header { padding-inline:0; border:0; }
.intro-grid { display:grid; flex:1; grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr); align-items:center; gap:6vw; width:100%; max-width:1440px; margin:auto; padding:3rem 2vw; }
.intro-copy h1 { max-width:720px; margin:1.5rem 0; font-size:clamp(3.5rem,5.2vw,6rem); font-weight:620; line-height:.96; letter-spacing:-.055em; }
.intro-copy>p { max-width:590px; color:var(--muted); font-size:clamp(1.05rem,1.5vw,1.3rem); line-height:1.7; }
.start-button { min-width:230px; margin-top:2.3rem; justify-content:space-between; }
.intro-meta { display:flex; flex-wrap:wrap; gap:1.2rem 2rem; margin-top:2rem; color:var(--muted); font-size:.78rem; font-weight:600; }
.intro-meta span::before { content:""; display:inline-block; width:.35rem; height:.35rem; margin-right:.5rem; border-radius:50%; background:var(--primary); }
.motion-visual { position:relative; min-height:560px; width:min(100%,620px); margin:auto; }
.motion-main { position:absolute; inset:5% 10% 16% 8%; display:flex; align-items:flex-end; justify-content:space-between; overflow:hidden; padding:2rem; border-radius:2rem; background:var(--primary); box-shadow:0 40px 90px #e2562347; transform:rotate(-3deg); }
.motion-main::before { content:""; position:absolute; width:72%; aspect-ratio:1; right:-17%; top:-12%; border:1px solid #ffffff59; border-radius:50%; }
.motion-main img { position:absolute; z-index:1; width:43%; right:11%; top:18%; filter:invert(1); transform:rotate(12deg); }
.motion-main span,.motion-main strong { position:relative; z-index:2; color:#fff; }
.motion-main span { max-width:8rem; font-size:.72rem; font-weight:800; letter-spacing:.13em; text-transform:uppercase; }
.motion-main strong { font-size:5rem; font-weight:500; line-height:.8; opacity:.75; }
.motion-stat { position:absolute; z-index:3; display:flex; flex-direction:column; min-width:165px; padding:1rem; border:1px solid var(--line); border-radius:1rem; background:#ffffffee; box-shadow:0 18px 45px #1717141a; }
.motion-stat small { margin-top:.25rem; color:var(--muted); }.motion-stat.people{left:0;top:9%}.motion-stat.global{right:0;bottom:9%}
.air-lines { position:absolute; z-index:2; right:-1%; top:3%; width:45%; height:32%; }.air-lines i{position:absolute;right:0;width:100%;height:28%;border-top:2px solid #17171426;border-radius:50%;transform:rotate(-10deg)}.air-lines i:nth-child(2){top:30%;width:83%}.air-lines i:nth-child(3){top:60%;width:65%}
.intro-footer { padding-top:1.4rem; border-top:1px solid var(--line); color:var(--muted); font-size:.72rem; }

.profile-screen,.question-screen { display:grid; min-height:100svh; grid-template-rows:auto 1fr; background:var(--base); }
.step-label { color:var(--muted); font-size:.68rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.profile-layout { display:grid; grid-template-columns:.9fr 1.1fr; align-items:center; gap:clamp(3rem,8vw,8rem); width:min(100% - 3rem,1180px); margin:auto; padding-block:4rem; }
.profile-intro h2 { margin:1.5rem 0; font-size:clamp(3.25rem,4.6vw,5rem); font-weight:600; line-height:1; letter-spacing:-.055em; }
.profile-intro p { max-width:500px; color:var(--muted); font-size:1.05rem; line-height:1.7; }
.profile-form { width:100%; padding:1rem 0 1rem clamp(3rem,6vw,6rem); border-left:1px solid var(--line); }
.profile-form label { display:block; margin-bottom:1.2rem; font-size:.76rem; font-weight:750; }
.profile-form input,.response-select,.response-text { display:block; width:100%; margin-top:.5rem; padding:1rem; border:1px solid var(--line); border-radius:.75rem; background:var(--base); color:var(--text); outline:none; }
.profile-form input::placeholder,
.profile-form textarea::placeholder,
.response-select::placeholder,
.response-text::placeholder { color:var(--muted); opacity:1; }
.profile-form input:focus,.response-select:focus,.response-text:focus { border-color:var(--primary); box-shadow:0 0 0 3px #e2562320; }
.profile-form small { display:block; margin-top:.4rem; color:var(--muted); font-weight:400; }
.privacy { color:var(--muted); font-size:.68rem; text-align:center; }.privacy b{color:var(--success)}

.question-screen { grid-template-rows:auto 1fr auto; }
.progress-wrap { display:flex; align-items:center; gap:1rem; width:min(34vw,420px); color:var(--muted); font-size:.7rem; font-weight:800; letter-spacing:.1em; }.progress-wrap span{flex:none;white-space:nowrap}.progress-wrap progress{width:100%;height:5px;accent-color:var(--text)}
.question-layout { display:grid; grid-template-columns:125px 1fr; min-height:0; }
.question-rail { display:flex; align-items:center; flex-direction:column; gap:1.5rem; padding:3.5rem 1.4rem; border-right:1px solid var(--line); }.question-rail img{width:22px}.question-rail div{width:1px;flex:1;background:var(--line)}.question-rail span{writing-mode:vertical-rl;transform:rotate(180deg);font-size:.68rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.question-content { width:100%; max-width:1100px; margin:auto; padding:clamp(2.5rem,6vh,6rem) clamp(1.5rem,7vw,8rem); }.question-content h2{max-width:980px;margin:1.5rem 0 1rem;font-size:clamp(2rem,3.5vw,3.9rem);font-weight:590;line-height:1.1;letter-spacing:-.045em}.question-content>p{color:var(--muted)}
.type-pill { border:0; border-radius:.6rem; background:var(--soft); }
.response-area { max-width:900px; margin-top:clamp(2rem,5vh,4rem); }
.choice-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.8rem; }.choice-grid.two-up{grid-template-columns:repeat(2,minmax(0,1fr))}
.choice { display:grid; min-height:84px; grid-template-columns:auto 1fr auto; align-items:center; gap:1rem; padding:.8rem 1rem; border:1px solid var(--line); border-radius:.9rem; background:var(--base); text-align:left; cursor:pointer; transition:.18s ease; }.choice:hover{transform:translateY(-2px);border-color:var(--text)}.choice.active{border-color:var(--success);background:#40b75e12;box-shadow:inset 4px 0 var(--success)}.choice-index{display:grid;width:2.4rem;height:2.4rem;place-items:center;border-radius:.6rem;background:var(--soft);font-size:.72rem;font-weight:800}.choice b{color:var(--success);font-size:1.2rem}
.response-select { max-width:650px; font-size:1rem; }.response-text{min-height:170px;font-size:1rem;line-height:1.6;resize:vertical}
.scale-grid { display:grid; grid-template-columns:repeat(5,1fr); gap:.7rem; }.scale{display:flex;aspect-ratio:1;align-items:center;justify-content:center;flex-direction:column;border:1px solid var(--line);border-radius:1rem;background:var(--base);cursor:pointer;transition:.18s ease}.scale strong{font-size:clamp(1.4rem,3vw,2.4rem)}.scale span{min-height:1rem;margin-top:.35rem;color:var(--muted);font-size:.65rem;text-transform:uppercase}.scale:hover{border-color:var(--primary);transform:translateY(-3px)}.scale.active{border-color:var(--success);background:var(--success);color:#fff;transform:translateY(-3px)}.scale.active span{color:#fff}
.question-footer { min-height:88px; padding:1.2rem clamp(1.25rem,4vw,4rem); border-top:1px solid var(--line); }.question-footer>span{color:var(--muted);font-size:.7rem}.question-footer .next{min-width:150px;justify-content:space-between}

.result-screen { background:radial-gradient(circle at 50% 45%,#e2562318,transparent 32%),var(--base); }.result-content{display:flex;flex:1;align-items:center;justify-content:center;flex-direction:column;max-width:860px;margin:auto;padding:4rem 1rem;text-align:center}.result-symbol{display:grid;width:8rem;height:8rem;place-items:center;margin-bottom:2.5rem;border-radius:50%;background:var(--primary);box-shadow:0 25px 70px #e2562340}.result-symbol img{width:42%;filter:invert(1)}.result-content h2{margin:1.2rem 0;font-size:clamp(3rem,5.2vw,5.25rem);font-weight:600;line-height:1;letter-spacing:-.05em}.result-content p{max-width:680px;margin-bottom:2rem;color:var(--muted);font-size:1.12rem;line-height:1.75}

@media(max-width:800px){.intro-grid,.profile-layout{grid-template-columns:1fr}.motion-visual{display:none}.intro-copy h1{font-size:clamp(3.5rem,15vw,6rem)}.profile-intro{padding:3rem 0 1rem}.profile-intro h2{font-size:clamp(3rem,13vw,5rem)}.profile-form{padding:0;border:0}.question-layout{grid-template-columns:1fr}.question-rail{display:none}.choice-grid{grid-template-columns:1fr}.question-content{padding-inline:1.25rem}.question-content h2{font-size:clamp(2.2rem,9vw,3.4rem)}.question-footer>span{display:none}}
@media(max-width:520px){.mw-logo{width:112px}.mw-header,.question-header{min-height:72px}.question-header>.button{display:none}.progress-wrap{width:42vw}.question-footer{min-height:76px}.scale-grid{gap:.35rem}.scale{border-radius:.7rem}.intro-footer span:first-child{display:none}}
@media(prefers-reduced-motion:reduce){*{transition-duration:.01ms!important}}
