@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Outfit:wght@400;500;600;700;800&display=swap');
:root{--bg:#100e17;--ink:#1a1722;--purple:#9c72df;--purple-dark:#7849c7;--muted:#aaa4b5;--cream:#faf9fc}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:'DM Sans',Arial,sans-serif;line-height:1.65;color:var(--ink);background:var(--bg)}h1,h2,h3{font-family:Outfit,Arial,sans-serif;line-height:1.1;margin:0 0 24px}h1{font-size:clamp(3.3rem,7vw,6.5rem);letter-spacing:-.055em}h2{font-size:clamp(2.5rem,5vw,4.6rem);letter-spacing:-.045em}h3{font-size:1.45rem}p{margin:0 0 22px}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible{outline:3px solid #b79aff;outline-offset:4px}.container{width:min(1160px,calc(100% - 48px));margin:auto}.site-header{position:sticky;top:0;z-index:10;background:rgba(16,14,23,.94);border-bottom:1px solid #ffffff18;backdrop-filter:blur(14px)}.nav{min-height:86px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand img{display:block;width:235px;max-width:42vw;height:auto}.nav nav{display:flex;align-items:center;gap:29px}.nav nav>a:not(.button){color:#eae6ef;font-size:.9rem}.nav nav>a:hover{color:var(--purple)}.button{display:inline-flex;justify-content:center;align-items:center;gap:8px;background:var(--purple);border:1px solid var(--purple);color:#120e1b;border-radius:7px;padding:13px 21px;font-weight:700;transition:.2s}.button:hover{background:#b596f1;transform:translateY(-1px)}.button.small{font-size:.85rem;padding:10px 14px}.button.secondary{background:transparent;color:white;border-color:#6c627c}.button.secondary:hover{border-color:var(--purple)}.button.outline{background:transparent;color:var(--purple-dark)}.menu-toggle{display:none;background:none;border:0;color:white;font-size:1.8rem}.skip{position:absolute;left:-999px;top:0;background:white;padding:8px;z-index:30}.skip:focus{left:8px}.hero{position:relative;overflow:hidden;min-height:660px;background:radial-gradient(ellipse at 83% 58%,#34204f 0%,#100e17 54%);color:white;display:flex;align-items:center}.hero-content{position:relative;z-index:1;padding:100px 0 110px}.hero-content>p{max-width:540px;font-size:1.18rem;color:#c9c2d0}.hero h1 em{font-style:normal;color:var(--purple)}.eyebrow,.section-label{display:block;font-size:.75rem;font-weight:800;letter-spacing:.17em;color:var(--purple-dark);margin-bottom:26px}.eyebrow{color:#c4a5f7}.dot{display:inline-block;width:8px;height:8px;background:#91e4b4;border-radius:50%;margin-right:8px}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.hero-meta{color:#b5aabe;font-size:.9rem;margin-top:35px}.hero-art{position:absolute;right:-130px;top:16%;width:550px;height:550px;opacity:.32;pointer-events:none}.ring{width:100%;height:100%;border:75px solid var(--purple);border-left-color:transparent;border-radius:50%;transform:rotate(-35deg);display:grid;place-items:center}.ring span{font:800 280px Outfit;transform:rotate(35deg);color:#e5d2ff}.section{padding:110px 0}.light{background:var(--cream)}.dark{background:#17131f;color:white}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.two-col p{max-width:540px;color:#625b6c}.purple{color:var(--purple-dark)}.text-link{color:var(--purple-dark);font-weight:800}.about-panel{background:linear-gradient(140deg,#291d3a,#130f1e);color:white;border-radius:20px;min-height:385px;padding:65px 52px;display:flex;flex-direction:column;justify-content:center;box-shadow:0 30px 65px #20112a1c}.about-panel h3{font-size:2.5rem;margin:0}.about-panel p{color:#d3c5e0}.panel-mark{font-size:3rem;color:var(--purple);margin-bottom:20px}.panel-rule{height:2px;background:var(--purple);width:65px;margin:20px 0}.section-intro{color:#c3bacb;max-width:550px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:45px}.service-card{padding:34px;border:1px solid #40344d;border-radius:14px;background:#211b2b}.service-card p{color:#c6bccd;margin:0}.service-icon{font-size:2.5rem;color:#b38aec;margin-bottom:27px}.fine{color:#b7adbf;font-size:.82rem;margin-top:25px}.patient-panel{background:#fff;border:1px solid #e9e3ef;border-radius:20px;padding:38px}.step{display:flex;gap:24px;padding:23px 0;border-bottom:1px solid #eee9f2}.step:last-child{border:0}.step b{color:var(--purple-dark);font:700 1.5rem Outfit}.step h3{margin:0 0 5px}.step p{margin:0}.contact-section{background:#20172e;color:white}.contact-section .two-col p{color:#c8bdd3}.contact-section .purple{color:#b992f3}.contact-list{display:grid;gap:22px;margin-top:40px}.contact-list span{display:block;color:#b99adf;font-size:.75rem;letter-spacing:.13em;font-weight:800}.contact-list a,.contact-list address{display:block;font-size:1.2rem;font-style:normal;color:white}.map-panel{min-height:390px;border-radius:20px;background:radial-gradient(circle at top,#67418e,#342146 60%,#281a38);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:40px}.map-panel h3{font-size:2rem}.map-symbol{font-size:4rem;color:#d1b4fa}.map-panel p{color:#e1d3ee!important}footer{background:#0c0a10;color:#d2cadb;padding:45px 0}.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:30px}.footer-inner img{width:205px}.footer-inner p{margin:0}.footer-inner small{color:#9c91a7}.footer-inner>a{color:#bb9aeb;font-weight:700}.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:900px){.nav nav{gap:14px}.brand img{width:185px}.two-col{gap:40px}.hero-art{right:-300px}.cards{grid-template-columns:1fr 1fr}}@media(max-width:700px){.nav{min-height:74px}.menu-toggle{display:block}.nav nav{display:none;position:absolute;top:74px;left:0;right:0;background:#16111f;padding:24px;flex-direction:column;align-items:stretch;border-bottom:1px solid #554267}.nav nav.open{display:flex}.hero{min-height:600px}.hero-content{padding:80px 0}.hero-art{opacity:.12}.section{padding:75px 0}.two-col,.cards{grid-template-columns:1fr}.about-panel{min-height:290px;padding:38px}.footer-inner{flex-direction:column;text-align:center}.container{width:min(100% - 36px,1160px)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
