:root{--navy:#0f2a47;--navy-deep:#08182b;--navy-soft:#1e3a5f;--crimson:#c8202c;--crimson-deep:#9a1822;--crimson-soft:#e8525c;--crimson-tint:#fde9ea;--gold:#c8202c;--gold-soft:#e8525c;--cream:#fbf8f3;--cream-warm:#f1ebde;--ink:#1a2433;--ink-soft:#4a5666;--line:#e4dcca;--heart:#c8202c;--white:#fff;--font-serif:"Cormorant Garamond","Playfair Display",Georgia,"Times New Roman",serif;--font-sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--maxw:1180px;--radius:4px;--shadow-sm:0 1px 2px rgba(15,42,71,.06);--shadow-md:0 4px 16px rgba(15,42,71,.08);--shadow-lg:0 12px 40px rgba(15,42,71,.12);--t:220ms cubic-bezier(.2,.7,.3,1)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--font-sans);font-size:17px;line-height:1.65;color:var(--ink);background:var(--cream);-webkit-font-smoothing:antialiased}h1,h2,h3,h4{font-family:var(--font-serif);font-weight:600;color:var(--navy-deep);letter-spacing:-.01em;line-height:1.2;margin:0 0 .6em}h1{font-size:clamp(2.2rem,4.5vw,3.4rem)}h2{font-size:clamp(1.7rem,3vw,2.3rem)}h3{font-size:1.35rem}h4{font-size:1.1rem;font-family:var(--font-sans);font-weight:600;letter-spacing:.02em;text-transform:uppercase;color:var(--gold);font-size:.85rem}p{margin:0 0 1em;color:var(--ink-soft)}a{color:var(--navy);text-decoration:none;transition:color var(--t)}a:hover{color:var(--gold)}img{max-width:100%;display:block}.container{max-width:var(--maxw);margin:0 auto;padding:0 1.5rem}.eyebrow{font-family:var(--font-sans);font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);font-weight:600;margin-bottom:1rem;display:inline-block}.topbar{background:var(--navy-deep);color:var(--cream);font-size:.9rem;padding:calc(.7rem + env(safe-area-inset-top, 0px)) 0 .55rem;border-bottom:1px solid hsla(0,0%,100%,.06)}.topbar .container{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;flex-wrap:wrap}.topbar a{color:var(--cream);text-decoration:none}.topbar a:hover{color:var(--gold-soft)}.topbar-left,.topbar-right{display:flex;gap:1.5rem;align-items:center;flex-wrap:wrap}.topbar-email,.topbar-item,.topbar-phone{display:inline-flex;align-items:center;gap:.45rem}.topbar svg{width:14px;height:14px;opacity:.85}.topbar-phone{font-size:1.05rem;font-weight:700;letter-spacing:.02em}.topbar-phone svg{width:16px;height:16px;opacity:1}.emergency{color:var(--gold-soft);font-weight:600}.site-header{background:var(--white);border-bottom:1px solid var(--line);position:-webkit-sticky;position:sticky;top:0;z-index:50;box-shadow:var(--shadow-sm)}.site-header .container{justify-content:space-between;padding-top:1rem;padding-bottom:1rem;gap:2rem}.brand,.site-header .container{display:flex;align-items:center}.brand{gap:.85rem;text-decoration:none}.brand-mark{width:44px;height:44px;flex-shrink:0}.brand-text{display:flex;flex-direction:column;line-height:1.1}.brand-name{font-family:var(--font-serif);font-size:1.25rem;font-weight:600;color:var(--navy-deep);letter-spacing:.01em}.brand-tag{font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);font-weight:600;margin-top:2px}.nav{display:flex;align-items:center;gap:2rem}.nav-links{display:flex;gap:1.75rem;list-style:none;padding:0;margin:0}.nav-links a{font-size:.95rem;color:var(--ink);font-weight:500;position:relative;padding:.25rem 0}.nav-links a:after{content:"";position:absolute;left:0;right:0;bottom:-4px;height:2px;background:var(--gold);transform:scaleX(0);transition:transform var(--t);transform-origin:left}.nav-links a.active:after,.nav-links a:hover:after{transform:scaleX(1)}.nav-links a.active{color:var(--navy-deep)}.nav-cta{background:var(--navy);color:var(--cream)!important;padding:.65rem 1.25rem;border-radius:var(--radius);font-size:.9rem;font-weight:600;transition:background var(--t)}.nav-cta:hover{background:var(--navy-deep);color:var(--cream-warm)!important}.nav-cta:after{display:none}.menu-toggle{display:none;background:none;border:0;cursor:pointer;padding:.5rem}.menu-toggle span{display:block;width:24px;height:2px;background:var(--navy-deep);margin:5px 0;transition:transform var(--t),opacity var(--t)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.95rem 1.75rem;font-family:var(--font-sans);font-size:.95rem;font-weight:600;letter-spacing:.02em;border-radius:var(--radius);border:1.5px solid transparent;cursor:pointer;text-decoration:none;transition:all var(--t);line-height:1}.btn-primary{background:var(--navy);color:var(--cream);border-color:var(--navy)}.btn-primary:hover{background:var(--navy-deep);color:var(--cream-warm);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-outline{background:transparent;color:var(--navy);border-color:var(--navy)}.btn-outline:hover{background:var(--navy);color:var(--cream)}.btn-block{display:flex;width:100%;padding:1.4rem 2rem;font-size:1.1rem;letter-spacing:.08em;text-transform:uppercase}.hero{position:relative;background:linear-gradient(135deg,var(--navy-deep) 0,var(--navy) 70%,var(--navy-soft) 100%);color:var(--cream);overflow:hidden;padding:6rem 0 5rem}.hero:before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 20% 30%,rgba(200,32,44,.1) 0,transparent 50%),radial-gradient(circle at 85% 70%,rgba(200,32,44,.06) 0,transparent 55%);pointer-events:none}.hero .container{position:relative;display:grid;grid-template-columns:1.2fr 1fr;grid-gap:3rem;gap:3rem;align-items:center}.hero h1{color:var(--white)}.hero h1 em{font-style:italic;color:var(--gold-soft);font-weight:400}.hero p.lead{font-size:1.15rem;color:hsla(38,52%,96%,.85);line-height:1.7;max-width:36rem;margin-bottom:2rem}.hero-cta{display:flex;gap:1rem;flex-wrap:wrap}.hero-cta .btn-outline{color:var(--cream);border-color:hsla(38,52%,96%,.4)}.hero-cta .btn-outline:hover{background:var(--cream);color:var(--navy-deep);border-color:var(--cream)}.hero-eyebrow{color:var(--gold-soft)}.hero-card{background:hsla(0,0%,100%,.04);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(232,82,92,.25);border-radius:8px;padding:2rem}.hero-card h3{color:var(--gold-soft);font-size:1rem;letter-spacing:.12em;text-transform:uppercase;font-family:var(--font-sans);font-weight:600;margin-bottom:1.25rem}.hero-card ul{list-style:none;padding:0;margin:0}.hero-card li{padding:.75rem 0;border-bottom:1px solid hsla(0,0%,100%,.08);color:var(--cream);font-size:.95rem;display:flex;align-items:center;gap:.75rem}.hero-card li:last-child{border-bottom:0}.hero-card li svg{width:18px;height:18px;color:var(--gold-soft);flex-shrink:0}section{padding:5rem 0}.section-tight{padding:3.5rem 0}.section-cream{background:var(--cream-warm)}.section-white{background:var(--white)}.section-navy{background:var(--navy-deep);color:var(--cream)}.section-navy h2,.section-navy h3{color:var(--white)}.section-navy p{color:hsla(38,52%,96%,.8)}.section-header{text-align:center;max-width:42rem;margin:0 auto 3.5rem}.section-header p{font-size:1.05rem}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:1.75rem;gap:1.75rem}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:2rem;gap:2rem}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:1.5rem;gap:1.5rem}.card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:2rem;transition:transform var(--t),box-shadow var(--t),border-color var(--t)}.card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md);border-color:var(--gold-soft)}.card h3{margin-bottom:.5rem;font-size:1.2rem}.card p{font-size:.95rem;margin-bottom:0}.card-icon{width:44px;height:44px;color:var(--gold);margin-bottom:1.25rem}.card-link{display:inline-block;margin-top:1rem;font-size:.85rem;font-weight:600;color:var(--crimson);letter-spacing:.02em;text-decoration:none;border-bottom:1px solid transparent;transition:border-color var(--t),color var(--t)}.card-link:hover{color:var(--crimson-deep);border-bottom-color:var(--crimson)}.card-link:after{content:" ↗";font-size:.85em}.doctor-feature{display:grid;grid-template-columns:5fr 7fr;grid-gap:3.5rem;gap:3.5rem;align-items:center}.doctor-photo{position:relative;border-radius:4px;overflow:hidden;aspect-ratio:4/5;background:linear-gradient(160deg,var(--navy-soft),var(--navy-deep));box-shadow:var(--shadow-lg)}.doctor-photo:after{content:"";position:absolute;inset:0;border:1px solid rgba(232,82,92,.45);border-radius:4px;margin:12px;pointer-events:none}.doctor-photo img{width:100%;height:100%;object-fit:cover;object-position:center 20%}.doctor-photo .placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--gold-soft);font-family:var(--font-serif);font-size:3rem;font-style:italic}.credentials{display:flex;flex-wrap:wrap;gap:.5rem;margin:1.25rem 0 1.5rem}.credential{background:var(--cream-warm);color:var(--navy-deep);font-size:.78rem;font-weight:600;letter-spacing:.05em;padding:.4rem .85rem;border-radius:2px;border:1px solid var(--line)}.testimonials{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:1.75rem;gap:1.75rem}.testimonial{background:var(--white);padding:2rem;border-left:3px solid var(--gold);border-radius:2px;box-shadow:var(--shadow-sm)}.stars{color:var(--gold);letter-spacing:.15em;font-size:1rem;margin-bottom:1rem}.testimonial blockquote{margin:0 0 1.25rem;font-family:var(--font-serif);font-size:1.1rem;line-height:1.55;color:var(--ink);font-style:italic}.testimonial cite{font-style:normal;font-size:.85rem;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);font-weight:600}.location-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column}.location-map{aspect-ratio:16/10;width:100%;border:0;display:block;background:var(--cream-warm)}.location-body{padding:2rem}.location-body h3{margin-bottom:.5rem}.location-body address{font-style:normal;color:var(--ink-soft);line-height:1.7;margin-bottom:1.25rem}.location-meta{display:flex;flex-direction:column;gap:.35rem;font-size:.95rem;margin-bottom:1.5rem;padding-top:1.25rem;border-top:1px solid var(--line)}.location-meta span{color:var(--ink-soft)}.location-meta strong{color:var(--navy-deep)}.insurance-board{background:var(--white);padding:2rem 2.25rem 2.5rem;border-radius:var(--radius);border:1px solid var(--line)}.insurance-letter{display:grid;grid-template-columns:64px 1fr;grid-gap:1.5rem;gap:1.5rem;padding:1.25rem 0;border-bottom:1px solid var(--cream-warm);align-items:start}.insurance-letter:last-child{border-bottom:0}.insurance-letter>.letter{font-family:var(--font-serif);font-size:2.4rem;line-height:1;color:var(--crimson);font-weight:600}.insurance-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));grid-gap:.4rem 1.5rem;gap:.4rem 1.5rem;list-style:none;padding:.4rem 0 0;margin:0}.insurance-list li{font-size:.95rem;color:var(--ink);padding:.15rem 0}@media (max-width:560px){.insurance-board{padding:1.5rem}.insurance-letter{grid-template-columns:48px 1fr;gap:1rem}.insurance-letter>.letter{font-size:1.8rem}}.appointment-wrap{display:grid;grid-template-columns:5fr 7fr;grid-gap:3rem;gap:3rem;align-items:start}.form-card{background:var(--white);padding:2.5rem;border-radius:var(--radius);border:1px solid var(--line);box-shadow:var(--shadow-md)}.form-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:1.25rem;gap:1.25rem}.field{margin-bottom:1.25rem}.field label{display:block;font-size:.85rem;font-weight:600;letter-spacing:.04em;color:var(--navy-deep);margin-bottom:.4rem;text-transform:uppercase}.field label .req{color:var(--heart)}.field input,.field select,.field textarea{width:100%;padding:.85rem 1rem;font-family:inherit;font-size:1rem;color:var(--ink);background:var(--cream);border:1.5px solid var(--line);border-radius:var(--radius);transition:border-color var(--t),background var(--t)}.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--navy);background:var(--white)}.field textarea{resize:vertical;min-height:120px}.form-note{font-size:.85rem;color:var(--ink-soft);margin-top:1rem;line-height:1.55}.form-success{background:#e8f3ed;border-left:3px solid #2a7d4f;padding:1.25rem 1.5rem;margin-bottom:1.5rem;border-radius:2px;color:#1d5a39;display:none}.form-success.show{display:block}.form-error{background:#fbe6e6;border-left:3px solid #b23a3a;padding:1rem 1.25rem;margin-bottom:1rem;border-radius:2px;color:#7a1f1f;font-size:.92rem;display:none}.form-error.show{display:block}.btn[disabled]{opacity:.6;cursor:not-allowed}.form-step{font-family:var(--font-sans);font-size:.9rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);margin:2rem 0 1rem;border-bottom:1px solid var(--line);padding-bottom:.5rem;font-weight:600}.form-step:first-child{margin-top:0}.form-hint{font-size:.92rem;color:var(--ink-soft);margin:-.25rem 0 1rem}.calendar{background:var(--white);border:1.5px solid var(--line);border-radius:var(--radius);padding:1rem 1.25rem 1.25rem}.cal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.cal-header h3{font-family:var(--font-serif);font-size:1.25rem;color:var(--navy-deep);margin:0;text-transform:none;letter-spacing:0;font-weight:600}.cal-nav{background:var(--cream);border:1px solid var(--line);width:36px;height:36px;border-radius:var(--radius);color:var(--navy-deep);font-size:1.1rem;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:all var(--t)}.cal-nav:hover{background:var(--navy);color:var(--white);border-color:var(--navy)}.cal-nav[disabled]{opacity:.35;cursor:not-allowed}.cal-nav[disabled]:hover{background:var(--cream);color:var(--navy-deep);border-color:var(--line)}.cal-weekdays{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:4px;gap:4px;margin-bottom:6px}.cal-weekdays span{text-align:center;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);font-weight:600;padding:4px 0}.cal-days{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:4px;gap:4px}.cal-day{background:var(--white);border:1px solid var(--line);color:var(--ink);font-family:inherit;font-size:.95rem;padding:0;aspect-ratio:1/1;border-radius:var(--radius);cursor:pointer;transition:all var(--t);display:inline-flex;align-items:center;justify-content:center}.cal-day:hover:not([disabled]){border-color:var(--navy);background:var(--cream-warm)}.cal-day.selected{background:var(--navy);color:var(--white);border-color:var(--navy);font-weight:600;box-shadow:0 2px 6px rgba(15,42,71,.2)}.cal-day.outside{color:var(--ink-soft);opacity:.25;pointer-events:none;background:transparent;border-color:transparent}.cal-day[disabled]{color:var(--ink-soft);opacity:.35;cursor:not-allowed;background:var(--cream)}.selected-dates{margin-top:1rem;padding:.85rem 1rem;background:var(--cream);border:1px solid var(--line);border-radius:var(--radius)}.selected-dates h4{font-family:var(--font-sans);font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);font-weight:600;margin:0 0 .5rem}.selected-chips{display:flex;flex-wrap:wrap;gap:.4rem}.date-chip{gap:.4rem;background:var(--white);border:1px solid var(--navy);color:var(--navy-deep);font-size:.88rem;font-weight:500;padding:.3rem .55rem .3rem .75rem;border-radius:99px}.date-chip,.date-chip button{display:inline-flex;align-items:center}.date-chip button{background:var(--navy);color:var(--white);border:0;width:18px;height:18px;border-radius:50%;cursor:pointer;font-size:.75rem;line-height:1;padding:0;justify-content:center}.date-chip button:hover{background:var(--crimson)}.no-dates-hint{margin:0;font-size:.9rem;color:var(--ink-soft)}.intake-section{background:var(--white);padding:2rem 2.25rem;border:1px solid var(--line);border-radius:var(--radius);margin-bottom:1.5rem;box-shadow:var(--shadow-sm)}.intake-section h3{font-family:var(--font-sans);font-size:.85rem;letter-spacing:.1em;text-transform:uppercase;color:var(--crimson);margin:0 0 .25rem;font-weight:700}.intake-section h2{font-size:1.4rem;margin:0 0 1.5rem}.intake-section .field:last-child{margin-bottom:0}.field-group{display:flex;flex-wrap:wrap;gap:1rem 1.5rem;margin-bottom:1rem}.field-group label{display:inline-flex;align-items:center;gap:.4rem;font-size:.95rem;font-weight:400;color:var(--ink);text-transform:none;letter-spacing:0;margin:0;cursor:pointer}.field-group input[type=checkbox],.field-group input[type=radio]{width:auto;margin:0;accent-color:var(--navy)}.site-footer{background:var(--navy-deep);color:var(--cream);padding:4rem 0 1.5rem}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;grid-gap:3rem;gap:3rem;margin-bottom:3rem}.site-footer h4{color:var(--gold-soft);font-size:.85rem;letter-spacing:.12em;margin-bottom:1.25rem}.site-footer a{color:hsla(38,52%,96%,.75)}.site-footer a:hover{color:var(--gold-soft)}.site-footer p{color:hsla(38,52%,96%,.7);font-size:.92rem;line-height:1.7}.site-footer ul{list-style:none;padding:0;margin:0}.site-footer ul li{padding:.3rem 0;font-size:.92rem}.footer-brand .brand-name{color:var(--white)}.footer-locations address{font-style:normal;color:hsla(38,52%,96%,.75);font-size:.9rem;line-height:1.7;margin-bottom:1rem}.footer-locations strong{color:var(--gold-soft);display:block;margin-bottom:.2rem;font-size:.85rem;letter-spacing:.05em;text-transform:uppercase}.footer-bottom{padding-top:1.5rem;border-top:1px solid hsla(0,0%,100%,.08);display:flex;justify-content:space-between;align-items:center;font-size:.82rem;color:hsla(38,52%,96%,.55);flex-wrap:wrap;gap:1rem}.page-hero{background:linear-gradient(135deg,var(--navy-deep),var(--navy));color:var(--cream);padding:4rem 0 3.5rem;text-align:center}.page-hero h1{color:var(--white);margin-bottom:.5rem}.page-hero p{color:hsla(38,52%,96%,.8);max-width:38rem;margin:0 auto}.page-hero .eyebrow{color:var(--gold-soft)}.prose{max-width:38rem}.prose p{font-size:1.05rem;line-height:1.8;color:var(--ink);margin-bottom:1.3em}.prose ul{padding-left:1.2rem;color:var(--ink);margin:0 0 1.3em}.prose li{margin-bottom:.4rem;line-height:1.7}.prose strong{color:var(--navy-deep)}.split{display:grid;grid-template-columns:1fr 1fr;grid-gap:3.5rem;gap:3.5rem;align-items:start}.split .prose{max-width:none}.fact-list{list-style:none;padding:0;margin:0}.fact-list li{padding:1rem 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:200px 1fr;grid-gap:1.5rem;gap:1.5rem;font-size:.98rem}.fact-list li:last-child{border-bottom:0}.fact-list strong{color:var(--navy-deep);font-family:var(--font-sans);font-size:.82rem;letter-spacing:.08em;text-transform:uppercase}.badges{display:flex;justify-content:center;gap:3rem;flex-wrap:wrap;align-items:center}.badge{text-align:center;max-width:180px}.badge-mark{width:70px;height:70px;margin:0 auto .75rem;color:var(--gold)}.badge p{font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);font-weight:600;margin:0;line-height:1.4}.cta-strip{background:var(--cream-warm);padding:3.5rem 0;text-align:center}.cta-strip h2{margin-bottom:.5rem}.cta-strip p{margin-bottom:2rem;max-width:36rem;margin-left:auto;margin-right:auto}@media (max-width:960px){.hero{padding:4rem 0 3.5rem}.hero .container{grid-template-columns:1fr;gap:2.5rem}.doctor-feature{grid-template-columns:1fr;gap:2rem}.doctor-photo{max-width:360px;margin:0 auto}.appointment-wrap,.grid-2,.grid-3,.grid-4,.split,.testimonials{grid-template-columns:1fr}.split{gap:2.5rem}.footer-grid{grid-template-columns:1fr 1fr;gap:2rem}.fact-list li{grid-template-columns:1fr;gap:.3rem}.nav-links{display:none;position:absolute;top:100%;left:0;right:0;background:var(--white);flex-direction:column;gap:0;padding:1rem 1.5rem 1.5rem;border-bottom:1px solid var(--line);box-shadow:var(--shadow-md)}.nav-links.open{display:flex}.nav-links li{border-bottom:1px solid var(--cream-warm)}.nav-links li:last-child{border-bottom:0;padding-top:.5rem}.nav-links a{padding:1rem 0;display:block}.nav-cta{display:inline-block;margin-top:.5rem}.menu-toggle{display:block}.site-header .container{position:relative}.topbar .container{justify-content:center;text-align:center;gap:.75rem 1rem}.topbar{font-size:.85rem}.topbar-phone{font-size:1.1rem}section{padding:3.5rem 0}}@media (max-width:560px){.footer-grid,.form-row{grid-template-columns:1fr}.footer-bottom{flex-direction:column;text-align:center}.badges{gap:2rem}.topbar-email{display:none}.topbar-phone{font-size:1.15rem}.topbar{font-size:.8rem}.emergency{font-size:.78rem}}:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:2px}@media (prefers-reduced-motion:reduce){*,:after,:before{transition:none!important;animation:none!important;scroll-behavior:auto!important}}