/* Vera: charcoal architecture, warm gold, ivory and restrained motion. */
:root{--ink:#f4f0e8;--black:#080808;--paper:#f4f0e8;--muted:#cdc4b8;--line:#cfc6ba23;--gold:#ddc393;--serif:DM,Arial,sans-serif;--accent:#ddc393}
body{background:#0c0c0c;color:var(--paper)}
h1,h2{font-family:var(--sans);font-weight:600;letter-spacing:-.045em}h3{font-weight:600}
em{color:var(--gold)}
.header{background:#0c0c0ccf;backdrop-filter:blur(22px);border-bottom-color:#d4cbbf23;transition:background .4s,box-shadow .4s}.header.is-scrolled{background:#0c0c0ced;box-shadow:0 8px 32px #0004}.header::after{content:'';position:absolute;bottom:-1px;left:0;height:2px;width:100%;transform:scaleX(var(--page-progress,0));transform-origin:left;background:linear-gradient(90deg,var(--gold),var(--accent))}
.brand strong{letter-spacing:.12em}.nav a,.footer a{color:#ede4d8}.nav a:hover{color:var(--accent)}.selection-track{background:var(--accent);box-shadow:0 0 12px #ddc39388}.language{border-radius:7px}.language button{border-radius:4px}.menu-toggle{border-radius:7px}.mobile-menu{background:#0c0c0cf7}
.case-hero,.page-intro,.doctor-page,.contact-page{background:radial-gradient(ellipse at 85% 35%,#40372b88,transparent 58%),linear-gradient(125deg,#080808,#171717);position:relative;isolation:isolate}
.case-hero{padding-top:68px}.case-hero::before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background-image:linear-gradient(#d4cbbf08 1px,transparent 1px),linear-gradient(90deg,#d4cbbf08 1px,transparent 1px);background-size:64px 64px;mask-image:linear-gradient(90deg,transparent,#000)}
.future-field{position:absolute;inset:0;z-index:-1;overflow:hidden;pointer-events:none}.future-field canvas{display:block;width:100%;height:100%;opacity:.7}.future-field::after{content:'';position:absolute;width:550px;height:550px;top:8%;right:4%;border-radius:50%;background:radial-gradient(circle,#c7a97511,transparent 65%);box-shadow:0 0 140px #c7a97514;animation:vera-breathe 8s ease-in-out infinite alternate}
.case-hero-intro h1{font-size:clamp(54px,5.3vw,80px);line-height:1.06;max-width:10ch;font-weight:600}.case-hero-intro h1 em{color:var(--gold);background:linear-gradient(110deg,#f4e3c3,#cdb485 60%,#f2e7d3);background-clip:text;-webkit-text-fill-color:transparent}
.case-hero-intro>.eyebrow{color:#e0d7cb;display:flex;align-items:center;gap:12px}.case-hero-intro>.eyebrow::before{content:'';width:7px;height:7px;background:var(--accent);border-radius:50%;box-shadow:0 0 16px #ddc39399;flex:none}
.case-hero-stage{position:relative;padding:24px;border:1px solid #d9d0c436;border-radius:18px;background:linear-gradient(145deg,#f0e7db0a,#eae1d502);box-shadow:0 24px 75px #0004,inset 0 1px #f4ebdf16;backdrop-filter:blur(12px)}
.case-hero-stage::before,.case-hero-stage::after{content:'';position:absolute;width:45px;height:45px;pointer-events:none;border-color:#ddc393;border-style:solid;opacity:.55}.case-hero-stage::before{left:-1px;top:-1px;border-width:1px 0 0 1px;border-radius:18px 0 0}.case-hero-stage::after{right:-1px;bottom:-1px;border-width:0 1px 1px 0;border-radius:0 0 18px}
.case-image-pair{gap:10px}.case-image-pair figure{border-radius:8px;overflow:hidden;background:#090909}.case-image-pair img{filter:none;transform:none!important;animation:none!important}.case-image-label{border-color:#efe6da33;background:#111111eb;color:#f5eee1;border-radius:4px}.case-hero-copy h2{font-family:var(--sans);font-size:27px;font-weight:600}.case-hero-copy .eyebrow{color:#c7ad80}.case-hero-controls{border-top-color:#dad1c526}.case-hero-controls button:hover{background:#c8bfb31c;border-color:#ddc39377}.case-hero-progress{background:#e5dcd01a}.case-hero-progress span{background:linear-gradient(90deg,var(--gold),var(--accent))}.case-hero-note{border-color:#d8cfc325}
.button{position:relative;overflow:hidden;border-radius:7px;transition:box-shadow .3s,background .3s,transform .3s}.button-gold{background:linear-gradient(120deg,#efdbb4,#c7a975);color:#111111;border-color:#e3c999;box-shadow:0 4px 24px #d6b77716}.button-gold:hover{background:#f2dfbc;box-shadow:0 8px 35px #d6b77733;transform:translateY(-2px)}.button::before{content:'';position:absolute;inset:-50% auto -50% -60%;width:35%;background:linear-gradient(90deg,transparent,#fff5,transparent);transform:skewX(-20deg);pointer-events:none}.button:hover::before{animation:vera-sheen .8s ease}.button-dark{background:#252525;border-color:#ddc39355;color:#f4f0e8}.button-dark:hover{background:#333333}
.text-link{color:#f0e7db;border-bottom-color:#b6ada14d}.text-link:hover{color:var(--accent)}.floating-contact{background:#1c1c1ce8;color:#faf1e5;border:1px solid #d4cbbf4d;border-radius:8px;box-shadow:0 10px 30px #0005}
.section-pad{border-color:var(--line)}.introduction,.planning,.cases,.consultation,.contact-faq,.consultation-steps,.focus-band{background:transparent}.introduction em,.planning h2 em,.consultation em,.cases em,.case-section-heading em,.contact-faq em{color:var(--gold)}
.intro-copy>p:not(.large-copy),.consultation-aside>p,.planning-steps p,.treatment-panel p:not(.panel-lead),.consultation-steps p,.case-context dd,.case-preview-grid>article>p,.case-section-heading>p,.case-section-heading>.section-note,.cases>.fine-print,.faq-list p,.page-lead{color:#d3cabe}.introduction .eyebrow,.planning .eyebrow,.case-context dt,.contact-role,.focus-band>.eyebrow,.location,.hero-location{color:#ddc393}.planning-steps li>span,.panel-index,.consultation-steps article>span{color:#ddc393}
.case-preview-grid>article,.case-grid>article{padding:24px;border:1px solid #d0c7bb2b;border-radius:14px;background:linear-gradient(140deg,#222222,#151515);box-shadow:0 15px 50px #0002;transition:border-color .4s,box-shadow .4s}.case-preview-grid>article:hover,.case-grid>article:hover{border-color:#cbc2b65a;box-shadow:0 20px 60px #0004}.case-context dt{font-size:12px}.case-preview-grid>article>h3{margin-top:20px;color:#f4f0e8}
.planning{background:radial-gradient(ellipse at 12% 40%,#b99a641a,transparent 70%)}.planning-steps li{border-color:#d3cabe2b}.focus-band{border-color:#cfc6ba2b}.treatment-tabs button{color:#d2c9bd}.treatment-tabs button[aria-selected=true]{color:var(--accent)}.treatment-panel{border-color:#cfc6ba2b}.treatment-panel h2,.planning h2,.consultation h2{font-weight:600}
.doctor-portrait{border-radius:14px;overflow:hidden;border:1px solid #d8cfc334}.credentials{background:#141414}.credentials-scene{border-radius:14px}.credential-links .document-link{border-color:#cec5b92b;color:#ede4d8}.document-link>span:last-child{color:var(--gold)}.brand-section{background:#111111}.brand-section>img{border-radius:14px}
.contact-card{padding:32px;border:1px solid #d5ccc038;border-radius:16px;background:linear-gradient(145deg,#2d2b2899,#171717);box-shadow:0 20px 60px #0003}.contact-cities{font-family:var(--sans);font-weight:600}.person-contact h3{color:#f4f0e8}.contact-people{border-color:#d6cdc12b}.faq-list details,.faq-list summary{border-color:#d6cdc12b;color:#f7eee2}.footer{background:#080808;border-top:1px solid #ddd4c820;color:#f5ece0}.footer small,.footer>p{color:#c5bcb0}
.motion-control{position:absolute;right:var(--gutter,6vw);bottom:13px;background:transparent;border:0;color:#c6bdb1;font:11px/1.5 var(--sans);padding:8px 0;z-index:2;letter-spacing:.03em}.motion-control:hover{color:var(--accent)}
@keyframes vera-breathe{from{transform:translate3d(-12px,-8px,0) scale(.9);opacity:.45}to{transform:translate3d(18px,14px,0) scale(1.12);opacity:1}}
@keyframes vera-sheen{to{left:150%}}
@media(max-width:1200px){.case-hero-stage{padding:18px}.case-hero-intro h1{font-size:clamp(50px,5.5vw,70px)}}
@media(max-width:850px){.case-hero{padding-top:42px}.case-hero-intro h1{font-size:clamp(52px,9vw,76px)}.case-hero-stage{padding:18px}.case-hero-copy{min-height:0}.case-hero-copy h2{font-size:25px}.case-hero-note{padding-bottom:62px}.case-hero-grid{gap:38px}.motion-control{bottom:15px}.case-preview-grid>article,.case-grid>article{padding:22px}}
@media(max-width:600px){.case-hero-intro h1{font-size:clamp(43px,11.6vw,62px);line-height:1.09}.case-hero-stage{padding:12px;border-radius:12px}.case-image-pair{gap:5px}.case-hero-copy{padding-top:18px}.case-hero-copy h2{font-size:24px}.case-hero-controls{gap:4px}.case-hero-controls button{width:35px;min-width:35px;height:40px}.case-hero-controls [data-case-dot]{width:20px;min-width:20px}.case-hero-controls [data-case-count]{min-width:48px;font-size:11px}.case-hero-dots{gap:0}.case-image-label{font-size:10px}.contact-card{padding:24px}.case-preview-grid>article,.case-grid>article{padding:18px}.introduction h2,.planning h2,.case-section-heading h2,.consultation h2{font-size:clamp(34px,9vw,45px)}.case-hero-intro>.eyebrow{font-size:10px;letter-spacing:.08em}.hero-location{font-size:11px}.case-hero-stage::before,.case-hero-stage::after{border-radius:12px}.case-hero-note .text-link{font-size:13px}}
@media(prefers-reduced-motion:reduce){.future-field::after,.button::before{animation:none!important}.button:hover{transform:none}.future-field canvas{opacity:.45}.header,.case-preview-grid>article,.case-grid>article{transition:none}}
html.effects-paused .future-field::after{animation-play-state:paused}html.effects-paused .case-hero-intro *,html.effects-paused .case-hero-stage{animation:none!important}
main h1 em,main h2 em,main h3 em{color:var(--gold)}
main .eyebrow{color:#ddc393}main .fine-print,main .section-note{color:#d0c7bb}
.case-section-heading h2 em,.cases>h2 em,.introduction h2 em,.planning h2 em,.consultation h2 em,.brand-section h2 em{color:var(--gold)}
/* Complete transparent logo: larger in the masthead and free of a backing tile. */
.header .brand img{width:116px;height:116px;object-fit:contain;background:transparent;border:0;border-radius:0}
.header{min-height:138px;padding-top:10px;padding-bottom:10px}.header .brand{gap:20px}
.brand-section>img{background:transparent;border:0;border-radius:0}
@media(max-width:1000px){.header .brand img{width:94px;height:94px}.header{min-height:114px}.header .brand{gap:14px}}
@media(max-width:600px){.header .brand img{width:82px;height:82px}.header{min-height:100px;padding-top:8px;padding-bottom:8px}.header .brand span{display:none}.header .brand{gap:0}.header-actions{gap:8px}}
@media(max-width:360px){.header .brand img{width:76px;height:76px}.header{min-height:92px}}
html{scroll-padding-top:calc(var(--header-bottom,138px) + 16px)}

/* Doctor portrait and an appointment invitation on the landing. */
.introduction{align-items:center;grid-template-columns:minmax(0,1.12fr) minmax(0,1fr)}
.landing-doctor-copy{min-width:0}.landing-doctor-copy .intro-copy{padding-top:28px;max-width:530px}.landing-doctor-portrait{width:100%;max-width:480px;justify-self:end}.doctor-intro-actions{display:flex;align-items:center;flex-wrap:wrap;gap:14px 24px;margin-top:28px}.doctor-intro-actions .button,.doctor-intro-actions .text-link{margin-top:0}.landing-doctor-copy .intro-copy>.text-link{margin-top:20px}
@media(max-width:850px){.introduction{grid-template-columns:1fr;gap:34px}.landing-doctor-portrait{justify-self:center;max-width:440px}.landing-doctor-copy .intro-copy{max-width:none}}
@media(max-width:600px){.landing-doctor-copy .intro-copy{padding-top:22px}.doctor-intro-actions{align-items:flex-start;flex-direction:column;gap:10px}}
/* Refined navigation system and shared controls. */
:root{--panel-border:#d7cec22b;--control-radius:10px}
.header{gap:24px}.nav{gap:10px}.nav a{padding:12px 16px;border-radius:8px;transition:background .25s,color .25s}.nav a:hover{background:#d2c9bd0b}.nav a[aria-current=page]{background:#dad1c510;color:#f0dfbb}.nav .selection-track{display:none}.nav a.nav-contact{border-radius:8px;border-color:#ddc39360;padding:12px 20px}
.language{padding:3px;gap:3px;border-radius:10px;background:#141414}.language button{min-height:38px;border-radius:6px;transition:background .25s,color .25s}.language button[aria-pressed=true]{background:#dfc89e;box-shadow:0 2px 6px #0003}
.header .menu-toggle{border:1px solid #cec5b941;border-radius:10px;background:linear-gradient(145deg,#2c292570,#171717);min-height:48px;width:98px;min-width:98px;padding:0 13px;display:none;flex-direction:row;gap:12px;color:#f7eee2;transition:border-color .25s,background .25s}.header .menu-toggle:hover{border-color:#ecd6af88;background:#33302b}.header .menu-toggle .menu-toggle-label{width:auto;height:auto;background:none;font-size:12px;font-weight:600;letter-spacing:.02em}.header .menu-toggle .menu-toggle-icon{display:grid;position:relative;grid-template-columns:5px 5px;grid-template-rows:5px 5px;gap:4px;width:14px;height:14px;background:none;flex:none}.menu-toggle-icon i{width:5px;height:5px;border:1px solid #ece3d7;border-radius:1px;transition:opacity .2s,transform .3s}.menu-toggle-icon::before,.menu-toggle-icon::after{content:'';position:absolute;left:-2px;top:6px;width:18px;height:1px;background:#f0dfbb;opacity:0;transition:transform .3s,opacity .2s}.menu-toggle[aria-expanded=true] .menu-toggle-icon i{opacity:0;transform:scale(.4)}.menu-toggle[aria-expanded=true] .menu-toggle-icon::before{opacity:1;transform:rotate(45deg)}.menu-toggle[aria-expanded=true] .menu-toggle-icon::after{opacity:1;transform:rotate(-45deg)}.header .menu-toggle[aria-expanded=true]{border-color:#dfc89e88;background:#302c27}
.menu-backdrop{position:fixed;inset:var(--header-bottom,114px) 0 0;background:#0505059c;backdrop-filter:blur(8px);z-index:28}.mobile-menu{inset:var(--header-bottom,114px) 0 0 auto;width:min(540px,100%);padding:32px 38px 24px;background:radial-gradient(ellipse at 100% 10%,#40372b66,transparent 65%),#141414;border-left:1px solid var(--panel-border);box-shadow:-24px 0 80px #0004;display:flex;flex-direction:column;overscroll-behavior:contain}.mobile-menu .menu-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.mobile-menu .menu-heading p{margin:0;color:#e0d7cb;font-size:11px;letter-spacing:.13em}.menu-heading>span{color:#9a9185;font-size:10px;letter-spacing:.08em}.mobile-menu .menu-link{display:grid;grid-template-columns:27px 1fr 18px;gap:18px;align-items:center;min-height:82px;padding:18px 0;border-bottom:1px solid #d1c8bc22;transition:color .25s,padding .3s;line-height:1.2}.menu-link-title{font:500 32px/1.2 var(--sans);letter-spacing:-.035em}.menu-index{font:11px/1 var(--sans);color:#aea599;letter-spacing:.08em}.menu-link-arrow{width:12px;height:12px;border-top:1px solid #cbc2b6;border-right:1px solid #cbc2b6;position:relative}.menu-link-arrow::after{content:'';position:absolute;width:16px;height:1px;background:#cbc2b6;right:-1px;top:5px;transform:rotate(-45deg)}.mobile-menu .menu-link[aria-current=page] .menu-link-title{color:#e6cea2}.mobile-menu .menu-link[aria-current=page] .menu-index{color:#e6cea2}.mobile-menu .menu-link:hover{padding-left:8px;color:#ecd6af}.mobile-menu .menu-appointment{margin-top:30px;padding:24px;border:1px solid var(--panel-border);border-radius:12px;background:#d1c8bc07}.mobile-menu .menu-appointment>p{font-size:15px;line-height:1.6;margin:0 0 18px;color:#dbd2c6}.mobile-menu .menu-appointment .button{display:flex;min-height:50px;padding:14px 17px;font:600 14px/1.4 var(--sans);border:1px solid #dfc89e;border-radius:8px;color:#111111}.mobile-menu .menu-footer{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:auto;padding-top:28px;font-size:10px;letter-spacing:.08em;color:#bbb2a6}.mobile-menu .menu-footer a{font:13px/1.5 var(--sans);border:0;padding:0;min-height:30px;color:#eee5d9}
.button{border-radius:var(--control-radius);min-height:56px}.button:focus-visible,.menu-toggle:focus-visible,.language button:focus-visible,.menu-link:focus-visible{outline:2px solid #ecd6af;outline-offset:5px}.text-link{border-bottom-color:#e1d8cc4d;transition:color .25s,border-color .25s}.text-link:hover{border-bottom-color:#ddc393}.case-hero-stage{border-color:#dad1c53e}.case-preview-grid>article,.case-grid>article{border-radius:18px;background:linear-gradient(150deg,#242424,#161616)}.case-image-pair figure{border-radius:10px}.case-image-pair img{background:#101010}.case-image-label{background:#101010ed;border-color:#d8cfc345;padding:6px 10px;border-radius:5px}.case-context dt{letter-spacing:.08em}.case-hero-controls button{border-color:#beb5a943;background:#e9e0d404}.case-hero-controls button:focus-visible{outline:2px solid #ecd6af;outline-offset:4px}.floating-contact{border-radius:12px;padding:15px 20px}.doctor-portrait .image-open{background:#262421;border-color:#cfc6ba44;color:#f5ece0}.landing-doctor-portrait .image-open{width:100%;text-align:left}.contact-card{border-radius:20px}.faq-list details{padding:0 20px;border:1px solid #d5ccc02b;border-radius:12px;background:#24232144;margin-bottom:12px}.faq-list summary{min-height:76px;border:0}.faq-list summary:hover{color:#dfc89e}.faq-list p{padding-bottom:20px}.consultation-steps article{padding:26px;border:1px solid var(--panel-border);border-radius:14px;background:#24232155}.consultation-steps article>span{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid #ddc39333;border-radius:9px;font:12px/1 var(--sans);margin-bottom:20px}.footer{padding-top:50px;padding-bottom:42px}.footer a:hover{color:#e7cea0}
@media(max-width:1000px){.header .menu-toggle{display:flex}.header{gap:16px}.header-actions{gap:10px}.brand strong{font-size:10px}.brand small{font-size:9px}}
@media(max-width:600px){.header{gap:12px}.header-actions{gap:8px}.header .menu-toggle{width:92px;min-width:92px;padding:0 10px;gap:10px}.language button{width:29px;min-width:29px}.mobile-menu{padding:24px 24px 22px;border-left:0}.mobile-menu .menu-link{min-height:72px;padding:16px 0;gap:15px}.menu-link-title{font-size:29px}.mobile-menu .menu-appointment{margin-top:24px;padding:20px}.menu-backdrop{backdrop-filter:none}.case-preview-grid>article,.case-grid>article{border-radius:14px}.consultation-steps article{padding:22px}.faq-list details{padding:0 16px}.faq-list summary{font-size:16px;min-height:72px}.footer{padding-bottom:100px}}
@media(max-height:700px){.mobile-menu .menu-link{min-height:60px;padding:12px 0}.mobile-menu .menu-appointment{margin-top:18px;padding:16px}.mobile-menu .menu-footer{padding-top:20px}}
@media(prefers-reduced-motion:reduce){.menu-toggle-icon i,.menu-toggle-icon::before,.menu-toggle-icon::after,.mobile-menu .menu-link{transition:none}}
.header .menu-toggle[aria-expanded=true]>span{transform:none}
.menu-open .floating-contact{visibility:hidden;opacity:0;pointer-events:none}
.mobile-menu .menu-appointment>p{letter-spacing:0}
