/* Financial Clarity Check: homepage invitation and local, one-question assessment. */
.clarity-promo{position:relative;overflow:hidden;max-width:none;padding:54px max(5.6%,calc((100vw - 1140px)/2 + 44px));display:grid;grid-template-columns:minmax(0,1.25fr) minmax(270px,.75fr);gap:54px;align-items:center;background:#eee5d7;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.clarity-promo:after{content:"";position:absolute;width:360px;height:360px;right:-120px;top:-180px;border:1px solid #a38e6b66;border-radius:50%;box-shadow:0 0 0 42px #a38e6b0c,0 0 0 84px #123f3608;pointer-events:none}
.clarity-promo-copy{position:relative;z-index:1;max-width:710px}
.clarity-promo h2{margin-top:13px;font-size:var(--text-6xl);line-height:1.08;letter-spacing:-.9px}
.clarity-promo-description{max-width:650px;margin-top:18px;color:var(--body);font-size:var(--text-lg);line-height:1.65}
.clarity-promo-actions{display:flex;align-items:center;flex-wrap:wrap;gap:18px 24px;margin-top:25px}
.clarity-reassurance{max-width:330px;color:var(--body);font-size:var(--text-xs);line-height:1.6}
.clarity-promo-mark{position:relative;z-index:1;display:grid;gap:10px;max-width:340px;width:100%;justify-self:end;padding:28px;background:#f9f5ec;border:1px solid #cfc0aa;border-radius:4px;box-shadow:0 16px 30px #173e3510}
.clarity-promo-mark span{display:grid;grid-template-columns:36px 1fr;align-items:center;gap:14px;color:var(--green);font:400 var(--text-lg)/1.2 var(--serif)}
.clarity-promo-mark span:before{content:attr(data-letter);display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--gold);border-radius:50%;font:500 var(--text-xs)/1 var(--sans);color:#725b38}

.clarity-page{background:linear-gradient(180deg,var(--green) 0 290px,var(--cream) 290px);padding:56px 44px 72px}
.clarity-page-inner{width:min(920px,100%);margin:auto}
.clarity-page-intro{max-width:760px;margin:0 auto 34px;text-align:center;color:var(--cream)}
.clarity-page-intro .eyebrow{color:#dfd3bd}
.clarity-page-intro h1{margin-top:14px;font-size:var(--text-7xl);line-height:1.06;letter-spacing:-1.1px}
.clarity-page-intro>p:not(.eyebrow){max-width:650px;margin:18px auto 0;color:#e2e6dc;font-size:var(--text-lg);line-height:1.65}
.clarity-card{position:relative;background:#fffdf7;border:1px solid var(--line);border-radius:6px;box-shadow:0 22px 50px #102f2920;padding:38px 42px}
.clarity-progress-row{display:grid;grid-template-columns:1fr auto;align-items:center;gap:18px;padding-bottom:25px;border-bottom:1px solid var(--line)}
.clarity-progress-row p{font-size:var(--text-sm);font-weight:500;letter-spacing:.02em}
.clarity-progress-row progress{width:100%;height:8px;border:0;border-radius:20px;overflow:hidden;background:#e2dbcf;accent-color:var(--green)}
.clarity-progress-row progress::-webkit-progress-bar{background:#e2dbcf;border-radius:20px}
.clarity-progress-row progress::-webkit-progress-value{background:var(--green);border-radius:20px;transition:width .25s ease}
.clarity-progress-row progress::-moz-progress-bar{background:var(--green);border-radius:20px}
.clarity-question{padding-top:31px}
.clarity-question[hidden],.clarity-form[hidden],.clarity-result[hidden]{display:none}
.clarity-question h2{max-width:720px;font-size:var(--text-4xl);line-height:1.18;letter-spacing:-.45px;outline:none}
.clarity-question fieldset{min-width:0;margin:25px 0 0;padding:0;border:0}
.clarity-options{display:grid;gap:11px}
.clarity-option{position:relative;display:grid;grid-template-columns:38px minmax(0,1fr);gap:13px;align-items:center;min-height:62px;padding:12px 16px;border:1px solid #a9aa9c;border-radius:4px;background:#fffefa;color:var(--ink);cursor:pointer;transition:border-color .18s,background .18s,transform .18s,box-shadow .18s}
.clarity-option:hover{border-color:var(--green);background:#f7f3e9;transform:translateY(-1px)}
.clarity-option input{position:absolute;inset:auto;opacity:0;pointer-events:none}
.clarity-option-letter{display:grid;place-items:center;width:36px;height:36px;border:1px solid #a78e66;border-radius:50%;font-size:var(--text-sm);font-weight:600;color:#705a38}
.clarity-option-text{font-size:var(--text-base);line-height:1.5}
.clarity-option:has(input:checked){border-color:var(--green);background:#edf2eb;box-shadow:inset 4px 0 0 var(--green)}
.clarity-option:has(input:checked) .clarity-option-letter{background:var(--green);border-color:var(--green);color:var(--cream)}
.clarity-option:has(input:focus-visible){outline:2px solid #80623c;outline-offset:3px}
.clarity-error{min-height:24px;margin-top:15px;color:#8a3427;font-size:var(--text-sm);font-weight:500}
.clarity-controls{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:20px;padding-top:24px;border-top:1px solid var(--line)}
.clarity-controls .button{font-family:var(--sans);cursor:pointer}
.clarity-back,.clarity-reset{min-height:48px;padding:8px 4px;border:0;background:transparent;color:var(--ink);font:500 var(--text-sm)/1.5 var(--sans);text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:6px;cursor:pointer}
.clarity-back:disabled{visibility:hidden}

.clarity-result{outline:none}
.clarity-result-header{padding-bottom:28px;border-bottom:1px solid var(--line)}
.clarity-result-label{font-size:var(--text-xs);font-weight:600;letter-spacing:2.4px;text-transform:uppercase;color:#786447}
.clarity-result h2{max-width:700px;margin-top:12px;font-size:var(--text-6xl);line-height:1.08;letter-spacing:-.85px;outline:none}
.clarity-result-explanation{max-width:730px;margin-top:19px;color:var(--body);font-size:var(--text-lg);line-height:1.7}
.clarity-result-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:26px}
.clarity-result-detail{padding:24px;border:1px solid var(--line);border-radius:4px;background:#f8f4eb}
.clarity-result-detail h3{font-size:var(--text-3xl);line-height:1.15}
.clarity-result-detail p{margin-top:12px;color:var(--body);font-size:var(--text-sm);line-height:1.7}
.clarity-email{margin-top:27px;padding:25px;border:1px solid var(--line);border-radius:4px}
.clarity-email h3{font-size:var(--text-3xl);line-height:1.15}
.clarity-email>p{margin-top:10px;color:var(--body);font-size:var(--text-sm);line-height:1.65}
.clarity-email fieldset{min-width:0;margin:0;padding:0;border:0}
.clarity-email-fields{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:end;margin-top:18px}
.clarity-email-field{display:grid;gap:7px;min-width:0;font-size:var(--text-sm);font-weight:500}
.clarity-email-field input[type=email]{width:100%;min-height:50px;padding:11px 12px;border:1px solid #85877c;border-radius:3px;background:#fff;color:var(--ink);font:400 var(--text-base)/1.5 var(--sans)}
.clarity-email-field input[type=email]:focus{outline:3px solid rgba(185,132,45,.35);outline-offset:2px;border-color:var(--green)}
.clarity-email-fields .button:disabled{opacity:.55;cursor:not-allowed;transform:none}
.clarity-email-status{padding:12px 14px;border-left:3px solid var(--gold);background:#f5efe4;color:#654f31!important}
.clarity-newsletter{margin-top:20px;padding-top:20px;border-top:1px solid var(--line)}
.clarity-newsletter h4{font:600 var(--text-base)/1.4 var(--sans)}
.clarity-newsletter p{margin-top:6px;color:var(--body);font-size:var(--text-xs);line-height:1.65}
.clarity-newsletter .text-link{display:inline-flex;margin-top:10px;font-size:var(--text-sm);font-weight:600}
.clarity-newsletter-open{appearance:none;padding:0;border:0;background:transparent;color:var(--green);font-family:var(--sans);text-align:left;text-decoration:underline;text-decoration-color:var(--gold);text-decoration-thickness:1px;cursor:pointer}
.clarity-newsletter-open:hover{color:#647758}
.clarity-newsletter-open:focus-visible{outline:3px solid rgba(185,132,45,.35);outline-offset:4px}
.clarity-newsletter-embed{margin-top:18px;padding:18px;border:1px solid var(--line);border-radius:4px;background:#f8f4eb}
.clarity-newsletter-embed .ml-block-form{display:grid;gap:16px}
.clarity-newsletter-embed .ml-form-recaptcha{min-height:78px;overflow-x:auto}
.clarity-newsletter-embed .button{justify-self:start}
.clarity-newsletter-terms{margin-top:0!important}
.clarity-newsletter-status{margin-top:12px!important;font-weight:600}
.clarity-newsletter-fallback{margin-top:8px!important}
.clarity-newsletter-embed .row-success{padding:12px 14px;border-left:3px solid var(--gold);background:#fff}
.clarity-newsletter-embed .row-success p{margin-top:4px}
.clarity-consultation{margin-top:28px;padding:31px;background:var(--green);color:var(--cream);border-radius:4px;text-align:center}
.clarity-consultation h3{font-size:var(--text-4xl);line-height:1.15}
.clarity-consultation p{max-width:650px;margin:14px auto 0;color:#e2e6dc;font-size:var(--text-sm);line-height:1.7}
.clarity-consultation .button{margin-top:22px;background:var(--cream);border-color:var(--cream);color:var(--green)}
.clarity-consultation .button:hover{background:#fffdf7}
.clarity-result-actions{display:flex;justify-content:center;margin-top:18px}
.clarity-scope{max-width:760px;margin:24px auto 0;color:var(--body);font-size:var(--text-xs);line-height:1.7;text-align:center}

@media(max-width:760px){
  .clarity-promo{grid-template-columns:1fr;padding:42px 7%;gap:30px}
  .clarity-promo:after{width:260px;height:260px;right:-130px;top:-100px}
  .clarity-promo h2{font-size:var(--text-5xl);letter-spacing:-.65px}
  .clarity-promo-description{font-size:var(--text-base)}
  .clarity-promo-actions{align-items:flex-start;flex-direction:column}
  .clarity-promo-mark{justify-self:start;max-width:440px;padding:22px}
  .clarity-page{padding:39px 7% 52px;background:linear-gradient(180deg,var(--green) 0 245px,var(--cream) 245px)}
  .clarity-page-intro{margin-bottom:28px}
  .clarity-page-intro h1{font-size:var(--text-5xl);letter-spacing:-.65px}
  .clarity-page-intro>p:not(.eyebrow){font-size:var(--text-base)}
  .clarity-card{padding:25px 20px}
  .clarity-progress-row{gap:12px;padding-bottom:21px}
  .clarity-progress-row p{font-size:var(--text-xs)}
  .clarity-question{padding-top:25px}
  .clarity-question h2{font-size:var(--text-3xl)}
  .clarity-option{grid-template-columns:34px minmax(0,1fr);min-height:60px;padding:11px 12px;gap:11px}
  .clarity-option-letter{width:32px;height:32px}
  .clarity-option-text{font-size:var(--text-sm)}
  .clarity-controls{gap:12px;padding-top:20px}
  .clarity-controls .button{padding-left:17px;padding-right:17px}
  .clarity-result h2{font-size:var(--text-4xl)}
  .clarity-result-explanation{font-size:var(--text-base)}
  .clarity-result-grid{grid-template-columns:1fr}
  .clarity-result-detail{padding:20px}
  .clarity-email{padding:20px}
  .clarity-email-fields{grid-template-columns:1fr}
  .clarity-email-fields .button{width:100%}
  .clarity-newsletter-embed .button{width:100%;justify-content:center}
  .clarity-consultation{padding:26px 20px}
  .clarity-consultation h3{font-size:var(--text-3xl)}
  .clarity-consultation .button{width:100%;white-space:normal}
}
@media(max-width:380px){
  .clarity-page{padding-left:5%;padding-right:5%}
  .clarity-card{padding-left:16px;padding-right:16px}
  .clarity-progress-row{grid-template-columns:1fr}
  .clarity-progress-row p{order:-1}
  .clarity-controls{align-items:stretch;flex-direction:column-reverse}
  .clarity-back{align-self:flex-start}
  .clarity-controls .button{width:100%}
}
@media(prefers-reduced-motion:reduce){
  .clarity-option,.clarity-progress-row progress::-webkit-progress-value{transition:none}
}
