/* Hrustata shell: стилі шапки/футера для сторінок магазину. Конфліктні класи вилучено. */
.elementor-19 .elementor-element.elementor-element-3619bac{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}
.elementor-19 .elementor-element.elementor-element-3619bac.e-con{--flex-grow:0;--flex-shrink:0;}
.elementor-19 .elementor-element.elementor-element-56d0524{width:100%;max-width:100%;margin:6px 6px calc(var(--kit-widget-spacing, 0px) + 6px) 6px;padding:6px 6px 6px 6px;}
:root{--page-title-display:none;}
.elementor-19 .elementor-element.elementor-element-3619bac{--width:82.094%;}
/* Start custom CSS for html, class: .elementor-element-56d0524 */:root{--bg:#FFFDF5;

  --ink:#1F2A2E;

  --white:#ffffff;



  --violet:#6C5CE7;

  --blue:#0984E3;

  --red:#FF4757;

  --yellow:#FDCB6E;

  --mint:#E8FFEB;



  --border:3px solid var(--ink);

  --shadow:10px 10px 0 var(--violet);

  --shadow2:12px 12px 0 var(--red);



  --radius:28px;

  --max:1180px;}
/* optional: тихий режим трохи приглушує */

:root[data-mode="silent"]{--shadow:10px 10px 0 rgba(31,42,46,.22);

  --shadow2:12px 12px 0 rgba(31,42,46,.30);}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;

  font-family:Montserrat,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;

  background:var(--bg);

  color:var(--ink);

  overflow-x:hidden;}
h1,h2,h3,.btn,.chip,.side-title,.logo{font-family:Unbounded,system-ui,sans-serif;

  text-transform:uppercase;

  letter-spacing:.02em}
a{color:inherit}
.skip{position:absolute; left:-9999px; top:auto; width:1px; height:1px; overflow:hidden;}
.skip:focus{left:18px; top:18px; width:auto; height:auto; padding:12px 16px;

  background:var(--yellow); border:var(--border); border-radius:14px; z-index:10000;}
/* START */

#start{position:fixed; inset:0; z-index:9999;

  display:flex; align-items:center; justify-content:center;

  padding:18px;

  background:linear-gradient(135deg,var(--violet),var(--blue));

  color:var(--white);

  transition:transform .55s cubic-bezier(.7,0,.3,1);}
#start.hidden{transform:translateY(-110%)}
.tiny{font-size:.92rem; opacity:.92; line-height:1.55; margin-top:14px}
/* BUTTONS */

.btn{display:inline-flex; align-items:center; justify-content:center;

  padding:16px 26px;

  border-radius:999px;

  border:4px solid var(--ink);

  background:var(--yellow);

  color:var(--ink);

  cursor:pointer;

  font-weight:900;

  box-shadow:6px 6px 0 var(--ink);

  transition:.18s transform,.18s box-shadow,.18s background;

  text-decoration:none;

  user-select:none;}
.btn:hover{transform:translateY(-2px) scale(1.02); box-shadow:10px 10px 0 rgba(255,255,255,.6)}
.btn:active{transform:translateY(0)}
.btn.alt{background:var(--white); color:var(--violet); box-shadow:6px 6px 0 rgba(0,0,0,.35)}
.btn.small{padding:12px 18px; border-width:3px; font-size:.95rem}
/* HEADER */

header{position:sticky; top:0; z-index:1000;

  background:rgba(255,255,255,.9);

  backdrop-filter:blur(10px);

  border-bottom:2px solid rgba(108,92,231,.35);}
/* ✅ fixed header layout (no PDF overlap) */

.topbar{display:flex;

  align-items:center;

  justify-content:space-between;

  gap:12px;

  padding:12px 0;

  flex-wrap:wrap;}
.brand{display:flex; align-items:center; text-decoration:none; flex:0 0 auto;}
.brand-logo{height:auto;

  width:220px;

  max-width:38vw;}
/* nav uses gap (not margin-left) and can wrap */

nav{flex:1 1 auto;

  display:flex;

  justify-content:center;

  gap:10px;

  flex-wrap:wrap;

  min-width:260px;}
