/* One visual contract for the public SPb portal. Assets are self-hosted. */
@font-face{font-family:PP Manrope;src:url(fonts/manrope-cyrillic.woff2) format('woff2');font-weight:400 800;font-style:normal;font-display:swap;unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:PP Manrope;src:url(fonts/manrope-latin.woff2) format('woff2');font-weight:400 800;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:PP Unbounded;src:url(fonts/unbounded-cyrillic.woff2) format('woff2');font-weight:500 800;font-style:normal;font-display:swap;unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:PP Unbounded;src:url(fonts/unbounded-latin.woff2) format('woff2');font-weight:500 800;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
html[data-pp-design]{
 --pp-body:'PP Manrope',sans-serif;--pp-display:'PP Unbounded',sans-serif;
 --pp-ink:#102f3c;--pp-muted:#506973;--pp-ocean:#116b78;--pp-coral:#ff6b4a;
 --pp-paper:#f8faf9;--pp-mint:#e8f3f0;--pp-line:#d8e4e1;
 --pp-radius:20px;--pp-control:12px;--pp-width:1200px;
 scroll-padding-top:100px;color-scheme:light;background:var(--pp-paper)!important;
}
html[data-pp-design] body{
 --font-body:var(--pp-body);--font-display:var(--pp-display);
 --c-body:var(--pp-body);--c-display:var(--pp-display);
 --c-surface:var(--pp-paper);--c-foam:var(--pp-mint);--c-ink:var(--pp-ink);--c-muted:var(--pp-muted);--c-ocean:var(--pp-ocean);
 --surface:var(--pp-paper);--foam:var(--pp-mint);--deep:var(--pp-ink);--abyss:var(--pp-ink);--ink:var(--pp-ink);--ocean:var(--pp-ocean);
 --radius-lg:20px;--radius-md:20px;--radius-sm:12px;--r:20px;
 margin:0!important;padding-top:0!important;background:var(--pp-paper)!important;color:var(--pp-ink)!important;
 font-family:var(--pp-body)!important;font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased;
}
html[data-pp-design] :is(div,p,a,span,li,button,input,select,textarea,label,small,strong,summary,th,td,blockquote,figcaption){font-family:var(--pp-body)!important}
html[data-pp-design] :is(h1,h2,h1 *,h2 *, .h1-display,.h2-display){font-family:var(--pp-display)!important;font-style:normal!important;letter-spacing:-.045em!important}
html[data-pp-design] h1{font-size:clamp(30px,3.8vw,50px)!important;font-weight:650!important;line-height:1.2!important;overflow-wrap:anywhere}
html[data-pp-design] h2{font-size:clamp(23px,2.6vw,32px)!important;font-weight:600!important;line-height:1.3!important;overflow-wrap:anywhere}
html[data-pp-design] :is(h3,h4){font-family:var(--pp-body)!important;font-weight:800!important;letter-spacing:-.025em!important;line-height:1.35}
html[data-pp-design] :is(.card h2,.result-card h2,.article-card h2,.mini-card h2){font-family:var(--pp-body)!important;font-size:22px!important;font-weight:800!important;letter-spacing:-.025em!important;line-height:1.35!important}
html[data-pp-design] :is(.kicker,.eyebrow,.home-hero-kicker,.selection-answer-label,.catalog-answer-label,.art-answer-label){font:700 12px/1.6 var(--pp-body)!important;letter-spacing:.09em!important;text-transform:uppercase!important;color:var(--pp-ocean)!important}
html[data-pp-design] :is(a,button,input,select,textarea,summary):focus-visible{outline:3px solid var(--pp-ocean)!important;outline-offset:4px!important}
html[data-pp-design] [data-pp-legacy-chrome]{display:none!important}
/* r13: the document is themed by the server before any deferred JS executes.
   Keep native navigation readable while the shared shell is still loading. */
html[data-pp-design] :is(.hdr,.partner-topbar,header.fixed,.site-header,.aqcd-header,.aqs-header,.as-header,.atl-topbar,.hlsn-header,.mrl-header,.lap360-header,.tt-topbar){background:#fff!important;color:var(--pp-ink)!important;border-color:var(--pp-line)!important;backdrop-filter:none!important}
html[data-pp-design] :is(.hdr,.partner-topbar,header.fixed,.site-header,.aqcd-header,.aqs-header,.as-header,.atl-topbar,.hlsn-header,.mrl-header,.lap360-header,.tt-topbar) :is(a,button,span){color:var(--pp-ink)!important}
html[data-pp-design] .districts-page .d-card{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:68px;padding:18px 22px;background:#fff!important;border:1px solid var(--pp-line)!important;border-radius:18px;color:var(--pp-ink)!important;text-decoration:none;box-shadow:0 4px 16px #102f3c06}
html[data-pp-design] .districts-page .d-card:is(:hover,:focus-visible){background:var(--pp-mint)!important;border-color:var(--pp-ocean)!important}
html[data-pp-design] .districts-page .d-name{color:var(--pp-ink)!important;font-weight:750;line-height:1.4}
html[data-pp-design] .districts-page .d-count{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;min-width:32px;height:32px;background:var(--pp-mint)!important;color:#075f70!important;border-radius:50%;font-weight:800}
html[data-pp-design] :is(.concept-atmosphere,.concept-depth-meter,.depth-bg,.depth-noise,.depth-meter){display:none!important}

/* Same actual logo, layout, links and disclosure menu on every template. */
html[data-pp-design] .pp-shell-header{position:sticky!important;top:0!important;z-index:2000!important;width:100%!important;margin:0!important;padding:0!important;border:0!important;border-bottom:1px solid var(--pp-line)!important;border-radius:0!important;background:#fff!important;box-shadow:none!important;color:var(--pp-ink)!important}
html[data-pp-design] .pp-shell-inner{box-sizing:border-box;max-width:1280px;min-height:84px;padding:12px 32px;margin:auto;display:flex;align-items:center;gap:36px}
html[data-pp-design] .pp-brand{display:inline-flex!important;align-items:center!important;gap:10px!important;flex-shrink:0;text-decoration:none!important;color:var(--pp-ink)!important;min-height:44px}
html[data-pp-design] .pp-brand span{font:700 18px/1 var(--pp-display)!important;letter-spacing:-.055em!important}
html[data-pp-design] .pp-brand svg{width:36px!important;height:36px!important;min-width:36px;max-width:none;display:block}
html[data-pp-design] .pp-shell-nav{display:flex;align-items:center;justify-content:flex-end;gap:4px;flex:1}
html[data-pp-design] .pp-shell-nav a{display:flex;align-items:center;min-height:44px;padding:10px 12px;border-radius:10px;color:var(--pp-ink)!important;font:700 14px/1.3 var(--pp-body)!important;text-decoration:none!important;white-space:nowrap}
html[data-pp-design] .pp-shell-nav a:is(:hover,[aria-current]){background:var(--pp-mint)!important}
html[data-pp-design] .pp-shell-nav .pp-nav-match{margin-left:12px;background:var(--pp-coral)!important;border-radius:var(--pp-control)!important;padding-inline:18px;color:var(--pp-ink)!important}
html[data-pp-design] .pp-menu-toggle{display:none;align-items:center;justify-content:center;flex-direction:column;gap:5px;width:44px;height:44px;padding:10px;background:var(--pp-mint);border:1px solid var(--pp-line);border-radius:var(--pp-control);color:var(--pp-ink)}
html[data-pp-design] .pp-menu-toggle span{height:2px;width:20px;background:currentColor;border-radius:1px}
html[data-pp-design] .pp-shell-footer{display:block!important;position:relative!important;width:100%!important;margin:64px 0 0!important;padding:0!important;background:var(--pp-ink)!important;color:#fff!important;border:0!important;border-radius:0!important}
html[data-pp-design] .pp-footer-inner{box-sizing:border-box;max-width:1280px;margin:auto;padding:52px 32px;display:grid;grid-template-columns:1fr 1fr 1fr;gap:40px}
html[data-pp-design] .pp-shell-footer .pp-brand{color:#fff!important}
html[data-pp-design] .pp-shell-footer p{margin:16px 0 0;color:#c9dcd9!important;font:400 14px/1.8 var(--pp-body)!important}
html[data-pp-design] .pp-footer-city{display:block;margin-top:12px;font-size:12px;color:#c9dcd9}
html[data-pp-design] .pp-footer-inner nav{display:grid;grid-template-columns:1fr 1fr;gap:4px 20px;align-content:start}
html[data-pp-design] .pp-shell-footer a:not(.pp-brand){display:inline-flex;align-items:center;min-height:40px;font:600 14px/1.5 var(--pp-body)!important;color:#fff!important;text-decoration:none}
html[data-pp-design] .pp-shell-footer a:hover{text-decoration:underline}
html[data-pp-design] .pp-footer-bottom{box-sizing:border-box;display:flex;justify-content:space-between;align-items:center;gap:20px;max-width:1216px;margin:auto;padding:20px 0;border-top:1px solid #ffffff26;font-size:12px;color:#c9dcd9}
html[data-pp-design] .pp-center-nav{box-sizing:border-box;display:flex;gap:8px;overflow-x:auto;padding:12px max(20px,calc((100% - 1200px)/2));background:#fff;border-bottom:1px solid var(--pp-line)}
html[data-pp-design] .pp-center-nav a{display:inline-flex;align-items:center;flex-shrink:0;min-height:44px;padding:8px 12px;border-radius:10px;color:var(--pp-ocean);font-size:14px;font-weight:700;text-decoration:none}
html[data-pp-design] .pp-center-nav a:hover{background:var(--pp-mint)}
html[data-pp-design] .pp-center-disclosure{box-sizing:border-box;max-width:1216px;margin:0 auto!important;padding:24px 0!important;background:transparent!important;border:0!important;border-bottom:1px solid #ffffff26!important;color:#fff!important}
html[data-pp-design] .pp-center-disclosure p{margin:0 0 8px!important}
html[data-pp-design] .pp-center-disclosure a{margin-right:24px}

/* One palette, spacing and reading rhythm. Explicitly covers partner templates. */
html[data-pp-design] :is(.page-hero,.cat-head,.article-head,.detail-hero,.home-hero){background:var(--pp-mint)!important;color:var(--pp-ink)!important;padding-top:52px!important;padding-bottom:52px!important;margin-top:0!important}
html[data-pp-design] :is(.page-hero,.cat-head,.article-head,.detail-hero,.home-hero) :is(h1,h2,p,.breadcrumb,.home-hero-kicker){color:var(--pp-ink)!important}
html[data-pp-design] .home-hero{min-height:0!important}
html[data-pp-design][data-pp-view="home"] main[class~="pt-[84px]"]{padding-top:0!important}
html[data-pp-design] .home-hero-title{max-width:980px;margin-inline:auto!important}
html[data-pp-design] .home-hero-title span{color:inherit!important}
html[data-pp-design] .home-hero-content{max-width:1200px!important}
html[data-pp-design] .home-hero-lead{max-width:660px!important;font-size:18px!important;line-height:1.7!important}
html[data-pp-design] :is(.home-hero>.pointer-events-none,.home-hero-title svg,.hand-note){display:none!important}
html[data-pp-design] .home-hero .pp-integration{margin:28px auto!important;max-width:640px!important}
html[data-pp-design] :is(.cat-results,.catalog-page,.districts-page,.detail-body,.similar-section,.map-page,.map-block){background:var(--pp-paper)!important}
html[data-pp-design] :is(.cat-head,.page-hero,.article-head,.detail-hero) h1{max-width:1000px}
html[data-pp-design] :is(.container,.shell){max-width:var(--pp-width)}
html[data-pp-design] .app-shell{padding-top:40px!important}
html[data-pp-design] .panel{border-radius:var(--pp-radius)!important;border:1px solid var(--pp-line)!important;background:#fff!important;box-shadow:none!important}
html[data-pp-design] :is(.card,.article-card,.result-card,.detail-section,.info-card,.action-card,.catalog-answer,.selection-answer,.map-list,.hero-search-panel){border-radius:var(--pp-radius)!important;border:1px solid var(--pp-line)!important;background:#fff!important;box-shadow:0 4px 16px #102f3c06!important;color:var(--pp-ink)!important}
html[data-pp-design] :is(.card-name,.article-card-title,.card h3,.result-card h2){color:var(--pp-ink)!important}
html[data-pp-design] :is(.card-meta,.card-foot,.article-card-lead,.address,.lead,.muted,.article-meta){color:var(--pp-muted)!important}
html[data-pp-design] :is(.catalog-answer,.selection-answer,.art-answer,.art-method,.verification-note,.context-note){background:var(--pp-mint)!important;color:var(--pp-ink)!important;border-color:var(--pp-line)!important;border-radius:16px!important}
html[data-pp-design] .article-body{border:0!important;border-radius:0!important;box-shadow:none!important;background:var(--pp-paper)!important}
html[data-pp-design] .article-body>.container{max-width:880px!important}
html[data-pp-design] .article-body p{font-size:17px!important;line-height:1.85!important}
html[data-pp-design] :is(.catalog-answer-wrap,.selection-answer-wrap){background:var(--pp-paper)!important}
html[data-pp-design] :is(.breadcrumb,.breadcrumb *){color:var(--pp-muted)!important}
html[data-pp-design] .partner-hero-muted{color:var(--pp-ocean)!important;opacity:1!important}
html[data-pp-design] :is(.blog-card,.partner-proof,.empty-state,.compare-table){border:1px solid var(--pp-line)!important;border-radius:var(--pp-radius)!important;background:#fff!important;color:var(--pp-ink)!important;box-shadow:none!important}
html[data-pp-design] :is(.blog-card,.partner-proof,.empty-state,.compare-table) :is(p,span,h2,h3,a,th,td){color:var(--pp-ink)!important}
html[data-pp-design] :is(.partner-proof>*,.blog-card-body){background:#fff!important}
html[data-pp-design] :is(.about-page,.b2b-page) :is(.partner-hero,.partner-soft-section,.partner-section--ink){background:var(--pp-mint)!important;color:var(--pp-ink)!important}
html[data-pp-design] :is(.about-page,.b2b-page) :is(.partner-hero,.partner-soft-section,.partner-section--ink) :is(h1,h2,h3,p,span,li){color:var(--pp-ink)!important}
html[data-pp-design] :is(.about-page,.b2b-page) :is(.partner-hero::before,.partner-hero::after){display:none!important}

/* Every action uses the same shape/weight; variants communicate hierarchy. */
html[data-pp-design] :is(.button,.btn-pill,.btn-primary,.hero-search-submit,.pp-integration__cta,.partner-btn,.partner-button,.partner-cta,.aqcd-btn,.ab-btn,.aqs-btn,.as-btn,.atl-btn,.bk-btn,.hlsn-btn,.hs-btn,.mrl-btn,.sv-btn,.lap360-btn,.tt-btn){box-sizing:border-box!important;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px!important;padding:12px 20px!important;border:1px solid transparent!important;border-radius:var(--pp-control)!important;background:var(--pp-coral)!important;color:var(--pp-ink)!important;font:800 15px/1.45 var(--pp-body)!important;text-decoration:none!important;letter-spacing:0!important;text-transform:none!important;box-shadow:none!important;white-space:normal!important;max-width:100%;text-align:center;transition:background .15s,border-color .15s}
html[data-pp-design] :is(.button,.btn-pill,.btn-primary,.pp-integration__cta):hover{background:#ff856a!important}
html[data-pp-design] :is(.button-secondary,.button-quiet,.btn-pill--light,.btn-pill--ghost,.btn-secondary,.partner-btn--ghost){background:transparent!important;border-color:var(--pp-line)!important;color:var(--pp-ink)!important}
html[data-pp-design] :is(.button-secondary,.button-quiet,.btn-pill--light,.btn-pill--ghost,.btn-secondary):hover{background:var(--pp-mint)!important;border-color:var(--pp-ocean)!important}
html[data-pp-design] :is(button,input,select,textarea):disabled{opacity:.55;cursor:not-allowed}
html[data-pp-design] :is(.chip,.chip-mini,.tag,.summary-pills li,.age-badge){border-radius:10px!important;background:#fff!important;border:1px solid var(--pp-line)!important;color:var(--pp-ink)!important;font:600 14px/1.5 var(--pp-body)!important}
html[data-pp-design] :is(.chip,.chip-mini){min-height:44px!important}
html[data-pp-design] :is(.chip.is-active,.chip-mini.is-active){background:var(--pp-ink)!important;color:#fff!important;border-color:var(--pp-ink)!important}
html[data-pp-design] :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea){border:1px solid var(--pp-line)!important;border-radius:var(--pp-control)!important;background:#fff!important;color:var(--pp-ink)!important;min-height:48px!important;font:500 16px/1.5 var(--pp-body)!important;box-shadow:none!important}
html[data-pp-design] .pp-integration{border-radius:var(--pp-radius)!important;border:1px solid var(--pp-line)!important;background:#fff!important;color:var(--pp-ink)!important;font-family:var(--pp-body)!important;box-shadow:none!important}
html[data-pp-design] .pp-integration__note{color:var(--pp-muted)!important;font-size:15px!important;line-height:1.65!important}
html[data-pp-design] .pp-integration__return{color:var(--pp-ocean)!important}
html[data-pp-design] .results-cta{background:var(--pp-mint)!important;border:1px solid var(--pp-line)!important;border-radius:var(--pp-radius)!important}
html[data-pp-design] .results-cta :is(h2,p){color:var(--pp-ink)!important}
html[data-pp-design][data-pp-view="content"] .partner-soft-section{background:var(--pp-mint)!important;color:var(--pp-ink)!important}

@media(max-width:1100px){
 html[data-pp-design] .pp-shell-inner{min-height:72px;padding:12px 24px;justify-content:space-between}
 html[data-pp-design] .pp-menu-toggle{display:flex}
 html[data-pp-design] .pp-shell-nav{display:none;position:absolute;inset:100% 0 auto;padding:16px 24px 24px;max-height:calc(100dvh - 72px);overflow:auto;background:#fff;border-bottom:1px solid var(--pp-line);box-shadow:0 16px 24px #102f3c12;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:4px}
 html[data-pp-design] [data-menu-open] .pp-shell-nav{display:flex}
 html[data-pp-design] .pp-shell-nav a{min-height:48px;font-size:16px!important}
 html[data-pp-design] .pp-shell-nav .pp-nav-match{margin:12px 0 0;justify-content:center}
 html[data-pp-design] .pp-footer-inner{grid-template-columns:1fr 1fr}
 html[data-pp-design] .pp-footer-contact{grid-column:1/-1}
 html[data-pp-design] .pp-footer-bottom{margin-inline:32px}
 html[data-pp-design] .pp-center-disclosure{margin-inline:24px!important}
}
@media(max-width:640px){
 html[data-pp-design] .pp-shell-inner{padding-inline:20px}
 html[data-pp-design] .pp-brand span{font-size:17px!important}
 html[data-pp-design] :is(.home-hero,.page-hero,.cat-head,.article-head,.detail-hero){padding-top:36px!important;padding-bottom:36px!important}
 html[data-pp-design] h1{font-size:28px!important;line-height:1.25!important;letter-spacing:-.05em!important}
 html[data-pp-design] .home-hero-title{font-size:28px!important}
 html[data-pp-design] h2{font-size:23px!important}
 html[data-pp-design] .home-hero-lead{font-size:16px!important}
 html[data-pp-design] .pp-footer-inner{grid-template-columns:1fr;padding:36px 20px;gap:28px}
 html[data-pp-design] .pp-footer-contact{grid-column:auto}
 html[data-pp-design] .pp-footer-bottom{margin-inline:20px;align-items:flex-start;flex-direction:column;gap:8px}
 html[data-pp-design] .pp-shell-footer{margin-top:40px!important}
 html[data-pp-design] .app-shell{padding-top:28px!important}
}
/* Usability corrections: do not create a body scroll container above sticky chrome. */
html[data-pp-design][data-pp-view="home"] body{overflow-x:clip!important;overflow-y:visible!important}
html[data-pp-design] .pp-compact-filters{display:none}
html[data-pp-design] .pp-collection-actions{flex-wrap:wrap;overflow:visible;align-items:center}
html[data-pp-design] .pp-collection-notice{box-sizing:border-box;max-width:1240px;margin:12px auto;padding:12px 20px;color:var(--pp-muted);font-size:14px}
html[data-pp-design] .compare-table td{white-space:pre-line}
html[data-pp-design] .collection-card--unavailable{padding:24px}
html[data-pp-design] .collection-card--unavailable .collection-remove{position:static;margin-top:12px}
html[data-pp-design] .pp-collection-actions button[aria-pressed="true"]{background:var(--pp-mint)!important;border-color:var(--pp-ocean)!important}
html[data-pp-design] .cat-toolbar{position:relative!important;top:auto!important}
/* A collection-card overlay must not position every table remove action at one point. */
html[data-pp-design] .compare-table{min-width:100%!important}
html[data-pp-design] .compare-table :is(th,td){vertical-align:top;overflow-wrap:anywhere}
html[data-pp-design] .compare-table :is(th,td):not(:first-child){min-width:180px}
html[data-pp-design] .compare-table th:first-child{min-width:140px;white-space:nowrap}
html[data-pp-design] .compare-table .collection-remove{position:static!important;display:flex!important;align-items:center;justify-content:center;min-height:44px;margin:12px 0 0!important;padding:8px 12px;border:1px solid var(--pp-line);border-radius:10px;background:var(--pp-mint);color:var(--pp-ink)!important}
html[data-pp-design] .pp-catalog-help{max-width:1200px;margin:16px auto;padding:0 20px;box-sizing:border-box}
html[data-pp-design] .pp-catalog-help>summary{padding:12px 0;min-height:44px;box-sizing:border-box;cursor:pointer;font-weight:700;color:var(--pp-ocean)}
html[data-pp-design] .pp-catalog-help .catalog-answer-wrap{padding:12px 0!important}
html[data-pp-design] .pp-catalog-help .container{padding:0!important}
@media(max-width:640px){
 html[data-pp-design] .pp-collection-actions button{flex:1 1 145px}
 html[data-pp-design] .pp-collection-actions a{font-size:13px;padding-inline:8px}
 html[data-pp-design][data-pp-view="home"] .home-hero-ages{flex-wrap:wrap;justify-content:center;overflow:visible;padding-inline:0;gap:8px}
 html[data-pp-design] .pp-compact-ready .chips-row{display:none!important}
 html[data-pp-design] .pp-compact-filters{display:grid;width:100%;gap:12px;grid-template-columns:1fr 1fr}
 html[data-pp-design] .pp-compact-filters label{display:grid;gap:4px;min-width:0;font-size:13px;font-weight:700;color:var(--pp-muted)}
 html[data-pp-design] .pp-compact-filters label:first-child{grid-column:1/-1}
 html[data-pp-design] .pp-compact-filters select{width:100%;max-width:100%;padding:10px 8px}
 html[data-pp-design] .cat-toolbar.pp-compact-ready .toolbar-in{gap:12px}
}
@media(prefers-reduced-motion:reduce){html[data-pp-design] *{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* Home is a descent, not a stack of catalogue panels. Each scene owns its
   surface and text contrast, independently of scroll-driven decoration. */
/* Loading canvas stays light; each ocean section owns its intended dark/light background. */
html[data-pp-design][data-pp-view="home"] body{background:var(--pp-paper)!important}
html[data-pp-design][data-pp-view="home"] .container-x{max-width:1280px}
html[data-pp-design][data-pp-view="home"] canvas[style*="position: fixed"]{z-index:20!important;pointer-events:none!important;opacity:.55}
html[data-pp-design][data-pp-view="home"] .home-hero{
 background:radial-gradient(ellipse at 50% 0%,#fff 0%,#effcf7 44%,transparent 75%),linear-gradient(#e9fbf6,#cfefe8)!important;
 padding:64px 0 92px!important;min-height:calc(100svh - 85px)!important;isolation:isolate;
}
html[data-pp-design][data-pp-view="home"] .home-hero-content{max-width:1080px!important}
html[data-pp-design][data-pp-view="home"] .home-hero-title{font-size:clamp(32px,3.5vw,48px)!important;line-height:1.18!important;max-width:920px;letter-spacing:-.05em!important}
html[data-pp-design][data-pp-view="home"] .home-hero-title .text-ocean{color:#086879!important}
html[data-pp-design][data-pp-view="home"] .home-hero-kicker{color:#316b71!important;letter-spacing:.1em!important}
html[data-pp-design][data-pp-view="home"] .home-hero-lead{max-width:650px!important;font-size:18px!important;line-height:1.6!important;margin-top:24px!important;color:#31545e!important}
html[data-pp-design][data-pp-view="home"] .home-hero-lead>span:empty{display:none}
html[data-pp-design][data-pp-view="home"] .home-hero-ages{display:none!important}
html[data-pp-design][data-pp-view="home"] .home-hero-search{margin-top:32px!important;max-width:1000px}
html[data-pp-design][data-pp-view="home"] .hero-search-panel{border-radius:24px!important;border-color:#ffffff!important;background:#ffffffed!important;box-shadow:0 14px 40px #135b6812!important}
html[data-pp-design][data-pp-view="home"] .hero-search-cell{border:0!important;border-radius:0!important;min-width:0}
html[data-pp-design][data-pp-view="home"] .hero-search-cell :is(input,select){padding-block:12px!important;border:0!important;background:transparent!important;border-radius:10px!important;min-width:0}
html[data-pp-design][data-pp-view="home"] .home-hero-popular{margin-top:18px!important;gap:8px 16px}
html[data-pp-design][data-pp-view="home"] .home-hero-popular .chip-light{background:transparent;border:0;border-radius:0;min-height:36px;padding:4px 0;font-size:13px;text-decoration:underline;text-decoration-color:#548a8970;text-underline-offset:5px}
html[data-pp-design][data-pp-view="home"] .home-hero-popular>a:nth-last-child(-n+3){display:none}
html[data-pp-design][data-pp-view="home"] .home-hero-stats{margin-top:28px!important;max-width:620px;grid-template-columns:repeat(3,minmax(0,1fr));padding-top:20px;border-top:1px solid #b1dcd2}
html[data-pp-design][data-pp-view="home"] .home-hero-stats>div:nth-child(2){display:none}
html[data-pp-design][data-pp-view="home"] .home-hero-stat-value{font-size:26px!important}
html[data-pp-design][data-pp-view="home"] .home-hero>.pointer-events-none{display:block!important;opacity:1!important;z-index:-1}
html[data-pp-design][data-pp-view="home"] .home-hero>.pointer-events-none:has(>svg){top:20%!important;right:3%!important;transform:rotate(14deg)!important}
html[data-pp-design][data-pp-view="home"] .home-hero>.pointer-events-none:has(>img){bottom:23%!important;left:3%!important}
html[data-pp-design][data-pp-view="home"] .home-hero>.pointer-events-none>img{height:100px}
html[data-pp-design][data-pp-view="home"] .home-hero .hand-note{display:inline-block!important;font-size:18px;font-style:italic;letter-spacing:.03em;color:#086879}
html[data-pp-design][data-pp-view="home"] .home-hero-scroll{bottom:16px;gap:4px}
/* The decorative marquee had an empty, animated spacer between two scenes.
   Keep a continuous water surface here, without an invisible transition. */
html[data-pp-design][data-pp-view="home"] #marquee{display:none!important}

html[data-pp-design][data-pp-view="home"] #ages{height:auto!important;padding:80px 0 72px!important;background:linear-gradient(#cfefe8,#b6e7de)}
html[data-pp-design][data-pp-view="home"] #ages .container-x>div:has([data-age-card]){overflow:visible!important}
html[data-pp-design][data-pp-view="home"] #ages div:has(>[data-age-card]){display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;transform:none!important;width:100%;padding:0}
html[data-pp-design][data-pp-view="home"] #ages [data-age-card]{width:auto!important;min-width:0;border-radius:24px;padding:20px!important;box-shadow:0 10px 24px #0b354308;background:#fffffff2;transition:transform .2s}
html[data-pp-design][data-pp-view="home"] #ages [data-age-card]:hover{transform:translateY(-6px)}
html[data-pp-design][data-pp-view="home"] #ages [data-age-card]>div:has(img){height:auto!important;width:100%!important;aspect-ratio:1}
html[data-pp-design][data-pp-view="home"] #ages [data-age-card] :is(p,a){font-size:13px;line-height:1.7}
html[data-pp-design][data-pp-view="home"] #ages [data-age-card] h3{font-size:21px}
html[data-pp-design][data-pp-view="home"] #ages [data-age-card]>a{margin-top:auto;padding-top:20px;min-height:44px}
html[data-pp-design][data-pp-view="home"] #ages [data-age-card]>a{color:#b83d29!important}
html[data-pp-design][data-pp-view="home"] #ages [data-age-card] p{color:#49626d}
html[data-pp-design][data-pp-view="home"] #ages .container-x>div:has(>[style*="scaleX"]){display:none}
html[data-pp-design][data-pp-view="home"] #catalog{background:linear-gradient(#b6e7de 0%,#89cfc4 65%,#0b5c70 100%)}
html[data-pp-design][data-pp-view="home"] #catalog>.wave-divider{height:40px!important}
html[data-pp-design][data-pp-view="home"] #catalog>.container-x{padding-top:40px;padding-bottom:96px}
/* These two supplied thumbnails are logos, not swimming-pool photos. */
html[data-pp-design][data-pp-view="home"] #catalog img:is([src="/photos/a-fitness-marata_photo.jpg"],[src="/photos/okeanika-detskaya-shkola-plavaniya_photo.jpg"]){object-fit:contain!important;padding:24px;background:#fff;box-sizing:border-box}
html[data-pp-design][data-pp-view="home"] .concept-map{background:linear-gradient(#0b5c70,#10384d);padding-block:96px}
html[data-pp-design][data-pp-view="home"] .concept-map .concept-map-pin{width:24px;height:24px}
html[data-pp-design][data-pp-view="home"] .concept-map .concept-map-pin.is-featured{width:30px;height:30px}
html[data-pp-design][data-pp-view="home"] .concept-map img.leaflet-tile{mix-blend-mode:normal;filter:saturate(.65)}
html[data-pp-design][data-pp-view="home"] [data-home-districts]{background:linear-gradient(#10384d,#102c41);padding-block:80px}
html[data-pp-design][data-pp-view="home"] .pp-home-steps{background:linear-gradient(#102c41,#0b2233);padding-block:80px}
html[data-pp-design][data-pp-view="home"] :is(.concept-map,[data-home-districts],.pp-home-steps){color:#f3fffc}
html[data-pp-design][data-pp-view="home"] :is(.concept-map,[data-home-districts],.pp-home-steps) h2{color:#f3fffc!important}
html[data-pp-design][data-pp-view="home"] :is(.concept-map,[data-home-districts],.pp-home-steps) .lead-text{color:#c8e6e4!important}
html[data-pp-design][data-pp-view="home"] :is(.concept-map,[data-home-districts],.pp-home-steps) :is(a,button):focus-visible{outline-color:#8feee1!important}
html[data-pp-design][data-pp-view="home"] [data-home-districts] [data-district-route]{border-radius:18px;padding:16px 18px;min-height:68px}
html[data-pp-design][data-pp-view="home"] [data-home-districts] [data-district-route] [class*="text-white/"]{color:#c8e6e4!important}
html[data-pp-design][data-pp-view="home"] [data-home-districts] [data-count="0"]{opacity:1;background:#ffffff08;border-style:dashed}
html[data-pp-design][data-pp-view="home"] [data-step-card]{position:relative;top:auto!important;min-height:0!important;padding:28px!important;border-radius:24px;background:#173d51!important;transform:none!important}
html[data-pp-design][data-pp-view="home"] .pp-home-steps .container-x>div:has(>[data-step-card]){display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:36px}
html[data-pp-design][data-pp-view="home"] [data-step-card]>div{flex-direction:column;height:100%}
html[data-pp-design][data-pp-view="home"] [data-step-card] p{color:#d1e6e9!important;font-size:16px;line-height:1.75}
html[data-pp-design][data-pp-view="home"] [data-step-card]>div>span{font-size:44px!important;color:#75c8c6!important;align-self:flex-end}
html[data-pp-design][data-pp-view="home"] section.bg-foam{background:#0b2233!important;padding-block:56px}
html[data-pp-design][data-pp-view="home"] section.bg-foam>.container-x{background:#c9f3ec;border-radius:32px;padding-block:56px}
html[data-pp-design][data-pp-view="home"] #root main>div.fixed{padding:12px 8px;border-radius:32px;background:#0b2233e6;box-shadow:0 8px 30px #03141f1a}
html[data-pp-design][data-pp-view="home"] #root main>div.fixed [style*="color"]{color:#bcf1e8!important}
html[data-pp-design][data-pp-view="home"] #root main>div.fixed [style*="background"]{background-color:#bceee94d!important}
html[data-pp-design][data-pp-view="home"] :is(section[aria-label="Telegram"],section[data-home-match]){background:#0b2233}
html[data-pp-design][data-pp-view="home"] :is(section[aria-label="Telegram"],section[data-home-match]) .bg-coral{background:#ff795b}
html[data-pp-design][data-pp-view="home"] :is(section[aria-label="Telegram"],section[data-home-match]) :is(h2,p){color:#102f3c!important}
html[data-pp-design][data-pp-view="home"] :is(section[aria-label="Telegram"],section[data-home-match]) a{color:#102f3c!important;border-radius:14px}
html[data-pp-design][data-pp-view="home"] .pp-shell-footer{margin-top:0!important;background:#0b2233!important;border-top:1px solid #ffffff24!important}
@media(max-width:1100px){
 html[data-pp-design][data-pp-view="home"] .hero-search-panel{grid-template-columns:repeat(2,minmax(0,1fr))}
 html[data-pp-design][data-pp-view="home"] .home-hero>.pointer-events-none:has(>svg){top:13%!important;right:-25px!important}
 html[data-pp-design][data-pp-view="home"] .home-hero>.pointer-events-none>svg{width:90px;height:90px}
 html[data-pp-design][data-pp-view="home"] .home-hero>.pointer-events-none:has(>img){bottom:15%!important;left:-15px!important}
 html[data-pp-design][data-pp-view="home"] #ages div:has(>[data-age-card]){grid-template-columns:repeat(5,260px);overflow-x:auto!important;scroll-snap-type:x mandatory;padding:8px 0 20px;gap:16px}
 html[data-pp-design][data-pp-view="home"] #ages [data-age-card]{scroll-snap-align:start}
 html[data-pp-design][data-pp-view="home"] .pp-home-steps .container-x>div:has(>[data-step-card]){grid-template-columns:1fr}
}
@media(max-width:640px){
 html[data-pp-design][data-pp-view="home"] .home-hero{padding:36px 0 96px!important;min-height:0!important}
 html[data-pp-design][data-pp-view="home"] .home-hero-title{font-size:clamp(22px,6.9vw,27px)!important;line-height:1.23!important;margin-top:18px!important}
 html[data-pp-design][data-pp-view="home"] .home-hero-kicker{font-size:10px!important;letter-spacing:.05em!important}
 html[data-pp-design][data-pp-view="home"] .home-hero-lead{font-size:16px!important;margin-top:18px!important;line-height:1.55!important}
 html[data-pp-design][data-pp-view="home"] .home-hero-search{margin-top:24px!important}
 html[data-pp-design][data-pp-view="home"] .hero-search-panel{grid-template-columns:minmax(0,1fr);padding:12px;gap:8px}
 html[data-pp-design][data-pp-view="home"] .hero-search-cell{background:#eff7f4;border-radius:10px!important;padding-inline:8px}
 html[data-pp-design][data-pp-view="home"] .hero-search-cell>svg:first-child{display:none}
 html[data-pp-design][data-pp-view="home"] .hero-search-cell:nth-child(3),html[data-pp-design][data-pp-view="home"] .hero-search-submit{grid-column:1/-1}
 html[data-pp-design][data-pp-view="home"] .hero-search-cell :is(input,select){font-size:14px!important;padding-left:0!important}
 html[data-pp-design][data-pp-view="home"] .hero-search-panel select{padding-right:22px!important;text-overflow:ellipsis}
 html[data-pp-design][data-pp-view="home"] .home-hero-popular{gap:4px 14px}
 html[data-pp-design][data-pp-view="home"] .home-hero-popular>span{display:none}
 html[data-pp-design][data-pp-view="home"] .home-hero-stats{margin-top:24px!important;gap:8px}
 html[data-pp-design][data-pp-view="home"] .home-hero-stats>div>span:last-child{font-size:11px}
 html[data-pp-design][data-pp-view="home"] .home-hero-stat-value{font-size:23px!important}
 html[data-pp-design][data-pp-view="home"] .home-hero>.pointer-events-none:has(>svg){top:auto!important;bottom:27px;right:-12px!important}
 html[data-pp-design][data-pp-view="home"] .home-hero>.pointer-events-none>svg{width:70px;height:70px}
 html[data-pp-design][data-pp-view="home"] .home-hero>.pointer-events-none:has(>img){bottom:15px!important;left:12px!important}
 html[data-pp-design][data-pp-view="home"] .home-hero>.pointer-events-none>img{height:64px}
 html[data-pp-design][data-pp-view="home"] #ages{padding:48px 0!important}
 html[data-pp-design][data-pp-view="home"] #catalog .grid:has(button[aria-label^="Открыть карточку:"])>div:nth-child(n+7){display:none}
 html[data-pp-design][data-pp-view="home"] #ages [data-age-card]>div:has(img){max-width:200px}
 html[data-pp-design][data-pp-view="home"] section.bg-foam{padding:0 16px}
 html[data-pp-design][data-pp-view="home"] section.bg-foam>.container-x{padding:32px 20px}
 html[data-pp-design][data-pp-view="home"] :is(.concept-map,[data-home-districts],.pp-home-steps){padding-block:56px}
 html[data-pp-design][data-pp-view="home"] [data-home-districts] .grid{grid-template-columns:minmax(0,1fr);gap:10px;margin-top:28px}
 html[data-pp-design][data-pp-view="home"] [data-home-districts] [data-district-route]{padding:12px 16px;min-height:54px}
 html[data-pp-design][data-pp-view="home"] [data-home-districts] [data-district-route]>span:first-child{font-size:15px;min-width:0;overflow-wrap:anywhere}
 html[data-pp-design][data-pp-view="home"] [data-home-districts] [data-district-route]>span:last-child{flex-shrink:0;gap:5px}
 html[data-pp-design][data-pp-view="home"] [data-home-districts] [data-district-route]>span:last-child svg{display:none}
 html[data-pp-design][data-pp-view="home"] [data-home-districts] [data-district-route]>span:last-child>span:nth-child(2){display:none}
 html[data-pp-design][data-pp-view="home"] :is(section[aria-label="Telegram"],section[data-home-match]) p{font-size:16px;line-height:1.65}
 html[data-pp-design][data-pp-view="home"] :is(section[aria-label="Telegram"],section[data-home-match]) a{box-sizing:border-box;width:100%;max-width:100%;padding:16px!important;font-size:16px;gap:8px}
 html[data-pp-design][data-pp-view="home"] :is(section[aria-label="Telegram"],section[data-home-match]) a svg{flex-shrink:0}
}

/* r10 — editorial hierarchy. Scope deliberately stops at the home page.
   Phrase boundaries belong to copy; screen width controls size, not meaning. */
html[data-pp-design][data-pp-view="home"] .container-x{max-width:1600px;padding-inline:clamp(24px,4vw,64px)}
html[data-pp-design][data-pp-view="home"] :is(h1,h2,h3){overflow-wrap:normal!important;word-break:normal;hyphens:manual;text-wrap:balance}
html[data-pp-design][data-pp-view="home"] :is(p,summary){text-wrap:pretty;hyphens:manual;word-break:normal}
html[data-pp-design][data-pp-view="home"] .pp-type-phrase{display:inline-block;white-space:nowrap}
html[data-pp-design][data-pp-view="home"] h2{font-size:clamp(34px,2.8vw,48px)!important;line-height:1.2!important;letter-spacing:-.04em!important}
html[data-pp-design][data-pp-view="home"] .home-hero-content{max-width:1500px!important}
html[data-pp-design][data-pp-view="home"] .home-hero-title{max-width:1380px;font-size:clamp(44px,4.4vw,88px)!important;line-height:1.08!important;letter-spacing:-.045em!important}
html[data-pp-design][data-pp-view="home"] .home-hero-title>span{overflow:visible;white-space:nowrap}
html[data-pp-design][data-pp-view="home"] .home-hero-lead{max-width:850px!important;font-size:20px!important;line-height:1.55!important;margin-top:28px!important;text-wrap:balance}
html[data-pp-design][data-pp-view="home"] .pp-lead-line{display:block;text-wrap:balance}
html[data-pp-design][data-pp-view="home"] .home-hero-search{max-width:1120px}
html[data-pp-design][data-pp-view="home"] :is(#catalog,[data-home-districts],[data-home-faq]) .lead-text{font-size:19px;line-height:1.6;max-width:660px}
html[data-pp-design][data-pp-view="home"] #ages [data-age-card]{padding:24px!important}
html[data-pp-design][data-pp-view="home"] #ages [data-age-card] h3{font-family:var(--pp-display)!important;font-size:30px;line-height:1.15!important;letter-spacing:-.045em!important;white-space:nowrap;margin-top:16px}
html[data-pp-design][data-pp-view="home"] #ages [data-age-card] h3+p{font-size:19px;line-height:1.35;font-weight:800;color:#075f70;margin-top:12px;min-height:2.7em;text-wrap:balance}
/* r11: age + activity are sufficient; no empty explanatory paragraph. */
html[data-pp-design][data-pp-view="home"] [data-home-intro]{max-width:660px;font-size:19px;line-height:1.6;text-wrap:pretty;color:#3e5862}
html[data-pp-design][data-pp-view="home"] .concept-map [data-home-intro]{max-width:440px;color:#c8e6e4;font-size:18px;line-height:1.65}
@media(max-width:640px){html[data-pp-design][data-pp-view="home"] [data-home-intro]{font-size:16px;line-height:1.6}}
html[data-pp-design][data-pp-view="home"] #ages [data-age-card]:not(:has(h3+p+p))>a{margin-top:auto;padding-top:24px}
html[data-pp-design][data-pp-view="home"] #ages [data-age-card] h3+p+p{font-size:15px;line-height:1.65;font-weight:450;color:#3e5862;margin-top:14px;text-wrap:pretty}
html[data-pp-design][data-pp-view="home"] #ages [data-age-card]>a{font-size:14px;line-height:1.4;font-weight:750;padding-top:24px}
html[data-pp-design][data-pp-view="home"] #ages [data-age-card]>div:has(img){max-width:220px}
html[data-pp-design][data-pp-view="home"] .pp-map-count{font-size:18px;line-height:1.5;color:#94e1d9;margin-top:24px;font-weight:700}
html[data-pp-design][data-pp-view="home"] .concept-map h2 .pp-type-phrase{display:block}
html[data-pp-design][data-pp-view="home"] .concept-map .pp-map-count+p{margin-top:12px;max-width:440px;font-size:18px;line-height:1.65;color:#c8e6e4}
html[data-pp-design][data-pp-view="home"] .pp-home-steps h2{max-width:980px}
html[data-pp-design][data-pp-view="home"] [data-step-card] h3{font-size:25px;line-height:1.25!important;max-width:360px}
html[data-pp-design][data-pp-view="home"] [data-step-card] p{font-size:17px;line-height:1.65}
html[data-pp-design][data-pp-view="home"] [data-home-faq] h2{max-width:460px}
html[data-pp-design][data-pp-view="home"] [data-home-faq] summary{font-size:19px;line-height:1.45}
html[data-pp-design][data-pp-view="home"] [data-home-faq] details>div{font-size:16px;line-height:1.75;font-weight:450;color:#3e5862}
html[data-pp-design][data-pp-view="home"] :is(section[aria-label="Telegram"],section[data-home-match]) h2{max-width:900px}
html[data-pp-design][data-pp-view="home"] :is(section[aria-label="Telegram"],section[data-home-match]) p{max-width:630px;font-size:19px;line-height:1.6}
@media (min-width:1360px) and (max-width:1720px){
 html[data-pp-design][data-pp-view="home"] .container-x{padding-inline:80px}
}
@media (min-width:1101px) and (max-width:1359px){
 html[data-pp-design][data-pp-view="home"] #ages div:has(>[data-age-card]){grid-template-columns:repeat(5,280px);overflow-x:auto!important;scroll-snap-type:x mandatory;padding:8px 0 20px}
 html[data-pp-design][data-pp-view="home"] #ages [data-age-card]{scroll-snap-align:start}
}
@media(max-width:1100px){
 html[data-pp-design][data-pp-view="home"] .home-hero-lead{font-size:18px!important}
 html[data-pp-design][data-pp-view="home"] #ages div:has(>[data-age-card]){grid-template-columns:repeat(5,280px)}
}
@media(max-width:640px){
 html[data-pp-design][data-pp-view="home"] .container-x{padding-inline:24px}
 html[data-pp-design][data-pp-view="home"] .home-hero-title{font-size:clamp(25px,7.7vw,34px)!important;line-height:1.17!important;margin-top:20px!important}
 html[data-pp-design][data-pp-view="home"] .home-hero-lead{font-size:16px!important;line-height:1.55!important;margin-top:22px!important}
 html[data-pp-design][data-pp-view="home"] h2{font-size:28px!important;line-height:1.22!important}
 html[data-pp-design][data-pp-view="home"] :is(#catalog,[data-home-districts],[data-home-faq]) .lead-text{font-size:16px;line-height:1.6}
 html[data-pp-design][data-pp-view="home"] #ages [data-age-card] h3{font-size:30px}
 html[data-pp-design][data-pp-view="home"] #ages [data-age-card] h3+p{font-size:19px}
 html[data-pp-design][data-pp-view="home"] #ages [data-age-card] h3+p+p{font-size:15px}
 html[data-pp-design][data-pp-view="home"] [data-step-card] h3{font-size:23px}
 html[data-pp-design][data-pp-view="home"] [data-step-card] p{font-size:16px}
 html[data-pp-design][data-pp-view="home"] [data-home-faq] summary{font-size:17px}
 html[data-pp-design][data-pp-view="home"] [data-home-faq] details>div{font-size:16px}
 html[data-pp-design][data-pp-view="home"] :is(section[aria-label="Telegram"],section[data-home-match]) p{font-size:16px}
}
