/* Royal Medica 0.2 — sticky header, cinematic hero, editorial tabs, footer. */
html{scroll-padding-top:150px}.site-header{position:sticky;top:0;z-index:60;box-shadow:0 6px 24px #00000014}.admin-bar .site-header{top:32px}.masthead{transition:min-height .35s ease}.masthead .brand img{transition:width .35s ease}.site-header.is-compact .masthead{min-height:80px}.site-header.is-compact .brand img{width:205px}.site-header nav{transition:min-height .35s ease}.site-header.is-compact nav{min-height:44px}.site-header.is-compact nav>a{padding-block:10px}.site-header.is-compact .header-left .social{margin-bottom:2px}.site-header.is-compact .header-contact a:last-child{font-size:15px}.hero{isolation:isolate;overflow:hidden;height:calc(100svh - 188px);min-height:600px;max-height:920px}.hero-images{z-index:-3;background:#222}.hero-images .hero-slide{position:absolute;inset:0;width:100%;height:100%;opacity:0;transform:scale(1.045);transition:opacity 1.6s ease,transform 7s linear;pointer-events:none}.hero-images .hero-slide.is-active{opacity:1;transform:scale(1)}.hero-shade{z-index:-2;background:linear-gradient(90deg,rgba(10,10,10,.58) 0%,rgba(10,10,10,.29) 45%,rgba(10,10,10,.08) 100%),linear-gradient(0deg,#1114,transparent 55%)}.hero-transition{position:absolute;inset:-30%;z-index:-1;pointer-events:none;opacity:0;background:linear-gradient(110deg,transparent 30%,#b59e7d38 46%,#efe2cd33 50%,transparent 64%);transform:translateX(-40%)}.hero.is-changing .hero-transition{animation:royal-light-pass 1.7s ease-in-out}.hero-content{position:relative;padding-top:clamp(90px,12vh,170px)}.hero-content h1{font-size:clamp(3.4rem,6.3vw,6.4rem);line-height:1.01;font-weight:400}.hero-content>.eyebrow{color:#f2e6d5}.hero-content>.button{backdrop-filter:blur(5px);background:#22222212}.hero-controls{position:absolute;bottom:30px;right:50px;display:flex;gap:8px}.hero-controls button{width:44px;height:44px;border:1px solid #ffffff60;background:#22222220;color:white;font-size:17px;backdrop-filter:blur(6px);transition:background .2s}.hero-controls button:hover{background:#b59e7d80}.hero-controls [data-autoplay]{font-size:13px}.dark-panel,.contact,.reviews{background-color:#222;background-image:radial-gradient(ellipse at 75% 15%,#b59e7d3d,transparent 45%),linear-gradient(115deg,#0e0e0e 0%,#332b21 22%,#151412 38%,#4a3e2e 49%,#1b1813 55%,#080808 75%,#302920 100%);background-size:cover}.dark-panel{overflow:hidden;border:1px solid #b59e7d35;padding:65px 55px}.dark-panel:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(120deg,transparent 35%,#e9d3ac10 45%,transparent 53%);box-shadow:inset 0 0 80px #0005}.dark-panel>*{position:relative;z-index:1}.dark-panel h2{font-size:clamp(2.6rem,4.4vw,4rem);line-height:1.07}.dark-panel p:not(.eyebrow){color:#f1ece6;font-size:16px}.dark-panel .eyebrow,.contact .eyebrow{color:#d1bb9b}.contact:before{background:linear-gradient(125deg,transparent 22%,#ead4b41a 40%,transparent 42%,#0003 70%)}.split .offset-photo{transition:transform .5s}.text-link{transition:gap .25s}.text-link:hover{gap:44px}.treatment-tabs{padding-block:30px 70px}.treatment-intro{text-align:center;max-width:780px;margin:0 auto 60px}.treatment-intro h2{font-size:clamp(2.6rem,4.4vw,4.4rem)}.treatment-intro>p:last-child{color:var(--muted)}.treatment-tablist{display:none;gap:25px;justify-content:space-between;align-items:stretch;border-bottom:1px solid var(--line);margin-bottom:60px}.tabs-ready .treatment-tablist{display:flex}.treatment-tablist button{font:20px/1.35 var(--serif);padding:16px 0 21px;border:0;position:relative;background:none;color:#49443e;white-space:nowrap}.treatment-tablist button:after{content:'';position:absolute;left:0;right:0;bottom:-1px;height:2px;background:#9c815c;transform:scaleX(0);transform-origin:left;transition:transform .3s}.treatment-tablist button[aria-selected=true]{color:#8b704b}.treatment-tablist button[aria-selected=true]:after{transform:scaleX(1)}.treatment-tablist button:hover{color:#8b704b}.treatment-panel{display:grid;grid-template-columns:1.1fr 1fr;gap:90px;align-items:center;padding-block:15px 25px;min-height:560px}.treatment-panel+.treatment-panel{margin-top:70px}.tabs-ready .treatment-panel+.treatment-panel{margin-top:0}.treatment-copy h3{font-size:clamp(2.7rem,4.9vw,4.9rem);letter-spacing:-.035em;color:#917550;margin-bottom:27px}.treatment-copy>.eyebrow{font-size:11px;letter-spacing:.15em;margin-bottom:20px}.treatment-copy p:not(.eyebrow){font-size:16px;color:#5b5650;line-height:1.85}.treatment-copy .button{margin-top:12px;gap:24px;padding-inline:20px}.treatment-visual{position:relative;padding:0 18px 18px 0}.treatment-visual img{position:relative;z-index:1;width:100%;height:510px;object-fit:cover;box-shadow:0 24px 38px #22222220}.photo-frame{position:absolute;inset:28px 0 0 28px;border:1px solid #b59e7d99}.tabs-ready .treatment-panel:not([hidden]) .treatment-copy{animation:royal-copy-in .6s ease both}.tabs-ready .treatment-panel:not([hidden]) .treatment-visual{animation:royal-photo-in .75s ease both}.royal-footer{background:#171717;color:#d9d5ce;padding:80px 0 25px;position:relative;overflow:hidden}.royal-footer:before{content:'';position:absolute;width:900px;height:900px;border:1px solid #b59e7d12;border-radius:50%;top:-600px;left:-300px;pointer-events:none}.footer-invitation{display:flex;justify-content:space-between;align-items:center;padding-bottom:65px;border-bottom:1px solid #b59e7d38;gap:40px}.footer-invitation .eyebrow{color:var(--gold)}.footer-invitation h2{color:#eee9e1;font-size:clamp(3rem,5.6vw,5rem);margin:0}.footer-invitation h2 em{color:var(--gold);font-weight:400}.footer-round-cta{display:flex;width:156px;height:156px;border:1px solid #b59e7d99;border-radius:50%;align-items:center;justify-content:center;flex-direction:column;gap:12px;flex-shrink:0;font-size:11px;letter-spacing:.12em;text-align:center;transition:background .3s,color .3s,transform .3s}.footer-round-cta>span:last-child{font-size:28px}.footer-round-cta:hover{background:var(--gold);color:#222;transform:rotate(-4deg)}.footer-columns{display:grid;grid-template-columns:1.4fr .8fr 1fr 1fr;gap:45px;padding-block:60px}.footer-columns h3{font:12px/1.5 Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:#b59e7d;margin-bottom:24px}.footer-columns>div>a{display:block;font-size:14px;margin-bottom:10px}.footer-columns a:hover{color:#e8d1ae}.footer-brand .brand img{width:250px;margin:-25px 0 10px;mix-blend-mode:screen}.footer-brand p{font-size:14px;color:#aaa49c}.footer-socials{display:flex;gap:20px;font-size:12px}.footer-columns .footer-phone{font:24px/1.5 var(--serif);color:#f2ede5;white-space:nowrap}.footer-columns .footer-tour{margin-top:22px;font-size:12px;border-bottom:1px solid #b59e7d50;width:fit-content;padding-bottom:5px}.footer-base{display:flex;justify-content:space-between;gap:25px;border-top:1px solid #ffffff15;padding-top:24px;font-size:11px;color:#aaa49c}.footer-base small{font-size:11px}.floating-book{border-radius:0;transition:transform .25s,background .25s}.floating-book:hover{transform:translateY(-3px);background:#cbb392}
@keyframes royal-light-pass{0%{opacity:0;transform:translateX(-35%)}35%{opacity:1}100%{opacity:0;transform:translateX(40%)}}
@keyframes royal-copy-in{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@keyframes royal-photo-in{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@media(max-width:1100px){.treatment-tablist{gap:20px;overflow-x:auto;justify-content:flex-start}.treatment-tablist button{font-size:19px}.treatment-panel{gap:50px}.footer-columns{gap:25px;grid-template-columns:1.2fr .7fr 1fr 1fr}.footer-columns .footer-phone{font-size:20px}}
@media(max-width:782px){.admin-bar .site-header{top:46px}}
@media(max-width:760px){html{scroll-padding-top:95px}.masthead{min-height:92px}.site-header.is-compact .masthead{min-height:66px}.site-header.is-compact .brand img{width:175px}.site-header.is-compact nav{min-height:0}.site-header nav{max-height:calc(100svh - 100px);overflow-y:auto}.site-header nav>a{padding:12px 0}.hero{height:680px;min-height:0;max-height:none}.hero-content{padding-top:110px}.hero-content h1{font-size:clamp(2.9rem,11.8vw,3.6rem);max-width:100%}.hero-controls{right:24px;bottom:24px}.hero-shade{background:linear-gradient(90deg,#08080899,#08080822),linear-gradient(0deg,#0004,transparent 60%)}.dark-panel{padding:38px 28px}.dark-panel h2{font-size:2.7rem}.treatment-tabs{padding-block:0 45px}.treatment-intro{margin-bottom:30px}.treatment-intro h2{font-size:2.65rem}.treatment-tablist{margin-bottom:30px;gap:25px;scrollbar-width:thin;scrollbar-color:#b59e7d transparent}.treatment-tablist button{font-size:19px;padding-bottom:18px}.treatment-panel{grid-template-columns:1fr;gap:35px;padding-block:0;min-height:0}.treatment-copy h3{font-size:2.85rem}.treatment-copy p:not(.eyebrow){font-size:15px}.treatment-visual img{height:380px}.treatment-visual{max-width:100%}.royal-footer{padding-top:55px}.footer-invitation{gap:20px;padding-bottom:40px;align-items:flex-start}.footer-invitation h2{font-size:2.75rem}.footer-round-cta{width:92px;height:92px;font-size:8px;letter-spacing:.03em;gap:2px;margin-top:40px}.footer-round-cta>span:last-child{font-size:21px}.footer-columns{grid-template-columns:1fr 1fr;gap:35px 25px;padding-block:42px}.footer-brand{grid-column:1/-1}.footer-columns>div:last-child{grid-column:1/-1}.footer-brand .brand img{width:235px}.footer-columns h3{margin-bottom:15px}.footer-base{flex-direction:column;gap:12px;padding-bottom:65px}.footer-invitation .eyebrow{font-size:10px}.associate{padding-top:70px}}
@media(max-width:600px){.admin-bar .site-header{top:0}.admin-bar .site-header:not(.is-compact){top:0}}
@media(prefers-reduced-motion:reduce){.hero-images .hero-slide,.masthead,.masthead .brand img,.site-header nav{transition:none!important}.hero-transition,.treatment-copy,.treatment-visual{animation:none!important}.hero-images .hero-slide{transform:none}.footer-round-cta:hover,.floating-book:hover{transform:none}}
.footer-base>a{margin-right:200px}@media(max-width:760px){.footer-base>a{margin-right:0}.footer-invitation{display:block}.footer-round-cta{width:125px;height:125px;font-size:10px;letter-spacing:.06em;margin-top:25px;gap:8px}}

.treatment-tablist{overflow-y:hidden}

