/* SOVA public styles v45: consolidated from the approved v22-v35 visual layers. */
#services-original.sova-services-original-hidden{position:absolute!important;left:-99999px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}
#services-enhanced{padding:80px 0 96px;background:linear-gradient(180deg,#fafaf9 0%,#f7fbfc 100%);border-top:1px solid #e7e5e4;scroll-margin-top:90px}
.svc-wrap{max-width:1180px;margin:0 auto;padding:0 20px}.svc-head{text-align:center;max-width:760px;margin:0 auto 34px}.svc-kicker{display:inline-flex;align-items:center;gap:8px;padding:7px 12px;border-radius:999px;background:#eaf7fb;color:#1682aa;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.svc-head h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(34px,5vw,56px);line-height:1.08;color:#292524;margin:18px 0 14px}.svc-head p{font-size:17px;line-height:1.7;color:#78716c;margin:0}
.svc-toolbar{position:sticky;top:10px;z-index:10;background:rgba(250,250,249,.92);backdrop-filter:blur(14px);border:1px solid rgba(231,229,228,.9);border-radius:20px;padding:12px;box-shadow:0 10px 30px rgba(41,37,36,.06);margin-bottom:28px}.svc-toolbar-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.svc-switch{display:flex;gap:6px;padding:4px;border-radius:14px;background:#f1f5f6}.svc-switch button,.svc-cat-btn{border:0;cursor:pointer}.svc-switch button{padding:10px 16px;border-radius:11px;background:transparent;color:#6b7280;font-weight:700}.svc-switch button.active{background:#fff;color:#1682aa;box-shadow:0 4px 14px rgba(31,41,55,.07)}.svc-search{margin-left:auto;position:relative;min-width:min(320px,100%);flex:1 1 260px;max-width:360px}.svc-search input{width:100%;border:1px solid #e7e5e4;background:#fff;border-radius:12px;padding:11px 14px 11px 39px;outline:none;color:#292524}.svc-search input:focus{border-color:#7dd3fc;box-shadow:0 0 0 3px rgba(125,211,252,.18)}.svc-search span{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:#a8a29e}.svc-cats{display:flex;gap:8px;overflow:auto;padding-top:10px;scrollbar-width:none}.svc-cats::-webkit-scrollbar{display:none}.svc-cat-btn{flex:0 0 auto;padding:8px 12px;border-radius:999px;background:#fff;border:1px solid #e7e5e4;color:#57534e;font-size:12px;font-weight:650}.svc-cat-btn.active{background:#0ea5e9;color:#fff;border-color:#0ea5e9}
.svc-groups{display:grid;gap:28px}.svc-group{background:#fff;border:1px solid #e7e5e4;border-radius:28px;overflow:hidden;box-shadow:0 18px 50px rgba(41,37,36,.055)}.svc-group-grid{display:grid;grid-template-columns:minmax(280px,.78fr) minmax(0,1.22fr)}.svc-side{position:relative;min-height:100%;background:#f5f5f4}.svc-media{height:280px;overflow:hidden;position:relative}.svc-media img,.svc-media video{width:100%;height:100%;object-fit:cover;object-position:center center;display:block}.svc-media:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(28,25,23,.28))}.svc-side-copy{padding:24px 24px 28px}.svc-type{font-size:11px;color:#0ea5e9;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.svc-side h3{font-family:Georgia,'Times New Roman',serif;font-size:30px;line-height:1.15;color:#292524;margin:8px 0 11px}.svc-side p{color:#78716c;line-height:1.65;margin:0}.svc-count{display:inline-flex;margin-top:18px;padding:7px 10px;border-radius:999px;background:#fff;border:1px solid #e7e5e4;color:#78716c;font-size:12px}.svc-list{padding:16px}.svc-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;padding:18px 16px;border-bottom:1px solid #f0efed;align-items:center}.svc-row:last-child{border-bottom:0}.svc-main{min-width:0}.svc-title-line{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.svc-name{font-size:17px;font-weight:720;color:#292524}.svc-badge{font-size:10px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;padding:4px 7px;border-radius:999px;background:#eef9fd;color:#1682aa}.svc-note{color:#8a817c;font-size:13px;line-height:1.45;margin-top:5px}.svc-meta{display:flex;gap:10px;flex-wrap:wrap;margin-top:9px}.svc-meta span{font-size:12px;color:#78716c;background:#f8fafb;padding:5px 8px;border-radius:8px}.svc-action{display:flex;align-items:center;gap:12px}.svc-price{font-size:20px;font-weight:800;color:#0284c7;white-space:nowrap}.svc-detail{border:1px solid #e7e5e4;border-radius:11px;padding:9px 11px;background:#fff;color:#57534e;font-size:12px;font-weight:750;text-decoration:none;white-space:nowrap}.svc-detail:hover{border-color:#7dd3fc;color:#0369a1}.svc-book{border:0;border-radius:11px;padding:10px 13px;background:#f0f9ff;color:#0369a1;font-size:12px;font-weight:800;cursor:pointer;transition:.2s}.svc-book:hover{background:#0ea5e9;color:#fff;transform:translateY(-1px)}.svc-more{display:block;width:calc(100% - 32px);margin:0 16px 16px;border:1px dashed #d6d3d1;background:#fafaf9;color:#57534e;border-radius:12px;padding:11px;font-weight:700;cursor:pointer}.svc-empty{text-align:center;padding:50px 20px;color:#78716c}.svc-footnote{text-align:center;color:#8a817c;font-size:12px;margin-top:24px}.svc-no-media{height:100%;min-height:220px;display:grid;place-items:center;background:linear-gradient(145deg,#edf8fb,#f5f5f4);color:#7c8b91;font-weight:700}
@media(max-width:900px){#services-enhanced{padding:64px 0 80px}.svc-group-grid{grid-template-columns:1fr}.svc-media{height:260px}.svc-toolbar{position:relative;top:auto}.svc-search{max-width:none}.svc-row{grid-template-columns:1fr}.svc-action{justify-content:space-between}.svc-side-copy{padding:20px}.svc-side h3{font-size:27px}}
@media(max-width:560px){.svc-wrap{padding:0 14px}.svc-head h2{font-size:38px}.svc-toolbar{border-radius:16px;padding:10px}.svc-switch{width:100%}.svc-switch button{flex:1}.svc-group{border-radius:20px}.svc-media{height:220px}.svc-list{padding:8px}.svc-row{padding:16px 10px}.svc-action{align-items:flex-end}.svc-price{font-size:18px}.svc-book{padding:9px 11px}.svc-side h3{font-size:25px}}

/* Reviews: single horizontal row with scrolling */
.review-strip{display:flex;gap:20px;overflow-x:auto;overflow-y:hidden;padding:4px 2px 18px;scroll-snap-type:x mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain}
.review-strip-card{flex:0 0 calc((100% - 60px)/4);min-width:0;scroll-snap-align:start}
.review-strip::-webkit-scrollbar{height:7px}
.review-strip::-webkit-scrollbar-track{background:#e7e5e4;border-radius:999px}
.review-strip::-webkit-scrollbar-thumb{background:#7dd3fc;border-radius:999px}
@media(max-width:900px){.review-strip{gap:16px}.review-strip-card{flex-basis:calc((100% - 16px)/2)}}
@media(max-width:560px){.review-strip{gap:14px;padding-right:12%}.review-strip-card{flex-basis:82%}}

/* Before / After — content managed from Admin → До / После */
.ba-section{padding:82px 0 92px;background:linear-gradient(180deg,#fff 0%,#f8fbfc 100%);border-top:1px solid #e7e5e4;scroll-margin-top:90px;overflow:hidden}
.ba-wrap{max-width:1180px;margin:0 auto;padding:0 20px}.ba-head{text-align:center;max-width:760px;margin:0 auto 38px}.ba-kicker{display:inline-flex;padding:7px 12px;border-radius:999px;background:#eaf7fb;color:#1682aa;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.ba-head h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(34px,5vw,54px);line-height:1.08;color:#292524;margin:17px 0 12px}.ba-head p{font-size:16px;line-height:1.7;color:#78716c;margin:0}
.ba-strip{display:flex;gap:22px;overflow-x:auto;overflow-y:hidden;padding:4px 2px 18px;scroll-snap-type:x mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain}.ba-strip::-webkit-scrollbar{height:7px}.ba-strip::-webkit-scrollbar-track{background:#e7e5e4;border-radius:999px}.ba-strip::-webkit-scrollbar-thumb{background:#7dd3fc;border-radius:999px}.ba-card{flex:0 0 calc((100% - 22px)/2);min-width:0;scroll-snap-align:start;background:#fff;border:1px solid #e7e5e4;border-radius:26px;padding:14px;box-shadow:0 16px 44px rgba(41,37,36,.065)}.ba-photos{display:grid;grid-template-columns:1fr 1fr;gap:10px}.ba-photo{position:relative;aspect-ratio:3/4;border:0;padding:0;border-radius:18px;overflow:hidden;background:#f5f5f4;cursor:zoom-in}.ba-photo img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease}.ba-photo:hover img{transform:scale(1.025)}.ba-photo-after{box-shadow:inset 0 0 0 2px #38bdf8}.ba-label{position:absolute;top:12px;left:12px;padding:6px 10px;border-radius:999px;font-size:11px;font-weight:800;letter-spacing:.04em}.ba-label-before{background:rgba(28,25,23,.68);color:#fff;backdrop-filter:blur(8px)}.ba-label-after{background:#0ea5e9;color:#fff}.ba-copy{padding:18px 8px 8px}.ba-copy h3{font-family:Georgia,'Times New Roman',serif;font-size:22px;line-height:1.25;color:#292524;margin:0 0 7px}.ba-copy p{font-size:14px;line-height:1.6;color:#78716c;margin:0}.ba-scroll-hint{text-align:center;color:#a8a29e;font-size:12px;margin-top:9px}
.ba-lightbox{position:fixed;inset:0;z-index:9999;background:rgba(12,10,9,.88);display:flex;align-items:center;justify-content:center;padding:28px;backdrop-filter:blur(10px)}.ba-lightbox img{max-width:min(900px,94vw);max-height:90vh;object-fit:contain;border-radius:18px;box-shadow:0 30px 90px rgba(0,0,0,.45)}.ba-lightbox-close{position:fixed;right:24px;top:20px;width:46px;height:46px;border-radius:999px;border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.12);color:#fff;font-size:30px;line-height:1;cursor:pointer}
@media(max-width:800px){.ba-section{padding:64px 0 76px}.ba-card{flex-basis:84%}.ba-head{margin-bottom:28px}}
@media(max-width:520px){.ba-wrap{padding:0 14px}.ba-strip{gap:14px;padding-right:10%}.ba-card{flex-basis:92%;padding:10px;border-radius:20px}.ba-photo{border-radius:14px}.ba-copy{padding:14px 6px 6px}.ba-copy h3{font-size:20px}.ba-label{top:9px;left:9px;padding:5px 8px}.ba-lightbox{padding:14px}.ba-lightbox-close{right:12px;top:12px}}

/* SOVA FAQ v19 — grouped searchable FAQ inspired by editorial FAQ/catalog layouts */
#faq-original{display:none!important}.sova-faq{padding:80px 0;background:#fff;border-top:1px solid #e7e5e4;color:#292524}.sova-faq *{box-sizing:border-box}.sova-faq__wrap{width:min(1120px,calc(100% - 32px));margin:auto}.sova-faq__head{text-align:center;max-width:760px;margin:0 auto 38px}.sova-faq__eyebrow{font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#0ea5e9;margin-bottom:10px}.sova-faq__head h2{font:400 clamp(32px,5vw,48px)/1.08 Georgia,serif;margin:0 0 14px}.sova-faq__head p{font-size:17px;line-height:1.65;color:#78716c;margin:0}.sova-faq__tools{display:grid;grid-template-columns:1fr auto;gap:14px;align-items:center;margin:30px 0 22px}.sova-faq__search{position:relative}.sova-faq__search input{width:100%;height:54px;border:1px solid #e7e5e4;border-radius:16px;padding:0 48px 0 18px;background:#fafaf9;font:inherit;outline:none}.sova-faq__search input:focus{border-color:#7dd3fc;box-shadow:0 0 0 4px rgba(14,165,233,.09);background:#fff}.sova-faq__clear{position:absolute;right:10px;top:9px;width:36px;height:36px;border:0;border-radius:10px;background:transparent;color:#a8a29e;font-size:20px;cursor:pointer}.sova-faq__cta{border:1px solid #bae6fd;background:#f0f9ff;border-radius:16px;padding:12px 16px;color:#075985;text-decoration:none;font-weight:700;white-space:nowrap}.sova-faq__nav{display:flex;gap:8px;overflow:auto;padding:2px 0 18px;scrollbar-width:none}.sova-faq__nav::-webkit-scrollbar{display:none}.sova-faq__nav a{flex:0 0 auto;border:1px solid #e7e5e4;background:#fff;border-radius:999px;padding:9px 14px;color:#57534e;text-decoration:none;font-size:13px;font-weight:700}.sova-faq__nav a:hover{border-color:#7dd3fc;color:#0284c7;background:#f0f9ff}.sova-faq__content{display:grid;gap:34px}.sova-faq__group{scroll-margin-top:90px}.sova-faq__group h3{font:600 23px/1.25 Georgia,serif;margin:0 0 12px;color:#292524}.sova-faq__item{border-top:1px solid #e7e5e4}.sova-faq__item:last-child{border-bottom:1px solid #e7e5e4}.sova-faq__item summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:48px 1fr 28px;gap:14px;align-items:center;padding:18px 4px;font-weight:700;font-size:16px}.sova-faq__item summary::-webkit-details-marker{display:none}.sova-faq__num{color:#0ea5e9;font-size:13px;font-weight:900;letter-spacing:.04em}.sova-faq__plus{width:26px;height:26px;border-radius:50%;border:1px solid #d6d3d1;display:grid;place-items:center;color:#78716c;font-size:18px;transition:.18s}.sova-faq__item[open] .sova-faq__plus{transform:rotate(45deg);border-color:#7dd3fc;color:#0284c7}.sova-faq__answer{padding:0 42px 20px 66px;color:#57534e;line-height:1.7;font-size:15px;max-width:900px;white-space:pre-line}.sova-faq__empty{display:none;padding:28px;text-align:center;border:1px dashed #d6d3d1;border-radius:16px;color:#78716c}.sova-faq__bottom{margin-top:42px;padding:24px;border-radius:22px;background:linear-gradient(135deg,#f0f9ff,#fafaf9);border:1px solid #dbeafe;display:flex;justify-content:space-between;align-items:center;gap:20px}.sova-faq__bottom strong{display:block;font:600 22px/1.3 Georgia,serif;margin-bottom:5px}.sova-faq__bottom span{color:#78716c}.sova-faq__bottom-actions{display:flex;gap:10px;flex-wrap:wrap}.sova-faq__btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 18px;border-radius:999px;text-decoration:none;font-weight:800;font-size:14px}.sova-faq__btn--primary{background:#0ea5e9;color:white}.sova-faq__btn--ghost{background:#fff;border:1px solid #e7e5e4;color:#44403c}@media(max-width:760px){.sova-faq{padding:64px 0}.sova-faq__tools{grid-template-columns:1fr}.sova-faq__cta{text-align:center}.sova-faq__item summary{grid-template-columns:38px 1fr 26px;gap:9px;font-size:15px}.sova-faq__answer{padding-left:51px;padding-right:10px}.sova-faq__bottom{align-items:flex-start;flex-direction:column}.sova-faq__bottom-actions{width:100%}.sova-faq__btn{flex:1}}


#sova-admin-popup{position:fixed;z-index:95;width:min(390px,calc(100vw - 32px));background:#fff;border:1px solid #d9eef6;border-radius:26px;box-shadow:0 24px 70px rgba(30,55,66,.22);overflow:hidden;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;animation:sovaPopupIn .32s ease both}#sova-admin-popup.sova-popup-right{right:24px;bottom:24px}#sova-admin-popup.sova-popup-left{left:24px;bottom:24px}.sova-popup-image{display:block;width:100%;height:150px;object-fit:cover}.sova-popup-head{padding:19px 22px 16px;background:linear-gradient(115deg,#57b9da,#69c5df);color:#fff;position:relative}.sova-popup-kicker{font-size:10px;font-weight:800;letter-spacing:.17em;text-transform:uppercase;opacity:.85}.sova-popup-head h3{margin:6px 42px 0 0;font:600 23px/1.15 Georgia,"Times New Roman",serif}.sova-popup-close{position:absolute;right:13px;top:13px;width:34px;height:34px;border:0;border-radius:999px;background:rgba(255,255,255,.18);color:#fff;font-size:23px;line-height:1;cursor:pointer}.sova-popup-close:hover{background:rgba(255,255,255,.28)}.sova-popup-body{padding:21px 22px 22px}.sova-popup-accent{font-size:30px;font-weight:850;line-height:1;color:#42a8ca;margin-bottom:9px}.sova-popup-text{margin:0 0 18px;color:#626f75;font-size:14px;line-height:1.6}.sova-popup-cta{display:block;width:100%;border:0;border-radius:14px;background:#eef9fc;color:#2088aa;padding:13px 16px;font-size:14px;font-weight:750;text-align:center;text-decoration:none;cursor:pointer;transition:.18s}.sova-popup-cta:hover{background:#dff3f9;transform:translateY(-1px)}@keyframes sovaPopupIn{from{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}@media(max-width:600px){#sova-admin-popup.sova-popup-right,#sova-admin-popup.sova-popup-left{left:16px;right:16px;bottom:16px;width:auto}.sova-popup-image{height:125px}}

/* SOVA v25 — local business / map enhancements */
#contacts .sova-local-business-meta{width:100%;display:grid;gap:12px;margin:0 0 24px;padding:18px;border:1px solid rgba(255,255,255,.16);border-radius:20px;background:rgba(255,255,255,.08)}
#contacts .sova-local-hours{display:flex;align-items:center;justify-content:center;gap:9px;color:#e0f2fe;font-size:14px;line-height:1.4}
#contacts .sova-local-rating{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px 10px;color:#fff;font-size:14px}
#contacts .sova-local-rating strong{font-size:20px;font-weight:700;letter-spacing:.01em}
#contacts .sova-local-stars{color:#fde68a;letter-spacing:1px;font-size:15px}
#contacts .sova-local-rating a{color:#e0f2fe;text-decoration:underline;text-decoration-color:rgba(224,242,254,.35);text-underline-offset:3px}
#contacts .sova-local-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;width:100%}
#contacts .sova-local-action{display:flex;align-items:center;justify-content:center;min-height:44px;padding:10px 14px;border-radius:999px;font-size:13px;font-weight:650;text-align:center;transition:transform .2s ease,background .2s ease,border-color .2s ease}
#contacts .sova-local-action:hover{transform:translateY(-1px)}
#contacts .sova-local-action--route{background:#fff;color:#075985}
#contacts .sova-local-action--card{border:1px solid rgba(255,255,255,.3);background:rgba(255,255,255,.08);color:#fff}
#contacts .sova-local-note{font-size:11px;line-height:1.4;color:rgba(255,255,255,.62);text-align:center}
@media(min-width:1024px){#contacts .sova-local-hours,#contacts .sova-local-rating,#contacts .sova-local-note{justify-content:flex-start;text-align:left}}
@media(max-width:520px){#contacts .sova-local-actions{grid-template-columns:1fr}}

#certificates{position:relative;overflow:hidden;padding:96px 20px;background:linear-gradient(135deg,#f8f5ef 0%,#eef5f7 52%,#f3eee7 100%)}
#certificates:before,#certificates:after{content:"";position:absolute;border:1px solid rgba(2,132,199,.12);border-radius:999px;pointer-events:none}
#certificates:before{width:360px;height:180px;right:-100px;top:38px;box-shadow:inset 0 0 0 30px rgba(2,132,199,.025)}
#certificates:after{width:260px;height:130px;left:-90px;bottom:40px;transform:rotate(-12deg)}
.cert-wrap{position:relative;z-index:1;max-width:1180px;margin:auto}.cert-head{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:48px;align-items:end;margin-bottom:46px}.cert-kicker{font:700 12px/1.2 system-ui;letter-spacing:.2em;text-transform:uppercase;color:#0284c7}.cert-head h2{font:500 clamp(42px,6vw,76px)/.95 Georgia,serif;letter-spacing:-.04em;color:#26211e;margin:12px 0 16px;text-wrap:balance}.cert-head h2 em{font-style:italic;color:#0284c7}.cert-head p{margin:0;color:#625d57;font:400 17px/1.7 system-ui}.cert-note{padding:18px 20px;border:1px solid rgba(2,132,199,.14);background:rgba(255,255,255,.58);border-radius:22px;color:#5e5a55;font:400 14px/1.55 system-ui}.cert-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr);gap:28px;align-items:start}.cert-designs,.cert-shop{background:rgba(255,255,255,.82);border:1px solid rgba(61,57,53,.1);border-radius:32px;box-shadow:0 20px 60px rgba(47,58,55,.07);backdrop-filter:blur(12px)}.cert-designs{padding:20px}.cert-design-main{position:relative;overflow:hidden;border-radius:24px;aspect-ratio:4/3;background:#eee}.cert-design-main img{width:100%;height:100%;object-fit:cover;display:block;transition:.45s ease}.cert-design-main:hover img{transform:scale(1.018)}.cert-design-thumbs{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:12px}.cert-design-thumb{padding:0;border:2px solid transparent;border-radius:14px;overflow:hidden;background:#fff;cursor:pointer;transition:.2s}.cert-design-thumb.active{border-color:#0284c7;box-shadow:0 0 0 3px rgba(2,132,199,.09)}.cert-design-thumb img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.cert-shop{padding:28px}.cert-shop h3{margin:0 0 6px;font:600 24px/1.2 Georgia,serif;color:#27231f}.cert-shop-sub{color:#77706a;font-size:14px;margin-bottom:22px}.cert-tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:5px;background:#f1eee9;border-radius:15px;margin-bottom:20px}.cert-tab{border:0;background:transparent;border-radius:11px;padding:12px 14px;font-weight:700;color:#716b65;cursor:pointer}.cert-tab.active{background:white;color:#0c78ad;box-shadow:0 6px 18px rgba(0,0,0,.05)}.cert-amounts{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}.cert-chip{border:1px solid #ded9d2;background:#fff;border-radius:999px;padding:9px 14px;cursor:pointer;font-weight:700;color:#514c47}.cert-chip.active{background:#0284c7;border-color:#0284c7;color:white}.cert-field{display:flex;flex-direction:column;gap:7px;margin-top:14px}.cert-field label{font-size:13px;font-weight:700;color:#57514c}.cert-field input,.cert-field select,.cert-field textarea{width:100%;box-sizing:border-box;border:1px solid #ddd7d0;background:#fff;border-radius:14px;padding:13px 14px;font:inherit;color:#332f2c;outline:none;transition:.2s}.cert-field input:focus,.cert-field select:focus,.cert-field textarea:focus{border-color:#0284c7;box-shadow:0 0 0 3px rgba(2,132,199,.1)}.cert-field textarea{min-height:78px;resize:vertical}.cert-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.cert-delivery{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:16px}.cert-radio{position:relative}.cert-radio input{position:absolute;opacity:0}.cert-radio span{display:block;border:1px solid #ded8d0;border-radius:14px;padding:12px;text-align:center;cursor:pointer;color:#625d57;font-weight:700;font-size:13px}.cert-radio input:checked+span{border-color:#0284c7;background:#edf8fd;color:#0276af}.cert-policy{display:flex;gap:9px;align-items:flex-start;margin:16px 0;color:#736d67;font-size:12px;line-height:1.45}.cert-policy a{color:#0284c7}.cert-pay{width:100%;border:0;border-radius:16px;background:#0284c7;color:white;padding:15px 20px;font-size:16px;font-weight:800;cursor:pointer;box-shadow:0 12px 30px rgba(2,132,199,.2)}.cert-pay:hover{background:#036fa4}.cert-pay:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.cert-pay-status{min-height:22px;margin-top:10px;font-size:13px;color:#6c655f}.cert-pay-status.error{color:#b42318}.cert-offline{margin-top:18px;padding-top:16px;border-top:1px solid #ece7e1;color:#6b655f;font-size:13px;line-height:1.55}.cert-offline a{color:#0284c7;font-weight:800;text-decoration:none}.cert-hidden{display:none!important}
@media(max-width:900px){#certificates{padding:72px 16px}.cert-head{grid-template-columns:1fr;gap:18px}.cert-grid{grid-template-columns:1fr}.cert-designs{max-width:680px}.cert-shop{padding:22px}}
@media(max-width:560px){.cert-head h2{font-size:44px}.cert-row{grid-template-columns:1fr}.cert-delivery{grid-template-columns:1fr}.cert-shop,.cert-designs{border-radius:24px}.cert-design-thumbs{gap:6px}}

.cert-pay-status.success{color:#2f845d;line-height:1.55}.cert-pay-status.success strong{color:#246b4d}.cert-pay-status.success small{color:#6a746e}

/* SOVA v22 — SPA redesign + UX cleanup
   Calm warm palette, softer section rhythm, unified cards/forms, responsive navigation. */
:root{
  --spa-ivory:#f7f4ef;
  --spa-cream:#fbf9f5;
  --spa-sand:#eee8df;
  --spa-sage-soft:#e8ede8;
  --spa-blue-soft:#e8eef0;
  --spa-sage:#7d9387;
  --spa-sage-dark:#566c61;
  --spa-blue:#78939d;
  --spa-gold:#b49a7b;
  --spa-ink:#3e3b37;
  --spa-muted:#77716b;
  --spa-line:rgba(84,78,70,.12);
  --spa-card:rgba(255,255,255,.78);
  --spa-shadow:0 18px 55px rgba(69,61,52,.075);
  --spa-shadow-hover:0 24px 64px rgba(69,61,52,.11);
}
html{scroll-behavior:smooth;scroll-padding-top:92px}
body.sova-spa-v22{background:var(--spa-ivory);color:var(--spa-ink);font-feature-settings:"kern" 1,"liga" 1}
body.sova-spa-v22 #root{background:var(--spa-ivory)}
body.sova-spa-v22 ::selection{background:#dbe5df;color:#39453f}

/* Palette bridge for the existing React/Tailwind bundle. */
body.sova-spa-v22 .text-sky-400,
body.sova-spa-v22 .text-sky-500,
body.sova-spa-v22 .text-sky-600,
body.sova-spa-v22 .text-sky-700{color:var(--spa-sage-dark)!important}
body.sova-spa-v22 .text-sky-200{color:#dce8e2!important}
body.sova-spa-v22 .bg-sky-50{background-color:#f0f4f1!important}
body.sova-spa-v22 .bg-sky-100{background-color:#e4ece7!important}
body.sova-spa-v22 .bg-sky-500,
body.sova-spa-v22 .bg-sky-600{background-color:var(--spa-sage)!important}
body.sova-spa-v22 .bg-sky-800{background-color:var(--spa-sage-dark)!important}
body.sova-spa-v22 .hover\:bg-sky-500:hover,
body.sova-spa-v22 .hover\:bg-sky-600:hover{background-color:var(--spa-sage-dark)!important}
body.sova-spa-v22 .hover\:text-sky-500:hover,
body.sova-spa-v22 .hover\:text-sky-600:hover,
body.sova-spa-v22 .hover\:text-sky-700:hover{color:var(--spa-sage-dark)!important}
body.sova-spa-v22 .border-sky-100,
body.sova-spa-v22 .border-sky-200,
body.sova-spa-v22 .border-sky-300,
body.sova-spa-v22 .border-sky-400{border-color:#c8d6ce!important}
body.sova-spa-v22 .from-sky-500{--tw-gradient-from:var(--spa-sage)!important;--tw-gradient-to:rgba(125,147,135,0)!important}
body.sova-spa-v22 .to-sky-400{--tw-gradient-to:#9caf9f!important}
body.sova-spa-v22 .focus\:ring-sky-500:focus{--tw-ring-color:rgba(125,147,135,.28)!important}

/* Global typography / surfaces */
body.sova-spa-v22 h1,body.sova-spa-v22 h2,body.sova-spa-v22 h3{letter-spacing:-.018em}
body.sova-spa-v22 section{position:relative}
body.sova-spa-v22 section[id]{scroll-margin-top:8px}
body.sova-spa-v22 section.border-t{border-top-color:transparent!important}
body.sova-spa-v22 .shadow-2xl{box-shadow:var(--spa-shadow)!important}
body.sova-spa-v22 .shadow-xl{box-shadow:0 16px 42px rgba(69,61,52,.095)!important}
body.sova-spa-v22 .shadow-lg{box-shadow:0 14px 36px rgba(69,61,52,.08)!important}
body.sova-spa-v22 .shadow-md{box-shadow:0 10px 28px rgba(69,61,52,.07)!important}
body.sova-spa-v22 .shadow-sm{box-shadow:0 7px 20px rgba(69,61,52,.055)!important}

/* Header */
body.sova-spa-v22 #root>div>header,
body.sova-spa-v22 #root header:first-of-type{
  background:rgba(248,246,241,.88)!important;
  border-color:rgba(90,81,72,.08)!important;
  box-shadow:0 1px 0 rgba(255,255,255,.75),0 8px 35px rgba(72,65,57,.035);
  -webkit-backdrop-filter:blur(18px) saturate(1.1);
  backdrop-filter:blur(18px) saturate(1.1);
}
body.sova-spa-v22 header .sova-logo-mark{color:var(--spa-blue)!important;font-weight:400!important;letter-spacing:.28em!important}
body.sova-spa-v22 header nav a,
body.sova-spa-v22 header a{transition:color .22s ease,opacity .22s ease}
.spa-desktop-extra{color:#625e58;text-decoration:none;white-space:nowrap}
.spa-desktop-extra:hover{color:var(--spa-sage-dark)}

/* Hero */
body.sova-spa-v22 main>section:first-child:not([id]){
  min-height:82vh!important;
  background:var(--spa-ivory)!important;
  isolation:isolate;
}
body.sova-spa-v22 main>section:first-child:not([id])::after{
  content:"";position:absolute;right:-8vw;bottom:-15vw;width:40vw;height:40vw;border-radius:50%;
  background:radial-gradient(circle,rgba(126,150,136,.16),rgba(126,150,136,0) 67%);z-index:0;pointer-events:none
}
body.sova-spa-v22 main>section:first-child:not([id]) .absolute.inset-0.z-0 img{opacity:.42!important;transform:scale(1.015);animation:spaHeroDrift 22s ease-in-out infinite alternate}
body.sova-spa-v22 main>section:first-child:not([id]) .bg-gradient-to-br{
  background-image:linear-gradient(115deg,rgba(247,244,239,.98) 4%,rgba(247,244,239,.91) 48%,rgba(238,237,229,.58) 100%)!important
}
body.sova-spa-v22 main>section:first-child:not([id]) .sova-hero-title{color:#3c3a36!important;font-size:clamp(42px,5.6vw,70px)!important;line-height:1.04!important}
body.sova-spa-v22 main>section:first-child:not([id]) p{color:#66615b!important}
body.sova-spa-v22 main>section:first-child:not([id]) .bg-white\/70{
  background:rgba(255,255,255,.64)!important;border-color:rgba(255,255,255,.72)!important;box-shadow:0 28px 90px rgba(71,62,54,.10)!important
}
body.sova-spa-v22 main>section:first-child:not([id]) .bg-white\/80{background:rgba(255,255,255,.72)!important}
body.sova-spa-v22 main>section:first-child:not([id]) .bg-stone-800{background:#59625c!important}
body.sova-spa-v22 main>section:first-child:not([id]) button{transition:transform .25s ease,box-shadow .25s ease,background-color .25s ease}
body.sova-spa-v22 main>section:first-child:not([id]) button:hover{transform:translateY(-2px)}
@keyframes spaHeroDrift{from{transform:scale(1.015) translate3d(0,0,0)}to{transform:scale(1.055) translate3d(-.6%,.5%,0)}}

/* Trust strip between hero and services */
.spa-trust{background:#f0ece4;border-top:1px solid rgba(255,255,255,.7);border-bottom:1px solid var(--spa-line);position:relative;z-index:2}
.spa-trust__wrap{width:min(1160px,calc(100% - 32px));margin:auto;display:grid;grid-template-columns:repeat(4,1fr)}
.spa-trust__item{padding:20px 18px;display:flex;align-items:center;justify-content:center;gap:11px;color:#5f5b55;font-size:13px;font-weight:650;text-align:center;line-height:1.35}
.spa-trust__item+.spa-trust__item{border-left:1px solid rgba(93,84,75,.10)}
.spa-trust__icon{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:rgba(255,255,255,.68);color:var(--spa-sage-dark);font-size:12px;box-shadow:inset 0 0 0 1px rgba(100,91,82,.07)}

/* Section rhythm / color zoning */
body.sova-spa-v22 #services-original{background:var(--spa-cream)!important}
body.sova-spa-v22 #reviews{background:#efe8de!important;overflow:hidden}
body.sova-spa-v22 #team{background:var(--spa-cream)!important}
body.sova-spa-v22 #equipment{background:var(--spa-blue-soft)!important;overflow:hidden}
body.sova-spa-v22 #contacts{background:#53675d!important;overflow:hidden}
body.sova-spa-v22 #reviews::before,body.sova-spa-v22 #equipment::before,body.sova-spa-v22 #contacts::before{
  content:"";position:absolute;width:440px;height:440px;border-radius:50%;filter:blur(2px);pointer-events:none;opacity:.6
}
body.sova-spa-v22 #reviews::before{right:-260px;top:-230px;background:radial-gradient(circle,rgba(255,255,255,.7),rgba(255,255,255,0) 70%)}
body.sova-spa-v22 #equipment::before{left:-270px;bottom:-250px;background:radial-gradient(circle,rgba(255,255,255,.65),rgba(255,255,255,0) 70%)}
body.sova-spa-v22 #contacts::before{right:-220px;top:-250px;background:radial-gradient(circle,rgba(224,235,229,.18),rgba(224,235,229,0) 70%)}

/* Enhanced services */
body.sova-spa-v22 #services-enhanced{padding:96px 0 104px;background:var(--spa-cream);border:0;overflow:hidden}
body.sova-spa-v22 #services-enhanced::before{content:"";position:absolute;left:-240px;top:100px;width:440px;height:440px;border-radius:50%;background:radial-gradient(circle,rgba(181,158,128,.09),rgba(181,158,128,0) 70%);pointer-events:none}
body.sova-spa-v22 .svc-kicker,body.sova-spa-v22 .ba-kicker{background:#e5ece8;color:var(--spa-sage-dark)}
body.sova-spa-v22 .svc-head h2,body.sova-spa-v22 .ba-head h2{color:var(--spa-ink)}
body.sova-spa-v22 .svc-head p,body.sova-spa-v22 .ba-head p{color:var(--spa-muted)}
body.sova-spa-v22 .svc-toolbar{top:88px;background:rgba(248,246,241,.88);border-color:rgba(96,86,77,.11);box-shadow:0 14px 40px rgba(69,61,52,.065);backdrop-filter:blur(18px)}
body.sova-spa-v22 .svc-switch{background:#e9e6df}
body.sova-spa-v22 .svc-switch button.active{color:var(--spa-sage-dark);box-shadow:0 5px 16px rgba(69,61,52,.07)}
body.sova-spa-v22 .svc-search input{border-color:rgba(96,86,77,.13);background:rgba(255,255,255,.82)}
body.sova-spa-v22 .svc-search input:focus{border-color:#aebfb5;box-shadow:0 0 0 4px rgba(125,147,135,.12)}
body.sova-spa-v22 .svc-cat-btn{background:rgba(255,255,255,.66);border-color:rgba(96,86,77,.12)}
body.sova-spa-v22 .svc-cat-btn:hover{border-color:#b7c7be;color:var(--spa-sage-dark)}
body.sova-spa-v22 .svc-group{border-color:rgba(96,86,77,.10);border-radius:30px;box-shadow:var(--spa-shadow);background:rgba(255,255,255,.84);transition:transform .32s ease,box-shadow .32s ease}
body.sova-spa-v22 .svc-group:hover{transform:translateY(-2px);box-shadow:var(--spa-shadow-hover)}
body.sova-spa-v22 .svc-side{background:#eeeae3}
body.sova-spa-v22 .svc-media:after{background:linear-gradient(180deg,transparent 62%,rgba(44,41,37,.22))}
body.sova-spa-v22 .svc-type{color:var(--spa-sage-dark)}
body.sova-spa-v22 .svc-count{background:rgba(255,255,255,.62);border-color:rgba(96,86,77,.11)}
body.sova-spa-v22 .svc-row{border-bottom-color:rgba(96,86,77,.08);transition:background-color .22s ease}
body.sova-spa-v22 .svc-row:hover{background:rgba(232,237,232,.38)}
body.sova-spa-v22 .svc-badge{background:#e8eeea;color:var(--spa-sage-dark)}
body.sova-spa-v22 .svc-price{color:var(--spa-sage-dark)}
body.sova-spa-v22 .svc-detail{border-color:rgba(96,86,77,.14);color:#625d57}
body.sova-spa-v22 .svc-detail:hover{border-color:#aebfb5;color:var(--spa-sage-dark)}
body.sova-spa-v22 .svc-book{background:#e7eee9;color:var(--spa-sage-dark)}
body.sova-spa-v22 .svc-book:hover{background:var(--spa-sage-dark);color:#fff}
body.sova-spa-v22 .svc-more{background:#f6f3ee;border-color:#cfc8be;color:#635d56}
body.sova-spa-v22 .svc-no-media{background:linear-gradient(145deg,#e6ece8,#f3eee7);color:#718077}

/* Before/after */
body.sova-spa-v22 .ba-section{padding:92px 0 100px;background:var(--spa-sage-soft);border:0}
body.sova-spa-v22 .ba-card{background:rgba(255,255,255,.73);border-color:rgba(94,87,78,.10);border-radius:28px;box-shadow:var(--spa-shadow)}
body.sova-spa-v22 .ba-photo-after{box-shadow:inset 0 0 0 2px #95aa9e}
body.sova-spa-v22 .ba-label-after{background:var(--spa-sage-dark)}
body.sova-spa-v22 .ba-strip::-webkit-scrollbar-thumb,body.sova-spa-v22 .review-strip::-webkit-scrollbar-thumb{background:#9eafa5}
body.sova-spa-v22 .ba-strip::-webkit-scrollbar-track,body.sova-spa-v22 .review-strip::-webkit-scrollbar-track{background:rgba(105,96,87,.10)}

/* Reviews */
body.sova-spa-v22 #reviews{padding-top:92px!important;padding-bottom:96px!important}
body.sova-spa-v22 #reviews .review-strip-card{border-color:rgba(93,84,75,.09)!important;border-radius:24px!important;box-shadow:0 14px 42px rgba(69,61,52,.08)!important;background:rgba(255,255,255,.72)!important;transition:transform .28s ease,box-shadow .28s ease!important}
body.sova-spa-v22 #reviews .review-strip-card:hover{transform:translateY(-4px)!important;box-shadow:0 22px 56px rgba(69,61,52,.12)!important}

/* Team */
body.sova-spa-v22 #team{padding-top:92px!important;padding-bottom:100px!important}
body.sova-spa-v22 #team .grid>div{background:#f0ede7!important;border-color:rgba(93,84,75,.08)!important;border-radius:28px!important;box-shadow:none!important;transition:transform .28s ease,background-color .28s ease}
body.sova-spa-v22 #team .grid>div:hover{transform:translateY(-4px);background:#ebe7df!important}
body.sova-spa-v22 #team img{filter:saturate(.88) contrast(.98)}

/* Equipment */
body.sova-spa-v22 #equipment{padding-top:92px!important;padding-bottom:100px!important}
body.sova-spa-v22 #equipment .grid>div{background:rgba(255,255,255,.70)!important;border-color:rgba(84,98,102,.10)!important;border-radius:28px!important;box-shadow:0 14px 42px rgba(61,72,74,.06)!important;transition:transform .28s ease,box-shadow .28s ease}
body.sova-spa-v22 #equipment .grid>div:hover{transform:translateY(-3px);box-shadow:0 22px 58px rgba(61,72,74,.10)!important}
body.sova-spa-v22 #equipment img{border-radius:20px!important;filter:saturate(.9)}

/* FAQ enhanced */
body.sova-spa-v22 .sova-faq{padding:94px 0 100px;background:#f5f2eb;border:0;color:var(--spa-ink)}
body.sova-spa-v22 .sova-faq__eyebrow{color:var(--spa-sage-dark)}
body.sova-spa-v22 .sova-faq__search input{background:rgba(255,255,255,.65);border-color:rgba(93,84,75,.12);border-radius:18px}
body.sova-spa-v22 .sova-faq__search input:focus{border-color:#afc0b6;box-shadow:0 0 0 4px rgba(125,147,135,.11)}
body.sova-spa-v22 .sova-faq__cta{border-color:#cad7d0;background:#e8eee9;color:var(--spa-sage-dark)}
body.sova-spa-v22 .sova-faq__nav a{background:rgba(255,255,255,.56);border-color:rgba(93,84,75,.11)}
body.sova-spa-v22 .sova-faq__nav a:hover{border-color:#b4c5bb;color:var(--spa-sage-dark);background:#eef3ef}
body.sova-spa-v22 .sova-faq__item{border-color:rgba(93,84,75,.11)}
body.sova-spa-v22 .sova-faq__num{color:var(--spa-sage-dark)}
body.sova-spa-v22 .sova-faq__item[open] .sova-faq__plus{border-color:#aebfb5;color:var(--spa-sage-dark)}
body.sova-spa-v22 .sova-faq__bottom{background:linear-gradient(135deg,#e8eee9,#f3eee7);border-color:rgba(93,84,75,.10)}
body.sova-spa-v22 .sova-faq__btn--primary{background:var(--spa-sage-dark);color:#fff}

/* Contact + footer */
body.sova-spa-v22 #contacts{padding-top:84px!important;padding-bottom:84px!important}
body.sova-spa-v22 #contacts>div>div{background:rgba(255,255,255,.075)!important;border-color:rgba(255,255,255,.14)!important;box-shadow:0 24px 70px rgba(33,42,37,.18)!important}
body.sova-spa-v22 footer{background:#343c38!important;border-color:rgba(255,255,255,.06)!important;color:#b8c1bc!important}
body.sova-spa-v22 footer a:hover{color:#fff!important}

/* Public booking modal */
.spa-booking-modal{background:rgba(47,51,47,.55)!important;backdrop-filter:blur(12px)!important}
.spa-booking-card{background:#fbf9f5!important;border:1px solid rgba(255,255,255,.5);box-shadow:0 34px 110px rgba(39,42,39,.24)!important}
.spa-booking-card input,.spa-booking-card select,.spa-booking-card textarea{background:#fffdf9!important;border-color:rgba(92,83,73,.14)!important;transition:border-color .2s ease,box-shadow .2s ease}
.spa-booking-card input:focus,.spa-booking-card select:focus,.spa-booking-card textarea:focus{border-color:#a8b9af!important;box-shadow:0 0 0 4px rgba(125,147,135,.11)!important}
.spa-booking-card input[type="checkbox"]{accent-color:var(--spa-sage-dark)}
.spa-booking-card form>button[type="submit"]{background:var(--spa-sage-dark)!important;box-shadow:none!important}
.spa-booking-card form>button[type="submit"]:hover{background:#465b51!important;transform:translateY(-1px)}

/* Service detail pages */
.spa-service-page{background:#f5f2ec!important}
.spa-service-page>div:first-child{height:min(54vh,560px)!important}
.spa-service-page>div:first-child img,.spa-service-page>div:first-child video{filter:saturate(.85) contrast(.98)}
.spa-service-page>div:first-child .bg-stone-900\/40{background:rgba(48,48,43,.34)!important}
.spa-service-page .bg-white{background:#fcfaf6!important}
.spa-service-page .rounded-3xl{border-radius:28px!important}
.spa-service-page .border-stone-100{border-color:rgba(92,83,73,.10)!important}
.spa-service-page .bg-stone-50{background:#efebe4!important}

/* Popup v20 reskin */
body.sova-spa-v22 #sova-admin-popup{background:#fbf9f5;border-color:rgba(93,84,75,.10);box-shadow:0 28px 80px rgba(49,53,49,.18);border-radius:24px}
body.sova-spa-v22 #sova-admin-popup .sova-popup-head{background:linear-gradient(120deg,#7d9387,#92a59a)}
body.sova-spa-v22 #sova-admin-popup .sova-popup-accent{color:var(--spa-sage-dark)}
body.sova-spa-v22 #sova-admin-popup .sova-popup-cta{background:#e7eee9;color:var(--spa-sage-dark)}
body.sova-spa-v22 #sova-admin-popup .sova-popup-cta:hover{background:#dce7e1}

/* Mobile navigation */
.spa-mobile-toggle{display:none;width:42px;height:42px;border:1px solid rgba(93,84,75,.12);border-radius:14px;background:rgba(255,255,255,.58);color:#55514c;align-items:center;justify-content:center;cursor:pointer;padding:0}
.spa-mobile-toggle span,.spa-mobile-toggle span::before,.spa-mobile-toggle span::after{display:block;width:18px;height:1.5px;background:currentColor;border-radius:99px;position:relative;transition:.22s ease}
.spa-mobile-toggle span::before,.spa-mobile-toggle span::after{content:"";position:absolute;left:0}.spa-mobile-toggle span::before{top:-6px}.spa-mobile-toggle span::after{top:6px}
.spa-mobile-toggle[aria-expanded="true"] span{background:transparent}.spa-mobile-toggle[aria-expanded="true"] span::before{top:0;transform:rotate(45deg)}.spa-mobile-toggle[aria-expanded="true"] span::after{top:0;transform:rotate(-45deg)}
.spa-mobile-menu{display:none;position:absolute;top:100%;left:12px;right:12px;background:rgba(250,248,243,.97);border:1px solid rgba(93,84,75,.10);border-radius:20px;padding:9px;box-shadow:0 20px 55px rgba(61,56,49,.14);backdrop-filter:blur(18px)}
.spa-mobile-menu.is-open{display:grid;grid-template-columns:1fr 1fr;gap:5px}
.spa-mobile-menu a{padding:12px 13px;border-radius:13px;color:#55514c;text-decoration:none;font-size:14px;font-weight:650}
.spa-mobile-menu a:hover{background:#edf1ed;color:var(--spa-sage-dark)}
.spa-mobile-menu a:last-child{grid-column:1/-1;text-align:center;background:#e5ece8;color:var(--spa-sage-dark)}
.spa-bottom-nav{display:none}

/* Gentle scroll reveals */
.spa-reveal{opacity:0;transform:translateY(18px);transition:opacity .72s cubic-bezier(.2,.7,.2,1),transform .72s cubic-bezier(.2,.7,.2,1);transition-delay:var(--spa-delay,0ms)}
.spa-reveal.spa-visible{opacity:1;transform:none}

/* Better focus visibility */
body.sova-spa-v22 a:focus-visible,body.sova-spa-v22 button:focus-visible,body.sova-spa-v22 input:focus-visible,body.sova-spa-v22 select:focus-visible,body.sova-spa-v22 textarea:focus-visible{outline:2px solid #71897b!important;outline-offset:3px}

@media(max-width:1023px){
  .spa-mobile-toggle{display:flex}
  body.sova-spa-v22 #root header:first-of-type>div{position:relative}
  body.sova-spa-v22 #root header:first-of-type>div>div:last-child{margin-left:auto}
  body.sova-spa-v22 #root header:first-of-type>div{gap:10px}
  body.sova-spa-v22 .svc-toolbar{top:auto}
  .spa-trust__wrap{grid-template-columns:1fr 1fr}.spa-trust__item:nth-child(3){border-left:0;border-top:1px solid rgba(93,84,75,.10)}.spa-trust__item:nth-child(4){border-top:1px solid rgba(93,84,75,.10)}
}
@media(max-width:767px){
  html{scroll-padding-top:78px}
  body.sova-spa-v22{padding-bottom:72px}
  body.sova-spa-v22 #root header:first-of-type>div{padding-top:11px!important;padding-bottom:11px!important}
  body.sova-spa-v22 header .sova-logo-mark{font-size:28px!important}
  body.sova-spa-v22 main>section:first-child:not([id]){min-height:auto!important;padding-bottom:12px}
  body.sova-spa-v22 main>section:first-child:not([id])>div.relative{padding-top:54px!important;padding-bottom:54px!important}
  body.sova-spa-v22 main>section:first-child:not([id]) .sova-hero-title{font-size:clamp(38px,11vw,54px)!important}
  .spa-trust__item{padding:15px 10px;font-size:12px;gap:8px}.spa-trust__icon{width:25px;height:25px;flex:0 0 auto}
  body.sova-spa-v22 #services-enhanced,body.sova-spa-v22 .ba-section,body.sova-spa-v22 #reviews,body.sova-spa-v22 #team,body.sova-spa-v22 #equipment,body.sova-spa-v22 .sova-faq{padding-top:70px!important;padding-bottom:76px!important}
  body.sova-spa-v22 .svc-group{border-radius:22px}
  body.sova-spa-v22 #reviews .review-strip-card{border-radius:20px!important}
  .spa-bottom-nav{position:fixed;display:grid;grid-template-columns:1fr 1fr 1.18fr;left:10px;right:10px;bottom:9px;z-index:88;padding:6px;background:rgba(250,248,243,.94);border:1px solid rgba(93,84,75,.12);border-radius:19px;box-shadow:0 14px 44px rgba(48,48,43,.18);backdrop-filter:blur(18px);transform:translateZ(0)}
  .spa-bottom-nav a,.spa-bottom-nav button{min-height:48px;border:0;background:transparent;border-radius:14px;display:flex;flex-direction:column;gap:2px;align-items:center;justify-content:center;text-decoration:none;color:#625e58;font:650 11px/1.2 ui-sans-serif,system-ui;cursor:pointer}
  .spa-bottom-nav__icon{font-size:17px;line-height:1}
  .spa-bottom-nav .spa-bottom-nav__book{background:var(--spa-sage-dark);color:#fff;flex-direction:row;gap:6px;font-size:12px}
  #sova-admin-popup.sova-popup-right,#sova-admin-popup.sova-popup-left{bottom:82px!important}
}
@media(max-width:420px){
  .spa-mobile-menu.is-open{grid-template-columns:1fr}
  .spa-mobile-menu a:last-child{grid-column:auto}
  .spa-trust__wrap{grid-template-columns:1fr}.spa-trust__item+.spa-trust__item{border-left:0;border-top:1px solid rgba(93,84,75,.10)}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}.spa-reveal{opacity:1;transform:none;transition:none}body.sova-spa-v22 main>section:first-child:not([id]) .absolute.inset-0.z-0 img{animation:none!important}.svc-group,.review-strip-card,#team .grid>div,#equipment .grid>div{transition:none!important}
}


/* SOVA v26 — quiz result readability + compact recommendation title */
body.sova-spa-v22 main>section:first-child:not([id]) .lg\:col-span-5 h2{
  font-size:clamp(21px,2.15vw,29px)!important;
  line-height:1.16!important;
  margin-bottom:12px!important;
  overflow-wrap:anywhere;
  word-break:normal;
}
@media (max-width:1023px){
  body.sova-spa-v22 main>section:first-child:not([id]) .lg\:col-span-5 h2{
    font-size:clamp(20px,5.4vw,25px)!important;
    line-height:1.18!important;
  }
}


/* v29 editorial headings + SOVA motif */
.sova-editorial-heading{
  font-family: Georgia, "Times New Roman", serif !important;
  font-weight: 500 !important;
  letter-spacing: -0.035em !important;
  line-height: .92 !important;
  color: #1f1c1a !important;
  text-wrap: balance;
}
.sova-editorial-heading.sova-hero-title{
  font-size: clamp(2.8rem, 7vw, 5.4rem) !important;
  max-width: 11ch;
}
.sova-editorial-heading.sova-section-title{
  font-size: clamp(2.35rem, 4.4vw, 4rem) !important;
  position: relative;
  display: inline-block;
}
.sova-editorial-heading .sova-accent{
  color: #0284c7 !important;
  font-style: italic;
}
.sova-editorial-heading .sova-line{
  display:block;
}
.sova-heading-shell{
  position:relative;
  display:inline-block;
  padding-right: 4.5rem;
}
.sova-heading-shell::before,
.sova-heading-shell::after{
  content:"";
  position:absolute;
  border:1px solid rgba(2,132,199,.18);
  border-radius:999px;
  pointer-events:none;
}
.sova-heading-shell::before{
  width:88px;height:46px;right:.1rem;top:.45rem;
}
.sova-heading-shell::after{
  width:58px;height:30px;right:1rem;top:1rem;
  background: radial-gradient(circle at center, rgba(2,132,199,.09) 0 24%, transparent 25%);
}
.sova-hero-decor{
  position: relative !important;
  isolation: isolate;
  overflow: hidden;
}
.sova-hero-decor::before,
.sova-hero-decor::after{
  content:"";
  position:absolute;
  border-radius:999px;
  pointer-events:none;
  z-index:0;
}
.sova-hero-decor::before{
  width:min(30vw, 420px);
  height:min(16vw, 220px);
  left:-6%;
  top:8%;
  border:1px solid rgba(2,132,199,.12);
  box-shadow: inset 0 0 0 18px rgba(2,132,199,.035), inset 0 0 0 42px rgba(2,132,199,.02);
  transform: rotate(-8deg);
}
.sova-hero-decor::after{
  width:min(33vw, 460px);
  height:min(18vw, 240px);
  right:-5%;
  top:4%;
  background:
    radial-gradient(ellipse at center, rgba(2,132,199,.07) 0 10%, transparent 11% 100%),
    linear-gradient(130deg, rgba(2,132,199,.06), rgba(2,132,199,0) 70%);
  border:1px solid rgba(2,132,199,.12);
  box-shadow: inset 0 0 0 18px rgba(255,255,255,.28), inset 0 0 0 44px rgba(2,132,199,.022);
}
.sova-hero-veil{
  position:absolute; inset:0;
  background:
    radial-gradient(48% 30% at 20% 18%, rgba(2,132,199,.085), transparent 60%),
    radial-gradient(36% 24% at 83% 16%, rgba(2,132,199,.075), transparent 60%);
  z-index:0;
  pointer-events:none;
}
.sova-hero-decor > *:not(.absolute):not(.sova-hero-veil){ position:relative; z-index:1; }

.sova-section-motif{ position: relative; }
.sova-section-motif::before{
  content:"";
  position:absolute;
  right:min(3vw,26px);
  top:18px;
  width:84px; height:44px;
  border:1px solid rgba(2,132,199,.14);
  border-radius:999px;
  pointer-events:none;
}
.sova-section-motif::after{
  content:"";
  position:absolute;
  right:min(4vw,40px);
  top:25px;
  width:56px; height:28px;
  border:1px solid rgba(2,132,199,.11);
  border-radius:999px;
  pointer-events:none;
}
.sova-subtle-arc{ position:relative; }
.sova-subtle-arc::after{
  content:"";
  position:absolute;
  left:-14px; bottom:-8px;
  width:54px;height:24px;
  border:1px solid rgba(2,132,199,.16);
  border-top:none;
  border-radius:0 0 999px 999px;
  pointer-events:none;
}
@media (max-width: 960px){
  .sova-editorial-heading.sova-hero-title{max-width:12ch}
  .sova-heading-shell{padding-right:2.8rem}
  .sova-heading-shell::before{width:58px;height:30px;top:.3rem}
  .sova-heading-shell::after{width:38px;height:20px;top:.75rem;right:.6rem}
}

/* v45 clean public controller */
.sova-honeypot{position:absolute!important;left:-99999px!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}
.team-book-btn{margin-top:auto;min-width:150px;padding:11px 22px;border:0;border-radius:999px;background:#0284c7;color:#fff;font:600 14px/1.2 system-ui,-apple-system,Segoe UI,sans-serif;cursor:pointer;transition:transform .2s ease,background-color .2s ease,box-shadow .2s ease;box-shadow:0 8px 22px rgba(2,132,199,.16)}
.team-book-btn:hover{background:#0369a1;transform:translateY(-1px);box-shadow:0 10px 26px rgba(2,132,199,.22)}
.team-book-btn:focus-visible{outline:3px solid rgba(2,132,199,.25);outline-offset:3px}
body.sova-v45 .spa-booking-modal{overflow-y:auto}
body.sova-v45 .spa-booking-card{max-height:calc(100vh - 32px);overflow-y:auto}
@media (prefers-reduced-motion:reduce){.team-book-btn{transition:none}.team-book-btn:hover{transform:none}}

/* SOVA v46 — conversion + trust refinements */
.spa-trust__item{text-decoration:none}
.spa-trust__item[data-trust-yandex]{transition:background .2s ease,color .2s ease}
.spa-trust__item[data-trust-yandex]:hover{background:rgba(255,255,255,.42);color:var(--spa-sage-dark)}
body.sova-v46 #sova-home-hero [data-sova-hero-description]{max-width:680px}
body.sova-v46 #sova-home-hero [data-sova-booking]{min-width:168px}
body.sova-v46 #sova-home-hero [data-scroll-services]{min-width:168px}
@media(max-width:767px){
  body.sova-v46 #sova-home-hero [data-sova-hero-description]{font-size:16px!important;line-height:1.6!important;margin-bottom:28px!important}
  body.sova-v46 #sova-home-hero [data-sova-booking],body.sova-v46 #sova-home-hero [data-scroll-services]{width:100%}
}
