:root { --color-background: #30251f; --color-bg-primary: var(--color-background); --color-graphite: var(--color-bg-primary); --graphite: var(--color-graphite); --wood: #694b38; --gold: #c3a56f; --line: #e7e0d8; --white: #fff; --sans: Manrope, system-ui, -apple-system, sans-serif; }
*, *::before, *::after { box-sizing: border-box; }
html { width: 100%; max-width: 100%; min-height: 100%; }
body { width: 100%; max-width: 100%; min-height: 100vh; margin: 0; overflow-x: clip; background: var(--white); color: var(--graphite); font-family: var(--sans); }
img, video, svg { max-width: 100%; }
body.menu-open { overflow: hidden; }
.preloader-active,.preloader-active body{overflow:hidden}.site-preloader{position:fixed;z-index:200;inset:0;display:grid;overflow:hidden;background:#30251f;color:#fbf7f1;place-items:center;opacity:1;transition:opacity .24s ease,visibility 0s linear .24s}.preloader-skip .site-preloader{display:none}.site-preloader.is-exiting{visibility:hidden;opacity:0;pointer-events:none}.preloader-content{display:grid;width:min(78vw,390px);justify-items:center;text-align:center}.preloader-est,.preloader-clinic{margin:0;font-size:clamp(.58rem,.72vw,.68rem);font-weight:600;letter-spacing:.28em;opacity:0;text-transform:uppercase}.preloader-est{color:#c3a56f;animation:preloader-fade-up .34s ease-out .1s forwards}.preloader-wordmark{width:clamp(205px,27vw,330px);margin:18px 0 17px;line-height:0;opacity:0;transform:translateY(13px);filter:blur(5px);animation:preloader-wordmark .56s cubic-bezier(.22,.8,.3,1) .32s forwards}.preloader-wordmark img{display:block;width:100%;height:auto;object-fit:contain}.preloader-clinic{color:#fbf7f1;animation:preloader-fade-up .28s ease-out .76s forwards}.preloader-line{width:min(100%,245px);height:1px;margin-top:17px;background:#c3a56f;transform:scaleX(0);transform-origin:center;animation:preloader-line .42s cubic-bezier(.22,.8,.3,1) .96s forwards}@keyframes preloader-fade-up{to{opacity:1;transform:translateY(0)}}@keyframes preloader-wordmark{to{opacity:1;transform:translateY(0);filter:blur(0)}}@keyframes preloader-line{to{transform:scaleX(1)}}@media(max-width:760px){.preloader-content{width:min(82vw,310px)}.preloader-wordmark{width:clamp(190px,61vw,255px);margin:16px 0}.preloader-line{width:min(100%,205px);margin-top:15px}}@media(prefers-reduced-motion:reduce){.site-preloader{transition:opacity .14s ease,visibility 0s linear .14s}.preloader-est,.preloader-wordmark,.preloader-clinic,.preloader-line{animation:none;filter:none;opacity:1;transform:none}.preloader-line{transform:scaleX(1)}}
a { color: inherit; text-decoration: none; }
button { font: inherit; }
.skip-link { position: fixed; z-index: 100; top: -100px; left: 16px; padding: 10px 14px; border-radius: 10px; background: var(--white); box-shadow: 0 8px 26px rgba(33, 27, 23, .16); }
.skip-link:focus { top: 12px; }
.site-header { position: fixed; z-index: 50; top: 18px; right: 0; left: 0; }
.header-shell { display: flex; align-items: center; gap: 24px; width: min(1260px, calc(100% - 32px)); height: 78px; margin: 0 auto; padding: 8px 12px 8px 22px; border-radius: 24px; background: rgba(255, 255, 255, .94); box-shadow: 0 10px 36px rgba(34, 29, 25, .12); backdrop-filter: blur(18px); }
.brand { display: inline-flex; flex: 0 0 auto; align-items: center; }
.brand img { width: 116px; height: 52px; object-fit: contain; }
.desktop-nav { display: flex; gap: 22px; margin: 0 auto; font-size: .82rem; font-weight: 600; }
.desktop-nav a { position: relative; white-space: nowrap; }
.desktop-nav a::after { position: absolute; right: 100%; bottom: -5px; left: 0; height: 1px; content: ''; background: var(--wood); transition: right .25s ease; }
.desktop-nav a:hover::after, .desktop-nav a:focus-visible::after { right: 0; }
.header-actions { display: flex; align-items: center; gap: 10px; }
.header-social { display: flex; align-items: center; gap: 18px; margin-right: 14px; }
.header-social a { display: grid; width: 22px; height: 22px; color: var(--wood); place-items: center; transition: color .22s ease, transform .22s ease; }
.header-social a:hover, .header-social a:focus-visible { color: var(--gold); transform: translateY(-2px); }
.header-social svg { width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 1.45; stroke-linecap: round; stroke-linejoin: round; }
.booking-button { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 0 19px; border-radius: 999px; background: var(--wood); color: var(--white); font-size: .88rem; font-weight: 700; transition: background .25s ease, transform .25s ease; }
.booking-button:hover { background: #503827; transform: translateY(-1px); }
.language-switcher { display: flex; gap: 2px; }
.language-switcher button { padding: 8px 5px; border: 0; background: transparent; color: #6f6a64; font-size: .7rem; font-weight: 700; cursor: pointer; }
.language-switcher button.is-active { color: var(--wood); text-decoration: underline; text-underline-offset: 4px; }
.menu-toggle { position: relative; display: none; width: 48px; height: 48px; padding: 0; border: 0; background: transparent; cursor: pointer; }
.menu-toggle-icon { position: absolute; inset: 2px; width: calc(100% - 4px); height: calc(100% - 4px); object-fit: contain; pointer-events: none; transition: opacity 220ms ease, transform 220ms ease; }
.menu-toggle-icon--close { opacity: 0; transform: scale(.96); }
.menu-toggle.is-open .menu-toggle-icon--open { opacity: 0; transform: scale(.96); }
.menu-toggle.is-open .menu-toggle-icon--close { opacity: 1; transform: scale(1); }
.mobile-menu { display: none; }
.mobile-menu-brand { display: none; }
.page-canvas { min-height: 100vh; background: var(--white); }
.hero { position: relative; display: grid; min-height: 100vh; min-height: 100svh; overflow: hidden; isolation: isolate; color: var(--white); }
.hero-smile-curve{position:absolute;z-index:2;right:0;bottom:0;left:0;height:220px;pointer-events:none}.hero-smile-curve>svg{display:block;width:100%;height:100%}.hero-smile-curve path:first-child{fill:var(--white)}.hero-smile-line{fill:none!important;stroke:var(--gold);stroke-width:1.6;vector-effect:non-scaling-stroke}.hero-smile-button{position:absolute;top:calc(100% - 78px);left:50%;display:grid;width:54px;height:54px;border:1px solid var(--gold);border-radius:50%;background:var(--white);color:var(--wood);place-items:center;pointer-events:auto;transform:translateX(-50%);transition:box-shadow .3s ease}.hero-smile-button svg{width:22px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.45;transition:transform .3s ease}.hero-smile-button:hover svg,.hero-smile-button:focus-visible svg{transform:translateY(4px)}
.hero-background, .hero-video, .hero-overlay { position: absolute; z-index: -1; inset: 0; width: 100%; height: 100%; }
.hero-background { background: #4b372b center / cover no-repeat; }
.hero-video { display: none; object-fit: cover; }
.hero-overlay { background: rgba(0, 0, 0, .42); }
.hero-shell { display: flex; align-items: center; justify-content: space-between; gap: clamp(40px, 7vw, 140px); width: min(1360px, calc(100% - 80px)); padding: 142px 0 52px; margin: 0 auto; }
.hero-copy { flex: 1 1 600px; max-width: 700px; }
.hero h1 { max-width: 750px; margin: 0; font-family: Unbounded, var(--sans); font-size: clamp(4rem, 5.15vw, 5.15rem); font-weight: 400; letter-spacing: -.055em; line-height: 1.08; text-wrap: balance; text-shadow: 0 2px 18px rgba(19, 13, 10, .14); animation: hero-rise .8s cubic-bezier(.2,.75,.25,1) .1s both; }
.hero h1 span, .hero-eyebrow, .hero-route { color: #d1b27b; }
.hero-clinic { margin: 30px 0 0; color: rgba(255,255,255,.88); font-size: clamp(1.25rem, 1.55vw, 1.5rem); font-weight: 400; letter-spacing: .08em; text-transform: uppercase; animation: hero-rise .7s cubic-bezier(.2,.75,.25,1) .26s both; }
.hero-schedule { margin-top: clamp(42px, 7vh, 76px); animation: hero-rise .7s cubic-bezier(.2,.75,.25,1) .4s both; }
.hero-eyebrow { margin: 0 0 14px; font-size: clamp(.875rem, 1.05vw, 1rem); font-weight: 500; letter-spacing: .18em; }
.hero-hours { margin: 0; color: rgba(255,255,255,.94); font-size: clamp(1.125rem, 1.35vw, 1.31rem); font-weight: 400; line-height: 1.55; }
.hero-hours b { color: #d1b27b; padding: 0 .45em; }
.hero-actions { flex: 0 1 480px; width: min(100%, 480px); border: 1px solid rgba(228, 212, 190, .28); border-radius: 19px; background: rgba(28, 22, 18, .44); box-shadow: 0 18px 45px rgba(19, 13, 10, .12); overflow: hidden; backdrop-filter: blur(18px); -webkit-backdrop-filter: blur(18px); animation: hero-rise .8s cubic-bezier(.2,.75,.25,1) .56s both; }
.about { position: relative; z-index: 1; margin-top: -56px; overflow: hidden; border-radius: 64px 64px 0 0; background: var(--white); color: var(--graphite); }
.about-shell { position: relative; width: min(1240px, calc(100% - 80px)); margin: 0 auto; padding: 142px 0 108px; }
.about-word { position: absolute; top: 175px; left: 50%; color: rgba(105,75,56,.045); font-family: Unbounded, var(--sans); font-size: clamp(8rem, 20vw, 22rem); font-weight: 400; letter-spacing: -.08em; line-height: .8; pointer-events: none; transform: translateX(-50%); }
.about-scroll { position: absolute; top: -42px; left: 50%; display: grid; justify-items: center; gap: 4px; color: var(--wood); transform: translateX(-50%); }
.about-scroll span { width: 1px; height: 45px; background: var(--gold); }.about-scroll svg{width:14px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.4}
.section-label--about{justify-content:center;gap:12px}.section-label--about::before{width:55px;height:1px;content:'';background:var(--gold)}.section-label--about::after{width:55px}
.section-label { display:flex; align-items:center; gap:10px; margin:0; color:var(--wood); font-family:Unbounded,var(--sans); font-size:.72rem; font-weight:400; letter-spacing:.02em; }.section-label::after{width:55px;height:1px;content:'';background:var(--gold)}.section-label b{color:var(--gold);font-weight:400}
.about h2 { margin:0; font-family:Unbounded,var(--sans); font-size:clamp(2.3rem,4.1vw,4.55rem); font-weight:400; letter-spacing:-.065em; line-height:1.16; }.about h2 em{color:var(--gold);font-style:normal}
.about-intro { position:relative; }.about-lead{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,390px);gap:clamp(50px,10vw,160px);align-items:end;margin-top:40px}.about-lead>p,.about-story>p{margin:0;color:#514a44;font-size:1.08rem;line-height:1.75}
.about-photo{position:relative;margin:110px 0 128px}.about-photo::after{position:absolute;right:-12px;bottom:-12px;width:22%;height:26%;border:1px solid var(--gold);border-radius:0 0 34px 0;content:''}.about-photo img{position:relative;z-index:1;display:block;width:100%;height:clamp(330px,43vw,570px);border-radius:34px;object-fit:cover}.about-photo figcaption{position:absolute;z-index:2;bottom:18px;left:22px;color:rgba(255,255,255,.75);font-size:.72rem}
.about-why{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(50px,10vw,150px);align-items:start}.why-head{position:sticky;top:120px}.why-head h2{margin-top:27px;font-size:clamp(2rem,3.4vw,3.8rem)}.why-list{border-top:1px solid var(--line)}.why-item{display:grid;grid-template-columns:42px 38px 1fr;gap:18px;padding:26px 8px;border-bottom:1px solid var(--line);transition:background .32s ease,border-color .32s ease}.why-item>span{color:#8d8178;font-size:.74rem}.why-item svg{width:27px;height:27px;fill:none;stroke:var(--wood);stroke-linecap:round;stroke-linejoin:round;stroke-width:1.45;transition:transform .32s ease,stroke .32s ease}.why-item h3{margin:0;font-size:1.1rem;font-weight:500}.why-item p{margin:7px 0 0;color:#665f59;font-size:.94rem;line-height:1.55}.why-item:hover{border-color:var(--gold);background:#fcfaf7}.why-item:hover>span{color:var(--gold)}.why-item:hover svg{stroke:var(--gold);transform:translateX(3px) rotate(-3deg)}
.why-brand{position:relative;margin-top:75px;min-height:150px}.why-brand::before{position:absolute;inset:-35px 0 auto -20px;color:rgba(105,75,56,.04);content:'B';font-family:Unbounded,var(--sans);font-size:12rem;line-height:.8}.why-brand img{position:relative;z-index:1;display:block;width:min(100%,290px);height:118px;object-fit:contain;object-position:left center}
.about-story{display:grid;grid-template-columns:1.25fr .75fr;gap:clamp(48px,10vw,160px);margin-top:148px;padding:78px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.about-story h2{margin-top:26px;font-size:clamp(1.8rem,3vw,3.3rem)}.about-story>p{align-self:end}.about-closing{padding-top:128px;text-align:center}.about-closing h2{font-size:clamp(2rem,4vw,4.5rem)}.about-closing p{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:13px;margin:32px 0 0;color:var(--wood);font-size:.95rem;letter-spacing:.06em}.about-closing i{width:5px;height:5px;background:var(--gold);transform:rotate(45deg)}.reveal{opacity:0;transform:translateY(24px);transition:opacity .85s cubic-bezier(.2,.75,.25,1),transform .85s cubic-bezier(.2,.75,.25,1)}.reveal.is-visible{opacity:1;transform:none}
.hero-action { display: grid; grid-template-columns: 38px 1fr; gap: 15px; min-height: 129px; padding: 25px 27px; border-top: 1px solid rgba(228, 212, 190, .2); background: transparent; transition: background .32s ease, border-color .32s ease; }
.hero-action:first-child { border-top: 0; }
.hero-action:hover, .hero-action:focus-visible { background: rgba(255,255,255,.09); border-color: rgba(209,178,123,.64); outline: none; }
.hero-action-number { padding-top: 4px; color: rgba(209,178,123,.88); font-size: .75rem; font-weight: 500; letter-spacing: .11em; }
.hero-action-body { display: flex; flex-direction: column; align-items: flex-start; }
.hero-action-title { display: inline-flex; align-items: center; gap: 9px; color: #fff; font-size: clamp(1.06rem, 1.3vw, 1.25rem); font-weight: 500; letter-spacing: .045em; line-height: 1.25; }
.hero-action-title i { display: inline-block; font-size: 1.18em; font-style: normal; transition: transform .3s ease; }
.hero-action:hover .hero-action-title i, .hero-action:focus-visible .hero-action-title i { transform: translateX(5px); }
.hero-action-note { margin-top: 9px; color: rgba(255,255,255,.75); font-size: clamp(.875rem, 1.08vw, 1rem); font-weight: 400; line-height: 1.45; }
.hero-action-title svg { width: 17px; height: 17px; fill: none; stroke: #d1b27b; stroke-width: 1.55; }
.hero-route { max-height: 0; margin-top: 0; overflow: hidden; font-size: .73rem; font-weight: 600; letter-spacing: .03em; opacity: 0; transition: max-height .32s ease, margin .32s ease, opacity .25s ease; }
.hero-action--location:hover .hero-route, .hero-action--location:focus-visible .hero-route { max-height: 24px; margin-top: 9px; opacity: 1; }
@keyframes hero-rise { from { opacity: 0; transform: translateY(18px); } to { opacity: 1; transform: translateY(0); } }
@media (min-width: 761px) { .hero-background { background-image: url('/assets/bliss-hero-desktop.jpg'); } }
:focus-visible { outline: 3px solid rgba(195, 165, 111, .6); outline-offset: 3px; }
@media (max-width: 1080px) { .desktop-nav, .header-actions > .header-social, .header-actions > .booking-button { display: none; } .header-actions { margin-left: auto; } .menu-toggle { display: block; } .mobile-menu { position: fixed; z-index: 45; inset: 0; display: flex; flex-direction: column; gap: 2px; padding: 114px 30px 40px; background: var(--white); transform: translateX(100%); transition: transform .35s ease; } .mobile-menu.is-open { transform: translateX(0); } .mobile-menu-brand { display: block; width: fit-content; max-width: min(260px, 72vw); margin: 4px 0 40px 4px; } .mobile-menu-brand img { display: block; width: auto; height: auto; max-width: 100%; max-height: 68px; object-fit: contain; } .mobile-menu a:not(.booking-button):not(.mobile-menu-brand) { padding: 10px 0; border-bottom: 1px solid var(--line); font-size: 2rem; font-weight: 500; } .mobile-menu .booking-button { margin-top: 22px; } }
@media (max-width: 760px) { .site-header { top: 10px; } .header-shell { width: calc(100% - 20px); height: 64px; padding-left: 14px; border-radius: 19px; } .brand img { width: 96px; height: 44px; } .menu-toggle { width: 46px; height: 46px; } .mobile-menu { padding: 94px 24px 32px; } .mobile-menu-brand { max-width: min(220px, 68vw); margin-bottom: 30px; } .mobile-menu-brand img { max-height: 56px; } }
@media (max-width: 760px) { .about{margin-top:-28px;border-radius:32px 32px 0 0}.about-shell{width:min(100% - 40px,560px);padding:94px 0 72px}.about-word{top:155px;font-size:7rem}.about-scroll{top:-28px}.about-scroll span{height:30px}.section-label{font-size:.62rem}.section-label::after{width:36px}.about-lead{display:block;margin-top:27px}.about h2{font-size:clamp(2rem,9vw,3rem);line-height:1.18}.about-lead>p{margin-top:25px;font-size:1rem;line-height:1.66}.about-photo{margin:60px 0 78px}.about-photo img{height:285px;border-radius:22px}.about-photo::after{right:-7px;bottom:-7px;border-radius:0 0 22px 0}.about-why{display:block}.why-head{position:static}.why-head h2{margin-top:22px}.why-list{margin-top:34px}.why-item{grid-template-columns:28px 31px 1fr;gap:11px;padding:20px 2px}.why-item svg{width:23px;height:23px}.why-item h3{font-size:1rem}.why-item p{font-size:.89rem;line-height:1.48}.about-story{display:block;margin-top:82px;padding:58px 0}.about-story h2{font-size:clamp(1.72rem,7.8vw,2.35rem)}.about-story>p{margin-top:27px;font-size:1rem;line-height:1.66}.about-closing{padding-top:75px;text-align:left}.about-closing h2{font-size:clamp(2rem,9vw,3rem)}.about-closing p{justify-content:flex-start;margin-top:25px;font-size:.83rem;line-height:1.8}.reveal{transform:translateY(16px)} }
@media (max-width: 760px) { .hero { min-height: 100dvh; } .hero-background { display: none; } .hero-video { display: block; object-position: center 82%; } .hero-overlay { background: rgba(0, 0, 0, .42); } .hero-shell { display: flex; flex-direction: column; align-items: stretch; justify-content: flex-end; gap: 20px; width: min(100% - 32px, 560px); min-height: 100svh; padding: 104px 0 18px; } .hero-copy { flex: 0 0 auto; max-width: 520px; } .hero h1 { max-width: 510px; font-size: clamp(2.375rem, 10.7vw, 2.875rem); line-height: 1.12; letter-spacing: -.05em; } .hero-clinic { margin-top: 15px; font-size: clamp(1rem, 4.8vw, 1.2rem); } .hero-schedule { margin-top: 19px; } .hero-eyebrow { margin-bottom: 6px; font-size: .78rem; } .hero-hours { font-size: .95rem; line-height: 1.42; } .hero-actions { flex: 0 0 auto; width: 100%; border-radius: 16px; background: rgba(25, 18, 14, .53); } .hero-action { grid-template-columns: 28px 1fr; gap: 9px; min-height: 0; padding: 10px 15px; } .hero-action-number { font-size: .65rem; } .hero-action-title { font-size: .95rem; } .hero-action-note { margin-top: 3px; font-size: .875rem; line-height: 1.24; } .hero-action-title svg { width: 15px; height: 15px; } .hero-route { max-height: 24px; margin-top: 4px; opacity: 1; font-size: .82rem; } }
@media (max-width: 390px) { .hero-shell { gap: 16px; padding-top: 88px; padding-bottom: 12px; } .hero h1 { font-size: clamp(2.375rem, 10.2vw, 2.75rem); } .hero-schedule { margin-top: 16px; } .hero-action { padding-top: 9px; padding-bottom: 9px; } .hero-action-note { font-size: .82rem; } }
@media (min-width: 761px) and (max-width: 1023px) { .hero h1 { font-size: clamp(3rem, 6.25vw, 3.5rem); } .hero-shell { width: min(100% - 48px, 920px); gap: 32px; } .hero-actions { flex-basis: 400px; } }
@media (min-width: 1024px) and (max-width: 1439px) { .hero h1 { font-size: clamp(4rem, 5vw, 4.5rem); } }
@media (min-width: 761px) and (max-width: 1080px) { .hero-shell { width: min(100% - 56px, 920px); gap: 38px; } .hero-actions { flex-basis: 370px; } .hero-action { padding-right: 19px; padding-left: 19px; } }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; transition: none !important; animation: none !important; } }
@keyframes about-arrow { 50% { transform: translateY(4px); } }
.about { margin-top: 0; border-radius: 0; }
.about-scroll { top: -48px; }.about-scroll svg { animation: about-arrow 2.8s ease-in-out infinite; }
.about-photo img { height: clamp(480px, 38vw, 520px); object-position: center; }
@media (min-width:761px){.hero-shell{padding-bottom:250px}.about-scroll{display:none}}
@media (max-width: 760px) { .hero { min-height:100svh; } .hero-shell { min-height:100svh; padding-bottom:150px; } .hero-smile-curve{height:150px}.hero-smile-button{top:calc(100% - 58px);width:48px;height:48px}.about { margin-top:0; border-radius:0; } .about-scroll{display:none}.about-shell{padding-top:108px}.about-photo img{height:clamp(300px,78vw,340px);object-position:center}.why-brand{margin-top:38px;min-height:92px}.why-brand img{width:min(220px,72%);height:85px}.why-brand::before{font-size:7rem;inset:-19px 0 auto -9px}.section-label--about{justify-content:flex-start}.section-label--about::before{width:32px}.section-label--about::after{width:32px} }
@media (prefers-reduced-motion: reduce) { .about-scroll svg { animation:none; } }
@media (max-width:1080px){.mobile-menu{z-index:49;gap:0;padding:106px 24px 28px;background:rgba(255,255,255,.985);overflow-y:auto;opacity:0;visibility:hidden;transition:transform .34s cubic-bezier(.2,.75,.25,1),opacity .25s ease,visibility .25s}.mobile-menu.is-open{opacity:1;visibility:visible}.mobile-menu a:not(.booking-button):not(.mobile-menu-brand){display:flex;align-items:center;justify-content:space-between;padding:17px 2px;border-bottom:1px solid var(--line);color:var(--graphite);font-size:clamp(1.45rem,5.8vw,1.85rem);font-weight:500;line-height:1.18;opacity:0;transform:translateY(12px);transition:opacity .32s ease calc(var(--menu-index)*35ms + 80ms),transform .32s ease calc(var(--menu-index)*35ms + 80ms)}.mobile-menu.is-open a:not(.booking-button):not(.mobile-menu-brand){opacity:1;transform:none}.mobile-menu a svg{width:18px;height:18px;fill:none;stroke:var(--gold);stroke-linecap:round;stroke-linejoin:round;stroke-width:1.4}.mobile-menu .booking-button{width:100%;min-height:56px;margin:28px 0 0;font-size:1rem;opacity:0;transform:translateY(12px);transition:opacity .32s ease .36s,transform .32s ease .36s}.mobile-menu.is-open .booking-button{opacity:1;transform:none}.mobile-menu a[href="#main"]{color:var(--wood)} }
@media (max-width:1080px){
  .mobile-menu{font-family:var(--sans)}
  .mobile-menu a:not(.booking-button):not(.mobile-menu-brand){font-family:var(--sans);font-weight:600;letter-spacing:0;line-height:1.18}
  .mobile-menu .booking-button{font-family:var(--sans);font-weight:700;letter-spacing:0;line-height:1.2}
  .mobile-menu-social p{font-family:var(--sans);font-weight:400;letter-spacing:.08em;line-height:1.3}
}
@media (max-width:760px){.mobile-menu{padding-top:88px}.why-brand img{width:170px;height:85px}.why-brand{min-height:92px}.header-actions{gap:4px}.language-switcher button{padding-right:3px;padding-left:3px}}
@media (max-width:1080px){
  .mobile-menu-social{margin-top:20px;padding:18px 0 4px;opacity:0;transform:translateY(12px);transition:opacity .32s ease .42s,transform .32s ease .42s}
  .mobile-menu.is-open .mobile-menu-social{opacity:1;transform:none}
  .mobile-menu-social p{margin:0 0 12px;color:var(--muted);font-family:var(--sans);font-size:.76rem;font-weight:400;letter-spacing:.08em;line-height:1.3;text-transform:uppercase}
  .mobile-menu-social>div{display:flex;align-items:center;gap:22px}
  .mobile-menu .mobile-menu-social a{display:grid;place-items:center;width:30px;height:30px;padding:0;border:0;color:var(--wood);opacity:1;transform:none;transition:color .24s ease,transform .24s ease}
  .mobile-menu .mobile-menu-social a:hover,.mobile-menu .mobile-menu-social a:focus-visible{color:var(--gold);transform:translateY(-2px)}
  .mobile-menu .mobile-menu-social svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.45;stroke-linecap:round;stroke-linejoin:round}
}
@media (min-width:761px){.why-brand img{width:250px;height:120px}}
.services{background:#f7f3ed;color:var(--graphite)}.services-shell{width:min(1240px,calc(100% - 80px));margin:0 auto;padding:132px 0}.services-head{max-width:760px}.services-head h2{margin:30px 0 24px;font-family:Unbounded,var(--sans);font-size:clamp(2.25rem,4.2vw,4.8rem);font-weight:400;letter-spacing:-.065em;line-height:1.17}.services-head h2 em{position:relative;color:var(--gold);font-style:normal}.services-head h2 em::after{position:absolute;right:2%;bottom:-9px;left:1%;height:8px;content:'';border-top:1.5px solid var(--gold);border-radius:50%;transform:rotate(-1deg)}.services-head>p:last-child{max-width:530px;margin:0;color:#5c554f;font-size:1.05rem;line-height:1.7}.services-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:66px}.service-tile{position:relative;display:flex;min-height:260px;padding:26px;border:1px solid #e1d8ce;border-radius:25px;background:#fff;cursor:pointer;flex-direction:column;overflow:hidden;transition:border-color .3s ease,background .3s ease,transform .3s ease}.service-number{color:#8e8177;font-size:.72rem;letter-spacing:.12em}.service-icon{display:grid;width:44px;height:44px;margin:24px 0 20px;color:var(--wood);place-items:center;transition:color .3s ease,transform .3s ease}.service-icon svg{width:38px;height:38px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.35}.service-tile strong{font-family:Unbounded,var(--sans);font-size:clamp(.92rem,1.15vw,1.1rem);font-weight:400;letter-spacing:-.045em;line-height:1.35}.service-tile small{margin-top:10px;color:#786f68;font-size:.86rem}.service-view{position:absolute;bottom:24px;left:26px;color:var(--wood);font-size:.82rem;font-weight:600;opacity:0;transform:translateY(8px);transition:opacity .3s ease,transform .3s ease}.service-tile:hover,.service-tile:focus-visible{border-color:var(--gold);background:#fffcf8;transform:translateY(-4px);outline:none}.service-tile:hover .service-icon,.service-tile:focus-visible .service-icon{color:var(--gold);transform:translateY(-2px) scale(1.04)}.service-tile:hover .service-number,.service-tile:focus-visible .service-number{color:var(--gold)}.service-tile:hover .service-view,.service-tile:focus-visible .service-view{opacity:1;transform:none}.service-tile--cta{border-color:var(--wood);background:var(--wood);color:var(--white)}.service-tile--cta strong{font-size:1.16rem;line-height:1.5}.service-tile--cta small{color:rgba(255,255,255,.74);line-height:1.45}.service-tile--cta>span{margin-top:auto;color:#dfc18d;font-size:.84rem;font-weight:600;transition:transform .3s ease}.service-tile--cta:hover,.service-tile--cta:focus-visible{border-color:#503827;background:#503827}.service-tile--cta:hover>span,.service-tile--cta:focus-visible>span{transform:translateX(4px)}
@media(max-width:1080px){.services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.services-shell{width:min(100% - 40px,560px);padding:86px 0}.services-head h2{margin:24px 0 20px;font-size:clamp(2rem,8.6vw,2.8rem)}.services-head>p:last-child{font-size:1rem}.services-grid{grid-template-columns:1fr;gap:12px;margin-top:45px}.service-tile{min-height:210px;padding:22px;border-radius:20px}.service-icon{margin:16px 0}.service-view{bottom:20px;left:22px;opacity:1;transform:none}.service-tile--cta{min-height:190px}.service-tile--cta>span{margin-top:28px}}
.service-page{background:#f7f3ed}.service-page .header-shell{justify-content:space-between}.service-detail{padding:176px 0 110px}.service-detail-shell{width:min(970px,calc(100% - 48px));margin:0 auto}.service-breadcrumb{display:flex;flex-wrap:wrap;gap:9px;color:#786f68;font-size:.85rem}.service-breadcrumb a{color:var(--wood)}.service-detail header{display:grid;grid-template-columns:90px 1fr;gap:28px;align-items:start;margin:60px 0 100px}.service-detail header>span{color:var(--gold);font-size:.78rem;letter-spacing:.12em}.service-detail h1,.service-detail h2{margin:0;font-family:Unbounded,var(--sans);font-weight:400;letter-spacing:-.06em}.service-detail h1{font-size:clamp(2.2rem,5vw,4.6rem);line-height:1.15}.service-detail header p{grid-column:2;max-width:520px;margin:0;color:#5f5750;font-size:1.05rem;line-height:1.7}.service-detail h2{font-size:clamp(1.65rem,3vw,2.8rem)}.price-list{margin-top:36px;border-top:1px solid var(--line)}.price-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(20px,1fr) auto;gap:16px;align-items:end;padding:19px 0;border-bottom:1px solid var(--line);font-size:1rem;line-height:1.45}.price-row i{border-bottom:1px dotted #cfc4b8}.price-row strong{color:var(--wood);font-weight:600;white-space:nowrap}@media(max-width:760px){.service-detail{padding-top:118px}.service-detail-shell{width:min(100% - 40px,560px)}.service-detail header{grid-template-columns:1fr;gap:18px;margin:45px 0 65px}.service-detail header p{grid-column:auto;font-size:1rem}.price-row{grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:start}.price-row i{display:none}.price-row strong{text-align:right}}
.service-icon img{display:block;width:42px;height:42px;object-fit:contain;transition:filter .28s ease,transform .28s ease}.service-tile:hover .service-icon img,.service-tile:focus-visible .service-icon img{filter:sepia(.62) saturate(.82) hue-rotate(356deg) brightness(1.18);transform:translateY(-2px) scale(1.04)}
.service-detail header{grid-template-columns:90px 64px minmax(0,1fr)}.service-detail header>span{grid-row:1 / span 2}.service-detail-icon{display:block;width:60px;height:60px;object-fit:contain}.service-detail h1{grid-column:3}.service-detail header p{grid-column:3}@media(max-width:760px){.service-detail header{grid-template-columns:58px minmax(0,1fr)}.service-detail header>span{grid-row:auto}.service-detail-icon{width:52px;height:52px}.service-detail h1{grid-column:1 / -1}.service-detail header p{grid-column:1 / -1}}
.booking-page{background:#fff}.booking-main{width:min(980px,calc(100% - 48px));min-height:100vh;margin:0 auto;padding:180px 0 110px}.booking-main h1{max-width:760px;margin:28px 0 60px;font-family:Unbounded,var(--sans);font-size:clamp(2.1rem,4.5vw,4.3rem);font-weight:400;letter-spacing:-.065em;line-height:1.16}.booking-options{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.booking-option,.booking-card{border:1px solid #e1d8ce;border-radius:26px;background:#fff;transition:border-color .28s ease,background .28s ease,transform .28s ease}.booking-option{display:flex;min-height:310px;padding:30px;flex-direction:column}.booking-option>span{color:#8c8177;font-size:.75rem}.booking-option svg{width:64px;height:64px;margin:32px 0;color:var(--wood)}.booking-option b{font-family:Unbounded,var(--sans);font-size:1.25rem;font-weight:400}.booking-option i{margin-top:auto;color:var(--wood);font-size:.9rem;font-style:normal;font-weight:600}.booking-option:hover,.booking-option:focus-visible,.booking-card:hover,.booking-card:focus-visible{border-color:var(--gold);background:#fffcf8;transform:translateY(-3px);outline:none}.booking-back{display:inline-flex;margin-bottom:35px;color:var(--wood);font-size:.9rem}.booking-list{display:grid;gap:12px}.booking-card{display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:20px;align-items:center;padding:20px 24px}.booking-icon{display:grid;width:52px;height:52px;color:var(--wood);place-items:center}.booking-icon svg{width:31px;height:31px}.booking-card b{display:block;font-size:1.05rem;font-weight:600}.booking-card small{display:block;margin-top:5px;color:#716860}.booking-card i{color:var(--wood);font-size:.86rem;font-style:normal;font-weight:600;white-space:nowrap}.booking-card.is-disabled{opacity:.5;pointer-events:none}@media(max-width:760px){.booking-main{width:min(100% - 40px,560px);padding-top:118px}.booking-main h1{margin:22px 0 42px;font-size:clamp(1.9rem,8vw,2.7rem)}.booking-options{grid-template-columns:1fr}.booking-option{min-height:220px}.booking-option svg{width:54px;height:54px;margin:22px 0}.booking-card{grid-template-columns:46px minmax(0,1fr);gap:12px;padding:18px}.booking-card i{grid-column:2}.booking-icon{width:40px;height:40px}.booking-icon svg{width:26px;height:26px}}
.doctors{background:#fff}.doctors-shell{width:min(1240px,calc(100% - 80px));margin:auto;padding:130px 0}.doctors-head h2{margin:28px 0 58px;font-family:Unbounded,var(--sans);font-size:clamp(2.2rem,4vw,4.4rem);font-weight:400;letter-spacing:-.06em}.doctors-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;align-items:start}.doctor-card{display:block;overflow:hidden;border:1px solid var(--line);border-radius:25px;background:#fff;transition:transform .32s ease,border-color .32s ease}.doctor-card:hover{border-color:var(--gold);transform:translateY(-4px)}.doctor-photo{position:relative;aspect-ratio:4/5;overflow:hidden;background:#f7f3ed}.doctor-photo img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease,filter .35s ease}.doctor-photo span{position:absolute;right:20px;bottom:18px;color:#fff;font-size:.82rem;opacity:0;transition:opacity .3s}.doctor-card:hover .doctor-photo img{filter:brightness(.78);transform:scale(1.02)}.doctor-card:hover .doctor-photo span{opacity:1}.doctor-info{padding:21px 22px}.doctor-info small{color:var(--gold);font-size:.65rem;letter-spacing:.1em}.doctor-info h3{margin:6px 0;font-family:Unbounded,var(--sans);font-size:1.1rem;font-weight:400}.doctor-info p{margin:0;color:#716860}.doctor-card--chief{transform:scale(1.08);transform-origin:top}.doctor-card--chief:hover{transform:scale(1.08) translateY(-4px)}.doctor-placeholder{display:grid;aspect-ratio:4/5;background:#f7f3ed;place-items:center}.doctor-placeholder img{width:52%;height:32%;object-fit:contain}@media(max-width:1080px){.doctors-grid{grid-template-columns:repeat(2,1fr)}.doctor-card--chief{transform:none}.doctor-card--chief:hover{transform:translateY(-4px)}}@media(max-width:760px){.doctors-shell{width:min(100% - 40px,560px);padding:85px 0}.doctors-grid{grid-template-columns:1fr}.doctors-head h2{margin-bottom:38px;font-size:clamp(2rem,8vw,2.8rem)}.doctor-card--chief{order:-1}}
.doctors-grid{width:min(100%,720px);margin:0 auto;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}@media(max-width:1080px) and (min-width:761px){.doctors-grid{width:min(100%,480px);grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}}@media(max-width:760px){.doctors-grid{width:100%;grid-template-columns:1fr;gap:16px}}
.doctors-head{text-align:center}.doctors-head .section-label{justify-content:center;font-size:.82rem}.doctors-head .section-label::before{width:55px;height:1px;content:'';background:var(--gold)}.doctors-composition{display:grid;grid-template-columns:minmax(120px,1fr) minmax(0,720px) minmax(120px,1fr);gap:clamp(24px,4vw,60px);align-items:center}.doctors-composition .doctors-grid{grid-column:2;width:100%}.doctors-decor{position:relative;display:grid;min-width:0;opacity:.45;pointer-events:none;place-items:center;user-select:none}.doctors-decor::after{position:absolute;width:72%;height:34px;border-top:1px solid var(--gold);border-radius:50%;content:'';opacity:.65}.doctors-decor--left::after{transform:rotate(12deg)}.doctors-decor--right::after{transform:rotate(-12deg)}.doctors-decor img{display:block;width:min(100%,160px);height:90px;object-fit:contain}@media(max-width:1080px){.doctors-composition{display:block}.doctors-decor{display:none}.doctors-composition .doctors-grid{width:min(100%,480px)}}@media(max-width:760px){.doctors-head .section-label{font-size:.75rem}.doctors-composition .doctors-grid{width:100%}}
.works{background:#f7f3ed}.works-shell{width:min(100% - 80px,1050px);margin:auto;padding:128px 0}.works-head{text-align:center}.works-head .section-label{justify-content:center;font-size:.82rem}.works-head .section-label::before{width:55px;height:1px;content:'';background:var(--gold)}.works-head h2{margin:28px 0 60px;font-family:Unbounded,var(--sans);font-size:clamp(2.2rem,4vw,4.3rem);font-weight:400;letter-spacing:-.065em;line-height:1.18}.works-head em{color:var(--gold);font-style:normal}.works-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.work-card{overflow:hidden;border:1px solid #e2d8cd;border-radius:28px;background:#fff;transition:border-color .3s ease,transform .3s ease}.work-card:last-child{grid-column:1/-1;width:calc(50% - 12px);justify-self:center}.work-card:hover{border-color:var(--gold);transform:translateY(-3px)}.ba-slider{position:relative;aspect-ratio:4/3;overflow:hidden;touch-action:none}.ba-slider>img,.ba-before img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.ba-before{position:absolute;inset:0 auto 0 0;width:var(--position);overflow:hidden}.ba-before img{width:100vw;max-width:none}.ba-divider{position:absolute;top:0;bottom:0;left:var(--position);width:1px;background:#fff;transform:translateX(-50%)}.ba-divider button{position:absolute;top:50%;left:50%;display:grid;width:42px;height:42px;padding:0;border:1px solid var(--gold);border-radius:50%;background:#fff;color:var(--wood);place-items:center;transform:translate(-50%,-50%);cursor:ew-resize}.ba-divider svg{width:21px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5}.ba-label{position:absolute;top:16px;padding:6px 10px;border-radius:999px;background:rgba(36,35,33,.55);color:#fff;font-size:.72rem}.ba-label--before{left:16px}.ba-label--after{right:16px}.work-card:hover img{transform:scale(1.01)}@media(max-width:760px){.works-shell{width:min(100% - 40px,560px);padding:85px 0}.works-head h2{margin-bottom:38px;font-size:clamp(2rem,8vw,2.8rem)}.works-grid{grid-template-columns:1fr;gap:16px}.work-card:last-child{grid-column:auto;width:100%}.ba-slider{aspect-ratio:4/3}.ba-before img{width:100vw}}
.ba-before{right:0;width:100%;clip-path:inset(0 calc(100% - var(--position)) 0 0)}.ba-before img{width:100%;max-width:100%}@media(max-width:760px){.ba-before img{width:100%}}
.reviews{background:#fff}.reviews-shell{width:min(100% - 80px,1160px);margin:auto;padding:128px 0}.reviews-head{text-align:center}.reviews-head .section-label{justify-content:center;font-size:.82rem}.reviews-head .section-label::before{width:55px;height:1px;content:'';background:var(--gold)}.reviews-head h2{margin:28px 0 17px;font-family:Unbounded,var(--sans);font-size:clamp(2.25rem,4vw,4.4rem);font-weight:400;letter-spacing:-.065em;line-height:1.18}.reviews-head h2 em{color:var(--gold);font-style:normal}.reviews-head>p{margin:0;color:#6b625a}.reviews-controls{display:flex;justify-content:flex-end;gap:9px;margin:34px 0 15px}.reviews-controls button{display:grid;width:38px;height:38px;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--wood);place-items:center;cursor:pointer}.reviews-track{display:flex;gap:18px;overflow-x:auto;padding:2px 0 10px;scroll-snap-type:x mandatory;scrollbar-width:none}.reviews-track::-webkit-scrollbar{display:none}.review-card{display:flex;flex:0 0 calc((100% - 36px)/3);min-height:330px;padding:26px;border:1px solid var(--line);border-radius:24px;background:#fdfbf8;flex-direction:column;scroll-snap-align:start}.review-top{display:flex;align-items:center;gap:12px}.review-avatar{display:grid;width:42px;height:42px;border-radius:50%;background:var(--wood);color:#fff;place-items:center;font-weight:600}.review-top b,.review-top small{display:block}.review-top small{margin-top:3px;color:#80766d;font-size:.76rem}.review-stars{margin:22px 0 16px;color:var(--gold);letter-spacing:.08em}.review-card p{margin:0;white-space:pre-line;color:#4f4943;font-size:.93rem;line-height:1.62}.reviews-cta{margin:65px auto 0;padding:38px;border:1px solid var(--line);border-radius:25px;background:#f7f3ed;text-align:center}.reviews-cta b{font-family:Unbounded,var(--sans);font-size:1.2rem;font-weight:400}.reviews-cta p{margin:12px auto 22px;color:#665d55}.reviews-cta>a:last-child{display:block;margin-top:18px;color:var(--wood);font-size:.88rem;font-weight:600}@media(max-width:1080px){.review-card{flex-basis:calc((100% - 18px)/2)}}@media(max-width:760px){.reviews-shell{width:min(100% - 40px,560px);padding:85px 0}.reviews-head h2{font-size:clamp(2rem,8vw,2.8rem)}.review-card{flex-basis:88%;min-height:0}.reviews-cta{margin-top:42px;padding:28px 20px}.reviews-controls{margin-top:25px}}
.faq{background:#f7f3ed}.faq-shell{display:grid;grid-template-columns:35% 65%;gap:clamp(50px,8vw,130px);width:min(100% - 80px,1160px);margin:auto;padding:130px 0}.faq-head{position:sticky;top:120px;height:max-content}.faq-head h2{margin:26px 0;font-family:Unbounded,var(--sans);font-size:clamp(2rem,3.4vw,3.7rem);font-weight:400;letter-spacing:-.065em;line-height:1.2}.faq-head h2 em{color:var(--gold);font-style:normal}.faq-head p{margin:0 0 8px;color:#665d55}.faq-head>a{color:var(--wood);font-size:.9rem;font-weight:600}.faq-list{border-top:1px solid var(--line)}.faq-item{border-bottom:1px solid var(--line)}.faq-item button{display:grid;grid-template-columns:38px minmax(0,1fr) 24px;gap:14px;width:100%;padding:24px 4px;border:0;background:transparent;color:var(--graphite);text-align:left;align-items:center;cursor:pointer}.faq-item button span{color:var(--gold);font-size:.73rem}.faq-item button b{font-size:1rem;font-weight:500}.faq-item button i{color:var(--wood);font-size:1.45rem;font-style:normal;text-align:right}.faq-answer{display:grid;grid-template-rows:0fr;transition:grid-template-rows .3s ease}.faq-answer>div{overflow:hidden;color:#625950;line-height:1.7}.faq-answer a{color:var(--wood);font-weight:600}.faq-item.is-open .faq-answer{grid-template-rows:1fr}.faq-item.is-open .faq-answer>div{padding:0 42px 25px 56px}.faq-item.is-open button i{color:var(--gold);font-size:0}.faq-item.is-open button i::after{content:'−';font-size:1.45rem}@media(max-width:760px){.faq-shell{display:block;width:min(100% - 40px,560px);padding:85px 0}.faq-head{position:static}.faq-head h2{font-size:clamp(2rem,8vw,2.8rem)}.faq-list{margin-top:42px}.faq-item button{grid-template-columns:30px minmax(0,1fr) 20px;padding:20px 0}.faq-item.is-open .faq-answer>div{padding:0 25px 20px 44px}}
.service-search{position:relative;display:flex;align-items:center;max-width:720px;height:64px;margin-top:34px;border:1px solid #cbbdac;border-radius:20px;background:#fff;transition:border-color .25s ease,box-shadow .25s ease}.service-search:focus-within{border-color:var(--gold);box-shadow:0 8px 24px rgba(105,75,56,.07)}.service-search>svg{width:21px;height:21px;margin-left:22px;fill:none;stroke:var(--wood);stroke-linecap:round;stroke-linejoin:round;stroke-width:1.55}.service-search input{width:100%;height:100%;padding:0 16px;border:0;outline:0;background:transparent;color:var(--graphite);font:400 1rem Manrope,sans-serif}.service-search input::placeholder{color:#8a8179}.service-search button{width:36px;height:36px;margin-right:12px;border:0;border-radius:50%;background:transparent;color:var(--wood);font-size:1.5rem;line-height:1;opacity:0;pointer-events:none;transition:background .2s ease,opacity .2s ease}.service-search button.is-visible{opacity:1;pointer-events:auto}.service-search button:hover{background:#f5eee6}.search-count{min-height:22px;margin:13px 0 -7px;color:var(--wood);font-size:.86rem;font-weight:600}.search-results{max-width:900px}.search-result{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:15px;align-items:center;padding:16px 12px;border-bottom:1px solid #e3d9ce;transition:background .25s ease}.search-result:hover,.search-result:focus-visible{background:#fffaf3;outline:none}.search-result .service-icon{width:38px;height:38px;margin:0}.search-result .service-icon img{width:34px;height:34px}.search-result b{display:block;font-size:.98rem;font-weight:500}.search-result small{display:block;margin-top:4px;color:#7d7268;font-size:.82rem}.search-result>strong{color:var(--wood);font-size:.9rem;white-space:nowrap}.search-result i{font-style:normal}.search-empty{padding:25px 0 12px}.search-empty b{font-size:1.05rem}.search-empty p{max-width:520px;color:#655c54;line-height:1.6}.search-empty .booking-button{margin-top:5px}.services-grid[hidden]{display:none}.price-row{scroll-margin-top:118px;transition:background .45s ease,border-color .45s ease,padding .45s ease}.price-row.is-highlighted{margin:0 -12px;padding:19px 12px;border-color:var(--gold);border-radius:12px;background:#f7edda}@media(max-width:760px){.service-search{width:100%;height:58px;margin-top:28px;border-radius:17px}.service-search>svg{margin-left:18px}.search-result{grid-template-columns:40px minmax(0,1fr);gap:12px;padding:15px 2px}.search-result>strong{grid-column:2;font-size:.88rem}.search-result .service-icon{width:34px;height:34px}.search-result .service-icon img{width:31px;height:31px}.price-row.is-highlighted{margin:0 -8px;padding-right:8px;padding-left:8px}}
.contacts{background:#fff}.contacts-shell{display:grid;grid-template-columns:minmax(0,45%) minmax(0,55%);column-gap:clamp(45px,7vw,110px);row-gap:38px;width:min(100% - 80px,1160px);margin:auto;padding:130px 0}.contacts-main{min-width:0}.contacts-head h2{margin:26px 0 46px;font-family:Unbounded,var(--sans);font-size:clamp(2rem,3.3vw,3.65rem);font-weight:400;letter-spacing:-.065em;line-height:1.22}.contacts-head h2 em{color:var(--gold);font-style:normal}.contact-details{border-top:1px solid var(--line)}.contact-detail{display:grid;grid-template-columns:34px minmax(0,1fr);gap:17px;padding:23px 0;border-bottom:1px solid var(--line)}.contact-detail-icon{display:grid;width:30px;height:30px;color:var(--gold);place-items:center}.contact-detail svg,.contact-messengers svg,.contact-social svg,.contact-map-marker svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.45}.contact-detail p,.contact-messengers>p{margin:0 0 8px;color:var(--gold);font-size:.71rem;font-weight:600;letter-spacing:.12em}.contact-detail address,.contact-detail>a,.contact-detail dl{margin:0;color:#4e4842;font-size:.98rem;font-style:normal;line-height:1.65}.contact-detail>a{color:var(--wood);font-size:1.08rem;font-weight:600}.contact-detail>a:hover{color:var(--gold)}.contact-detail dl>div{display:flex;gap:18px}.contact-detail dt{min-width:76px;font-weight:500}.contact-detail dd{margin:0;color:#72685f}.contact-messengers{margin-top:34px}.contact-messengers>div{display:flex;gap:10px;flex-wrap:wrap}.contact-messengers a{display:inline-flex;min-height:48px;align-items:center;gap:9px;padding:0 15px;border:1px solid var(--line);border-radius:15px;background:#fdfbf8;color:var(--wood);font-size:.9rem;font-weight:600;transition:transform .28s ease,border-color .28s ease,color .28s ease}.contact-messengers a:hover{border-color:var(--gold);color:var(--gold);transform:translateY(-2px)}.contact-messengers a:focus-visible,.contact-actions a:focus-visible,.contact-social a:focus-visible,.contact-map-card a:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.contact-actions{display:flex;gap:13px;align-items:center;margin-top:36px;flex-wrap:wrap}.contact-actions .booking-button{min-height:52px;padding:0 22px}.contact-route{display:inline-flex;min-height:52px;align-items:center;padding:0 18px;border:1px solid var(--line);border-radius:999px;color:var(--wood);font-size:.9rem;font-weight:600;transition:transform .28s ease,border-color .28s ease,color .28s ease}.contact-route:hover{border-color:var(--gold);color:var(--gold);transform:translateY(-2px)}.contact-map{position:relative;isolation:isolate;display:flex;min-height:560px;overflow:hidden;border:1px solid #e4dbd0;border-radius:30px;background:#f3ece4;align-items:flex-end}.contact-map::before,.contact-map::after{position:absolute;z-index:-1;content:'';border:1px solid rgba(153,118,76,.2);border-radius:50%}.contact-map::before{width:135%;height:78%;top:7%;left:-30%;transform:rotate(-15deg)}.contact-map::after{width:110%;height:62%;right:-35%;bottom:13%;transform:rotate(21deg)}.contact-map-grid{position:absolute;inset:0;z-index:-2;opacity:.52;background-image:linear-gradient(120deg,transparent 49.7%,rgba(121,91,62,.13) 50%,transparent 50.3%),linear-gradient(18deg,transparent 49.6%,rgba(121,91,62,.11) 50%,transparent 50.4%);background-size:158px 158px,196px 196px}.contact-map-marker{position:absolute;top:27%;left:51%;display:grid;width:52px;height:52px;border:1px solid var(--gold);border-radius:50%;background:#fff;color:var(--wood);place-items:center;transform:translate(-50%,-50%)}.contact-map-marker::after{position:absolute;top:50%;left:50%;width:72px;height:72px;border:1px solid rgba(185,149,92,.45);border-radius:50%;content:'';transform:translate(-50%,-50%)}.contact-map-card{width:calc(100% - 44px);margin:0 22px 22px;padding:23px;border:1px solid rgba(221,209,195,.9);border-radius:21px;background:rgba(255,255,255,.92);backdrop-filter:blur(10px)}.contact-map-card b,.contact-map-card span,.contact-map-card a{display:block}.contact-map-card b{font-family:Unbounded,var(--sans);font-size:.94rem;font-weight:400}.contact-map-card span{margin-top:9px;color:#665d55;font-size:.88rem;line-height:1.5}.contact-map-card a{margin-top:17px;color:var(--wood);font-size:.85rem;font-weight:700;transition:color .25s ease}.contact-map-card a:hover{color:var(--gold)}.contact-social{grid-column:1/-1;display:flex;justify-content:center;gap:26px;padding-top:8px;border-top:1px solid var(--line)}.contact-social a{display:inline-flex;align-items:center;gap:9px;padding-top:25px;color:var(--wood);font-size:.88rem;font-weight:600;transition:color .25s ease,transform .25s ease}.contact-social a:hover{color:var(--gold);transform:translateY(-2px)}.contact-social svg{width:20px;height:20px}@media(max-width:760px){.contacts-shell{display:flex;flex-direction:column;width:min(100% - 40px,560px);gap:36px;padding:85px 0}.contacts-head h2{margin:24px 0 37px;font-size:clamp(2rem,8vw,2.8rem)}.contact-detail{padding:20px 0;gap:13px}.contact-detail dl>div{gap:13px}.contact-detail dt{min-width:68px}.contact-messengers{margin-top:30px}.contact-messengers>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.contact-messengers a{min-height:56px;justify-content:center;padding:7px 5px;flex-direction:column;font-size:.74rem}.contact-messengers svg{width:20px;height:20px}.contact-actions{display:grid;grid-template-columns:1fr;margin-top:30px}.contact-actions .booking-button,.contact-route{width:100%;justify-content:center}.contact-map{order:2;width:100%;min-height:340px;border-radius:25px}.contact-map-card{width:calc(100% - 32px);margin:0 16px 16px;padding:19px}.contact-map-marker{top:29%;width:48px;height:48px}.contact-social{order:3;width:100%;gap:22px;padding-top:0;border-top:0}.contact-social a{padding-top:0}.contacts-main{width:100%}}@media(prefers-reduced-motion:reduce){.contact-messengers a,.contact-route,.contact-social a{transition:none}}
.about-media-frame picture,.founders-photo picture,.contact-map picture{display:block;width:100%;height:100%}.contact-map{display:block;height:560px;cursor:pointer;transition:border-color .3s ease}.contact-map::before,.contact-map::after{display:none}.contact-map picture>img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.contact-map:hover{border-color:var(--gold)}.contact-map:hover picture>img{transform:scale(1.015)}.contact-map:focus-visible{outline:2px solid var(--gold);outline-offset:4px}@media(max-width:760px){.contact-map{height:340px}}@media(prefers-reduced-motion:reduce){.contact-map,.contact-map picture>img{transition:none}}
.contact-map-overlay{position:absolute;right:14px;bottom:14px;left:14px;z-index:1;display:block;padding:16px;border:1px solid rgba(185,149,92,.68);border-radius:20px;background:rgba(255,253,249,.84);color:var(--graphite);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.contact-map-overlay b,.contact-map-overlay span,.contact-map-overlay i{display:block}.contact-map-overlay b{font-family:Unbounded,var(--sans);font-size:.76rem;font-weight:400;letter-spacing:-.04em}.contact-map-overlay span{margin-top:8px;color:#6e655d;font-size:.82rem;line-height:1.45}.contact-map-overlay i{margin-top:12px;color:var(--wood);font-size:.79rem;font-style:normal;font-weight:600}.contact-map:hover .contact-map-overlay i{color:var(--gold)}@media(max-width:760px){.service-tile{min-height:0;padding:22px 22px 26px}.service-tile small{margin-top:10px}.service-tile .service-view{position:static;display:block;margin-top:12px;opacity:1;transform:none}.service-tile--cta{min-height:190px}.contact-map{height:380px}.contact-map-overlay{right:12px;bottom:12px;left:12px;padding:16px;border-radius:19px}}@media(prefers-reduced-motion:reduce){.contact-map:hover>img{transform:none}}
.site-footer{position:relative;overflow:hidden;border-radius:38px 38px 0 0;background:#3d2a20;color:#fbf7f1}.footer-shell{width:min(100% - 80px,1160px);margin:auto;padding:86px 0 28px}.footer-top{display:grid;grid-template-columns:34% minmax(0,1fr);gap:clamp(46px,8vw,130px)}.footer-brand>img{display:block;width:clamp(210px,20vw,290px);height:auto;object-fit:contain}.footer-brand p{margin:22px 0 28px;color:#fbf7f1;font-size:.94rem;line-height:1.65}.footer-brand p span{color:#d6c7b8}.footer-book{display:inline-flex;min-height:50px;align-items:center;justify-content:center;padding:0 22px;border:1px solid var(--gold);border-radius:999px;background:var(--gold);color:#38271e;font-size:.88rem;font-weight:700;transition:background .25s ease,color .25s ease,transform .25s ease}.footer-book:hover{background:#dfc28f;transform:translateY(-2px)}.footer-columns{display:grid;grid-template-columns:1fr 1.32fr 1fr;gap:clamp(28px,4vw,62px)}.footer-column{display:flex;min-width:0;margin:0;flex-direction:column;gap:12px;font-style:normal}.footer-column>p{margin:0 0 8px;color:#d9b775;font-size:.69rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.footer-column>a,.footer-column>span{color:#f5eee6;font-size:.87rem;line-height:1.6;transition:color .25s ease}.footer-column>a:hover{color:#d9b775}.footer-column address{font-style:normal}.footer-column>span{color:#dfd3c8}.footer-column>span+span{margin-top:3px}.footer-connect a{display:inline-flex;align-items:center;gap:9px}.footer-connect svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.45}.footer-bottom{display:grid;grid-template-columns:1fr auto 1fr;gap:24px;align-items:center;margin-top:76px;padding-top:25px;border-top:1px solid rgba(220,183,117,.48);color:#d8cabe;font-size:.74rem}.footer-legal{display:flex;justify-content:center;gap:10px;color:#d8cabe}.footer-legal i{color:#d9b775;font-style:normal}.ghost-credit{display:flex;justify-self:end;align-items:center;gap:9px;color:#d8cabe;opacity:.82;transition:opacity .25s ease,color .25s ease}.ghost-credit img{width:24px;height:24px;object-fit:contain}.ghost-credit b{font-weight:600}.ghost-credit:hover{color:#d9b775;opacity:1}.footer-column a:focus-visible,.footer-book:focus-visible,.ghost-credit:focus-visible{outline:2px solid #d9b775;outline-offset:4px}@media(max-width:900px){.footer-top{grid-template-columns:1fr;gap:54px}.footer-brand{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:26px}.footer-brand p{margin:0}.footer-columns{grid-template-columns:repeat(3,minmax(0,1fr))}.footer-bottom{margin-top:58px}}@media(max-width:760px){.site-footer{border-radius:30px 30px 0 0}.footer-shell{width:min(100% - 40px,560px);padding:64px 0 26px}.footer-top{gap:46px}.footer-brand{display:block}.footer-brand>img{width:210px}.footer-brand p{margin:20px 0 24px}.footer-book{min-height:50px;padding:0 21px}.footer-columns{grid-template-columns:1fr;gap:35px}.footer-column{gap:10px}.footer-column>p{margin-bottom:5px}.footer-bottom{display:flex;align-items:flex-start;gap:18px;margin-top:55px;padding-top:23px;flex-direction:column}.footer-legal{justify-content:flex-start;flex-wrap:wrap}.ghost-credit{justify-self:auto;align-self:center;margin-top:3px}.ghost-credit img{width:23px;height:23px}}@media(prefers-reduced-motion:reduce){.footer-book,.ghost-credit,.footer-column>a{transition:none}}
html,body{overflow-x:clip}.faq-item button i{position:relative;display:grid;width:22px;height:22px;color:var(--wood);font-size:0;place-items:center}.faq-item button i::before,.faq-item button i::after{position:absolute;width:18px;height:1.5px;border-radius:2px;background:currentColor;content:'';transition:transform .24s ease,opacity .24s ease}.faq-item button i::after{transform:rotate(90deg)}.faq-item.is-open button i{color:var(--gold);font-size:0}.faq-item.is-open button i::after{content:'';opacity:0;transform:rotate(90deg)}.reviews{overflow-x:clip}.hero h1 span{position:relative;display:inline-block;white-space:nowrap;color:#fff}.hero h1 span::after{position:absolute;right:0;bottom:-.13em;left:0;height:2.5px;border-radius:999px;background:var(--gold);content:'';transform:scaleX(0);transform-origin:left;animation:hero-smile-underline .72s ease .4s forwards}@keyframes hero-smile-underline{to{transform:scaleX(1)}}@media(max-width:760px){.faq-item button i{width:20px;height:20px}.faq-item button i::before,.faq-item button i::after{width:17px;height:1.5px}}@media(prefers-reduced-motion:reduce){.hero h1 span::after{animation:none;transform:scaleX(1)}}
.doctor-mobile-cta{display:none}.doctor-card--chief{z-index:1}.doctor-info h3{line-height:1.35}.doctor-info p{line-height:1.5}@media(max-width:760px){.doctor-mobile-cta{display:flex;min-height:48px;align-items:center;margin-top:17px;border-top:1px solid var(--line);color:var(--wood);font:600 .88rem Manrope,sans-serif}.doctor-card:hover{transform:none}.doctor-card:hover .doctor-photo img{filter:none;transform:none}}
@media(min-width:901px) and (max-width:1080px){.doctors-composition .doctors-grid{width:min(100%,720px);grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}}
.doctor-page{background:#f7f3ed}.doctor-detail{padding:126px 0 100px}.doctor-detail-shell{width:min(100% - 80px,1160px);margin:auto}.doctor-back{display:inline-flex;min-height:44px;align-items:center;margin-bottom:34px;color:var(--wood);font-size:.9rem;font-weight:600}.doctor-profile{display:grid;grid-template-columns:minmax(320px,44%) minmax(0,1fr);gap:clamp(48px,8vw,110px);align-items:start}.doctor-profile figure{position:sticky;top:112px;margin:0;overflow:hidden;border-radius:28px;background:#eee4d8}.doctor-profile figure img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover}.doctor-chief-label{margin:0 0 18px;color:var(--gold);font-size:.72rem;font-weight:600;letter-spacing:.14em}.doctor-profile-copy h1{margin:0;font-family:Unbounded,var(--sans);font-size:clamp(2.25rem,4.5vw,4.6rem);font-weight:400;letter-spacing:-.06em;line-height:1.08}.doctor-specialty{margin:20px 0 54px;color:var(--wood);font-size:1.08rem;line-height:1.6}.doctor-profile-copy section{padding:30px 0;border-top:1px solid var(--line)}.doctor-profile-copy h2{margin:0 0 16px;color:var(--gold);font-size:.72rem;font-weight:600;letter-spacing:.14em}.doctor-profile-copy section p,.doctor-profile-copy li{color:#514a44;line-height:1.75}.doctor-profile-copy section p{margin:0}.doctor-profile-copy ul{display:grid;gap:10px;margin:0;padding:0;list-style:none}.doctor-profile-copy li{position:relative;padding-left:19px}.doctor-profile-copy li::before{position:absolute;top:.75em;left:0;width:6px;height:6px;border-radius:50%;background:var(--gold);content:''}.doctor-book{display:inline-flex;min-height:54px;align-items:center;justify-content:center;margin-top:18px;padding:0 25px;border-radius:999px;background:var(--wood);color:#fff;font-weight:600;transition:background .25s ease,transform .25s ease}.doctor-book:hover{background:var(--gold);transform:translateY(-2px)}.doctor-not-found{display:grid;min-height:70vh;place-items:center;align-content:center;gap:20px}.doctor-not-found h1{margin:0;font-family:Unbounded,var(--sans);font-size:5rem}.doctor-not-found a{color:var(--wood);font-weight:600}@media(max-width:760px){.doctor-detail{padding:96px 0 72px}.doctor-detail-shell{width:min(100% - 40px,560px)}.doctor-back{margin-bottom:22px}.doctor-profile{display:block}.doctor-profile figure{position:static;border-radius:22px}.doctor-profile-copy{padding-top:32px}.doctor-profile-copy h1{font-size:clamp(2rem,10vw,3.25rem)}.doctor-specialty{margin:16px 0 38px}.doctor-profile-copy section{padding:25px 0}.doctor-book{width:100%;margin-top:12px}}
.service-page{background:#f7f3ed}.service-detail{overflow:hidden}.price-section{position:relative;isolation:isolate;margin:0 calc(50% - 50vw) -110px;padding:clamp(48px,6vw,78px) max(24px,calc((100vw - 970px)/2)) 110px;overflow:hidden;border-radius:40px 40px 0 0;background:#3d2a20;color:#fbf7f1}.price-section::before{position:absolute;z-index:-1;top:4%;right:max(-42px,calc((970px - 100vw)/2));width:min(440px,55vw);height:180px;background:url('/assets/optimized/ui/bliss-logo-512.png') center/contain no-repeat;content:'';opacity:.035;pointer-events:none}.price-section h2{color:#fbf7f1}.price-section .price-list{margin-top:36px;border-top-color:rgba(251,247,241,.18)}.price-section .price-row{border-bottom-color:rgba(251,247,241,.16);color:#fbf7f1}.price-section .price-row i{border-bottom-color:rgba(251,247,241,.19)}.price-section .price-row strong{color:var(--gold);opacity:1}.price-section .price-row.is-highlighted{border-color:rgba(195,165,111,.58);background:rgba(195,165,111,.12)}@media(max-width:760px){.price-section{margin-bottom:-110px;padding:46px 20px 94px;border-radius:30px 30px 0 0}.price-section .price-list{margin-top:28px}.price-section .price-row{gap:16px;padding:20px 0;font-size:1rem}.price-section .price-row span{min-width:0}.price-section .price-row strong{align-self:start;font-size:.95rem}}
:root{--espresso:#1d1714;--espresso-surface:#251c18;--espresso-raised:#2c211b;--ivory:#fbf7f1;--beige:#d8cabe;--dark-line:rgba(251,247,241,.14)}body,.page-canvas{background:var(--espresso);color:var(--ivory)}.site-preloader{background:#30251f}.header-shell{background:rgba(251,247,241,.93);box-shadow:0 10px 36px rgba(14,10,8,.27)}.hero-overlay{background:rgba(0,0,0,.42)}.hero-smile-curve path:first-child{fill:var(--espresso)}.hero-smile-button{background:var(--ivory)}
.about,.services,.doctors,.reviews,.contacts{position:relative;isolation:isolate;background:var(--espresso);color:var(--ivory)}.about{margin-top:-56px;background:var(--espresso)}.about::before,.reviews::before{position:absolute;z-index:-1;width:min(780px,72vw);height:430px;background:radial-gradient(circle,rgba(195,165,111,.045),transparent 68%);content:'';pointer-events:none}.about::before{top:4%;right:-20%}.reviews::before{top:6%;left:-22%}.about-word{color:rgba(251,247,241,.025)}.about-scroll,.section-label{color:var(--gold)}.about h2,.about h3,.about-story h2,.about-closing h2,.why-item h3{color:var(--ivory)}.about-lead>p,.about-story>p,.why-item p{color:var(--beige)}.why-list,.about-story{border-color:var(--dark-line)}.why-item{border-color:var(--dark-line)}.why-item>span{color:var(--gold)}.why-item svg{stroke:var(--gold)}.why-item:hover{border-color:rgba(195,165,111,.38);background:rgba(255,255,255,.035)}.why-brand::before{color:rgba(251,247,241,.025)}.about-closing p{color:var(--beige)}
.services{background:var(--espresso-surface)}.services::before,.doctors::before{position:absolute;z-index:-1;inset:0;background:radial-gradient(circle at 72% 18%,rgba(195,165,111,.04),transparent 32%);content:'';pointer-events:none}.services-head h2,.doctors-head h2,.reviews-head h2,.contacts-head h2{color:var(--ivory)}.services-head>p:last-child,.reviews-head>p{color:var(--beige)}.service-tile,.review-card{border-color:rgba(195,165,111,.23);background:var(--ivory);box-shadow:0 12px 30px rgba(12,8,6,.12)}.service-tile:hover,.service-tile:focus-visible{background:#fffaf3;border-color:var(--gold)}.service-tile--cta{border-color:#795a45;background:var(--wood);color:var(--ivory)}.service-tile--cta:hover,.service-tile--cta:focus-visible{border-color:#8b6951;background:#795a45}.service-tile--cta>span{color:#dfc18d}
.doctors{background:var(--espresso)}.doctors-decor{opacity:.16}.doctors-decor img{filter:sepia(.75) saturate(.75) brightness(1.6)}.doctor-card{border-color:rgba(195,165,111,.28);background:var(--ivory);box-shadow:0 12px 28px rgba(12,8,6,.13)}.doctor-card:hover{border-color:var(--gold)}.doctor-info h3{color:#2c211b}.doctor-info p{color:#665a50}.doctor-placeholder{background:#f1e9df}
.works{background:#f1e9df;color:var(--graphite)}.works-head h2{color:var(--graphite)}.work-card{background:var(--ivory)}.reviews{background:var(--espresso-surface)}.reviews-cta{border-color:rgba(195,165,111,.25);background:var(--espresso-raised);color:var(--ivory)}.reviews-cta p{color:var(--beige)}.reviews-cta>a:last-child{color:#dfc18d}.faq{background:var(--ivory);color:var(--graphite)}.contacts{background:var(--espresso)}.contacts-head h2,.contact-detail address,.contact-detail>a,.contact-detail dl,.contact-detail dd{color:var(--ivory)}.contact-detail,.contact-details,.contact-social{border-color:var(--dark-line)}.contact-detail p,.contact-messengers>p{color:var(--gold)}.contact-messengers a,.contact-route{border-color:rgba(195,165,111,.32);background:rgba(251,247,241,.035);color:var(--ivory)}.contact-messengers a:hover,.contact-route:hover{border-color:var(--gold);color:#dfc18d}.contact-map{border-color:rgba(195,165,111,.28);background:var(--espresso-raised)}.contact-map-overlay{border-color:rgba(195,165,111,.42);background:rgba(37,28,24,.86);color:var(--ivory)}.contact-map-overlay span{color:var(--beige)}.contact-map-overlay i{color:#dfc18d}.site-footer{background:#17120f}.service-page,.doctor-page{background:var(--ivory)}.header-shell{color:var(--graphite)}
:root{--espresso:#20201f;--espresso-surface:#272725;--espresso-raised:#2e2e2b;--ivory:#fbf7f1;--beige:#d8d1c8;--dark-line:rgba(251,247,241,.14)}.hero-overlay{background:rgba(0,0,0,.42)}.about::before,.reviews::before,.services::before,.doctors::before{background:radial-gradient(circle at 70% 15%,rgba(255,255,255,.028),transparent 68%)}.doctor-info h3{color:var(--espresso-raised)}.works{background:#f3eee7}.price-section{background:var(--espresso-surface)}.site-footer{background:#181817}.contact-map-overlay{background:rgba(46,46,43,.9)}
.service-tile--cta{grid-column:1 / -1;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;min-height:170px;padding:32px 36px;align-items:center;transform:none}.service-tile--cta strong{grid-column:1;grid-row:1;font-size:clamp(1.3rem,2vw,1.7rem);line-height:1.35}.service-tile--cta small{grid-column:1;grid-row:2;margin-top:8px}.service-tile--cta>span{grid-column:2;grid-row:1 / span 2;margin:0;color:#dfc18d;font-size:.92rem;white-space:nowrap}.service-tile--cta:hover,.service-tile--cta:focus-visible{transform:none;border-color:#b79769;background:#795a45}.service-tile--cta:hover>span,.service-tile--cta:focus-visible>span{transform:translateX(4px)}@media(max-width:760px){.service-tile--cta{display:flex;min-height:190px;padding:26px 22px;align-items:flex-start}.service-tile--cta strong{font-size:1.16rem}.service-tile--cta>span{margin-top:24px;font-size:.88rem}}@media(prefers-reduced-motion:reduce){.service-tile--cta,.service-tile--cta>span{transition:none}}

/* Flat graphite surfaces: section separation comes from the adjacent surface, not gradients. */
:root{
  --color-background:#30251f;
  --color-bg-primary:var(--color-background);
  --color-graphite:var(--color-bg-primary);
  --graphite:var(--color-graphite);
  --espresso:var(--color-graphite);
  --espresso-surface:var(--color-graphite);
  --espresso-raised:#2e2e2b;
}
.hero-overlay{background:rgba(0,0,0,.42)}
.about::before,.reviews::before,.services::before,.doctors::before{display:none}
.about,.services,.doctors,.reviews,.contacts,.price-section,.site-footer{background:var(--color-graphite)}
.service-tile--cta,.service-tile--cta:hover,.service-tile--cta:focus-visible{border-color:var(--espresso-raised);background:var(--espresso-raised)}

/* Case studies: retain every pixel of each clinical photograph. */
.ba-slider{background:#30251F}
.ba-slider>img,.ba-before img{object-fit:contain;transform:none!important}
.ba-before{inset:0;width:100%;clip-path:inset(0 calc(100% - var(--position)) 0 0)}
.ba-before img{width:100%;max-width:100%}
.works-mobile{display:none}
@media(max-width:760px){
  .works-grid{display:none}
  .works-mobile{display:block}
  .mobile-case-tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:14px}
  .mobile-case-tabs button,.mobile-case-arrow{border:1px solid rgba(195,165,111,.45);background:#30251F;color:#fbf7f1;cursor:pointer;transition:background 180ms ease,color 180ms ease,border-color 180ms ease,transform 180ms ease}
  .mobile-case-tabs button{min-height:46px;border-radius:999px;font-size:.8rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
  .mobile-case-tabs button.is-active{border-color:#d3ad62;background:#d3ad62;color:#30251F}
  .mobile-case-stage{overflow:hidden;border:1px solid rgba(195,165,111,.32);border-radius:24px;background:#30251F}
  .mobile-case{margin:0;animation:case-fade 180ms ease}
  .mobile-case[hidden]{display:none}
  .mobile-case-media{display:grid;height:min(72vw,440px);background:#30251F;place-items:center;touch-action:pan-y}
  .mobile-case-media img{display:block;width:100%;height:100%;object-fit:contain;touch-action:pan-y;user-select:none}
  .mobile-case-navigation{display:grid;grid-template-columns:48px 1fr 48px;gap:14px;align-items:center;margin-top:16px}
  .mobile-case-arrow{display:grid;width:48px;height:48px;border-radius:50%;font-size:1.25rem;place-items:center}
  .mobile-case-arrow:active{transform:scale(.96)}
  .mobile-case-navigation span{text-align:center;color:var(--graphite);font-size:.78rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
}
@keyframes case-fade{from{opacity:.35;transform:translateY(3px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.mobile-case,.mobile-case-tabs button,.mobile-case-arrow{animation:none;transition:none}}
.faq,.works,.booking-page{background:var(--color-graphite);color:var(--ivory)}
.works-head h2,.faq-head h2{color:var(--ivory)}
.faq-head p,.faq-answer>div{color:var(--beige)}
.faq-head>a,.faq-item button i,.faq-answer a{color:var(--gold)}
.faq-item button{color:var(--ivory)}
.booking-option,.booking-card{color:var(--graphite)}
.service-page,.doctor-page{background:var(--color-graphite);color:var(--ivory)}
.service-breadcrumb{color:var(--beige)}
.service-breadcrumb a,.doctor-back,.doctor-specialty,.doctor-not-found a{color:var(--gold)}
.service-detail header p,.doctor-profile-copy section p,.doctor-profile-copy li{color:var(--beige)}

/* Reuses the Hero CTA glass surface for readable media-overlay copy. */
.hero-glass{
  border:1px solid rgba(228,212,190,.28);
  background:rgba(48,37,31,.44);
  box-shadow:0 12px 30px rgba(19,13,10,.12);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
}
.hero-glass--intro{width:fit-content;max-width:100%;padding:24px 27px 25px;border-radius:19px}
.hero-glass--intro .hero-clinic{margin:30px 0 0}
.hero-schedule{display:flex;align-items:flex-start;gap:10px;flex-direction:column}
.hero-glass--label{width:fit-content;margin:0;padding:9px 14px;border-radius:999px}
.hero-glass--hours{max-width:100%;margin:0;padding:11px 16px;border-radius:14px}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.hero-glass{background:rgba(48,37,31,.72)}}
@media(max-width:760px){
  .hero-glass--intro{padding:16px 17px 17px;border-radius:16px}
  .hero-glass--intro .hero-clinic{margin-top:15px}
  .hero-schedule{gap:7px}
  .hero-glass--label{padding:7px 11px}
  .hero-glass--hours{padding:8px 11px;line-height:1.42}
}

/* Doctors: every card reserves the same content structure, regardless of copy length. */
.doctor-card{display:flex;min-height:0;flex-direction:column;transform:none}
.doctor-card--chief{transform:none}
.doctor-photo,.doctor-placeholder{flex:0 0 auto;aspect-ratio:4 / 5}
.doctor-info{
  display:grid;
  height:168px;
  grid-template-rows:18px 50px 48px 1fr;
  align-content:start;
}
.doctor-info small{grid-row:1;margin:0;align-self:start}
.doctor-info h3{grid-row:2;margin:0;align-self:start}
.doctor-info p{grid-row:3;margin:0;align-self:start}
.doctor-info .doctor-mobile-cta{grid-row:4;align-self:end}
.doctor-card--placeholder .doctor-info::after{grid-row:4;min-height:48px;content:''}
.doctor-photo>span{display:none}
@media (hover:hover) and (pointer:fine){
  .doctor-photo>span{display:block}
  .doctor-card--chief:hover{transform:translateY(-4px)}
}
@media (hover:none), (pointer:coarse){
  .doctor-photo>span{display:none!important}
  .doctor-card:hover .doctor-photo img{filter:none;transform:none}
  .doctor-mobile-cta{display:flex;min-height:48px;align-items:center;margin-top:0;border-top:1px solid var(--line);color:var(--wood);font:600 .88rem Manrope,sans-serif}
}
@media (max-width:760px){
  .doctor-info{height:186px;grid-template-rows:18px 52px 48px 1fr}
  .doctor-photo>span{display:none!important}
}

/* Services: compact frosted-glass category cards; the final booking CTA stays unchanged. */
.service-tile:not(.service-tile--cta){
  display:grid;
  height:224px;
  min-height:0;
  padding:20px;
  border:1px solid rgba(228,212,190,.28);
  border-radius:22px;
  background:rgba(251,247,241,.10);
  box-shadow:0 12px 30px rgba(19,13,10,.12);
  color:var(--ivory);
  grid-template-rows:16px 44px 48px 20px 20px;
  gap:6px;
  align-content:start;
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  transform:none;
}
.service-tile:not(.service-tile--cta) .service-number{color:var(--gold)}
.service-tile:not(.service-tile--cta) .service-icon{width:44px;height:44px;margin:0;color:var(--gold)}
.service-tile:not(.service-tile--cta) strong{align-self:start;color:var(--ivory);font-size:clamp(.76rem,.88vw,.9rem);line-height:1.38;text-wrap:balance}
.service-tile:not(.service-tile--cta) small{margin:0;color:var(--gold);font-size:.82rem;line-height:1.35}
.service-tile:not(.service-tile--cta) .service-view{position:static;display:inline-block;align-self:start;margin:0;color:rgba(251,247,241,.88);font-size:.8rem;font-weight:600;opacity:1;transform:none}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.service-tile:not(.service-tile--cta){background:rgba(48,37,31,.76)}}
@media (hover:hover) and (pointer:fine){
  .service-tile:not(.service-tile--cta):hover,.service-tile:not(.service-tile--cta):focus-visible{border-color:rgba(195,165,111,.7);background:rgba(251,247,241,.14);transform:translateY(-2px)}
  .service-tile:not(.service-tile--cta):hover .service-icon,.service-tile:not(.service-tile--cta):focus-visible .service-icon{color:#dfc18d;transform:translateY(-1px)}
  .service-tile:not(.service-tile--cta):hover .service-view,.service-tile:not(.service-tile--cta):focus-visible .service-view{transform:translateX(3px)}
}
@media (hover:none), (pointer:coarse){
  .service-tile:not(.service-tile--cta):hover{border-color:rgba(228,212,190,.28);background:rgba(251,247,241,.10);transform:none}
  .service-tile:not(.service-tile--cta):hover .service-icon{color:var(--gold);transform:none}
  .service-tile:not(.service-tile--cta):hover .service-view{transform:none}
}
@media (max-width:760px){
  .service-tile:not(.service-tile--cta){height:195px;padding:18px;grid-template-rows:15px 40px 46px 19px 19px;gap:5px}
  .service-tile:not(.service-tile--cta) .service-icon{width:40px;height:40px}
}

/* Refined service-card material and horizontal information hierarchy. */
.service-tile:not(.service-tile--cta){
  grid-template-columns:minmax(0,1fr) clamp(72px,6vw,88px);
  grid-template-rows:16px minmax(0,1fr) 20px 20px;
  gap:6px 10px;
  border-color:rgba(255,255,255,.18);
  background:rgba(255,248,238,.10);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.24),inset 0 -1px 0 rgba(48,37,31,.16),0 12px 30px rgba(19,13,10,.12);
  backdrop-filter:blur(20px) saturate(120%);
  -webkit-backdrop-filter:blur(20px) saturate(120%);
}
.service-tile:not(.service-tile--cta) .service-number{grid-column:1;grid-row:1}
.service-tile:not(.service-tile--cta) .service-icon{grid-column:2;grid-row:1 / span 2;align-self:center;justify-self:end;width:clamp(72px,6vw,88px);height:clamp(72px,6vw,88px);opacity:1}
.service-tile:not(.service-tile--cta) .service-icon img{width:100%;height:100%;object-fit:contain;filter:none}
.service-tile:not(.service-tile--cta) strong{grid-column:1;grid-row:2;align-self:center;font-size:clamp(1.12rem,1.65vw,1.45rem);font-weight:400;line-height:1.16;letter-spacing:-.045em;text-wrap:balance}
.service-tile:not(.service-tile--cta) small{grid-column:1;grid-row:3;align-self:end;font-size:.82rem}
.service-tile:not(.service-tile--cta) .service-view{grid-column:1;grid-row:4;align-self:end;font-size:.8rem}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.service-tile:not(.service-tile--cta){background:rgba(255,248,238,.16)}}
@media (hover:hover) and (pointer:fine){
  .service-tile:not(.service-tile--cta):hover,.service-tile:not(.service-tile--cta):focus-visible{border-color:rgba(255,255,255,.28);background:rgba(255,248,238,.14);box-shadow:inset 0 1px 0 rgba(255,255,255,.32),inset 0 -1px 0 rgba(48,37,31,.12),0 14px 32px rgba(19,13,10,.15);transform:translateY(-2px)}
  .service-tile:not(.service-tile--cta):hover .service-icon,.service-tile:not(.service-tile--cta):focus-visible .service-icon{opacity:1;transform:translateY(-1px)}
}
@media (max-width:760px){
  .service-tile:not(.service-tile--cta){grid-template-columns:minmax(0,1fr) clamp(58px,18vw,72px);grid-template-rows:15px minmax(0,1fr) 19px 19px;gap:5px 8px}
  .service-tile:not(.service-tile--cta) .service-icon{width:clamp(58px,18vw,72px);height:clamp(58px,18vw,72px)}
  .service-tile:not(.service-tile--cta) strong{font-size:clamp(1.12rem,5.4vw,1.32rem);line-height:1.17}
}
@media (min-width:1081px){
  .service-tile:not(.service-tile--cta) strong{font-size:clamp(.98rem,1.25vw,1.14rem);line-height:1.2}
}

/* Category 07: preserve a clear two-column rhythm for its longer label. */
.service-tile.service-tile--periodontal:not(.service-tile--cta){
  grid-template-columns:minmax(0,1fr) 74px;
}
.service-tile.service-tile--periodontal:not(.service-tile--cta) .service-icon{
  width:74px;
  height:74px;
  transform:translateY(-6px);
}
@media (hover:hover) and (pointer:fine){
  .service-tile.service-tile--periodontal:not(.service-tile--cta):hover .service-icon,
  .service-tile.service-tile--periodontal:not(.service-tile--cta):focus-visible .service-icon{transform:translateY(-7px)}
}
@media (min-width:761px) and (max-width:1080px){
  .service-tile.service-tile--periodontal:not(.service-tile--cta){grid-template-columns:minmax(0,1fr) 64px}
  .service-tile.service-tile--periodontal:not(.service-tile--cta) .service-icon{width:64px;height:64px}
}
@media (max-width:760px){
  .service-tile.service-tile--periodontal:not(.service-tile--cta){grid-template-columns:minmax(0,1fr) clamp(58px,16vw,64px)}
  .service-tile.service-tile--periodontal:not(.service-tile--cta) .service-icon{width:clamp(58px,16vw,64px);height:clamp(58px,16vw,64px);transform:translateY(-5px)}
}

/* Services CTA: retain its existing surface while using its full desktop width. */
@media (min-width:1081px){
  .service-tile--cta{grid-template-columns:minmax(0,78%) minmax(0,22%)}
  .service-tile--cta strong{font-size:clamp(1.4rem,1.85vw,1.75rem);white-space:nowrap}
  .service-tile--cta strong br{display:none}
  .service-tile--cta>span{justify-self:end}
}

/* The media remains clipped to Hero; only its boundary control may overlap About. */
.hero{z-index:2;overflow:visible}
.hero-background,.hero-video,.hero-overlay{clip-path:inset(0);pointer-events:none}
.hero-smile-button{top:auto;bottom:-27px;z-index:3}
@media (min-width:761px){
  .hero-video{display:block;object-fit:cover}
}
@media (max-width:760px){
  .hero-smile-button{bottom:-24px}
}

/* Shared service-category page hero: the supplied PNG is the visual anchor. */
.service-detail header{
  grid-template-columns:clamp(130px,11vw,170px) minmax(0,1fr);
  grid-template-rows:auto auto auto;
  gap:12px clamp(28px,4vw,64px);
  align-items:center;
  margin:60px 0 96px;
}
.service-detail header>.service-detail-icon{
  grid-column:1;
  grid-row:1 / span 3;
  align-self:center;
  width:clamp(130px,11vw,170px);
  height:clamp(130px,11vw,170px);
  object-fit:contain;
}
.service-detail header>span{grid-column:2;grid-row:1;align-self:end}
.service-detail h1{grid-column:2;grid-row:2;align-self:center}
.service-detail header p{grid-column:2;grid-row:3;align-self:start;max-width:620px}

/* A separate solid surface makes the price list distinct from the category hero. */
.service-page .price-section{background:#3a302a;color:#f4eee6}
.service-page .price-section h2,.service-page .price-section .price-row{color:#f4eee6}
.service-page .price-section .price-row strong{color:#d3ad62}
.service-page .price-section .price-list{border-top-color:rgba(211,173,98,.15)}
.service-page .price-section .price-row{border-bottom-color:rgba(244,238,230,.14)}
.service-page .price-section .price-row i{border-bottom-color:rgba(244,238,230,.16)}
@media (max-width:760px){
  .service-detail header{
    grid-template-columns:clamp(80px,25vw,105px) minmax(0,1fr);
    grid-template-rows:auto auto auto;
    gap:9px 16px;
    margin:45px 0 65px;
  }
  .service-detail header>.service-detail-icon{
    grid-column:1;
    grid-row:1 / span 3;
    width:clamp(80px,25vw,105px);
    height:clamp(80px,25vw,105px);
  }
  .service-detail header>span{grid-column:2;grid-row:1}
  .service-detail h1{grid-column:2;grid-row:2}
  .service-detail header p{grid-column:2;grid-row:3;font-size:1rem}
}

/* Persistent BLISS contact capsule: no brand-colored messenger treatments. */
.floating-contacts{
  position:fixed;
  z-index:40;
  right:24px;
  bottom:24px;
  display:grid;
  width:54px;
  padding:6px;
  border:1px solid rgba(244,238,230,.2);
  border-radius:999px;
  background:rgba(58,48,42,.72);
  box-shadow:0 12px 30px rgba(19,13,10,.18),inset 0 1px 0 rgba(244,238,230,.16);
  backdrop-filter:blur(16px) saturate(120%);
  -webkit-backdrop-filter:blur(16px) saturate(120%);
}
.floating-contacts a{
  display:grid;
  width:42px;
  height:42px;
  border-radius:50%;
  color:#f4eee6;
  place-items:center;
  transition:color .22s ease,background .22s ease,transform .22s ease;
}
.floating-contacts svg{
  width:21px;
  height:21px;
  fill:none;
  stroke:currentColor;
  stroke-linecap:round;
  stroke-linejoin:round;
  stroke-width:1.45;
}
.floating-contacts a:hover,.floating-contacts a:focus-visible{
  background:rgba(244,238,230,.09);
  color:#d3ad62;
  outline:none;
  transform:translateY(-1px);
}
@media (max-width:760px){
  .floating-contacts{right:14px;bottom:calc(14px + env(safe-area-inset-bottom));width:48px;padding:5px}
  .floating-contacts a{width:38px;height:38px}
  .floating-contacts svg{width:20px;height:20px}
}
@media (prefers-reduced-motion:reduce){.floating-contacts a{transition:none}}

/* The supplied platform artwork is displayed unchanged in every existing social control. */
.social-platform-icon{display:block;max-width:100%;max-height:100%;object-fit:contain;filter:none;background:transparent}
.header-social .social-platform-icon{width:22px;height:22px}
.mobile-menu .mobile-menu-social .social-platform-icon{width:24px;height:24px}
.header-social .social-platform-icon--header,.mobile-menu .mobile-menu-social .social-platform-icon--header{width:34px;height:34px;max-width:none;max-height:none;object-fit:contain}
.contact-messengers .social-platform-icon{width:21px;height:21px}
.contact-detail-icon .social-platform-icon{width:21px;height:21px}
.contact-social .social-platform-icon{width:20px;height:20px}
.footer-connect .social-platform-icon{width:17px;height:17px}
.floating-contacts .social-platform-icon{width:21px;height:21px}
.booking-icon .social-platform-icon{width:31px;height:31px}
.booking-icon .social-platform-icon--light-surface{width:44px;height:44px;max-width:none;max-height:none;object-fit:contain}
.booking-option>.social-platform-icon--light-surface{width:94px;height:94px;max-width:none;max-height:none;margin:17px 0;object-fit:contain}
@media(max-width:760px){.booking-icon .social-platform-icon{width:26px;height:26px}.booking-icon .social-platform-icon--light-surface{width:38px;height:38px}.booking-option>.social-platform-icon--light-surface{width:80px;height:80px;margin:9px 0}}
.booking-lead{max-width:580px;margin:-38px 0 46px;color:var(--beige);font-size:1.02rem;line-height:1.65}.booking-list--unified{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.booking-list--unified .booking-card{min-height:112px;grid-template-columns:54px minmax(0,1fr);gap:16px;padding:22px}.booking-list--unified .booking-card i{grid-column:2;margin-top:4px}.booking-list--unified .booking-card--instagram{grid-column:1 / -1}.booking-list--unified .booking-icon{width:50px;height:50px}.booking-list--unified .booking-icon .social-platform-icon--light-surface{width:44px;height:44px}.booking-list--unified .booking-card:hover,.booking-list--unified .booking-card:focus-visible{transform:translateY(-2px)}@media(max-width:760px){.booking-lead{margin:-24px 0 32px;font-size:.98rem}.booking-list--unified{grid-template-columns:1fr;gap:12px}.booking-list--unified .booking-card,.booking-list--unified .booking-card--instagram{grid-column:auto;min-height:102px;grid-template-columns:44px minmax(0,1fr);gap:12px;padding:17px}.booking-list--unified .booking-icon{width:40px;height:40px}.booking-list--unified .booking-icon .social-platform-icon--light-surface{width:38px;height:38px}}
.why-item-icon{display:block;width:44px;height:44px;max-width:none;max-height:none;margin:-3px;object-fit:contain;background:transparent;filter:none}@media(max-width:760px){.why-item-icon{width:42px;height:42px;margin:-5px}}
.header-social{align-items:center}
.header-social a{display:flex;align-items:center;justify-content:center}
.header-social .social-platform-icon--header{flex:0 0 auto}
.header-social .social-platform-icon--tiktok{transform:translateY(1px)}

/* Service categories: compact horizontal glass cards while preserving their existing content and material. */
.services-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.service-tile:not(.service-tile--cta){height:174px;padding:24px;grid-template-columns:minmax(0,1fr) 88px;grid-template-rows:16px minmax(0,1fr) 18px 18px;gap:4px 12px}
.service-tile:not(.service-tile--cta) .service-icon{width:88px;height:88px;grid-row:1 / span 2}
.service-tile:not(.service-tile--cta) strong{font-size:clamp(1.05rem,1.35vw,1.3rem);line-height:1.18;text-wrap:balance}
.service-tile.service-tile--periodontal:not(.service-tile--cta){grid-template-columns:minmax(0,1fr) 88px}
.service-tile.service-tile--periodontal:not(.service-tile--cta) .service-icon{width:88px;height:88px;transform:none}
@media (hover:hover) and (pointer:fine){.service-tile.service-tile--periodontal:not(.service-tile--cta):hover .service-icon,.service-tile.service-tile--periodontal:not(.service-tile--cta):focus-visible .service-icon{transform:translateY(-1px)}}
@media (min-width:761px) and (max-width:1080px){.services-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.service-tile:not(.service-tile--cta),.service-tile.service-tile--periodontal:not(.service-tile--cta){height:170px;grid-template-columns:minmax(0,1fr) 82px}.service-tile:not(.service-tile--cta) .service-icon,.service-tile.service-tile--periodontal:not(.service-tile--cta) .service-icon{width:82px;height:82px}}
@media (max-width:760px){.services-grid{grid-template-columns:1fr;gap:12px}.service-tile:not(.service-tile--cta),.service-tile.service-tile--periodontal:not(.service-tile--cta){height:166px;padding:20px;grid-template-columns:minmax(0,1fr) 72px;grid-template-rows:15px minmax(0,1fr) 18px 18px;gap:4px 8px}.service-tile:not(.service-tile--cta) .service-icon,.service-tile.service-tile--periodontal:not(.service-tile--cta) .service-icon{width:72px;height:72px;transform:none}.service-tile:not(.service-tile--cta) strong{font-size:clamp(1.05rem,5.1vw,1.28rem);line-height:1.18}}
@media (min-width:1081px){.services-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.service-tile:not(.service-tile--cta),.service-tile.service-tile--periodontal:not(.service-tile--cta){height:158px;padding:20px;grid-template-columns:minmax(0,1fr) 68px;grid-template-rows:15px minmax(0,1fr) 18px 18px;gap:4px 10px}.service-tile:not(.service-tile--cta) .service-icon,.service-tile.service-tile--periodontal:not(.service-tile--cta) .service-icon{width:68px;height:68px;transform:none}.service-tile:not(.service-tile--cta) strong{font-size:clamp(.98rem,1.05vw,1.08rem);line-height:1.18}}
.service-tile:not(.service-tile--cta) .service-number{display:none}
.service-tile:not(.service-tile--cta),.service-tile.service-tile--periodontal:not(.service-tile--cta){height:120px;padding:14px 20px;grid-template-columns:74px minmax(0,1fr);grid-template-rows:minmax(0,1fr) 16px 16px;gap:2px 10px}
.service-tile:not(.service-tile--cta) .service-icon,.service-tile.service-tile--periodontal:not(.service-tile--cta) .service-icon{grid-column:1;grid-row:1 / -1;align-self:center;justify-self:start;width:74px;height:74px;transform:none}
.service-tile:not(.service-tile--cta) strong{grid-column:2;grid-row:1;align-self:end;font-size:clamp(.98rem,1.05vw,1.08rem);line-height:1.14;text-wrap:balance}
.service-tile:not(.service-tile--cta) small{grid-column:2;grid-row:2;align-self:center}
.service-tile:not(.service-tile--cta) .service-view{grid-column:2;grid-row:3;align-self:start}
@media (hover:hover) and (pointer:fine){.service-tile.service-tile--periodontal:not(.service-tile--cta):hover .service-icon,.service-tile.service-tile--periodontal:not(.service-tile--cta):focus-visible .service-icon{transform:translateY(-1px)}}
@media (min-width:761px) and (max-width:1080px){.service-tile:not(.service-tile--cta),.service-tile.service-tile--periodontal:not(.service-tile--cta){height:124px;padding:14px 18px;grid-template-columns:72px minmax(0,1fr);grid-template-rows:minmax(0,1fr) 16px 16px;gap:2px 10px}.service-tile:not(.service-tile--cta) .service-icon,.service-tile.service-tile--periodontal:not(.service-tile--cta) .service-icon{width:72px;height:72px}.service-tile:not(.service-tile--cta) strong{font-size:1.08rem;line-height:1.14}}
@media (max-width:760px){.service-tile:not(.service-tile--cta),.service-tile.service-tile--periodontal:not(.service-tile--cta){height:126px;padding:14px 18px;grid-template-columns:68px minmax(0,1fr);grid-template-rows:minmax(0,1fr) 16px 16px;gap:2px 10px}.service-tile:not(.service-tile--cta) .service-icon,.service-tile.service-tile--periodontal:not(.service-tile--cta) .service-icon{width:68px;height:68px}.service-tile:not(.service-tile--cta) strong{font-size:clamp(1rem,4.8vw,1.18rem);line-height:1.14}}

/* Service category cards: center the icon-and-copy composition as one unit. */
.service-tile:not(.service-tile--cta),
.service-tile.service-tile--periodontal:not(.service-tile--cta){
  display:flex;
  align-items:center;
  justify-content:center;
  --service-icon-size:74px;
}
.service-card-content{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:20px;
  width:fit-content;
  max-width:100%;
}
.service-tile:not(.service-tile--cta) .service-card-content .service-icon{
  display:grid;
  flex:0 0 var(--service-icon-size);
  width:var(--service-icon-size);
  height:var(--service-icon-size);
  margin:0;
  transform:none;
}
.service-card-copy{
  display:grid;
  min-width:0;
  text-align:left;
}
.service-tile:not(.service-tile--cta) .service-card-copy strong,
.service-tile:not(.service-tile--cta) .service-card-copy small,
.service-tile:not(.service-tile--cta) .service-card-copy .service-view{
  grid-column:auto;
  grid-row:auto;
  align-self:auto;
}
.service-tile:not(.service-tile--cta) .service-card-copy strong{margin:0}
.service-tile:not(.service-tile--cta) .service-card-copy small{margin:2px 0 0}
.service-tile:not(.service-tile--cta) .service-card-copy .service-view{position:static;display:inline-block;margin:2px 0 0}
@media (min-width:761px) and (max-width:1080px){
  .service-tile:not(.service-tile--cta),.service-tile.service-tile--periodontal:not(.service-tile--cta){--service-icon-size:72px}
}
@media (max-width:760px){
  .service-tile:not(.service-tile--cta),.service-tile.service-tile--periodontal:not(.service-tile--cta){--service-icon-size:68px}
}

/* Mobile service cards: fixed columns keep every icon and copy block on shared axes. */
@media (max-width:760px){
  .service-card-content{
    display:grid;
    grid-template-columns:68px minmax(0,1fr);
    column-gap:20px;
    width:100%;
    align-items:center;
  }
  .service-tile:not(.service-tile--cta) .service-card-content .service-icon{
    justify-self:center;
    align-self:center;
  }
  .service-card-copy{
    text-align:left;
  }
}

/* Final services CTA: promote its existing booking link to a primary action. */
.service-tile--cta>span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  justify-self:end;
  margin:0 14px 0 0;
  padding:15px 32px;
  border-radius:999px;
  background:var(--gold);
  color:var(--espresso);
  font-size:1.0625rem;
  font-weight:700;
  line-height:1;
  word-spacing:.2em;
  white-space:nowrap;
  transition:background .22s ease,color .22s ease,transform .22s ease;
}
.service-tile--cta:hover>span,.service-tile--cta:focus-visible>span{
  background:#dfc28f;
  color:var(--espresso);
  transform:translateY(-2px);
}
@media (max-width:760px){
  .service-tile--cta>span{
    align-self:flex-start;
    margin:24px 0 0;
    padding:14px 28px;
    font-size:1rem;
  }
}

/* Why BLISS: use a consistent icon column and remove the former number column. */
.why-item{
  grid-template-columns:52px minmax(0,1fr);
  gap:24px;
  align-items:center;
  padding-right:0;
  padding-left:0;
}
.why-item-icon-wrap{
  display:flex;
  width:52px;
  height:52px;
  align-items:center;
  justify-content:center;
}
.why-item-icon-wrap .why-item-icon{
  width:42px;
  height:42px;
  margin:0;
}
@media (max-width:760px){
  .why-item{
    grid-template-columns:48px minmax(0,1fr);
    gap:22px;
  }
  .why-item-icon-wrap{
    width:48px;
    height:48px;
  }
  .why-item-icon-wrap .why-item-icon{
    width:40px;
    height:40px;
    margin:0;
  }
}

/* Shared service-card liquid glass, applied only to the header and contact capsule. */
:root{
  --bliss-glass-bg:rgba(255,248,238,.10);
  --bliss-glass-border:rgba(255,255,255,.18);
  --bliss-glass-blur:blur(20px) saturate(120%);
  --bliss-glass-shadow:inset 0 1px 0 rgba(255,255,255,.24),inset 0 -1px 0 rgba(48,37,31,.16),0 12px 30px rgba(19,13,10,.12);
}
.header-shell{
  border:1px solid var(--bliss-glass-border);
  background:var(--bliss-glass-bg);
  box-shadow:var(--bliss-glass-shadow);
  color:var(--ivory);
  backdrop-filter:var(--bliss-glass-blur);
  -webkit-backdrop-filter:var(--bliss-glass-blur);
}
.desktop-nav{color:var(--ivory)}
.desktop-nav a::after{background:var(--gold)}
.language-switcher button{color:rgba(251,247,241,.78)}
.language-switcher button.is-active{color:var(--gold)}
.header-shell .booking-button{background:var(--gold);color:var(--espresso)}
.header-shell .booking-button:hover{background:#dfc28f}
.hero-actions,.hero-glass{
  border-color:var(--bliss-glass-border);
  background:var(--bliss-glass-bg);
  box-shadow:var(--bliss-glass-shadow);
  backdrop-filter:var(--bliss-glass-blur);
  -webkit-backdrop-filter:var(--bliss-glass-blur);
}
.floating-contacts{
  border-color:var(--bliss-glass-border);
  background:var(--bliss-glass-bg);
  box-shadow:var(--bliss-glass-shadow);
  backdrop-filter:var(--bliss-glass-blur);
  -webkit-backdrop-filter:var(--bliss-glass-blur);
}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
  .header-shell,.hero-actions,.hero-glass,.floating-contacts{background:rgba(255,248,238,.16)}
}

/* Keep service search and price rows visually static on pointer hover. */
.search-result:hover{background:transparent}
.search-result:focus-visible{background:#fffaf3;outline:none}
.price-section .price-row:hover{
  background:transparent;
  border-bottom-color:rgba(244,238,230,.14);
}
.price-section .price-row:hover strong{color:#d3ad62}

/* Search-result prices are rendered separately from detail-page price rows. */
.search-results .search-result>strong,
.search-results .search-result>strong i,
.service-page .price-section .price-row strong{
  color:#D3AD62;
  opacity:1;
}

/* Shared centered eyebrow system for the homepage's major sections. */
.about-shell,.services-shell,.doctors-shell{--section-label-width:min(1240px,calc(100vw - 80px))}
.works-shell{--section-label-width:min(1050px,calc(100vw - 80px))}
.reviews-shell,.faq-shell,.contacts-shell{--section-label-width:min(1160px,calc(100vw - 80px))}
.section-label{
  box-sizing:border-box;
  display:flex;
  width:var(--section-label-width,100%);
  align-items:center;
  justify-content:center;
  gap:12px;
  margin:0;
  color:var(--gold);
  font-family:Unbounded,var(--sans);
  font-size:.82rem;
  font-weight:400;
  letter-spacing:.02em;
  line-height:1.2;
  text-align:center;
}
p.section-label{color:var(--gold)}
.section-label::before,
.section-label::after{
  width:55px;
  height:1px;
  flex:0 1 55px;
  background:var(--gold);
  content:'';
}
/* Labels above two-column layouts occupy the grid's full width, not either column. */
.about-why>.section-label,.about-story>.section-label,.faq-shell>.section-label,.contacts-shell>.section-label{grid-column:1 / -1}
.why-head,.about-story>div,.faq-head,.contacts-main{min-width:0}
.about-why{column-gap:clamp(50px,10vw,150px);row-gap:27px}
.about-story{column-gap:clamp(48px,10vw,160px);row-gap:26px}
.faq-shell{column-gap:clamp(50px,8vw,130px);row-gap:26px}
.about-why>.section-label+.why-head h2,.about-story>.section-label+div h2,.faq-shell>.section-label+.faq-head h2{margin-top:0}
.contacts-shell>.section-label+.contacts-main .contacts-head h2{margin-top:0}
@media (max-width:760px){
  .about-why>.section-label+.why-head h2{margin-top:22px}
  .about-story>.section-label+div h2,.faq-shell>.section-label+.faq-head h2{margin-top:24px}
}

/* Targeted polish: footer social links, mobile Hero boundary control, reviews, and mobile navigation. */
.contact-social a{color:#D3AD62;font-size:1.5rem;gap:14px}
.contact-social svg{width:40px;height:40px;stroke:currentColor}
.review-top b{color:#D3AD62}
@media (max-width:760px){
  .hero-smile-button{top:auto;bottom:calc(12px + env(safe-area-inset-bottom));}
}
@media (max-width:760px) and (max-height:720px){
  .hero-shell{height:100dvh;min-height:100dvh;gap:10px;padding-top:54px;padding-bottom:64px}
  .hero h1{font-size:clamp(2.1rem,9vw,2.45rem)}
  .hero-clinic{margin-top:9px}
  .hero-schedule{margin-top:12px}
  .hero-action{padding-top:7px;padding-bottom:7px}
  .hero-action-note{font-size:.78rem}
}
@media (max-width:1080px){
  .mobile-menu{
    box-sizing:border-box;
    height:100dvh;
    max-height:100dvh;
    padding:calc(76px + env(safe-area-inset-top)) 22px calc(18px + env(safe-area-inset-bottom));
    overflow-x:hidden;
    overscroll-behavior:contain;
  }
  .mobile-menu,.mobile-menu *{font-family:Unbounded,var(--sans)!important}
  .mobile-menu-top{display:flex;min-height:44px;align-items:center;justify-content:space-between;gap:18px;margin:0 0 12px}
  .mobile-menu-brand{display:block;max-width:158px;margin:0}
  .mobile-menu-brand img{display:block;width:100%;max-height:42px;object-fit:contain}
  .mobile-menu-language{display:flex;align-items:center;gap:10px}
  .mobile-menu-language button{padding:6px 0;border:0;background:transparent;color:var(--wood);font-size:.66rem;line-height:1;cursor:pointer}
  .mobile-menu-language button.is-active{color:#D3AD62}
  .mobile-menu a:not(.booking-button):not(.mobile-menu-brand){min-height:49px;padding:10px 2px;font-size:clamp(.94rem,4vw,1.08rem);font-weight:400;line-height:1.15}
  .mobile-menu a svg{width:16px;height:16px}
  .mobile-menu .booking-button{min-height:52px;margin:16px 0 0;font-size:.8rem;font-weight:500}
  .mobile-menu-social{margin-top:14px;padding:12px 0 2px}
  .mobile-menu-social p{margin-bottom:8px;font-size:.62rem}
  .mobile-menu-social>div{gap:18px}
}

/* Premium one-time card reveals reuse the site's existing observer. */
.service-tile:not(.service-tile--cta).reveal,
.doctor-card.reveal{
  transform:translateY(20px);
  transition:opacity 650ms cubic-bezier(.22,1,.36,1) var(--card-reveal-delay,0ms),transform 650ms cubic-bezier(.22,1,.36,1) var(--card-reveal-delay,0ms);
}
.service-tile:not(.service-tile--cta).reveal.is-visible,
.doctor-card.reveal.is-visible{transform:translateY(0)}
@media (max-width:760px){
  .service-tile:not(.service-tile--cta).reveal,
  .doctor-card.reveal{transform:translateY(16px)}
}
@media (prefers-reduced-motion:reduce){
  .service-tile:not(.service-tile--cta).reveal,
  .doctor-card.reveal{opacity:1;transform:none;transition:none}
}
@media (scripting:none){.reveal{opacity:1;transform:none}}
@media (max-width:760px){
  .about-shell,.services-shell,.doctors-shell,.works-shell,.reviews-shell,.faq-shell,.contacts-shell{--section-label-width:min(560px,calc(100vw - 40px))}
  .section-label{gap:10px;font-size:.62rem}
  .section-label::before,
  .section-label::after{width:36px;flex-basis:36px}
}
@media (max-width:760px){.doctor-card--olena{order:1}.doctor-card--tetiana{order:2}.doctor-card--omar{order:3}.doctor-card--kateryna{order:4}.doctor-card--placeholder{order:5}}

/* Targeted UI fixes. */
@media (min-width:1081px){
  .service-tile--cta{
    grid-column:span 3;
    min-height:120px;
    height:120px;
    padding:14px 20px;
  }
  .service-tile--cta strong{font-size:clamp(1.05rem,1.45vw,1.35rem)}
  .service-tile--cta small{margin-top:4px}
}
@media (max-width:760px){.service-tile--cta{grid-column:1 / -1}}

@media (min-width:761px){
  .why-brand{min-height:220px}
  .why-brand img{width:min(100%,500px);height:200px}
}

.hero-glass--intro{
  border:0;
  background:transparent;
  box-shadow:none;
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
}

@media (max-width:760px){
  .hero,.hero-shell{
    min-height:max(100svh,780px);
  }
}
@media (max-width:760px) and (max-height:720px){
  .hero-shell{
    height:auto;
    min-height:max(100svh,780px);
    gap:20px;
    padding-top:104px;
    padding-bottom:150px;
  }
  .hero h1{font-size:clamp(2.375rem,10.2vw,2.75rem)}
  .hero-clinic{margin-top:15px}
  .hero-schedule{margin-top:19px}
  .hero-action{padding-top:10px;padding-bottom:10px}
  .hero-action-note{font-size:.875rem}
}

/* Shared media transitions preserve every source frame at its intrinsic ratio. */
.about-media{width:100%;margin:96px 0 0}
.about-media .section-label,.media-transition .section-label{margin-bottom:28px}
.about-media-frame,.media-transition-media{overflow:hidden;border-radius:34px}
.about-media img,.media-transition video{display:block;width:100%;height:auto}
.media-transition video{background:#30251f;contain:paint}
.about-media--clinic-photo{margin-bottom:0}
.media-transition{background:var(--color-graphite);padding:0 0 128px}
.media-transition-shell{width:min(1240px,calc(100% - 80px));margin:0 auto}
@media (max-width:760px){
  .about-media{margin-top:62px}
  .about-media .section-label,.media-transition .section-label{margin-bottom:20px}
  .about-media-frame,.media-transition-media{border-radius:22px}
  .media-transition{padding-bottom:78px}
  .media-transition-shell{width:min(100% - 40px,560px)}
}
@media (max-width:760px){.service-tile[href$="/services/3d-diagnostics"]{order:-1}}

/* Services: one-time stagger reveal. Cards stay visible unless JavaScript explicitly arms the state. */
@media (prefers-reduced-motion:no-preference){
  .services-grid.is-service-reveal-ready .service-tile--reveal{opacity:0;filter:blur(3px);transform:translate3d(0,20px,0);transition:opacity 600ms cubic-bezier(.22,.61,.36,1),filter 600ms cubic-bezier(.22,.61,.36,1),transform 600ms cubic-bezier(.22,.61,.36,1);transition-delay:calc(var(--service-reveal-index) * 75ms);will-change:opacity,filter,transform}
  .services-grid.is-service-reveal-ready.is-service-revealed .service-tile--reveal{opacity:1;filter:blur(0);transform:translate3d(0,0,0)}
}
@media (min-width:1081px){.services-grid .service-tile--cta.service-tile--reveal{grid-column:span 3}}
@media (hover:hover) and (pointer:fine){.services-grid.is-service-revealed .service-tile--reveal:hover,.services-grid.is-service-revealed .service-tile--reveal:focus-visible{transform:translate3d(0,-3px,0);border-color:rgba(195,165,111,.72)}}
@media (hover:none), (pointer:coarse){.services-grid .service-tile--reveal:hover{transform:none}}
@media (prefers-reduced-motion:reduce){.services-grid .service-tile--reveal{transition:none!important;filter:none!important}}

/* A short reflection clipped by the existing headline glyphs; no duplicate text layer or layout change. */
.hero h1.has-light-sweep,.hero h1.has-light-sweep span{background-image:linear-gradient(105deg,#fff 0%,#fff 43%,#d3ad62 48%,#fff7de 50%,#d3ad62 52%,#fff 57%,#fff 100%);background-size:220% 100%;background-position:-100% 0;background-repeat:no-repeat;-webkit-background-clip:text;background-clip:text;color:transparent!important;-webkit-text-fill-color:transparent;transition:background-position 1.35s cubic-bezier(.22,.61,.36,1)}
.hero h1.has-light-sweep.is-light-sweeping,.hero h1.has-light-sweep.is-light-sweeping span{background-position:100% 0}
@media(prefers-reduced-motion:reduce){.hero h1.has-light-sweep,.hero h1.has-light-sweep span{background:none;color:#fff!important;-webkit-text-fill-color:#fff;transition:none}}

/* Hero media is video-only: espresso remains visible until the selected orientation's first frame is ready. */
.hero{background:#30251f}
.hero-video{display:block;opacity:0;object-fit:cover;transition:opacity .18s ease}
.hero.is-video-ready .hero-video{opacity:1}
@media (orientation:portrait){.hero-video{object-position:center 82%}}
@media (orientation:landscape){.hero-video{object-position:center}}
@media (prefers-reduced-motion:reduce){.hero-video{transition:none}}

/* BLISS co-founders: label above the composition; the original photograph keeps its natural aspect ratio. */
.founders{padding-top:104px}.founders-label{margin:0 0 clamp(30px,4vw,48px)}.founders-layout{display:grid;grid-template-columns:minmax(0,.94fr) minmax(0,1fr);gap:clamp(42px,7vw,108px);align-items:center}.founders-photo{min-width:0;margin:0}.founders-photo img{display:block;width:100%;height:auto;border:1px solid rgba(211,173,98,.3);border-radius:28px;box-shadow:none;object-fit:contain}.founders-copy{min-width:0;padding:clamp(30px,4vw,54px);border:1px solid rgba(211,173,98,.22);border-radius:26px;background:#3a302a;text-align:center}.founders-copy h2{margin:0;color:#f4eee6;font-size:clamp(2rem,3.1vw,3.45rem);line-height:1.14;overflow-wrap:anywhere}.founders-list{margin-top:42px;border-top:1px solid rgba(211,173,98,.28)}.founder{padding:21px 0;border-bottom:1px solid rgba(211,173,98,.28)}.founder h3{margin:0;color:#d3ad62;font-family:Unbounded,var(--sans);font-size:clamp(.93rem,1.16vw,1.14rem);font-weight:400;letter-spacing:-.04em;line-height:1.35;overflow-wrap:anywhere}.founder p{margin:8px 0 0;color:#f4eee6;font-size:.82rem;letter-spacing:.08em;line-height:1.45;text-transform:uppercase}@media(prefers-reduced-motion:no-preference){.founders .reveal{transform:translateY(20px);transition:opacity 700ms cubic-bezier(.22,.61,.36,1),transform 700ms cubic-bezier(.22,.61,.36,1)}.founders .founders-copy--delayed{transition-delay:115ms}}@media(max-width:760px){.founders{padding-top:64px}.founders-label{margin-bottom:28px}.founders-layout{display:flex;gap:28px;flex-direction:column;align-items:stretch}.founders-photo img{border-radius:22px}.founders-copy{padding:28px 20px;border-radius:21px}.founders-copy h2{font-size:clamp(1.82rem,8vw,2.35rem)}.founders-list{margin-top:29px}.founder{padding:17px 0}.founder h3{font-size:clamp(.94rem,4.15vw,1.1rem)}.founder p{margin-top:7px;font-size:.75rem}}@media(prefers-reduced-motion:reduce){.founders .reveal{transition:none}}

/* Keep both original photographs whole: no crop, fixed height, overlay, filter, or replacement asset. */
.about-photo::after{display:none}.about-photo img{height:auto!important;object-fit:contain!important;object-position:initial!important}

/* Doctor card copy stays in normal flow so translated role labels can wrap safely. */
.doctor-info{display:flex;height:auto;min-height:0;flex-direction:column;align-items:stretch;gap:0}
.doctor-info small{display:block;margin:0 0 12px;line-height:1.45;overflow-wrap:anywhere}
.doctor-info h3{margin:0;line-height:1.3;overflow-wrap:anywhere}
.doctor-info p{margin:14px 0 0;line-height:1.55;overflow-wrap:anywhere}
.doctor-info .doctor-mobile-cta{margin-top:18px}
.doctor-card--placeholder .doctor-info::after{display:none;content:none}
@media(max-width:760px){.doctor-info small{margin-bottom:11px}.doctor-info p{margin-top:12px}.doctor-info .doctor-mobile-cta{margin-top:17px}}

/* Equal doctor cards: every entry uses the same image and reserved copy rows. */
.doctors-grid{align-items:stretch}
.doctor-card{display:grid;height:auto;grid-template-rows:auto 260px}
.doctor-card--chief,.doctor-card--chief:hover{transform:none}
.doctor-photo,.doctor-placeholder{height:auto;min-height:0;aspect-ratio:4 / 5}
.doctor-info{box-sizing:border-box;height:260px;padding:21px 22px}
.doctor-role{min-height:4.35em;margin:0 0 12px!important;line-height:1.45}
.doctor-info h3{min-height:2.6em}
.doctor-info p{min-height:3.1em}
.doctor-card--placeholder .doctor-role{visibility:hidden}
@media(max-width:760px){.doctor-card{grid-template-rows:auto 300px}.doctor-info{height:300px}.doctor-role{min-height:3em;margin-bottom:11px!important}.doctor-info h3{min-height:2.6em}.doctor-info p{min-height:3.1em}}

/* Premium polish: all effects are opt-in, one-time, and disabled for reduced motion. */
body.page-content-entering .page-canvas,
body.page-content-entering .site-footer{opacity:0}
.page-canvas,.site-footer{transition:opacity 180ms ease}
.section-label.is-divider-ready::before,
.section-label.is-divider-ready::after{transform:scaleX(0);transform-origin:center;transition:transform 620ms cubic-bezier(.22,.61,.36,1)}
.section-label.is-divider-ready.is-divider-revealed::before,
.section-label.is-divider-ready.is-divider-revealed::after{transform:scaleX(1)}

/* Short gold reflection on selected editorial headings; dimensions remain unchanged. */
.has-secondary-sweep{background:linear-gradient(105deg,var(--ivory) 0%,var(--ivory) 45%,var(--gold) 49%,#fff7de 50%,var(--gold) 51%,var(--ivory) 55%,var(--ivory) 100%);background-position:-105% 0;background-size:220% 100%;background-repeat:no-repeat;-webkit-background-clip:text;background-clip:text;color:transparent!important;-webkit-text-fill-color:transparent;transition:background-position 1050ms cubic-bezier(.22,.61,.36,1)}
.has-secondary-sweep.is-secondary-sweeping{background-position:100% 0}

/* The actual logo asset receives depth from a duplicate, non-distorting light layer. */
.brand,.footer-brand{position:relative;isolation:isolate}
.brand>img,.footer-brand>img{position:relative;z-index:1}
.brand::after{position:absolute;z-index:0;inset:0;background:url('/assets/optimized/ui/bliss-logo-mobile-640.png') center/contain no-repeat;content:'';opacity:.16;transform:translate(1px,2px);pointer-events:none}

/* Image entrances transform only composited pixels and never alter image dimensions. */
@media(prefers-reduced-motion:no-preference){.cinematic-reveal{opacity:0;transform:translate3d(0,14px,0);transition:opacity 720ms cubic-bezier(.22,.61,.36,1),transform 720ms cubic-bezier(.22,.61,.36,1);will-change:opacity,transform}.cinematic-reveal.is-cinematic-visible{opacity:1;transform:none}}

/* Desktop-only magnetic CTA motion and press feedback. */
@media(hover:hover) and (pointer:fine){.is-magnetic{transform:translate3d(var(--magnetic-x,0),var(--magnetic-y,0),0);transition:transform 180ms cubic-bezier(.22,.61,.36,1)}.is-magnetic:hover{transform:translate3d(var(--magnetic-x,0),var(--magnetic-y,0),0)}}
.booking-button.is-pressed,.footer-book.is-pressed,.contact-route.is-pressed,.service-tile--cta.is-pressed{transform:translateY(1px) scale(.985)!important}

/* A restrained gold edge appears only with a fine-pointer service-card hover. */
.service-tile:not(.service-tile--cta)::after{position:absolute;inset:0;border:1px solid rgba(211,173,98,0);border-radius:inherit;box-shadow:inset 0 0 0 1px rgba(211,173,98,0);content:'';opacity:0;pointer-events:none;transition:opacity 240ms ease,border-color 240ms ease,box-shadow 240ms ease}
@media(hover:hover) and (pointer:fine){.service-tile:not(.service-tile--cta):hover::after,.service-tile:not(.service-tile--cta):focus-visible::after{border-color:rgba(211,173,98,.58);box-shadow:inset 0 0 18px rgba(211,173,98,.13);opacity:1}}

/* Accessible before/after controls retain the existing photos and pairings. */
.ba-slider:focus-visible{outline:2px solid var(--gold);outline-offset:4px}
.ba-divider{background:var(--gold);box-shadow:0 0 0 1px rgba(244,238,230,.72)}
.ba-divider button{border-color:var(--gold);background:var(--gold);color:var(--espresso);box-shadow:0 4px 14px rgba(48,37,31,.28);transition:transform 180ms ease,background 180ms ease}
.ba-slider:hover .ba-divider button{transform:translate(-50%,-50%) scale(1.05)}

/* A compact editorial quote uses existing verified brand copy. */
.editorial-quote{margin:24px auto 0;color:var(--gold);font-family:Unbounded,var(--sans);font-size:clamp(.8rem,1.25vw,1rem);font-weight:400;letter-spacing:.02em;line-height:1.55;text-align:center}
.editorial-quote::before{margin-right:.45em;color:var(--ivory);content:'“'}
.editorial-quote::after{margin-left:.45em;color:var(--ivory);content:'”'}

/* Footer signature is restrained and keeps the existing navigation and credit untouched. */
.footer-top{position:relative;padding-bottom:42px}
.footer-top::after{position:absolute;right:0;bottom:0;left:0;height:1px;background:linear-gradient(90deg,transparent,rgba(211,173,98,.7),transparent);content:''}
@media(max-width:760px){.editorial-quote{margin-top:18px;font-size:.76rem}.footer-top{padding-bottom:32px}}
@media(prefers-reduced-motion:reduce){.page-canvas,.site-footer,.section-label.is-divider-ready::before,.section-label.is-divider-ready::after,.has-secondary-sweep,.cinematic-reveal,.ba-divider button{transition:none!important}.cinematic-reveal{opacity:1;transform:none}.has-secondary-sweep{background:none;color:inherit!important;-webkit-text-fill-color:currentColor}.section-label.is-divider-ready::before,.section-label.is-divider-ready::after{transform:scaleX(1)}}

/* Premium frame for the existing co-founders photograph. */
.founders-photo img{border:4px solid #D3AD62;outline:1px solid rgba(211,173,98,.58);outline-offset:3px;box-shadow:0 0 24px rgba(211,173,98,.32),0 10px 26px rgba(32,25,21,.24)}

/* Dual theme tokens and light-mode surface treatment. Hero media remains intentionally dark. */
html{--theme-bg:#30251F;--theme-card:#3a302a;--theme-text:#f4eee6;--theme-secondary:#d8d1c8;--theme-gold:#D3AD62}
html[data-theme="light"]{--theme-bg:#FFFFFF;--theme-card:#FAF9F7;--theme-text:#30251F;--theme-secondary:#76513C;--theme-gold:#D3AD62}
html[data-theme="light"] body,html[data-theme="light"] .page-canvas{background:var(--theme-bg);color:var(--theme-text)}
html[data-theme="light"] .site-header .header-shell,html[data-theme="light"] .mobile-menu{background:#FFFFFF;color:var(--theme-text)}
html[data-theme="light"] .desktop-nav a,html[data-theme="light"] .mobile-menu a{color:var(--theme-text)}
html[data-theme="light"] .booking-button{background:#76513C;color:#FFFFFF}
html[data-theme="light"] .service-tile,html[data-theme="light"] .work-card,html[data-theme="light"] .founders-copy,html[data-theme="light"] .reviews-cta,html[data-theme="light"] .contact-messengers a,html[data-theme="light"] .contact-route{background:var(--theme-card);color:var(--theme-text)}
html[data-theme="light"] .about,html[data-theme="light"] .services,html[data-theme="light"] .doctors,html[data-theme="light"] .gallery,html[data-theme="light"] .reviews,html[data-theme="light"] .faq,html[data-theme="light"] .contacts,html[data-theme="light"] .site-footer,html[data-theme="light"] .service-page,html[data-theme="light"] .doctor-page,html[data-theme="light"] .booking-page{background:#FFFFFF!important;color:var(--theme-text)}
html[data-theme="light"] .site-footer{color:var(--theme-text)}
html[data-theme="light"] .site-footer a,html[data-theme="light"] .site-footer span,html[data-theme="light"] .site-footer p,html[data-theme="light"] .footer-column a{color:var(--theme-secondary)}
html[data-theme="light"] .about-lead p,html[data-theme="light"] .about-story p,html[data-theme="light"] .why-item p,html[data-theme="light"] .founder p{color:var(--theme-secondary)}
.theme-toggle{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;padding:0;border:1px solid rgba(211,173,98,.45);border-radius:50%;background:transparent;color:var(--gold);font-size:18px;line-height:1;cursor:pointer;gap:0}.theme-toggle span+span{display:none}.theme-toggle--mobile{margin:16px 0}.theme-toggle:hover,.theme-toggle:focus-visible{box-shadow:0 0 0 3px rgba(211,173,98,.18);outline:none}html[data-theme="light"] .theme-toggle{color:#76513C;border-color:rgba(118,81,60,.35)}html[data-theme="light"] .theme-toggle span:first-child{display:none}html[data-theme="light"] .theme-toggle span+span{display:block}

/* Light-mode component mapping. These rules deliberately exclude Hero media and its overlay. */
html[data-theme="light"]{--espresso:#FFFFFF;--espresso-surface:#FFFFFF;--espresso-raised:#FAF9F7;--beige:#76513C;--dark-line:#E8E0D7;--line:#E8E0D7}
html[data-theme="light"] .about h2,html[data-theme="light"] .about h3,html[data-theme="light"] .about-story h2,html[data-theme="light"] .about-closing h2,html[data-theme="light"] .why-item h3,html[data-theme="light"] .services-head h2,html[data-theme="light"] .doctors-head h2,html[data-theme="light"] .reviews-head h2,html[data-theme="light"] .contacts-head h2,html[data-theme="light"] .works-head h2,html[data-theme="light"] .founders-copy h2,html[data-theme="light"] .faq h2,html[data-theme="light"] .faq-item button,html[data-theme="light"] .service-detail,html[data-theme="light"] .doctor-detail,html[data-theme="light"] .booking-main{color:var(--theme-text)}
html[data-theme="light"] .review-card,html[data-theme="light"] .doctor-card,html[data-theme="light"] .booking-option,html[data-theme="light"] .booking-card,html[data-theme="light"] .search-result{background:var(--theme-card);border-color:var(--dark-line);color:var(--theme-text)}
html[data-theme="light"] .review-card p,html[data-theme="light"] .review-card small,html[data-theme="light"] .doctor-info p,html[data-theme="light"] .booking-card small,html[data-theme="light"] .booking-option>span,html[data-theme="light"] .service-detail header p,html[data-theme="light"] .doctor-profile-copy section p,html[data-theme="light"] .doctor-profile-copy li{color:var(--theme-secondary)}
html[data-theme="light"] .contact-detail address,html[data-theme="light"] .contact-detail>a,html[data-theme="light"] .contact-detail dl,html[data-theme="light"] .contact-detail dd,html[data-theme="light"] .contact-map-overlay{color:var(--theme-text)}
html[data-theme="light"] .contact-detail,html[data-theme="light"] .contact-details,html[data-theme="light"] .contact-social,html[data-theme="light"] .faq-item,html[data-theme="light"] .price-row,html[data-theme="light"] .doctor-profile-copy section{border-color:var(--dark-line)}
html[data-theme="light"] .contact-map,html[data-theme="light"] .contact-map-overlay{background:var(--theme-card);border-color:var(--dark-line)}
html[data-theme="light"] .price-section{background:var(--theme-card)!important;color:var(--theme-text)}html[data-theme="light"] .price-section h2,html[data-theme="light"] .price-section .price-row{color:var(--theme-text)}html[data-theme="light"] .price-section .price-row strong{color:var(--theme-gold)}
html[data-theme="light"] .works{background:#FFFFFF;color:var(--theme-text)}html[data-theme="light"] .mobile-case-stage,html[data-theme="light"] .ba-slider{background:#30251F}
body,.page-canvas,.site-header .header-shell,.mobile-menu,.about,.services,.doctors,.works,.reviews,.faq,.contacts,.site-footer,.service-page,.doctor-page,.booking-page,.service-tile,.work-card,.doctor-card,.review-card,.booking-option,.booking-card,.founders-copy,.reviews-cta,.contact-messengers a,.contact-route,.price-section{transition:background-color 220ms ease,color 220ms ease,border-color 220ms ease}@media(prefers-reduced-motion:reduce){body,.page-canvas,.site-header .header-shell,.mobile-menu,.about,.services,.doctors,.works,.reviews,.faq,.contacts,.site-footer,.service-page,.doctor-page,.booking-page,.service-tile,.work-card,.doctor-card,.review-card,.booking-option,.booking-card,.founders-copy,.reviews-cta,.contact-messengers a,.contact-route,.price-section{transition:none}}

/* Explicit Light Mode typography, controls, and interaction states. */
html[data-theme="light"] .header-shell{background:rgba(255,255,255,.88);border-color:rgba(211,173,98,.38);box-shadow:0 10px 30px rgba(48,37,31,.10)}
html[data-theme="light"] .desktop-nav,html[data-theme="light"] .language-switcher button,html[data-theme="light"] .mobile-menu a:not(.booking-button){color:#30251F}
html[data-theme="light"] .language-switcher button.is-active,html[data-theme="light"] .desktop-nav a:hover{color:#D3AD62}
html[data-theme="light"] .booking-button,html[data-theme="light"] .footer-book,html[data-theme="light"] .doctor-book{background:#D3AD62!important;border-color:#D3AD62;color:#30251F!important}
html[data-theme="light"] .booking-button:hover,html[data-theme="light"] .booking-button:focus-visible,html[data-theme="light"] .footer-book:hover,html[data-theme="light"] .footer-book:focus-visible,html[data-theme="light"] .doctor-book:hover,html[data-theme="light"] .doctor-book:focus-visible{background:#E0BD78!important;color:#30251F!important;outline:2px solid #D3AD62;outline-offset:3px}
html[data-theme="light"] .service-tile:not(.service-tile--cta) strong,html[data-theme="light"] .service-tile small,html[data-theme="light"] .service-number,html[data-theme="light"] .service-icon,html[data-theme="light"] .service-view,html[data-theme="light"] .doctor-info h3,html[data-theme="light"] .booking-option b,html[data-theme="light"] .booking-card b,html[data-theme="light"] .booking-option i,html[data-theme="light"] .booking-card i,html[data-theme="light"] .service-breadcrumb a,html[data-theme="light"] .doctor-back{color:#30251F}
html[data-theme="light"] .service-tile--cta{background:#FAF9F7;border-color:#D3AD62;color:#30251F}html[data-theme="light"] .service-tile--cta small,html[data-theme="light"] .service-tile--cta>span{color:#76513C}
html[data-theme="light"] .service-tile:hover,html[data-theme="light"] .service-tile:focus-visible,html[data-theme="light"] .booking-option:hover,html[data-theme="light"] .booking-option:focus-visible,html[data-theme="light"] .booking-card:hover,html[data-theme="light"] .booking-card:focus-visible,html[data-theme="light"] .doctor-card:hover,html[data-theme="light"] .work-card:hover{background:#FFFFFF;border-color:#D3AD62}
html[data-theme="light"] .reviews-controls button,html[data-theme="light"] .service-search,html[data-theme="light"] .search-result{background:#FFFFFF;color:#30251F;border-color:#E8E0D7}html[data-theme="light"] .service-search input{color:#30251F}html[data-theme="light"] .service-search input::placeholder,html[data-theme="light"] .search-result small,html[data-theme="light"] .faq-head p,html[data-theme="light"] .faq-answer>div,html[data-theme="light"] .booking-lead{color:#76513C}
html[data-theme="light"] .faq-head>a,html[data-theme="light"] .faq-item button i,html[data-theme="light"] .faq-answer a,html[data-theme="light"] .search-count{color:#30251F}
html[data-theme="light"] .reviews-cta b,html[data-theme="light"] .reviews-cta>a:last-child,html[data-theme="light"] .review-top b,html[data-theme="light"] .review-card p{color:#30251F}html[data-theme="light"] .review-top small,html[data-theme="light"] .reviews-cta p{color:#76513C}
html[data-theme="light"] .contact-messengers a,html[data-theme="light"] .contact-route{border-color:#E8E0D7;background:#FAF9F7;color:#30251F}html[data-theme="light"] .contact-messengers a:hover,html[data-theme="light"] .contact-route:hover{border-color:#D3AD62;color:#30251F}
html[data-theme="light"] .contact-map-overlay span,html[data-theme="light"] .contact-map-overlay i{color:#76513C}
html[data-theme="light"] .site-footer{border-radius:0;background:#FFFFFF!important;color:#30251F}html[data-theme="light"] .footer-brand p,html[data-theme="light"] .footer-brand p span,html[data-theme="light"] .footer-column>a,html[data-theme="light"] .footer-column>span,html[data-theme="light"] .footer-bottom,html[data-theme="light"] .footer-legal,html[data-theme="light"] .ghost-credit{color:#76513C}html[data-theme="light"] .footer-column>p,html[data-theme="light"] .footer-column>a:hover,html[data-theme="light"] .ghost-credit:hover{color:#D3AD62}html[data-theme="light"] .footer-bottom{border-color:#E8E0D7}
html[data-theme="light"] .founders-copy{border-color:#E8E0D7;box-shadow:0 10px 28px rgba(48,37,31,.06)}html[data-theme="light"] .founder,html[data-theme="light"] .founders-list{border-color:#E8E0D7}

/* Light Mode only: service and price surfaces use restrained espresso liquid glass. */
html[data-theme="light"] .service-tile:not(.service-tile--cta),html[data-theme="light"] .service-tile--cta,html[data-theme="light"] .service-page .price-section,html[data-theme="light"] .service-page .search-result{border-color:rgba(211,173,98,.72);background:rgba(48,37,31,.94)!important;color:#F4EEE6;box-shadow:inset 0 1px 0 rgba(244,238,230,.12),0 12px 28px rgba(48,37,31,.16);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
html[data-theme="light"] .service-tile:not(.service-tile--cta) strong,html[data-theme="light"] .service-tile:not(.service-tile--cta) small,html[data-theme="light"] .service-tile--cta strong,html[data-theme="light"] .service-tile--cta small,html[data-theme="light"] .service-page .price-section h2,html[data-theme="light"] .service-page .price-section .price-row,html[data-theme="light"] .service-page .search-result b{color:#F4EEE6}
html[data-theme="light"] .service-tile .service-number,html[data-theme="light"] .service-tile .service-icon,html[data-theme="light"] .service-tile .service-view,html[data-theme="light"] .service-tile--cta>span,html[data-theme="light"] .service-page .price-section .price-row strong,html[data-theme="light"] .service-page .search-result>strong{color:#D3AD62}
html[data-theme="light"] .service-page .price-section .price-list,html[data-theme="light"] .service-page .price-section .price-row{border-color:rgba(244,238,230,.20)}html[data-theme="light"] .service-page .price-section .price-row i{border-color:rgba(244,238,230,.25)}
html[data-theme="light"] .service-tile:not(.service-tile--cta):hover,html[data-theme="light"] .service-tile:not(.service-tile--cta):focus-visible,html[data-theme="light"] .service-tile--cta:hover,html[data-theme="light"] .service-tile--cta:focus-visible,html[data-theme="light"] .service-page .search-result:hover,html[data-theme="light"] .service-page .search-result:focus-visible{border-color:#D3AD62;background:rgba(58,48,42,.97)!important;box-shadow:inset 0 1px 0 rgba(244,238,230,.16),0 0 20px rgba(211,173,98,.18),0 14px 30px rgba(48,37,31,.18)}
html[data-theme="light"] .service-page .price-row.is-highlighted{border-color:#D3AD62;background:rgba(211,173,98,.11)}

/* Final Light Mode contrast corrections; Hero deliberately remains outside this scope. */
html[data-theme="light"] .about-word,html[data-theme="light"] .why-brand::before{color:#30251F;opacity:1}
html[data-theme="light"] .founders-copy h2,html[data-theme="light"] .doctors-head h2{color:#30251F}
html[data-theme="light"] .doctor-card,html[data-theme="light"] .doctor-info h3{color:#30251F}html[data-theme="light"] .doctor-info p{color:#76513C}
html[data-theme="light"] .about a,html[data-theme="light"] .services a:not(.service-tile),html[data-theme="light"] .doctors a:not(.doctor-card),html[data-theme="light"] .reviews a,html[data-theme="light"] .faq a,html[data-theme="light"] .contacts a:not(.booking-button):not(.contact-messengers a):not(.contact-route),html[data-theme="light"] .booking-main a:not(.booking-button){color:#30251F}
html[data-theme="light"] .about p,html[data-theme="light"] .services-head>p:last-child,html[data-theme="light"] .reviews-head>p,html[data-theme="light"] .faq-head p,html[data-theme="light"] .contact-detail p,html[data-theme="light"] .booking-lead{color:#76513C}
html[data-theme="light"] .section-label,html[data-theme="light"] .section-label b,html[data-theme="light"] .doctor-info small,html[data-theme="light"] .doctor-chief-label{color:#D3AD62}
html[data-theme="light"] .booking-button,html[data-theme="light"] .footer-book,html[data-theme="light"] .doctor-book{background:#D3AD62!important;color:#30251F!important}html[data-theme="light"] .booking-button *,html[data-theme="light"] .footer-book *,html[data-theme="light"] .doctor-book *{color:#30251F!important}
@media(max-width:760px){html[data-theme="light"] .header-actions>.theme-toggle{transform:translateX(-4px);margin-right:2px}}

/* Mobile header only: language selector sits between the logo and theme control. */
@media(max-width:760px){.header-actions{min-width:0;margin-left:auto;gap:3px}.header-actions>.language-switcher{order:1;flex:0 0 auto}.header-actions>.theme-toggle{order:2;flex:0 0 auto}.header-actions>.menu-toggle{order:3;flex:0 0 auto}.language-switcher{gap:4px}.language-switcher button{min-width:18px;padding-right:2px;padding-left:2px}.theme-toggle{flex-shrink:0}.menu-toggle{flex-shrink:0}html[data-theme="light"] .header-actions>.theme-toggle{transform:none;margin-right:0}}
@media(max-width:340px){.header-shell{gap:8px}}

/* Screenshot-specific Light Mode corrections. Official logo images are untouched. */
html[data-theme="light"] .about-word{display:none}html[data-theme="light"] .why-brand::before{content:none}
html[data-theme="light"] .about-story h2,html[data-theme="light"] .doctors-head h2,html[data-theme="light"] .founders-copy h2{color:#30251F}
html[data-theme="light"] .media-transition{background:#FFFFFF}html[data-theme="light"] .media-transition-shell{color:#30251F}
html[data-theme="light"] .service-search{background:#FFFFFF;border-color:#E8E0D7;color:#30251F}html[data-theme="light"] .service-search input{color:#30251F}html[data-theme="light"] .service-search input::placeholder{color:#76513C}
html[data-theme="light"] .service-page .search-result{background:#FFFFFF!important;border-color:#E8E0D7;color:#30251F;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}html[data-theme="light"] .service-page .search-result b{color:#30251F}html[data-theme="light"] .service-page .search-result small{color:#76513C}html[data-theme="light"] .service-page .search-result>strong,html[data-theme="light"] .service-page .search-result>strong i{color:#D3AD62}
html[data-theme="light"] .booking-button,html[data-theme="light"] .footer-book,html[data-theme="light"] .doctor-book,html[data-theme="light"] .booking-button:hover,html[data-theme="light"] .booking-button:focus-visible,html[data-theme="light"] .booking-button:active{color:#30251F!important}

/* Unified booking contact cards: identical espresso liquid glass in both themes. */
.booking-list--unified .booking-card{border-color:rgba(211,173,98,.72);background:rgba(48,37,31,.94);color:#F4EEE6;box-shadow:inset 0 1px 0 rgba(244,238,230,.12),0 12px 28px rgba(48,37,31,.16);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.booking-list--unified .booking-card b,.booking-list--unified .booking-card small{color:#F4EEE6}.booking-list--unified .booking-card i{color:#D3AD62}
.booking-list--unified .booking-card:hover,.booking-list--unified .booking-card:focus-visible{border-color:#D3AD62;background:rgba(58,48,42,.97);box-shadow:inset 0 1px 0 rgba(244,238,230,.16),0 0 20px rgba(211,173,98,.18),0 14px 30px rgba(48,37,31,.18);outline:none}

/* Booking only: Dark Mode uses the approved white card surface without changing its grid or controls. */
html[data-theme="dark"] .booking-list--unified .booking-card{background:#FFFFFF;color:#30251F;border-color:rgba(211,173,98,.72);box-shadow:0 12px 28px rgba(48,37,31,.10)}
html[data-theme="dark"] .booking-list--unified .booking-card b,html[data-theme="dark"] .booking-list--unified .booking-card small,html[data-theme="dark"] .booking-list--unified .booking-cta-copy b,html[data-theme="dark"] .booking-list--unified .booking-cta-copy small{color:#30251F}
html[data-theme="dark"] .booking-list--unified .booking-card:hover,html[data-theme="dark"] .booking-list--unified .booking-card:focus-visible{background:#FFFFFF;box-shadow:0 14px 30px rgba(48,37,31,.14),0 0 18px rgba(211,173,98,.14)}

/* Keep the existing secondary sweep, using espresso as its visible resting colour in Light Mode. */
html[data-theme="light"] .about-story h2.has-secondary-sweep,html[data-theme="light"] .doctors-head h2.has-secondary-sweep,html[data-theme="light"] .founders-copy h2.has-secondary-sweep{background-image:linear-gradient(105deg,#30251F 0%,#30251F 45%,#D3AD62 49%,#FFF7DE 50%,#D3AD62 51%,#30251F 55%,#30251F 100%)}
@media(prefers-reduced-motion:reduce){html[data-theme="light"] .about-story h2.has-secondary-sweep,html[data-theme="light"] .doctors-head h2.has-secondary-sweep,html[data-theme="light"] .founders-copy h2.has-secondary-sweep{color:#30251F!important;-webkit-text-fill-color:#30251F}}

/* Compact, equal service-card surfaces with a consultation CTA in both themes. */
.booking-card--cta{display:flex}
.booking-list--unified{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.booking-list--unified .booking-card,.booking-list--unified .booking-card--instagram,.booking-list--unified .booking-card--cta{grid-column:auto!important;min-height:180px;height:180px;box-sizing:border-box;min-width:0}
.booking-list--unified .booking-card:not(.booking-card--cta){grid-template-columns:50px minmax(0,1fr);grid-template-rows:minmax(0,1fr) auto;gap:10px 14px;padding:20px}
.booking-list--unified .booking-card .booking-icon{width:50px;height:50px;align-self:start}.booking-list--unified .booking-card i{grid-column:2;grid-row:2;margin:0;align-self:end}
.booking-list--unified .booking-card--cta{align-items:flex-start;justify-content:space-between;gap:12px;padding:18px;overflow:hidden}
.booking-cta-copy{min-width:0}.booking-cta-copy b{color:#F4EEE6;font-family:Unbounded,var(--sans);font-size:.82rem;font-weight:400;line-height:1.3}.booking-cta-copy small{display:block;margin-top:8px;color:#F4EEE6;font-size:.74rem;line-height:1.4}
.booking-cta-button,.booking-list--unified .booking-card:not(.booking-card--cta) i{display:inline-flex;min-height:34px;align-items:center;align-self:flex-end;width:max-content;padding:0 11px;border-radius:999px;background:#D3AD62;color:#30251F;font-size:.7rem;font-style:normal;font-weight:700;line-height:1;white-space:nowrap;transition:background 220ms ease,transform 220ms ease}
.booking-list--unified .booking-card:not(.booking-card--cta):hover i,.booking-list--unified .booking-card:not(.booking-card--cta):focus-visible i{background:#E0BD78;transform:translateY(-1px)}
@media(min-width:761px) and (max-width:1080px){.booking-list--unified{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.booking-list--unified{grid-template-columns:1fr;gap:12px}.booking-list--unified .booking-card:not(.booking-card--cta){min-height:180px;height:180px;padding:18px;grid-template-columns:44px minmax(0,1fr)}.booking-list--unified .booking-card .booking-icon{width:44px;height:44px}.booking-list--unified .booking-card--cta{padding:18px}}

/* Footer legal row: privacy left, Ghost Studio centered, cookies right. */
.footer-bottom{grid-template-columns:1fr auto 1fr;}
.footer-copyright{justify-self:start;}
.footer-copyright i{margin:0 8px;color:var(--gold);font-style:normal;}
.footer-cookies{justify-self:end;}
.footer-bottom .ghost-credit{justify-self:center;padding:0 22px;border-right:1px solid var(--gold);border-left:1px solid var(--gold);}
.footer-bottom{display:flex;flex-direction:column;gap:0;border:0!important;}
.ghost-credit-row{width:100%;display:flex;justify-content:center;padding:12px 0;border-top:1px solid var(--gold);border-bottom:1px solid var(--gold);}
.footer-bottom .ghost-credit{padding:0;border:0;justify-self:auto;}
.footer-meta{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;width:100%;gap:24px;padding-top:18px;}
.footer-meta .footer-copyright{justify-self:start;}
.footer-meta .footer-privacy{justify-self:center;}
.footer-meta .footer-cookies{justify-self:end;}
@media(max-width:760px){
  .footer-shell{padding-top:54px;padding-bottom:22px;}
  .footer-top{gap:34px;}
  .footer-brand p{margin:15px 0 19px;}
  .footer-columns{gap:27px;}
  .footer-column{gap:8px;}
  .footer-bottom{gap:0;margin-top:42px;padding-top:0;}
  .ghost-credit-row{padding:10px 0;}
  .footer-meta{grid-template-columns:1fr auto 1fr;gap:8px;padding-top:14px;font-size:.68rem;}
  .footer-meta .footer-copyright,.footer-meta .footer-privacy,.footer-meta .footer-cookies{align-self:center;justify-self:initial;text-align:center;}
  .footer-meta .footer-copyright{justify-self:start;}
  .footer-meta .footer-privacy{justify-self:center;}
  .footer-meta .footer-cookies{justify-self:end;}
}

@media(max-width:760px){html[data-theme="dark"] .mobile-case-navigation span{color:#F4EEE6}html[data-theme="light"] .mobile-case-navigation span{color:#30251F}}

/* Gallery: every case occupies one equal grid cell; image letterboxing follows the active theme. */
.works-grid>.work-card:last-child{grid-column:auto;width:auto;justify-self:stretch}
html[data-theme="dark"] .work-card,html[data-theme="dark"] .ba-slider,html[data-theme="dark"] .mobile-case-stage,html[data-theme="dark"] .mobile-case-media{background:#30251F}
html[data-theme="light"] .work-card,html[data-theme="light"] .ba-slider,html[data-theme="light"] .mobile-case-stage,html[data-theme="light"] .mobile-case-media{background:#FFFFFF}

/* Desktop comparison photographs fill the shared frame without distortion. */
@media(min-width:761px){.ba-slider>img,.ba-before img{object-fit:cover;object-position:center}}
html[data-theme="light"] .work-card{border-color:#76513C}
html[data-theme="dark"] .work-card{border-color:#FFFFFF}

/* Shared booking CTA treatment across every theme and entry point. */
html[data-theme] :is(.booking-button,.footer-book,.doctor-book,.booking-cta-button,.service-tile--cta>span){border:1px solid #D3AD62!important;border-radius:999px;background:#D3AD62!important;color:#30251F!important}
html[data-theme] :is(.booking-button,.footer-book,.doctor-book,.booking-cta-button,.service-tile--cta>span) *{color:#30251F!important}
html[data-theme] :is(.booking-button,.footer-book,.doctor-book,.booking-cta-button,.service-tile--cta>span):hover,html[data-theme] :is(.booking-button,.footer-book,.doctor-book,.booking-cta-button,.service-tile--cta>span):focus-visible{background:#E0BD78!important;color:#30251F!important;outline:2px solid #D3AD62;outline-offset:3px}
html[data-theme] :is(.booking-button,.footer-book,.doctor-book,.booking-cta-button,.service-tile--cta>span):active{background:#D3AD62!important;color:#30251F!important}

/* Light Mode: retain the existing phone PNG dimensions while using its gold variant in Contacts. */
html[data-theme="light"] .contact-details .contact-detail:nth-child(2) .social-platform-icon{content:url('/assets/icons/social/gold/phone.png')}

/* Light Mode: doctor cards use the requested espresso editorial surface. */
html[data-theme="light"] .doctor-card{background:#30251F;color:#F4EEE6;border-color:#D3AD62}
html[data-theme="light"] .doctor-card:hover{background:#30251F;border-color:#D3AD62}
html[data-theme="light"] .doctor-info h3,html[data-theme="light"] .doctor-info p{color:#F4EEE6}
html[data-theme="light"] .doctor-info small,html[data-theme="light"] .doctor-mobile-cta{color:#D3AD62}

/* Light Mode search results: compact, contrast-safe icon tiles without altering source assets. */
html[data-theme="light"] .search-result .service-icon{position:relative;display:grid;width:48px;height:48px;margin:0;border:1px solid #D3AD62;border-radius:13px;background:#F4EEE6;color:#76513C;place-items:center}
html[data-theme="light"] .search-result .service-icon svg{width:28px;height:28px;fill:none;stroke:#76513C;color:#76513C}
html[data-theme="light"] .search-result .service-icon img{position:relative;z-index:1;width:32px;height:32px;object-fit:contain}
@supports selector(.service-icon:has(img)){html[data-theme="light"] .search-result .service-icon:has(img)::before{position:absolute;inset:3px;border-radius:9px;background:#30251F;content:''}}
@media(max-width:760px){html[data-theme="light"] .search-result .service-icon{width:40px;height:40px;border-radius:11px}html[data-theme="light"] .search-result .service-icon svg,html[data-theme="light"] .search-result .service-icon img{width:27px;height:27px}@supports selector(.service-icon:has(img)){html[data-theme="light"] .search-result .service-icon:has(img)::before{inset:3px;border-radius:8px}}}

/* Compact mobile header: logo left, languages, theme, then menu at the right. */
@media (max-width: 760px) {
  .header-shell { gap: 8px; padding: 7px 8px 7px 14px; }
  .brand { min-width: 0; flex: 1 1 auto; }
  .brand::after { display: none; }
  .brand img { width: 118px; max-width: 100%; height: 48px; object-fit: contain; }
  .header-actions { flex: 0 0 auto; gap: 5px; }
  .header-actions > .language-switcher { transform: none; margin: 0 3px 0 0; gap: 4px; }
  .language-switcher button { min-width: 22px; padding: 8px 2px; font-size: .72rem; line-height: 1; }
  .header-actions > .theme-toggle { width: 36px; height: 36px; margin: 0; transform: none; }
  .header-actions > .menu-toggle { width: 63px; height: 63px; }
}
@media (max-width: 360px) {
  .header-shell { gap: 5px; padding-left: 11px; }
  .brand img { width: 104px; }
  .header-actions { gap: 3px; }
  .language-switcher { gap: 3px; }
  .language-switcher button { min-width: 20px; padding-right: 1px; padding-left: 1px; font-size: .66rem; }
  .header-actions > .theme-toggle { width: 34px; height: 34px; }
  .header-actions > .menu-toggle { width: 60px; height: 60px; }
}

/* Services headline: the existing curved gold underline is now an SVG path draw. */
.services-head h2 .services-highlight::after{content:none}
.services-highlight{display:inline-block}
.services-underline{position:absolute;right:2%;bottom:-9px;left:1%;display:block;width:97%;height:8px;overflow:visible;pointer-events:none;transform:rotate(-1deg)}
.services-underline path{fill:none;stroke:#D3AD62;stroke-width:1.5;stroke-linecap:round;stroke-dasharray:100;stroke-dashoffset:100}
.services-underline.is-drawn path{animation:services-underline-draw 1.3s cubic-bezier(.22,.61,.36,1) forwards}
@keyframes services-underline-draw{to{stroke-dashoffset:0}}
@media(prefers-reduced-motion:reduce){.services-underline path{stroke-dashoffset:0}.services-underline.is-drawn path{animation:none}}

/* Responsive media wrappers preserve the existing geometry while allowing AVIF fallbacks. */
.doctor-photo picture,.service-icon picture,.ba-slider>picture,.ba-before picture,.mobile-case-media picture{display:block;width:100%;height:100%}
.doctor-photo img,.doctor-profile figure img{object-fit:contain;object-position:center top}
.ba-slider>picture>img,.ba-before picture>img{display:block;width:100%;height:100%;max-width:100%;object-fit:contain!important;object-position:center!important;transform:none!important;transition:transform .3s ease}

/* v20261104e — doctors: four equal cards instead of 3 + orphan; decor logos removed from the grid row */
.doctors-composition{display:block}
.doctors-decor{display:none}
.doctors-composition .doctors-grid{width:100%;margin:0 auto;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
@media(max-width:1080px) and (min-width:761px){.doctors-composition .doctors-grid{width:min(100%,720px);grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.doctors-composition .doctors-grid{width:100%;grid-template-columns:1fr}}
/* 404 */
.doctor-not-found{display:grid;min-height:60vh;place-content:center;gap:18px;text-align:center}
.doctor-not-found h1{margin:0;font-family:Unbounded,var(--sans);font-size:clamp(3rem,10vw,6rem);font-weight:400;color:var(--gold)}
.doctor-not-found a{color:var(--gold)}
/* doctor cards: the photo box matches the portrait ratio (1067x1455), so the photo fills the card with no side gaps */
.doctors .doctor-photo,.doctors .doctor-placeholder{aspect-ratio:1067 / 1455}
.doctors .doctor-photo img{object-fit:cover;object-position:center top}
/* FAQ: 35% + 65% + gap exceeded the container; use fractions so the gap is accounted for */
@media(min-width:761px){.faq-shell{grid-template-columns:minmax(0,35fr) minmax(0,65fr)}}
/* Supplied image proportions: avoid portrait cropping and keep Before/After pairs fully visible. */
.doctors .doctor-photo img,.doctor-profile figure img{object-fit:contain;object-position:center top}
.doctors .doctor-photo,.doctor-profile figure{height:auto}
.ba-slider>picture,.ba-before picture{height:100%;min-height:0}
.ba-slider>picture>img,.ba-before picture>img{width:100%;height:100%;object-fit:contain;object-position:center}
/* Centralized supplied brand and contact icons. */
.brand::after{background-image:url('/images/bliss-logo-mobil.png')}
.price-section::before{background-image:url('/images/bliss-logo.png')}
html[data-theme="light"] .contact-details .contact-detail:nth-child(2) .social-platform-icon{content:url('/images/phone-gold.png')}
/* Scoped fixes for supplied doctor portraits, header icons and Ghost Studio credit. */
.doctors .doctor-photo,.doctors .doctor-photo picture,.doctor-profile figure,.doctor-profile figure picture{height:auto;aspect-ratio:auto}
.doctors .doctor-photo img,.doctor-profile figure img{display:block;width:100%;height:auto;aspect-ratio:auto;object-fit:contain;object-position:center top}
.header-social .social-platform-icon--header,.mobile-menu-social .social-platform-icon--header{width:24px;height:24px;min-width:24px;min-height:24px;display:block;object-fit:contain;object-position:center;transform:none}

/* Footer: only the two separators directly surrounding Ghost Studio remain. */
.site-footer .footer-bottom,
.site-footer .footer-bottom::before,
.site-footer .footer-bottom::after{border-top:0!important;border-bottom:0!important;box-shadow:none!important;background-image:none!important;}
.site-footer .ghost-credit-row{border-top:1px solid var(--gold);border-bottom:1px solid var(--gold);}

/* Light theme: remove the inline-image baseline gap under doctor/assistant photos. */
html[data-theme="light"] .doctors .doctor-photo,
html[data-theme="light"] .doctors .doctor-photo picture,
html[data-theme="light"] .doctors .doctor-photo img,
html[data-theme="light"] .assistants-section figure,
html[data-theme="light"] .assistants-section img{
  display:block;
  line-height:0;
  vertical-align:top;
}
html[data-theme="light"] .doctors .doctor-photo,
html[data-theme="light"] .doctors .doctor-photo picture{
  background:transparent;
}

/* Hero schedule and quick actions share the header's liquid-glass surface. */
.hero-schedule .hero-glass,
.hero-actions{
  border-color:var(--bliss-glass-border);
  background:var(--bliss-glass-bg);
  box-shadow:var(--bliss-glass-shadow);
  backdrop-filter:var(--bliss-glass-blur);
  -webkit-backdrop-filter:var(--bliss-glass-blur);
}
@media(max-width:760px){
  .hero-actions .hero-action:first-child .hero-action-title{font-size:1.425rem;}
  .hero-actions .hero-action--location .hero-route{font-size:1.23rem;}
}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
  .hero-schedule .hero-glass,.hero-actions{background:rgba(48,37,31,.72)}
}

/* CTA typography only: preserve each button's existing geometry and visual system. */
html[data-theme] :is(.booking-button,.footer-book,.doctor-book,.booking-cta-button){font-size:.8rem;}
html[data-theme] .contact-route{font-size:.8rem;}
@media(max-width:760px){
  html[data-theme] :is(.booking-button,.footer-book,.doctor-book,.booking-cta-button){font-size:.8rem;}
  html[data-theme] .contact-route{font-size:.8rem;}
}

/* Doctor cards: accessible typography scale for desktop and touch layouts. */
.doctors .doctor-card{grid-template-rows:auto 290px;}
.doctors .doctor-info{height:290px;padding:22px 24px 18px;}
.doctors .doctor-card--olena .doctor-role{display:none;min-height:0;margin:0!important;}
.doctors .doctor-card--olena .doctor-info h3{margin-top:0;}
.doctors .doctor-role:empty{display:none;min-height:0;margin:0!important;}
.doctors .doctor-info h3{margin-bottom:0;}
.doctors .doctor-info p{margin-top:10px;}
.doctors .doctor-info small,.doctors .doctor-role{font-size:1rem;line-height:1.45;letter-spacing:.08em;}
.doctors .doctor-info h3{font-size:2rem;line-height:1.25;}
.doctors .doctor-info p{font-size:1.25rem;line-height:1.45;}
.doctors .doctor-info .doctor-mobile-cta{font-size:1.05rem;line-height:1.35;}
@media(max-width:760px){
  .doctors .doctor-card{grid-template-rows:auto 320px;}
  .doctors .doctor-info{height:320px;padding:22px 23px 19px;}
  .doctors .doctor-info small,.doctors .doctor-role{font-size:.95rem;line-height:1.45;}
  .doctors .doctor-info h3{font-size:1.65rem;line-height:1.25;}
  .doctors .doctor-info p{font-size:1.05rem;line-height:1.5;}
  .doctors .doctor-info .doctor-mobile-cta{min-height:56px;font-size:1rem;}
}
.header-social .social-platform-icon--instagram,.mobile-menu-social .social-platform-icon--instagram{content:url('/images/instagram-gold.png')}
.header-social .social-platform-icon--tiktok,.mobile-menu-social .social-platform-icon--tiktok{content:url('/images/tiktok-gold.png')}
.ghost-credit img{width:32px;height:32px;object-fit:contain;object-position:center}
.media-transition-media video{display:block;width:100%;height:auto;min-height:0;object-fit:contain}
/* Before/After cards: fill the frame without stretching or leaving letterbox gaps. */
.ba-slider>picture>img,.ba-before picture>img,.ba-slider>img,.ba-before img{object-fit:cover!important;object-position:center center!important}
.mobile-case-media img{object-fit:cover!important;object-position:center center!important}
/* Service category hero icon: a consistent premium tile beside the title. */
.service-detail header>.service-detail-icon{
  display:grid;
  place-items:center;
  box-sizing:border-box;
  padding:18px;
  border:1px solid rgba(211,173,98,.58);
  border-radius:24px;
  background:rgba(211,173,98,.12);
  box-shadow:inset 0 1px 0 rgba(244,238,230,.22),0 10px 24px rgba(48,37,31,.10);
}
.service-detail header>.service-detail-icon img{display:block;width:100%;height:100%;object-fit:contain}
html[data-theme="dark"] .service-detail header>.service-detail-icon{background:rgba(48,37,31,.72);border-color:rgba(211,173,98,.62);box-shadow:inset 0 1px 0 rgba(244,238,230,.10),0 12px 28px rgba(0,0,0,.18)}
@media(max-width:760px){
  .service-detail header>.service-detail-icon{padding:12px;border-radius:18px}
}
/* Service category icons use the same espresso-brown container in both themes. */
.service-detail header>.service-detail-icon,
html[data-theme="dark"] .service-detail header>.service-detail-icon,
html[data-theme="light"] .service-detail header>.service-detail-icon{background:#3A302A}

/* Clinic assistants section follows the main doctors block. */
.assistants-section{background:var(--color-graphite);color:var(--ivory)}
.assistants-shell{width:min(100% - 80px,1050px);margin:0 auto;padding:0 0 128px;text-align:center}
.assistants-shell .section-label{justify-content:center;margin:0 0 24px;color:var(--gold);font-size:.82rem}
.assistants-shell h2{margin:0 0 42px;color:var(--ivory);font-family:Unbounded,var(--sans);font-size:clamp(2rem,4vw,4rem);font-weight:400;letter-spacing:-.06em;line-height:1.15}
.assistants-shell figure{max-width:920px;margin:0 auto;overflow:hidden;border:1px solid rgba(211,173,98,.35);border-radius:28px;background:#30251f;box-shadow:0 16px 34px rgba(0,0,0,.16)}
.assistants-shell img{display:block;width:100%;height:auto;object-fit:contain}
.assistants-shell>.section-label{display:none}
html[data-theme="light"] .assistants-section{background:#FFFFFF}
html[data-theme="light"] .assistants-shell h2{color:#30251F;background:none;-webkit-text-fill-color:#30251F}
html[data-theme="light"] .assistants-shell{background:#FFFFFF}
@media(max-width:760px){.assistants-shell{width:min(100% - 40px,560px);padding-bottom:85px}.assistants-shell h2{margin-bottom:28px;font-size:clamp(2rem,8vw,2.8rem)}.assistants-shell figure{border-radius:22px}}
