:root{--ink:#162a35;--muted:#5b6971;--blue:#eaf0f3;--line:#d5dde0;--white:#fff;--accent:#973d32;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:#fff;font-synthesis:none;scroll-behavior:smooth}*{box-sizing:border-box}body{margin:0}button,a,input{ -webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible{outline:3px solid #b9583e;outline-offset:5px}p{font-size:1rem;line-height:1.7}h1,h2,h3,p{margin-top:0}h1,h2,.identity-name{font-family:Georgia,'Times New Roman',serif;font-weight:400}h1{font-size:clamp(2.6rem,4.6vw,4.7rem);line-height:1.1;letter-spacing:-.045em;margin-bottom:2rem}h1 em{color:var(--accent);font-weight:400}h2{font-size:clamp(2rem,3.2vw,3.25rem);line-height:1.16;letter-spacing:-.025em}h3{font-size:1.3rem;font-weight:500;line-height:1.35}.wrap{width:min(1280px,88%);margin-inline:auto}.preview-note{padding:9px 6%;background:#eaf0f3;font-size:.75rem;letter-spacing:.12em;display:flex;gap:18px;align-items:center}.preview-note span{letter-spacing:0;font-size:.8125rem;color:#4e5e67}.header{display:flex;align-items:center;justify-content:space-between;min-height:114px;border-bottom:1px solid var(--line);gap:24px}.wordmark{font-family:Georgia,serif;font-size:2rem;letter-spacing:.08em;white-space:nowrap}.wordmark span{display:inline-block;font-family:Arial,sans-serif;font-size:.8rem;letter-spacing:.19em;margin-left:9px}nav{display:flex;gap:35px;font-size:.9375rem}nav a{padding:12px 0}nav a:hover{color:var(--accent)}.header-pay{border:1px solid var(--line);background:white;padding:14px 18px;font-size:.875rem}.header-pay span{margin-left:18px}.hero{display:grid;grid-template-columns:1.35fr .85fr;gap:7%;padding-block:78px 90px;align-items:center}.eyebrow{font-size:.75rem;letter-spacing:.18em;font-weight:600;line-height:1.6;display:block;margin-bottom:23px}.intro{font-size:1.125rem;margin-bottom:26px}.intro span{font-size:.9375rem;color:var(--muted)}.button{display:inline-flex;gap:28px;justify-content:space-between;align-items:center;border:1px solid var(--ink);background:var(--ink);padding:18px 24px;color:white;font-size:.9375rem;min-height:54px;transition:background .15s}.button:hover{background:#294855}.hero-small{color:var(--muted);font-size:.875rem;margin:18px 0 0}.identity{background:var(--ink);color:white;min-height:440px;padding:30px 36px;display:flex;flex-direction:column;justify-content:space-between;position:relative;border-top:5px solid #9f5142}.identity-top,.identity-bottom{display:flex;justify-content:space-between;font-size:.75rem;letter-spacing:.12em;gap:20px}.identity-top{color:#b9c8cf}.identity-main{padding:48px 0}.identity-label{font-size:.75rem;letter-spacing:.22em;color:#b9c8cf;margin-bottom:13px}.identity-name{font-size:clamp(3.5rem,5.6vw,5.9rem);letter-spacing:-.035em;line-height:.99;margin-bottom:24px}.fine-rule{width:45px;height:1px;background:#b6c1c5;margin-bottom:18px}.identity-main>p:last-child{font-size:.875rem;margin-bottom:0;color:#d8e1e5}.identity-bottom{padding-top:20px;border-top:1px solid #40535d;letter-spacing:.02em;color:#bdcbd2}.section{padding-block:70px;scroll-margin-top:28px}.section-label{font-size:.75rem;letter-spacing:.15em;display:flex;gap:25px;align-items:center}.section-label span{color:var(--accent);font-family:Georgia,serif;font-size:1.0625rem;letter-spacing:0}.about{display:grid;grid-template-columns:1fr 2fr;gap:60px;border-top:1px solid var(--line)}.about-body{max-width:670px}.about-body h2{margin-bottom:12px}.about-body>p{color:var(--muted)}.about-line{border-block:1px solid var(--line);display:flex;justify-content:space-between;padding:20px 0;margin:28px 0;gap:15px;font-size:.9375rem}.about-line strong{font-weight:500}.muted{color:var(--muted);font-size:.9375rem}.consult{background:var(--blue)}.section-heading{display:flex;justify-content:space-between;gap:8%;align-items:end;margin:32px 0 45px}.section-heading h2{margin:0}.section-heading p{max-width:370px;color:var(--muted);margin-bottom:5px}.steps{padding:0;list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:44px;margin:0}.steps li{border-top:1px solid #b7c4cc;padding:26px 0}.step-number{font-family:Georgia,serif;font-size:1.0625rem;display:block;color:#657e8b;margin-bottom:32px}.steps h3{margin-bottom:14px}.steps p{color:var(--muted);font-size:.9375rem;margin:0}.payment-strip{border-top:1px solid #b7c4cc;margin-top:27px;padding-top:36px;display:flex;justify-content:space-between;gap:30px;align-items:center}.payment-strip .eyebrow{margin-bottom:10px}.payment-strip h3{font-family:Georgia,serif;font-size:1.8rem;margin-bottom:8px}.payment-strip p{margin:0;color:var(--muted);font-size:.9375rem}.light{background:transparent;color:var(--ink)}.light:hover{background:#d6e2e8}.contact{display:grid;grid-template-columns:1fr 2fr;gap:60px;padding-block:85px}.contact-body{display:grid;grid-template-columns:1fr 1fr;gap:60px}.contact h2{margin-bottom:25px}.contact-body p{font-size:.9375rem}.location{color:var(--muted)}.contact-note{border-left:1px solid var(--line);padding-left:35px;padding-top:8px}.contact-note .eyebrow{margin-bottom:20px}.contact-note .muted{font-size:.875rem}.footer{border-top:1px solid var(--line);padding-block:32px}.footer-top,.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:24px}.footer-top{margin-bottom:34px}.footer-top>span,.footer-top>a:last-child{font-size:.875rem;color:var(--muted)}.footer-bottom p{font-size:.75rem;color:var(--muted);margin:0}.footer .wordmark{font-size:1.4rem}.footer .wordmark span{font-size:.7rem}dialog{color:var(--ink);border:0;max-width:530px;width:calc(100% - 32px);padding:48px;background:#fff;box-shadow:0 30px 90px #0003}dialog::backdrop{background:#0e202bb3;backdrop-filter:blur(3px)}dialog h2{font-size:2.4rem;margin-bottom:22px}dialog .eyebrow{margin-bottom:14px}.dialog-rule{height:1px;background:var(--line);margin-bottom:25px}.close{position:absolute;right:16px;top:10px;border:0;background:transparent;font-size:2rem;color:var(--ink);width:40px;height:40px}.status-box{padding:20px;background:var(--blue);margin:24px 0}.status-box strong{font-weight:500}.status-box p{font-size:.875rem;margin:8px 0 0}.close-action{width:100%;justify-content:center}.skip{position:fixed;left:15px;top:-100px;background:white;padding:18px;z-index:20}.skip:focus{top:15px}@media(min-width:1500px){.hero{padding-block:95px}}@media(max-width:900px){.wrap{width:90%}.hero{gap:5%;grid-template-columns:1.2fr .8fr}.identity{padding:25px;min-height:415px}.about,.contact{grid-template-columns:1fr;gap:28px}.section-heading{align-items:start}.steps{gap:25px}nav{gap:20px}.wordmark{font-size:1.6rem}.header-pay{padding:12px}.header-pay span{display:none}.contact-body{gap:30px}}@media(max-width:640px){.preview-note{font-size:.6875rem;padding:8px 5%;gap:12px}.preview-note span{font-size:.75rem}.header{flex-wrap:wrap;padding-block:22px;gap:20px;min-height:auto}.wordmark{font-size:1.6rem}.header nav{order:3;width:100%;justify-content:space-between;gap:15px;border-top:1px solid var(--line);padding-top:8px}.header-pay{font-size:.8125rem}.hero{grid-template-columns:1fr;padding-block:42px;gap:40px}.hero h1{font-size:2.8rem}.hero .eyebrow{margin-bottom:20px}.hero-small{max-width:290px}.identity{min-height:360px;padding:28px}.identity-main{padding:28px 0}.identity-name{font-size:4.2rem}.identity-label{margin-bottom:12px}.identity-bottom{font-size:.75rem}.section{padding-block:45px}.section-heading{display:block;margin-top:25px}.section-heading p{margin-top:24px}.steps{grid-template-columns:1fr;gap:0}.steps li{display:grid;grid-template-columns:35px 1fr;gap:0 16px;padding-block:25px}.step-number{grid-row:span 2;margin:0}.steps h3{margin:0 0 10px}.steps p{grid-column:2}.payment-strip{display:block;margin-top:8px;padding-top:30px}.payment-strip .button{margin-top:25px;width:100%}.contact-body{grid-template-columns:1fr;gap:18px}.contact-note{border-left:0;border-top:1px solid var(--line);padding:25px 0 0}.about-line{flex-direction:column;gap:10px}.footer-top{flex-wrap:wrap;gap:22px}.footer-top>span{order:3;width:100%}.footer-bottom{display:block}.footer-bottom p{margin-top:14px}dialog{padding:38px 25px}.button{font-size:.9375rem}.section-label{font-size:.75rem}}@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*{transition:none!important}}
/* Appointment experience */
.topline{background:var(--ink);color:#dae4e9;font-size:.75rem;letter-spacing:.07em}.topline .wrap{display:flex;justify-content:space-between;gap:20px;padding-block:12px}.topline a{letter-spacing:0}.hero{padding-bottom:65px}.lead{max-width:530px;color:var(--muted);font-size:1.125rem;margin-bottom:30px}.booking{display:grid;grid-template-columns:.85fr 1.35fr;gap:8%;align-items:start;padding-block:90px}.booking-info h2{margin:32px 0 24px}.booking-info>p{max-width:350px;color:var(--muted)}.booking-side{border-top:1px solid var(--line);margin:32px 0;padding-top:26px}.booking-side h3{font-size:1rem;margin-bottom:8px}.booking-side p{font-size:.9375rem;color:var(--muted);margin-bottom:26px}.text-link{font-size:.9375rem;text-decoration:underline;text-underline-offset:5px}.activation-note{font-size:.875rem!important;margin-top:18px}.booking-card{padding:38px;background:#fff;border:1px solid var(--line);box-shadow:0 18px 55px #162a3509;border-top:3px solid var(--ink)}.form-progress{display:flex;padding:0 0 28px;margin:0 0 32px;border-bottom:1px solid var(--line);list-style:none;justify-content:space-between;gap:12px}.form-progress li{display:flex;align-items:center;gap:9px;color:#64717a;font-size:.875rem}.form-progress li span{width:27px;height:27px;display:grid;place-items:center;border:1px solid #c1cbd0;border-radius:50%;font-size:.75rem}.form-progress .current{color:var(--ink);font-weight:600}.form-progress .current span{background:var(--ink);color:#fff;border-color:var(--ink)}.form-progress .complete span{border-color:var(--accent);color:var(--accent)}fieldset{border:0;padding:0;margin:0;min-width:0}fieldset[hidden]{display:none}legend{font-family:Georgia,serif;font-size:1.75rem;line-height:1.2;padding:0;margin-bottom:12px}.field-intro{font-size:.875rem;color:var(--muted);margin-bottom:26px}.service-options{display:grid;gap:12px;margin-bottom:28px}.service-choice{display:flex;gap:13px;align-items:center;padding:18px;border:1px solid var(--line);cursor:pointer}.service-choice:has(input:checked){border-color:#476575;background:#f0f4f6}.service-choice strong{font-size:.9375rem;font-weight:500;display:block}.service-choice small{display:block;font-size:.875rem;color:var(--muted);margin-top:6px;line-height:1.5}.service-choice input{accent-color:var(--ink);width:18px;height:18px;flex:0 0 auto}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:20px}.field-grid label,.field{font-size:.875rem;display:block;line-height:1.5}.field{margin-bottom:20px}input:not([type=radio]):not([type=checkbox]):not([type=hidden]),select{font:inherit;font-size:1rem;display:block;width:100%;background:#fff;color:var(--ink);border:1px solid #b9c6cd;border-radius:0;padding:13px 12px;min-height:49px;margin-top:8px}input:focus,select:focus{outline:2px solid #476575;outline-offset:2px}input::placeholder{color:#73818a}.optional{font-size:.875rem;color:var(--muted);font-weight:400}.field-tip{font-size:.875rem;color:var(--muted);line-height:1.6}.form-actions{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-top:30px;padding-top:22px;border-top:1px solid var(--line)}.form-actions>span{font-size:.875rem;color:var(--muted)}.form-actions .button{padding:16px 19px;font-size:.875rem;gap:10px}.back{background:none;border:0;padding:14px 0;color:var(--muted);font-size:.875rem}.back:hover{color:var(--ink)}.request-summary{display:grid;grid-template-columns:.9fr 1.3fr;gap:13px 20px;padding-block:22px;border-block:1px solid var(--line);margin-block:25px}.request-summary dt{font-size:.875rem;color:var(--muted);line-height:1.5}.request-summary dd{margin:0;font-size:.875rem;overflow-wrap:anywhere;line-height:1.5}.request-note{background:var(--blue);border-left:2px solid #597987;padding:20px;margin-block:24px}.request-note strong{font-size:.9375rem;font-weight:500}.request-note p{font-size:.875rem;color:var(--muted);margin:9px 0 0}.ack{display:flex;align-items:flex-start;gap:12px;font-size:.875rem;line-height:1.6}.ack input{width:18px;height:18px;flex:0 0 auto;accent-color:var(--ink);margin:2px 0 0}.ack a{text-decoration:underline;text-underline-offset:3px}.honeypot{display:none!important}.faq-section{background:#f4f6f7}.faq-layout{display:grid;grid-template-columns:1fr 1.5fr;gap:9%}.faq-layout h2{margin-top:30px}.faq details{border-bottom:1px solid #cdd7dc}.faq details:first-child{border-top:1px solid #cdd7dc}.faq summary{cursor:pointer;padding:23px 30px 23px 0;font-size:1rem;line-height:1.5}.faq details p{font-size:.9375rem;color:var(--muted);padding-bottom:12px}.faq details a{text-decoration:underline}.email-link{font-size:1.0625rem;display:inline-block;margin-bottom:20px;overflow-wrap:anywhere}.next-page{max-width:780px;padding-block:80px}.next-page h1{font-size:3.7rem}.next-page>p{color:var(--muted)}.next-page .button{margin-top:18px}dialog{max-height:88vh;overflow:auto;max-width:650px}dialog p{font-size:.9375rem}dialog a{text-decoration:underline}button:disabled{opacity:.5;cursor:not-allowed}.contact-body{grid-template-columns:1fr 1.3fr}.contact{grid-template-columns:.7fr 2fr}
@media(max-width:950px){.booking{grid-template-columns:1fr 1.4fr;gap:5%}.booking-card{padding:26px}.form-progress{gap:7px}.form-progress li{gap:6px}.form-actions .button{padding:15px 13px}.field-grid{grid-template-columns:1fr}.booking-info h2{font-size:2.5rem}.contact-note{padding-left:22px}.contact{grid-template-columns:1fr}}
@media(max-width:640px){.topline .wrap{justify-content:center;font-size:.75rem}.topline a{display:none}.hero h1{font-size:2.6rem}.lead{font-size:1rem}.booking{grid-template-columns:1fr;gap:28px;padding-block:45px}.booking-info h2{margin-top:22px}.booking-info h2 br{display:none}.booking-side{display:none}.booking-card{padding:24px 18px}.form-progress{gap:6px}.form-progress li{font-size:.875rem}.form-progress li span{width:24px;height:24px}.field-grid{grid-template-columns:1fr}.service-choice{padding:16px 12px}.form-actions{gap:10px}.form-actions .button{font-size:.875rem;padding:15px 12px}.faq-layout{grid-template-columns:1fr;gap:18px}.faq-layout h2{margin-top:24px}.contact-note{padding-left:0}.contact-body{grid-template-columns:1fr}.next-page{padding-block:45px}.next-page h1{font-size:2.7rem}.next-page .button{width:100%;justify-content:center}.request-summary{grid-template-columns:1fr;gap:5px}.request-summary dd{margin-bottom:10px}}
.booking>*{min-width:0}.booking-card,.booking-info{max-width:100%}.service-choice span{min-width:0}.booking-info h2{overflow-wrap:break-word}@media(max-width:640px){.booking{grid-template-columns:minmax(0,1fr)}.booking-info h2 br{display:initial}.form-progress{flex-wrap:wrap;row-gap:12px}.form-actions{flex-wrap:wrap}}
/* Practice directory and consultation pricing */
.header nav{gap:22px;flex-wrap:wrap}.header{gap:20px}.practice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line)}.practice{border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:28px;transition:background .2s}.practice:hover,.practice[open]{background:#f0f4f6}.practice summary{list-style:none;cursor:pointer}.practice summary::-webkit-details-marker{display:none}.practice-no{font:1rem Georgia,serif;color:var(--accent);display:block;margin-bottom:28px}.practice h3{font:1.55rem Georgia,serif;margin-bottom:15px}.practice p{font-size:.9375rem;color:var(--muted)}.practice-more{font-size:.875rem;color:var(--accent)}.practice-detail{padding-top:20px;margin-top:22px;border-top:1px solid var(--line)}.practice-detail a{font-size:.875rem;text-decoration:underline}.calculator-strip{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:30px;background:var(--ink);color:white;margin-top:25px}.calculator-strip strong{font:1.55rem Georgia,serif;display:block}.calculator-strip small{font-size:.9375rem;display:block;color:#c5d2d9;margin-top:10px}.fee-banner{display:grid;grid-template-columns:1fr 1fr;gap:50px;padding:38px;border:1px solid #b7c4cc;background:#fff;margin-bottom:45px}.fee-banner strong{font:3.7rem Georgia,serif}.fee-banner strong small{font-size:1.6rem}.fee-banner .eyebrow{margin-bottom:16px}.fee-banner p{font-size:1rem}.fee-banner .fee-footnote{font-size:.875rem;color:var(--muted)}.calc-layout{display:grid;grid-template-columns:1.15fr 1fr;gap:40px;align-items:start}.calc-layout>*{min-width:0}.calc-result{background:var(--ink);color:white;padding:36px}.calc-result .field-tip{color:#bdcbd2}.calc-result h2{font-size:2.5rem}.calc-result .text-link{display:block;margin-top:25px}.result-row{padding:18px 0;border-bottom:1px solid #40535d;display:flex;flex-direction:column;gap:9px}.result-row span{font-size:.875rem;color:#bdcbd2}.result-row strong{font:1.8rem Georgia,serif}.result-note{color:#e6c2bb;font-size:.9375rem;margin-top:24px}.calc-method{margin-top:36px;border-block:1px solid var(--line);padding:24px 0}.calc-method summary{cursor:pointer}.calc-method p{color:var(--muted);font-size:.9375rem}.calc-method a{text-decoration:underline}#calc-error{color:#a72b26}.booking-side{display:block!important}@media(max-width:1050px){.header{flex-wrap:wrap;padding-block:22px}.header nav{order:3;width:100%;justify-content:space-between}.practice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.header nav{gap:8px 18px;justify-content:flex-start;font-size:.875rem}.practice-grid{grid-template-columns:1fr}.practice{padding:24px}.fee-banner{grid-template-columns:1fr;gap:18px;padding:25px}.calc-layout{grid-template-columns:1fr;gap:22px}.calc-result{padding:26px}.calculator-strip{padding:25px}.calculator-strip strong{font-size:1.35rem}.booking-side{margin-block:22px}.topline .wrap{letter-spacing:.02em}}
