html{scroll-padding-top:88px}
body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
:focus-visible{outline:3px solid #1A6E6E;outline-offset:2px}
.band-navy :focus-visible,.band-red :focus-visible,.ftr :focus-visible{outline-color:#fff}
h1,h2,h3{text-wrap:balance}
.hdr{transition:box-shadow .2s ease}
.hdr.is-scrolled{box-shadow:0 4px 18px rgba(30,33,54,.08)}
.nav-dd:focus-within .nav-menu{display:flex!important}
.mbar{transition:transform .25s ease;padding-bottom:calc(10px + env(safe-area-inset-bottom,0px))}
.mbar.is-hidden{transform:translateY(110%)}
.dlist-item:last-child,.plist-item:last-child,.num-item:last-child{border-bottom:0}
.tline-item:last-child{border-left-color:transparent}
.faq-sum::-webkit-details-marker{display:none}
.check-dot:empty::after{content:"";width:5px;height:9px;margin-top:-2px;border:solid currentColor;border-width:0 2px 2px 0;transform:rotate(45deg)}
.faq-x:empty{position:relative}
.faq-x:empty::before,.faq-x:empty::after{content:"";position:absolute;left:50%;top:50%;width:12px;height:2px;margin:-1px 0 0 -6px;background:currentColor;border-radius:2px}
.faq-x:empty::after{transform:rotate(90deg)}
.faq-x{transition:transform .2s ease,background-color .2s ease,color .2s ease}
.faq-item[open] .faq-x{transform:rotate(45deg);background:#1A6E6E;color:#fff}
.radio::before,.radio::after,.seg-opt::before,.seg-opt::after,.consent::before,.consent::after{content:none;display:none}
.radio .radio-dot,.seg-opt .radio-dot{position:absolute;opacity:0;width:1px;height:1px;margin:0;pointer-events:none}
.radio:has(.radio-dot:checked){border-color:#1A6E6E;background:#E4EFEE;color:#145858;box-shadow:inset 0 0 0 1px #1A6E6E}
.radio:has(.radio-dot:focus-visible),.seg-opt:has(.radio-dot:focus-visible){outline:3px solid #1A6E6E;outline-offset:2px}
.seg-opt:has(.radio-dot:checked){background:#fff;color:#282B45;box-shadow:0 1px 3px rgba(30,33,54,.14)}
.consent-box{accent-color:#1A6E6E}
.calc-range{accent-color:#1A6E6E;cursor:pointer}
.band-red .consent,.band-red .form-note{color:#F8E3E3}
.input.is-invalid{border-color:#AB2F2F!important}
.w-form-done{border-radius:12px;background:#E4EFEE;color:#145858;font-weight:600;text-align:left;padding:20px}
.w-form-fail{border-radius:12px;background:#F7E9E9;color:#8E2525;font-weight:600;padding:14px 16px}
.hp{position:absolute!important;left:-9999px!important}
.vid iframe,.map iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.ph-img{display:block}
.split>*,.split-even>*,.split-rev>*{min-width:0}
.filter.is-active{background:#282B45;color:#fff;border-color:#282B45}
.w-embed:empty{display:none}
.pulse{transform-origin:center;transform-box:fill-box;animation:sv-ring 2.4s ease-out infinite}
.pulse.p2{animation-delay:.8s}.pulse.p3{animation-delay:1.6s}
@keyframes sv-ring{0%{transform:scale(.4);opacity:.9}100%{transform:scale(2.4);opacity:0}}
.bulge{transform-box:fill-box;transform-origin:left center;animation:sv-bulge 2.8s ease-in-out infinite}
@keyframes sv-bulge{0%,30%{transform:scaleX(1)}55%,75%{transform:scaleX(1.45)}100%{transform:scaleX(1)}}
.toast{position:fixed;left:50%;bottom:calc(92px + env(safe-area-inset-bottom,0px));transform:translate(-50%,20px);z-index:95;max-width:min(92vw,460px);background:#282B45;color:#fff;padding:14px 18px;border-radius:12px;font:600 14px/1.45 Montserrat,Arial,sans-serif;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;box-shadow:0 10px 28px rgba(30,33,54,.2)}
.toast.is-on{opacity:1;transform:translate(-50%,0)}
@media (min-width:992px){.toast{bottom:28px}}
.paysheet{position:fixed;inset:0;z-index:90;display:none;align-items:flex-end;justify-content:center;background:rgba(30,33,54,.55);padding:16px}
.paysheet.is-open{display:flex}
.paysheet-box{width:100%;max-width:460px;background:#fff;border-radius:20px;padding:24px;display:flex;flex-direction:column;gap:12px;font-family:Montserrat,Arial,sans-serif;color:#282B45}
@media (min-width:640px){.paysheet{align-items:center}}
.stub-off .stub-tag,.stub-off .stub-inline{display:none!important}
html:not(.stub-off) [data-stub]{outline:2px dashed #C2410C;outline-offset:3px}
[data-task]{cursor:help}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Главная, телефон: первый экран на фото (текст и кнопки поверх снимка) — 22.10.2026 */
@media (max-width:767px){
.hero.hero-photo{position:relative;padding:0;background:#282B45;overflow:hidden;isolation:isolate}
.hero-photo .hero-in{display:block}
.hero-photo .hero-media{position:absolute;left:0;right:0;top:0;height:min(125vw,640px);z-index:0}
.hero-photo .ph.ph-hero{aspect-ratio:auto;width:100%;height:100%;border-radius:0;background:#282B45}
.hero-photo .ph-img{object-position:50% 30%}
.hero-photo .hero-media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(40,43,69,0) 0%,rgba(40,43,69,0) 38%,rgba(40,43,69,.78) 68%,#282B45 93%,#282B45 100%)}
.hero-photo .ph-tag{top:14px;bottom:auto;left:16px;padding:6px 10px;font-size:12px;background:rgba(255,255,255,.92)}
.hero-photo .ph-tag-name{font-size:13px}
.hero-photo .hero-text{position:relative;z-index:1;align-items:center;text-align:center;row-gap:16px;color:#fff;padding-top:min(calc(125vw - 190px),450px);padding-bottom:40px}
.hero-photo .eyebrow{color:rgba(255,255,255,.88);justify-content:center}
.hero-photo .eyebrow-bar{background-color:rgba(255,255,255,.7)}
.hero-photo .h1{color:#fff;text-shadow:0 2px 18px rgba(0,0,0,.35)}
.hero-photo .h1 .acc{color:#FF8080}
.hero-photo .lead{color:rgba(255,255,255,.92);max-width:34ch;margin-left:auto;margin-right:auto}
.hero-photo .trust{color:rgba(255,255,255,.86);justify-content:center}
.hero-photo .trust-strong{color:#fff}
.hero-photo .trust-dot{background-color:rgba(255,255,255,.45)}
.hero-photo .cta-row{width:100%}
.hero-photo .btn-outline{color:#fff;border-color:rgba(255,255,255,.8);background-color:rgba(255,255,255,.08)}
.hero-photo .stub-inline,.hero-photo .stub-tag{color:#282B45}
}
/* обложка видео YouTube */
.vid-thumb{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.45}
.ftr-contact-link{overflow-wrap:anywhere}
/* відгуки з Google — T-06 */
.rev{margin:0}
.rev-top{display:flex;align-items:center;justify-content:space-between;gap:12px}
.rev-stars{color:#d99a1e;letter-spacing:2px;font-size:16px;line-height:1}
.rev-src{font-size:12.5px;font-weight:600;color:#4f536e;white-space:nowrap}
.rev-text{margin:0;padding:0;border:0;font-size:15px;line-height:1.6;color:#282b45;quotes:"\00AB" "\00BB"}
.rev-text::before{content:open-quote}.rev-text::after{content:close-quote}
.rev-cite{display:flex;flex-direction:column;gap:2px;margin-top:auto;text-align:left}
.rev-name{font-weight:700;font-size:15px;color:#282b45}
.rev-meta{font-size:13px;line-height:1.4;color:#4f536e}
.card.rev-feature{padding:32px;border:2px solid #1a6e6e;max-width:920px}
.rev-feature .rev-text{font-size:16.5px;line-height:1.7}
.rev-badge{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:700;color:#1a6e6e;text-transform:uppercase;letter-spacing:.04em}
.chip-online{background:#e4efee;color:#1a6e6e}
a.chip{text-decoration:none;transition:background-color .15s}
a.chip:hover{background:#d3e6e4}
.uc-col.uc-strong{border-color:#1a6e6e73}
.card.card-feature{border-color:#1a6e6e;box-shadow:0 10px 28px #1e213614}
.check-dot.dot-no{background-color:#ab2f2f}
.check-dot.dot-no:empty::after{content:"\00d7";border:0;transform:none;width:auto;height:auto;margin:0 0 1px;font-size:17px;line-height:1;font-weight:700}
.nav-dd .nav-menu{visibility:hidden}
.nav-dd:hover .nav-menu,.nav-dd:focus-within .nav-menu{visibility:visible}
.band-red .form-card .consent,.band-red .form-card .consent-text,.band-red .form-card .form-note{color:#4f536e}
.card.prod{padding:16px;row-gap:12px}
.card.prod .btn{align-self:flex-start;margin-top:auto}
.prod-price{font-size:17px;font-weight:800;color:#282b45}
@media (max-width:767px){.prod-grid{grid-template-columns:1fr 1fr;gap:12px}.card.prod{padding:12px}}
.mb-32{margin-bottom:32px}
@media (max-width:767px){.rev-feature{padding:22px}.rev-feature .rev-text{font-size:15.5px}}

/* 26.10.2026: мобільні правки */
select.input{height:52px;min-height:52px;padding:0 16px;line-height:1.3}
@media (max-width:767px){.event>.btn{grid-column:1/-1;width:100%}}
.hero-in.hero-in-one{grid-template-columns:minmax(0,760px)}

/* 26.10.2026: пробне — факти про заняття */
.pfacts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.pfact{display:flex;flex-direction:column;gap:6px;min-width:0;padding:24px 28px;border-radius:16px;background:#fff}
.pfact-n{font-size:32px;font-weight:800;line-height:1.1;color:#1a6e6e}
.pfact-t{font-size:15px;line-height:1.5;color:#4f536e}
@media (max-width:991px){.pfacts{grid-template-columns:1fr;gap:12px}.pfact{padding:16px 20px}.pfact-n{font-size:26px}}

/* 26.10.2026: заметки калькулятора — иконка не сжимается */
.facts .fact>svg{flex:none}

/* 26.10.2026: калькулятор — ползунок процента виден только для салона */
.field[hidden]{display:none!important}

/* 26.10.2026: имя на образце свидетельства (базовый курс, украинский) — текст поверх картинки */
.cert-fit{position:absolute;left:0;top:50%;transform:translateY(-50%);width:100%;aspect-ratio:2576/1827;container-type:inline-size}
.cert-fit .ph-img{object-fit:fill}
.cert-name{position:absolute;left:0;right:0;top:49.9%;transform:translateY(-50%);text-align:center;white-space:nowrap;font-family:Montserrat,sans-serif;font-weight:700;font-size:16px;font-size:2.95cqw;line-height:1;color:#1b1d32;pointer-events:none;user-select:none}

/* bk-price */
.bk-price{gap:10px}
.bk-price-row{display:flex;align-items:center;flex-wrap:wrap;column-gap:12px;row-gap:4px}
.bk-price-tag{display:inline-flex;align-items:center;font-size:13px;font-weight:700;line-height:1;color:#1a6e6e;background-color:#e6f1f0;border-radius:999px;padding:7px 12px;white-space:nowrap}
.bk-price-ind{display:flex;align-items:baseline;justify-content:space-between;gap:12px;background-color:#f4f5f8;border-radius:10px;padding:9px 14px;font-size:15px;font-weight:600;line-height:1.3;color:#4f536e}
.bk-price-ind-val{font-size:17px;font-weight:800;color:#1e2136}

/* anat: сторінка «Анатомія для масажистів» (27.10.2026) */
.tline-n.anat-sub{background-color:#e4efee;color:#1a6e6e;font-size:10.5px;letter-spacing:-.02em}
.anat-res{margin:6px 0 0;font-size:14px;line-height:1.45;color:#145858}
.anat-res strong{font-weight:700}
.anat-guarantee{flex-direction:row;align-items:flex-start;column-gap:18px}
.anat-facts{gap:12px}
.anat-facts .pfact{padding:16px 18px}
.anat-facts .pfact-n{font-size:24px}
@media (max-width:991px){.anat-facts .pfact{flex-direction:row;align-items:baseline;column-gap:14px}.anat-facts .pfact-n{flex:none;min-width:118px;font-size:22px}}
@media (max-width:767px){.anat-guarantee{flex-direction:column;row-gap:12px}}

/* 27.10.2026: «Масаж» — фото першого екрана обрізане до рук і спини */
.ph.ph-hero.ms-crop{aspect-ratio:6/5}

/* 27.10.2026: головна — плитки розділів з фото (Wix Media, кроп через /v1/fill) */
.entry.ent-photo{background-size:cover;background-position:center}
.entry.ent-photo .entry-title,.entry.ent-photo .entry-meta{text-shadow:0 1px 10px rgba(0,0,0,.45)}
.entry.ent-photo .entry-meta{color:#e6e8f0}
.entry.ent-base{background-image:linear-gradient(180deg,rgba(30,33,54,.88) 0%,rgba(30,33,54,.5) 55%,rgba(30,33,54,.15) 100%),url(https://static.wixstatic.com/media/855b96_32f366c8cce84f059c18daa1cc38a054~mv2.jpg/v1/fill/w_640,h_480,fp_0.5_0.45,q_80,enc_auto/base.jpg)}
.entry.ent-pro{background-image:linear-gradient(180deg,rgba(30,33,54,.88) 0%,rgba(30,33,54,.5) 55%,rgba(30,33,54,.15) 100%),url(https://static.wixstatic.com/media/855b96_d8d4e41d696542b2927bc0823d903b5a~mv2.jpg/v1/fill/w_640,h_480,fp_0.5_0.5,q_80,enc_auto/pro.jpg)}
.entry.entry-teal.ent-online{background-image:linear-gradient(180deg,rgba(20,88,88,.9) 0%,rgba(20,88,88,.55) 55%,rgba(20,88,88,.15) 100%),url(https://static.wixstatic.com/media/855b96_20f06cc1660f4124b79107edecc7f55e~mv2.jpg/v1/fill/w_640,h_480,fp_0.5_0.45,q_80,enc_auto/online.jpg)}
.entry.ent-studio{background-image:linear-gradient(180deg,rgba(30,33,54,.88) 0%,rgba(30,33,54,.5) 55%,rgba(30,33,54,.15) 100%),url(https://static.wixstatic.com/media/855b96_f0352a9ebee2462684aab242c0a0e160~mv2.jpg/v1/crop/x_360,y_316,w_900,h_750/fill/w_640,h_480,q_80,enc_auto/studio.jpg)}
@media (max-width:767px){.entry.ent-photo{min-height:168px}}

/* 27.10.2026: «Про нас» — тексти команди абзацами */
.tm-bio{display:flex;flex-direction:column;row-gap:10px}
.tm-bio p{margin:0;font-size:15px;line-height:1.6;color:#4f536e}
.tm-bio .tm-lead{color:#282b45;font-weight:600}
.tm-bio .tm-warm{color:#1e2136;background-color:#eef5f4;border-left:3px solid #1a6e6e;border-radius:0 10px 10px 0;padding:10px 14px}

/* 27.10.2026: «Мануальна терапія» — вертикальне відео по центру колонки */
.vid.vid-portrait.mt-vid{max-width:360px;justify-self:center;align-self:start}

/* 28.10.2026: подарункові сертифікати — блок на «Масажі» (віяло з прикладів) і галерея на сторінці сертифіката */
.gf-promo{align-items:center}
.gf-fan{position:relative;display:block;width:100%;max-width:560px;aspect-ratio:4/3;margin:0 auto}
.gf-fan img{position:absolute;width:70%;aspect-ratio:1280/906;object-fit:cover;border-radius:10px;background-color:#fff;box-shadow:0 14px 34px rgba(30,33,54,.24)}
.gf-fan .gf-fan-1{left:3%;top:7%;transform:rotate(-7deg)}
.gf-fan .gf-fan-2{right:3%;top:3%;transform:rotate(6deg)}
.gf-fan .gf-fan-3{left:15%;bottom:4%;transform:rotate(-1.5deg)}
.card.gf-learn{display:grid;grid-template-columns:auto 1fr auto;align-items:center;column-gap:18px;row-gap:4px}
.card.gf-learn .ic{grid-row:1 / span 2}
.card.gf-learn .h3,.card.gf-learn .muted{grid-column:2;margin:0}
.card.gf-learn .link-arrow{grid-column:3;grid-row:1 / span 2}
.gf-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.gf-item{display:block;border-radius:12px;overflow:hidden;background-color:#fff;box-shadow:0 8px 22px rgba(30,33,54,.12)}
.gf-item img{display:block;width:100%;aspect-ratio:1280/906;object-fit:cover}
@media (max-width:991px){.gf-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:767px){.gf-grid{gap:12px}.card.gf-learn{grid-template-columns:auto 1fr}.card.gf-learn .ic{grid-row:1 / span 3;align-self:start}.card.gf-learn .link-arrow{grid-column:2;grid-row:auto}}

/* map-art: превʼю карти з маршрутом від Тираспольської площі (Контакти, Масаж), 29.10.2026 */
.map.map-art{justify-content:flex-end;align-items:flex-start;padding:12px}
.map-art .map-svg{position:absolute;inset:0;width:100%;height:100%;display:block}
.map-art .map-label{position:relative;max-width:100%;line-height:1.35}
.map-art .map-hint{display:block;margin-top:2px;font-size:12px;font-weight:600;color:#1A6E6E}
.map-art:hover .map-hint{text-decoration:underline}
.map-art .map-osm{position:absolute;top:6px;right:10px;font-size:10px;color:#8A90A2}
@media screen and (max-width:767px){.map.map-art{aspect-ratio:1/1}.map-art .map-label{font-size:13px;padding:8px 12px}}
/* route-steps: «Як пройти» на Контактах */
.route-steps .num-item{align-items:flex-start;font-weight:500;font-size:15px;line-height:1.45}
.route-steps .num-item:last-child{border-bottom:0}
.route-steps .num-badge{width:28px;height:28px;font-size:12px}
@media screen and (min-width:768px){.ph.ph-square.route-photo{aspect-ratio:4/3}.route-photo .ph-img{object-position:50% 40%}}
/* vr-shorts: два шортси з відгуками учнів після бази на «Відгуки», 29.10.2026 */
.split-even.vr-shorts{align-items:center;margin-bottom:56px}
.vr-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;width:100%;max-width:560px;justify-self:end}
.vr-pair .vid.vid-portrait{max-height:none}
@media screen and (max-width:991px){.vr-pair{justify-self:start}}
@media screen and (max-width:767px){.split-even.vr-shorts{margin-bottom:36px}.vr-pair{gap:12px;max-width:none}.vr-pair .vid-body{padding:12px;row-gap:4px}.vr-pair .vid-title{font-size:14px}.vr-pair .vid-play{width:52px;height:52px;margin:-26px 0 0 -26px}}
/* tk: окремі техніки для обличчя (курс масажу обличчя) і програма курсу обгортань, 29.10.2026 */
.tk-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:32px;align-items:start}
.tk-card{display:flex;flex-direction:column;gap:12px}
.tk-card .h3{margin:0}
.tk-days{align-self:flex-start}
.tk-prog{border-top:1.5px dashed #d9dce4;border-bottom:1.5px dashed #d9dce4}
.tk-list{margin:4px 0 0;padding-left:20px;display:flex;flex-direction:column;gap:10px;font-size:14px;line-height:1.5;color:#4F536E}
.tk-list b{color:#282B45;font-weight:700}
.tk-list ul{margin:4px 0 0;padding-left:18px;display:flex;flex-direction:column;gap:2px}
.tk-ul{margin:10px 0 0;padding-left:18px;display:flex;flex-direction:column;gap:4px;font-size:14px;line-height:1.5;color:#4F536E}
.tk-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.tk-price{font-size:22px;font-weight:800;color:#AB2F2F;white-space:nowrap}
@media screen and (max-width:767px){.tk-grid{grid-template-columns:1fr;gap:16px;margin-top:24px}}
/* duo-ava: фото Тетяни і Марини в картці «Разом з Іваном» на базовому курсі, 29.10.2026 */
.duo-ava{display:flex;margin-bottom:4px}
.duo-ava img{width:64px;height:64px;border-radius:50%;object-fit:cover;border:3px solid #fff;box-shadow:0 4px 12px #1e21361f}
.duo-ava img+img{margin-left:-12px}
/* av-img: фото в аватарках команди на головній, 29.10.2026 */
.av.av-img{overflow:hidden;padding:0}
.av.av-img img{width:100%;height:100%;object-fit:cover;border-radius:50%;display:block}
/* why-deal: акцент на −50% у «Чому Savia» на головній, 29.10.2026 */
.why-deal{display:inline-flex;align-items:center;gap:10px;margin-top:10px;padding:6px 14px 6px 6px;border-radius:14px;background:#fff;box-shadow:0 6px 18px #1e213614}
.why-deal-n{font-size:20px;font-weight:800;line-height:1;color:#fff;background:#AB2F2F;border-radius:10px;padding:8px 10px;white-space:nowrap}
.why-deal-t{font-size:14px;font-weight:700;line-height:1.3;color:#282B45}
/* tline-key, tl-side: повний шлях Івана на «Про нас», 29.10.2026 */
.tline-item.tline-key .tline-n{background-color:#AB2F2F}
.tline-item.tline-key .tline-t{font-size:17px}
.tl-side{position:sticky;top:96px}
@media screen and (max-width:991px){.tl-side{position:static}}
/* prod-vars: фото товарів і варіанти на «Матеріалах», 29.10.2026 */
.prod-vars{display:flex;flex-wrap:wrap;gap:6px}
.pv{width:42px;height:42px;padding:0;border:2px solid #d9dce4;border-radius:10px;overflow:hidden;background:#fff;cursor:pointer;flex:none}
.pv img{width:100%;height:100%;object-fit:cover;display:block}
.pv.is-on{border-color:#1A6E6E;box-shadow:0 0 0 2px #e4efee}
.prod-sub{font-size:13px;color:#4F536E;line-height:1.35}
.prod-price.prod-ask{font-size:15px}
/* vg: онлайн-курс «Масаж для вагітних» (29.10.2026) */
.vg-scheme{margin:0;border-radius:20px;overflow:hidden;background:#fff;box-shadow:0 10px 30px #1e213614}
.vg-img{display:block;width:100%;height:auto;aspect-ratio:8/5;background:#F4F8F7}
.vg-legend{display:grid;gap:8px;margin:0;padding:14px 18px 16px;list-style:none;text-align:left}
.vg-legend li{display:flex;gap:10px;align-items:flex-start;font-size:14px;line-height:1.4;color:#4f536e}
.vg-n{flex:none;display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;font-size:12px;font-weight:800;line-height:1;color:#fff;background:#AB2F2F}
.vg-n.vg-n-t{background:#1A6E6E}
.vg-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.vg-stat{display:flex;flex-direction:column;gap:10px;min-width:0;padding:22px 22px 24px;border-radius:16px;background:#ffffff12;border:1px solid #ffffff1f}
.vg-stat-n{font-size:40px;font-weight:800;line-height:1;color:#fff;white-space:nowrap}
.vg-stat-t{font-size:15px;line-height:1.45;color:#d4d7e6}
.vg-out{margin-top:24px;max-width:760px}
.vg-link{display:flex;flex-direction:column;gap:6px;text-decoration:none}
@media (max-width:991px){.vg-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}}
@media (max-width:479px){.vg-stats{grid-template-columns:1fr;gap:10px}.vg-stat{flex-direction:row;align-items:baseline;gap:14px;padding:16px 18px}.vg-stat-n{flex:none;min-width:84px;font-size:28px}}
/* ind-note: «Окремі техніки — індивідуально» на сторінках навчання (29.10.2026) */
.ind-note{display:flex;gap:8px;align-items:flex-start;max-width:480px;margin:14px 0 0;font-size:14px;line-height:1.45;color:#4f536e}
.ind-note svg{flex:none;margin-top:1px;color:#1A6E6E}
.hero-head .ind-note{margin-top:16px}
/* yt: плейліст «Інтерв’ю з учнями» на сторінці відгуків (31.10.2026) */
.yt-block{display:grid;gap:20px;margin-bottom:56px}
.yt-embed{position:relative;aspect-ratio:16/9;border-radius:16px;overflow:hidden;background:#282b45;box-shadow:0 10px 30px #1e213614}
.yt-embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
@media (max-width:767px){.yt-block{margin-bottom:40px;gap:16px}}

/* vp: практика в курсі «Масаж для вагітних» (31.10.2026) */
.vp-wrap{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:32px;align-items:start}
.vp-video{display:flex;flex-direction:column;gap:16px;min-width:0}
.vp-vid{background:linear-gradient(135deg,#1d2036,#3a3f66);border:1px solid #ffffff1f}
.vp-trust{display:flex;gap:10px;align-items:flex-start;margin:0;font-size:15px;line-height:1.5;color:#d4d7e6}
.vp-trust svg{flex:none;margin-top:2px;color:#8fd0cb}
.vp-note{margin:0;font-size:14px;line-height:1.5;color:#c5c8d8}
.vp-list{display:grid;gap:10px;margin:0;padding:0;list-style:none}
.vp-item{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:6px 14px;align-items:start;padding:16px 18px;border-radius:14px;background:#ffffff12;border:1px solid #ffffff1f}
.vp-n{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:#AB2F2F;color:#fff;font-size:13px;font-weight:700;line-height:1}
.vp-t{font-size:16px;font-weight:700;line-height:1.35;color:#fff}
.vp-m{margin-top:4px;font-size:14px;line-height:1.5;color:#c5c8d8}
.vp-d{align-self:start;white-space:nowrap;padding:4px 10px;border-radius:999px;background:#ffffff1f;color:#fff;font-size:12.5px;font-weight:700;line-height:1.3}
.vp-sum{margin:14px 0 0;font-size:15px;font-weight:600;color:#fff}
.vp-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px;margin-top:40px}
.vp-facts .vg-stat-n{font-size:26px;white-space:normal}
.vp-dd{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:20px}
.vp-foot-note{color:#c5c8d8}
.vp-prog{margin-top:36px;padding-top:28px;border-top:1px solid #d9dce6}
.vp-prog-head{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin-bottom:22px}
.vp-prog .tline-n{background:#AB2F2F}
.vp-dur{margin-left:8px;font-size:12.5px;font-weight:700;color:#AB2F2F;white-space:nowrap}
@media (max-width:991px){.vp-wrap{grid-template-columns:1fr}}
@media (max-width:767px){.vp-dd{grid-template-columns:1fr}.vp-item{grid-template-columns:auto minmax(0,1fr)}.vp-d{grid-column:2;justify-self:start}}
@media (max-width:479px){.vp-facts{grid-template-columns:1fr;gap:10px}.vp-facts .vg-stat-n{min-width:112px;font-size:22px}}
/* pl: плакати на «Матеріалах» — галерея прев’ю з водяним знаком і перегляд, 31.10.2026 */
#plakaty{scroll-margin-top:84px}
.pl-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:22px 18px;margin:36px 0 0;padding:0;list-style:none}
.pl-grid>li{margin:0;min-width:0}
.pl-tile{display:flex;flex-direction:column;gap:10px;width:100%;padding:0;border:0;border-radius:0;background:none;color:#fff;text-align:left;cursor:zoom-in;-webkit-tap-highlight-color:transparent}
.pl-thumb{position:relative;display:block;aspect-ratio:3/4;overflow:hidden;border-radius:10px;background:#fff;box-shadow:0 8px 22px rgba(0,0,0,.28);transition:transform .2s ease,box-shadow .2s ease}
.pl-thumb img{display:block;width:100%;height:100%;object-fit:contain;pointer-events:none;-webkit-user-drag:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}
.pl-zoom{position:absolute;right:8px;bottom:8px;display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:rgba(40,43,69,.92);color:#fff;pointer-events:none}
.pl-zoom svg{width:16px;height:16px}
.pl-cap{font-size:14px;font-weight:600;line-height:1.35}
.pl-tile:hover .pl-thumb{transform:translateY(-3px);box-shadow:0 14px 30px rgba(0,0,0,.4)}
.pl-tile:focus-visible{outline:3px solid #fff;outline-offset:5px;border-radius:12px}
.pl-note{margin:28px 0 0;max-width:62ch;font-size:14px;line-height:1.55;color:#c5c8d8}
.pl-lb{position:fixed;inset:0;z-index:2000;display:none;flex-direction:column;background:#10121d;color:#fff;-webkit-user-select:none;user-select:none}
.pl-lb.is-open{display:flex}
.pl-top{display:flex;align-items:center;gap:10px;flex:none;padding:10px 16px}
.pl-info{flex:1;min-width:0}
.pl-title{font-size:16px;font-weight:700;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pl-count{margin-top:2px;font-size:12.5px;line-height:1.3;color:#c5c8d8}
.pl-btn{flex:none;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:1px solid rgba(255,255,255,.28);border-radius:50%;background:rgba(255,255,255,.08);color:#fff;cursor:pointer;transition:background-color .15s}
.pl-btn:hover{background:rgba(255,255,255,.2)}
.pl-btn:focus-visible,.pl-lb .btn:focus-visible{outline:3px solid #fff;outline-offset:2px}
.pl-btn svg{width:20px;height:20px}
.pl-stage{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;overflow:auto;padding:4px 16px;cursor:zoom-in;-webkit-overflow-scrolling:touch}
.pl-fig{position:relative;display:block;margin:0;max-width:100%;line-height:0}
.pl-img{display:block;width:auto;height:auto;max-width:100%;max-height:calc(100vh - 168px);max-height:calc(100dvh - 168px);margin:0 auto;border-radius:6px;background:#fff;pointer-events:none;-webkit-user-drag:none;-webkit-touch-callout:none}
.pl-shield{position:absolute;inset:0;z-index:2}
.pl-lb.is-zoom .pl-stage{display:block;cursor:zoom-out}
.pl-lb.is-zoom .pl-fig{width:min(1300px,260vw);max-width:none;margin:0 auto}
.pl-lb.is-zoom .pl-img{width:100%;max-width:none;max-height:none}
.pl-foot{display:flex;align-items:center;justify-content:center;gap:14px;flex:none;padding:12px 16px calc(12px + env(safe-area-inset-bottom))}
@media (max-width:991px){.pl-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px 14px}}
@media (max-width:767px){.pl-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 12px;margin-top:28px}.pl-cap{font-size:13px}.pl-top{padding:8px 12px}.pl-stage{padding:2px 8px}.pl-img{max-height:calc(100vh - 150px);max-height:calc(100dvh - 150px)}}
@media print{#plakaty,.pl-lb{display:none!important}}

/* cart: міні-кошик на «Матеріалах» — лічильники, перелік-кошторис, плакати, 31.10.2026 */
.cart-ctl{display:flex;align-items:center;margin-top:auto;align-self:flex-start;min-height:44px}
.card.prod .cart-ctl .btn{margin-top:0;align-self:auto}
.cart-ctl .cart-add{min-width:120px}
.qty{display:inline-flex;align-items:center;height:44px;border:1.5px solid #1a6e6e;border-radius:12px;background:#fff;overflow:hidden}
.qty-b{display:flex;align-items:center;justify-content:center;width:44px;height:100%;padding:0;border:0;background:transparent;color:#1a6e6e;font-size:22px;font-weight:700;line-height:1;cursor:pointer;transition:background-color .15s}
.qty-b:hover{background:#e4efee}
.qty-b:focus-visible{outline:3px solid #1a6e6e;outline-offset:-3px}
.qty-n{min-width:36px;text-align:center;font-size:16px;font-weight:800;color:#282b45;font-variant-numeric:tabular-nums}
.card.prod.is-in{border-color:#1a6e6e;box-shadow:0 0 0 1px #1a6e6e}
.cart-panel{display:flex;flex-direction:column;gap:14px;padding:22px;border:1.5px solid #bcd5d3;border-radius:16px;background:#f4f8f8;scroll-margin-top:90px}
.cart-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.cart-count{font-size:14px;font-weight:700;color:#1a6e6e;text-align:right}
.cart-body{display:flex;flex-direction:column;gap:14px}
.cart-list{display:flex;flex-direction:column;margin:0;padding:0;list-style:none}
.cart-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:4px 14px;align-items:baseline;padding:10px 0;border-bottom:1px dashed #bcd5d3}
.cart-row:first-child{padding-top:0}
.cart-name{font-size:15px;font-weight:600;line-height:1.35}
.cart-sub{display:block;margin-top:2px;font-size:12.5px;font-weight:500;line-height:1.4;color:#4f536e}
.cart-q{font-size:14px;color:#4f536e;white-space:nowrap}
.cart-sum{min-width:72px;text-align:right;font-size:15px;font-weight:700;white-space:nowrap}
.cart-total{display:flex;align-items:baseline;justify-content:space-between;gap:12px;font-size:16px;font-weight:700}
.cart-total strong{font-size:22px;font-weight:800;color:#ab2f2f;white-space:nowrap}
.cart-fab{position:fixed;right:24px;bottom:24px;z-index:35;display:inline-flex;align-items:center;gap:10px;padding:10px 18px 10px 10px;border-radius:999px;background:#ab2f2f;color:#fff;font-size:15px;font-weight:700;line-height:1.2;text-decoration:none;box-shadow:0 10px 28px rgba(30,33,54,.28);transition:opacity .2s,background-color .15s}
.cart-fab:hover{background:#8e2525}
.cart-fab.is-off{opacity:0;pointer-events:none}
.cart-fab-n{display:flex;align-items:center;justify-content:center;min-width:28px;height:28px;padding:0 6px;border-radius:999px;background:#fff;color:#ab2f2f;font-size:14px;font-weight:800}
.cart-fab-s{white-space:nowrap}
.pl-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.pl-grid>li{display:flex;flex-direction:column}
.pl-grid .cart-ctl{width:100%;margin-top:12px}
.pl-grid .cart-add{width:100%}
.pl-grid .cart-add,.pl-lb .cart-add{background:#fff;border-color:#fff;color:#1a6e6e}
.pl-grid .qty,.pl-lb .qty{border-color:#fff}
.pl-grid .qty{width:100%;justify-content:space-between}
.pl-grid .qty-n{flex:1}
.pl-grid>li.is-in .pl-thumb{box-shadow:0 0 0 3px #fff,0 8px 22px rgba(0,0,0,.28)}
.pl-lb .cart-ctl{margin:0}
@media (max-width:767px){.cart-fab{display:none!important}.cart-panel{padding:18px}.cart-row{gap:4px 10px}}
@media print{.cart-fab,.cart-ctl{display:none!important}}
/* cart-hidden: атрибут hidden має працювати і для кнопок/flex-блоків кошика */
.btn[hidden],.qty[hidden],.cart-fab[hidden],.cart-body[hidden],.cart-panel [hidden],.cart-ctl [hidden],#plakaty[hidden],.pl-actions [hidden]{display:none!important}
.pl-grid>li>.pl-tile{flex:1 1 auto;justify-content:flex-start}

/* kont-map, tline-photo: карта вище на телефоні + фото вчителів у «Шляху Івана», 31.10.2026 */
.tline-photo{margin:12px 0 0;max-width:440px;display:flex;flex-direction:column;gap:8px}
.tline-photo .ph{aspect-ratio:1.45}
.tline-photo-p{max-width:220px}
.tline-photo-p .ph{aspect-ratio:2/3}
.tline-photo figcaption{text-align:left}
.tline-photo figcaption strong{color:#282B45;font-weight:700}
@media (max-width:991px){
.hero.kont-hero{padding-bottom:28px}
.band.kont-band{padding-top:28px}
.kont-split{row-gap:24px}
.kont-split>.kont-info,.kont-split>.kont-aside{display:contents}
.kont-split .kont-map{order:1}
.kont-split .dlist{order:2}
.kont-split .kont-req{order:3}
.kont-split #yak-proyty{order:4}
}

/* vm-grid: вогняний масаж — основне відео, shorts і кнопка запису; 31.10.2026 */
.vm-grid{align-items:start}
@media (max-width:767px){
.vm-grid>.vm-main{display:contents}
.vm-grid .vm-vid{order:1}
.vm-grid .mt-vid{order:2}
.vm-grid .vm-cta{order:3}
}
/* shots: скриншоти кроків «Як це працює» на online.html (оплата, доступ, урок), кадр 8:13 */
.ph.ph-shot{aspect-ratio:8/13;max-width:320px;border:1px solid #d9dde3;box-shadow:0 10px 28px #1e21361f;background:#14151f}
/* g-rating: зірки рейтингу Google заповнюються за --g-fill (T-45) */
.rating-stars{--g-fill:100%;display:block;width:fit-content;background:linear-gradient(90deg,#d99a1e var(--g-fill),#d9dce4 var(--g-fill));-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}

/* gallery: «Фото з занять» на vidguky.html — плитки 4:3 і кнопка «Показати ще» */
.ph.ph-photo{aspect-ratio:4/3}
.ph-img.pos-top{object-position:50% 25%}
.gal-more{display:flex;justify-content:center;margin-top:32px}
#gal-rest{margin-top:24px}
@media (max-width:767px){#gal-rest{margin-top:16px}.gal-more{margin-top:24px}}

/* i18n: перемикач мови UA/RU у шапці (02.11.2026) */
.lang-sw{display:inline-flex;align-items:center;gap:2px;flex:none;padding:3px;border:1.5px solid #d9dce4;border-radius:999px;background:#fff;color:#282b45;font-size:12.5px;font-weight:700;letter-spacing:.04em;line-height:1;text-decoration:none}
.lang-sw-o{display:inline-flex;align-items:center;justify-content:center;min-width:32px;height:30px;padding:0 7px;border-radius:999px;color:#6b6f86;transition:color .15s,background-color .15s}
.lang-sw-o.is-on{background:#282b45;color:#fff}
.lang-sw:hover .lang-sw-o:not(.is-on){color:#1a6e6e}
.lang-sw:focus-visible{outline:2px solid #1a6e6e;outline-offset:2px}
@media (max-width:479px){.lang-sw-o{min-width:28px;padding:0 5px}}
@media (min-width:992px) and (max-width:1199px){.lang-sw .lang-sw-o.is-on{display:none}.lang-sw-o{min-width:34px}.hdr .nav-link{padding-left:7px;padding-right:7px;white-space:nowrap}.hdr-cta .btn{white-space:nowrap}}
html[lang="ru"] h1,html[lang="ru"] h2,html[lang="ru"] h3{-webkit-hyphens:auto;hyphens:auto;overflow-wrap:break-word}
/* prod-ask-link: бренди без ціни на «Матеріалах» (кнопка обгорнута, щоб не потрапляти в кошик), 02.11.2026 */
.prod-ask-link{margin-top:auto}
