/* layouts/moscow-overrides */.ses-brand-symbol{display:block;flex:none;color:#C9A24A;width:44px;height:44px}@media(max-width:760px){.ses-brand-symbol{width:36px;height:36px}}:root{--gold:#C9A24A;--gold-ink:#6E5011;--cta:#D2400C}.crest,.crest-big,.brand-mark,.brand__mark,.rating,.registry,.vows{display:none!important}.service-price-note{margin:28px 0;padding:22px;border:1px solid #d8dee8;border-radius:18px;background:#fff}.service-price-note p{margin:0}.service-price-note__title{margin-bottom:8px!important;color:#0b1b34;font-weight:900}@media(min-width:1024px){.documents-sticky{align-items:start}.documents-sticky__intro{position:sticky;top:124px}.method-cards .card-art{height:auto;aspect-ratio:3/2}}/* components/design-tokens *//* Shared palette and button dimensions from the accepted Moscow components.
   Namespaced tokens do not overwrite city-specific layout or form variables. */:root{--ses-ink:#0B1B34;--ses-paper:#fff;--ses-paper-hover:#EEF2F8;--ses-gold:#C9A24A;--ses-gold-light:#E6CE94;--ses-primary:#D2400C;--ses-primary-hover:#B33509;--ses-border:#6F7B90;--ses-border-dark:#6B7C97;--ses-button-gap:8px;--ses-button-height:48px;--ses-button-padding:12px 24px;--ses-button-radius:12px;--ses-button-font:1.125rem;--ses-button-compact-font:clamp(.875rem,.85rem + .12vw,.9375rem);--ses-cta-height:50px;--ses-cta-padding:12px 18px;--ses-cta-radius:10px;--ses-button-transition:150ms cubic-bezier(.2,.8,.2,1);/* Reading roles shared by the homepage and every service, in both cities. */--ses-type-body:clamp(1.0625rem,1.01rem + .2vw,1.1875rem);--ses-type-secondary:1rem;--ses-type-intro:clamp(1.125rem,1.06rem + .28vw,1.25rem);--ses-type-h3:clamp(1.25rem,1.15rem + .45vw,1.5rem);--ses-type-h2:clamp(1.625rem,1.4rem + 1.1vw,2.25rem);--ses-type-phone:clamp(1.25rem,1.15rem + .45vw,1.5rem)}html,body{-webkit-font-smoothing:auto;-moz-osx-font-smoothing:auto}/* components/buttons *//* One owner for existing button appearances. Layout widths, grid placement and
   visibility remain with their containers. No form fields or hero grids here. */.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--ses-button-gap);min-width:0;min-height:var(--ses-button-height);padding:var(--ses-button-padding);border:1px solid transparent;border-radius:var(--ses-button-radius);font-weight:700;font-size:var(--ses-button-font);line-height:1.2;text-decoration:none;cursor:pointer;white-space:nowrap;transition:background var(--ses-button-transition),color var(--ses-button-transition),transform var(--ses-button-transition),border-color var(--ses-button-transition)}.btn:active{transform:translateY(1px)}.btn[disabled],.btn[aria-disabled="true"]{opacity:.45;pointer-events:none}.btn--primary,.btn-primary{background:var(--ses-primary) !important;color:var(--ses-paper) !important;border-color:var(--ses-primary) !important;box-shadow:none!important}/* Moscow's primary fill remains steady on hover; the original transform stays. */.btn-primary:hover{transform:translateY(-2px)}.btn--secondary{background:transparent;color:var(--ses-ink);border-color:var(--ses-border)}.btn--secondary:hover{background:var(--ses-paper-hover)}.btn--quiet{white-space:normal;background:none;border:0;padding-inline:0;color:var(--ses-ink);text-decoration:underline}.btn--quiet:hover{color:var(--ses-primary)}.ground .btn--secondary,.stats .btn--secondary{color:var(--ses-paper);border-color:var(--ses-border-dark)}.ground .btn--secondary:hover,.hero .btn--secondary:hover{background:rgba(255,255,255,.08)}.ground .btn--quiet,.hdr .btn--quiet{color:var(--ses-paper)}.ground .action-card .btn--secondary,.hero .action-card .btn--secondary{color:var(--ses-ink);border-color:var(--ses-border)}.ground .action-card .btn--quiet,.hero .action-card .btn--quiet{color:var(--ses-ink)}.btn--sm{min-height:40px;padding:8px 16px;font-size:var(--ses-button-compact-font)}/* Homepage button variant: retain its existing spacing and compact variant. */.btn.btn-primary,.btn.btn-gold,.btn.btn-ink{gap:9px;min-height:0;padding:15px 26px;border:0;border-radius:6px;font:inherit;font-size:.97rem;font-weight:700;line-height:inherit;white-space:normal;transition:transform .16s cubic-bezier(.2,.8,.2,1),background .16s,color .16s}.btn-gold{background:transparent;color:var(--gold-2,var(--ses-gold-light));box-shadow:inset 0 0 0 1.5px var(--ses-gold)}.btn-gold:hover{background:var(--ses-gold);color:#12233D;transform:translateY(-2px)}.btn-ink{background:var(--ses-ink);color:var(--ses-paper)}.btn-ink:hover{background:var(--ink-3,#12243F);transform:translateY(-2px)}.btn.btn-sm{padding:11px 19px;font-size:.9rem}.hdr .btn--secondary,.hdr .btn-gold{background:var(--ses-paper) !important;color:var(--ses-ink) !important;border:1px solid var(--ses-ink) !important;box-shadow:none!important}.hero .btn--secondary,.hero .btn-gold{background:transparent!important;color:var(--ses-paper) !important;border:1px solid rgba(255,255,255,.72) !important;box-shadow:none!important}/* The existing Moscow hero CTA is also the Petersburg primary/secondary CTA. */.owner-hero-action,.button,.text-action{display:inline-flex;align-items:center;justify-content:center;min-width:0;min-height:var(--ses-cta-height);padding:var(--ses-cta-padding);border:1px solid rgba(255,255,255,.68);border-radius:var(--ses-cta-radius);font-weight:800;text-decoration:none;cursor:pointer}.button,.text-action{gap:9px;font-size:inherit;line-height:inherit;text-align:center;transition:background .16s ease}.button{background:var(--ses-primary);color:var(--ses-paper);border-color:var(--ses-primary)}.button:hover{background:var(--ses-primary)}.button svg{flex:none}.text-action{background:transparent;border-color:rgba(255,255,255,.72);color:var(--ses-paper)}.text-action:hover{background:rgba(255,255,255,.1)}.owner-hero-action--primary{color:var(--ses-paper) !important;background:var(--ses-primary);border-color:var(--ses-primary)}.owner-hero-action--secondary{color:inherit!important;background:transparent}.sec .owner-hero-action--secondary{color:var(--ses-ink) !important;border-color:#9aa7b8}.hero .owner-hero-action--secondary,main>section:first-of-type .owner-hero-action--secondary{color:var(--ses-paper) !important;border-color:rgba(255,255,255,.72) !important}/* Moscow shell: its existing labelled modifiers distinguish it from SPB. */.button--primary,.button--light,.button--quiet{min-height:52px;gap:9px;padding:13px 20px;border-width:2px;border-radius:10px;font-size:inherit;font-weight:900;line-height:inherit;transition:.16s ease}.button--primary{background:var(--ses-primary);color:var(--ses-paper);border-color:transparent}.button--primary:hover{background:#ad3308;transform:translateY(-1px)}.button--light{color:var(--ses-paper);border-color:rgba(255,255,255,.45);background:rgba(255,255,255,.07)}.button--quiet{color:var(--ses-ink);border-color:var(--line,#d9e1ec);background:var(--ses-paper)}@media(max-width:420px){.btn:not(.btn--quiet):not(.btn-primary):not(.btn-gold):not(.btn-ink){padding-inline:12px}}@media(max-width:340px){.btn:not(.btn--quiet):not(.btn-primary):not(.btn-gold):not(.btn-ink){padding-inline:8px}}@media(min-width:1024px){.hero-price-card .owner-hero-action{min-height:54px;padding:10px 12px;font-size:.84rem;line-height:1.25;text-align:center}main>section.sec.sec--tight .hero-price-card .owner-hero-action--primary{color:var(--ses-paper) !important}main>section.sec.sec--tight .hero-price-card .owner-hero-action--secondary{color:var(--ses-ink) !important;border-color:#9aa7b8!important}}@media(max-width:900px){.btn--sm{min-height:44px}}/* A single primary action color across page and persistent mobile controls. */:is(.sticky,.sticky-bar,.mobile-call) :is(.call,.button--primary,.btn-primary){background:var(--ses-primary) !important;color:#fff!important}.btn-ink{background:var(--ses-primary);color:#fff;text-align:center}.btn-ink:hover{background:var(--ses-primary)}/* components/header *//* The Moscow header is the shared regional shell. City content is configuration. */.site-shell{width:min(1220px,100%);margin-inline:auto;padding-inline:24px;box-sizing:border-box}.site-utility{background:#071223;color:#aebbd0;font:400 13px/1.5 Manrope,system-ui,sans-serif;border-bottom:1px solid rgba(255,255,255,.12)}.site-utility .site-shell{display:flex;align-items:center;gap:24px;min-height:58px}.site-utility__name{color:#c9a24a;font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.site-utility__hours b{color:#fff;font-weight:600}.site-utility__region{margin-left:auto}.site-utility a{color:#fff;font-weight:800;white-space:nowrap}.site-header{position:sticky;top:0;z-index:40;background:#fff;color:#0b1b34;border-bottom:1px solid #d8dee8;font-family:Manrope,system-ui,sans-serif}.site-header>.site-shell{display:flex;align-items:center;gap:16px;min-height:84px}.site-brand{display:flex;align-items:center;gap:13px;flex:none;color:#0b1b34;text-decoration:none}.site-brand__symbol{display:block;width:44px;height:44px;flex:none;color:#c9a24a}.site-brand__name{display:block;font-size:18.56px;font-weight:800;line-height:1.05;letter-spacing:-.025em;white-space:nowrap}.site-brand__caption{display:block;margin-top:4px;color:#526176;font-size:10.08px;font-weight:800;line-height:1.65;letter-spacing:.17em;text-transform:uppercase}.site-nav{display:flex;align-items:center;gap:12px}.site-header__actions{display:flex;gap:12px;align-items:center;margin-left:auto;flex-shrink:0}.site-header__request,.site-header__call{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:46px;padding:12px 18px;border:1px solid #0b1b34;border-radius:6px;font-size:14px;font-weight:800;line-height:1.5;text-decoration:none;white-space:nowrap}.site-header__request{background:#fff;color:#0b1b34}.site-header__request:hover{background:#f4f6f9}.site-header__call{background:#d2400c;border-color:#d2400c;color:#fff}.site-header__call:hover{background:#ad3308;border-color:#ad3308}.site-menu{display:none;margin:0;padding:0;border:0;background:transparent}.site-header__contact{margin-left:auto;color:#0b1b34;font-weight:700}@media(max-width:1239px){.site-header__request{display:none}.site-utility__region{font-size:12px}}@media(max-width:1199px){.site-nav,.site-header__actions{display:none}.site-header>.site-shell{min-height:72px;justify-content:space-between;position:relative}.site-menu{display:block;margin-left:auto}.site-menu summary{padding:0;width:44px;height:44px;display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;cursor:pointer;list-style:none;border:1px solid #d8dee8;border-radius:8px}.site-menu summary::-webkit-details-marker{display:none}.site-menu summary::before,.site-menu summary::after{content:none}.site-menu nav{position:absolute;top:100%;left:0;right:0;display:flex;flex-direction:column;padding:8px 24px 20px;background:#fff;border-bottom:1px solid #d8dee8;max-height:calc(100svh - 120px);overflow-y:auto}.site-menu nav a{min-height:48px}.site-menu summary:focus-visible{outline:2px solid #0b1b34;outline-offset:3px}.site-utility__hours{display:none}}@media(max-width:767px){.site-shell{padding-inline:16px}.site-utility .site-shell{min-height:36px;gap:10px}.site-utility__name{font-size:10px;letter-spacing:.11em}.site-utility__region{display:none}.site-utility a{margin-left:auto;font-size:11.2px}.site-brand{gap:9px}.site-brand__symbol{width:36px;height:36px}.site-brand__name{font-size:16px}.site-brand__caption{font-size:8.64px;letter-spacing:.09em}.site-menu nav{padding-inline:16px}}@media(max-width:359px){.site-brand__name{font-size:14px}.site-brand__symbol{width:32px;height:32px}.site-header>.site-shell{gap:8px}}@media(max-width:767px){.site-utility a{display:inline-flex;align-items:center;min-height:36px;font-size:14px}.site-utility__name{letter-spacing:.06em}}@media print{.site-header,.site-utility{display:none}}/* components/hero *//* Shared first-screen composition, extracted from the accepted Moscow homepage and hero overrides. */:root{--hero-paper:#fff;--hero-navy:#071223}.hero{background:var(--hero-navy);color:#fff}.hero h1{font-family:Manrope,system-ui,sans-serif;font-size:clamp(2rem,3.8vw,3.1rem);font-weight:800;line-height:1.08;letter-spacing:-.035em}.hero :is(.lede,.intro){margin-top:16px;line-height:1.62}.hero>.owner-hero-media{margin:0}.hero:has(>.owner-hero-media),main>section.sec:first-of-type:has(>.owner-hero-media){background-image:none!important}.hero{position:relative;overflow:hidden;isolation:isolate;padding:clamp(46px,5.5vw,74px) 0 clamp(50px,6vw,82px)}.hero .wrap{position:relative;display:grid;grid-template-columns:minmax(0,1.06fr) minmax(0,.94fr);gap:52px;align-items:center}.hero h1{color:#fff}.hero--service>.wrap{grid-template-columns:minmax(0,760px)}.hero h1 span{color:var(--gold-2,#E6CE94)}.hero :is(.lede,.intro){color:var(--on-dark,#C7D3E4);font-size:clamp(1.1875rem,1.13rem + .28vw,1.375rem);max-width:52ch}@media (max-width:1023px){.hero .wrap{grid-template-columns:1fr;gap:38px}}@media (min-width:1024px){.hero{padding:clamp(24px,2.8vw,36px) 0 clamp(34px,4vw,56px)}.hero :is(.lede,.intro){margin-top:11px;font-size:clamp(1.1875rem,1.13rem + .28vw,1.375rem)}}main>section.sec:first-of-type{position:relative;display:flex;align-items:center;background-color:#071223!important;background-image:linear-gradient(90deg,rgba(5,18,37,.80) 0%,rgba(5,18,37,.62) 42%,rgba(5,18,37,.10) 100%),var(--owner-hero-image) !important;background-size:100% 100%,var(--owner-hero-size,cover) !important;background-position:center,var(--owner-hero-position,center) !important;background-repeat:no-repeat!important;color:#fff!important}main>section.sec:first-of-type>.wrap{position:relative;z-index:1;width:100%}.owner-hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.hero,main>section.sec:first-of-type{min-height:calc(100svh - 124px)}.hero{display:flex;align-items:center}.hero>.wrap{width:100%}.owner-hero-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:clamp(32px,5vw,72px);align-items:center}.owner-hero-copy{min-width:0}.owner-hero-copy>.crumbs{margin:0 0 22px;color:var(--gold)}.owner-hero-copy>.crumbs a,.owner-hero-copy>.crumbs li,.owner-hero-copy>.crumbs li::after{color:var(--gold) !important}.owner-hero-media{display:none}.hero>.owner-hero-media{display:block;position:absolute;inset:0;z-index:0}.hero>.owner-hero-media picture,.hero>.owner-hero-media img{display:block;width:100%;height:100%;object-fit:cover}.hero>.owner-hero-media::after{content:"";position:absolute;inset:0;background:linear-gradient(96deg,rgba(7,18,35,.80) 0%,rgba(7,18,35,.62) 44%,rgba(7,18,35,.14) 100%)}.hero>.wrap{position:relative;z-index:1}.hero-price-chip{display:none}.hero-price-card{align-self:start;padding:30px;background:#fff;color:#0b1b34!important;border-radius:24px;box-shadow:0 18px 48px rgba(3,12,24,.22)}.hero-price-card p,.hero-price-card li{color:#0b1b34!important}.hero-price-card__eyebrow{margin:0;color:var(--gold-ink,#6e5011) !important;font-size:.78rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase}.hero-price-card__price{margin:16px 0 10px;font-size:clamp(2.35rem,5vw,4rem);font-weight:900;letter-spacing:-.05em;line-height:1}.hero-price-card__note{color:#526176!important}.hero-price-card ul{display:grid;gap:12px;margin:22px 0 0;padding:0;list-style:none}.hero-price-card li{position:relative;padding-left:28px}.hero-price-card li::before{content:"✓";position:absolute;left:0;color:#167a43;font-weight:900}.hero-price-card a{color:#0b1b34!important}.hero-price-card p.hero-price-card__eyebrow{color:var(--gold-ink,#6e5011) !important}.hero-price-card .owner-hero-actions--card{display:none}@media(min-width:1024px){.hero-price-card{position:sticky;top:136px}.owner-hero-grid>.hero-price-card{align-self:center}.hero>.wrap>.hero-price-card{position:relative;top:auto;align-self:center}main>section.sec:first-of-type>.owner-hero-media{display:block!important;position:absolute;inset:0;overflow:hidden;z-index:0}main>section.sec:first-of-type>.owner-hero-media picture,main>section.sec:first-of-type>.owner-hero-media img{display:block;width:100%;height:100%;object-fit:cover}main>section.sec:first-of-type>.owner-hero-media::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,18,37,.80) 0%,rgba(5,18,37,.62) 42%,rgba(5,18,37,.10) 100%)}main>section.sec.sec--tight[data-mobile-first-hero="v1"]{min-height:calc(100svh - 114px);box-sizing:border-box}main>section.sec.sec--tight[data-hero-pricing="base"] .owner-hero-actions--copy{display:none}main>section.sec.sec--tight[data-hero-pricing="none"] .owner-hero-grid{grid-template-columns:minmax(0,760px)}main>section.sec.sec--tight .hero-price-card .owner-hero-actions--card{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:22px}}@media(min-width:1024px) and (max-height:920px){main>section.sec.sec--tight[data-mobile-first-hero="v1"]{padding-block:14px!important}}@media(min-width:768px) and (max-width:1023px){.hero,main>section.sec:first-of-type{display:grid!important;grid-template-columns:minmax(0,1fr);grid-template-rows:320px auto;min-height:0;padding:0!important;background:var(--hero-navy) !important;align-items:stretch}.owner-hero-media,.hero .owner-hero-media{display:block!important;position:relative;align-self:stretch;min-height:0;height:320px;overflow:hidden}.owner-hero-media picture{position:absolute;inset:0}.owner-hero-media picture,.owner-hero-media img{display:block;width:100%;height:100%;object-fit:cover}.owner-hero-media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,rgba(7,18,35,.5))}.hero>div.wrap,main>section.sec:first-of-type>div.wrap{padding:28px 32px 36px!important}.owner-hero-grid,.hero>.wrap{display:block!important}.owner-hero-copy>.crumbs{margin-bottom:18px}.owner-hero-copy h1{font-size:clamp(2rem,4.6vw,2.625rem) !important;line-height:1.15!important}.hero-price-card{display:none}.hero-price-chip{position:absolute;display:grid;left:32px;bottom:20px;gap:2px;padding:10px 14px;border:1px solid rgba(201,162,74,.48);border-radius:14px;background:#071223;color:#fff;z-index:2}.hero-price-chip>span{color:var(--gold);font-size:.75rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.hero-price-chip strong{font-size:1.5rem;white-space:nowrap}.owner-hero-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-width:420px}.owner-hero-action{min-height:52px}.hero-art{inset:auto!important}.hero-art img{position:static!important}}@media(max-width:767px){.hero,main>section.sec:first-of-type{display:block!important;min-height:auto;padding:0!important;background:var(--hero-navy) !important;overflow:clip}.owner-hero-media,.hero .owner-hero-media{display:block!important;position:relative;inset:auto!important;width:100%;height:clamp(270px,42svh,390px);overflow:hidden}.owner-hero-media picture,.owner-hero-media img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 28%}.owner-hero-media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,18,35,.02) 48%,rgba(7,18,35,.88) 100%)}.hero-price-chip{position:absolute;z-index:2;left:16px;bottom:30px;display:grid;gap:2px;padding:10px 14px;border:1px solid rgba(201,162,74,.48);border-radius:14px;background:rgba(7,18,35,.82);backdrop-filter:blur(12px);color:#fff;box-shadow:0 10px 30px rgba(2,8,18,.22)}.hero-price-chip span{color:var(--gold);font-size:.68rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.hero-price-chip strong{font-size:1.35rem}.hero>div.wrap,main>section.sec:first-of-type>div.wrap{position:relative!important;z-index:3!important;width:100%;margin-top:-22px!important;padding:30px 16px 34px!important;border-radius:24px 24px 0 0;background:var(--hero-navy)}.owner-hero-grid,.hero>.wrap{display:block!important}.owner-hero-copy>.crumbs{margin:0 0 16px;padding:0}.owner-hero-copy>.crumbs a{display:inline-flex;min-height:44px;align-items:center}.owner-hero-copy h1,.hero h1{max-width:100%;overflow-wrap:anywhere;font-size:clamp(2rem,8.6vw,2.8rem) !important;line-height:1.02!important;letter-spacing:-.04em}.owner-hero-copy :is(.lede,.intro),.hero :is(.lede,.intro){font-size:clamp(1.1875rem,1.13rem + .28vw,1.375rem);line-height:1.55}.owner-hero-actions{display:grid;grid-template-columns:1fr;margin-top:22px}.owner-hero-action{width:100%;min-height:52px}.hero-price-card{display:none}.owner-hero-copy .pledges{margin-top:30px!important}.owner-hero-copy .pledges li{padding-block:14px}.sticky,.sticky-bar,.mobile-call{transition:transform .24s ease,opacity .24s ease}.sticky:not(.is-active),.sticky-bar:not(.is-active),.mobile-call:not(.is-active){transform:translateY(110%);opacity:0;pointer-events:none}}@media(min-width:768px) and (max-width:1023px){.owner-hero-media::after{background:linear-gradient(90deg,rgba(7,18,35,.04),rgba(7,18,35,.28))}}@media(max-width:767px){.owner-hero-media::after{background:linear-gradient(180deg,rgba(7,18,35,.01) 52%,rgba(7,18,35,.72) 100%)}}@media(min-width:768px) and (max-width:1023px){.hero:not(.with-image):has(>.hero-grid){grid-template-columns:minmax(0,1fr)}}@media(max-width:767px){.hero:not(.with-image)>.hero-grid{margin-top:0!important}.hero .owner-hero-actions>:is(.button,.text-action){width:100%;min-height:52px}}@media print{.hero:has(>.hero-grid){display:block!important;min-height:0;background:white!important;color:black;padding:0 0 24px!important}.hero>.hero-grid{display:block!important;background:white;margin:0!important;padding:20px 0!important}.hero:has(>.hero-grid) h1{font-size:26pt!important;color:black}.hero:has(>.hero-grid) h1 span,.hero:has(>.hero-grid) .intro{color:black}.hero>.hero-media{position:relative!important;height:auto;max-width:400px;margin-top:20px}.hero>.hero-media img{height:auto}.hero>.hero-media::after{display:none}.hero-panel,.mobile-call{display:none!important}}/* Mobile composition: image remains legible and actions stay near the headline. */@media(max-width:767px){/* The first section fills the available viewport; extra space belongs to
    the photo, while long copy can increase the section without clipping.
    The shared mobile utility/header occupy 36 + 72px plus their borders. */.hero,main>section.sec:first-of-type,.page-hero{min-height:calc(100vh - 110px);min-height:calc(100svh - 110px);min-height:calc(100dvh - 110px);box-sizing:border-box}.hero:has(>.owner-hero-media),main>section.sec:first-of-type:has(>.owner-hero-media){display:grid!important;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(210px,1fr) auto;align-items:stretch}.hero>.owner-hero-media,main>section.sec:first-of-type>.owner-hero-media{height:auto!important;min-height:210px;align-self:stretch}.hero>.owner-hero-media>picture,main>section.sec:first-of-type>.owner-hero-media>picture{position:absolute;inset:0}.hero>.owner-hero-media::after,.owner-hero-media::after{background:none!important}.hero>.owner-hero-media img,.owner-hero-media img{object-position:72% 62%}.hero>div.wrap,main>section.sec:first-of-type>div.wrap{margin-top:0!important;padding:20px 16px 16px!important;border-radius:0}.owner-hero-copy h1,.hero h1{font-size:clamp(1.7rem,7.2vw,2rem) !important;line-height:1.12!important;letter-spacing:-.025em}.owner-hero-copy :is(.lede,.intro),.hero :is(.lede,.intro){font-size:clamp(1.1875rem,1.13rem + .28vw,1.375rem);line-height:1.45;margin-top:20px}.owner-hero-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:28px}.owner-hero-actions>:is(a,.button,.text-action){padding:10px 8px;white-space:normal;font-size:14px;line-height:1.3;text-align:center;min-height:52px}.hero-price-chip{left:16px;bottom:12px;padding:7px 11px;border-radius:6px;backdrop-filter:none;box-shadow:none;background:var(--hero-navy)}.hero-price-chip strong{font-size:1.15rem}}/* Homepage cover-image source bound; preserve expanding copy and photo space. */@media(max-width:480px){.hero:has(.hero-photo)>div.wrap{min-height:318px;box-sizing:border-box}}@media(max-width:420px){.hero[data-hero-cover="spb"]>div.wrap{min-height:calc(218px + 4.48 * clamp(1.7rem,7.2vw,2rem))}}/* components/motion *//* Движение и отклик — общий слой дизайн-системы для всех коммерческих страниц.
   Только transform/opacity и scroll-driven анимации: без JS-таймлайнов, без
   сдвигов макета и без анимации первого экрана (LCP не откладывается).
   prefers-reduced-motion отключает всё движение. Источник приёмов — owner-решение
   2026-09-30: scroll reveal, border beam, spotlight, scroll progress. */:root{--ease:cubic-bezier(.2,.7,.2,1)}/* Отклик кнопок */.owner-hero-action,.btn,.btn--primary,.button--primary,.site-header__call,.site-header__request,.btn-lvl{transition:transform .25s var(--ease),box-shadow .25s var(--ease),background-color .2s,color .2s,border-color .2s}.owner-hero-action:hover,.btn:hover,.btn--primary:hover,.site-header__call:hover,.site-header__request:hover,.btn-lvl:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(12,26,48,.18)}.owner-hero-action:active,.btn:active,.btn--primary:active,.btn-lvl:active{transform:translateY(0) scale(.98)}/* Бегущий луч по рамке главного действия — только при наведении */@property --beam{syntax:'<angle>';inherits:false;initial-value:0deg}.owner-hero-action--primary{position:relative;isolation:isolate}.owner-hero-action--primary::before{content:"";position:absolute;inset:-2px;border-radius:inherit;z-index:-1;padding:2px;opacity:0;background:conic-gradient(from var(--beam),transparent 0 70%,#F3E6C4 80%,#C9A24A 88%,transparent 95%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;transition:opacity .3s}.owner-hero-action--primary:hover::before{opacity:1;animation:ses-beam 2.4s linear infinite}@keyframes ses-beam{to{--beam:360deg}}/* Отклик карточек */.card,.case,.action-card,.svc,.lvl{transition:transform .3s var(--ease),box-shadow .3s var(--ease),border-color .3s}.card:hover,.case:hover,.action-card:hover{transform:translateY(-3px);box-shadow:0 16px 36px rgba(12,26,48,.10)}/* Подсветка за курсором: класс .spot и --mx/--my ставит scripts/motion.js */.spot{position:relative}.spot::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;opacity:0;transition:opacity .3s;background:radial-gradient(360px circle at var(--mx,50%) var(--my,50%),rgba(201,162,74,.16),transparent 60%)}.spot:hover::after{opacity:1}/* Срочный выезд: пульсирующая точка и плашка */.urgent-dot{position:relative;display:inline-block;width:9px;height:9px;border-radius:50%;background:#3DD68C;flex:none}.urgent-dot::after{content:"";position:absolute;inset:-5px;border-radius:50%;border:2px solid #3DD68C;opacity:.6;animation:ses-ping 1.8s ease-out infinite}@keyframes ses-ping{from{transform:scale(.4);opacity:.7}to{transform:scale(1.6);opacity:0}}.urgent-pill{display:inline-flex;align-items:center;gap:10px;margin:0 0 18px;padding:8px 14px 8px 12px;border-radius:999px;background:rgba(201,162,74,.14);border:1px solid rgba(201,162,74,.55);color:#F3E6C4;font:700 14px/1.2 Manrope,system-ui,sans-serif}.site-utility__urgent{display:inline-flex;align-items:center;gap:8px;color:#F3E6C4;font-weight:700}@media (max-width:900px){.site-utility__urgent{display:none}}.hero-price-card li.is-urgent{font-weight:800}/* Вопросы: карточки и плавное раскрытие */.faq{display:grid;gap:10px}.faq details{border:1px solid #E3E7EE;border-radius:16px;padding:0 22px;background:#fff;transition:border-color .2s,box-shadow .2s}.faq details:first-child{border-top:1px solid #E3E7EE}.faq details:hover{border-color:#C9A24A}.faq details[open]{box-shadow:0 14px 30px rgba(12,26,48,.07);border-color:#C9A24A}.dark .faq details{background:rgba(255,255,255,.03);border-color:rgba(255,255,255,.14)}:root{interpolate-size:allow-keywords}.faq details::details-content{block-size:0;overflow:hidden;transition:block-size .35s var(--ease),content-visibility .35s allow-discrete}.faq details[open]::details-content{block-size:auto}/* Поля форм: мягкое свечение фокуса */form input,form select,form textarea{transition:border-color .2s,box-shadow .2s}form input:focus-visible,form select:focus-visible,form textarea:focus-visible{border-color:#C9A24A;box-shadow:0 0 0 4px rgba(201,162,74,.22)}/* Появление при прокрутке и золотая черта под заголовком секции */@keyframes ses-rise{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}@keyframes ses-grow{from{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes ses-grow-y{from{transform:scaleY(0)}to{transform:scaleY(1)}}@supports (animation-timeline: view()){@media (prefers-reduced-motion:no-preference){.sec .card,.sec .case,.sec .action-card,.sec .facts>li,.sec .steps>li,.sec .tl>li,.faq details,.svc,.lvl,.ledger-col,.sec .args li,.crew figure{animation:ses-rise linear both;animation-timeline:view();animation-range:entry 0% entry 40%}.sec .wrap>h2::after{content:"";display:block;width:56px;height:3px;margin-top:14px;background:#C9A24A;border-radius:2px;transform-origin:left;animation:ses-grow linear both;animation-timeline:view();animation-range:entry 10% cover 30%}/* Лента этапов на страницах услуг: линия прогресса вниз, пока блок в центре экрана */.tl{position:relative;view-timeline-name:--ses-tl}.tl::before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:linear-gradient(#C9A24A,#F3E6C4);transform-origin:top;animation:ses-grow-y linear both;animation-timeline:--ses-tl;animation-range:cover 35% cover 75%}@media (min-width:768px){.tl{padding-left:28px}.tl>li{position:relative}.tl>li::after{content:"";position:absolute;left:-32px;top:calc(16px + .45em);width:10px;height:10px;border-radius:50%;background:#C9A24A;box-shadow:0 0 0 4px rgba(201,162,74,.18)}}}}@media (prefers-reduced-motion:reduce){.urgent-dot::after,.owner-hero-action--primary:hover::before{animation:none}.card:hover,.case:hover,.action-card:hover,.owner-hero-action:hover,.btn:hover,.btn--primary:hover,.btn-lvl:hover{transform:none}}/* components/footer */.footer{padding-block:30px;color:#bdc9d9;background:#071223;font-size:.9rem}.footer strong,.footer a{color:white}.foot--compact{font-family:Manrope,system-ui,sans-serif;font-size:.91rem;font-weight:400;line-height:1.62;letter-spacing:normal;border-top:1px solid rgba(201,162,74,.28);padding:30px 0!important;background:#071223!important;color:#bdc9d9!important}.footer-menu{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:28px;padding-bottom:28px;margin-bottom:24px;border-bottom:1px solid rgba(255,255,255,.14)}.footer-menu__group h2{letter-spacing:-.005em;margin:0 0 14px;color:var(--gold);font:800 1rem/1.2 Arial,sans-serif}.footer-menu__group ul{display:grid;gap:9px;margin:0;padding:0;list-style:none}.footer-menu__group a{color:#bdc9d9!important;text-decoration:none}.footer-menu__group a:hover{color:#fff!important;text-decoration:underline}.foot-compact__main{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(180px,.7fr) minmax(0,1fr);gap:16px 28px;align-items:start}.foot-compact__main>div{display:grid;gap:3px}.foot-compact__main strong,.foot-compact__main a,.foot-compact__phone,.foot-compact__legal a{color:#fff!important}.foot-compact__phone{font-weight:800;text-decoration:none;white-space:nowrap}.foot-compact__policy{display:grid!important;gap:4px;font-size:.82rem}.foot-compact__legal{display:flex;justify-content:space-between;gap:18px;margin-top:14px;padding-top:14px;border-top:1px solid rgba(255,255,255,.14);font-size:.82rem}@media(max-width:980px){.footer-menu{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:767px){.foot--compact{padding-bottom:calc(70px + env(safe-area-inset-bottom)) !important}.footer-menu{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 20px}.foot-compact__main{grid-template-columns:1fr}.foot-compact__policy{grid-column:auto!important}.foot-compact__legal{display:grid}.foot-compact__phone{font-size:1.08rem}}@media(max-width:480px){.footer-menu{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 16px}.footer-menu__group h2{margin-bottom:10px}.footer-menu__group ul{gap:0}.foot--compact .footer-menu__group a{display:inline-flex;align-items:center;min-height:40px;line-height:1.35}}.foot--compact .footer-menu__group{margin:0;padding:0;border:0;min-width:0}.foot--compact .footer-menu__group li{margin:0;padding:0;border:0;list-style:none}.foot--compact p{margin:0;max-width:none}.foot--compact .footer-menu__group a{padding:0}.foot--compact .foot-compact__main>div{min-width:0}.foot--compact>.wrap{width:100%;max-width:1220px;margin-inline:auto;padding-inline:24px;box-sizing:border-box}@media(max-width:767px){.foot--compact>.wrap{padding-inline:16px}}.foot-compact__address,.foot-compact__hours{font-size:.82rem}.foot-compact__email{overflow-wrap:anywhere}.foot-compact__legal>span{max-width:52%}.foot-compact__legal>a{text-align:right}@media(max-width:767px){.foot-compact__main{gap:20px}.foot-compact__legal>span{max-width:none}.foot-compact__legal>a{text-align:left}}.footer-menu__group a[aria-disabled="true"]{pointer-events:none;cursor:default}/* Shared mobile contact hierarchy, independent of regional text lengths. */@media(max-width:767px){.foot--compact .foot-compact__main{gap:12px}.foot-compact__location{line-height:1.4}.foot-compact__area{font-size:1.05rem;line-height:1.35}.foot-compact__address{font-size:.82rem;line-height:1.4}.foot--compact .foot-compact__contacts{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:4px 12px;align-items:center}.foot--compact .foot-compact__contacts .foot-compact__phone{grid-column:1/-1;font-size:1.25rem;line-height:1.5;color:var(--gold) !important}.foot-compact__email,.foot-compact__hours{font-size:.81rem;line-height:1.4}.foot-compact__hours{text-align:right}.foot--compact .foot-compact__policy{display:flex!important;flex-wrap:wrap;gap:4px 16px;font-size:.8rem;line-height:1.45;padding-top:4px}.foot-compact__policy a{padding-block:4px}.foot--compact .foot-compact__legal{margin-top:10px;padding-top:12px;gap:8px;font-size:.78rem;line-height:1.45}.foot-compact__legal>a{padding-block:4px}}.foot-compact__time{white-space:nowrap}.foot--compact .foot-compact__phone{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline;text-underline-offset:4px}/* components/footer-documents */.foot--compact .foot-compact__main>.foot-compact__policy{display:grid!important;gap:4px;align-content:start;justify-items:start}.foot--compact .foot-compact__policy>a{display:inline-flex;align-items:center;min-height:28px;padding:2px 0;line-height:1.5;text-decoration:underline!important;text-decoration-thickness:1px;text-underline-offset:4px;text-decoration-color:#91a1b7}.foot--compact .foot-compact__policy>a:hover{color:#e5c87a!important;text-decoration-color:currentColor}.foot--compact .foot-compact__policy>a:focus-visible{outline:2px solid #e5c87a;outline-offset:4px;border-radius:2px}@media(max-width:767px){.foot--compact .foot-compact__main>.foot-compact__policy{display:grid!important;gap:4px;justify-items:start}.foot--compact .foot-compact__policy>a{min-height:44px}}/* components/request-status */.request-status{padding:12px 0;margin:8px 0 0;line-height:1.5;overflow-wrap:anywhere}.request-status[data-error="true"]{color:#a83820}[data-request-form] button:disabled{opacity:.65;cursor:wait}/* components/request-layout */form[data-request-form]{display:grid;gap:20px}form[data-request-form] .form__row{display:grid;gap:20px}form[data-request-form] .field{display:grid;gap:8px;min-width:0}form[data-request-form] .field>label{display:block;margin:0;font-size:var(--ses-type-secondary);font-weight:700;line-height:1.35}form[data-request-form] .field input:not([type="checkbox"]),form[data-request-form] .field select,form[data-request-form] .field textarea{display:block;box-sizing:border-box;width:100%;min-width:0;max-width:100%;min-height:48px;padding:12px 14px;border:1px solid var(--ses-border,#aab4c2);border-radius:8px;background:var(--ses-paper,#fff);color:var(--ses-ink,#0b1b34);font:inherit;line-height:1.35}form[data-request-form] .field input:focus-visible,form[data-request-form] .field select:focus-visible,form[data-request-form] .field textarea:focus-visible{outline:3px solid rgba(216,123,22,.28);outline-offset:1px;border-color:var(--ses-primary,#c94716)}form[data-request-form] .field input[type="file"]{min-height:52px;padding:8px;border-style:dashed;font-size:var(--ses-type-secondary);cursor:pointer}form[data-request-form] .field input[type="file"]::file-selector-button{min-height:34px;margin-right:10px;padding:6px 10px;border:1px solid var(--ses-border,#aab4c2);border-radius:6px;background:var(--ses-paper,#fff);color:var(--ses-ink,#0b1b34);font:inherit;font-weight:700;cursor:pointer}form[data-request-form] .field__help{margin:0;color:var(--ses-muted,#536176);font-size:var(--ses-type-secondary);line-height:1.45}form[data-request-form]>.button{justify-self:start;min-width:190px}@media(max-width:560px){form[data-request-form]>.button{width:100%}}@media(min-width:720px){form[data-request-form] .form__row--2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:1024px){form[data-request-form]{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:20px}form[data-request-form] .form__row{display:contents}form[data-request-form] .field,form[data-request-form]>div:not([hidden]){min-width:0;grid-column:auto}form[data-request-form] .field:has(>textarea),form[data-request-form] .field:has(>input[type="file"]),form[data-request-form]:has(select[name="task"]) .field:has(>input[name="object"]),form[data-request-form]:has(select[name="task"])>div:has(>input[name="object"]),form[data-request-form]>.request-consent,form[data-request-form]>button,form[data-request-form]>.request-status{grid-column:1/-1}form[data-request-form] input:not([type="checkbox"]),form[data-request-form] select,form[data-request-form] textarea{min-width:0;max-width:100%}}/* components/analytics-consent */.analytics-choice{position:fixed;z-index:10000;bottom:16px;right:16px;left:auto;width:calc(100% - 32px);max-width:520px;box-sizing:border-box;padding:20px;background:#fff;color:#172c47;border:1px solid #aab5c2;border-radius:14px;box-shadow:0 8px 36px #07122333;font:15px/1.5 Arial,sans-serif}.analytics-choice[hidden],.analytics-choice [hidden]{display:none!important}.analytics-choice p{margin:0 0 14px}.analytics-choice p:last-child{margin-bottom:0}.analytics-choice a{color:#92341f;text-decoration:underline}.analytics-choice__actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.analytics-choice [data-view="settings"] .analytics-choice__actions{grid-template-columns:repeat(2,minmax(0,1fr))}.analytics-choice button{flex:1 1 120px;min-width:0;min-height:44px;padding:10px 14px;border:1px solid #172c47;border-radius:8px;background:#fff;color:#172c47;font:700 15px Arial,sans-serif;cursor:pointer}.analytics-choice button:hover{background:#f1f4f7}.analytics-choice button:focus-visible,.analytics-choice input:focus-visible,.analytics-choice a:focus-visible{outline:3px solid #c9a24a;outline-offset:3px}.analytics-choice--settings{max-height:calc(100dvh - 32px);overflow-y:auto;overscroll-behavior:contain}.analytics-choice__option{display:flex;align-items:flex-start;gap:12px;margin:18px 0;cursor:pointer}.analytics-choice__option input{flex:none;width:20px;height:20px;margin:3px 0 0;accent-color:#172c47}.analytics-choice__option span{display:block}.analytics-choice__option strong{display:block;margin-bottom:3px}.analytics-choice__option:has(input:disabled){color:#56677b;cursor:default}.analytics-choice__help{font-size:13px;color:#46586c}.analytics-choice .analytics-choice__error{margin-top:16px;padding-top:12px;border-top:1px solid #aab5c2;color:#92341f}@media(max-width:480px){.analytics-choice{bottom:8px;right:8px;left:auto;width:calc(100% - 16px);padding:16px;font-size:14px}.analytics-choice--settings{max-height:calc(100dvh - 16px)}}@media(max-width:400px){.analytics-choice__actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.analytics-choice button{padding:9px 5px;font-size:13px}}/* components/links *//* Shared link affordances. Preserve the established navy, white and gold palette. */:root{--link-line:currentColor;--link-focus-light:#fff;--link-focus-dark:#0b1b34}html body a[href]:focus-visible{outline:2px solid var(--link-focus-light) !important;outline-offset:2px;box-shadow:0 0 0 5px var(--link-focus-dark) !important;border-radius:3px}:where(main,article,.article,.reading) :where(p,li,dd,td)>a:not(:where(.btn,.button,.text-action,.owner-hero-action,.brand,.mark,.card,.service-card,.chip,.related a)),:where(.ledger,.breadcrumbs,.crumbs,.toc,.catalog-bottom,.link-columns) a[href],footer a[href]:not(:where(.brand,.mark,.button,.btn)),a[href^="tel:"]:not(:where(.btn,.button,.owner-hero-action,.call,.nf-contact,.site-header__call)),a[href^="mailto:"]{text-decoration-line:underline!important;text-decoration-thickness:1px;text-underline-offset:.23em;text-decoration-color:var(--link-line);text-decoration-skip-ink:auto}:where(main,article,.article,.reading) :where(p,li,dd,td)>a:not(:where(.btn,.button,.text-action,.owner-hero-action,.brand,.mark,.card,.service-card,.chip,.related a)):hover,:where(.ledger,.breadcrumbs,.crumbs,.toc,.catalog-bottom,.link-columns) a:hover,footer a[href]:not(:where(.brand,.mark,.button,.btn)):hover,a[href^="tel:"]:not(:where(.btn,.button,.owner-hero-action,.call,.nf-contact,.site-header__call)):hover,a[href^="mailto:"]:hover{text-decoration-thickness:2px}/* One navigation-link treatment for every city and header layout. */:is(.site-nav,.site-menu nav,.nav,.desktop-nav,.mobile-menu nav) a{display:flex;align-items:center;min-height:44px;padding:7px 0;border-bottom:1px solid transparent;color:#0b1b34;font-size:15px;font-weight:700;line-height:1.5;text-decoration:none;white-space:nowrap;transition:border-color .18s ease}:is(.site-nav,.site-menu nav,.nav,.desktop-nav,.mobile-menu nav) a:is(:hover,[aria-current="page"],[data-active]){color:#0b1b34;border-bottom-color:#c9a24a;text-decoration:none}.footer-menu a:hover{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:.3em}a.card:hover h3,a.card:focus-visible h3,.service-card:hover strong,.service-card:focus-visible strong,.related a:hover,.related a:focus-visible{text-decoration:underline;text-underline-offset:.2em}a.card:focus-visible,.service-card:focus-visible{border-color:#6e5011}.related a:focus-visible::after{outline:2px solid #0b1b34;outline-offset:3px}.footer nav a:hover,.footer-bottom a:hover,.foot--compact .footer-menu a:hover{color:#e6ce94!important}.foot--compact .foot-compact__policy{--link-line:#91a1b7}@media(max-width:767px){:where(.footer-menu__group,.footer nav,.legal-nav,.toc,.breadcrumbs,.crumbs,.link-columns,.ledger) a[href]:not(:where(.brand,.mark)){display:inline-flex;align-items:center;min-height:44px;padding-block:8px}.footer nav:not(.footer-menu) a[href]{display:inline-flex;align-items:center;min-height:44px;padding-block:8px}.footer nav:not(.footer-menu){gap:4px}.breadcrumbs ol,.crumbs ol{align-items:center}.catalog-bottom{flex-wrap:wrap}.catalog-bottom a{display:inline-flex;align-items:center;min-height:44px}}/* components/utilities *//* Small shared utilities, loaded last. Normal declarations preserve responsive
   component overrides; do not raise all utilities to !important. */.u-mt-0{margin-top:0}.u-mt-6{margin-top:6px}.u-mt-8{margin-top:8px}.u-mt-12{margin-top:12px}.u-mt-16{margin-top:16px}.u-mt-24{margin-top:24px}.u-mt-26{margin-top:26px}.u-mt-32{margin-top:32px}.u-mt-40{margin-top:40px}.u-mt-48{margin-top:48px}.u-mt-56{margin-top:56px}.u-max-380{max-width:380px}.u-max-860{max-width:860px}.u-max-900{max-width:900px}.u-max-68ch{max-width:68ch}.u-grid{display:grid}.u-nowrap{white-space:nowrap}.svg-symbols{display:none}.text-note{color:var(--ink-2);font-size:var(--step--1)}.price-note{font-size:var(--ses-type-secondary);color:var(--text-2)}.calc__sum .calc-total{font-size:var(--step-3)}form[data-request-form] .request-consent{display:flex;align-items:flex-start;gap:9px;grid-column:1/-1;font-size:16px;line-height:1.45;margin:8px 0}.request-consent>input[type="checkbox"]{width:18px!important;height:18px!important;min-width:18px;padding:0!important;margin:1px 0 0;flex:0 0 18px}.request-consent a{color:inherit;text-decoration:underline}.request-status__contacts{display:block;margin-top:12px}