/* ============================================================
   Mark Sirkin — Couples Therapy Landing Page ("Temperature Arc")
   Self-contained: the LP loads only this sheet.
   ============================================================ */
:root{
  --navy:#2F4A6D;--navy-deep:#1E2B3D;--sea:#22344a;--slate:#4A4F57;
  --brick:#8B2E2F;--brick-dark:#732526;--ink:#222831;
  --sans:"Space Grotesk",-apple-system,BlinkMacSystemFont,sans-serif;
  --serif:"Literata",Georgia,serif;--wrap:1180px;
  --t-cool:#E4EAF0;--t-cool2:#E9ECEE;--t-mid:#EDEBE6;--t-warm:#F2EFE8;--t-warm2:#F6F3EC;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:74px}
body.lp-arc{font-family:var(--serif);color:var(--ink);background:var(--t-warm);line-height:1.75;font-size:1.075rem;overflow-x:hidden}
.lp-arc h1,.lp-arc h2,.lp-arc h3{font-family:var(--sans);font-weight:500;line-height:1.08;letter-spacing:-.02em;color:var(--navy-deep);text-wrap:balance}
.lp-arc p{text-wrap:pretty}
.lp-arc a{color:inherit;text-decoration:none}
.lp-arc img{display:block;max-width:100%}
.lpa-wrap{max-width:var(--wrap);margin:0 auto;padding:0 clamp(1.35rem,5vw,3rem)}
.lpa-narrow{max-width:820px}
.lpa-kicker{font-family:var(--sans);font-weight:500;font-size:.74rem;letter-spacing:.32em;text-transform:uppercase;color:var(--brick);display:block;margin-bottom:1.2rem}
.lpa-kicker.light{color:#D9A9A0}

/* Buttons */
.lp-arc .lpa-btn{display:inline-block;font-family:var(--sans);font-weight:600;font-size:.9rem;letter-spacing:.02em;padding:.95rem 1.8rem;background:var(--brick);color:#fff;border:1px solid var(--brick);border-radius:4px;cursor:pointer;transition:background .3s,box-shadow .3s,border-color .3s,color .3s}
.lpa-btn:hover{background:var(--brick-dark);border-color:var(--brick-dark);box-shadow:0 10px 30px rgba(139,46,47,.26);color:#fff}
.lpa-btn-lg{font-size:.95rem;padding:1.05rem 2.1rem}
.lp-arc .lpa-btn-outline{background:transparent;color:#fff;border-color:rgba(255,255,255,.5)}
.b-cool2 .lpa-btn-outline,.b-cool .lpa-btn-outline{color:var(--navy);border-color:var(--navy)}
.lp-arc .lpa-btn-outline:hover{background:var(--navy);color:#fff;border-color:var(--navy);box-shadow:none}
.lp-arc .lpa-btn-cream{background:#fff;color:var(--brick);border-color:#fff}
.lp-arc .lpa-btn-cream:hover{background:var(--t-warm2);color:var(--brick-dark);border-color:var(--t-warm2)}
/* obvious phone links in body text */
.lpa-tellink{color:inherit;font-weight:600;text-decoration:underline;text-decoration-color:var(--brick);text-decoration-thickness:2px;text-underline-offset:3px;transition:color .2s}
.lpa-tellink:hover{color:var(--brick)}
.lpa-close .lpa-tellink:hover,.lpa-navy .lpa-tellink:hover{color:#D9A9A0}

/* Horizon divider */
.lpa-horizon{position:relative;height:0}
.lpa-horizon::before{content:"";position:absolute;left:clamp(1.35rem,5vw,3rem);right:clamp(1.35rem,5vw,3rem);top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(47,74,109,.28) 15%,rgba(47,74,109,.28) 85%,transparent)}
.lpa-horizon::after{content:"";position:absolute;left:50%;top:0;width:7px;height:7px;border-radius:50%;background:var(--brick);transform:translate(-50%,-50%);box-shadow:0 0 0 5px var(--_hb,var(--t-warm))}

/* Bands (temperature arc) */
.lpa-band{padding:clamp(3.4rem,8vw,6rem) 0}
.b-cool{background:var(--t-cool)}.b-cool2{background:var(--t-cool2)}.b-mid{background:var(--t-mid)}.b-warm{background:var(--t-warm)}.b-warm2{background:var(--t-warm2)}
.lpa-body p{margin-bottom:1.05rem;color:#3c434d}
.lpa-body p:last-child{margin-bottom:0}
.lpa-body em{font-style:italic}
.lpa-band h2{font-size:clamp(1.8rem,3.8vw,2.7rem);margin-bottom:1.4rem}
.lpa-narrow h2{margin-bottom:1.3rem}
.lpa-sec-head{max-width:44ch;margin-bottom:clamp(2rem,4vw,3rem)}
.lpa-sec-head h2{margin-bottom:0}

/* ── Funnel nav ── */
.lpa-nav{position:sticky;top:0;z-index:100;background:rgba(34,52,74,.94);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}
.lpa-nav-inner{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;max-width:1280px;margin:0 auto;padding:.75rem clamp(1.35rem,5vw,3rem)}
.lpa-nav .lpa-brand{display:flex;align-items:center;gap:.6rem;font-family:var(--sans);font-weight:600;font-size:1.3rem;color:#fff;letter-spacing:.01em;white-space:nowrap;line-height:1.08;flex:0 0 auto;min-width:0}
.lpa-brand-mark{flex:0 0 auto;width:38px;height:38px;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;padding:4px;box-sizing:border-box}
.lpa-brand-mark picture,.lpa-brand-mark img{display:block;width:100%;height:100%;object-fit:contain}
.lpa-brand-txt{display:block}
.lpa-nav .lpa-brand-txt em{font-style:normal;color:#D9A9A0}
.lpa-nav .lpa-brand-txt small{display:block;font-size:.58rem;letter-spacing:.3em;text-transform:uppercase;color:#8FA0B4;font-weight:500;margin-top:0}
.lpa-anchors{display:flex;gap:.2rem;flex-wrap:nowrap}
.lpa-anchors a{font-family:var(--sans);font-weight:500;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:#B7C3D2;padding:.5rem .7rem;white-space:nowrap;transition:color .25s}
.lpa-anchors a:hover{color:#fff}
.lpa-nav-right{display:flex;align-items:center;gap:1.1rem;flex-shrink:0}
/* Phone block — replicates the main site header .nav-phone */
.lpa-nav .lpa-nav-phone{display:inline-flex;align-items:center;gap:.6rem;color:#fff;white-space:nowrap;transition:color .25s}
.lpa-np-ico{width:36px;height:36px;flex:0 0 auto;border-radius:50%;border:1px solid rgba(255,255,255,.28);display:flex;align-items:center;justify-content:center;color:#D9A9A0;transition:background .25s,border-color .25s,color .25s}
.lpa-np-ico svg{width:16px;height:16px}
.lpa-np-txt{display:flex;flex-direction:column;line-height:1.12}
.lpa-np-txt small{font-family:var(--sans);font-size:.58rem;letter-spacing:.14em;text-transform:uppercase;color:#8FA0B4}
.lpa-np-txt b{font-family:var(--sans);font-weight:600;font-size:1.02rem;color:#fff}
.lpa-nav .lpa-nav-phone:hover .lpa-np-ico{background:var(--brick);border-color:var(--brick);color:#fff}
/* CTA — replicates the main site header .nav-cta */
.lpa-nav .lpa-nav-btn{display:inline-flex;align-items:center;gap:.55rem;font-family:var(--sans);font-weight:600;font-size:.8rem;letter-spacing:.02em;color:#fff;background:var(--brick);border:1px solid var(--brick);padding:.74rem 1.2rem;border-radius:4px;white-space:nowrap;transition:background .3s,box-shadow .3s,border-color .3s}
.lpa-nc-arw{transition:transform .3s cubic-bezier(.2,.7,.2,1)}
.lpa-nav .lpa-nav-btn:hover{background:var(--brick-dark);border-color:var(--brick-dark);box-shadow:0 8px 22px rgba(139,46,47,.32);color:#fff}
.lpa-nav-btn:hover .lpa-nc-arw{transform:translateX(4px)}

/* ── Hero ── */
.lpa-hero{background:var(--sea);color:#fff;position:relative;overflow:hidden}
.lpa-hero-tex{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 32%;opacity:.9;filter:saturate(1.06) contrast(1.03);z-index:0}
.lpa-hero::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(100deg,rgba(18,27,40,.82) 0%,rgba(22,33,50,.5) 44%,rgba(28,42,62,.16) 100%),linear-gradient(180deg,transparent 50%,rgba(20,30,45,.45) 100%)}
.lpa-hero .lpa-wrap{position:relative;z-index:2;padding:clamp(3.4rem,8vw,6rem) clamp(1.35rem,5vw,3rem) clamp(3rem,6vw,4.5rem)}
.lpa-hero h1{color:#fff;font-size:clamp(2.5rem,6vw,4.6rem);max-width:16ch;letter-spacing:-.025em}
.lpa-hero-sub{font-size:clamp(1.12rem,2vw,1.4rem);max-width:52ch;margin:1.5rem 0 1rem;color:#C9D4E1;line-height:1.55}
.lpa-hero-tag{font-family:var(--sans);font-weight:500;font-size:clamp(.95rem,1.6vw,1.15rem);letter-spacing:.04em;color:#D9A9A0;margin-bottom:2rem}
.lpa-hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:1.2rem 1.6rem}
.lpa-hero-phone{font-family:var(--sans);font-weight:600;font-size:1.05rem;color:#fff}
.lpa-hero-phone:hover{color:#D9A9A0}
.lpa-badges{display:flex;flex-wrap:wrap;gap:.6rem .7rem;list-style:none;margin-top:2.4rem;padding-top:1.8rem;border-top:1px solid rgba(255,255,255,.14)}
.lpa-badges li{font-family:var(--sans);font-weight:500;font-size:.72rem;letter-spacing:.04em;color:#C9D4E1;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16);border-radius:40px;padding:.42rem .95rem}

/* ── Split (solution) ── */
.lpa-split{display:grid;grid-template-columns:1.25fr 1fr;gap:clamp(2rem,5vw,4rem);align-items:center}
.lpa-split-media{position:relative}
.lpa-split-media img{width:100%;height:100%;object-fit:cover;border-radius:4px;filter:saturate(.92);min-height:320px}

/* ── Deep-navy bands (benefits / trust) ── */
.lpa-navy{background:linear-gradient(165deg,#39516A 0%,#41505F 60%,#4A5561 100%);color:#DCE0E4;position:relative;overflow:hidden}
.lpa-navy::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(130% 90% at 12% -10%,rgba(233,236,238,.06),transparent 58%)}
.lpa-navy .lpa-wrap{position:relative;z-index:1}
.lpa-navy h2,.lpa-navy h3{color:#F4F1E9}
.lpa-navy .lpa-kicker.light{color:#C9A59C}
.lpa-sec-head--light h2{color:#F4F1E9}

/* Benefits */
.lpa-ben-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(2rem,5vw,4rem);align-items:start}
.lpa-ben-head h2{margin-bottom:1.1rem}
.lpa-ben-intro{color:#C9D4E0;font-size:1.08rem}
.lpa-ben-list{list-style:none;display:flex;flex-direction:column;gap:1.15rem}
.lpa-ben-list li{position:relative;display:flex;gap:1rem;align-items:flex-start;font-family:var(--serif);font-size:clamp(1.08rem,1.7vw,1.28rem);line-height:1.45;color:#EAEEF1}
.lpa-check{flex:0 0 auto;width:24px;height:24px;margin-top:.15rem;border-radius:50%;background:var(--brick);position:relative}
.lpa-check::after{content:"";position:absolute;left:8px;top:5px;width:6px;height:11px;border-right:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(45deg)}
.lpa-ben-close{margin-top:clamp(2rem,4vw,2.8rem);padding-top:1.6rem;border-top:1px solid rgba(255,255,255,.16);font-family:var(--sans);font-weight:500;font-size:clamp(1.1rem,1.9vw,1.4rem);color:#F6F3EC;text-align:center;letter-spacing:-.01em}

/* Process phases */
.lpa-phases{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(1.4rem,3vw,2.4rem);counter-reset:none}
.lpa-phase{position:relative;padding-top:1.4rem;border-top:2px solid rgba(139,46,47,.5)}
.lpa-phase-num{font-family:var(--sans);font-weight:600;font-size:2rem;line-height:1;color:rgba(47,74,109,.24);margin-bottom:.8rem}
.lpa-phase h3{font-size:clamp(1.2rem,2vw,1.5rem);margin-bottom:.7rem;color:var(--navy-deep)}
.lpa-phase p{color:#3c434d;font-size:1rem;margin-bottom:.8rem}
.lpa-phase-take{font-family:var(--sans) !important;font-weight:600;color:var(--brick) !important;font-size:.98rem !important;letter-spacing:-.01em}

/* CTA bands */
.lpa-cta-band{background:var(--brick);text-align:center;padding:clamp(2.4rem,5vw,3.6rem) 0}
.lpa-cta-band .lpa-wrap{display:flex;justify-content:center}
.lpa-cta-band--navy{background:linear-gradient(168deg,#33507A 0%,#2F4A6D 52%,#2A4264 100%);flex-direction:column}
.lpa-cta-band--navy .lpa-wrap{flex-direction:column;align-items:center;gap:1.6rem}
.lpa-cta-band--navy h2{color:#F4F1E9;text-align:center;max-width:20ch;margin:0}

/* Trust cards */
.lpa-trust-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(1.4rem,3vw,2rem)}
.lpa-trust-card{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:8px;padding:clamp(1.6rem,3vw,2.2rem)}
.lpa-trust-card h3{font-size:clamp(1.14rem,1.8vw,1.35rem);margin-bottom:.9rem;line-height:1.2}
.lpa-trust-card p{color:#C9D4E0;font-size:1rem}

/* FAQ accordion */
.lpa-faqs{margin-top:.5rem}
.lpa-faq{border-top:1px solid rgba(47,74,109,.16)}
.lpa-faq:last-child{border-bottom:1px solid rgba(47,74,109,.16)}
.lpa-faq.open{background:rgba(255,255,255,.5)}
.lpa-faq-q{width:100%;text-align:left;background:none;border:0;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:1.4rem;padding:clamp(1.4rem,2.6vw,1.9rem) .6rem;font-family:var(--sans);font-weight:500;font-size:clamp(1.05rem,1.7vw,1.28rem);color:var(--navy-deep);letter-spacing:-.01em;line-height:1.3;transition:color .3s}
.lpa-faq-q:hover,.lpa-faq.open .lpa-faq-q{color:var(--brick)}
.lpa-faq-ico{flex:0 0 auto;width:16px;height:16px;position:relative;transition:transform .5s cubic-bezier(.33,1,.68,1)}
.lpa-faq-ico::before,.lpa-faq-ico::after{content:"";position:absolute;background:var(--brick);border-radius:2px}
.lpa-faq-ico::before{top:7px;left:0;width:16px;height:2px}
.lpa-faq-ico::after{left:7px;top:0;width:2px;height:16px;transition:transform .5s cubic-bezier(.33,1,.68,1)}
.lpa-faq.open .lpa-faq-ico{transform:rotate(180deg)}
.lpa-faq.open .lpa-faq-ico::after{transform:scaleY(0)}
.lpa-faq-a{display:grid;grid-template-rows:0fr;transition:grid-template-rows .5s cubic-bezier(.33,1,.68,1)}
.lpa-faq.open .lpa-faq-a{grid-template-rows:1fr}
.lpa-faq-a-inner{overflow:hidden}
.lpa-faq-a-inner > div{padding:0 .6rem 1.5rem;color:#3c434d;font-family:var(--serif);font-size:1.05rem;line-height:1.7;max-width:64ch}
.lpa-scarcity{margin-top:clamp(1.8rem,3vw,2.4rem);text-align:center;font-family:var(--sans);font-weight:600;font-size:.8rem;letter-spacing:.16em;text-transform:uppercase;color:var(--brick)}
.lpa-scarcity::before,.lpa-scarcity::after{content:"·";margin:0 .6rem;opacity:.5}

/* Closing / form (deep navy) */
.lpa-close{background:linear-gradient(168deg,#33507A 0%,#2F4A6D 52%,#2A4264 100%);color:#DCE0E4}
.lpa-close h2{color:#F4F1E9;font-size:clamp(1.9rem,4vw,2.9rem)}
.lpa-close .lpa-kicker.light{color:#C9A59C}
.lpa-close-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2.4rem,6vw,4.5rem);align-items:start}
.lpa-close-copy .lpa-body p{color:#C9D4E0;font-size:1.06rem}
.lpa-next{margin-top:1.9rem}
.lpa-next h3{font-family:var(--sans);color:#F4F1E9;font-size:1.15rem;margin-bottom:1rem}
.lpa-next ol{list-style:none;counter-reset:n;display:flex;flex-direction:column;gap:.9rem}
.lpa-next li{counter-increment:n;position:relative;padding-left:2.5rem;color:#C9D4E0;line-height:1.5}
.lpa-next li::before{content:counter(n);position:absolute;left:0;top:0;width:1.7rem;height:1.7rem;border-radius:50%;background:var(--brick);color:#fff;font-family:var(--sans);font-weight:600;font-size:.85rem;display:flex;align-items:center;justify-content:center}
.lpa-assure{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem;margin-top:2rem;padding-top:1.8rem;border-top:1px solid rgba(255,255,255,.14)}
.lpa-assure-block strong{display:block;font-family:var(--sans);font-weight:600;font-size:.95rem;color:#F4F1E9;margin-bottom:.5rem}
.lpa-assure-block p,.lpa-assure-block li{font-size:.92rem;color:#AEBBC9;line-height:1.5}
.lpa-assure-block ul{list-style:none;display:flex;flex-direction:column;gap:.35rem}
.lpa-contact{display:flex;flex-wrap:wrap;gap:.8rem 1.8rem;margin-top:1.9rem}
.lpa-contact a{font-family:var(--sans);font-weight:600;color:#fff;font-size:1.02rem}
.lpa-contact a:hover{color:#C9A59C}
.lpa-form-card{background:#fff;border-radius:8px;box-shadow:0 26px 62px rgba(13,20,32,.5);padding:clamp(1.6rem,3vw,2.4rem);position:sticky;top:90px}

/* WPForms overrides (form card) */
.lpa-form-card .wpforms-container{margin:0}
.lpa-form-card .wpforms-field{padding:0 0 1rem !important}
.lpa-form-card .wpforms-field-label{display:block !important;font-family:var(--sans) !important;font-size:.76rem !important;font-weight:600 !important;color:var(--slate) !important;letter-spacing:.08em !important;text-transform:uppercase !important;margin-bottom:.4rem !important}
.lpa-form-card input[type=text],.lpa-form-card input[type=email],.lpa-form-card input[type=tel],.lpa-form-card textarea,.lpa-form-card input.wpforms-field-medium{width:100% !important;max-width:100% !important;font-family:var(--serif) !important;font-size:1rem !important;color:var(--ink) !important;padding:.85rem 1rem !important;border:1px solid rgba(47,74,109,.25) !important;border-radius:4px !important;background:#fff !important;box-shadow:none !important}
.lpa-form-card textarea{resize:vertical !important;min-height:110px !important}
.lpa-form-card input:focus,.lpa-form-card textarea:focus{outline:none !important;border-color:var(--navy) !important;box-shadow:0 0 0 3px rgba(47,74,109,.13) !important}
.lpa-form-card .wpforms-submit{width:100% !important;display:flex !important;align-items:center !important;justify-content:center !important;min-height:3.3rem !important;text-align:center !important;font-family:var(--sans) !important;font-weight:600 !important;font-size:.92rem !important;letter-spacing:.02em !important;line-height:1 !important;padding:.7rem 1.05rem !important;margin-top:.3rem !important;background:var(--brick) !important;color:#fff !important;border:1px solid var(--brick) !important;border-radius:4px !important;cursor:pointer !important;transition:background .3s !important}
.lpa-form-card .wpforms-submit:hover{background:var(--brick-dark) !important;border-color:var(--brick-dark) !important}
.lpa-form-card .wpforms-required-label{color:var(--brick) !important}
.lpa-form-card .wpforms-confirmation-container-full{background:#fff !important;border:1px solid rgba(47,74,109,.2) !important;color:var(--ink) !important;border-radius:4px;padding:1rem 1.2rem}

/* Footer (centered) */
.lpa-foot{background:var(--sea);color:#8FA0B4;padding:2.6rem 0}
.lpa-foot .lpa-wrap{display:flex;flex-direction:column;align-items:center;text-align:center;gap:1.1rem}
.lpa-foot-contact{display:flex;flex-wrap:wrap;justify-content:center;gap:.8rem 2rem}
.lpa-foot .lpa-foot-contact a{font-family:var(--sans);font-weight:600;font-size:1.02rem;color:#fff;transition:color .2s}
.lpa-foot .lpa-foot-contact a:hover{color:#D9A9A0}
.lpa-foot .lpa-foot-brand{display:flex;align-items:center;gap:.6rem;font-family:var(--sans);font-weight:600;font-size:1.3rem;color:#fff;letter-spacing:.01em;line-height:1.08;white-space:nowrap}
.lpa-foot .lpa-foot-brand .lpa-brand-txt em{font-style:normal;color:#D9A9A0}
.lpa-foot .lpa-foot-brand .lpa-brand-txt small{display:block;font-size:.58rem;letter-spacing:.3em;text-transform:uppercase;color:#8FA0B4;font-weight:500}
.lpa-foot-fees{font-family:var(--sans);font-size:.82rem;line-height:1.5;color:#8FA0B4;max-width:52ch;margin:0}
.lpa-foot-legal{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem 1.5rem}
.lpa-foot-legal a{font-family:var(--sans);font-size:.86rem;color:#C9D4E1;transition:color .2s}
.lpa-foot-legal a:hover{color:#fff}
.lpa-foot-copy{font-family:var(--sans);font-size:.82rem;color:#6E7E92}

/* ── Revisions: hero sub paras, pain2 button spacing, headshot, multi-para bodies, form title ── */
.lpa-hero-sub{margin:1.5rem 0 1.2rem}
.lpa-hero-sub p{font-size:clamp(1.12rem,2vw,1.4rem);color:#C9D4E1;line-height:1.55;margin-bottom:.7rem;max-width:52ch}
.lpa-hero-sub p:last-child{margin-bottom:0}
.lpa-narrow .lpa-body + .lpa-btn{margin-top:2rem}
.lpa-phase-body p{color:#3c434d;font-size:1rem;margin-bottom:.7rem}
.lpa-phase-body p:last-child{margin-bottom:0}
.lpa-trust-body p{color:#C9D4E0;font-size:1rem;margin-bottom:.7rem}
.lpa-trust-body p:last-child{margin-bottom:0}
/* Headshot (solution section) */
.lpa-split-media .lpa-headshot{width:100%;max-width:420px;aspect-ratio:4/5;object-fit:cover;object-position:50% 12%;border-radius:4px;margin-left:auto}
.lpa-split-media picture.lpa-headshot{display:block;overflow:hidden}
/* max-height/aspect-ratio come from the 860px `.lpa-split-media img` rule,
   written when this slot was a wide landscape block. It is a portrait
   headshot now, and the cap was leaving 97px of dead space inside the frame. */
.lpa-split-media picture.lpa-headshot > img{width:100%;height:100%;aspect-ratio:auto;max-width:none;max-height:none;min-height:0;display:block;object-fit:cover;object-position:50% 12%}
.lpa-headshot-ph{width:100%;max-width:420px;aspect-ratio:4/5;margin-left:auto;border-radius:4px;overflow:hidden;background:linear-gradient(160deg,#dbe2ea,#c9d3de);display:flex;align-items:center;justify-content:center;text-align:center;border:1px solid rgba(47,74,109,.15)}
.lpa-headshot-ph span{font-family:var(--sans);font-size:.82rem;color:var(--slate);letter-spacing:.05em;padding:1.4rem;font-weight:500;line-height:1.5}
.lpa-headshot-ph svg{width:56px;height:56px;opacity:.4;margin-bottom:.4rem}
/* Form card title */
.lpa-form-title{font-family:var(--sans);font-weight:500;font-size:clamp(1.3rem,2.2vw,1.7rem);color:var(--navy-deep);letter-spacing:-.01em;margin-bottom:1.3rem;line-height:1.15}

/* Reveal */
.lp-arc .reveal{opacity:0;transform:translateY(22px);transition:opacity .9s cubic-bezier(.2,.7,.2,1),transform .9s cubic-bezier(.2,.7,.2,1)}
.lp-arc .reveal.in{opacity:1;transform:none}
@keyframes lpaForce{to{opacity:1;transform:none}}
.lp-arc .reveal{animation:lpaForce .01s 6s forwards}
.lp-arc .reveal.in{animation:none}

/* Responsive */
.lpa-burger{display:none;flex-direction:column;gap:5px;background:none;border:0;cursor:pointer;padding:.4rem;flex-shrink:0}
.lpa-burger span{width:26px;height:2px;background:#fff;transition:.3s;flex-shrink:0}
.lpa-menu-btn{display:none}
@media(max-width:980px){
  /* Anchors become a drawer panel rather than disappearing. */
  .lpa-anchors{position:absolute;top:100%;left:0;right:0;display:none;flex-direction:column;align-items:stretch;
    background:var(--sea);padding:.6rem 1.2rem 1.4rem;box-shadow:0 20px 40px rgba(10,18,30,.35);gap:0}
  .lpa-nav.lpa-open .lpa-anchors{display:flex}
  .lpa-nav-inner{position:relative}
  .lpa-anchors a{padding:.9rem 0;border-bottom:1px solid rgba(255,255,255,.12);white-space:normal}
  .lpa-anchors a:last-of-type{border-bottom:0}
  .lpa-burger{display:flex}
  /* The header CTA moves into the drawer. */
  .lpa-nav-right .lpa-nav-btn{display:none}
  .lpa-menu-btn{display:flex;align-items:center;justify-content:center;gap:.45rem;margin-top:1rem;border-bottom:0;
    background:var(--brick);color:#fff;border-radius:4px;padding:14px 18px;min-height:44px;
    font-family:var(--sans);font-weight:600;font-size:14px}
}
@media(max-width:860px){
  .lpa-split{grid-template-columns:1fr;gap:1.6rem}
  /* Portrait sits under the "Meet Dr. Sirkin" eyebrow and headline but above the
     body copy — the same reading order the About page uses. display:contents
     lifts the text block's children into the grid so the photo can slot between
     the headline and the body without duplicating any markup. */
  .lpa-split-text{display:contents}
  .lpa-split-text .lpa-kicker{order:1}
  .lpa-split-text h2{order:2}
  .lpa-split-media{order:3;margin:0}
  .lpa-split-text .lpa-body{order:4}
  .lpa-split-media .lpa-headshot{margin-left:auto;margin-right:auto}
  .lpa-split-media img{min-height:0;aspect-ratio:16/10;max-height:340px}
  .lpa-ben-grid{grid-template-columns:1fr;gap:1.6rem}
  .lpa-phases{grid-template-columns:1fr;gap:1.6rem}
  .lpa-trust-grid{grid-template-columns:1fr;gap:1.2rem}
  .lpa-close-grid{grid-template-columns:1fr;gap:2.2rem}
  .lpa-form-card{position:static}
  .lpa-nav .lpa-nav-phone{display:none}
}
@media(max-width:600px){
  .lpa-nav .lpa-brand-txt small,.lpa-foot .lpa-foot-brand .lpa-brand-txt small{display:none}
  .lpa-assure{grid-template-columns:1fr}
}
/* Narrow phones: brand + CTA together overran a 320px viewport by 69px once the
   nav phone was correctly hidden. The CTA label is client content and the touch
   floor pins it at 14px, so the room has to come from the brand and the gutters. */
@media(max-width:430px){
  .lpa-nav-inner{gap:.5rem;padding:.7rem .85rem}
  .lpa-nav .lpa-brand{font-size:1rem}
  .lpa-nav .lpa-nav-btn{padding:.7rem .75rem;gap:.35rem}
}
@media (hover:none) and (pointer:coarse){
  .lpa-anchors a,.lpa-nav-btn,.lpa-btn,.lpa-nav-phone,.lpa-faq-q,.lpa-contact a,.lpa-hero-phone{font-size:14px !important}
  /* 13px was still under the floor. The badges and the section eyebrow are the
     LP's own copies of the defects fixed in client.css — a client.css rule does
     not reach this template. */
  /* Four badges, two rows. They cannot share a row as free-flowing pills:
     "HIPAA-Compliant" + "Verified by Psychology Today" measure 355px against a
     350px container at the 14px touch floor, and worse at 360px. A 2-up grid is
     deterministic at every width; the longer label wraps inside its own pill. */
  .lpa-badges{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;align-items:stretch}
  .lpa-badges li{font-size:14px !important;padding:.5rem .7rem;letter-spacing:0;
    display:flex;align-items:center;justify-content:center;text-align:center;line-height:1.3}
  .lpa-kicker{font-size:14px !important;letter-spacing:.22em}
  /* 44px tap targets: the brand lockup and the anchor links sat at 32/41px. */
  .lpa-nav .lpa-brand{min-height:44px}
  /* Same floor the site burger gets. min-height/width only — a display value
     here would resurrect it above the drawer breakpoint. */
  .lpa-burger{min-width:44px;min-height:44px;align-items:center;justify-content:center}
  /* Excluded from the tel: rule above so it cannot be resurrected on phones,
     so it needs its own 44px floor for the tablets that DO show it.
     min-height only — a display value here would un-hide it on phones. */
  .lpa-nav .lpa-nav-phone{min-height:44px}
  .lpa-foot .lpa-foot-brand{min-height:44px}
  .lpa-foot-fees{font-size:14px !important}
  .lpa-foot-legal a{font-size:14px !important;min-height:44px;display:inline-flex;align-items:center}
  .lpa-anchors a{min-height:44px;display:inline-flex;align-items:center}
  .lpa-foot-copy{font-size:14px !important}
  .lpa-form-card .wpforms-submit{min-height:44px !important}
  .lpa-form-card .wpforms-field-label{font-size:14px !important}
  a[href^="tel:"]:not(.lpa-nav-phone),a[href^="mailto:"]{min-height:44px;display:inline-flex;align-items:center}
}
