:root{--bg:#fbf9ff;--paper:#fff;--ink:#262440;--muted:#67657c;--line:#e9e6f3;--purple:#765ae8;--purple-dark:#5d42d3;--lavender:#eeebff;--peach:#fff0e7;--pink:#ffe9f0;--mint:#e9f8ed;--green:#5ea85b;--shadow:0 20px 60px rgba(74,55,132,.09);--radius:26px;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;color:var(--ink);background:var(--bg);font-synthesis:none}
*[hidden]{display:none!important}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:radial-gradient(circle at 100% 2%,#fff1ed 0,transparent 25%),radial-gradient(circle at 0 23%,#f1edff 0,transparent 21%),var(--bg);min-width:320px}
button,input,textarea{font:inherit}
button{cursor:pointer}
button:disabled{cursor:not-allowed;opacity:.5}
a{color:inherit;text-decoration:none}
img{max-width:100%}
h1,h2,h3,p{margin-top:0}
h1,h2,h3{letter-spacing:-.045em}
p{line-height:1.65}
.shell{width:min(1160px,calc(100% - 44px));margin-inline:auto}
.prototype-note{min-height:32px;display:flex;align-items:center;justify-content:center;gap:8px;padding:6px 16px;background:#e9e5ff;color:#5241a9;font-size:12px;font-weight:700;text-align:center}
.note-dot{width:7px;height:7px;border-radius:50%;background:#8f78ed}
.site-header{position:sticky;top:0;z-index:20;background:rgba(251,249,255,.9);border-bottom:1px solid rgba(217,210,241,.55);backdrop-filter:blur(18px)}
.header-inner{height:74px;display:flex;align-items:center;justify-content:space-between;gap:22px}
.brand{display:inline-flex;align-items:center;gap:9px;background:none;border:0;color:var(--ink);font-size:24px;font-weight:850;letter-spacing:-.065em;white-space:nowrap}
.brand-mark{width:37px;height:37px;display:inline-grid;place-items:center;border-radius:12px;background:linear-gradient(145deg,#a48fff,#7457e9);color:#fff;font-size:29px;line-height:1;box-shadow:0 7px 16px rgba(118,90,232,.22)}
.brand-mark span{font-size:8px;position:relative;top:-9px;left:-2px}
.brand-soft{font-weight:500;color:#817c9b}
.desktop-nav{display:flex;gap:6px}
.desktop-nav button{border:0;background:transparent;color:#726d85;border-radius:13px;padding:10px 14px;font-weight:700}
.desktop-nav button:hover,.desktop-nav button.active{background:#eeeaff;color:var(--purple-dark)}
.header-cta{border:0;border-radius:14px;background:var(--ink);color:white;padding:12px 18px;font-size:14px;font-weight:800;white-space:nowrap}
.header-cta span{margin-left:5px}
.page{display:none;animation:page-in .25s ease}
.page.active{display:block}
@keyframes page-in{from{opacity:.5;transform:translateY(8px)}to{opacity:1;transform:none}}
.eyebrow,.section-kicker{color:var(--purple-dark);font-size:13px;font-weight:800;letter-spacing:.045em;text-transform:uppercase}
.eyebrow{display:inline-flex;align-items:center;gap:8px;border-radius:999px;background:#eeeaff;padding:10px 15px}
.spark{color:#ba93f7}
.hero h1 em,.page-heading h1 em,.result-hero h1 em,.aunt-copy h1 em{font-style:normal;color:var(--purple);position:relative}
.button{min-height:52px;display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:13px 22px;border-radius:16px;border:1px solid transparent;font-weight:800;font-size:15px;text-align:center;transition:transform .18s,box-shadow .18s,background .18s}
.button:hover:not(:disabled){transform:translateY(-2px)}
.button-primary{background:var(--purple);color:#fff;box-shadow:0 11px 24px rgba(118,90,232,.23)}
.button-primary:hover:not(:disabled){background:var(--purple-dark);box-shadow:0 14px 27px rgba(118,90,232,.3)}
.button-white{background:#fff;border-color:var(--line);color:var(--ink)}
.button-white:hover:not(:disabled){border-color:#c7baf8}
.microcopy{color:#8d88a2;font-size:13px;margin:13px 0 0}
.floating-note{position:absolute;z-index:2;background:#fff;border:1px solid #f0e9fa;border-radius:17px;padding:12px 15px;box-shadow:var(--shadow);font-size:14px;font-weight:800;white-space:nowrap}
.floating-note span{color:#f1729d}
.note-one{left:-4%;top:23%;transform:rotate(-6deg)}
.note-two{right:-5%;bottom:17%;transform:rotate(5deg)}
.text-link{border:0;background:transparent;color:var(--purple-dark);font-weight:800;padding:8px 0;text-align:left}
.text-link:hover{text-decoration:underline}
.page-heading{text-align:center;max-width:740px;margin:58px auto 34px}
.page-heading.compact{margin-bottom:35px}
.page-heading p{color:var(--muted);font-size:17px;max-width:650px;margin-inline:auto}
.quiz-layout,.audit-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:25px;align-items:start;max-width:990px;margin:0 auto 90px}
.quiz-card,.audit-card{padding:32px;background:white;border:1px solid var(--line);border-radius:30px;box-shadow:var(--shadow)}
.progress-track{height:8px;border-radius:999px;background:#f0ecfa;margin:12px 0 30px;overflow:hidden}
.progress-track span{display:block;width:10%;height:100%;border-radius:inherit;background:linear-gradient(90deg,#c8a9f9,#765ae8);transition:width .2s}
.form-message{min-height:22px;margin:10px 0 0;color:#ad4468;font-size:13px;font-weight:700}
.quiz-aside,.audit-info{background:linear-gradient(155deg,#efeaff,#fff0eb);padding:28px;border:1px solid #eee5f9;border-radius:30px}
.quiz-aside h2,.audit-info h2{font-size:25px;margin:16px 0 7px}
.quiz-aside p,.audit-info p{font-size:14px;color:var(--muted)}
.aside-heart{font-size:46px;color:var(--purple)}
.aside-mini{background:#fff;border-radius:14px;padding:13px;font-size:13px;font-weight:800;color:var(--purple-dark)}
.aside-mini span{margin-right:6px}
.page#page-result>.button-row{margin-bottom:78px}
.profile-toolbar,.blog-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:20px}
.profile-grid,.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px;margin-bottom:90px}
.profile-card,.blog-card{overflow:hidden;border-radius:25px;background:#fff;border:1px solid var(--line);box-shadow:0 12px 28px rgba(70,56,116,.06)}
.avatar-illustration{width:145px;height:145px;display:grid;place-items:center;border-radius:50%;background:rgba(255,255,255,.72);box-shadow:0 15px 30px rgba(58,45,100,.1);font-size:76px;line-height:1}
@keyframes spin{to{transform:rotate(360deg)}}
.page#page-audit-result>.button{margin-bottom:85px}
.site-footer{background:#fff;border-top:1px solid var(--line);padding:32px 0;margin-top:10px}
.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:20px}
.footer-inner>span{font-size:21px;font-weight:850;letter-spacing:-.06em}
.footer-star{color:var(--purple)}
.footer-inner p{font-size:13px;color:var(--muted);margin:0}
.mobile-nav,.more-sheet{display:none}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #b8a6ff;outline-offset:3px}
@media(max-width:940px){.desktop-nav{display:none}
.note-one{left:-12%}
.note-two{right:-8%}
.quiz-layout,.audit-layout{grid-template-columns:1fr 250px}}
@media(max-width:700px){.shell{width:min(100% - 30px,510px)}
.prototype-note{font-size:11px}
.header-inner{height:61px}
.brand{font-size:21px}
.brand-mark{width:33px;height:33px;font-size:26px}
.header-cta{padding:10px 12px;font-size:12px}
.eyebrow{font-size:10px}
.microcopy{font-size:12px}
.floating-note{font-size:11px;padding:9px 11px}
.note-one{left:2%;top:20%}
.note-two{right:2%;bottom:13%}
.page-heading{margin:35px auto 24px}
.page-heading p{font-size:15px}
.quiz-layout,.audit-layout{grid-template-columns:1fr;gap:13px;margin-bottom:65px}
.quiz-card,.audit-card{padding:22px 18px;border-radius:25px}
.quiz-aside,.audit-info{padding:20px}
.quiz-aside h2,.audit-info h2{font-size:21px}
.profile-toolbar,.blog-toolbar{align-items:flex-start;flex-direction:column}
.profile-grid,.blog-grid{grid-template-columns:1fr;gap:13px;margin-bottom:65px}
.site-footer{padding:25px 0 105px}
.footer-inner{align-items:flex-start;flex-direction:column;gap:9px}
.mobile-nav{position:fixed;bottom:0;left:0;right:0;z-index:30;display:flex;justify-content:space-around;gap:2px;background:rgba(255,255,255,.97);border-top:1px solid #e8e2f4;box-shadow:0 -8px 28px rgba(50,32,105,.06);padding:7px max(8px,env(safe-area-inset-left)) calc(7px + env(safe-area-inset-bottom))}
.mobile-nav button{display:flex;flex-direction:column;align-items:center;gap:0;min-width:56px;border:0;background:transparent;color:#9290a3;font-size:10px;font-weight:750;padding:2px 4px}
.mobile-nav button span{font-size:25px;line-height:1.2}
.mobile-nav button.active{color:var(--purple-dark)}
.more-sheet:not([hidden]){display:block;position:fixed;inset:0;z-index:40;background:rgba(32,27,55,.3)}
.sheet-card{position:absolute;bottom:0;left:0;right:0;background:white;border-radius:26px 26px 0 0;padding:20px 20px calc(24px + env(safe-area-inset-bottom));box-shadow:0 -15px 40px rgba(44,28,91,.18)}
.sheet-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;font-size:18px}
.sheet-top button{border:0;background:#f2efff;border-radius:50%;width:32px;height:32px;font-size:25px;color:var(--purple-dark)}
.sheet-card>.nav-trigger{display:flex;width:100%;justify-content:space-between;border:0;background:#faf8ff;padding:16px;margin-top:8px;border-radius:14px;font-weight:800}}
@media(max-width:370px){.floating-note{font-size:9px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
.pair-options .option{min-height:56px}
html{scroll-behavior:auto}
.avatar-illustration{object-fit:cover;border:6px solid rgba(255,255,255,.82)}
