/* 3девицы — общий стиль сайта */
:root{--ink:#0F1B3D;--ink2:#3A4566;--paper:#FFFFFF;--bg:#F4F8FC;--orange:#FF5A1F;--yellow:#FFD60A;--blue:#1F4BFF;--mint:#6BEADF;--pink:#F93CA2;--violet:#A98BEA}
*{box-sizing:border-box}
html,body{margin:0}
body{font-family:'Onest',system-ui,-apple-system,Segoe UI,Arial,sans-serif;color:var(--ink);background:var(--bg);line-height:1.5}
img{max-width:100%;display:block}
a{color:inherit}
h1,h2,h3,.disp{font-family:'Unbounded','Onest',system-ui,sans-serif;letter-spacing:-.02em;text-wrap:balance}
.folk{font-family:'Ruslan Display','Unbounded',serif}
.wrap{max-width:1200px;margin:0 auto;padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px))}
.logo{display:flex;align-items:baseline;gap:2px;text-decoration:none;line-height:1}
.logo .n{font-family:'Unbounded',sans-serif;font-size:32px;font-weight:900;color:var(--orange);text-shadow:0 2px 0 rgba(15,27,61,.25)}
.logo .w{font-family:'Ruslan Display','Unbounded',serif;font-size:30px;letter-spacing:.02em}
.clay{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:56px;padding:0 28px;border:0;border-radius:22px;font:600 17px 'Onest',sans-serif;text-decoration:none;cursor:pointer;box-shadow:inset 0 -6px 0 rgba(15,27,61,.2),inset 0 3px 0 rgba(255,255,255,.5),0 16px 26px -12px rgba(15,27,61,.5);transition:transform 160ms cubic-bezier(.34,1.56,.64,1)}
.clay:hover{transform:translateY(-3px) rotate(-1.5deg)}
.clay:active{transform:translateY(2px) scale(.97)}
.clay.dark{background:var(--ink);color:#fff}
.clay.light{background:#fff;color:var(--ink)}
.clay.sun{background:var(--yellow);color:var(--ink)}
.clay.small{min-height:46px;padding:0 20px;font-size:15px}
:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
.pill{display:inline-block;margin:0;padding:8px 16px;background:#fff;border-radius:999px;font-size:14px;font-weight:600}
.topnav{display:flex;align-items:center;gap:26px;font-size:15px;font-weight:600}
.topnav a:not(.clay){text-decoration:none}
.topnav a:not(.clay):hover{text-decoration:underline}

/* ===== Внутренние страницы ===== */
.page-head{position:sticky;top:0;z-index:10;background:rgba(244,248,252,.92);backdrop-filter:blur(10px);border-bottom:1px solid rgba(15,27,61,.08)}
.page-head .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:14px;padding-bottom:14px}
.hero{padding:56px 0 64px}
.hero .wrap{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:48px;align-items:center}
.hero h1{margin:16px 0 18px;font-size:clamp(34px,4.6vw,60px);line-height:1.02;font-weight:900}
.lead{font-size:20px;line-height:1.55;margin:0 0 26px;max-width:36em}
.hero .ph{border-radius:40px;overflow:hidden;box-shadow:0 50px 80px -40px rgba(15,27,61,.55);aspect-ratio:4/5}
.hero .ph img{width:100%;height:100%;object-fit:cover}
.crumbs{font-size:14px;color:var(--ink2)}
.crumbs a{color:var(--ink2)}
.sec{padding:64px 0}
.sec h2{font-size:clamp(28px,3.4vw,44px);line-height:1.08;margin:0 0 14px;font-weight:800}
.sec .sub{font-size:18px;color:var(--ink2);max-width:42em;margin:0 0 32px}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px}
.card{background:#fff;border-radius:28px;padding:28px;box-shadow:0 24px 40px -28px rgba(15,27,61,.35)}
.card h3{margin:0 0 8px;font-size:20px;line-height:1.2;font-weight:800}
.card p{margin:0;font-size:16px;color:var(--ink2)}
.card.photo{padding:10px 10px 18px}
.card.photo img{border-radius:20px;aspect-ratio:1/1;object-fit:cover;width:100%;margin-bottom:12px}
.card.photo h3,.card.photo p{padding:0 10px}
.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;counter-reset:s}
.steps li{counter-increment:s;background:#fff;border-radius:28px;padding:28px;font-size:16px;color:var(--ink2)}
.steps li::before{content:counter(s);display:flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:50%;background:var(--yellow);color:var(--ink);font:900 18px 'Unbounded',sans-serif;margin-bottom:14px;box-shadow:inset -6px -8px 12px rgba(15,27,61,.15),inset 4px 6px 10px rgba(255,255,255,.6)}
.steps li b{display:block;color:var(--ink);font-size:18px;margin-bottom:4px}
.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;align-items:center}
.split img{border-radius:32px;box-shadow:0 40px 60px -36px rgba(15,27,61,.5)}
.split h2{margin-top:0}
.split p{font-size:17px;color:var(--ink2)}
.tick{list-style:none;padding:0;margin:0 0 20px;display:flex;flex-direction:column;gap:10px}
.tick li{padding-left:34px;position:relative;font-size:17px}
.tick li::before{content:"";position:absolute;left:0;top:4px;width:20px;height:20px;border-radius:50%;background:var(--orange);box-shadow:inset -3px -4px 6px rgba(15,27,61,.2)}
.faq{max-width:860px}
.faq details{background:#fff;border-radius:22px;padding:20px 24px;margin-bottom:12px}
.faq summary{cursor:pointer;font-weight:600;font-size:18px;list-style-position:outside}
.faq details p{margin:12px 0 0;color:var(--ink2);font-size:16px}
.cta{background:var(--blue);color:#fff;border-radius:40px;padding:48px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:24px}
.cta h2{color:#fff;margin:0 0 8px}
.cta p{margin:0;font-size:18px;opacity:.9}
.cta .acts{display:flex;flex-wrap:wrap;align-items:center;gap:16px 24px}
.cta .tel{font:800 22px 'Unbounded',sans-serif;text-decoration:none;color:#fff;white-space:nowrap}
.updated{font-size:14px;color:var(--ink2)}
.site-foot{background:var(--ink);color:#C9D3E6;padding:36px 0;margin-top:40px;font-size:15px}
.site-foot .wrap{display:flex;flex-wrap:wrap;justify-content:space-between;gap:20px}
.site-foot a{color:#fff}
.site-foot nav{display:flex;flex-wrap:wrap;gap:18px}
@media (max-width:900px){
.hero .wrap,.split{grid-template-columns:1fr}
.topnav a.lnk{display:none}
.cta{padding:32px}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}

/* ===== Главная: карусель ===== */
.home{overflow:hidden}
.deck{position:relative;height:100vh;height:100dvh;min-height:640px;overflow:hidden;transition:background-color 900ms ease}
.no-js .deck{height:auto;overflow:visible}
.slide{position:absolute;inset:0;overflow:hidden;visibility:hidden}
.no-js .slide{position:relative;min-height:100vh;visibility:visible}
.slide.is-on{visibility:visible}
.slide.is-past,.slide.is-next{visibility:visible;pointer-events:none}
.pwrap{position:absolute;inset:0;transition:transform 1000ms cubic-bezier(.22,1,.36,1),filter 1000ms cubic-bezier(.22,1,.36,1),opacity 800ms ease}
.slide .pwrap{opacity:0;transform:scale(1.06);filter:blur(22px)}
.slide.is-past .pwrap{transform:scale(1.35);filter:blur(18px)}
.slide.is-on .pwrap,.no-js .slide .pwrap{opacity:1;transform:none;filter:none}
.pwrap>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:70% 50%}
.copy{position:absolute;left:max(24px,6vw);top:50%;transform:translateY(-50%);width:min(560px,42vw);display:flex;flex-direction:column;gap:20px;z-index:2}
.fx{opacity:0;transform:translateY(32px);transition:opacity 600ms ease,transform 700ms cubic-bezier(.22,1,.36,1)}
.slide.is-past .fx{transform:translateY(-24px)}
.slide.is-on .fx,.no-js .fx{opacity:1;transform:none;transition-delay:calc(280ms + var(--d,1) * 110ms)}
.slide p{margin:0}
.slide h1,.slide h2{margin:0}
.note{font-size:15px;line-height:1.5;font-weight:500}
.more{font-size:15px;font-weight:600}
.deck-head{position:absolute;top:0;left:0;right:0;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px max(24px,4vw);transition:color 600ms ease}
.deck-nav{position:absolute;left:0;right:0;bottom:24px;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 max(24px,4vw)}
.no-js .deck-nav{display:none}
.dots{display:flex}
.dot{width:40px;height:44px;border:0;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}
.dot span{display:block;width:12px;height:12px;border-radius:999px;background:rgba(255,255,255,.6);box-shadow:0 2px 6px rgba(15,27,61,.3);transition:width 300ms cubic-bezier(.22,1,.36,1),background-color 300ms ease}
.dot[aria-current="true"] span{width:36px;background:#fff}
.arrows{display:flex;gap:10px}
.arrow{width:56px;height:56px;border-radius:50%;border:0;background:#fff;color:var(--ink);cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:inset 0 -4px 0 rgba(15,27,61,.15),0 10px 18px -10px rgba(15,27,61,.5);transition:transform 160ms cubic-bezier(.34,1.56,.64,1)}
.arrow:hover{transform:scale(1.06)}
.arrow:active{transform:scale(.92)}
/* витрина на стартовом слайде */
.heroside{position:absolute;right:max(24px,5vw);top:50%;translate:0 -47%;display:flex;align-items:center;gap:16px;z-index:2}
.herocard{position:relative;height:min(70vh,640px);aspect-ratio:4/5;border-radius:44px;overflow:hidden;box-shadow:0 50px 80px -40px rgba(15,27,61,.55)}
.hitem{position:absolute;inset:0;margin:0;opacity:0;transform:scale(1.05);filter:blur(20px);transition:transform 1100ms cubic-bezier(.22,1,.36,1),filter 1100ms cubic-bezier(.22,1,.36,1),opacity 900ms ease}
.hitem.on{opacity:1;transform:none;filter:none;z-index:2}
.hitem.out{transform:scale(1.25);filter:blur(16px);z-index:1}
.hitem img{width:100%;height:100%;object-fit:cover}
.chip{position:absolute;left:18px;bottom:18px;right:18px;display:flex;flex-direction:column;gap:2px;padding:12px 16px;background:rgba(255,255,255,.88);backdrop-filter:blur(8px);border-radius:20px}
.chip small{font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#5A6580}
.chip b{font-family:'Unbounded',sans-serif;font-size:17px}
.chip span{font-size:14px;color:var(--ink2)}
.thumbs{display:flex;flex-direction:column;gap:8px}
.thumb{width:50px;height:50px;padding:0;border-radius:16px;overflow:hidden;cursor:pointer;border:3px solid transparent;background:#fff;box-shadow:0 10px 18px -10px rgba(15,27,61,.6);transition:transform 200ms cubic-bezier(.34,1.56,.64,1)}
.thumb[aria-pressed="true"]{border-color:#fff;transform:scale(1.12)}
.thumb img{width:100%;height:100%;object-fit:cover}
.svc{display:flex;flex-direction:column;gap:6px;padding:16px 20px;background:rgba(255,255,255,.72);border-radius:24px;backdrop-filter:blur(6px)}
.svc .k{font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--ink2)}
.evrow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.evcard{margin:0;background:#fff;padding:10px 10px 16px;border-radius:28px;box-shadow:0 30px 50px -28px rgba(15,27,61,.55);display:flex;flex-direction:column;gap:10px}
.evcard img{width:100%;aspect-ratio:1/1;max-height:30vh;object-fit:cover;border-radius:20px}
.evcard figcaption{padding:0 8px;display:flex;flex-direction:column;gap:4px}
.evcard b{font-family:'Unbounded',sans-serif;font-size:17px;line-height:1.2}
.evcard span{font-size:14px;line-height:1.4;color:var(--ink2)}
.stack{position:absolute;top:96px;bottom:100px;left:0;right:0;padding-left:max(24px,6vw);padding-right:max(24px,6vw);display:flex;flex-direction:column;justify-content:center;gap:26px}
.faqbox{position:absolute;right:max(24px,6vw);top:50%;translate:0 -50%;width:min(36vw,480px);background:#fff;color:var(--ink);border-radius:32px;padding:26px 28px;box-shadow:0 40px 70px -36px rgba(0,0,0,.5)}
.faqbox details{border-top:1px solid #E3E7F0;padding:12px 0}
.faqbox summary{cursor:pointer;font-weight:600;font-size:16px}
.faqbox details p{margin:8px 0 0;font-size:15px;line-height:1.55;color:#33405F}
.foot-links{display:flex;flex-wrap:wrap;gap:8px 18px;font-size:14px}
/* анимации активного слайда */
.slide.is-on .kb{animation:kb 14s ease-out both}
@keyframes kb{from{transform:scale(1)}to{transform:scale(1.07)}}
.slide.is-on .land{animation:land 1200ms cubic-bezier(.22,1,.36,1) both}
@keyframes land{0%{transform:translateY(-10%) scale(1.08) rotate(-2deg);filter:blur(14px);opacity:0}55%{transform:translateY(1.5%) scale(1);filter:blur(0);opacity:1}75%{transform:translateY(-.7%)}100%{transform:translateY(0)}}
.pop{display:inline-block;opacity:0}
.slide.is-on .pop,.no-js .pop{animation:pop 700ms cubic-bezier(.34,1.56,.64,1) both}
@keyframes pop{0%{transform:scale(.4) rotate(-8deg);opacity:0}100%{transform:none;opacity:1}}
.twinkle{position:absolute;opacity:0}
.slide.is-on .twinkle{animation:tw 1600ms ease-in-out infinite}
@keyframes tw{0%,100%{transform:scale(.55);opacity:.35}50%{transform:scale(1.15) rotate(25deg);opacity:1}}
.slide.is-on .bob{animation:bob 3400ms ease-in-out infinite}
@keyframes bob{0%,100%{translate:0 0}50%{translate:0 -9px}}
.rise{opacity:0}
.slide.is-on .rise,.no-js .rise{animation:rise 900ms cubic-bezier(.34,1.4,.64,1) both}
@keyframes rise{0%{opacity:0;transform:translateY(70px) scale(.9)}100%{opacity:1}}
.bubble{position:absolute;opacity:0;border-radius:50%;box-shadow:inset -8px -10px 16px rgba(15,27,61,.18),inset 6px 8px 14px rgba(255,255,255,.6)}
.slide.is-on .bubble{opacity:1;animation:fl 7s ease-in-out infinite}
@keyframes fl{0%,100%{transform:translateY(0)}50%{transform:translateY(-22px)}}
@media (max-width:900px){
.heroside{left:16px;right:16px;top:80px;translate:none;justify-content:center}
.herocard{height:30vh;aspect-ratio:auto;width:100%;border-radius:28px}
.slide .note,.m-hide,.chip span,.chip small{display:none!important}
.chip{padding:8px 14px;left:12px;right:auto;bottom:12px}
.thumbs,.svc,.faqbox,.twinkle{display:none!important}
.copy{left:16px;right:16px;width:auto!important;top:auto!important;bottom:96px;transform:none!important;gap:12px}
.copy h1,.copy h2{font-size:26px!important}
.copy p{font-size:15px!important}
.stack{padding-left:16px;padding-right:16px;top:80px;justify-content:flex-start;gap:14px}
.stack h2{font-size:26px!important}
.evrow{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px}
.evrow>*{flex:0 0 70%;scroll-snap-align:start}
.lineup{height:58%!important}
.deck-head .topnav a.lnk{display:none}
}
@media (prefers-reduced-motion:reduce){.pwrap,.hitem,.fx{transition:none!important}}
