:root{--purple:#54298b;--purple-dark:#3f1f69;--ink:#202733;--muted:#586170;--line:#dfe3e9;--light:#f5f7fa;--pale-purple:#f5f1fa}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:104px}body{margin:0;background:#fff;color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}a{color:inherit}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid #9b64c6;outline-offset:5px}button{font:inherit}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:Arial,Helvetica,sans-serif;font-style:normal;font-weight:600}h1{font-size:clamp(34px,3.5vw,48px);line-height:1.2;letter-spacing:-.025em}h2{font-size:28px;line-height:1.3;letter-spacing:-.015em}h3{font-size:19px;line-height:1.4;letter-spacing:-.01em}.container{width:min(1160px,calc(100% - 80px));margin-inline:auto}.section{padding:64px 0}.skip-link{position:fixed;top:-100px;left:15px;background:white;padding:12px;z-index:100}.skip-link:focus{top:10px}.notice{background:var(--purple-dark);color:#fff;font-size:12px;line-height:1.6}.notice-inner{display:flex;justify-content:space-between;gap:20px;padding-block:9px}.notice strong{font-weight:600}.notice a{text-decoration:none;font-weight:600;white-space:nowrap}.header{position:sticky;top:0;z-index:20;background:#fff;border-bottom:1px solid var(--line)}.header-inner{min-height:93px;display:flex;justify-content:space-between;align-items:center;gap:24px}.brand{display:flex;align-items:center;gap:13px;text-decoration:none;flex-shrink:0}.brand img{width:83px;height:60px;object-fit:contain}.brand-name{font-size:18px;font-weight:600;line-height:1.35;letter-spacing:-.02em}.brand-name>span{display:block;margin-top:3px;font-weight:400;font-size:11px;letter-spacing:0;color:var(--muted)}.header nav{display:flex;align-items:center;gap:24px}.header nav>a:not(.button){font-size:12px;text-decoration:none;font-weight:500;white-space:nowrap}.header nav>a:not(.button):hover{color:var(--purple);text-decoration:underline;text-underline-offset:5px}.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:47px;padding:12px 19px;background:var(--purple);color:#fff;border:1px solid var(--purple);border-radius:5px;text-decoration:none;font-size:14px;font-weight:600;line-height:1.5;transition:background .15s}.button:hover{background:var(--purple-dark)}.button.secondary{color:var(--purple);background:#fff;border-color:#c5b7d7}.button.secondary:hover{background:var(--pale-purple)}.button.small{font-size:12px;min-height:41px;padding:10px 15px}.text-link{display:inline-flex;align-items:center;gap:12px;font-size:13px;font-weight:600;color:var(--purple);text-decoration:none;line-height:1.6}.text-link:hover{text-decoration:underline;text-underline-offset:4px}.text-link>span[aria-hidden]{font-size:18px}.menu-toggle{display:none}.hero{padding:62px 0;background:var(--light);border-bottom:1px solid var(--line)}.hero-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:72px;align-items:center}.eyebrow{font-size:11px;font-weight:600;letter-spacing:.12em;color:var(--purple);margin-bottom:19px}.hero-description{font-size:16px;color:var(--muted);line-height:1.8;max-width:575px;margin-top:22px}.hero-description strong{font-weight:600;color:#404957}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:27px}.clinic-info{background:#fff;border:1px solid var(--line);border-top:3px solid var(--purple);border-radius:5px;padding:25px 28px}.clinic-info h2{font-size:18px;letter-spacing:0}.clinic-info dl{margin:17px 0 23px}.clinic-info dl>div+div{margin-top:18px}.clinic-info dt{font-size:11px;font-weight:600;color:var(--muted);margin-bottom:6px;text-transform:uppercase;letter-spacing:.06em}.clinic-info dd{font-size:14px;line-height:1.7;margin:0}.clinic-info .phone{font-size:20px;font-weight:600;text-decoration:none;color:var(--purple)}.appointment-badge{display:flex;align-items:center;gap:9px;background:var(--pale-purple);padding:10px 12px;font-size:12px;color:var(--purple-dark);font-weight:600;border-radius:4px}.appointment-badge svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.5;flex-shrink:0}.section-heading{margin-bottom:28px}.section-heading>p{font-size:14px;color:var(--muted);line-height:1.75;margin-top:10px}.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.service-card{padding:28px 30px;border:1px solid var(--line);border-radius:5px;background:#fff}.service-icon{display:grid;place-items:center;background:var(--pale-purple);color:var(--purple);border-radius:5px;width:42px;height:42px;margin-bottom:18px}.service-icon svg{width:24px;height:24px;stroke:currentColor;stroke-width:1.4;fill:none;stroke-linecap:round;stroke-linejoin:round}.service-card p{font-size:14px;line-height:1.85;color:var(--muted);margin:12px 0 20px;max-width:440px}.referral-section{padding:0 0 64px}.referral-panel{display:grid;grid-template-columns:1fr 1.4fr;gap:55px;background:var(--pale-purple);border:1px solid #e1d8eb;border-left:4px solid var(--purple);border-radius:4px;padding:32px}.section-label{display:block;font-size:10px;letter-spacing:.1em;font-weight:600;color:var(--purple);margin-bottom:12px;line-height:1.6}.referral-panel h2{font-size:24px;line-height:1.4;max-width:320px}.referral-copy>p{font-size:14px;line-height:1.8;color:#48505d}.referral-clarification{margin-top:14px}.referral-clarification strong{font-weight:600}.referral-copy .text-link{margin-top:17px}.appointments-section{border-top:1px solid var(--line)}.steps{display:grid;grid-template-columns:repeat(3,1fr);list-style:none;gap:38px;padding:0;margin:30px 0 0}.steps li{display:flex;gap:15px;align-items:flex-start}.step-number{display:grid;place-items:center;flex:0 0 31px;height:31px;background:var(--pale-purple);border:1px solid #e1d5ef;border-radius:50%;font-size:13px;font-weight:600;color:var(--purple)}.steps h3{font-size:16px;line-height:1.5;margin:3px 0 10px;letter-spacing:0}.steps p{font-size:13px;line-height:1.85;color:var(--muted)}.steps a{color:var(--purple);text-underline-offset:3px;white-space:nowrap}.contact-section{background:var(--light);border-top:1px solid var(--line)}.contact-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:70px;align-items:start}.contact-description{font-size:14px;color:var(--muted);line-height:1.85;max-width:350px;margin-top:15px}.contact-grid .button{margin-top:23px}.contact-details{display:grid;grid-template-columns:1fr 1fr;gap:35px;padding-top:25px}.contact-details h3{font-size:15px;letter-spacing:0;margin-bottom:11px}.contact-details address,.contact-details p{font-size:14px;font-style:normal;color:var(--muted);line-height:1.85}.contact-details p strong{font-weight:600;color:var(--ink)}.contact-details .text-link{margin-top:15px}.footer{padding:27px 0;background:#fff;border-top:1px solid var(--line)}.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:25px}.footer-inner strong{font-size:13px;font-weight:600}.footer-inner span{display:block;font-size:11px;color:var(--muted);margin-top:4px}.footer-inner p{font-size:10px;line-height:1.8;color:var(--muted);text-align:right}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1100px){.container{width:calc(100% - 56px)}.header nav{gap:16px}.brand-name{font-size:16px}.brand img{width:69px;height:50px}.brand{gap:9px}.header nav>a:not(.button){font-size:11px}.button.small{font-size:11px;padding:10px 13px}.hero-grid{gap:36px;grid-template-columns:1.5fr 1fr}.hero-description{font-size:15px}.clinic-info{padding:23px}.steps{gap:24px}.contact-grid{gap:45px}.referral-panel{gap:35px}}
@media(max-width:850px){.header-inner{min-height:84px}.brand-name{font-size:15px}.brand-name>span{font-size:10px}.brand img{width:65px}.header nav{gap:13px}.header nav>a:not(.button){font-size:10px}.header nav .button{font-size:10px;padding:9px 10px}.hero-grid{gap:27px}.hero-actions .button{font-size:12px;padding:11px 13px}.service-card{padding:25px}.contact-grid{grid-template-columns:1fr 1.2fr;gap:35px}.contact-details{gap:20px}.referral-panel{padding:27px;gap:25px}}
@media(max-width:760px){html{scroll-padding-top:90px}.container{width:calc(100% - 40px)}.notice{font-size:10px}.notice-inner{gap:15px;padding-block:9px}.notice-inner>a{display:none}.header-inner{min-height:78px}.brand img{width:69px;height:50px}.brand-name{font-size:16px}.brand-name>span{font-size:10px}.menu-toggle{display:flex;gap:7px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:4px;padding:9px 10px;color:var(--ink);font-size:11px;cursor:pointer}.menu-toggle svg{fill:none;stroke:currentColor;stroke-width:1.5}.header nav{display:none;position:absolute;left:0;right:0;top:100%;background:#fff;border-bottom:1px solid var(--line);padding:10px 20px 20px;gap:0}.header nav.is-open{display:flex;flex-direction:column;align-items:stretch}.header nav>a:not(.button){font-size:14px;padding:13px 4px}.header nav>.button{font-size:13px;margin-top:9px;min-height:44px}.hero{padding:39px 0}.hero-grid{grid-template-columns:1fr;gap:30px}.eyebrow{font-size:10px;margin-bottom:15px}h1{font-size:34px;line-height:1.25;letter-spacing:-.025em}h1 br{display:none}.hero-description{font-size:15px;margin-top:19px;line-height:1.8}.hero-actions{gap:10px;margin-top:23px}.hero-actions .button{font-size:12px;padding:12px 14px;min-height:46px}.clinic-info{padding:23px;border-top-width:3px}.clinic-info dl{display:grid;grid-template-columns:1.2fr 1fr;gap:18px;margin:17px 0 20px}.clinic-info dl>div+div{margin-top:0}.clinic-info .phone{font-size:17px}.clinic-info dd{font-size:13px}.clinic-info dt{font-size:10px}.clinic-info h2{font-size:18px}.section{padding:44px 0}h2{font-size:25px}.section-heading{margin-bottom:24px}.section-heading>p{font-size:13px}.service-grid{grid-template-columns:1fr;gap:16px}.service-card{padding:24px}.service-card h3{font-size:19px}.service-card p{font-size:14px;margin-bottom:17px;max-width:none}.service-icon{margin-bottom:16px}.referral-section{padding-bottom:44px}.referral-panel{grid-template-columns:1fr;gap:19px;padding:25px 22px}.referral-panel h2{font-size:23px;max-width:none}.referral-copy>p{font-size:14px}.section-label{font-size:9px;margin-bottom:9px}.steps{grid-template-columns:1fr;gap:24px;margin-top:27px}.steps li{gap:14px}.steps h3{font-size:16px;margin-bottom:7px}.steps p{font-size:13px}.contact-grid{grid-template-columns:1fr;gap:30px}.contact-description{max-width:none;font-size:14px}.contact-grid .button{margin-top:20px}.contact-details{border-top:1px solid var(--line);padding-top:25px;gap:25px}.contact-details h3{font-size:14px}.contact-details address,.contact-details p{font-size:13px}.footer-inner{align-items:flex-start;flex-direction:column;gap:15px}.footer-inner p{text-align:left;font-size:10px}.footer-inner p br{display:none}}
@media(max-width:380px){.container{width:calc(100% - 32px)}h1{font-size:30px}.brand-name{font-size:14px}.brand-name>span{font-size:9px}.brand img{width:57px}.brand{gap:8px}.menu-toggle{padding:8px}.clinic-info dl{grid-template-columns:1fr;gap:17px}.contact-details{grid-template-columns:1fr;gap:25px}.hero-actions{align-items:stretch;flex-direction:column}.hero-actions .button{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
@media print{.header{position:static}.menu-toggle,.header nav,.hero-actions{display:none}.container{width:100%}.section,.hero{padding:24px 0}.referral-section{padding-bottom:24px}.button{color:var(--purple);background:#fff}.hero-grid{grid-template-columns:1.6fr 1fr;gap:30px}.footer{padding:15px 0}}
