/* Общие стили сайта PPFit. Акцент страницы задаётся переменной --ac на <html>. */
:root{--bg:#0B0C0A;--panel:#15171A;--raised:#1B1E21;--deep:#101210;--line:#262A2D;--line2:#3A3F43;--tx:#F2F3EE;--mute:#B5BAB0;--dim:#8E948A;--red:#F06A4C;--ac:#C8F03C;--pad-x:32px;--sec-y:88px}
@media (max-width:899px){:root{--pad-x:24px;--sec-y:72px}}
@media (max-width:599px){:root{--pad-x:16px;--sec-y:56px}}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:80px}
body{margin:0;background:var(--bg);color:var(--tx);font-family:'Manrope',system-ui,sans-serif;-webkit-font-smoothing:antialiased}
a{color:var(--ac);text-decoration:none}
a:hover{opacity:.9}
button{font-family:inherit}
img{max-width:100%}
input[type=range]{width:100%;height:28px;cursor:pointer;accent-color:var(--ac)}
[hidden]{display:none!important}

@keyframes ppIn{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
@keyframes ppFade{from{opacity:0}to{opacity:1}}
@keyframes ppFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
@keyframes ppShine{0%{transform:translateX(-120%) skewX(-16deg)}60%,100%{transform:translateX(320%) skewX(-16deg)}}
[data-rv]{opacity:0;transform:translateY(36px);transition:opacity .9s cubic-bezier(.2,.7,.2,1),transform .9s cubic-bezier(.2,.7,.2,1)}
[data-rv].on{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}[data-rv]{opacity:1;transform:none}}

/* Типографика */
.mono{font:500 12px/1 'JetBrains Mono',monospace}
.kicker{font:500 13px/1 'JetBrains Mono',monospace;color:var(--ac)}
.h1{margin:0;font:italic 900 clamp(40px,5.2vw,74px)/1.03 'Exo 2';letter-spacing:-.015em;text-wrap:balance}
.h2{margin:0;font:italic 900 clamp(32px,4vw,50px)/1.05 'Exo 2';letter-spacing:-.01em;text-wrap:balance}
.lead{margin:0;font:400 19px/1.6 'Manrope';color:var(--mute);max-width:560px;text-wrap:pretty}
.sub{margin:0;font:400 16px/1.6 'Manrope';color:var(--dim)}
.slash{flex-shrink:0;width:6px;height:14px;background:var(--ac);transform:skewX(-16deg)}

/* Раскладка */
.wrap{max-width:1600px;margin:0 auto;padding:var(--sec-y) var(--pad-x)}
.sec{border-bottom:1px solid var(--line)}
.stack{display:flex;flex-direction:column}
.head{display:flex;flex-direction:column;gap:14px;max-width:820px}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,var(--min,300px)),1fr));gap:var(--gap,16px)}
.card{background:var(--panel);border:1px solid var(--line);border-radius:22px}

/* Кнопки и поля */
.btn{display:inline-block;border:0;cursor:pointer;background:var(--ac);color:var(--bg);border-radius:12px;padding:15px 20px;font:800 15px/1 'Manrope';text-align:center}
.btn:hover{opacity:.92}
.btn-dark{background:var(--bg);color:var(--tx)}
.field{width:100%;background:var(--bg);border:1px solid var(--line);border-radius:12px;padding:16px;color:var(--tx);font:500 16px/1 'Manrope';outline:none}
.field:focus{border-color:var(--ac)}
.consent{display:flex;gap:10px;align-items:flex-start;cursor:pointer;color:var(--dim);font:500 12.5px/1.5 'Manrope'}
.consent input{appearance:none;-webkit-appearance:none;flex-shrink:0;width:20px;height:20px;margin:1px 0 0;border-radius:6px;border:1.5px solid var(--line2);background:transparent;cursor:pointer;display:grid;place-items:center}
.consent input:checked{background:var(--ac);border-color:var(--ac)}
.consent input:checked::after{content:'✓';color:var(--bg);font:800 13px/1 'Manrope'}
.consent input:focus-visible{outline:2px solid var(--ac);outline-offset:2px}
.consent.err input{border-color:var(--red)}
.form-err{font:600 12.5px/1.4 'Manrope';color:var(--red)}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

