/* PP-BASE — выдернуто 1:1 из инлайнового <style> в inc/layout.php (2026-08-16).
   Байты одни и те же в каждом ответе сервера, а HTML отдаётся с Cache-Control: no-cache,
   то есть 9,3 КБ качались заново на каждой странице. Файл подключён ровно на том же
   месте <head>, где стояли оба блока, и в том же порядке — каскад не меняется.
   Ниже два бывших блока подряд: базовые стили и PP-RESPONSIVE-FIX v1. */
  html { scroll-behavior: smooth; }
  body { margin:0; background:#06070e; color:#ecedf7; font-family:'Manrope',system-ui,sans-serif; -webkit-font-smoothing:antialiased; overflow-x:hidden; }
  ::selection { background:#8047dd; color:#fff; }
  @keyframes ppMarquee { from { transform:translateX(0); } to { transform:translateX(-50%); } }
  .pp-drop { position:relative; }
  .pp-drop-panel { position:absolute; top:calc(100% + 14px); left:50%; transform:translateX(-50%) translateY(8px); opacity:0; visibility:hidden; transition:opacity .2s ease, transform .2s ease; z-index:60; }
  .pp-drop::after { content:""; position:absolute; top:100%; left:0; right:0; height:20px; }
  .pp-drop:hover .pp-drop-panel { opacity:1; visibility:visible; transform:translateX(-50%) translateY(0); }
  .pp-drop-link:hover { background:rgba(128,71,221,0.14); color:#fff; }
  /* z-index выше cookie-баннера (9000): иначе баннер перекрывает кнопку отправки.
     overflow-y + flex-start — карточка выше вьюпорта на 375x667 должна прокручиваться. */
  .pp-modal { position:fixed; inset:0; z-index:9500; display:none; align-items:flex-start; justify-content:center; padding:24px 24px 40px; overflow-y:auto; -webkit-overflow-scrolling:touch; }
  .pp-modal:target { display:flex; }
  .pp-modal-back { position:absolute; inset:0; background:rgba(4,5,10,0.72); backdrop-filter:blur(8px); }
  .pp-modal-card { position:relative; margin:auto; width:100%; max-width:460px; padding:40px; border-radius:22px; border:1px solid rgba(255,255,255,0.12); background:rgba(12,14,26,0.98); box-shadow:0 30px 80px rgba(0,0,0,0.6); animation:ppModalIn .28s cubic-bezier(0.22,1,0.36,1); }
  /* Сторонний виджет aisello рисует свои узлы с z-index 99997-99999, то есть выше
     любой нашей модалки. Пока открыта форма заявки, убираем его с экрана, иначе
     на узком вьюпорте подсказка ложится прямо на кнопку отправки. */
  body:has(.pp-modal:target) #sa-launcher,
  body:has(.pp-modal:target) #sa-preview,
  body:has(#pp-mobile-menu.pp-open) #sa-launcher,
  body:has(#pp-mobile-menu.pp-open) #sa-preview,
  body:has(#pp-mobile-menu.pp-open) #pp-cw { display:none !important; }
  .pp-modal-x { position:absolute; top:16px; right:20px; font-size:28px; line-height:1; color:#8688a6; }
  .pp-modal-x:hover { color:#fff; }
  @keyframes ppModalIn { from { opacity:0; transform:translateY(16px); } to { opacity:1; transform:translateY(0); } }
  @keyframes ppPulse { 0%,100% { opacity:.55; transform:scale(1); } 50% { opacity:.9; transform:scale(1.06); } }
  /* Full-width padded wrappers: without border-box, width:100% + horizontal padding overflows narrow viewports (text clipped by overflow:hidden). */
  [style*="width:100%; max-width:1600px"] { box-sizing:border-box; }
  a { color:inherit; text-decoration:none; }
  a, button { transition:filter .2s ease, transform .2s ease, background .2s ease, border-color .2s ease, color .2s ease; }
  div[style*="border-radius:24px"], div[style*="border-radius:22px"] { transition:transform .25s ease, border-color .25s ease, box-shadow .25s ease; }
  @media (min-width:1180px){ .pp-phone{ display:inline-flex !important; } }

  #pp-progress { position:fixed; top:0; left:0; right:0; height:3px; z-index:70; transform-origin:0 50%; transform:scaleX(0); background:linear-gradient(90deg,#8047dd,#4d8dff); box-shadow:0 0 12px rgba(128,71,221,0.6); pointer-events:none; }
  @keyframes ppProgress { from { transform:scaleX(0); } to { transform:scaleX(1); } }
  @supports (animation-timeline: scroll()) { #pp-progress { animation:ppProgress linear both; animation-timeline:scroll(root); } }

  #pp-mobile-menu.pp-open { display:block !important; }
  #pp-mobile-menu.pp-open #pp-mm-back { opacity:1 !important; }
  #pp-mobile-menu.pp-open #pp-mm-panel { transform:translateX(0) !important; }
  .pp-mm-link:hover, .pp-mm-sub:hover { background:rgba(128,71,221,0.12); color:#fff; }
  .pp-mm-acc[open] .pp-mm-chev { transform:rotate(180deg); }
  .pp-mm-acc summary::-webkit-details-marker { display:none; }
  @media (max-width:1024px){ header nav { display:none !important; } .pp-header-cta { display:none !important; } #pp-burger { display:inline-flex !important; } }
  @media (max-width:900px){
    div[style*="grid-template-columns:repeat(3,1fr)"] { grid-template-columns:1fr !important; }
    div[style*="grid-template-columns:repeat(2,1fr)"] { grid-template-columns:1fr !important; }
    footer div[style*="grid-template-columns:1.6fr"] { grid-template-columns:1fr 1fr !important; }
    #pp-flow .pp-conn { display:none !important; }
    #pp-flow { gap:26px 12px !important; }
    #pp-flow .pp-node { width:108px !important; }
  }
  @media (max-width:600px){
    div[style*="grid-template-columns:repeat(4,1fr)"] { grid-template-columns:repeat(2,1fr) !important; }
    footer div[style*="grid-template-columns:1.6fr"] { grid-template-columns:1fr !important; }
    [style*="padding:0 32px"] { padding-left:20px !important; padding-right:20px !important; }
    [style*="padding:130px 32px"] { padding:74px 20px !important; }
    [style*="padding:130px 0"] { padding-top:74px !important; padding-bottom:74px !important; }
    [style*="padding:120px 0"] { padding-top:70px !important; padding-bottom:70px !important; }
    [style*="padding:120px 32px 40px"] { padding:70px 20px 30px !important; }
    [style*="padding:80px 32px 130px"] { padding:56px 20px 80px !important; }
    [style*="padding:140px 32px 64px"] { padding:118px 20px 54px !important; }
    [style*="padding:84px 56px"] { padding:48px 26px !important; }
    [style*="padding:72px 32px 40px"] { padding:56px 20px 36px !important; }
    #pp-flow .pp-node { width:44% !important; }
    .pp-node-dot { width:78px !important; height:78px !important; }
  }

  header#pp-header { transition:background .3s ease, box-shadow .3s ease; }
  header#pp-header.pp-shrink { background:rgba(7,8,17,0.92) !important; box-shadow:0 10px 30px rgba(0,0,0,0.35); }
  header#pp-header.pp-shrink #pp-header-bar { height:60px !important; }
  #pp-header-bar { transition:height .3s ease; }
  #faq details > summary { position:relative; padding-right:36px; }
  #faq details > summary::after { content:""; position:absolute; right:4px; top:50%; width:11px; height:11px; margin-top:-8px; border-right:2px solid #8047dd; border-bottom:2px solid #8047dd; transform:rotate(45deg); transition:transform .3s ease; }
  #faq details[open] > summary::after { transform:rotate(-135deg); }

/* PP-RESPONSIVE-FIX v1 — space-format selectors matching the DC runtime's re-serialised inline styles */
@media (max-width:1320px){ header nav, #pp-header nav { gap:26px !important; } }
@media (max-width:1140px){ header nav, #pp-header nav { gap:18px !important; font-size:15px !important; } }
@media (max-width:1024px){
  [style*="grid-template-columns: repeat(4, 1fr)"]{ grid-template-columns: repeat(2, 1fr) !important; }
  [style*="grid-template-columns: repeat(3, 1fr)"]{ grid-template-columns: repeat(2, 1fr) !important; }
  [style*="padding: 130px 0px"]{ padding-top:96px !important; padding-bottom:96px !important; }
  [style*="padding: 120px 0px"]{ padding-top:92px !important; padding-bottom:92px !important; }
  [style*="padding: 130px 32px"]{ padding:96px 28px !important; }
}
div[style*="grid-template-columns"] > div{ min-width:0; }
@media (max-width:768px){
  [style*="grid-template-columns: repeat(2, 1fr)"], [style*="grid-template-columns: repeat(3, 1fr)"], [style*="grid-template-columns: repeat(4, 1fr)"]{ grid-template-columns: 1fr !important; }
  footer [style*="grid-template-columns: 1.6fr"]{ grid-template-columns: 1fr 1fr !important; }
  #pp-flow .pp-conn{ display:none !important; }
  #pp-flow .pp-node{ width:120px !important; }
  [style*="padding: 0px 32px"]{ padding-left:24px !important; padding-right:24px !important; }
  [style*="padding: 130px 32px"]{ padding:82px 24px !important; }
  [style*="padding: 130px 0px"]{ padding-top:82px !important; padding-bottom:82px !important; }
  [style*="padding: 120px 0px"]{ padding-top:78px !important; padding-bottom:78px !important; }
  [style*="padding: 120px 32px 40px"]{ padding:78px 24px 30px !important; }
  [style*="padding: 140px 32px 64px"]{ padding:118px 24px 52px !important; }
  [style*="padding: 84px 56px"]{ padding:56px 30px !important; }
  [style*="padding: 72px 32px 40px"]{ padding:60px 24px 34px !important; }
}
@media (max-width:560px){
  [style*="grid-template-columns: repeat(3, 1fr)"]{ grid-template-columns: 1fr !important; }
  footer [style*="grid-template-columns: 1.6fr"]{ grid-template-columns: 1fr !important; }
  [style*="padding: 0px 32px"]{ padding-left:18px !important; padding-right:18px !important; }
  [style*="padding: 130px 32px"]{ padding:66px 18px !important; }
  [style*="padding: 130px 0px"]{ padding-top:66px !important; padding-bottom:66px !important; }
  [style*="padding: 120px 0px"]{ padding-top:62px !important; padding-bottom:62px !important; }
  [style*="padding: 120px 32px 40px"]{ padding:62px 18px 26px !important; }
  [style*="padding: 84px 56px"]{ padding:42px 22px !important; }
  [style*="padding: 72px 32px 40px"]{ padding:52px 18px 30px !important; }
  [style*="padding: 38px"]{ padding:24px !important; }
  [style*="padding: 36px"]{ padding:24px !important; }
  [style*="padding: 34px"]{ padding:24px !important; }
  #pp-flow .pp-node{ width:44% !important; }
}