nav a{text-decoration:none;

  font-weight:800;

  padding:10px 12px;

  border-radius:14px;

  white-space:nowrap;

  margin-left:0;}
nav a:hover{background:rgba(108,92,231,.10)}
.nav-cta{border:2px solid var(--ink);

  background:var(--yellow);

  box-shadow:4px 4px 0 var(--ink);

  white-space:nowrap;}
.nav-cta:hover{transform:translateY(-1px)}
.chip{border:2px solid var(--ink);

  background:var(--white);

  border-radius:999px;

  padding:10px 12px;

  font-weight:900;

  cursor:pointer;

  box-shadow:3px 3px 0 rgba(31,42,46,.18);}
.chip[aria-pressed="true"]{background:var(--yellow)}
.db{border:2px solid var(--ink);

  border-radius:16px;

  padding:10px 12px;

  background:rgba(108,92,231,.08);

  display:flex;

  flex-direction:column;

  min-width:110px;}
.db-label{font-size:.72rem; font-weight:900; opacity:.75}
.db-value{font-weight:900}
.side-title{margin:0; font-size:1.2rem}
.hl{background:var(--yellow);

  color:var(--ink);

  padding:2px 10px;

  border-radius:999px;

  display:inline-block;

  transform:rotate(-1deg);

  font-weight:900;}
.intro{margin:0 0 18px; max-width:86ch}
details{border:2px solid rgba(31,42,46,.18);

  border-radius:18px;

  padding:14px 16px;

  margin:12px 0;

  background:#fff;}
summary{cursor:pointer; font-weight:900}
details p{margin:10px 0 0; line-height:1.6; font-weight:650}
/* FOOTER */

footer{padding:18px 0; text-align:center; font-weight:850; color:rgba(31,42,46,.85)}
.noscript{padding:14px 18px; font-weight:850}
nav{display:none}
html{scroll-behavior:auto}

.topbar{position:sticky;top:0;z-index:50;background:#FFFDF5;border-bottom:3px solid #1F2A2E;padding:10px 0}
.topbar .wrap,.hp-bar{max-width:1180px;margin:0 auto;padding:0 20px;display:flex;align-items:center;gap:14px;flex-wrap:wrap}
footer{padding:26px 0;text-align:center;color:#5c6b70;font-weight:700}

/* ── SEOWORK: кошик — надійне відкриття через transform ── */
.jv-shop .cart-backdrop{z-index:99998 !important}
.jv-shop .cart-drawer{
  z-index:99999 !important;
  top:0 !important;
  right:0 !important;            /* позиція фіксована… */
  left:auto !important;
  height:100dvh !important;
  max-height:100dvh !important;
  display:flex !important;
  flex-direction:column !important;
  transform:translateX(105%);     /* …а показ/приховування — transform */
  transition:transform .28s ease;
  
}
.jv-shop .cart-drawer.open{transform:translateX(0) !important}

/* шапка не перекриває кошик */
.topbar{z-index:40 !important}

/* прокрутка списку всередині, підсумок завжди видно */
.jv-shop .cart-items{
  flex:1 1 auto !important;
  overflow-y:auto !important;
  -webkit-overflow-scrolling:touch;
  min-height:0 !important;
}
.jv-shop .cart-total,.jv-shop .cart-total-row,
.jv-shop .checkout-btn,.jv-shop .agreement{flex:0 0 auto}

/* кнопка кошика завжди доступна */
.jv-shop .cart-fab{
  position:fixed !important;right:16px !important;bottom:16px !important;
  z-index:99990 !important;display:inline-flex !important;
}
.jv-shop .cart-fab.empty{opacity:1 !important;visibility:visible !important}

/* телефон: кошик на всю ширину, плаваюча кнопка лендінгу не заважає */
@media (max-width:720px){
  .jv-shop .cart-drawer{width:100% !important;max-width:100% !important}
  .jv-shop .cart-fab{right:12px !important;bottom:12px !important}
  .hp-float{display:none !important}
}

/* шапка на вузьких екранах переносить пункти, а не ховає */
@media (max-width:1100px){
  .topbar .wrap{flex-wrap:wrap;row-gap:8px}
  .topbar .nav{order:3;width:100%;justify-content:center;flex-wrap:wrap}
}
