@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;600;700&family=Prata&display=swap');
:root{--bg:#f0f1f2;--ink:#252934;--muted:#69717a;--line:#dde0e3;--brand:#f64d7a;--lav:#8875ad;--shadow:0 18px 50px #20293812}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font:16px/1.5 Manrope,Arial,sans-serif}a{color:inherit;text-decoration:none}.container{width:min(1440px,calc(100% - 80px));margin:auto}.site-header{position:sticky;top:0;z-index:50;background:#fffffff2;backdrop-filter:blur(15px);border-bottom:1px solid var(--line)}.header-row{height:88px;display:flex;align-items:center;gap:28px}.brand{display:flex;align-items:center;gap:10px;flex-shrink:0}.brand-mark{width:48px;height:48px;border:3px solid var(--brand);border-radius:15px 15px 20px 20px;display:grid;place-items:center;color:var(--brand);font:26px Prata}.brand strong{display:block;color:var(--brand);font:24px/1 Prata}.brand small{display:block;font-size:9px;margin-top:5px}.navlinks{display:flex;gap:23px;margin:auto;font-size:13px;font-weight:600}.navlinks a:hover,.title-row>a{color:var(--brand)}.header-contact{display:flex;flex-direction:column;min-width:145px;font-weight:700}.header-contact small{font-size:10px;color:var(--muted);font-weight:400}.btn{min-height:52px;padding:0 26px;border:1px solid transparent;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-weight:700;transition:.2s}.btn:hover{transform:translateY(-2px)}.btn-brand{background:var(--brand);color:#fff;box-shadow:0 10px 25px #f64d7a38}.btn-ghost{border-color:#979da3}.menu-button{display:none;border:0;background:none;font-size:28px}.home-hero{background:var(--bg)}.hero-layout{display:grid;grid-template-columns:47% 53%;min-height:640px}.hero-copy{padding:78px 38px 45px 0;position:relative}.eyebrow{color:var(--lav);font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}h1,h2{font-family:Prata,Georgia,serif;font-weight:400}.hero-copy h1{font-size:clamp(54px,5vw,82px);line-height:1.04;letter-spacing:-.035em;margin:18px 0}.lead{font-size:19px;color:var(--muted);max-width:600px}.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}.hero-features{position:absolute;bottom:42px;left:0;right:0;display:grid;grid-template-columns:repeat(4,1fr);gap:14px;font-size:12px}.hero-features span{display:flex;gap:8px}.hero-features b{color:var(--brand);font-size:25px}.photo-slot,.image-slot{background:linear-gradient(145deg,#d9dcde,#f3f4f5);display:grid;place-items:center;color:#969ca2}.hero-photo{position:relative;border-radius:0 0 0 65px}.hero-photo>span,.clinic-photo>span{border:1px dashed #aeb3b8;border-radius:12px;padding:14px}.video-note{position:absolute;right:30px;bottom:30px;padding:15px 20px;background:#fffffff0;border-radius:17px;display:flex;align-items:center;gap:12px}.video-note i{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:var(--lav);color:#fff;font-style:normal}.section{padding:76px 0}.title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.title-row h2{font-size:42px;line-height:1.1;margin:0}.title-row p{color:var(--muted)}.service-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:13px;margin-top:28px}.service-card,.doctor-card{border:1px solid var(--line);border-radius:15px;overflow:hidden;position:relative;background:#fff}.service-card .image-slot{height:155px}.service-card strong,.service-card small,.doctor-card strong,.doctor-card span,.doctor-card small{display:block;margin:14px 16px 0}.service-card small,.doctor-card small{color:var(--muted);font-size:12px;margin-top:5px;margin-bottom:20px;min-height:38px}.service-card i{position:absolute;right:13px;bottom:13px;color:var(--brand);font-style:normal}.clinic{display:grid;grid-template-columns:41% 38% 21%;min-height:450px;background:var(--bg)}.clinic-photo{border-radius:0 28px 28px 0}.clinic-copy{padding:70px 6vw}.clinic-copy h2{font-size:46px;line-height:1.08;margin:14px 0}.clinic-copy p{color:var(--muted);font-size:17px}.clinic-facts{border-left:1px solid var(--line);padding:55px 32px;display:flex;flex-direction:column;justify-content:center;gap:30px}.clinic-facts div{display:flex;align-items:center;gap:15px}.clinic-facts b{min-width:65px;color:var(--lav);font:36px Prata}.clinic-facts span{color:var(--muted)}.doctor-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin-top:26px}.doctor-card .image-slot{height:205px}.doctor-card span{margin-top:0}.doctor-card small{min-height:36px}.soft{background:var(--bg)}.split{display:grid;grid-template-columns:38% 62%;gap:22px}.review,.tax-card{padding:32px;border-radius:20px;background:#fff;box-shadow:var(--shadow)}.review h2{font-size:34px}.review blockquote{margin:30px 0 0;line-height:1.65}.review blockquote:before{content:'“';display:block;color:var(--brand);font:58px/1 Georgia}.review footer{margin-top:22px}.tax-card{background:linear-gradient(135deg,#fff,#faeef2);display:grid;grid-template-columns:1.3fr .7fr}.tax-card h2{font-size:38px;line-height:1.08;margin:12px 0}.document{align-self:center;justify-self:center;padding:40px 22px;background:#fff;box-shadow:0 15px 40px #0002;transform:rotate(-5deg);font-family:Georgia;text-align:center}.document small{display:block;margin-top:12px}.site-footer{padding:42px 0 22px;background:#f6f6f7;border-top:1px solid var(--line)}.footer-main{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr 1.5fr;gap:30px}.footer-brand p{color:var(--muted)}.footer-contact{display:flex;flex-direction:column;gap:7px;font-size:14px}.footer-contact>span{color:var(--muted);font-size:11px;text-transform:uppercase}.footer-map{height:100px;border-radius:15px;background:#dfe2e4;display:flex;align-items:center;justify-content:center;gap:10px;color:var(--brand)}.footer-bottom{border-top:1px solid var(--line);margin-top:32px;padding-top:18px;display:flex;justify-content:space-between;color:var(--muted);font-size:11px}.footer-bottom span:last-child{display:flex;gap:18px}.mobile-call{display:none}.form-shell{max-width:850px}.notice,.ack{padding:20px;margin:14px 0;border:1px solid var(--line);border-radius:16px;background:var(--bg)}.ack{display:flex;gap:12px;background:#fff}.tax-form{display:none}.tax-form.open{display:block}.fields{display:grid;grid-template-columns:1fr 1fr;gap:15px}.field{display:flex;flex-direction:column}.field.full{grid-column:1/-1}input,select,textarea{width:100%;padding:14px;border:1px solid #cdd1d5;border-radius:12px}.segmented{display:grid;grid-template-columns:1fr 1fr;gap:10px}.segmented label{padding:16px;border:1px solid var(--line);border-radius:12px}
@media(max-width:1200px){.container{width:calc(100% - 44px)}.navlinks{gap:13px}.navlinks a:nth-last-child(2){display:none}.header-cta{display:none}.doctor-grid{grid-template-columns:repeat(3,1fr)}.service-grid{grid-template-columns:repeat(3,1fr)}.footer-main{grid-template-columns:repeat(3,1fr)}.footer-map{grid-column:2/4}}
@media(max-width:820px){.container{width:calc(100% - 32px)}.header-row{height:72px}.header-contact,.navlinks{display:none}.menu-button{display:block;margin-left:auto}.navlinks.open{display:flex;position:absolute;left:0;right:0;top:72px;background:#fff;padding:22px;flex-direction:column;align-items:flex-start;box-shadow:var(--shadow)}.hero-layout{display:block}.hero-copy{padding:55px 0 205px}.hero-copy h1{font-size:45px}.hero-features{grid-template-columns:1fr 1fr;bottom:25px}.hero-photo{min-height:380px;border-radius:0}.clinic{grid-template-columns:1fr}.clinic-photo{min-height:330px;border-radius:0}.clinic-copy{padding:55px 24px}.clinic-facts{border-left:0;border-top:1px solid var(--line)}.split{grid-template-columns:1fr}.tax-card{grid-template-columns:1fr}.document{display:none}.footer-main{grid-template-columns:1fr 1fr}.footer-map{grid-column:1/3}.footer-bottom{display:block;padding-bottom:65px}.footer-bottom span:last-child{margin-top:10px;flex-wrap:wrap}.mobile-call{display:flex;position:fixed;left:12px;right:12px;bottom:12px;z-index:70}.fields{grid-template-columns:1fr}}
@media(max-width:520px){.section{padding:54px 0}.service-grid,.doctor-grid{grid-template-columns:1fr}.title-row h2{font-size:34px}.hero-copy h1{font-size:38px}.clinic-copy h2{font-size:38px}.footer-main{grid-template-columns:1fr}.footer-map{grid-column:auto}}

/* Brand assets and accessibility */
.brand img{display:block;width:165px;height:auto}.brand-subtitle{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.footer-brand .brand img{width:190px}.access-row{background:#262a32;color:#fff}.access-row .container{min-height:34px;display:flex;justify-content:flex-end;align-items:center}.access-open{border:0;background:transparent;color:inherit;font-weight:700;cursor:pointer;padding:6px 0}.access-panel{background:#fff;border-bottom:2px solid #262a32}.access-controls{min-height:76px;display:flex;align-items:center;gap:22px;flex-wrap:wrap;padding-top:10px;padding-bottom:10px}.access-controls div{display:flex;align-items:center;gap:6px}.access-controls button{padding:8px 12px;border:2px solid currentColor;background:transparent;border-radius:5px;font-weight:700}.access-controls label{font-weight:600}.service-card .image-slot{background:#f4f4f5 center/76px no-repeat;color:transparent}.service-card:nth-child(1) .image-slot{background-image:url('/assets/icons/02-implant.svg')}.service-card:nth-child(2) .image-slot{background-image:url('/assets/icons/03-prosthetics.svg')}.service-card:nth-child(3) .image-slot{background-image:url('/assets/icons/01-treatment.svg')}.service-card:nth-child(4) .image-slot{background-image:url('/assets/icons/04-orthodontics.svg')}.service-card:nth-child(5) .image-slot{background-image:url('/assets/icons/05-hygiene.svg')}
html[data-access-font="large"]{font-size:20px}html[data-access-font="xlarge"]{font-size:24px}html.access-spacing body{letter-spacing:.08em;line-height:1.75}html.access-no-images img,html.access-no-images .photo-slot,html.access-no-images .image-slot,html.access-no-images .document{display:none!important}html[data-access-theme="white"] body{background:#fff!important;color:#000!important}html[data-access-theme="white"] *{background-color:#fff!important;color:#000!important;border-color:#000!important;box-shadow:none!important}html[data-access-theme="black"] body{background:#000!important;color:#fff!important}html[data-access-theme="black"] *{background-color:#000!important;color:#fff!important;border-color:#fff!important;box-shadow:none!important}html[data-access-theme="blue"] body{background:#9dd7f4!important;color:#08294a!important}html[data-access-theme="blue"] *{background-color:#9dd7f4!important;color:#08294a!important;border-color:#08294a!important;box-shadow:none!important}:focus-visible{outline:4px solid #1666cc!important;outline-offset:3px}
@media(max-width:820px){.access-row .container{justify-content:center}.access-open{font-size:12px}.access-controls{align-items:flex-start;flex-direction:column}.brand img{width:145px}}

/* Stronger RusDent accent */
:root{--bg:#e7e9ec;--brand:#fa4f7b;--brand-dark:#e73b69}.home-hero,.clinic,.soft{background-color:var(--bg)}.btn-brand{border-color:var(--brand)}.btn-brand:hover{background:#fff;color:var(--brand);border-color:var(--brand);box-shadow:0 12px 30px #fa4f7b2d}.btn-ghost:hover{background:var(--brand);border-color:var(--brand);color:#fff;box-shadow:0 12px 30px #fa4f7b2d}.service-card,.doctor-card{transition:transform .22s,border-color .22s,box-shadow .22s}.service-card:hover,.doctor-card:hover{transform:translateY(-5px);border-color:var(--brand);box-shadow:0 16px 36px #fa4f7b1c}.tax-card{position:relative;border:2px solid #fa4f7b55;background:linear-gradient(120deg,#fff 0 55%,#ffd9e4 100%);overflow:hidden}.tax-card:before{content:'';position:absolute;left:0;top:0;bottom:0;width:9px;background:var(--brand)}.tax-card .eyebrow{color:var(--brand)}.tax-card h2{color:#2b2933}.document{border-top:6px solid var(--brand)}.doctor-card .image-slot{overflow:hidden}.doctor-card .image-slot img{width:100%;height:100%;display:block;object-fit:cover;object-position:center 25%}.title-row>a{font-weight:700;border-bottom:2px solid transparent}.title-row>a:hover{border-color:var(--brand)}

.callback-band{padding:58px 0;background:#f8eef1;border-block:1px solid #fa4f7b30}.callback-layout{display:grid;grid-template-columns:1.05fr 1.35fr .75fr;gap:34px;align-items:center}.callback-layout h2{font-size:36px;line-height:1.15;margin:10px 0}.callback-layout p{color:var(--muted)}.callback-form{display:grid;grid-template-columns:1fr 1fr;gap:12px}.callback-form label{display:flex;flex-direction:column;gap:5px;font-size:12px}.callback-form label span{font-weight:700}.callback-form .wide,.callback-form .form-note{grid-column:1/-1}.callback-form .btn{justify-self:start}.form-note{color:var(--muted);font-size:10px}.installment{min-height:220px;padding:28px;border:3px solid var(--brand);background:#fff;box-shadow:var(--shadow);display:flex;flex-direction:column;justify-content:center}.installment span{color:var(--brand);font-weight:700;text-transform:uppercase;letter-spacing:.12em}.installment strong{font:32px/1.2 Prata;margin:10px 0}.installment small{color:var(--muted)}.benefits{padding:65px 0;background:var(--bg)}.benefits-title{text-align:center}.benefits-title h2{font-size:38px;margin:0}.benefits-title p{color:var(--muted)}.benefits-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px 80px;max-width:1050px;margin:42px auto 0}.benefits-grid article{display:flex;align-items:center;gap:20px}.benefits-grid img{width:60px;height:60px;object-fit:contain}.benefits-grid strong,.benefits-grid span{display:block}.benefits-grid strong{font-size:18px}.benefits-grid span{color:var(--muted);margin-top:4px}.reviews-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:32px}.reviews-grid blockquote{margin:0;padding:30px;background:#f8ebee;border-radius:18px;position:relative;line-height:1.65}.reviews-grid blockquote:after{content:'';position:absolute;bottom:-16px;left:28px;border:16px solid transparent;border-top-color:#f8ebee;border-left:0}.reviews-grid footer{display:flex;flex-direction:column;margin-top:22px;color:var(--brand)}.reviews-grid footer span{color:var(--muted);font-size:12px}
@media(max-width:1000px){.callback-layout{grid-template-columns:1fr 1fr}.installment{grid-column:1/-1;min-height:auto}.benefits-grid{gap:22px}.reviews-grid{grid-template-columns:1fr}}
@media(max-width:700px){.callback-layout,.callback-form,.benefits-grid{grid-template-columns:1fr}.callback-form .wide,.callback-form .form-note{grid-column:auto}.callback-layout h2{font-size:31px}.installment strong{font-size:27px}.benefits-title h2{font-size:32px}}

/* Doctor photography, visible buttons and review carousel */
.doctor-card:nth-child(2) .image-slot{background:url('/assets/doctors/talipov-ilgiz.jpg') center 24%/cover no-repeat;color:transparent}.doctor-card:nth-child(3) .image-slot{background:url('/assets/doctors/kapustin-maksim.jpg') center 22%/cover no-repeat;color:transparent}.doctor-card:nth-child(4) .image-slot{background:url('/assets/doctors/kalashnikova-olga.png') center 20%/cover no-repeat;color:transparent}.doctor-card:nth-child(5) .image-slot{background:url('/assets/doctors/gevorgyan-elina.png') center 20%/cover no-repeat;color:transparent}.doctor-card:nth-child(6) .image-slot{background:url('/assets/doctors/kireeva-maria.png') center 18%/cover no-repeat;color:transparent}.btn-ghost{background:#fff1f5;border:2px solid var(--brand);color:var(--brand)}.btn-ghost:hover{background:var(--brand);color:#fff}.callback-form .btn,.tax-card .btn,.header-cta{background:var(--brand)!important;color:#fff!important}.callback-form .btn:hover,.tax-card .btn:hover,.header-cta:hover{background:#fff!important;color:var(--brand)!important}.reviews-carousel{display:block;max-width:980px;margin-inline:auto}.reviews-carousel blockquote{min-height:280px;font-size:18px;animation:reviewIn .28s ease}.review-controls{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:32px}.review-controls>button{width:48px;height:48px;border:2px solid var(--brand);border-radius:50%;background:#fff;color:var(--brand);font-size:22px;cursor:pointer}.review-controls>button:hover{background:var(--brand);color:#fff}.review-dots{display:flex;gap:8px}.review-dots button{width:10px;height:10px;padding:0;border:0;border-radius:50%;background:#c8cbd0;cursor:pointer}.review-dots button.active{width:28px;border-radius:9px;background:var(--brand)}.review-count{min-width:42px;color:var(--muted);font-weight:700}@keyframes reviewIn{from{opacity:0;transform:translateX(18px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

/* Drawn connector animation for service cards */
.service-card{isolation:isolate;padding-bottom:14px}.service-card:after{content:'';position:absolute;left:18px;right:58px;bottom:28px;height:2px;background:var(--brand);transform:scaleX(0);transform-origin:right center;transition:transform .42s cubic-bezier(.2,.75,.25,1);z-index:0}.service-card:before{content:'';position:absolute;left:15px;bottom:24px;width:10px;height:10px;border:2px solid var(--brand);border-radius:50%;background:#fff;opacity:0;transform:scale(.4);transition:opacity .18s,transform .3s;z-index:2}.service-card strong,.service-card small{position:relative;z-index:1;background:#fff;transition:color .22s}.service-card .image-slot{transition:background-size .42s ease,background-color .25s}.service-card i{width:34px;height:34px;border:2px solid var(--brand);border-radius:50%;display:grid;place-items:center;background:#fff;z-index:3;transition:background .22s,color .22s,transform .35s}.service-card:hover:after,.service-card:focus-visible:after{transform:scaleX(1)}.service-card:hover:before,.service-card:focus-visible:before{opacity:1;transform:scale(1)}.service-card:hover strong,.service-card:focus-visible strong{color:var(--brand)}.service-card:hover .image-slot,.service-card:focus-visible .image-slot{background-size:86px;background-color:#fff0f4}.service-card:hover i,.service-card:focus-visible i{background:var(--brand);color:#fff;transform:rotate(-25deg)}
@media(prefers-reduced-motion:reduce){.service-card:after{transition:none}.service-card:hover:after,.service-card:focus-visible:after{transform:scaleX(1)}}

/* Premium full-screen mobile menu */
.mobile-menu-logo,.mobile-menu-actions,.menu-backdrop{display:none}
@media(max-width:820px){body.menu-open{overflow:hidden}.menu-backdrop{display:block;position:fixed;inset:0;border:0;background:#20242d66;backdrop-filter:blur(5px);opacity:0;pointer-events:none;transition:opacity .35s;z-index:74}.menu-backdrop.show{opacity:1;pointer-events:auto}.site-header{z-index:80}.menu-button{position:relative;z-index:82;width:46px;height:46px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;background:#fff;color:var(--ink);font:34px/1 Manrope;transition:transform .32s,border-color .2s,color .2s}.menu-open .menu-button{color:var(--brand);border-color:var(--brand);transform:rotate(180deg)}.navlinks.open{display:flex;position:fixed;top:0;right:0;bottom:0;left:auto;width:min(440px,100vw);height:100dvh;padding:54px 44px 32px;background:#f7f8f9;box-shadow:-20px 0 60px #20242d28;flex-direction:column;align-items:stretch;gap:4px;overflow-y:auto;z-index:79;animation:menuSlide .42s cubic-bezier(.22,.8,.3,1)}.navlinks.open:after{content:'';position:absolute;inset:auto 0 0;height:5px;background:var(--brand)}.navlinks.open>a:not(.mobile-menu-logo){font:22px/1.2 Prata;text-align:center;padding:11px 14px;border-radius:7px;opacity:0;transform:translateY(18px);animation:menuItem .38s forwards}.navlinks.open>a:nth-of-type(2){animation-delay:.08s}.navlinks.open>a:nth-of-type(3){animation-delay:.12s}.navlinks.open>a:nth-of-type(4){animation-delay:.16s}.navlinks.open>a:nth-of-type(5){animation-delay:.20s}.navlinks.open>a:nth-of-type(6){animation-delay:.24s}.navlinks.open>a:nth-of-type(7){animation-delay:.28s}.navlinks.open>a:nth-of-type(8){animation-delay:.32s}.navlinks.open>a:hover{border-color:var(--brand);background:#fff0f4;color:var(--brand)}.navlinks.open .mobile-menu-logo{display:block;width:210px;margin:0 auto 22px;padding:0;border:0}.mobile-menu-logo img{display:block;width:100%;height:auto}.mobile-menu-actions{display:grid;gap:10px;margin-top:auto;padding-top:24px;opacity:0;animation:menuItem .4s .34s forwards}.mobile-menu-actions .btn{min-height:52px}.btn-soft{background:#fff0f4;border:2px solid var(--brand);color:var(--brand)}.btn-soft:hover{background:var(--brand);color:#fff}@keyframes menuSlide{from{opacity:0;transform:translateX(35px)}to{opacity:1;transform:none}}@keyframes menuItem{to{opacity:1;transform:none}}}
@media(max-width:440px){.navlinks.open{padding:40px 24px 24px}.navlinks.open>a:not(.mobile-menu-logo){font-size:20px;padding:9px 12px}.navlinks.open .mobile-menu-logo{width:180px;margin-bottom:14px}}
@media(prefers-reduced-motion:reduce){.navlinks.open,.navlinks.open>a:not(.mobile-menu-logo),.mobile-menu-actions{animation:none;opacity:1;transform:none}.menu-button,.menu-backdrop{transition:none}}

/* Mobile menu visibility safeguard */
@media(max-width:820px){.navlinks.open>a{display:flex!important;opacity:1;transform:none}.navlinks.open>a:not(.mobile-menu-logo){justify-content:center;animation:menuItemSafe .38s backwards}.navlinks.open .mobile-menu-logo{display:block!important}.navlinks.open .mobile-menu-actions{display:grid!important;opacity:1;transform:none;animation:menuItemSafe .4s .3s backwards}@keyframes menuItemSafe{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}}
@media(prefers-reduced-motion:reduce){.navlinks.open>a:not(.mobile-menu-logo),.navlinks.open .mobile-menu-actions{animation:none!important;opacity:1!important;transform:none!important}}

/* Independent mobile navigation */
.mobile-menu,.mobile-menu-backdrop{display:none}
@media(max-width:820px){.mobile-menu-backdrop{display:block;position:fixed;inset:0;z-index:89;border:0;background:#20242d70;backdrop-filter:blur(5px);opacity:0;transition:opacity .28s}.mobile-menu-backdrop[hidden]{display:none}.mobile-menu-backdrop.is-open{opacity:1}.mobile-menu{display:flex;position:fixed;z-index:90;inset:0 0 0 auto;width:min(440px,100%);padding:38px 38px 28px;background:#f7f8f9;box-shadow:-24px 0 60px #20242d2b;flex-direction:column;overflow-y:auto;visibility:hidden;transform:translateX(100%);transition:transform .38s cubic-bezier(.22,.8,.3,1),visibility 0s .38s}.mobile-menu.is-open{visibility:visible;transform:none;transition:transform .38s cubic-bezier(.22,.8,.3,1),visibility 0s}.mobile-menu:after{content:'';position:fixed;right:0;bottom:0;width:min(440px,100%);height:5px;background:var(--brand)}.mobile-menu-brand{display:block;width:190px;margin:0 auto 20px;padding:0!important;border:0!important}.mobile-menu-brand img{display:block;width:100%;height:auto}.mobile-menu nav{display:grid;gap:3px}.mobile-menu nav a{display:flex!important;min-height:43px;align-items:center;justify-content:center;padding:8px 14px;border:2px solid transparent;border-radius:7px;color:var(--ink)!important;background:transparent!important;font:20px/1.2 Prata,Georgia,serif!important;opacity:1!important;visibility:visible!important;transform:none!important;animation:none!important;transition:border-color .18s,color .18s,background .18s}.mobile-menu nav a:hover,.mobile-menu nav a:focus-visible{border-color:var(--brand);color:var(--brand)!important;background:#fff0f4!important}.mobile-menu-cta{display:grid;gap:10px;margin-top:auto;padding-top:22px}.mobile-menu-cta .btn{display:flex!important;min-height:50px;opacity:1!important;visibility:visible!important}.menu-button{position:relative;z-index:91}.menu-open .menu-button{color:var(--brand);border-color:var(--brand)}}
@media(max-width:440px){.mobile-menu{padding:30px 22px 22px}.mobile-menu-brand{width:165px;margin-bottom:12px}.mobile-menu nav a{min-height:40px;font-size:18px!important;padding:6px 10px}.mobile-menu-cta{padding-top:16px}}
@media(prefers-reduced-motion:reduce){.mobile-menu,.mobile-menu-backdrop{transition:none}}
.mobile-menu-close{position:absolute;top:18px;right:18px;width:46px;height:46px;padding:0;border:1px solid var(--brand);border-radius:50%;background:#fff;color:var(--brand);font:32px/1 Manrope,Arial,sans-serif;cursor:pointer;transition:background .2s,color .2s,transform .25s}.mobile-menu-close:hover{background:var(--brand);color:#fff;transform:rotate(90deg)}

/* Rectangular button system and interactive benefits */
.btn{min-height:48px;padding:0 24px;border-radius:4px}.mobile-menu-cta{justify-items:center}.mobile-menu-cta .btn{width:min(300px,100%);min-height:44px;padding:0 20px;border-radius:3px}.benefits-grid{gap:18px 24px}.benefits-grid article{min-height:118px;padding:22px 24px;border:1px solid transparent;border-radius:5px;transition:transform .25s ease,background .25s ease,border-color .25s ease,box-shadow .25s ease}.benefits-grid article:hover{transform:translateY(-5px);background:#fff;border-color:var(--brand);box-shadow:0 16px 38px #25293412}.benefits-grid article img{transition:transform .3s ease}.benefits-grid article:hover img{transform:scale(1.08) rotate(-3deg)}
@media(max-width:700px){.benefits-grid article{min-height:auto;padding:18px}.mobile-menu-cta .btn{width:min(280px,100%)}}
@media(prefers-reduced-motion:reduce){.benefits-grid article,.benefits-grid article img{transition:none}.benefits-grid article:hover{transform:none}}

/* Tax deduction wizard */
.tax-hero{padding:78px 0;background:linear-gradient(120deg,#e7e9ec 0 68%,#f8dfe7 68%)}.tax-hero-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:70px;align-items:center}.tax-hero h1{max-width:800px;margin:18px 0;font:clamp(48px,5vw,76px)/1.04 Prata,Georgia,serif}.tax-hero p{max-width:720px;color:var(--muted);font-size:18px}.tax-hero aside{padding:30px;border-left:4px solid var(--brand);background:#fff}.tax-hero aside strong{font:25px Prata}.tax-hero aside li{margin:10px 0;color:var(--muted)}.tax-section{background:#f3f4f5}.tax-shell{max-width:1050px}.tax-progress{display:grid;grid-template-columns:repeat(4,1fr);margin-bottom:28px}.tax-progress span{position:relative;display:flex;gap:10px;align-items:center;color:#8a9097;font-weight:700}.tax-progress span:not(:last-child):after{content:'';height:2px;position:absolute;left:40px;right:10px;bottom:-9px;background:#d9dcdf}.tax-progress b{width:32px;height:32px;display:grid;place-items:center;border:1px solid #c7cbd0;border-radius:50%;background:#fff}.tax-progress .active,.tax-progress .done{color:var(--brand)}.tax-progress .active b,.tax-progress .done b{border-color:var(--brand);background:var(--brand);color:#fff}.tax-progress .done:after{background:var(--brand)!important}.tax-wizard{padding:44px;background:#fff;box-shadow:0 18px 55px #25293410}.tax-step{display:none}.tax-step.active{display:block;animation:taxStep .32s ease}.step-heading>span{color:var(--brand);font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.step-heading h2{font-size:40px;margin:8px 0}.step-heading p{color:var(--muted);max-width:760px}.tax-info{margin:28px 0;padding:22px 24px;border-left:4px solid var(--brand);background:#f7f8f9}.tax-info p{margin-bottom:0;color:var(--muted)}.tax-check{display:flex;gap:16px;align-items:flex-start;margin:12px 0;padding:18px;border:1px solid var(--line);cursor:pointer;transition:.2s}.tax-check:hover{border-color:var(--brand);background:#fff5f7}.tax-check input{width:22px;height:22px;accent-color:var(--brand)}.tax-check b,.tax-check small{display:block}.tax-check small{margin-top:3px;color:var(--muted)}.tax-choice{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:28px 0}.tax-choice label{position:relative;cursor:pointer}.tax-choice input{position:absolute;opacity:0}.tax-choice span{min-height:120px;padding:25px;display:flex;flex-direction:column;justify-content:center;border:2px solid var(--line);transition:.22s}.tax-choice b{font:25px Prata}.tax-choice small{margin-top:7px;color:var(--muted)}.tax-choice input:checked+span{border-color:var(--brand);background:#fff2f6;box-shadow:0 12px 30px #fa4f7b15}.tax-fields-panel{margin-top:30px;padding-top:26px;border-top:1px solid var(--line)}.tax-fields-panel h3{font:27px Prata}.tax-wizard .field{gap:7px;font-weight:700}.tax-wizard .field input,.tax-wizard .field select,.tax-wizard .field textarea{font:16px Manrope;background:#fafafa}.tax-wizard .field input:focus,.tax-wizard .field select:focus,.tax-wizard .field textarea:focus{outline:0;border-color:var(--brand);box-shadow:0 0 0 3px #fa4f7b18;background:#fff}.tax-years{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:28px 0}.tax-years label{cursor:pointer}.tax-years input{position:absolute;opacity:0}.tax-years span{height:70px;display:grid;place-items:center;border:2px solid var(--line);font:22px Prata;transition:.2s}.tax-years input:checked+span{border-color:var(--brand);background:var(--brand);color:#fff}.tax-comment{margin-top:28px}.step-actions{display:flex;justify-content:space-between;gap:12px;margin-top:34px}.step-actions [data-next]:only-child{margin-left:auto}.tax-summary{margin:28px 0}.tax-summary dl{display:grid;grid-template-columns:1fr 1fr;margin:0;border:1px solid var(--line)}.tax-summary dl div{padding:18px;border-bottom:1px solid var(--line)}.tax-summary dt{color:var(--muted);font-size:12px;text-transform:uppercase}.tax-summary dd{margin:5px 0 0;font-weight:700}.tax-error{margin-top:16px;color:#b42318;font-weight:700}.tax-success{display:grid;grid-template-columns:auto 1fr;gap:28px;align-items:start;padding:45px;background:#fff;box-shadow:var(--shadow)}.tax-success>span{width:62px;height:62px;display:grid;place-items:center;background:var(--brand);color:#fff;font-size:30px}.tax-success h2{font-size:42px;margin:8px 0}.tax-honeypot{position:absolute!important;left:-9999px!important}.tax-form{display:block}.tax-form.open{display:block}@keyframes taxStep{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@media(max-width:760px){.tax-hero{padding:48px 0;background:#e7e9ec}.tax-hero-grid{grid-template-columns:1fr;gap:25px}.tax-hero h1{font-size:42px}.tax-hero aside{padding:22px}.tax-progress{font-size:0}.tax-progress span{gap:0}.tax-progress span:not(:last-child):after{left:32px}.tax-wizard{padding:26px 20px}.step-heading h2{font-size:32px}.tax-choice,.tax-summary dl{grid-template-columns:1fr}.tax-choice span{min-height:95px}.tax-years{grid-template-columns:1fr 1fr}.fields{grid-template-columns:1fr}.field.full{grid-column:auto}.step-actions{flex-direction:column-reverse}.step-actions .btn{width:100%}.tax-success{grid-template-columns:1fr;padding:30px 22px}}
.tax-success[hidden]{display:none!important}

/* Readable animated clinic facts */
.clinic-facts{padding:50px 34px;gap:16px}.clinic-facts div{min-width:0;padding:22px 0;border-bottom:1px solid #cfd3d7;align-items:flex-start}.clinic-facts div:last-child{border-bottom:0}.clinic-facts b{min-width:82px;color:var(--lav);font-size:44px;line-height:1}.clinic-facts span{font-size:15px;line-height:1.35}.clinic-copy{display:flex;flex-direction:column;justify-content:center}
@media(max-width:1100px) and (min-width:821px){.clinic{grid-template-columns:45% 55%}.clinic-facts{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);padding:26px 40px;border-left:0;border-top:1px solid var(--line)}.clinic-facts div{padding:10px 24px;border:0;border-right:1px solid #cfd3d7}.clinic-facts div:last-child{border-right:0}}
@media(max-width:820px){.clinic-facts div{padding:18px 0}.clinic-facts b{font-size:40px}}

/* 404 */
.error-page{min-height:calc(100vh - 300px);display:grid;align-items:center;padding:85px 0;background:linear-gradient(115deg,#e7e9ec 0 66%,#f8e7ec 66%)}.error-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:center}.error-code{display:flex;align-items:center;justify-content:center;color:var(--ink);font:clamp(120px,18vw,260px)/.8 Prata,Georgia,serif;letter-spacing:-.1em}.error-code i{width:.58em;height:.76em;margin:0 .06em;border:5px solid var(--brand);border-radius:48% 48% 44% 44%;font-size:0;transform:rotate(5deg);box-shadow:inset 0 0 0 12px #fff}.error-copy{max-width:620px}.error-copy h1{margin:15px 0 22px;font-size:clamp(42px,5vw,68px);line-height:1.05}.error-copy>p{color:var(--muted);font-size:18px}.error-phone{display:inline-flex;flex-direction:column;margin-top:30px;padding-left:18px;border-left:3px solid var(--brand)}.error-phone small{color:var(--muted)}.error-phone strong{font-size:22px}.error-phone:hover strong{color:var(--brand)}
@media(max-width:760px){.error-page{padding:55px 0;background:#e7e9ec}.error-layout{grid-template-columns:1fr;gap:35px}.error-code{font-size:125px}.error-copy h1{font-size:42px}.error-copy .actions{display:grid}.error-copy .btn{width:100%}}

.navlinks a{border:2px solid transparent;border-radius:4px;padding:8px 10px;transition:border-color .18s,color .18s,background .18s}.navlinks a:hover,.navlinks a:focus-visible{border-color:var(--brand);color:var(--brand);background:#fff5f7}.review{position:relative;overflow:hidden}.review-float{min-height:330px;margin-top:24px}.review-float blockquote{margin:0;padding:25px;background:#f8ebee;border-radius:18px;line-height:1.62;animation:reviewFloat .38s ease}.review-float footer{display:flex;flex-direction:column;margin-top:20px;color:var(--brand)}.review-float footer span{color:var(--muted);font-size:12px}.review .review-controls{margin-top:20px}.review .review-controls>button{width:42px;height:42px}.reviews-full[hidden]{display:none!important}@keyframes reviewFloat{from{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:none}}

/* Premium gray-white editorial atmosphere */
:root{
  --bg:#e9ecef;
  --surface:#f8f9fa;
  --surface-cool:#eef1f4;
  --line:#d6dbe0;
  --shadow:0 24px 65px rgba(52,62,74,.13),0 7px 20px rgba(52,62,74,.06);
  --shadow-hover:0 30px 75px rgba(47,58,72,.17),0 9px 24px rgba(47,58,72,.08);
}
body{background:#f4f5f6;overflow-x:hidden}
.home-hero,.clinic,.soft,.benefits,.callback-band,.tax-section,.error-page{
  position:relative;
  isolation:isolate;
  background-color:#edf0f2;
  background-image:
    radial-gradient(ellipse 70% 80% at 8% 12%,rgba(255,255,255,.98) 0%,rgba(255,255,255,0) 66%),
    radial-gradient(ellipse 50% 65% at 91% 18%,rgba(184,194,205,.32) 0%,rgba(184,194,205,0) 72%),
    radial-gradient(ellipse 62% 60% at 64% 96%,rgba(211,217,223,.48) 0%,rgba(211,217,223,0) 70%),
    linear-gradient(135deg,#f8f8f7 0%,#eceff2 46%,#f5f6f7 100%);
  overflow:hidden;
}
.home-hero:before,.clinic:before,.soft:before,.benefits:before,.callback-band:before,.tax-section:before,.error-page:before{
  content:'';
  position:absolute;
  z-index:-1;
  width:46vw;
  height:46vw;
  min-width:420px;
  min-height:420px;
  right:-18vw;
  top:-24vw;
  border-radius:50%;
  background:rgba(116,132,150,.13);
  filter:blur(90px);
  pointer-events:none;
  animation:atmosphereDrift 18s ease-in-out infinite alternate;
}
.section:not(.soft){background:linear-gradient(180deg,#fbfbfa 0%,#f5f6f7 100%)}
.site-header{background:rgba(249,250,250,.92);box-shadow:0 8px 30px rgba(50,61,73,.045)}
.site-footer{background:linear-gradient(135deg,#e7eaed 0%,#f5f5f4 55%,#dfe4e8 100%)}
.service-card,.doctor-card,.review,.tax-card,.installment,.tax-wizard,.tax-success,.benefits-grid article{
  border-radius:0;
  box-shadow:var(--shadow);
}
.service-card,.doctor-card{border-color:rgba(104,116,128,.18)}
.service-card:hover,.doctor-card:hover,.benefits-grid article:hover{box-shadow:var(--shadow-hover)}
.photo-slot,.image-slot,.hero-photo,.clinic-photo,.footer-map,.video-note,.review-float blockquote,.reviews-grid blockquote,.notice,.ack,input,select,textarea,.segmented label{
  border-radius:0;
}
.btn,.btn-brand,.btn-ghost,.btn-soft,.header-cta,.navlinks a,.mobile-menu nav a,.mobile-menu-cta .btn,.menu-button,.mobile-menu-close,.review-controls>button{
  border-radius:0;
}
.callback-band{border-block:1px solid rgba(99,113,127,.16)}
.tax-card{background:linear-gradient(118deg,rgba(255,255,255,.98) 0 68%,rgba(246,77,122,.10) 100%)}
@keyframes atmosphereDrift{from{transform:translate3d(-2%,0,0) scale(1)}to{transform:translate3d(4%,5%,0) scale(1.08)}}
@media(max-width:760px){
  .home-hero,.clinic,.soft,.benefits,.callback-band,.tax-section,.error-page{
    background-image:radial-gradient(ellipse 80% 45% at 92% 12%,rgba(181,192,203,.28),transparent 72%),linear-gradient(145deg,#f8f8f7,#e9edf0 65%,#f6f7f7);
  }
  .home-hero:before,.clinic:before,.soft:before,.benefits:before,.callback-band:before,.tax-section:before,.error-page:before{width:320px;height:320px;min-width:0;min-height:0;filter:blur(70px)}
}

/* Compact installment note and embedded footer map */
.installment{min-height:168px;padding:25px 27px;border:1px solid rgba(246,77,122,.34);background:radial-gradient(ellipse 90% 120% at 100% 0%,rgba(246,77,122,.10),transparent 68%),linear-gradient(135deg,#fff,#f3f5f6);box-shadow:0 18px 48px rgba(49,60,72,.12)}
.installment span{font-size:11px}.installment strong{margin:8px 0;font-size:27px}.installment small{max-width:310px;line-height:1.45}
.callback-form input,.callback-form textarea,.callback-form select{border-color:#d7dce1;background:rgba(255,255,255,.92);transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease}
.callback-form input:hover,.callback-form textarea:hover,.callback-form select:hover{border-color:rgba(246,77,122,.42);background:#fff}
.callback-form input:focus,.callback-form textarea:focus,.callback-form select:focus{outline:0;border-color:rgba(246,77,122,.68);box-shadow:0 0 0 3px rgba(246,77,122,.08);background:#fff}
.footer-map{position:relative;height:150px;border-radius:0;display:block;overflow:hidden;background:#dfe3e6}
.footer-map iframe{display:block;width:100%;height:100%;border:0;filter:grayscale(.82) saturate(.5) contrast(.95)}
.footer-map>a{position:absolute;left:0;right:0;bottom:0;padding:9px 12px;background:rgba(255,255,255,.92);color:var(--brand);font-size:12px;font-weight:700;text-align:center}
.footer-map>a:hover{background:var(--brand);color:#fff}
@media(max-width:1000px){.footer-map{min-height:190px;height:190px}}

/* Light tax-page hero without a pink background field */
.tax-hero{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background-color:#f6f7f8;
  background-image:radial-gradient(ellipse 48% 95% at 92% 18%,rgba(178,191,204,.24),transparent 72%),radial-gradient(ellipse 42% 65% at 10% 0%,rgba(255,255,255,.98),transparent 72%),linear-gradient(125deg,#fff 0%,#eef1f4 58%,#fafafa 100%);
}
.tax-hero:before{content:'';position:absolute;z-index:-1;right:-12%;bottom:-65%;width:48vw;height:48vw;border-radius:50%;background:rgba(121,138,155,.08);filter:blur(90px);pointer-events:none}
.tax-hero aside{border-left-color:var(--brand);box-shadow:0 22px 58px rgba(49,60,72,.11)}
@media(max-width:760px){.tax-hero{background-image:radial-gradient(ellipse 75% 42% at 95% 8%,rgba(184,196,207,.22),transparent 72%),linear-gradient(145deg,#fff,#edf1f3)}.tax-hero:before{display:none}}
.footer-contact a,.contacts-details a:not(.btn),.form-note a,.tax-error a{transition:color .18s ease;text-decoration-thickness:1px;text-underline-offset:3px}.footer-contact a:hover,.contacts-details a:not(.btn):hover,.form-note a:hover,.tax-error a:hover{color:var(--brand);text-decoration:underline}.contacts-details>div>a+a{margin-top:7px}

/* Compact rectangular mobile navigation */
@media(max-width:820px){
  .mobile-menu nav{justify-items:center;gap:5px}
  .mobile-menu nav a{width:max-content;max-width:100%;min-height:34px;padding:5px 13px!important;border-width:1px;font-size:18px!important;line-height:1.15!important}
  .mobile-menu-cta{justify-items:center;gap:8px;padding-top:16px}
  .mobile-menu-cta .btn{width:min(230px,82%);min-height:38px;padding:0 14px;border-width:1px;font-size:13px}
  .mobile-menu-cta .btn-ghost{background:#fff;color:var(--brand);border-color:var(--brand);box-shadow:none}
  .mobile-menu-cta .btn-ghost:hover,.mobile-menu-cta .btn-ghost:focus-visible{background:var(--brand);color:#fff;border-color:var(--brand);box-shadow:0 12px 28px rgba(246,77,122,.18)}
  .mobile-menu-close{width:40px;height:40px;top:16px;right:16px;font-size:27px}
}

/* Compact trust mark between patient reviews and the visit process. */
.yandex-award-section{padding:30px 0 52px;background:#fff}
.yandex-award-card{width:min(920px,100%);margin-inline:auto;display:grid;grid-template-columns:150px minmax(0,1fr);align-items:center;gap:42px;padding:30px 44px;border:1px solid #e0e3e6;background:linear-gradient(135deg,#fff 0%,#f5f7f8 100%);box-shadow:0 18px 50px rgba(32,41,56,.07)}
.yandex-award-mark{display:flex;align-items:center;justify-content:center}
.yandex-award-mark img{display:block;width:118px;height:auto;object-fit:contain}
.yandex-award-copy h2{margin:6px 0 10px;font-size:clamp(30px,3vw,42px);line-height:1.08}
.yandex-award-copy p{max-width:590px;margin:0;color:var(--muted);font-size:17px}
.yandex-award-copy a{display:inline-block;margin-top:18px;color:var(--brand);font-weight:600;border-bottom:1px solid rgba(168,72,128,.35)}
.yandex-award-copy a:hover{color:var(--brand-dark);border-color:currentColor}
@media(max-width:640px){.yandex-award-section{padding:18px 0 38px}.yandex-award-card{grid-template-columns:82px minmax(0,1fr);gap:20px;padding:22px 20px}.yandex-award-mark img{width:78px}.yandex-award-copy h2{font-size:27px}.yandex-award-copy p{font-size:15px;line-height:1.55}.yandex-award-copy a{font-size:14px;line-height:1.4}}
@media(max-width:440px){
  .mobile-menu nav a{min-height:32px;padding:4px 11px!important;font-size:17px!important}
  .mobile-menu-cta .btn{width:min(215px,80%);min-height:36px;font-size:12px}
}

/* Keep desktop hero benefits clear of CTA buttons */
@media(min-width:821px){
  .hero-copy{display:flex;flex-direction:column;min-width:0}
  .hero-features{position:static;left:auto;right:auto;bottom:auto;margin-top:auto;padding-top:42px}
  .hero-copy .actions{margin-bottom:0}
}

/* Clinical instruments used as visible editorial edge accents. */
.callback-band,.benefits,.services-showcase{position:relative;isolation:isolate;overflow:hidden}
.callback-band>.container,.benefits>.container,.services-showcase>.container{position:relative;z-index:1}
.callback-band:before{content:'';position:absolute;z-index:0;right:-48px;top:-32px;width:300px;height:200px;background:url('/assets/decor/instruments-corner.png') left bottom/contain no-repeat;opacity:.34;filter:grayscale(1) saturate(.25) contrast(1.02);pointer-events:none;transform:rotate(-5deg)}
.benefits:after{content:'';position:absolute;z-index:0;left:-22px;bottom:-115px;width:305px;height:445px;background:url('/assets/decor/instruments-vertical.png') center bottom/contain no-repeat;opacity:.34;filter:grayscale(1) saturate(.2) contrast(1.02);pointer-events:none;transform:rotate(3deg)}
.services-showcase:before{content:'';position:absolute;z-index:0;right:-70px;bottom:-115px;width:560px;height:390px;background:url('/assets/decor/prosthesis.png') center/contain no-repeat;opacity:.13;filter:grayscale(1) saturate(.18) contrast(.84);pointer-events:none}
@media(max-width:900px){.callback-band:before{right:-70px;top:auto;bottom:-22px;width:215px;height:145px;opacity:.22}.benefits:after,.services-showcase:before{display:none}}
@media(prefers-reduced-motion:reduce){.callback-band:before,.benefits:after,.services-showcase:before{transform:none}}

/* Tooth-and-mirror accent belongs to the patient review card, where it remains visible. */
.review{position:relative;isolation:isolate;overflow:hidden;padding-right:120px}
.review:after{content:'';position:absolute;z-index:0;right:-18px;bottom:-24px;width:128px;height:166px;background:url('/assets/decor/tooth-mirror.png') center/contain no-repeat;opacity:.62;filter:grayscale(1) saturate(.25) contrast(1.08);pointer-events:none}
.review>*{position:relative;z-index:1}
@media(max-width:900px){.review{padding-right:82px}.review:after{right:-20px;bottom:-15px;width:98px;height:128px;opacity:.48}}

/* Original RusDent berry brand sampled from historical artwork */
:root{--brand:#a84880;--brand-dark:#873860}
.btn-brand{box-shadow:0 10px 25px rgba(168,72,128,.22)}
.btn-brand:hover,.btn-ghost:hover,.mobile-menu-cta .btn-ghost:hover,.mobile-menu-cta .btn-ghost:focus-visible{box-shadow:0 12px 28px rgba(168,72,128,.18)}
.installment{border-color:rgba(168,72,128,.34);background:radial-gradient(ellipse 90% 120% at 100% 0%,rgba(168,72,128,.09),transparent 68%),linear-gradient(135deg,#fff,#f3f5f6)}
.callback-form input:hover,.callback-form textarea:hover,.callback-form select:hover{border-color:rgba(168,72,128,.42)}
.callback-form input:focus,.callback-form textarea:focus,.callback-form select:focus{border-color:rgba(168,72,128,.68);box-shadow:0 0 0 3px rgba(168,72,128,.08)}
.tax-card{background:linear-gradient(118deg,rgba(255,255,255,.98) 0 68%,rgba(168,72,128,.09) 100%)}

/* Temporary compact sizing for the refreshed SVG icon set */
.service-card .image-slot{background-size:58px}
.service-card:hover .image-slot,.service-card:focus-visible .image-slot{background-size:64px}
.benefits-grid img{width:46px;height:46px;flex:0 0 46px}
@media(max-width:700px){.service-card .image-slot{background-size:54px}.service-card:hover .image-slot,.service-card:focus-visible .image-slot{background-size:58px}.benefits-grid img{width:42px;height:42px;flex-basis:42px}}
@media(prefers-reduced-motion:reduce){.home-hero:before,.clinic:before,.soft:before,.benefits:before,.callback-band:before,.tax-section:before,.error-page:before{animation:none}}

/* Contacts and temporary Yandex map embed */
.contacts-section{background:linear-gradient(145deg,#f8f8f7 0%,#e9edf0 60%,#f5f6f7 100%)}
.contacts-heading{max-width:760px;margin-bottom:38px}.contacts-heading h1{margin:12px 0 0;font-size:clamp(42px,5vw,68px);line-height:1.08}
.contacts-layout{display:grid;grid-template-columns:minmax(280px,.7fr) minmax(520px,1.3fr);gap:42px;align-items:stretch}
.contacts-details{display:grid;align-content:start;gap:0;padding:32px;background:rgba(255,255,255,.72);border:1px solid rgba(104,116,128,.18);box-shadow:var(--shadow)}
.contacts-details>div{display:grid;gap:5px;padding:20px 0;border-bottom:1px solid var(--line)}
.contacts-details>div:first-child{padding-top:0}.contacts-details span{color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.contacts-details a:not(.btn),.contacts-details strong{font-size:18px}.contacts-details .btn{justify-self:start;margin-top:28px}
.contacts-map{min-height:480px;background:#dfe4e8;border:1px solid rgba(104,116,128,.22);box-shadow:var(--shadow);overflow:hidden}
.contacts-map iframe{display:block;width:100%;height:100%;min-height:480px;border:0;filter:grayscale(.78) saturate(.55) contrast(.96)}
@media(max-width:900px){.contacts-layout{grid-template-columns:1fr}.contacts-map,.contacts-map iframe{min-height:420px}}
@media(max-width:520px){.contacts-heading{margin-bottom:26px}.contacts-details{padding:24px}.contacts-map,.contacts-map iframe{min-height:360px}}

/* Lighter alternating section rhythm */
body{background:#fff}
.home-hero{
  background-color:#f7f8f9;
  background-image:radial-gradient(ellipse 58% 72% at 86% 28%,rgba(181,193,205,.25),transparent 70%),radial-gradient(ellipse 45% 55% at 15% 8%,#fff,transparent 72%),linear-gradient(135deg,#fff 0%,#f2f4f6 58%,#fafafa 100%);
}
.callback-band{
  background-color:#fff;
  background-image:radial-gradient(ellipse 58% 150% at 100% 48%,rgba(198,207,216,.30) 0%,rgba(224,229,233,.16) 46%,rgba(255,255,255,0) 78%),linear-gradient(115deg,#fff 0%,#fafbfb 48%,#f2f4f6 100%);
}
.benefits{
  background-color:#f8f9fa;
  background-image:radial-gradient(ellipse 42% 85% at 100% 50%,rgba(187,198,209,.20),transparent 72%),linear-gradient(180deg,#f9fafb,#f1f4f6);
}
.section:not(.soft),.reviews-full{background:#fff}
.clinic{
  background-color:#eef1f3;
  background-image:radial-gradient(ellipse 50% 90% at 8% 50%,rgba(255,255,255,.9),transparent 70%),linear-gradient(115deg,#f8f9f9 0%,#e7ebee 58%,#f4f5f6 100%);
}
.soft{
  background-color:#fafafa;
  background-image:radial-gradient(ellipse 48% 85% at 88% 22%,rgba(192,202,212,.20),transparent 72%),linear-gradient(145deg,#fff 0%,#f2f4f5 100%);
}
.home-hero:before,.callback-band:before,.benefits:before,.clinic:before,.soft:before{background:rgba(104,122,141,.08)}
.service-card,.doctor-card{box-shadow:0 15px 42px rgba(49,60,72,.08),0 3px 10px rgba(49,60,72,.04)}
@media(max-width:760px){
  .callback-band{background-color:#fff;background-image:radial-gradient(ellipse 95% 42% at 100% 72%,rgba(196,206,215,.22),transparent 74%),linear-gradient(180deg,#fff,#f7f8f9)}
  .section:not(.soft),.reviews-full{background:#fff}
  .benefits{background-image:linear-gradient(180deg,#fafafa,#f0f3f5)}
  .clinic,.soft{background-image:radial-gradient(ellipse 75% 38% at 92% 10%,rgba(186,197,208,.18),transparent 72%),linear-gradient(145deg,#fafafa,#edf0f2)}
}
/* Reviews: square editorial cards, consistent with the RusDent design system. */
.reviews-page{background:linear-gradient(145deg,#fff 0%,#f5f6f7 58%,#eceff1 100%)}
.reviews-page h1{max-width:920px}
.reviews-lead{max-width:760px;color:var(--muted);font-size:18px;margin:0 0 38px}
.reviews-page-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:start}
.review-card{background:rgba(255,255,255,.94);border:1px solid #d9dde0;padding:30px;box-shadow:0 22px 55px rgba(29,35,42,.07);border-radius:0}
.review-card:hover{border-color:rgba(168,72,128,.55)}
.review-card-head{display:flex;justify-content:space-between;gap:18px;align-items:center;margin-bottom:14px}
.review-card-head a,.review-toggle{color:var(--brand);font-weight:700}
.review-rating{color:var(--brand);letter-spacing:.08em}.review-rating b{color:var(--ink);letter-spacing:0;margin-left:7px}
.review-meta{color:var(--muted);margin:0 0 18px}
.review-copy{position:relative;max-height:9.2em;overflow:hidden}.review-copy:not(.is-open):after{content:"";position:absolute;left:0;right:0;bottom:0;height:55px;background:linear-gradient(transparent,#fff)}
.review-copy.is-open{max-height:none}.review-copy.is-open:after{display:none}
.review-liked{border-left:2px solid var(--brand);padding:10px 0 1px 16px;margin-top:22px}.review-liked p{margin-top:7px}
.review-toggle{border:0;border-bottom:1px solid currentColor;background:transparent;padding:6px 0;margin-top:14px;border-radius:0}
.review-toggle:focus-visible{outline:2px solid var(--brand);outline-offset:5px}
.review-card footer{border-top:1px solid #e2e5e7;margin-top:24px;padding-top:18px;display:flex;flex-direction:column;gap:3px}.review-card footer span,.review-card footer small{color:var(--muted)}
@media(max-width:760px){.reviews-page-grid{grid-template-columns:1fr}.review-card{padding:22px}.review-card-head{align-items:flex-start;flex-direction:column}}
/* Real clinic photography */
.hero-photo,.clinic-photo{overflow:hidden;min-width:0;position:relative}
.hero-photo img,.clinic-photo img{display:block;width:100%;height:100%;object-fit:cover}
.hero-photo img{object-position:52% center}
.clinic-photo img{object-position:center center}
@media(max-width:820px){.hero-photo img{min-height:320px;object-position:46% center}.clinic-photo img{min-height:310px}}
/* Clinic gallery and diagnostics editorial block */
.clinic-gallery{background:linear-gradient(145deg,#fff 0%,#f4f6f7 62%,#eef1f3 100%);overflow:hidden}
.clinic-gallery .title-row{align-items:end}.gallery-hint{color:var(--brand);font-size:14px;font-weight:700;white-space:nowrap}
.clinic-gallery-track{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:32px}
.clinic-gallery-track figure,.diagnostics-layout figure{margin:0;background:#fff;border:1px solid #dce0e3;overflow:hidden;transition:border-color .2s,transform .2s}
.clinic-gallery-track figure:hover,.diagnostics-layout figure:hover{border-color:rgba(168,72,128,.68);transform:translateY(-3px)}
.clinic-gallery-track img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover}
.clinic-gallery-track figcaption{padding:14px 16px;color:var(--muted);font-size:14px;border-top:1px solid #e1e4e6}
.diagnostics-editorial{background:#fff}
.clinic-gallery,.diagnostics-editorial{padding-top:58px;padding-bottom:58px}
.diagnostics-layout{display:grid;grid-template-columns:minmax(0,.62fr) minmax(280px,.72fr) minmax(0,.62fr);gap:28px;align-items:center;width:min(1120px,calc(100% - 80px))}
.diagnostics-layout figure{box-shadow:0 22px 55px rgba(29,35,42,.08)}
.diagnostics-layout img{display:block;width:100%;height:min(480px,58vw);object-fit:cover}
.diagnostics-copy{padding:28px 6px}.diagnostics-copy h2{font-size:clamp(36px,4vw,54px);line-height:1.08;margin:14px 0}.diagnostics-copy p{color:var(--muted);font-size:17px;margin-bottom:28px}
@media(max-width:820px){.clinic-gallery,.diagnostics-editorial{padding-top:46px;padding-bottom:46px}.clinic-gallery .title-row{align-items:flex-start}.gallery-hint{display:none}.clinic-gallery-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;margin-right:-24px;padding-right:24px;scrollbar-width:none}.clinic-gallery-track::-webkit-scrollbar{display:none}.clinic-gallery-track figure{flex:0 0 78%;scroll-snap-align:start}.diagnostics-layout{grid-template-columns:1fr 1fr;gap:10px;width:min(100% - 32px,1120px)}.diagnostics-copy{grid-column:1/-1;grid-row:1;padding:0 0 14px}.diagnostics-layout figure:first-child{grid-column:1}.diagnostics-layout figure:last-child{grid-column:2}.diagnostics-layout img{height:300px}}
/* One-at-a-time horizontal clinic carousel */
.clinic-gallery-shell{position:relative;width:min(780px,100%);margin:30px auto 0}
.clinic-gallery-track{display:flex;gap:0;margin:0;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;border:1px solid #dce0e3;background:#fff}
.clinic-gallery-track::-webkit-scrollbar{display:none}
.clinic-gallery-track figure{flex:0 0 100%;width:100%;scroll-snap-align:start;border:0;transform:none!important}
.clinic-gallery-track figure:hover{border-color:transparent}
.clinic-gallery-track img{width:100%;aspect-ratio:16/8.4;object-fit:cover}
.clinic-gallery-controls{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:14px}
.clinic-gallery-controls button{width:42px;height:42px;border:1px solid var(--brand);border-radius:0;background:#fff;color:var(--brand);font-size:20px;transition:.18s}
.clinic-gallery-controls button:hover,.clinic-gallery-controls button:focus-visible{background:var(--brand);color:#fff}
.clinic-gallery-dots{display:flex;gap:7px}.clinic-gallery-dots i{display:block;width:24px;height:2px;background:#c8cdd1}.clinic-gallery-dots i.active{background:var(--brand)}
.clinic-gallery-controls span{min-width:38px;color:var(--muted);font-size:13px}
@media(max-width:820px){.clinic-gallery-shell{width:100%;margin-top:22px}.clinic-gallery-track{margin-right:0;padding-right:0}.clinic-gallery-track figure{flex-basis:100%}.clinic-gallery-track img{aspect-ratio:16/10}.clinic-gallery-controls{justify-content:center}}
/* Split editorial layout: copy on the left, compact gallery on the right. */
.clinic-gallery-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,.92fr);gap:clamp(38px,6vw,92px);align-items:center}
.clinic-gallery-copy{max-width:600px}.clinic-gallery-copy h2{font-size:clamp(40px,4.4vw,62px);line-height:1.05;margin:14px 0 22px}.clinic-gallery-copy p{max-width:570px;color:var(--muted);font-size:16px}.clinic-gallery-copy .clinic-gallery-lead{color:var(--ink);font-size:19px;line-height:1.55}
.clinic-gallery-link{display:inline-block;margin-top:18px;color:var(--brand);font-weight:700;border-bottom:1px solid currentColor}
.clinic-gallery-shell{width:100%;margin:0}
.clinic-gallery-track img{aspect-ratio:16/10}
@media(max-width:900px){.clinic-gallery-layout{grid-template-columns:1fr;gap:28px}.clinic-gallery-copy{max-width:none}.clinic-gallery-shell{width:min(680px,100%);margin:0 auto}}

/* Conversion content v6 */
.hero-copy h1{font-size:clamp(48px,4.6vw,76px)}
.hero-contact-line{margin-top:28px;color:var(--muted);font-size:14px}.hero-contact-line a{color:var(--ink);font-weight:700}
.quick-facts{background:#fff;padding:28px 0;border-block:1px solid var(--line)}
.quick-facts-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.quick-facts article{display:grid;grid-template-columns:auto 1fr;column-gap:14px;align-items:center;padding:24px;border:1px solid #dfe2e5;background:#fff;box-shadow:0 12px 32px rgba(49,60,72,.05)}
.quick-facts b{grid-row:1/3;color:var(--brand);font:38px/1 Prata}.quick-facts strong{font-size:18px}.quick-facts span{color:var(--muted);font-size:13px}
.section-intro{max-width:820px;margin-bottom:30px}.section-intro h2{font-size:clamp(38px,4vw,58px);line-height:1.08;margin:14px 0}.section-intro p{color:var(--muted);font-size:18px}
.situation-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.situation-grid a{min-height:132px;padding:24px;border:1px solid #dce0e3;background:#fff;display:flex;flex-direction:column;justify-content:space-between;transition:.2s}.situation-grid a:hover{border-color:var(--brand);transform:translateY(-3px);box-shadow:var(--shadow)}.situation-grid span{color:var(--brand);font-size:13px}
.center-action{display:flex;flex-direction:column;align-items:center;gap:10px;margin-top:30px;text-align:center}.center-action small{color:var(--muted)}
.service-grid-four{grid-template-columns:repeat(4,1fr)}.service-card .image-slot{background-image:linear-gradient(145deg,#edf0f2,#fff)}
.doctor-card .image-slot{height:270px}.doctor-card .image-slot img{width:100%;height:100%;object-fit:cover;object-position:top center}
.process-section{background:linear-gradient(145deg,#f8f9fa,#eef1f3)}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.process-grid article{padding:26px;border:1px solid #d9dde0;background:rgba(255,255,255,.86)}.process-grid b{color:var(--brand);font:30px Prata}.process-grid h3{font:22px/1.3 Prata;margin:22px 0 10px}.process-grid p{color:var(--muted);font-size:14px}
.info-section{background:#fff}.info-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.info-grid>article{padding:42px;border:1px solid #d9dde0;box-shadow:var(--shadow)}.info-grid h2{font-size:clamp(34px,3.6vw,48px);line-height:1.12;margin:14px 0}.info-grid p{color:var(--muted);margin-bottom:24px}.info-grid small{display:block;color:var(--muted);margin-top:16px}
.faq-section{background:linear-gradient(145deg,#fff,#f1f3f5)}.faq-layout{display:grid;grid-template-columns:.7fr 1.3fr;gap:70px}.faq-layout h2{font-size:clamp(38px,4vw,56px);line-height:1.1}.faq-list details{border-top:1px solid #cfd4d8;padding:20px 0}.faq-list details:last-child{border-bottom:1px solid #cfd4d8}.faq-list summary{cursor:pointer;font-weight:700}.faq-list p{color:var(--muted);padding-right:30px}
.final-cta{padding:58px 0;background:#252934;color:#fff}.final-cta .container{display:grid;grid-template-columns:1fr auto;gap:48px;align-items:center}.final-cta h2{font-size:clamp(38px,4vw,56px);line-height:1.1;margin:12px 0}.final-cta p{color:#cbd0d5;max-width:720px}.final-cta .container>div:last-child{display:flex;flex-direction:column;align-items:flex-end;gap:16px}.final-phone{font:28px Prata}
@media(max-width:900px){.quick-facts-grid,.situation-grid,.process-grid{grid-template-columns:repeat(2,1fr)}.service-grid-four{grid-template-columns:repeat(2,1fr)}.info-grid,.faq-layout{grid-template-columns:1fr}.final-cta .container{grid-template-columns:1fr}.final-cta .container>div:last-child{align-items:flex-start}.hero-contact-line{margin-bottom:24px}}
@media(max-width:560px){.quick-facts-grid,.situation-grid,.process-grid,.service-grid-four{grid-template-columns:1fr}.quick-facts article{padding:19px}.doctor-card .image-slot{height:235px}.info-grid>article{padding:28px}.final-phone{font-size:23px}}

/* Animated facts and restored clinical photo accents */
.fact-check{opacity:0;transform:scale(.45) rotate(-18deg);transition:opacity .42s ease,transform .55s cubic-bezier(.2,.9,.25,1.35)}
.fact-check.is-visible{opacity:1;transform:scale(1) rotate(0)}
.quick-facts,.start-section,.reviews-full{position:relative;isolation:isolate;overflow:hidden}
.quick-facts>.container,.start-section>.container,.reviews-full>.container{position:relative;z-index:2}
.quick-facts:after{content:'';position:absolute;z-index:1;right:-36px;bottom:-62px;width:250px;height:178px;background:url('/assets/decor/instruments-corner.png') center/contain no-repeat;opacity:.28;filter:grayscale(1) saturate(.25) contrast(1.08);pointer-events:none;transform:rotate(-5deg)}
.start-section:before{content:'';position:absolute;z-index:1;left:-48px;bottom:-82px;width:245px;height:355px;background:url('/assets/decor/instruments-vertical.png') center bottom/contain no-repeat;opacity:.32;filter:grayscale(1) saturate(.2) contrast(1.08);pointer-events:none;transform:rotate(3deg)}
.reviews-full:after{content:'';position:absolute;z-index:1;right:18px;bottom:-24px;width:130px;height:170px;background:url('/assets/decor/tooth-mirror.png') center/contain no-repeat;opacity:.58;filter:grayscale(1) saturate(.25) contrast(1.08);pointer-events:none}
.final-cta{background:#8875ad}.final-cta p{color:rgba(255,255,255,.82)}.final-cta .eyebrow{color:#fff}.final-cta .btn-brand{background:#a84880}.final-cta .btn-brand:hover{background:#873860}
@media(max-width:760px){.quick-facts:after{right:-62px;bottom:-32px;width:180px;height:125px;opacity:.20}.start-section:before{left:-55px;bottom:-45px;width:165px;height:245px;opacity:.20}.reviews-full:after{right:-22px;width:92px;height:125px;opacity:.42}}
@media(prefers-reduced-motion:reduce){.fact-check{opacity:1;transform:none;transition:none}.quick-facts:after,.start-section:before{transform:none}}

/* Branded animated FAQ accordion */
.faq-list{display:grid;gap:12px}
.faq-list details{padding:0;border:1px solid #d8dce0;background:rgba(255,255,255,.78);box-shadow:0 10px 30px rgba(49,60,72,.045);overflow:hidden;transition:border-color .25s ease,background-color .25s ease,box-shadow .25s ease,transform .25s ease}
.faq-list details:last-child{border-bottom:1px solid #d8dce0}
.faq-list details:hover{border-color:rgba(168,72,128,.45);transform:translateY(-1px)}
.faq-list details[open]{border-color:rgba(168,72,128,.65);background:linear-gradient(120deg,#fff 0%,rgba(168,72,128,.055) 100%);box-shadow:0 18px 42px rgba(87,67,91,.10)}
.faq-list summary{position:relative;display:flex;align-items:center;justify-content:space-between;gap:22px;min-height:72px;padding:18px 22px 18px 26px;cursor:pointer;font-weight:700;list-style:none;transition:color .22s ease}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary::after{content:'→';flex:0 0 38px;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--brand);color:#fff;font-size:19px;font-weight:400;line-height:1;transform:rotate(0);transition:transform .4s cubic-bezier(.2,.8,.2,1),background-color .22s ease,box-shadow .22s ease}
.faq-list details:hover summary{color:var(--brand)}
.faq-list details:hover summary::after{background:var(--brand-dark);box-shadow:0 9px 22px rgba(168,72,128,.24)}
.faq-list details[open] summary{color:var(--brand)}
.faq-list details[open] summary::after{transform:rotate(90deg);background:#8875ad}
.faq-list summary:focus-visible{outline:2px solid var(--brand);outline-offset:-4px}
.faq-answer{height:auto;overflow:hidden;transition:height .46s cubic-bezier(.22,.75,.2,1)}
.faq-answer>p{position:relative;margin:0;padding:0 78px 24px 26px;color:var(--muted);line-height:1.7}
.faq-answer>p::before{content:'';position:absolute;left:26px;right:78px;top:-10px;height:1px;background:linear-gradient(90deg,var(--brand),rgba(168,72,128,0))}
.faq-answer>p{padding-top:15px}
@media(max-width:560px){.faq-list{gap:9px}.faq-list summary{min-height:64px;padding:15px 16px;font-size:15px}.faq-list summary::after{flex-basis:34px;width:34px;height:34px}.faq-answer>p{padding:13px 58px 20px 16px;font-size:14px}.faq-answer>p::before{left:16px;right:58px}}
@media(prefers-reduced-motion:reduce){.faq-list details,.faq-list summary::after,.faq-answer{transition:none}.faq-list details:hover{transform:none}}

/* Situation icons and patient review carousel */
.situation-grid a{position:relative;padding-left:82px}.situation-grid a img{position:absolute;left:22px;top:22px;width:42px;height:42px;object-fit:contain;transition:transform .3s ease,filter .3s ease}.situation-grid a:hover img{transform:translateY(-3px) scale(1.06)}
.reviews-carousel{width:min(980px,100%);margin:34px auto 0;position:relative}
.reviews-track{display:flex;align-items:flex-start;min-height:410px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;border:1px solid rgba(168,72,128,.30);background:#fff;box-shadow:0 24px 60px rgba(49,60,72,.09)}
.reviews-track::-webkit-scrollbar{display:none}
.reviews-track blockquote{position:relative;flex:0 0 100%;width:100%;scroll-snap-align:start;margin:0;padding:52px 68px 42px;background:radial-gradient(ellipse 45% 100% at 100% 0%,rgba(136,117,173,.10),transparent 72%),linear-gradient(135deg,#fff,rgba(168,72,128,.045));border:0;border-radius:0;line-height:1.75}
.reviews-track blockquote:after{display:none}.reviews-track blockquote p{margin:0;padding-right:10px;max-height:260px;overflow-y:auto;font-size:18px;scrollbar-width:thin;scrollbar-color:rgba(168,72,128,.45) transparent}.review-quote{position:absolute;left:25px;top:17px;color:var(--brand);font:58px/1 Prata}
.reviews-track footer{display:grid;gap:3px;margin-top:28px;padding-top:20px;border-top:1px solid rgba(168,72,128,.22);color:var(--brand)}.reviews-track footer span,.reviews-track footer small{color:var(--muted);font-size:12px}
.reviews-controls{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:18px}.reviews-controls>button{width:42px;height:42px;border:1px solid var(--brand);border-radius:50%;background:#fff;color:var(--brand);font-size:20px;transition:.2s}.reviews-controls>button:hover,.reviews-controls>button:focus-visible{background:var(--brand);color:#fff;box-shadow:0 10px 24px rgba(168,72,128,.20)}
.reviews-dots{display:flex;gap:7px}.reviews-dots button{width:24px;height:3px;padding:0;border:0;border-radius:0;background:#cbd0d4;transition:width .25s ease,background-color .25s ease}.reviews-dots button.active{width:38px;background:var(--brand)}.reviews-controls>span{min-width:40px;color:var(--muted);font-size:13px}
@media(max-width:700px){.situation-grid a{padding-left:70px}.situation-grid a img{left:17px;top:19px;width:38px;height:38px}.reviews-track{min-height:430px}.reviews-track blockquote{padding:44px 25px 32px}.review-quote{left:16px;top:12px;font-size:48px}.reviews-track blockquote p{font-size:15px}.reviews-dots button{width:15px}.reviews-dots button.active{width:26px}}
@media(prefers-reduced-motion:reduce){.situation-grid a img,.reviews-controls>button,.reviews-dots button{transition:none}.situation-grid a:hover img{transform:none}}

/* Compact mobile menu: CTA follows navigation without an empty viewport gap. */
@media(max-width:820px){
  .mobile-menu{inset:10px 10px auto auto;width:min(360px,calc(100% - 20px));max-height:calc(100dvh - 20px);padding:24px 24px 22px;overflow-y:auto;border:1px solid rgba(168,72,128,.18);box-shadow:-18px 18px 55px rgba(32,36,45,.22)}
  .mobile-menu:after{position:absolute;width:100%;height:3px}
  .mobile-menu-brand{width:150px;margin-bottom:10px}
  .mobile-menu nav{gap:2px}
  .mobile-menu nav a{min-height:31px;padding:4px 11px!important;font-size:17px!important}
  .mobile-menu-cta{margin-top:14px;padding-top:0}
  .mobile-menu-cta .btn{width:min(205px,82%);min-height:35px;font-size:12px}
  .mobile-menu-close{top:12px;right:12px;width:36px;height:36px;font-size:24px}
}
@media(max-width:440px){
  .mobile-menu{padding:20px 18px 18px}
  .mobile-menu-brand{width:140px;margin-bottom:8px}
  .mobile-menu nav a{min-height:30px;font-size:16px!important}
  .mobile-menu-cta{margin-top:12px}
}

/* Russian heading typography: balanced lines without forced manual breaks. */
h1,h2,h3{text-wrap:balance;word-break:normal;overflow-wrap:normal;hyphens:none}
@media(max-width:440px){h1,h2,h3{text-wrap:pretty}}

/* Accessible display mode */
.skip-link{position:fixed;z-index:200;top:8px;left:8px;padding:11px 16px;background:#fff;color:#000;border:3px solid #1666cc;font-weight:700;transform:translateY(-150%)}
.skip-link:focus{transform:none}
.access-controls>div{flex-wrap:wrap}.access-controls label{display:flex;align-items:center;gap:8px}.access-controls input[type="checkbox"]{width:auto;flex:0 0 auto}
.access-controls button[aria-pressed="true"]{background:#262a32;color:#fff;border-color:#262a32;box-shadow:inset 0 0 0 2px #fff,0 0 0 2px #262a32}
html[data-access-theme="black"] .access-controls button[aria-pressed="true"]{background:#fff!important;color:#000!important;border-color:#fff!important;box-shadow:0 0 0 2px #fff!important}
html[data-access-theme="blue"] .access-controls button[aria-pressed="true"]{background:#08294a!important;color:#fff!important;border-color:#08294a!important;box-shadow:0 0 0 2px #08294a!important}
html[data-access-theme="white"] .access-controls button[aria-pressed="true"]{background:#000!important;color:#fff!important;border-color:#000!important;box-shadow:0 0 0 2px #000!important}

html[data-access-font="large"] body{font-size:20px}
html[data-access-font="xlarge"] body{font-size:24px}
html[data-access-font="large"] body :is(p,li,blockquote,label,input,select,textarea),html[data-access-font="xlarge"] body :is(p,li,blockquote,label,input,select,textarea){font-size:1rem!important;line-height:1.65!important}
html[data-access-font="large"] body :is(.btn,button,.navlinks a,.mobile-menu a),html[data-access-font="xlarge"] body :is(.btn,button,.navlinks a,.mobile-menu a){font-size:.9rem!important;line-height:1.35!important}
html[data-access-font="large"] body :is(small,.eyebrow,.footer-contact>span),html[data-access-font="xlarge"] body :is(small,.eyebrow,.footer-contact>span){font-size:.8rem!important;line-height:1.5!important}
html[data-access-font="large"] h1,html[data-access-font="xlarge"] h1{font-size:3rem!important;line-height:1.12!important}
html[data-access-font="large"] h2,html[data-access-font="xlarge"] h2{font-size:2.4rem!important;line-height:1.18!important}
html[data-access-font="large"] h3,html[data-access-font="xlarge"] h3{font-size:1.5rem!important;line-height:1.3!important}

html.access-no-images *{background-image:none!important}
html.access-no-images :is(.hero-photo,.clinic-photo,.clinic-gallery-shell,.diagnostics-layout figure,.doctor-card .image-slot,.service-card .image-slot,.situation-grid img){display:none!important}
html.access-no-images .hero-layout{grid-template-columns:1fr;min-height:0}
html.access-no-images .hero-copy{max-width:920px;padding-right:0}
html.access-no-images .clinic{grid-template-columns:minmax(0,2fr) minmax(280px,1fr);min-height:0}
html.access-no-images .clinic-copy{grid-column:1}
html.access-no-images .clinic-facts{grid-column:2}
html.access-no-images .clinic-gallery-layout{grid-template-columns:1fr}
html.access-no-images .diagnostics-layout{grid-template-columns:1fr}
html.access-no-images .yandex-award-card{grid-template-columns:1fr}
html.access-no-images .license-intro{grid-template-columns:1fr}
html.access-no-images .diagnostics-copy{grid-column:1;grid-row:1}
html.access-no-images .situation-grid a{padding-left:24px}
html.access-no-images .brand:after{content:'РусьДент';color:currentColor;font:26px/1.1 Prata,Georgia,serif}

@media(max-width:820px){
  html[data-access-font="large"] h1{font-size:38px!important}
  html[data-access-font="xlarge"] h1{font-size:40px!important}
  html[data-access-font="large"] h2{font-size:34px!important}
  html[data-access-font="xlarge"] h2{font-size:38px!important}
  html[data-access-font="large"] h3{font-size:27px!important}
  html[data-access-font="xlarge"] h3{font-size:30px!important}
  html[data-access-font] .access-panel,html[data-access-font] .access-panel :is(strong,span,label,button){font-size:16px!important;line-height:1.35!important}
  html.access-no-images .hero-copy{padding-bottom:55px}
  html.access-no-images .clinic{grid-template-columns:1fr}
  html.access-no-images .clinic-facts{grid-column:1}
}

/* License and official documents */
.license-page{background:linear-gradient(145deg,#fff 0%,#f5f6f7 100%)}
.license-intro{display:grid;grid-template-columns:minmax(230px,360px) minmax(0,1fr);align-items:center;gap:clamp(38px,7vw,100px);max-width:1120px;margin-inline:auto}
.license-cover{margin:0;background:#fff;border:1px solid #e1d6dc;box-shadow:0 20px 55px rgba(35,31,39,.09)}
.license-cover img{display:block;width:100%;height:auto}
.license-copy{max-width:650px}
.license-copy h1{margin:10px 0 22px;font:400 clamp(44px,5.5vw,76px)/1.04 Prata,Georgia,serif;letter-spacing:-.035em}
.license-copy>p:last-child{max-width:600px;margin-top:24px;color:var(--muted)}
.license-gallery{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;max-width:1120px;margin:55px auto 0}
.license-thumbnail{appearance:none;padding:0;background:#fff;border:1px solid #d9dde0;color:var(--ink);cursor:pointer;text-align:left;transition:transform .2s,border-color .2s,box-shadow .2s}
.license-thumbnail:hover,.license-thumbnail:focus-visible{transform:translateY(-4px);border-color:var(--brand);box-shadow:0 15px 35px rgba(35,31,39,.1)}
.license-thumbnail-image{display:flex;align-items:flex-start;justify-content:center;height:245px;padding:14px;background:linear-gradient(145deg,#f5f6f7,#fff);overflow:hidden}
.license-thumbnail img{display:block;max-width:100%;height:100%;object-fit:contain}
.license-thumbnail>span:last-child{display:block;padding:13px 15px;border-top:1px solid #e4e6e8;color:var(--brand);font-size:13px;font-weight:700}
.license-lightbox{width:min(1040px,calc(100% - 40px));height:min(92vh,900px);padding:0;border:0;background:#f5f5f5;box-shadow:0 30px 90px rgba(0,0,0,.35)}
.license-lightbox::backdrop{background:rgba(25,27,32,.78);backdrop-filter:blur(5px)}
.license-lightbox-bar{min-height:58px;padding:8px 14px 8px 22px;display:flex;align-items:center;justify-content:space-between;background:#fff;border-bottom:1px solid #ddd;font-weight:700}
.license-lightbox-bar button,.license-lightbox-body button{border:1px solid var(--brand);background:#fff;color:var(--brand);cursor:pointer}
.license-lightbox-bar button{width:40px;height:40px;font-size:28px;line-height:1}
.license-lightbox-body{height:calc(100% - 58px);display:grid;grid-template-columns:54px minmax(0,1fr) 54px;align-items:center;gap:16px;padding:18px}
.license-lightbox-body img{display:block;max-width:100%;max-height:100%;margin:auto;object-fit:contain;box-shadow:0 10px 35px rgba(0,0,0,.12)}
.license-lightbox-body button{width:48px;height:48px;border-radius:50%;font-size:21px}
@media(max-width:820px){.license-intro{grid-template-columns:minmax(150px,240px) minmax(0,1fr);gap:30px}.license-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}.license-thumbnail-image{height:220px}}
@media(max-width:620px){.license-intro{grid-template-columns:1fr}.license-cover{width:min(76%,280px);margin-inline:auto}.license-copy h1{font-size:42px}.license-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:38px}.license-thumbnail-image{height:210px;padding:9px}.license-lightbox{width:calc(100% - 20px);height:92vh}.license-lightbox-body{grid-template-columns:40px minmax(0,1fr) 40px;gap:6px;padding:10px}.license-lightbox-body button{width:38px;height:38px}}

/* Public price list */
.price-page{background:linear-gradient(145deg,#fff 0%,#f5f6f7 100%)}
.price-hero{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr);gap:70px;align-items:end;padding-bottom:54px;border-bottom:1px solid var(--line)}
.price-hero h1{margin:10px 0 0;font:400 clamp(62px,8vw,108px)/.95 Prata,Georgia,serif;letter-spacing:-.045em}
.price-hero .lead{margin:0 0 14px;color:var(--ink)}
.price-hero p{max-width:710px;color:var(--muted)}
.price-updated{display:inline-block;margin:12px 0 0;padding:9px 13px;border-left:3px solid var(--brand);background:#fff;font-size:13px}
.price-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:54px;margin-top:52px}
.price-nav{position:sticky;top:120px;align-self:start;display:flex;flex-direction:column;padding:22px;border:1px solid var(--line);background:#fff}
.price-nav strong{margin-bottom:12px;color:var(--brand);font-size:12px;letter-spacing:.14em;text-transform:uppercase}
.price-nav a{padding:10px 0;border-bottom:1px solid #eceeef;font-size:13px;line-height:1.3}
.price-nav a:last-child{border-bottom:0}.price-nav a:hover{color:var(--brand)}
.price-groups{display:grid;gap:22px}
.price-group{scroll-margin-top:125px;padding:30px 34px;background:#fff;border:1px solid #dde0e3;box-shadow:0 14px 38px rgba(32,41,56,.045)}
.price-group h2{margin:0 0 22px;font-size:clamp(28px,3vw,40px);line-height:1.12}
.price-table{border-top:1px solid #dfe2e4}
.price-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:30px;align-items:start;padding:16px 0;border-bottom:1px solid #e5e7e9}
.price-row>span{max-width:760px}.price-row strong{color:var(--brand-dark);font-size:17px;white-space:nowrap}
.price-row .price-pending{color:var(--muted);font-size:14px}
.price-note{margin:18px 0 0;padding:14px 18px;background:#f7eef3;color:var(--muted);font-size:14px}
.price-cta{padding:58px 0;background:#8d79b4;color:#fff}.price-cta>.container{display:flex;align-items:center;justify-content:space-between;gap:40px}.price-cta .eyebrow{color:#fff}.price-cta h2{margin:8px 0;font-size:42px}.price-cta p{margin:0}.price-cta .btn{flex-shrink:0}
@media(max-width:980px){.site-header .navlinks,.site-header .header-contact{display:none}.site-header .menu-button{display:block;margin-left:auto}}
@media(max-width:900px){.price-layout{grid-template-columns:1fr}.price-nav{position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px}.price-nav strong{grid-column:1/-1}.price-hero{gap:35px}}
@media(max-width:620px){.price-hero{grid-template-columns:1fr;gap:24px;padding-bottom:35px}.price-hero h1{font-size:64px}.price-layout{margin-top:34px}.price-nav{display:none}.price-groups{gap:14px}.price-group{padding:23px 18px}.price-group h2{font-size:29px}.price-row{grid-template-columns:1fr;gap:6px;padding:14px 0}.price-row strong{font-size:16px;white-space:normal}.price-cta>.container{display:block}.price-cta h2{font-size:34px}.price-cta .btn{margin-top:24px;width:100%}}

/* Doctor directories and profiles */
.doctors-section .doctor-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
.doctors-page h1{margin:12px 0 18px;font:400 clamp(46px,6vw,76px)/1.04 Prata,Georgia,serif}.doctors-page-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;margin-top:38px}.doctors-page-grid .doctor-card .image-slot{height:360px}.doctor-profile{background:linear-gradient(145deg,#fff,#eef1f3)}.doctor-profile-layout{display:grid;grid-template-columns:minmax(260px,430px) minmax(0,1fr);gap:clamp(40px,7vw,100px);align-items:center}.doctor-profile figure{margin:0;overflow:hidden;background:#fff;box-shadow:var(--shadow)}.doctor-profile figure img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;object-position:top center}.doctor-profile h1{margin:12px 0 18px;font:400 clamp(46px,6vw,78px)/1.04 Prata,Georgia,serif}
@media(max-width:1100px){.doctors-section .doctor-grid,.doctors-page-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.doctors-section .doctor-grid,.doctors-page-grid{grid-template-columns:1fr 1fr}.doctors-page-grid .doctor-card .image-slot{height:290px}.doctor-profile-layout{grid-template-columns:1fr}.doctor-profile figure{width:min(82%,360px)}}
@media(max-width:460px){.doctors-section .doctor-grid,.doctors-page-grid{grid-template-columns:1fr}.doctors-page-grid .doctor-card .image-slot{height:390px}}

/* Privacy policy and legal documents */
.legal-page{background:linear-gradient(145deg,#fff 0%,#f5f6f7 100%)}
.legal-hero{max-width:1120px;padding-bottom:48px;border-bottom:1px solid var(--line)}
.legal-hero h1{max-width:1050px;margin:12px 0 22px;font:400 clamp(46px,6vw,78px)/1.04 Prata,Georgia,serif;letter-spacing:-.035em}
.legal-hero .lead{max-width:800px}
.legal-layout{display:grid;grid-template-columns:270px minmax(0,820px);justify-content:center;gap:clamp(42px,6vw,90px);margin-top:48px}
.legal-nav{position:sticky;top:125px;align-self:start;display:flex;max-height:calc(100vh - 150px);padding:22px;overflow-y:auto;flex-direction:column;background:#fff;border:1px solid var(--line)}
.legal-nav strong{margin-bottom:12px;color:var(--brand);font-size:12px;letter-spacing:.14em;text-transform:uppercase}
.legal-nav a{padding:9px 0;border-bottom:1px solid #eceeef;color:var(--muted);font-size:12px;line-height:1.35}
.legal-nav a:last-child{border-bottom:0}.legal-nav a:hover,.legal-nav a:focus-visible{color:var(--brand)}
.legal-document{padding:44px 50px;background:#fff;border:1px solid var(--line);box-shadow:0 18px 50px rgba(32,41,56,.055)}
.legal-document h2{scroll-margin-top:125px;margin:52px 0 20px;font:400 clamp(27px,3vw,38px)/1.2 Prata,Georgia,serif}
.legal-document h2:first-child{margin-top:0}
.legal-document p{margin:0 0 14px;color:#4f5862;line-height:1.72}
.legal-document a{color:var(--brand-dark);text-decoration:underline;text-decoration-color:rgba(168,72,128,.35);text-underline-offset:3px}
.legal-bullet{position:relative;padding-left:22px}.legal-bullet::before{content:'•';position:absolute;left:3px;color:var(--brand)}
@media(max-width:900px){.legal-layout{grid-template-columns:1fr}.legal-nav{position:static;max-height:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px}.legal-nav strong{grid-column:1/-1}}
@media(max-width:620px){.legal-hero{padding-bottom:34px}.legal-hero h1{font-size:42px}.legal-layout{margin-top:28px}.legal-nav{display:none}.legal-document{padding:28px 20px}.legal-document h2{margin-top:40px;font-size:28px}.legal-document p{font-size:14px;line-height:1.68}}

/* Social links in the footer */
.footer-socials{display:flex;align-items:center;gap:10px;margin-top:18px}
.footer-socials a{width:43px;height:43px;display:grid;place-items:center;border:1px solid rgba(168,72,128,.38);border-radius:50%;background:rgba(255,255,255,.72);color:var(--brand-dark);box-shadow:0 8px 20px rgba(49,60,72,.06);transition:color .2s,background-color .2s,border-color .2s,transform .2s,box-shadow .2s}
.footer-socials svg{width:25px;height:25px;fill:currentColor}
.footer-socials a:hover,.footer-socials a:focus-visible{color:#fff;background:var(--brand);border-color:var(--brand);transform:translateY(-3px);box-shadow:0 12px 24px rgba(168,72,128,.24)}
.footer-socials a:focus-visible{outline:2px solid var(--brand-dark);outline-offset:3px}
@media(max-width:520px){.footer-socials{margin-top:14px}.footer-socials a{width:41px;height:41px}}

/* Supervisory organizations */
.authorities-page{background:linear-gradient(145deg,#fff 0%,#f3f5f6 100%)}
.authorities-hero{max-width:1120px;padding-bottom:48px;border-bottom:1px solid var(--line)}
.authorities-hero h1{margin:12px 0 22px;font:400 clamp(52px,7vw,88px)/1 Prata,Georgia,serif;letter-spacing:-.04em}
.authorities-hero .lead{max-width:900px}
.authorities-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:48px}
.authority-card{position:relative;display:grid;grid-template-columns:70px minmax(0,1fr);gap:16px 22px;padding:34px;background:#fff;border:1px solid var(--line);box-shadow:0 15px 40px rgba(32,41,56,.045)}
.authority-number{grid-row:1/3;color:var(--brand);font:400 36px/1 Prata,Georgia,serif}
.authority-type{margin-bottom:10px;color:var(--lav);font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.authority-card h2{margin:0;font:400 29px/1.2 Prata,Georgia,serif}
.authority-card dl{grid-column:2;margin:5px 0 0;border-top:1px solid #e5e7e9}
.authority-card dl>div{display:grid;grid-template-columns:120px minmax(0,1fr);gap:18px;padding:11px 0;border-bottom:1px solid #eceeef}
.authority-card dt{color:var(--muted);font-size:12px;text-transform:uppercase}.authority-card dd{margin:0}.authority-card dd a{color:var(--brand-dark);font-weight:700}.authority-card dd a:hover{text-decoration:underline}
.authority-card-compact{grid-column:1/-1;grid-template-columns:70px minmax(0,.9fr) minmax(300px,1.1fr);align-items:start}.authority-card-compact dl{grid-column:3;margin-top:0}
@media(max-width:980px){.authorities-grid{grid-template-columns:1fr}.authority-card-compact{grid-column:auto;grid-template-columns:70px minmax(0,1fr)}.authority-card-compact dl{grid-column:2;margin-top:5px}}
@media(max-width:620px){.authorities-hero{padding-bottom:34px}.authorities-hero h1{font-size:45px}.authorities-grid{margin-top:28px}.authority-card,.authority-card-compact{grid-template-columns:1fr;padding:25px 20px}.authority-number{grid-row:auto;font-size:28px}.authority-card dl,.authority-card-compact dl{grid-column:1}.authority-card dl>div{grid-template-columns:1fr;gap:3px}.authority-card h2{font-size:26px}}

/* Visual directions immediately before the footer */
.find-us-section{background:linear-gradient(145deg,#f7f8f8 0%,#edf0f2 58%,#f8f8f7 100%)}
.find-us-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,.72fr);gap:clamp(32px,7vw,100px);align-items:end;margin-bottom:34px}
.find-us-heading h2{max-width:720px;margin:10px 0 0;font-size:clamp(38px,4.6vw,64px);line-height:1.06}
.find-us-intro{display:grid;justify-items:start;gap:20px}.find-us-intro p{max-width:590px;margin:0;color:var(--muted);font-size:17px}
.find-us-gallery{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,1fr);gap:18px;align-items:stretch}
.find-us-gallery figure{position:relative;margin:0;min-width:0;overflow:hidden;background:#fff;border:1px solid rgba(104,116,128,.18);box-shadow:0 18px 48px rgba(49,60,72,.1)}
.find-us-gallery img{display:block;width:100%;height:100%;min-height:360px;object-fit:cover}
.find-us-route img{aspect-ratio:1640/960}.find-us-entrance img{aspect-ratio:1450/1080}
.find-us-gallery figcaption{position:absolute;left:16px;right:16px;bottom:16px;width:max-content;max-width:calc(100% - 32px);padding:10px 14px;background:rgba(255,255,255,.92);color:var(--ink);font-size:13px;box-shadow:0 8px 22px rgba(32,41,56,.12);backdrop-filter:blur(8px)}
@media(max-width:900px){.find-us-heading{grid-template-columns:1fr;gap:20px}.find-us-gallery{grid-template-columns:1fr}.find-us-gallery img{min-height:0}.find-us-route img{aspect-ratio:16/9}.find-us-entrance img{aspect-ratio:4/3}}
@media(max-width:520px){.find-us-heading{margin-bottom:24px}.find-us-heading h2{font-size:36px}.find-us-intro p{font-size:15px}.find-us-intro .btn{width:100%}.find-us-gallery{gap:12px}.find-us-gallery figcaption{position:static;width:auto;max-width:none;padding:12px 14px;background:#fff;box-shadow:none;font-size:12px}.find-us-route img{aspect-ratio:1.32/1;object-position:center}.find-us-entrance img{aspect-ratio:1.18/1}}
