@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@600;700&display=swap');
:root{--ink:#12314a;--navy:#0d263a;--gold:#c7a85c;--sand:#f7f5f0;--line:#dbe2e5;--muted:#60717c;--white:#fff;--shadow:0 12px 34px #0d263a0d}*{box-sizing:border-box}body{margin:0;background:var(--sand);color:var(--ink);font:16px/1.55 'DM Sans',sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}.shell{max-width:1060px;margin:auto;padding:28px 20px 70px}.brand{font-size:.75rem;text-transform:uppercase;letter-spacing:.18em;font-weight:700;color:var(--ink);display:flex;gap:10px;align-items:center}.brand i{display:inline-block;width:22px;height:22px;background:var(--gold);clip-path:polygon(50% 0,100% 100%,70% 100%,50% 45%,30% 100%,0 100%)}.hero{min-height:82vh;display:grid;align-content:center;max-width:780px}.eyebrow{color:#96752c;text-transform:uppercase;letter-spacing:.14em;font-size:.75rem;font-weight:700;margin:40px 0 14px}.hero h1,.result-title{font:700 clamp(2.65rem,8vw,5.6rem)/.98 'Playfair Display',serif;letter-spacing:-.045em;margin:0 0 22px}.hero p{font-size:clamp(1.05rem,2vw,1.3rem);color:var(--muted);max-width:630px}.analysis{margin:34px 0;color:var(--ink);font-size:.88rem}.analysis span{color:var(--gold);padding:0 3px}.button{border:0;background:var(--ink);color:white;padding:16px 22px;border-radius:4px;font-weight:700;min-height:54px;transition:.2s}.button:hover{background:#1c4c6e;transform:translateY(-1px)}.button.gold{background:var(--gold);color:#172d3d}.button.ghost{background:transparent;color:var(--ink);border:1px solid var(--line)}.meta{font-size:.82rem;color:var(--muted);margin-top:15px}.card{background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);padding:clamp(22px,5vw,46px);border-radius:7px;margin-top:36px}.card h1,.card h2{font:700 clamp(2rem,5vw,3.5rem)/1.05 'Playfair Display',serif;margin:0 0 12px;letter-spacing:-.04em}.field{display:grid;gap:7px;margin:17px 0}.field label{font-size:.86rem;font-weight:700}.field input,.field select,.field textarea{border:1px solid #cbd6da;border-radius:4px;padding:14px;background:#fff;color:var(--ink);min-height:48px}.field input:focus,.field select:focus{outline:2px solid #c7a85c66;border-color:var(--gold)}.error{color:#a32b2b;font-size:.87rem}.progress-line{height:4px;background:#dfe6e8;margin:25px 0 35px}.progress-line b{display:block;height:100%;background:var(--gold);transition:width .3s}.question-num{font-size:.78rem;letter-spacing:.13em;text-transform:uppercase;color:var(--muted);font-weight:700}.question{font:600 clamp(1.65rem,5vw,2.75rem)/1.15 'Playfair Display',serif;margin:15px 0 34px;max-width:780px}.answers{display:grid;gap:10px;max-width:650px}.answer{background:#fff;border:1px solid var(--line);border-radius:4px;padding:17px;text-align:left;color:var(--ink);font-weight:600}.answer:hover,.answer.selected{border-color:var(--gold);background:#fffdf7;box-shadow:0 5px 15px #a7883d12}.back{margin-top:28px;background:none;border:0;color:var(--muted);padding:8px 0}.processing{text-align:center;min-height:80vh;display:grid;place-content:center}.spinner{width:46px;height:46px;border:3px solid #dce5e7;border-top-color:var(--gold);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 25px}@keyframes spin{to{transform:rotate(360deg)}}.result-head{margin:55px 0 38px}.result-head h1{font:700 clamp(2.5rem,7vw,4.6rem)/1 'Playfair Display',serif;margin:10px 0}.kicker{text-transform:uppercase;font-size:.75rem;letter-spacing:.15em;color:#96752c;font-weight:700}.spotlight{background:var(--navy);color:#fff;border-radius:7px;padding:clamp(28px,6vw,64px);display:grid;gap:10px}.spotlight .category{color:#dfc378;text-transform:uppercase;letter-spacing:.15em;font-weight:700}.score{font:700 clamp(3.8rem,12vw,7rem)/1 'Playfair Display',serif}.spotlight p{color:#d6e0e4;max-width:630px;margin:10px 0 0}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:30px 0}.metric{background:#fff;border:1px solid var(--line);border-radius:5px;padding:16px}.metric small{display:block;color:var(--muted);margin-bottom:9px}.metric strong{font-size:1.4rem}.metric em{display:block;font-size:.75rem;color:#96752c;font-style:normal;margin-top:5px}.insight{margin:50px 0}.insight h2{font:700 clamp(1.8rem,4vw,2.75rem)/1.1 'Playfair Display',serif;margin-bottom:18px}.insight ul{padding:0;list-style:none;display:grid;gap:13px}.insight li{padding:14px 0 14px 28px;border-bottom:1px solid var(--line);position:relative}.insight li:before{content:'—';position:absolute;left:0;color:var(--gold);font-weight:bold}.offer{background:#f0ece2;border-left:4px solid var(--gold);padding:28px;margin:40px 0}.offer h2{font:700 2rem/1.1 'Playfair Display',serif;margin:0 0 10px}.offer .price{font-size:1.5rem;font-weight:700;margin:16px 0}.radar{width:min(100%,380px);margin:5px auto 25px;display:block}.admin-top{display:flex;justify-content:space-between;gap:15px;align-items:center}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:24px 0}.stat{background:#fff;padding:18px;border:1px solid var(--line);border-radius:5px}.stat b{font-size:1.8rem;display:block}.admin-table{width:100%;border-collapse:collapse;font-size:.86rem}.admin-table th,.admin-table td{text-align:left;padding:12px;border-bottom:1px solid var(--line)}.controls{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0}.controls input,.controls select{padding:10px;border:1px solid var(--line);border-radius:4px}.admin-section{margin-top:50px}.hidden{display:none}@media(max-width:650px){.shell{padding:20px 16px 50px}.hero{min-height:76vh}.grid{grid-template-columns:repeat(2,1fr)}.stats{grid-template-columns:repeat(2,1fr)}.admin-table{font-size:.75rem}.admin-table th:nth-child(3),.admin-table td:nth-child(3),.admin-table th:nth-child(4),.admin-table td:nth-child(4){display:none}.card{margin-top:22px}.result-head{margin-top:35px}}
 .answer-guide{max-width:650px;color:var(--muted);font-size:.92rem;margin:-12px 0 25px}.radar{width:min(100%,440px);overflow:visible}.status-icon{width:52px;height:52px;margin:0 auto 25px}.success-check{display:grid;place-items:center;border-radius:50%;background:#20835b;color:#fff;box-shadow:0 8px 24px #20835b33;animation:check-in .35s ease-out}.success-check span{font-size:1.75rem;font-weight:700;line-height:1}.result-button{display:block;margin:24px auto 0}.consents{display:grid;gap:12px;margin:22px 0}.consents label{display:flex;align-items:flex-start;gap:10px;color:var(--muted);font-size:.88rem}.consents input{margin-top:4px;accent-color:var(--ink)}@keyframes check-in{from{opacity:0;transform:scale(.65)}to{opacity:1;transform:scale(1)}}
