/* CANDOR CLUB — The Connection Audit */
@font-face{font-family:"PP Editorial New";src:url("fonts/PPEditorialNew-Regular.ttf") format("truetype");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Area Normal";src:url("fonts/AreaNormal-Thin.otf") format("opentype");font-weight:200;font-style:normal;font-display:swap}
@font-face{font-family:"Area Normal";src:url("fonts/AreaNormal-Bold.otf") format("opentype");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"Area Normal";src:url("fonts/AreaNormal-BoldItalic.otf") format("opentype");font-weight:700;font-style:italic;font-display:swap}
@font-face{font-family:"Des Montilles";src:url("fonts/DesMontilles-Regular.otf") format("opentype");font-weight:400;font-style:normal;font-display:swap}
:root{--wine:#4F1F1F;--ember:#FF2703;--cream:#FCF6ED;--yellow:#FFF0B5;--aqua:#B0E5EB;--pink:#F6D8D0;--charcoal:#1E1E1E;
--serif:"PP Editorial New","Times New Roman",serif;--sans:"Area Normal",system-ui,-apple-system,sans-serif;--hand:"Des Montilles",cursive;--mono:ui-monospace,"SF Mono",Menlo,Consolas,monospace;
--wine-40:color-mix(in oklab,var(--wine) 40%,var(--cream));--wine-60:color-mix(in oklab,var(--wine) 60%,var(--cream));--line:color-mix(in oklab,var(--wine) 14%,transparent)}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
html{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
body{font-family:var(--sans);font-weight:200;background:var(--cream);color:var(--wine);line-height:1.55;font-size:17px;text-wrap:pretty}
img{max-width:100%;display:block}
a{color:var(--ember);text-decoration:none}
a:hover{color:var(--wine)}
button{font:inherit;cursor:pointer;border:0;background:none;color:inherit;padding:0}
::selection{background:var(--ember);color:var(--cream)}
:focus-visible{outline:3px solid var(--ember);outline-offset:3px;border-radius:4px}
.wrap{max-width:660px;margin:0 auto;padding:0 22px}
@media(max-width:600px){.wrap{padding:0 30px}.quiz-head{padding-left:30px;padding-right:30px}.q-statement{margin-bottom:28px}.snapshot.wrap{padding-left:34px;padding-right:34px}.zone-card,.gate,.rep-card{padding-left:22px;padding-right:22px}.final-cta{margin-left:-10px;margin-right:-10px}}
.eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--ember)}
.eyebrow.muted{color:var(--wine-60)}
.serif{font-family:var(--serif)}
.hand{font-family:var(--hand)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:16px 30px;border-radius:999px;background:var(--ember);color:var(--cream);font-family:var(--sans);font-weight:700;font-size:13px;letter-spacing:.16em;text-transform:uppercase;transition:transform .18s ease,background .18s ease;white-space:nowrap}
.btn:hover{background:var(--wine);transform:translateY(-1px)}
.btn.ghost{background:none;color:var(--wine);box-shadow:inset 0 0 0 1.5px color-mix(in oklab,var(--wine) 35%,transparent)}
.btn.ghost:hover{background:var(--wine);color:var(--cream)}
.btn.wide{width:100%}
/* topbar */
.topbar{display:flex;align-items:center;justify-content:center;padding:24px 22px 20px}
.topbar .logo{height:42px;width:auto}
.topbar .brand{font-family:var(--serif);font-size:20px;letter-spacing:.02em;color:var(--wine)}
/* ---------- LANDING ---------- */
.hero{min-height:calc(100dvh - 78px);display:flex;flex-direction:column;justify-content:center;padding:24px 0 64px;text-align:center}
.hero h1{font-family:var(--serif);font-weight:400;font-size:clamp(46px,10vw,84px);line-height:.98;letter-spacing:-.01em;margin:18px 0 0}
.hero h1 em{font-style:italic;color:var(--ember)}
.hero .sub{font-size:clamp(18px,3vw,22px);margin:22px auto 0;max-width:26ch}
.hero .meta{margin:26px 0 0;display:flex;justify-content:center;gap:10px;flex-wrap:wrap}
.meta-chip{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;padding:8px 14px;border-radius:999px;border:1px solid var(--line);color:var(--wine-60)}
.hero .cta{margin-top:34px}
.landing-notes{padding:0 0 40px;text-align:center}
.landing-notes .card{border:1px solid var(--line);border-radius:20px;padding:34px 26px;background:color-mix(in oklab,var(--yellow) 32%,var(--cream))}
.landing-notes h2{font-family:var(--serif);font-weight:400;font-size:26px;margin:0 0 12px}
.landing-notes p{margin:10px auto;max-width:44ch}
.landing-notes .pair{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin:18px 0 6px}
.pill{font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;padding:9px 16px;border-radius:999px;background:var(--cream);border:1px solid var(--line)}
.landing-notes .kicker{font-family:var(--serif);font-style:italic;font-size:19px;margin-top:22px;color:var(--wine)}
/* landing sections */
.land-collage{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:44px;max-width:760px}
.lc-tile{margin:0;border-radius:14px;overflow:hidden;background:var(--cream);border:1.5px solid var(--line);box-shadow:0 6px 18px color-mix(in oklab,var(--wine) 12%,transparent)}
.lc-tile img{display:block;width:100%;height:100%;object-fit:cover;aspect-ratio:4/3}
.lc-tile.t1{transform:rotate(-1.6deg)}
.lc-tile.t2{transform:rotate(1.2deg) translateY(8px)}
.lc-tile.t3{transform:rotate(-.8deg)}
.lc-tile.t4{transform:rotate(1.4deg)}
.lc-tile.t5{transform:rotate(-1.2deg) translateY(6px)}
.lc-tile.t6{transform:rotate(.9deg)}
.lc-note{position:absolute;right:6px;bottom:-26px;font-family:var(--hand);font-size:26px;color:var(--ember);transform:rotate(-2deg)}
@media(max-width:560px){.land-collage{grid-template-columns:repeat(2,1fr)}.lc-tile.t6{display:none}}
.section{padding:54px 22px 10px;text-align:left}
.section .head{text-align:center;margin-bottom:34px}
.section .head h2{font-family:var(--serif);font-weight:400;font-size:clamp(30px,6vw,42px);line-height:1.06;margin:12px 0 12px}
.section .head h2 em{font-style:italic;color:var(--ember)}
.section .head .lede{max-width:46ch;margin:0 auto;color:var(--wine-60)}
.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
@media(max-width:640px){.stats-grid{grid-template-columns:1fr}}
.stat-cell{border:1px solid var(--line);border-radius:18px;padding:24px 20px;background:var(--cream)}
.stat-cell .stat{font-family:var(--serif);font-size:27px;line-height:1.1;margin-bottom:10px}
.stat-cell .stat em{color:var(--ember);font-style:italic}
.stat-cell p{font-size:14.5px;margin:0 0 14px;color:var(--wine-60)}
.stat-cell .src{font-family:var(--mono);font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--wine-40)}
.levels-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:14px}
@media(max-width:640px){.levels-grid{grid-template-columns:1fr}}
.level-card{border-radius:18px;padding:24px 20px;text-align:center;background:color-mix(in oklab,var(--aqua) 32%,var(--cream))}
.level-card:nth-child(2){background:color-mix(in oklab,var(--yellow) 55%,var(--cream))}
.level-card:nth-child(3){background:color-mix(in oklab,var(--pink) 62%,var(--cream))}
.level-card h3{font-family:var(--serif);font-weight:400;font-size:25px;margin:8px 0 6px}
.level-card p{font-size:14.5px;margin:0;color:var(--wine-60)}
.cs-list{border-top:1px solid var(--line)}
.cs-row{display:grid;grid-template-columns:44px 150px 1fr;gap:14px;align-items:baseline;padding:18px 4px;border-bottom:1px solid var(--line)}
@media(max-width:560px){.cs-row{grid-template-columns:36px 1fr;grid-template-rows:auto auto}.cs-row p{grid-column:2}}
.cs-row .num{font-family:var(--mono);font-size:11px;letter-spacing:.14em;color:var(--ember)}
.cs-row h3{font-family:var(--serif);font-weight:400;font-size:23px;margin:0}
.cs-row p{font-size:14.5px;margin:0;color:var(--wine-60)}
.cs-row p em{font-style:italic;font-family:var(--serif);color:var(--wine)}
.founder-grid{display:grid;grid-template-columns:200px 1fr;gap:30px;align-items:start}
@media(max-width:640px){.founder-grid{grid-template-columns:1fr}.founder-photo{max-width:240px}}
.founder-photo{aspect-ratio:4/5;border-radius:18px;background:url("images/founder.jpg") center/cover no-repeat}
.founder-body p{margin:14px 0 0;font-size:16px}
.founder-body .note{font-family:var(--hand);font-size:30px;color:var(--ember);margin:18px 0 4px;transform:rotate(-1.5deg)}
.founder-sig{margin-top:20px}
.founder-sig .name{font-family:var(--serif);font-size:21px}
.founder-sig .role{font-family:var(--mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--wine-60);margin-top:4px}
.cta-band{margin-top:60px;padding:60px 26px 56px;background:var(--wine);color:var(--cream);text-align:center;border-radius:24px 24px 0 0}
.cta-band h2{font-family:var(--serif);font-weight:400;font-size:clamp(30px,6vw,44px);line-height:1.06;margin:12px auto 14px;max-width:18ch}
.cta-band p{max-width:40ch;margin:0 auto 26px;color:color-mix(in oklab,var(--cream) 80%,transparent)}
.cta-band .signoff{margin-top:38px;font-family:var(--serif);font-style:italic;font-size:18px;color:var(--cream)}
/* ---------- WHEEL ---------- */
.wheel-wrap{max-width:640px;margin:0 auto;text-align:center}
.wheel-wrap svg{width:100%;height:auto;display:block}
.wh-community{fill:color-mix(in oklab,var(--pink) 78%,var(--cream))}
.wh-village{fill:color-mix(in oklab,var(--aqua) 72%,var(--cream))}
.wh-inner{fill:color-mix(in oklab,var(--yellow) 78%,var(--cream))}
.wh-spokes line{stroke:var(--wine);stroke-width:1.5}
.wh-dots circle{fill:var(--wine)}
.wh-ringlab{font-family:var(--mono);font-size:13px;letter-spacing:.3em;text-transform:uppercase;fill:var(--wine);text-anchor:middle;paint-order:stroke;stroke:color-mix(in oklab,var(--cream) 85%,transparent);stroke-width:6}
.wh-badge{fill:#FFFDF8;stroke:color-mix(in oklab,var(--wine) 20%,transparent);stroke-width:1}
.wh-c{font-family:var(--serif);font-size:31px;fill:var(--wine);text-anchor:middle}
.wh-c.wh-start{text-anchor:start}
.wh-c.wh-end{text-anchor:end}
.wheel-legend{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:38px;padding-top:30px;border-top:1px solid var(--line);text-align:left}
@media(max-width:560px){.wheel-legend{grid-template-columns:1fr}}
.wl-item h4{font-family:var(--serif);font-weight:400;font-size:20px;margin:0 0 8px;display:flex;align-items:center;gap:8px}
.wl-size{font-family:var(--mono);font-size:11px;letter-spacing:.18em;color:var(--wine-60)}
.wl-dot{width:11px;height:11px;border-radius:50%;flex-shrink:0;border:1px solid color-mix(in oklab,var(--wine) 25%,transparent)}
.wl-dot.wl-inner{background:color-mix(in oklab,var(--yellow) 78%,var(--cream))}
.wl-dot.wl-village{background:color-mix(in oklab,var(--aqua) 72%,var(--cream))}
.wl-dot.wl-community{background:color-mix(in oklab,var(--pink) 78%,var(--cream))}
.wl-item p{font-size:14.5px;margin:0;color:var(--wine-60)}
/* ---------- QUIZ ---------- */
.quiz{min-height:100dvh;display:flex;flex-direction:column}
.quiz .topbar{padding:20px 22px 4px}
.quiz .topbar .logo{height:34px}
.quiz-head{padding:10px 22px 0}
.quiz-head-row{display:flex;align-items:center;justify-content:space-between;max-width:660px;margin:0 auto}
.q-count{font-family:var(--mono);font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--wine-60)}
.back-link{font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--wine-60);display:inline-flex;align-items:center;gap:6px;padding:6px 0}
.back-link:hover{color:var(--wine)}
.back-link[disabled]{opacity:0;pointer-events:none}
.progress{height:3px;background:var(--line);border-radius:99px;margin-top:14px;max-width:660px;margin-left:auto;margin-right:auto}
.progress>div{height:100%;background:var(--ember);border-radius:99px;transition:width .35s ease}
.q-body{flex:1;display:flex;flex-direction:column;justify-content:center;padding-block:34px 44px}
.q-statement{font-family:var(--serif);font-weight:400;font-size:clamp(24px,4.6vw,33px);line-height:1.28;margin:0 0 34px;min-height:3.6em}
.q-options{display:flex;flex-direction:column;gap:10px}
.q-opt{display:flex;align-items:center;gap:14px;width:100%;text-align:left;padding:16px 20px;border-radius:14px;border:1.5px solid var(--line);background:var(--cream);font-size:17px;font-weight:200;transition:border-color .15s ease,background .15s ease,transform .12s ease;min-height:56px}
.q-opt:hover{border-color:var(--wine-40);background:color-mix(in oklab,var(--yellow) 26%,var(--cream))}
.q-opt .dot{width:14px;height:14px;border-radius:50%;border:1.5px solid var(--wine-40);flex-shrink:0;transition:all .15s ease}
.q-opt[aria-pressed="true"]{border-color:var(--ember);background:color-mix(in oklab,var(--yellow) 45%,var(--cream));font-weight:700}
.q-opt[aria-pressed="true"] .dot{border-color:var(--ember);background:var(--ember)}
.q-fade{animation:qfade .3s ease}
@keyframes qfade{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
/* ---------- GATE / RESULT ---------- */
.snapshot{padding-top:56px;padding-bottom:40px;text-align:center}
.snapshot h1{font-family:var(--serif);font-weight:400;font-size:clamp(34px,7vw,54px);line-height:1.04;margin:14px 0 0}
.zone-card{margin:34px auto 0;border-radius:24px;background:var(--wine);color:var(--cream);padding:46px 26px;position:relative;overflow:hidden}
.zone-card .eyebrow{color:color-mix(in oklab,var(--cream) 62%,transparent)}
.zone-card .zone{font-family:var(--serif);font-size:clamp(34px,7.4vw,52px);line-height:1.05;margin:14px 0 6px}
.zone-card .zone em{font-style:italic;color:#FF6A4D}
.zone-card .times{color:#FF6A4D}
.zone-card .zone-sub{font-size:15px;color:color-mix(in oklab,var(--cream) 78%,transparent);max-width:38ch;margin:10px auto 0}
.duo{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:12px auto 0}
.duo .cell{border:1px solid var(--line);border-radius:18px;padding:22px 16px;text-align:center;background:var(--cream)}
.duo .cell h3{font-family:var(--serif);font-weight:400;font-size:26px;margin:8px 0 4px}
.duo .cell p{font-size:13.5px;margin:0;color:var(--wine-60)}
@media(max-width:480px){.duo{grid-template-columns:1fr}}
/* gate */
.gate{margin:30px auto 0;border-radius:24px;border:1.5px solid var(--wine);padding:36px 26px;text-align:center;background:color-mix(in oklab,var(--yellow) 38%,var(--cream))}
.gate h2{font-family:var(--serif);font-weight:400;font-size:clamp(26px,5vw,34px);margin:10px 0 8px}
.gate p{max-width:40ch;margin:0 auto 20px}
.gate form{display:flex;flex-direction:column;gap:12px;max-width:380px;margin:0 auto}
.gate input{font:inherit;font-weight:200;padding:15px 18px;border-radius:12px;border:1.5px solid var(--wine-40);background:var(--cream);color:var(--wine);width:100%}
.gate input::placeholder{color:var(--wine-40)}
.gate input:focus{outline:2px solid var(--ember);outline-offset:1px;border-color:var(--ember)}
.gate .err{color:var(--ember);font-size:14px;font-weight:700;margin:0}
.gate .consent{font-size:12.5px;color:var(--wine-60);max-width:36ch;margin:14px auto 0;line-height:1.5}
/* result body */
.result-section{padding-top:34px}
.result-section .interp{font-family:var(--serif);font-size:clamp(20px,3.6vw,25px);line-height:1.45;margin:16px 0 0}
.rep-card{margin-top:38px;border-radius:24px;background:var(--cream);border:1.5px solid var(--wine);padding:36px 28px}
.rep-card .rep-name{font-family:var(--serif);font-size:clamp(28px,5.6vw,40px);line-height:1.05;margin:12px 0 14px}
.rep-card .how{font-size:18px;line-height:1.6;margin:0;white-space:pre-line}
.why-box{margin-top:22px;padding:20px 22px;border-radius:16px;background:color-mix(in oklab,var(--aqua) 38%,var(--cream))}
.why-box .eyebrow{color:var(--wine-60)}
.why-box p{margin:8px 0 0;font-size:15.5px}
.today-line{font-family:var(--hand);font-size:30px;color:var(--ember);text-align:center;margin:26px 0 0;transform:rotate(-2deg)}
.rep-bridge{text-align:center;max-width:44ch;margin:18px auto 0;font-size:15.5px;color:color-mix(in oklab,var(--wine) 78%,transparent)}
.rep-bridge strong{color:var(--wine)}
.rep-bridge .bridge-lead{font-size:17px}
.zone-card .tie-note{margin-top:6px;font-style:italic}
/* share */
.share-section{padding-top:56px;text-align:center}
.share-card{margin:22px auto 0;max-width:420px;border-radius:20px;background:var(--wine);color:var(--cream);padding:38px 26px;text-align:center}
.share-card .sc-brand{font-family:var(--serif);font-size:15px;letter-spacing:.08em;text-transform:uppercase}
.share-card .sc-zone{font-family:var(--serif);font-size:clamp(28px,6vw,38px);margin:16px 0 10px;line-height:1.1}
.share-card .sc-zone em{color:#FF6A4D;font-style:italic}
.share-card .sc-line{font-size:14.5px;color:color-mix(in oklab,var(--cream) 80%,transparent);max-width:32ch;margin:0 auto}
.share-card .sc-foot{margin-top:22px;font-family:var(--mono);font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:color-mix(in oklab,var(--cream) 55%,transparent)}
.share-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:20px}
.share-actions .btn{padding:13px 22px;font-size:12px}
.copied-note{font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--ember);margin-top:12px;min-height:1em}
/* final cta */
.final-cta{margin:56px 0 0;padding:52px 26px 56px;border-radius:24px 24px 0 0;background:var(--wine);color:var(--cream);text-align:center}
.final-cta h2{font-family:var(--serif);font-weight:400;font-size:clamp(30px,6vw,44px);margin:12px 0 14px}
.final-cta p{max-width:40ch;margin:0 auto 26px;color:color-mix(in oklab,var(--cream) 82%,transparent)}
.final-cta .cta-grid{display:grid;grid-template-columns:1fr 240px;gap:36px;align-items:center;max-width:720px;margin:0 auto 30px;text-align:left}
@media(max-width:640px){.final-cta .cta-grid{grid-template-columns:1fr;text-align:center}.final-cta .cta-mock{order:-1;max-width:200px;margin:0 auto}}
.final-cta .cta-mock img{width:100%;border-radius:6px;box-shadow:0 24px 48px rgba(0,0,0,.4);transform:rotate(2deg)}
.final-cta .cta-copy{margin:0}
.final-cta .cta-copy .rx{font-family:var(--serif);font-style:italic;font-size:19px;line-height:1.5;color:var(--cream);border-left:3px solid var(--ember);padding-left:16px}
@media(max-width:640px){.final-cta .cta-copy .rx{border-left:0;padding-left:0}}
.final-cta .cta-copy p{margin:0 0 14px;max-width:none}
.final-cta .cta-copy strong{font-weight:700;color:var(--cream)}
.final-cta .cta-motto{font-family:var(--serif);font-style:italic;font-size:17px;color:color-mix(in oklab,var(--cream) 85%,transparent)}
.final-cta .cta-feats{display:grid;gap:12px;margin-top:20px}
.final-cta .feat p{margin:4px 0 0;font-size:14.5px}
.final-cta .btn{background:var(--ember)}
.final-cta .btn:hover{background:var(--cream);color:var(--wine)}
.final-cta .cta-note{margin:14px auto 0;font-size:13.5px;color:color-mix(in oklab,var(--cream) 65%,transparent)}
.result-foot{text-align:center;padding:44px 0 56px}
.result-foot .retake{display:block;margin:0 auto;font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:color-mix(in oklab,var(--wine) 60%,transparent)}
.result-foot .retake:hover{color:var(--wine)}
.result-foot .signoff{margin-top:26px;font-family:var(--serif);font-style:italic;font-size:19px;color:var(--wine)}
.final-cta .retake{display:block;margin:22px auto 0;font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:color-mix(in oklab,var(--cream) 65%,transparent)}
.final-cta .retake:hover{color:var(--cream)}
.final-cta .signoff{margin-top:40px;font-family:var(--serif);font-style:italic;font-size:19px;color:var(--cream)}
@media (prefers-reduced-motion: reduce){.fade-in,.q-fade{animation:none}.progress>div,.btn,.q-opt{transition:none}}
.fade-in{animation:qfade .5s ease}
