/* Brand-palette compositions specific to the homepage. */
.home-hero h1{max-width:none;text-wrap:wrap}
.page-home .promo-card>span{align-self:flex-start;padding:7px 12px;border-radius:999px;background:var(--brand-accent);color:#fff}
.page-home .stories-card,.page-home .proof-doctors{background:var(--blue2)}
.page-home .appointment-fields input{border-color:var(--brand-mint)}
.page-home .privacy-check>span{border-color:var(--brand-mint)}
.page-home .privacy-check:has(input:checked)>span{box-shadow:inset 0 0 0 5px var(--blue2)}
.page-home .service-tile:not(.service-tile-blue) .service-price{background:var(--brand-mint);color:var(--navy)}

/* Lower homepage blocks — reference composition */
.lower-section{padding:0 0 156px;background:var(--ice)}
.lower-title{font:400 clamp(44px,5vw,64px)/1 Prosto-One,sans-serif;letter-spacing:-.025em;margin:0 0 56px}
.reviews-layout{display:grid;grid-template-columns:2fr 1fr;gap:24px}
.ratings-card,.stories-card{border-radius:20px;padding:32px;min-height:318px}
.ratings-card{position:relative;overflow:hidden;background:var(--navy);color:#fff;display:flex;flex-direction:column;gap:32px}
.ratings-card:after{content:"";position:absolute;inset:auto 0 0;height:55%;opacity:.12;background:radial-gradient(circle at 12px 12px,transparent 9px,#fff 10px,#fff 11px,transparent 12px) 0 0/40px 40px}
.ratings-location,.ratings-card h3,.rating-chips{position:relative;z-index:1}
.ratings-location{display:flex;align-items:center;gap:12px;color:#8195ac;font-size:18px;font-weight:600}
.pin-dot{position:relative;flex:0 0 auto;width:20px;height:20px;background:#8195ac;border-radius:50% 50% 50% 0;transform:rotate(-45deg)}
.pin-dot:after{content:"";position:absolute;left:50%;top:50%;width:7px;height:7px;background:var(--navy);border-radius:50%;transform:translate(-50%,-50%)}
.ratings-card h3,.stories-card h3{font:400 30px/1.1 Prosto-One,sans-serif;margin:0}
.rating-chips{display:flex;flex-wrap:wrap;gap:16px 24px}
.rating-chips a{height:68px;padding:16px 20px;border-radius:40px;background:#fff;color:#000;display:flex;align-items:center;gap:16px}
.rating-chips b{font-size:26px;line-height:1}
.rating-chips img{display:block;max-width:170px;max-height:34px;width:auto;height:auto}
.rating-chips .rating-yandex img{width:30px;height:30px;max-width:none;max-height:none}
.rating-yandex b{font-family:Arial,sans-serif;font-weight:700;letter-spacing:-.04em}
.stories-card{background:var(--blue);color:#fff;display:flex;flex-direction:column;justify-content:space-between;gap:32px}
.stories-card>div{display:flex;flex-direction:column;gap:18px}
.stories-card p{font-size:18px;line-height:1.45;margin:0}
.stories-card .button{width:100%;border-radius:30px}
.home-appointment{padding:0 0 56px;background:var(--ice)}
.appointment-layout{display:grid;grid-template-columns:1fr 1fr;overflow:hidden;border-radius:20px;background:linear-gradient(180deg,#001934,#07529f)}
.appointment-photo{display:block;min-height:625px}
.appointment-photo img{display:block;width:100%;height:100%;object-fit:cover}
.appointment-form{padding:32px;color:#fff;display:flex;flex-direction:column;gap:32px}
.appointment-form h2{font:400 30px/1.1 Prosto-One,sans-serif;margin:0}
.appointment-fields{display:flex;flex-direction:column;gap:16px}
.appointment-fields>label{display:flex;flex-direction:column;gap:10px;font-size:18px}
.appointment-fields input{height:62px;padding:16px 24px;border:2px solid var(--brand-mint);border-radius:12px;background:#fff;color:var(--navy);font-size:18px}
.contact-method{display:flex;flex-direction:column;gap:16px;font-size:18px}
.contact-method>div{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.contact-method label{position:relative;height:62px;border-radius:31px;background:#fff;color:var(--navy);display:flex;align-items:center;justify-content:center;gap:12px;cursor:pointer;transition:background-color .2s ease,color .2s ease}
.contact-method label:has(input:checked){background:var(--blue2);color:#fff}
.contact-method label:has(input:focus-visible){outline:3px solid var(--brand-mint);outline-offset:3px}
.contact-method input{position:absolute;opacity:0}
.contact-method i{font-style:normal;display:grid;place-items:center;width:26px;height:26px}
.phone-icon svg{display:block;width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:2.35;stroke-linecap:round;stroke-linejoin:round}
.message-icon{color:currentColor}.message-icon svg{display:block;width:26px;height:26px;fill:currentColor}
.appointment-form>.button{width:100%;border-radius:30px}
.privacy-check{display:flex;align-items:flex-start;gap:12px;cursor:pointer}
.privacy-check>input{position:absolute;opacity:0}.privacy-check>span{width:28px;height:28px;flex:0 0 auto;border:1px solid var(--brand-mint);border-radius:4px}.privacy-check:has(input:checked)>span{background:var(--blue);box-shadow:inset 0 0 0 5px var(--blue2)}
.privacy-check small{font-size:14px;line-height:1.35}.privacy-check a{text-decoration:underline}
.home-doctors{overflow:hidden}
.doctor-heading{position:relative}.doctor-controls{position:absolute;right:0;top:0;display:flex;align-items:center;gap:24px}.doctor-controls button{width:58px;height:58px;border:0;border-radius:50%;background:var(--brand-mint-soft);color:var(--blue);font-size:38px}.doctor-controls>div{display:flex;gap:9px}.doctor-controls i{width:9px;height:9px;border-radius:50%;background:var(--brand-mint-soft)}.doctor-controls i.active{background:var(--blue)}
.doctor-feature{display:grid;grid-template-columns:2fr 1fr;gap:24px}
.doctor-feature-info,.doctor-feature-photo{background:#fff;border-radius:20px}
.doctor-feature-info{padding:32px;display:flex;flex-direction:column;justify-content:space-between;gap:32px}
.doctor-feature-info h3{font:400 30px/1.12 Prosto-One,sans-serif;margin:0 0 18px}.doctor-feature-info p{font-size:18px;margin:0}
.doctor-tags{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.doctor-tags span{background:var(--ice);padding:12px 16px;border-radius:24px;font-size:16px}
.doctor-actions{display:flex;gap:16px}.doctor-actions .button{flex:1;border-radius:30px}
.doctor-feature-photo{position:relative;min-height:394px}.doctor-feature-photo img{position:absolute;left:0;right:0;bottom:0;width:100%;height:145%;object-fit:contain;object-position:center bottom}
.home-locations{padding-bottom:56px}
.location-tabs{display:flex;gap:16px;margin-bottom:56px}.location-tabs button{border:0;border-radius:30px;background:#fff;padding:16px 24px;font-size:18px;font-weight:600}.location-tabs button.active{background:var(--brand-mint-soft);color:var(--navy)}
.route-button{display:flex;width:max-content;margin:0 0 24px auto;border-radius:30px}
.location-card{display:grid;grid-template-columns:1fr;gap:24px}
.location-info{background:#fff;border-radius:20px;padding:32px;display:flex;flex-direction:column;gap:24px}
.location-info>div{display:flex;flex-direction:column;gap:12px}.location-info span{color:#8a9bad;font-size:18px}.location-info p,.location-info a{font-size:20px;line-height:1.35;margin:0}
.location-photos{display:grid;grid-template-columns:2fr 1fr;gap:16px}.location-photos img{width:100%;height:100%;min-height:416px;object-fit:cover;border-radius:20px}
.reference-footer{padding:0 0 32px;background:var(--ice);color:var(--navy)}
.footer-card{background:#fff;border-radius:20px;padding:32px;display:grid;grid-template-columns:1fr 2fr 1fr;gap:56px}
.footer-main-links{display:grid;grid-template-columns:repeat(3,1fr);gap:22px 40px}.footer-main-links a{font-size:18px;font-weight:600}
.footer-action-links{display:flex;flex-direction:column;gap:12px}.footer-action-links .button{width:100%;border-radius:30px}
.footer-legal{display:flex;gap:30px;justify-content:center;flex-wrap:wrap;padding:36px 0;font-size:14px}.footer-legal b{font-family:Prosto-One}
.contraindications{font:400 clamp(40px,4.7vw,68px)/1 Prosto-One,sans-serif;text-transform:uppercase;text-align:center;color:#8da3b9;margin:40px 0 20px}
.back-top{position:fixed;z-index:70;right:24px;bottom:90px;width:56px;height:56px;border-radius:50%;background:var(--navy);display:grid;place-items:center}.back-top span{position:relative;width:3px;height:23px;background:#fff;border-radius:2px}.back-top span:before,.back-top span:after{content:"";position:absolute;top:0;width:13px;height:3px;background:#fff}.back-top span:before{right:0;transform:rotate(-45deg);transform-origin:right}.back-top span:after{left:0;transform:rotate(45deg);transform-origin:left}

@media(max-width:760px){
  .lower-section{padding-bottom:72px}.lower-section>.container-wide,.home-appointment>.container-wide,.reference-footer>.container-wide{width:min(100% - 32px,620px)}
  .lower-title{font-size:26px;line-height:1.1;letter-spacing:-.1px;margin-bottom:24px}
  .reviews-layout{grid-template-columns:1fr;gap:24px}
  .ratings-card,.stories-card{padding:24px;min-height:0}
  .ratings-card{gap:24px}.ratings-location{font-size:16px}.ratings-card h3,.stories-card h3{font-size:21px;line-height:1.1}
  .rating-chips{gap:8px}.rating-chips a{height:40px;padding:8px 12px;gap:8px}.rating-chips b{font-size:16px}.rating-chips img{max-width:112px;max-height:23px}.rating-chips .rating-yandex img{width:23px;height:23px}
  .stories-card{gap:32px}.stories-card>div{gap:16px}.stories-card p{font-size:16px;line-height:1.3}.stories-card .button{min-height:0;padding:12px 24px;font-size:16px}
  .home-appointment{padding-bottom:32px}.home-appointment>.container-wide{width:100%;max-width:none}
  .appointment-layout{display:flex;flex-direction:column;border-radius:0}
  .appointment-photo{min-height:0;aspect-ratio:720/320}.appointment-photo img{object-fit:cover}
  .appointment-form{padding:24px;gap:24px}.appointment-form h2{font-size:21px;line-height:1.1}
  .appointment-fields>label,.contact-method{font-size:16px}.appointment-fields input{height:54px;padding:14px 16px;font-size:16px}
  .contact-method>div{gap:16px}.contact-method label{height:48px}.contact-method b{display:none}
  .appointment-form>.button{min-height:0;padding:12px 24px;font-size:16px}.privacy-check small{font-size:13px}
  .doctor-heading{display:flex;flex-direction:column}.doctor-controls{position:static;order:2;justify-content:space-between;margin-bottom:70px}.doctor-controls button{width:48px;height:48px;font-size:32px}.doctor-controls>div{gap:8px}.doctor-controls i{width:8px;height:8px}
  .doctor-feature{display:flex;flex-direction:column;gap:24px}.doctor-feature-photo{order:-1;height:360px;min-height:0}.doctor-feature-photo img{height:100%;object-fit:contain}
  .doctor-feature-info{padding:24px;gap:32px}.doctor-feature-info h3{font-size:21px;line-height:1.1;margin-bottom:16px}.doctor-feature-info p{font-size:16px;line-height:1.3}
  .doctor-tags{gap:8px;margin-top:16px}.doctor-tags span{font-size:16px;padding:8px 16px}.doctor-actions{flex-direction:column;gap:8px}.doctor-actions .button{min-height:0;padding:12px 16px;font-size:16px}
  .home-locations{padding-bottom:24px}.location-tabs{overflow:auto;margin:0 -16px 56px;padding:0 16px}.location-tabs button{flex:0 0 auto;padding:12px 16px;font-size:16px}
  .route-button{float:none;width:100%;margin:0 0 24px;min-height:0;padding:12px 24px;font-size:16px}
  .location-card{display:flex;flex-direction:column;gap:24px}.location-info{padding:24px;gap:24px}.location-info span{font-size:16px}.location-info p,.location-info a{font-size:16px;line-height:1.35}
  .location-photos{order:2;grid-template-columns:2fr 1fr;gap:8px}.location-photos img{min-height:0;height:260px;border-radius:20px}
  .reference-footer{padding-bottom:24px}.footer-card{padding:24px;display:flex;flex-direction:column;gap:32px}.footer-card .logo{min-width:0}.footer-main-links{display:flex;flex-direction:column;gap:22px}.footer-main-links a{font-size:16px}
  .footer-action-links{gap:8px}.footer-action-links .button{min-height:0;padding:12px 24px;font-size:16px}
  .footer-legal{flex-direction:column;align-items:center;gap:16px;text-align:center;padding:24px 0 12px;font-size:14px}.contraindications{font-size:25px;line-height:1.08;margin:16px 0 24px}
  .back-top{right:16px;bottom:82px;width:56px;height:56px}
}

/* Clinic proof section */
.clinic-proof{padding-top:105px}.proof-heading{display:grid;grid-template-columns:1.15fr .85fr;gap:70px;align-items:end;margin-bottom:48px}.proof-heading h2{font:400 clamp(44px,5vw,64px)/1 Prosto-One,sans-serif;letter-spacing:-.025em;margin:0}.proof-heading p{font-size:20px;color:var(--muted);margin:0;max-width:620px}.proof-heading a{color:var(--blue)}.proof-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:340px;gap:24px}.proof-card{position:relative;overflow:hidden;border-radius:24px;padding:34px;color:#fff;display:flex;flex-direction:column;justify-content:flex-end;isolation:isolate}.proof-card>div,.proof-card>a{position:relative;z-index:2}.proof-card h3{font:400 30px/1.12 Prosto-One,sans-serif;margin:0 0 18px}.proof-card p{font-size:18px;line-height:1.45;margin:0 0 28px}.proof-card>.button{width:100%}.proof-branch{grid-column:span 2;grid-row:span 2;background:linear-gradient(0deg,rgba(1,25,52,.78) 0%,rgba(1,25,52,.1) 68%),url('/static/img/proof/branch-intermed-original.webp') center/cover no-repeat}.proof-equipment{grid-column:span 2;background:#011934}.proof-equipment:before{content:"";position:absolute;z-index:0;inset:0;background:linear-gradient(90deg,#011934 12%,rgba(1,25,52,.25)),url('/static/img/proof/equipment-r-evolution-v4.webp') 93% 30%/55% auto no-repeat}.proof-equipment>div{max-width:62%}.proof-doctors{background:var(--blue)}.proof-prices{background:var(--navy)}.proof-doctor-row{display:flex;align-items:center;margin:6px 0 25px}.proof-doctor-row img{width:58px;height:58px;object-fit:cover;border:4px solid #fff;border-radius:50%;background:#fff}.proof-doctor-row img+img{margin-left:-9px}.proof-doctors p,.proof-prices p{margin-bottom:18px}
@media(max-width:980px){.proof-heading{grid-template-columns:1fr;gap:20px}.proof-grid{grid-template-columns:1fr 1fr}.proof-branch{grid-column:1/-1;grid-row:auto;min-height:600px}.proof-equipment{grid-column:1/-1;min-height:420px}}
@media(max-width:760px){.clinic-proof{padding:72px 0 0}.clinic-proof>.container-wide{width:100%;max-width:none}.proof-heading{display:flex;flex-direction:column;gap:8px;padding:0 16px;margin-bottom:24px}.proof-heading h2{font-size:26px;line-height:1.1;letter-spacing:-.1px}.proof-heading p{font-size:16px;line-height:1.3;letter-spacing:.03px;margin:0}.proof-grid{display:flex;flex-direction:column}.proof-card{width:100%;height:auto;min-height:0;border-radius:0;padding:24px;gap:24px}.proof-card h3{font-size:21px;line-height:1.1;margin:0}.proof-card p{font-size:16px;line-height:1.3;letter-spacing:.03px;margin:0}.proof-card>div{display:flex;flex-direction:column;gap:16px}.proof-card>.button{min-height:0;padding:12px 24px;border-radius:30px;font-size:16px;line-height:1.3}.proof-branch,.proof-equipment{aspect-ratio:360/328;justify-content:flex-end}.proof-branch{border-radius:20px 20px 0 0;background:linear-gradient(0deg,rgba(1,25,52,.82) 0%,rgba(1,25,52,.06) 72%),url('/static/img/proof/branch-intermed-original.webp') center/cover no-repeat}.proof-equipment{background:#011934}.proof-equipment:before{background:linear-gradient(0deg,#011934 8%,rgba(1,25,52,.06) 72%),url('/static/img/proof/equipment-r-evolution-v4.webp') 80% 7%/92% auto no-repeat}.proof-equipment>div{max-width:none}.proof-doctors,.proof-prices{justify-content:space-between}.proof-doctor-row{display:flex;flex-direction:row;gap:0;margin:0;overflow:visible}.proof-doctor-row img{width:56px;height:56px;border-width:3.5px}.proof-doctor-row img+img{margin-left:-15.5px}.proof-prices{border-radius:0 0 20px 20px}.services-section{padding-top:72px}}
@media(max-width:760px){.proof-grid{gap:0}}

/* Homepage services */
.services-section{background:var(--ice)}
.services-heading{margin-bottom:56px}
.services-heading h2{font:400 clamp(44px,5vw,64px)/1 Prosto-One,sans-serif;letter-spacing:-.025em;margin:0}
.service-showcase{display:grid;grid-template-columns:repeat(6,1fr);gap:32px 24px}
.service-tile{position:relative;overflow:hidden;border-radius:20px;padding:32px;display:flex;flex-direction:column;justify-content:space-between;gap:32px;background:#fff;min-width:0}
.service-tile-rich{grid-column:span 3;min-height:400px}
.service-tile-compact{grid-column:span 2}
.service-tile-blue{background:var(--blue);color:#fff}
.service-showcase>.service-tile-blue>img{display:none}
.service-tile-copy,.service-price,.service-tile>h3{position:relative;z-index:2}
.service-tile h3{font:400 30px/1.1 Prosto-One,sans-serif;margin:0}
.service-tile-copy{max-width:66%;display:flex;flex-direction:column;gap:18px}
.service-tile-copy p{font-size:18px;line-height:1.45;margin:0;color:#60778e}
.service-tile-blue .service-tile-copy p{color:#fff}
.service-tile-rich>img{position:absolute;z-index:1;inset:0;width:100%;height:100%;object-fit:contain;object-position:right bottom}
.service-tile-light>img{opacity:.95}
.service-price{align-self:flex-start;display:flex;flex-direction:column;gap:4px;padding:16px 24px;border-radius:20px;background:var(--ice)}
.service-price b{font:400 25px/1.15 Prosto-One,sans-serif}
.service-price span{font-size:16px;color:#8192a4}
.service-tile-blue .service-price{background:#fff;color:var(--navy)}
.service-tile-compact .service-price{width:100%;margin-top:auto}
.services-more{display:flex;justify-content:center;margin-top:48px}
.services-more .button{border-radius:30px}
.oms-section{background:var(--ice);padding:0 0 95px}
.oms-card{position:relative;overflow:hidden;min-height:360px;padding:48px;border-radius:24px;background:var(--navy);color:#fff;display:flex;align-items:center}
.oms-card>div{position:relative;z-index:2;max-width:680px}
.oms-card h2{font:400 42px/1.08 Prosto-One,sans-serif;margin:0 0 22px}
.oms-card p{font-size:20px;line-height:1.45;margin:0}
.oms-card img{position:absolute;z-index:1;right:0;bottom:0;width:48%;height:100%;object-fit:contain;object-position:right bottom}

@media(max-width:980px){.service-showcase{grid-template-columns:1fr 1fr;gap:16px}.service-tile-rich,.service-tile-compact{grid-column:auto}.service-tile-compact:last-child{grid-column:1/-1}}
@media(max-width:760px){
  .services-section{padding:72px 0}
  .services-section>.container-wide,.oms-section>.container-wide{width:min(100% - 32px,620px)}
  .services-heading{margin-bottom:32px}
  .services-heading h2{font-size:26px;line-height:1.1;letter-spacing:-.1px}
  .service-showcase{display:flex;flex-direction:column;gap:16px}
  .service-tile{padding:24px;border-radius:20px;gap:32px}
  .service-tile-rich{width:100%;min-height:394px;aspect-ratio:328/394}
  .service-showcase>.service-tile-blue{min-height:0;aspect-ratio:auto}
  .service-tile-compact{min-height:0}
  .service-tile h3{font-size:21px;line-height:1.1}
  .service-tile-copy{max-width:100%;gap:16px}
  .service-tile-copy p{font-size:16px;line-height:1.3}
  .service-tile-rich>img{inset:0;width:100%;height:100%;object-position:center bottom}
  .service-tile-light>img{inset:0;width:100%;height:100%}
  .service-price{padding:16px 24px;border-radius:20px}
  .service-price b{font-size:21px;line-height:1.1}
  .service-price span{font-size:16px;line-height:1.3}
  .service-tile-rich .service-price{align-self:stretch;width:100%;margin-top:auto}
  .services-more{margin-top:32px}
  .services-more .button{min-height:0;padding:12px 24px;font-size:16px;line-height:1.3}
  .oms-section{padding:0 0 72px}
  .oms-card{min-height:328px;padding:24px;border-radius:20px;align-items:flex-start}
  .oms-card>div{max-width:100%}
  .oms-card h2{font-size:21px;line-height:1.1;margin-bottom:16px}
  .oms-card p{font-size:16px;line-height:1.3}
  .oms-card img{width:62%;height:52%;opacity:.45}
}

/* Mobile first-screen geometry */
@media(max-width:760px){
  .container-wide,.page-hero .container,.service-list>.container,.prices-page>.container,.doctors-grid,.story-grid,.license-section>.container,.contacts-grid,.contact-form-section>.container,.value-grid{width:min(100% - 32px,620px)}
  .page-hero .container{min-width:0}
  .page-hero h1{max-width:100%;font-size:34px;line-height:1.06;letter-spacing:-.02em;overflow-wrap:break-word;word-break:normal}
  .utility{height:56px;padding-top:0}
  .home-hero{padding-top:24px}
  .home-hero h1{font-size:26px;line-height:1.1;letter-spacing:-.1px;margin-bottom:24px}
}
@media(max-width:360px){
  .nav-shell{padding-left:10px;padding-right:10px;gap:6px}
  .nav-shell .intermed-logo{gap:8px}
  .nav-shell .intermed-brand-mark{flex-basis:50px;width:50px;height:28px}
  .nav-shell .intermed-brand-mark img{width:100%}
}
.back-top{opacity:0;pointer-events:none;transition:opacity .2s ease}.back-top.visible{opacity:1;pointer-events:auto}

/* Medical disclaimer geometry from the reference footer */
.contraindications{
  box-sizing:border-box;
  width:min(100%,1217px);
  max-width:100%;
  margin:40px auto 20px;
  padding:0 16px;
  font-family:Inter,Arial,sans-serif;
  font-size:28px;
  font-weight:300;
  line-height:1;
  letter-spacing:.6px;
  overflow-wrap:break-word;
}
@media(max-width:760px){
  .contraindications{
    width:calc(100% - 32px);
    margin:16px auto 24px;
    padding:0;
    font-size:25px;
    line-height:1.08;
  }
}

/* Stable SVG header icons: exact proportions across Safari and Chromium */
.header-location{display:inline-flex;align-items:center;gap:7px;white-space:nowrap}
.header-location svg{display:block;width:20px;height:20px;fill:var(--navy);flex:0 0 auto}
.menu svg{display:block;fill:none;stroke:var(--navy);stroke-width:2.15;stroke-linecap:round;stroke-linejoin:round}
.menu svg{width:27px;height:27px}
@media(max-width:760px){
  .utility .header-location{margin-left:auto;margin-right:18px;font-size:16px}
  .menu{box-sizing:border-box;width:42px;height:42px;min-width:42px;min-height:42px;padding:0;display:grid;place-items:center;background:var(--ice);border:0;border-radius:50%}
  .menu i{display:none}
  .nav-shell{gap:8px}
  .mobile-header-actions{grid-template-columns:1fr}
}




