:root{
  --navy:#1a2f4f;
  --navy-2:#415881;
  --ink:#24384a;
  --muted:#617281;
  --line:#d9e0e5;
  --soft:#f4f3ef;
  --paper:#fcfaf7;
  --white:#ffffff;
  --teal:#4caab6;
  --teal-soft:#d8eef0;
  --sage:#8db7a8;
  --sage-deep:#648f80;
  --rose:#ec8c9c;
  --rose-deep:#df748d;
  --coral:#e34b49;
  --gold:#f3a530;
  --sand:#f7eedf;
  --shadow:0 22px 70px rgba(26,47,79,.10);
  --shadow-soft:0 10px 30px rgba(26,47,79,.08);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:linear-gradient(180deg,#fffdfa 0%,#fbf7f1 100%);line-height:1.5}
button,input,textarea,select{font:inherit}
button,a{transition:.18s ease}
button{cursor:pointer}
a{color:inherit;text-decoration:none}
[hidden]{display:none!important}

.site-header{height:88px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(24px,5vw,76px);border-bottom:1px solid rgba(26,47,79,.08);background:rgba(252,250,247,.9);backdrop-filter:blur(14px);position:sticky;top:0;z-index:20}
.brand{display:flex;align-items:center;gap:14px}
.brand-mark{width:56px;height:56px;border-radius:18px;display:grid;place-items:center;background:linear-gradient(135deg,#fff 0%,#f5f6f8 100%);box-shadow:0 8px 24px rgba(26,47,79,.08);overflow:hidden;border:1px solid rgba(26,47,79,.06)}
.brand-mark img{width:100%;height:100%;object-fit:cover;display:block}
.brand-copy{display:flex;flex-direction:column;line-height:1.1}
.brand-copy strong{font-size:28px;letter-spacing:-.03em;color:var(--navy)}
.brand-copy small{font-size:11px;color:var(--muted);margin-top:7px;letter-spacing:.02em}
.top-nav{display:flex;align-items:center;gap:28px;font-size:13px;color:#53636f}.top-nav a:hover{color:var(--navy)}
.ghost-btn{border:1px solid rgba(26,47,79,.14);border-radius:999px;background:rgba(255,255,255,.7);padding:11px 18px;color:var(--navy);font-weight:700;box-shadow:0 4px 14px rgba(26,47,79,.04)}
.ghost-btn:hover{background:#fff;transform:translateY(-1px)}

.hero{position:relative;overflow:hidden;padding:92px clamp(24px,7vw,110px) 78px;background:linear-gradient(180deg,#fcfaf7 0%,#f7f2eb 100%)}
.hero::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 10%, rgba(236,140,156,.13), transparent 25%),radial-gradient(circle at 88% 22%, rgba(76,170,182,.18), transparent 28%),radial-gradient(circle at 50% 90%, rgba(243,165,48,.1), transparent 24%);pointer-events:none}
.hero-inner{position:relative;max-width:1120px;margin:auto;z-index:1}
.hero-orb{position:absolute;filter:blur(2px);opacity:.92;pointer-events:none}
.hero-orb-a{right:12%;top:42px;width:280px;height:280px;background:linear-gradient(145deg, rgba(236,140,156,.55), rgba(76,170,182,.18));border-radius:58% 42% 53% 47% / 46% 49% 51% 54%}
.hero-orb-b{right:4%;bottom:36px;width:220px;height:220px;background:linear-gradient(145deg, rgba(26,47,79,.12), rgba(243,165,48,.2));border-radius:43% 57% 38% 62% / 55% 36% 64% 45%}
.eyebrow{font-size:12px;letter-spacing:.08em;text-transform:uppercase;font-weight:800;color:var(--sage-deep);display:flex;align-items:center;gap:10px}.dot{width:9px;height:9px;border-radius:50%;background:var(--teal);box-shadow:0 0 0 6px rgba(76,170,182,.14)}
h1{font-family:Georgia,"Times New Roman",serif;font-weight:400;line-height:.98;letter-spacing:-.05em;font-size:clamp(50px,7vw,92px);color:var(--navy);max-width:980px;margin:28px 0 26px}h1 span{color:var(--sage-deep)}
.hero-lead{max-width:760px;font-size:21px;color:#5e6d79;margin:0 0 34px;line-height:1.7}
.hero-actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.primary-btn{border:0;border-radius:999px;padding:15px 24px;background:var(--navy);color:#fff;font-weight:750;box-shadow:0 12px 28px rgba(26,47,79,.18)}
.primary-btn:hover{background:#223b5f;transform:translateY(-1px)}
.primary-btn.large{padding:17px 30px;font-size:15px}
.text-btn,.back-link,.close-link{border:0;background:transparent;color:var(--navy);padding:8px 0;font-weight:700}.text-btn:hover,.back-link:hover,.close-link:hover{text-decoration:underline}
.trust-strip{margin-top:78px;padding:18px;border:1px solid rgba(26,47,79,.08);border-radius:28px;background:rgba(255,255,255,.64);backdrop-filter:blur(8px);display:grid;grid-template-columns:repeat(3,1fr);gap:14px;box-shadow:var(--shadow-soft)}
.trust-strip>div{padding:16px 16px 14px;border-radius:18px;background:linear-gradient(180deg,rgba(255,255,255,.72),rgba(251,249,244,.9));display:flex;flex-direction:column;gap:7px}.trust-strip strong{font-size:13px;color:var(--navy)}.trust-strip span{font-size:12px;color:var(--muted);max-width:260px}

.matcher-shell{min-height:calc(100vh - 88px);background:linear-gradient(180deg,#f9f5f0 0%,#f8f7f3 100%);padding-bottom:70px}
.matcher-top{height:90px;display:grid;grid-template-columns:120px minmax(260px,640px) 120px;align-items:center;justify-content:center;gap:34px;padding:0 32px;border-bottom:1px solid var(--line);background:rgba(255,255,255,.92);backdrop-filter:blur(10px);position:sticky;top:88px;z-index:10}
.close-link{text-align:right}
.progress-meta{display:flex;justify-content:space-between;font-size:11px;color:var(--muted);margin-bottom:8px}
.progress-track{height:6px;background:#ece8e2;border-radius:99px;overflow:hidden}
.progress-bar{height:100%;background:linear-gradient(90deg,var(--teal),var(--sage-deep),var(--rose));border-radius:99px;transition:width .3s ease}
.question-wrap{max-width:900px;margin:0 auto;padding:72px 24px}
.question-kicker{text-transform:uppercase;letter-spacing:.08em;font-size:11px;font-weight:800;color:var(--sage-deep);margin-bottom:15px}
.question-title{font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:clamp(34px,5vw,54px);line-height:1.08;color:var(--navy);letter-spacing:-.03em;margin:0 0 14px}
.question-sub{font-size:16px;color:var(--muted);max-width:700px;margin-bottom:34px}
.choice-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.choice-card{position:relative;width:100%;border:1px solid rgba(26,47,79,.10);border-radius:22px;background:linear-gradient(180deg,#fff 0%,#fffdfa 100%);padding:22px;text-align:left;min-height:110px;color:var(--ink);display:flex;justify-content:space-between;gap:16px;box-shadow:0 8px 18px rgba(26,47,79,.03)}
.choice-card::before{content:"";position:absolute;left:0;top:0;right:0;height:6px;border-radius:22px 22px 0 0;background:linear-gradient(90deg,var(--teal),var(--rose),var(--gold));opacity:.55}
.choice-card:hover{border-color:rgba(76,170,182,.5);box-shadow:0 12px 26px rgba(26,47,79,.08);transform:translateY(-1px)}
.choice-card.selected{background:linear-gradient(145deg,var(--navy),#233b61);border-color:var(--navy);color:white;box-shadow:0 16px 28px rgba(26,47,79,.18)}
.choice-card.selected::before{opacity:1}
.choice-card.selected .choice-desc,.choice-card.selected .choice-tag{color:#dfe8f0}
.choice-title{display:block;font-weight:800;font-size:15px;margin-bottom:6px}
.choice-desc{display:block;font-size:12px;color:var(--muted);line-height:1.45}
.choice-check{width:24px;height:24px;border:1px solid #c9d4dd;border-radius:50%;display:grid;place-items:center;flex:0 0 auto;font-size:12px;background:#fff}
.choice-card.selected .choice-check{background:white;color:var(--navy);border-color:white}.choice-tag{font-size:10px;color:var(--sage-deep);display:block;margin-top:10px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}
.continue-row{margin-top:32px;display:flex;align-items:center;justify-content:space-between;gap:20px}.continue-hint{font-size:12px;color:var(--muted)}.primary-btn:disabled{opacity:.35;cursor:not-allowed;transform:none}
.other-field{margin-top:16px}.text-input,.textarea-input,.select-input{width:100%;border:1px solid rgba(26,47,79,.10);background:white;border-radius:16px;padding:15px 16px;color:var(--ink);outline:none;box-shadow:0 4px 12px rgba(26,47,79,.02)}.textarea-input{min-height:105px;resize:vertical}.text-input:focus,.textarea-input:focus,.select-input:focus{border-color:var(--teal);box-shadow:0 0 0 3px rgba(76,170,182,.12)}
.pill-list{display:flex;gap:9px;flex-wrap:wrap}.pill{border:1px solid rgba(26,47,79,.10);background:white;border-radius:999px;padding:10px 15px;font-size:13px;color:#51616d}.pill.selected{background:var(--navy);color:white;border-color:var(--navy)}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field label{font-size:12px;font-weight:800;color:#4f606c;margin:0 0 7px;display:block}.field.full{grid-column:1/-1}.small-note{font-size:11px;color:var(--muted);margin-top:10px}

.results-head{margin-bottom:30px}.results-head h2{font-family:Georgia,"Times New Roman",serif;font-weight:400;color:var(--navy);font-size:48px;letter-spacing:-.03em;margin:0 0 11px}.results-head p{color:var(--muted);max-width:690px;margin:0}.prototype-flag{display:inline-flex;padding:7px 11px;background:#fff2d4;color:#775d16;border:1px solid #f2dda2;border-radius:999px;font-size:10px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;margin-bottom:15px}
.results-list{display:flex;flex-direction:column;gap:18px}
.result-card{position:relative;background:white;border:1px solid rgba(26,47,79,.08);border-radius:24px;padding:25px;display:grid;grid-template-columns:74px 1fr auto;gap:20px;align-items:start;box-shadow:0 8px 24px rgba(26,47,79,.05);overflow:hidden}
.result-card::before{content:"";position:absolute;left:0;top:0;right:0;height:6px;background:linear-gradient(90deg,var(--teal),var(--rose),var(--gold))}
.avatar{width:68px;height:68px;border-radius:22px;display:grid;place-items:center;background:linear-gradient(135deg,var(--teal-soft),#ffffff);color:var(--navy);font-family:Georgia,serif;font-size:22px;border:1px solid rgba(76,170,182,.12)}.avatar.therapy{background:linear-gradient(135deg,#fdebf0,#ffffff);border-color:rgba(236,140,156,.18)}
.result-name{font-size:20px;font-weight:800;color:var(--navy);letter-spacing:-.02em}.result-role{font-size:12px;color:var(--muted);margin:2px 0 10px}.match-label{display:inline-flex;align-items:center;gap:7px;background:var(--teal-soft);color:#396f77;border-radius:999px;padding:6px 10px;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.result-reasons{display:flex;gap:8px;flex-wrap:wrap;margin:13px 0}.reason-chip{font-size:11px;border-radius:999px;padding:7px 10px;border:1px solid rgba(26,47,79,.1);color:#546570;background:#fffdfa}.evidence-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:13px;padding-top:13px;border-top:1px solid #edf1f1}.rating{font-weight:800;color:var(--navy);font-size:13px}.stars{color:var(--gold);letter-spacing:1px}.evidence-copy{font-size:11px;color:var(--muted)}.evidence-copy strong{color:#456d63}.result-action{align-self:center;white-space:nowrap}.secondary-btn{border:1px solid rgba(26,47,79,.14);background:white;color:var(--navy);border-radius:999px;padding:12px 16px;font-size:12px;font-weight:800;box-shadow:0 5px 14px rgba(26,47,79,.05)}.secondary-btn:hover{background:var(--navy);color:white;border-color:var(--navy)}.ref-badge{font-size:10px;color:#53666f;margin-top:8px;text-align:center}
.results-explain{background:linear-gradient(180deg,#eef7f4,#f8fbfa);border:1px solid rgba(76,170,182,.14);border-radius:20px;padding:20px 22px;margin-top:24px;font-size:12px;color:#4f635c}.results-explain strong{display:block;color:var(--navy);margin-bottom:4px}

.how-section{padding:92px clamp(24px,7vw,110px);max-width:1300px;margin:auto}.section-kicker{text-transform:uppercase;letter-spacing:.08em;font-size:11px;font-weight:800;color:var(--sage-deep)}.how-section h2{font-family:Georgia,"Times New Roman",serif;font-size:46px;font-weight:400;letter-spacing:-.03em;color:var(--navy);max-width:650px;margin:14px 0 45px}.steps-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.steps-grid article{position:relative;border:1px solid rgba(26,47,79,.08);border-radius:24px;padding:22px;background:linear-gradient(180deg,#fff 0%,#fffdfa 100%);box-shadow:0 8px 24px rgba(26,47,79,.04)}.steps-grid article::before{content:"";position:absolute;left:0;top:0;right:0;height:6px;border-radius:24px 24px 0 0;background:linear-gradient(90deg,var(--teal),var(--rose),var(--gold))}.steps-grid span{font-size:10px;font-weight:800;color:var(--sage-deep)}.steps-grid h3{font-size:15px;color:var(--navy);margin:12px 0 7px}.steps-grid p{font-size:12px;color:var(--muted);line-height:1.65;margin:0}

.profile-overlay{position:fixed;inset:0;background:rgba(12,27,41,.62);z-index:50;padding:26px;overflow:auto}.profile-modal{position:relative;background:#fbfcfa;max-width:920px;margin:30px auto;border-radius:26px;box-shadow:var(--shadow);overflow:hidden}.modal-close{position:absolute;right:18px;top:14px;width:38px;height:38px;border:0;border-radius:50%;background:white;font-size:24px;color:var(--navy);z-index:2;box-shadow:0 6px 16px rgba(26,47,79,.08)}.profile-hero{padding:38px 42px;background:linear-gradient(135deg,#ecf8fa,#f7ecef 56%,#fff4dd);display:grid;grid-template-columns:85px 1fr;gap:22px}.profile-hero.therapy{background:linear-gradient(135deg,#fdf0f4,#f9eff2 50%,#eef8f7)}.profile-avatar{width:82px;height:82px;border-radius:24px;background:white;display:grid;place-items:center;font-size:26px;font-family:Georgia,serif;color:var(--navy);box-shadow:0 10px 24px rgba(26,47,79,.08)}.profile-hero h2{margin:2px 0 3px;font-size:30px;color:var(--navy);letter-spacing:-.025em}.profile-body{padding:34px 42px 44px}.profile-grid{display:grid;grid-template-columns:1.4fr .85fr;gap:34px}.profile-section{border-top:1px solid var(--line);padding-top:18px;margin-top:22px}.profile-section h3{font-size:13px;color:var(--navy);margin:0 0 10px}.profile-section p{font-size:13px;color:#596b77;line-height:1.65}.evidence-box{border:1px solid rgba(26,47,79,.08);background:white;border-radius:18px;padding:18px;box-shadow:0 8px 20px rgba(26,47,79,.04)}.evidence-score{font-size:30px;font-family:Georgia,serif;color:var(--navy)}.evidence-detail{font-size:11px;color:var(--muted)}.evidence-tag{display:inline-block;background:var(--teal-soft);color:#43747b;border-radius:999px;padding:6px 9px;font-size:10px;font-weight:700;margin:8px 4px 0 0}.quote{border-left:3px solid var(--teal);padding-left:14px;margin:16px 0;font-size:12px;color:#596b77;font-style:italic}.contact-box{background:linear-gradient(135deg,var(--navy),#263f66);color:white;border-radius:18px;padding:20px;box-shadow:0 14px 26px rgba(26,47,79,.16)}.contact-box h3{color:white}.contact-box p{color:#d7e1e5;font-size:12px}.contact-btn{width:100%;border:0;background:white;color:var(--navy);border-radius:999px;padding:12px;font-weight:800}

footer{background:linear-gradient(180deg,#1b3152,#162844);color:#d6e0e4;padding:35px clamp(24px,5vw,76px);display:flex;align-items:center;justify-content:space-between;gap:20px}.footer-brand .brand-mark{background:white}.footer-brand .brand-copy strong{color:white;font-size:22px}.footer-brand .brand-copy small{color:#aebec6}footer p{max-width:620px;font-size:11px;color:#b7c7cf;text-align:right}

@media(max-width:800px){.top-nav a{display:none}.brand-copy small{display:none}.brand-copy strong{font-size:23px}.hero{padding-top:62px}.hero-orb{display:none}.trust-strip{grid-template-columns:1fr;gap:14px}.matcher-top{grid-template-columns:70px 1fr 50px;gap:16px;padding:0 18px}.choice-grid,.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.result-card{grid-template-columns:55px 1fr}.avatar{width:52px;height:52px;border-radius:18px}.result-action{grid-column:2}.steps-grid{grid-template-columns:1fr 1fr;gap:28px 16px}.profile-grid{grid-template-columns:1fr}.profile-hero,.profile-body{padding-left:24px;padding-right:24px}footer{flex-direction:column;align-items:flex-start}footer p{text-align:left}}
@media(max-width:520px){.brand-mark{width:48px;height:48px;border-radius:15px}.brand-copy strong{font-size:18px}h1{font-size:48px}.hero-lead{font-size:16px}.question-wrap{padding-top:45px}.question-title{font-size:37px}.steps-grid{grid-template-columns:1fr}.results-head h2{font-size:38px}.result-card{padding:18px;gap:14px}.reason-chip{font-size:10px}.profile-hero{grid-template-columns:1fr}.profile-avatar{width:70px;height:70px;border-radius:20px}}
