:root{--cream:#fbf8f3;--cream-deep:#f0e4d0;--cream-border:#d9c9a8;--navy:#1b3a5c;--navy-light:#2d5a87;--brass:#e8b86d;--brass-deep:#c9a876;--brass-text:#a88a4a;--text-body:#5c4f3d;--text-muted:#6b5d4a}*{box-sizing:border-box;margin:0;padding:0}body,html{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif;color:var(--navy);background:#fff;-webkit-font-smoothing:antialiased;line-height:1.6}.serif{font-family:Cormorant Garamond,Georgia,Times New Roman,serif}a{color:inherit;text-decoration:none}.page{max-width:1100px;margin:0 auto}.nav{padding:18px 32px;border-bottom:.5px solid var(--cream-border);justify-content:space-between;background:var(--cream)}.nav,.nav-brand{display:flex;align-items:center}.nav-brand{gap:10px}.nav-logo{width:32px;height:32px;border-radius:50%;background:var(--navy);display:flex;align-items:center;justify-content:center;color:var(--brass);font-size:18px}.nav-brand-name{font-family:Cormorant Garamond,Georgia,serif;font-size:18px;letter-spacing:.02em;color:var(--navy)}.nav-links{display:flex;gap:28px;font-size:13px;color:var(--text-muted);letter-spacing:.04em;text-transform:uppercase}.nav-links a{transition:color .15s}.nav-links a:hover{color:var(--navy)}.nav-links a.active{color:var(--navy);border-bottom:1px solid var(--brass-deep);padding-bottom:2px}.nav-menu-btn{display:none;background:none;border:none;font-size:24px;color:var(--navy);cursor:pointer}@media (max-width:768px){.nav{padding:16px 20px}.nav-links{display:none}.nav-menu-btn{display:block}}.hero{padding:72px 32px 64px;text-align:center;background:var(--cream)}.eyebrow{font-size:12px;letter-spacing:.25em;text-transform:uppercase;color:var(--brass-text);margin-bottom:24px}.hero h1{font-family:Cormorant Garamond,Georgia,serif;font-size:48px;line-height:1.15;font-weight:400;margin:0 0 20px;color:var(--navy);letter-spacing:-.01em}.hero h1 .accent{font-style:italic;color:var(--navy-light)}.hero p{font-size:16px;line-height:1.7;color:var(--text-body);max-width:520px;margin:0 auto 36px}.btn-group{display:inline-flex;gap:12px;flex-wrap:wrap;justify-content:center}.btn-primary{display:inline-block;padding:14px 28px;background:var(--navy);color:var(--cream);border-radius:8px;font-size:13px;letter-spacing:.08em;text-transform:uppercase;border:none;cursor:pointer;transition:background .15s}.btn-primary:hover{background:var(--navy-light)}.btn-secondary{display:inline-block;padding:14px 28px;background:transparent;color:var(--navy);border:.5px solid var(--brass-deep);border-radius:8px;font-size:13px;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:background .15s}.btn-secondary:hover{background:var(--cream-deep)}.btn-brass{display:inline-block;padding:14px 30px;background:var(--brass);color:var(--navy);border-radius:8px;font-size:13px;letter-spacing:.08em;text-transform:uppercase;font-weight:500;border:none;cursor:pointer;transition:background .15s}.btn-brass:hover{background:var(--brass-deep)}.practice-bar{display:grid;grid-template-columns:1fr 1fr 1fr;background:var(--cream-deep)}.practice-bar>div{padding:24px 28px;border-right:.5px solid var(--cream-border)}.practice-bar>div:last-child{border-right:none}.practice-bar-label{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--brass-text);margin-bottom:8px}.practice-bar-value{font-size:14px;color:var(--navy);line-height:1.6}.practice-bar-value-sub{color:var(--text-body)}@media (max-width:768px){.practice-bar{grid-template-columns:1fr}.practice-bar>div{border-right:none;border-bottom:.5px solid var(--cream-border)}.practice-bar>div:last-child{border-bottom:none}}.section{padding:72px 32px}.section-cream{background:var(--cream)}.section-center{text-align:center}.section h2{font-family:Cormorant Garamond,Georgia,serif;font-size:36px;font-weight:400;letter-spacing:-.01em;color:var(--navy);margin-bottom:12px}.section-intro{font-size:14px;color:var(--text-body);max-width:460px;margin:0 auto 40px}.doctor-section{padding:72px 32px;display:grid;grid-template-columns:220px 1fr;grid-gap:48px;gap:48px;align-items:center}.doctor-photo{width:220px;height:260px;background:linear-gradient(135deg,var(--cream-deep) 0,#e8d4b0 100%);border-radius:8px;display:flex;align-items:center;justify-content:center;border:.5px solid var(--cream-border);color:var(--brass-text);font-size:52px}.doctor-section h2{font-family:Cormorant Garamond,Georgia,serif;font-size:30px;font-weight:400;margin:0 0 12px;color:var(--navy)}.doctor-section p{font-size:14px;color:var(--text-body);line-height:1.8;margin-bottom:16px}.link-underline{font-size:13px;color:var(--brass-text);letter-spacing:.04em;border-bottom:1px solid var(--brass-deep);padding-bottom:2px}@media (max-width:768px){.doctor-section{grid-template-columns:1fr;text-align:center;padding:56px 24px}.doctor-photo{margin:0 auto;width:200px;height:240px}}.services-band{padding:72px 32px;background:var(--navy)}.services-band,.services-band h2{color:var(--cream)}.services-band .eyebrow{color:var(--brass)}.services-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px;margin-top:40px}.service-card{background:hsla(38,50%,97%,.06);padding:28px 24px;border-radius:8px;border:.5px solid hsla(37,73%,67%,.25)}.service-icon{font-size:24px;color:var(--brass);margin-bottom:14px;display:block}.service-title{font-size:15px;font-weight:500;margin-bottom:6px;color:var(--cream)}.service-desc{font-size:13px;color:hsla(38,50%,97%,.7);line-height:1.65}@media (max-width:768px){.services-grid{grid-template-columns:1fr}}.conditions-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:10px;gap:10px;margin-top:40px}.condition-pill{padding:14px 16px;background:#fff;border:.5px solid var(--cream-border);border-radius:8px;font-size:13px;text-align:center;color:var(--navy);transition:all .15s;cursor:pointer;font-family:inherit;width:100%}.condition-pill:hover{background:var(--cream-deep);border-color:var(--brass-deep)}@media (max-width:768px){.conditions-grid{grid-template-columns:1fr 1fr}}.footer{padding:40px 32px;background:var(--navy);color:var(--cream);text-align:center;border-top:2px solid var(--brass)}.footer-brand{font-family:Cormorant Garamond,Georgia,serif;font-size:15px;letter-spacing:.02em;margin-bottom:8px}.footer-meta{font-size:12px;color:hsla(38,50%,97%,.65);letter-spacing:.04em}.page-header{padding:64px 32px 48px;background:var(--cream);text-align:center}.page-header h1{font-family:Cormorant Garamond,Georgia,serif;font-size:44px;line-height:1.15;font-weight:400;margin:0;color:var(--navy);letter-spacing:-.01em}.page-header h1 .accent{font-style:italic;color:var(--navy-light)}.bio-split{padding:64px 32px;display:grid;grid-template-columns:280px 1fr;grid-gap:48px;gap:48px;align-items:start}.bio-photo{width:280px;height:340px;background:linear-gradient(135deg,var(--cream-deep) 0,#e8d4b0 100%);border-radius:8px;display:flex;align-items:center;justify-content:center;border:.5px solid var(--cream-border);color:var(--brass-text);font-size:60px}.bio-text h2{font-family:Cormorant Garamond,Georgia,serif;font-size:28px;font-weight:400;margin:0 0 6px;color:var(--navy)}.bio-role{font-size:12px;letter-spacing:.15em;text-transform:uppercase;color:var(--brass-text);margin-bottom:20px}.bio-text p{font-size:14px;color:var(--text-body);line-height:1.8;margin-bottom:14px}.credentials-band{padding:56px 32px;background:var(--cream-deep);border-top:.5px solid var(--cream-border);border-bottom:.5px solid var(--cream-border)}.credentials-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:32px;gap:32px}.credential-label{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--brass-text);margin-bottom:12px}.credential-value{font-size:14px;color:var(--navy);line-height:1.7}.philosophy-block{padding:72px 32px;text-align:center}.pull-quote{font-family:Cormorant Garamond,Georgia,serif;font-size:24px;line-height:1.5;color:var(--navy);max-width:560px;margin:0 auto;font-style:italic;font-weight:400}.pull-quote-attr{font-size:12px;letter-spacing:.15em;text-transform:uppercase;color:var(--brass-text);margin-top:24px}@media (max-width:768px){.bio-split{grid-template-columns:1fr;text-align:center;padding:48px 24px}.bio-photo{margin:0 auto;width:240px;height:290px}.credentials-grid{grid-template-columns:1fr}}.service-block{display:grid;grid-template-columns:72px 1fr;grid-gap:28px;gap:28px;padding-bottom:36px;border-bottom:.5px solid var(--cream-border);margin-bottom:36px}.service-block:last-child{border-bottom:none;margin-bottom:0}.service-block-icon{width:72px;height:72px;background:var(--cream-deep);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:30px;color:var(--navy)}.service-block h3{font-family:Cormorant Garamond,Georgia,serif;font-size:24px;font-weight:400;margin:0 0 10px;color:var(--navy)}.service-block p{font-size:14px;color:var(--text-body);line-height:1.75}.cta-band{padding:56px 32px;background:var(--navy);text-align:center}.cta-band p{font-family:Cormorant Garamond,Georgia,serif;font-size:22px;color:var(--cream);margin-bottom:24px;font-weight:400}@media (max-width:768px){.service-block{grid-template-columns:1fr;gap:16px}.service-block-icon{margin:0}}.faq-item{border-top:.5px solid var(--cream-border);padding:24px 0}.faq-item:last-child{border-bottom:.5px solid var(--cream-border)}.faq-question-row{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.faq-question{font-family:Cormorant Garamond,Georgia,serif;font-size:19px;font-weight:400;margin:0;color:var(--navy);flex:1 1}.faq-toggle{font-size:20px;color:var(--brass-text);flex-shrink:0;transition:transform .2s;line-height:1}.faq-toggle.open{transform:rotate(45deg)}.faq-answer{font-size:14px;color:var(--text-body);line-height:1.75;margin-top:12px;padding-right:34px;display:none}.faq-answer.open{display:block}.faq-cta{padding:48px 32px;background:var(--cream-deep);text-align:center}.faq-cta-title{font-family:Cormorant Garamond,Georgia,serif;font-size:20px;color:var(--navy);margin-bottom:8px;font-style:italic}.faq-cta-detail{font-size:13px;color:var(--text-body)}.faq-cta-detail .highlight{color:var(--navy);font-weight:500}.contact-grid{padding:56px 32px;display:grid;grid-template-columns:1fr 1fr;grid-gap:48px;gap:48px}.contact-info-block{margin-bottom:32px}.contact-info-block:last-child{margin-bottom:0}.contact-info-label{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--brass-text);margin-bottom:10px}.contact-info-value{font-size:15px;color:var(--navy);line-height:1.7}.contact-info-value-sub{font-size:13px;color:var(--text-body)}.contact-form{background:var(--cream);border:.5px solid var(--cream-border);border-radius:8px;padding:32px}.contact-form h3{font-family:Cormorant Garamond,Georgia,serif;font-size:22px;font-weight:400;margin:0 0 24px;color:var(--navy)}.field{margin-bottom:16px}.field label{font-size:12px;color:var(--brass-text);letter-spacing:.08em;text-transform:uppercase;display:block;margin-bottom:6px}.field input,.field textarea{width:100%;padding:10px 12px;background:#fff;border:.5px solid var(--cream-border);border-radius:8px;font-size:14px;font-family:inherit;color:var(--navy);transition:border-color .15s}.field input:focus,.field textarea:focus{outline:none;border-color:var(--brass-deep)}.field textarea{min-height:100px;resize:vertical}.map-band{height:280px;background:linear-gradient(135deg,var(--cream-deep) 0,#e8d4b0 100%);display:flex;align-items:center;justify-content:center;border-top:.5px solid var(--cream-border);border-bottom:.5px solid var(--cream-border)}.map-placeholder{text-align:center;color:var(--brass-text)}.map-placeholder-icon{font-size:36px;display:block;margin-bottom:8px}.map-placeholder-label{font-size:12px;letter-spacing:.15em;text-transform:uppercase}@media (max-width:768px){.contact-grid{grid-template-columns:1fr;gap:32px;padding:40px 24px}.hero{padding:56px 24px 48px}.hero h1{font-size:36px}.page-header h1{font-size:34px}.section h2{font-size:28px}.section,.services-band{padding:56px 24px}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(27,58,92,.55);display:flex;align-items:center;justify-content:center;z-index:1000;padding:24px;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:var(--cream);border-radius:12px;max-width:640px;width:100%;max-height:90vh;overflow-y:auto;padding:48px 48px 40px;position:relative;border:.5px solid var(--cream-border);text-align:left;animation:slideUp .25s ease-out}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-close{position:absolute;top:16px;right:16px;width:36px;height:36px;background:transparent;border:none;font-size:28px;line-height:1;color:var(--brass-text);cursor:pointer;border-radius:50%;transition:background .15s;display:flex;align-items:center;justify-content:center;font-family:inherit}.modal-close:hover{background:var(--cream-deep);color:var(--navy)}.modal-eyebrow{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--brass-text);margin-bottom:14px}.modal-title{font-family:Cormorant Garamond,Georgia,serif;font-size:36px;font-weight:400;margin:0 0 4px;color:var(--navy);letter-spacing:-.01em}.modal-aka{font-size:13px;color:var(--text-body);font-style:italic;margin-bottom:24px}.modal-definition{font-size:15px;color:var(--text-body);line-height:1.75;margin-bottom:28px}.modal-section-heading{font-family:Cormorant Garamond,Georgia,serif;font-size:20px;font-weight:500;color:var(--navy);margin:24px 0 12px;padding-bottom:6px;border-bottom:.5px solid var(--cream-border)}.modal-content p{font-size:14px;color:var(--text-body);line-height:1.75;margin:0}.modal-symptoms{list-style:none;padding:0;margin:0}.modal-symptoms li{font-size:14px;color:var(--text-body);line-height:1.6;padding:6px 0 6px 22px;position:relative}.modal-symptoms li:before{content:"";position:absolute;left:4px;top:14px;width:6px;height:6px;background:var(--brass-deep);border-radius:50%}.modal-footer-note{margin-top:32px;padding:20px;background:var(--cream-deep);border-radius:8px;font-size:13px;color:var(--text-body);line-height:1.6;text-align:center}.modal-footer-note a{color:var(--navy);font-weight:500}@media (max-width:640px){.modal-content{padding:36px 24px 28px;max-height:95vh}.modal-title{font-size:28px}}