/* Шапка */
.nav{position:sticky;top:0;z-index:40;background:rgba(11,12,10,.94);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.nav-in{max-width:1600px;margin:0 auto;padding:14px var(--pad-x);display:flex;align-items:center;justify-content:space-between;gap:24px}
@media (max-width:599px){.nav-in{padding:12px 16px}}
.logo{display:flex;align-items:center;gap:9px;color:var(--tx);flex-shrink:0}
.logo-mark{display:flex;gap:3.5px;transform:skewX(-16deg)}
.logo-mark i{width:6.5px;height:23px;background:var(--ac);border-radius:1.3px}
.logo b{font:italic 900 24px/1 'Exo 2'}
.nav-menu{display:flex;gap:4px;align-items:center;flex:1;justify-content:center}
.nav-top{display:flex;align-items:center;gap:7px;border:0;background:transparent;color:var(--mute);cursor:pointer;padding:11px 14px;border-radius:10px;font:600 14px/1 'Manrope'}
.nav-top:hover,.nav-top[aria-expanded=true]{color:var(--tx)}
.nav-top[aria-expanded=true]{background:var(--raised)}
.nav-top .chev{width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-top:-4px;transition:transform .2s}
.nav-top[aria-expanded=true] .chev{transform:rotate(225deg);margin-top:4px}
.nav-right{display:flex;gap:12px;align-items:center;flex-shrink:0}
.nav-phone{font:600 14px/1 'Manrope';color:var(--tx)}
.nav-login{font:600 14px/1 'Manrope';color:var(--mute);padding:12px 4px}
.nav-login:hover{color:var(--tx)}
@media (max-width:599px){.nav-login{display:none}}
.nav-cta{font:700 14px/1 'Manrope';color:var(--bg);background:var(--ac);padding:12px 18px;border-radius:12px}
.burger{width:44px;height:44px;border-radius:12px;border:1px solid var(--line);background:transparent;cursor:pointer;display:none;flex-direction:column;align-items:center;justify-content:center;gap:5px}
.burger i{width:18px;height:2px;background:var(--tx);border-radius:1px}
.burger i:last-child{width:12px;background:var(--ac);margin-left:6px}
.mega{position:absolute;left:0;right:0;top:100%;background:var(--deep);border-bottom:1px solid var(--line);box-shadow:0 40px 80px rgba(0,0,0,.55)}
.mega-in{max-width:1600px;margin:0 auto;padding:32px;display:grid;grid-template-columns:minmax(0,3fr) minmax(0,1.15fr);gap:32px}
.mega-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:28px}
.mega-title{font:500 11px/1 'JetBrains Mono',monospace;color:var(--dim);letter-spacing:.08em;padding:0 12px 10px}
.mega-item{display:flex;gap:12px;align-items:flex-start;padding:12px;border-radius:12px;color:var(--tx)}
.mega-item:hover{background:var(--raised);opacity:1}
.mega-ico{flex-shrink:0;width:34px;height:34px;border-radius:9px;background:var(--raised);display:grid;place-items:center}
.mega-item .mega-ico{display:grid;margin:0}
.mega-ico i{display:block;width:6px;height:16px;transform:skewX(-16deg);border-radius:1px}
.mega-item b{display:block;font:700 15px/1.25 'Manrope'}
.mega-item span{display:block;margin-top:4px;font:500 13px/1.4 'Manrope';color:var(--dim)}
.promo{position:relative;overflow:hidden;border-radius:20px;background:#C8F03C;color:var(--bg);padding:24px;display:flex;flex-direction:column;justify-content:space-between;gap:20px;min-height:260px}
.promo-bars{position:absolute;top:-30px;right:-20px;width:110px;height:180px;display:flex;gap:12px;transform:skewX(-16deg);opacity:.25}
.promo-bars i{flex:1;background:var(--bg)}
.promo-go{position:relative;align-self:flex-start;background:var(--bg);color:var(--tx);border-radius:11px;padding:12px 16px;font:800 14px/1 'Manrope'}
.mobile-menu{border-top:1px solid var(--line);max-height:calc(100vh - 72px);overflow-y:auto;padding:8px 16px 24px;display:flex;flex-direction:column}
.m-group{border-bottom:1px solid var(--line)}
.m-toggle{width:100%;display:flex;justify-content:space-between;align-items:center;background:none;border:0;color:var(--tx);cursor:pointer;padding:18px 0;font:800 18px/1 'Manrope'}
.m-toggle span{font:500 20px/1 'JetBrains Mono',monospace;color:var(--ac)}
.m-items{display:flex;flex-direction:column;gap:2px;padding-bottom:14px}
.m-items a{display:flex;gap:12px;align-items:center;padding:12px 4px;color:var(--tx);font:600 15px/1.3 'Manrope'}
.m-items a i{flex-shrink:0;width:5px;height:14px;transform:skewX(-16deg)}
@media (max-width:999px){.nav-menu,.mega{display:none!important}.burger{display:flex}}
@media (min-width:1000px){.mobile-menu{display:none!important}}
@media (max-width:1279px){.nav-phone{display:none}}

/* Плашка акции, закреплённая плашка, cookie, модалка */
.offer-bar{display:block;width:100%;border:0;cursor:pointer;background:var(--ac);color:var(--bg);text-align:center;padding:11px 20px;font:700 14px/1.4 'Manrope'}
.sticky{position:fixed;left:50%;bottom:20px;transform:translateX(-50%);z-index:30;display:flex;justify-content:space-between;gap:14px;align-items:center;background:var(--raised);border:1px solid var(--line2);border-radius:16px;padding:10px 10px 10px 20px;box-shadow:0 20px 50px rgba(0,0,0,.5);animation:ppIn .5s ease both;font:600 14px/1.3 'Manrope'}
.sticky .btn{border-radius:11px;padding:14px 18px;font-size:14px;flex-shrink:0}
.sticky .short{display:none}
@media (max-width:599px){.sticky{bottom:12px;width:calc(100% - 24px)}.sticky .long{display:none}.sticky .short{display:inline}}
.cookie{position:fixed;left:20px;bottom:20px;z-index:50;max-width:440px;background:var(--raised);border:1px solid var(--line2);border-radius:20px;padding:22px;display:flex;flex-direction:column;gap:14px;box-shadow:0 24px 60px rgba(0,0,0,.55);animation:ppIn .5s .4s both}
@media (max-width:599px){.cookie{left:12px;right:12px;bottom:12px}}
.cookie b{font:800 16px/1.3 'Manrope'}
.cookie p{margin:0;font:500 13.5px/1.55 'Manrope';color:var(--mute)}
.cookie-btns{display:flex;gap:8px;flex-wrap:wrap}
.cookie-btns button{flex:1 1 140px;border-radius:11px;padding:14px;font:800 14px/1 'Manrope';cursor:pointer}
.btn-ghost{border:1px solid var(--line2);background:transparent;color:var(--tx)}
.modal{position:fixed;inset:0;z-index:60;background:rgba(5,6,5,.72);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:24px;animation:ppFade .3s ease both}
.modal-box{position:relative;overflow:hidden auto;width:100%;max-width:520px;max-height:100%;background:var(--panel);border:1px solid var(--line);border-radius:24px;padding:32px;display:flex;flex-direction:column;gap:18px;box-shadow:0 40px 120px rgba(0,0,0,.6);animation:ppIn .45s both}
@media (max-width:599px){.modal{align-items:flex-end;padding:0}.modal-box{border-radius:24px 24px 0 0}}
.modal-bars{position:absolute;top:-60px;right:-40px;width:120px;height:130px;display:flex;gap:14px;transform:skewX(-16deg);pointer-events:none}
.modal-bars i{flex:1;background:var(--ac)}
.modal-x{position:absolute;top:14px;right:14px;z-index:2;width:40px;height:40px;border-radius:12px;border:0;background:var(--bg);color:var(--tx);cursor:pointer;font:500 20px/1 'JetBrains Mono',monospace}
.modal-title{font:italic 900 34px/1.05 'Exo 2'}
.timer{display:flex;gap:8px}
.timer div{flex:1;background:var(--bg);border-radius:12px;padding:12px 6px;display:flex;flex-direction:column;align-items:center;gap:6px}
.timer b{font:italic 900 26px/1 'Exo 2';color:var(--ac)}
.timer span{font:500 11px/1 'Manrope';color:var(--dim)}
.done-title{font:italic 900 36px/1 'Exo 2';color:var(--ac)}

/* Телефон и окно браузера для экранов приложения */
.phone{position:relative;aspect-ratio:390/844;border-radius:36px;border:8px solid #1F2226;background:var(--bg);overflow:hidden;box-shadow:0 40px 90px rgba(0,0,0,.5)}
.phone>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top}
.phone>.scr{position:absolute;inset:0}
.browser{border-radius:18px;border:1px solid var(--line);background:var(--panel);overflow:hidden;box-shadow:0 40px 90px rgba(0,0,0,.5)}
.browser-bar{display:flex;align-items:center;gap:8px;padding:14px 16px;border-bottom:1px solid var(--line)}
.browser-bar i{width:11px;height:11px;border-radius:50%;background:var(--line2)}
.browser-bar span{margin-left:14px;font:500 12px/1 'JetBrains Mono',monospace;color:var(--dim)}

/* FAQ */
.faq-item{border-bottom:1px solid var(--line)}
.faq-q{width:100%;background:none;border:0;color:var(--tx);cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:22px 0;text-align:left;font:700 17px/1.4 'Manrope'}
.faq-q span{font:500 20px/1 'JetBrains Mono',monospace;color:var(--ac);flex-shrink:0}
.faq-a{font:400 15px/1.6 'Manrope';color:var(--mute);padding:0 40px 22px 0;text-wrap:pretty}

/* Подвал */
.foot{border-top:1px solid var(--line)}
.foot-in{max-width:1600px;margin:0 auto;padding:32px var(--pad-x);display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;align-items:center;font:500 14px/1 'Manrope'}
.foot a{color:var(--mute)}
.foot-links{display:flex;gap:20px;flex-wrap:wrap}

/* Настройки cookie */
.ck-row{display:flex;justify-content:space-between;align-items:center;gap:16px;background:var(--bg);border-radius:12px;padding:14px 16px;cursor:pointer}
.ck-row b{font:700 14px/1.3 'Manrope'}
.ck-row span span{font:500 12.5px/1.45 'Manrope';color:var(--dim)}
.ck-always{font:600 12px/1 'Manrope';color:var(--dim);flex-shrink:0}
.switch{appearance:none;-webkit-appearance:none;flex-shrink:0;width:42px;height:24px;margin:0;border-radius:12px;background:var(--line2);position:relative;cursor:pointer;transition:background .2s}
.switch::after{content:'';position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:var(--tx);transition:transform .2s}
.switch:checked{background:var(--ac)}
.switch:checked::after{transform:translateX(18px)}
.ck-more{flex:1 1 100%;border:0;cursor:pointer;background:transparent;color:var(--mute);padding:6px;font:600 13px/1 'Manrope'}

/* Полосы в первом экране на телефоне ложатся под текст и ссылки - приглушаем */
@media (max-width:599px){.deco-hero{opacity:.18}}

/* Копирайт и бейдж авторства PivotPoint - правый край строки подвала */
.foot-copy{margin-left:auto;display:flex;gap:20px;align-items:center;flex-wrap:wrap}
.foot-author{display:inline-flex;align-items:center;gap:6px;font:500 13px/1 'Manrope';color:rgba(255,255,255,.55)}
.foot .foot-author a{display:inline-flex;align-items:center;gap:6px;color:#fff;font-weight:700}
.foot .foot-author a:hover{opacity:.75}
.foot-author svg{flex-shrink:0}
