/* ============================================================
   ПЕРШИЙ ШАР — дизайн-система
   Corporate Modern with Technical Accents (Stitch)
   1  Токени
   2  База / скидання Astra
   3  Блюпринт-сітка
   4  Шапка + меню
   5  Кнопки
   6  Технічні мітки, бейджі, чипи
   7  Темний острів
   8  Головна
   9  Каталог і картки товарів
   10 Сторінка товару
   11 Кошик / оформлення / акаунт
   12 Блог
   13 Схема принтера
   14 Контакти й статичні сторінки
   15 Футер
   16 Утиліти й анімації
   17 Мобільна версія
   ============================================================ */

/* ── 1. Токени ─────────────────────────────────────────────── */
:root{
  --fl-page:#F8F9FF;
  --fl-card:#FFFFFF;
  --fl-tint:#F2F7FC;
  --fl-tint2:#EFF4FF;
  --fl-grid:#DEE9F5;
  --fl-line:#DCE6F2;
  --fl-navy:#132B4A;
  --fl-navy-dp:#0E2038;
  --fl-navy-soft:#1F3149;
  --fl-ink:#081C33;
  --fl-muted:#64788F;
  --fl-green:#2EA83C;
  --fl-green-dk:#1E8A2C;
  --fl-green-lt:#E7F6E9;
  --fl-neon:#6BF08C;
  --fl-amber:#C78516;
  --fl-amber-lt:#FFF3DC;
  --fl-coral:#E5484D;
  --fl-coral-lt:#FFE9E8;

  --fl-r-sm:8px;
  --fl-r-btn:12px;
  --fl-r-card:16px;
  --fl-r-island:24px;

  --fl-shadow:0 1px 2px rgba(18,37,60,.04), 0 6px 18px rgba(18,37,60,.05);
  --fl-shadow-hi:0 2px 4px rgba(18,37,60,.06), 0 14px 34px rgba(18,37,60,.10);

  --fl-max:1280px;
  --fl-gut:24px;

  --fl-h:'Plus Jakarta Sans','Manrope',system-ui,sans-serif;
  --fl-b:'Manrope','Plus Jakarta Sans',system-ui,sans-serif;
  --fl-m:'JetBrains Mono','IBM Plex Mono',ui-monospace,'Courier New',monospace;
}

/* ── 2. База / скидання Astra ──────────────────────────────── */
body,.ast-container,.site-content{background:var(--fl-page);}
body{
  font-family:var(--fl-b);
  color:var(--fl-ink);
  font-size:16px;line-height:1.6;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
h1,h2,h3,h4,h5,h6,
.entry-title,.woocommerce-loop-product__title,.product_title,
.widget-title,.wp-block-heading{
  font-family:var(--fl-h)!important;
  font-weight:800;
  color:var(--fl-ink);
  letter-spacing:-.02em;
  line-height:1.15;
}
h1{font-size:clamp(30px,4.4vw,48px);}
h2{font-size:clamp(24px,3.2vw,36px);}
h3{font-size:clamp(19px,2.2vw,24px);}
a{color:var(--fl-green-dk);text-decoration:none;}
a:hover{color:var(--fl-green);}
img{max-width:100%;height:auto;}
:focus-visible{outline:2px solid var(--fl-green);outline-offset:2px;border-radius:4px;}

.ast-container,.ast-container-fluid{max-width:var(--fl-max);margin-inline:auto;padding-inline:var(--fl-gut);}
.site-content .ast-container{padding-top:0;padding-bottom:0;}
#content{padding-block:0;}
.ast-separate-container #primary,
.ast-separate-container .site-main{margin:0;padding:0;background:transparent;}
.ast-separate-container .ast-article-single,
.ast-separate-container .ast-article-post{background:transparent;padding:0;border:0;box-shadow:none;}
.ast-plain-container .site-content>.ast-container{padding-block:0;}
.ast-single-post .entry-header{margin-bottom:0;}
.fl-own-h1 .entry-header,.fl-own-h1 .entry-title{display:none!important;}
/* заголовок сторінки від Astra — у нашій типографіці */
.entry-header{max-width:var(--fl-max);margin-inline:auto;padding:6px var(--fl-gut) 0;}
.entry-header .entry-title{margin:0 0 14px;}
.ast-breadcrumbs-inner,.ast-header-breadcrumb{display:none;}
.ast-scroll-top{display:none!important;}
/* Astra малює свій футер — ховаємо, у нас власний */
.site-footer,.ast-small-footer,.site-below-footer-wrap,.site-above-footer-wrap,.site-primary-footer-wrap{display:none!important;}
.ast-mobile-header-wrap,#masthead,.site-header{display:none!important;}

/* ── 3. Блюпринт-сітка ─────────────────────────────────────── */
.fl-blueprint{
  position:fixed;inset:0;z-index:0;pointer-events:none;
  background-image:
    linear-gradient(to right,var(--fl-grid) 1px,transparent 1px),
    linear-gradient(to bottom,var(--fl-grid) 1px,transparent 1px);
  background-size:32px 32px;
  opacity:.55;
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.9),rgba(0,0,0,.35));
  -webkit-mask-image:linear-gradient(to bottom,rgba(0,0,0,.9),rgba(0,0,0,.35));
}
#page,.fl-wrap{position:relative;z-index:1;}
.fl-shell{max-width:var(--fl-max);margin-inline:auto;padding-inline:var(--fl-gut);}
.fl-sec{padding-block:clamp(44px,6vw,80px);}
.fl-sec-tint{background:var(--fl-tint);}

/* ── 4. Шапка + меню ───────────────────────────────────────── */
.fl-head{
  position:sticky;top:0;z-index:60;
  background:rgba(248,249,255,.92);
  backdrop-filter:saturate(160%) blur(10px);
  border-bottom:1px solid var(--fl-line);
}
.fl-head-in{
  max-width:var(--fl-max);margin-inline:auto;
  padding:12px var(--fl-gut);
  display:flex;align-items:center;gap:20px;
}
.fl-logo{display:flex;align-items:center;flex:0 0 auto;}
.fl-logo img{height:42px;width:auto;display:block;}
.fl-nav{flex:1 1 auto;min-width:0;display:flex;justify-content:center;}
.fl-nav>ul{
  display:flex;align-items:center;gap:clamp(10px,1.6vw,26px);
  list-style:none;margin:0;padding:0;
}
.fl-nav>ul>li{position:relative;}
.fl-nav>ul>li>a{
  display:block;padding:10px 2px;
  font-family:var(--fl-b);font-size:14px;font-weight:600;
  letter-spacing:.02em;text-transform:uppercase;
  color:var(--fl-ink);white-space:nowrap;
  border-bottom:2px solid transparent;
}
.fl-nav>ul>li>a:hover,
.fl-nav>ul>li.fl-on>a{color:var(--fl-green-dk);border-bottom-color:var(--fl-green);}
.fl-nav .fl-has>a::after{
  content:'';display:inline-block;margin-left:7px;vertical-align:2px;
  width:6px;height:6px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;
  transform:rotate(45deg);transition:transform .18s;
}
.fl-nav .fl-has.fl-open>a::after{transform:rotate(-135deg);}

/* випадаюче меню «Магазин» */
.fl-mega{
  position:absolute;top:100%;left:50%;transform:translate(-50%,10px);
  min-width:660px;padding:22px;
  background:var(--fl-card);border:1px solid var(--fl-line);
  border-radius:var(--fl-r-card);box-shadow:var(--fl-shadow-hi);
  display:grid;grid-template-columns:1fr 1fr;gap:22px;
  opacity:0;visibility:hidden;pointer-events:none;transition:.18s;
}
.fl-has:hover>.fl-mega,.fl-has.fl-open>.fl-mega{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%,4px);}
.fl-mega-col>a.fl-mega-h{
  display:flex;align-items:center;gap:9px;
  font-family:var(--fl-h);font-weight:800;font-size:16px;color:var(--fl-ink);
  padding-bottom:9px;margin-bottom:9px;border-bottom:1px solid var(--fl-line);
}
.fl-mega-col>a.fl-mega-h:hover{color:var(--fl-green-dk);}
.fl-mega-col ul{list-style:none;margin:0;padding:0;display:grid;gap:2px;}
.fl-mega-col ul a{
  display:block;padding:7px 9px;border-radius:var(--fl-r-sm);
  font-size:14.5px;color:var(--fl-ink);font-weight:500;
}
.fl-mega-col ul a:hover{background:var(--fl-tint2);color:var(--fl-green-dk);}
.fl-mega-note{
  grid-column:1/-1;margin-top:2px;padding:11px 13px;
  background:var(--fl-tint);border-radius:var(--fl-r-sm);
  font-family:var(--fl-m);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--fl-muted);
}

.fl-head-act{flex:0 0 auto;display:flex;align-items:center;gap:6px;}
.fl-ico{
  display:inline-flex;align-items:center;gap:7px;
  padding:9px 12px;border-radius:var(--fl-r-btn);
  font-size:13px;font-weight:600;color:var(--fl-ink);
  border:1px solid transparent;white-space:nowrap;
}
.fl-ico:hover{background:var(--fl-tint2);color:var(--fl-green-dk);}
.fl-ico svg{width:19px;height:19px;flex:0 0 auto;}
.fl-cart{position:relative;}
.fl-cart-n{
  position:absolute;top:2px;right:2px;min-width:18px;height:18px;
  display:grid;place-items:center;padding:0 5px;
  background:var(--fl-green);color:#fff;border-radius:999px;
  font-family:var(--fl-m);font-size:10px;font-weight:700;line-height:1;
}
.fl-burger{display:none;width:44px;height:42px;border:1px solid var(--fl-line);background:var(--fl-card);border-radius:var(--fl-r-btn);}
.fl-burger span{display:block;width:19px;height:2px;margin:4px auto;background:var(--fl-ink);border-radius:2px;transition:.2s;}
.fl-burger.fl-x span:nth-child(1){transform:translateY(6px) rotate(45deg);}
.fl-burger.fl-x span:nth-child(2){opacity:0;}
.fl-burger.fl-x span:nth-child(3){transform:translateY(-6px) rotate(-45deg);}

/* рядок пошуку під шапкою */
.fl-searchbar{border-bottom:1px solid var(--fl-line);background:var(--fl-card);}
.fl-searchbar-in{
  max-width:var(--fl-max);margin-inline:auto;padding:10px var(--fl-gut);
  display:flex;align-items:center;gap:14px;
}
.fl-searchbar form{flex:1 1 auto;display:flex;gap:8px;min-width:0;}
.fl-searchbar input[type=search],.fl-searchbar input[type=text]{
  flex:1 1 auto;min-width:0;
  padding:10px 14px;border:2px solid var(--fl-line);border-radius:var(--fl-r-sm);
  background:var(--fl-page);font-size:15px;color:var(--fl-ink);
}
.fl-searchbar input:focus{border-color:var(--fl-green);outline:none;}

/* ── 5. Кнопки ─────────────────────────────────────────────── */
.fl-btn,
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,
.woocommerce #respond input#submit,.woocommerce a.button.alt,
.woocommerce button.button.alt,.woocommerce input.button.alt,
.wc-block-components-button{
  display:inline-flex;align-items:center;justify-content:center;gap:9px;
  padding:13px 22px;border:0;border-radius:var(--fl-r-btn);
  background:var(--fl-green);color:#fff!important;
  font-family:var(--fl-b);font-size:15px;font-weight:700;line-height:1.2;
  text-align:center;cursor:pointer;transition:.18s;
  box-shadow:0 2px 0 rgba(20,110,40,.22);
}
.fl-btn:hover,
.woocommerce a.button:hover,.woocommerce button.button:hover,
.woocommerce input.button:hover,.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,.woocommerce input.button.alt:hover{
  background:var(--fl-green-dk);color:#fff!important;transform:translateY(-1px);
  box-shadow:0 4px 0 rgba(20,110,40,.22);
}
.fl-btn:active{transform:translateY(0);box-shadow:0 1px 0 rgba(20,110,40,.22);}
.fl-btn-mono{font-family:var(--fl-m);font-size:13px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;}
.fl-btn-lg{padding:16px 28px;font-size:16px;}
.fl-btn-2{
  background:transparent;color:var(--fl-navy)!important;
  border:2px solid var(--fl-navy);box-shadow:none;padding:11px 20px;
}
.fl-btn-2:hover{background:var(--fl-navy);color:#fff!important;box-shadow:none;}
.fl-btn-ghost{
  background:var(--fl-card);color:var(--fl-ink)!important;
  border:1px solid var(--fl-line);box-shadow:none;
}
.fl-btn-ghost:hover{background:var(--fl-tint2);color:var(--fl-green-dk)!important;box-shadow:none;}
.fl-btn-neon{background:var(--fl-neon);color:var(--fl-navy)!important;box-shadow:none;}
.fl-btn-neon:hover{background:#8CF7A6;color:var(--fl-navy)!important;box-shadow:none;}
.fl-btn[disabled],.fl-btn.fl-off{background:#C6D2E0;box-shadow:none;cursor:not-allowed;pointer-events:none;}

/* ── 6. Технічні мітки, бейджі, чипи ───────────────────────── */
.fl-mono{font-family:var(--fl-m);letter-spacing:.1em;text-transform:uppercase;font-size:12px;font-weight:600;}
.fl-eyebrow{
  display:inline-flex;align-items:center;gap:12px;
  font-family:var(--fl-m);font-size:12px;font-weight:600;
  letter-spacing:.14em;text-transform:uppercase;color:var(--fl-green-dk);
}
.fl-eyebrow::before{content:'';width:34px;height:2px;background:currentColor;border-radius:2px;}
.fl-eyebrow-c{
  display:inline-block;padding:7px 15px;border-radius:999px;
  border:1px solid var(--fl-line);background:var(--fl-card);
  font-family:var(--fl-m);font-size:11.5px;font-weight:600;
  letter-spacing:.16em;text-transform:uppercase;color:var(--fl-green-dk);
}
.fl-badge{
  display:inline-flex;align-items:center;gap:5px;
  padding:6px 12px;border-radius:999px;
  font-family:var(--fl-m);font-size:11.5px;font-weight:700;
  letter-spacing:.08em;text-transform:uppercase;line-height:1;
}
.fl-badge-ok{background:var(--fl-green-lt);color:var(--fl-green-dk);}
.fl-badge-wait{background:var(--fl-amber-lt);color:#8A5B08;}
.fl-badge-new{background:#E3EDFF;color:#2A4B85;}
.fl-badge-sale{background:var(--fl-coral);color:#fff;}
.fl-spec{
  display:inline-block;padding:5px 10px;border-radius:6px;
  background:var(--fl-tint);color:var(--fl-muted);
  font-family:var(--fl-m);font-size:11.5px;letter-spacing:.06em;
}
.fl-chip{
  display:inline-flex;align-items:center;gap:7px;
  padding:9px 17px;border-radius:999px;
  border:1px solid var(--fl-line);background:var(--fl-card);
  font-family:var(--fl-m);font-size:12px;font-weight:600;letter-spacing:.08em;
  text-transform:uppercase;color:var(--fl-ink);cursor:pointer;transition:.16s;
}
.fl-chip:hover{border-color:var(--fl-green);color:var(--fl-green-dk);}
.fl-chip.fl-on{background:var(--fl-green);border-color:var(--fl-green);color:#fff;}
.fl-plus{list-style:none;margin:0;padding:0;display:grid;gap:9px;}
.fl-plus li{position:relative;padding-left:24px;}
.fl-plus li::before{
  content:'';position:absolute;left:2px;top:.62em;
  width:9px;height:9px;background:var(--fl-green);border-radius:2px;
}

/* ── 7. Темний острів ──────────────────────────────────────── */
.fl-island{
  position:relative;overflow:hidden;
  background:linear-gradient(150deg,var(--fl-navy) 0%,var(--fl-navy-dp) 100%);
  border-radius:var(--fl-r-island);
  color:#E8F1FB;
  padding:clamp(26px,4vw,54px);
}
.fl-island::before{
  content:'';position:absolute;inset:0;pointer-events:none;opacity:.14;
  background-image:
    linear-gradient(to right,rgba(150,190,240,.5) 1px,transparent 1px),
    linear-gradient(to bottom,rgba(150,190,240,.5) 1px,transparent 1px);
  background-size:28px 28px;
}
.fl-island>*{position:relative;z-index:1;}
.fl-island h1,.fl-island h2,.fl-island h3{color:#fff;}
.fl-island .fl-eyebrow{color:var(--fl-neon);}
.fl-island p{color:#B9CBE0;}
.fl-neon{color:var(--fl-neon);}

/* ── 8. Головна ────────────────────────────────────────────── */
.fl-hero{display:grid;grid-template-columns:1fr .92fr;gap:clamp(24px,4vw,54px);align-items:center;}
.fl-hero>*{min-width:0;}
.fl-hero h1{
  font-size:clamp(34px,5.4vw,66px);text-transform:uppercase;
  line-height:1.02;letter-spacing:-.025em;margin:16px 0 18px;
}
.fl-hero p{font-size:clamp(15.5px,1.35vw,18.5px);max-width:min(52ch,100%);margin:0 0 26px;}
.fl-hero-cta{display:flex;flex-wrap:wrap;gap:12px;}
.fl-hero-art{
  position:relative;border-radius:var(--fl-r-card);overflow:hidden;
  background:#0B1B30;border:1px solid rgba(120,170,230,.22);
  aspect-ratio:4/3;
}
.fl-hero-art canvas{display:block;width:100%;height:100%;}
.fl-hero-stats{
  display:grid;grid-template-columns:repeat(3,1fr);gap:1px;
  margin-top:30px;padding-top:26px;border-top:1px solid rgba(150,190,240,.2);
}
.fl-hero-stats>div{min-width:0;}
.fl-hero-stats b{display:block;font-family:var(--fl-h);font-size:clamp(20px,2.4vw,28px);font-weight:800;color:var(--fl-neon);}
.fl-hero-stats span{font-family:var(--fl-m);font-size:10.5px;letter-spacing:.09em;text-transform:uppercase;color:#8FA6BF;}

.fl-usp{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}
.fl-usp>div{min-width:0;}
.fl-usp article{
  height:100%;padding:20px;background:var(--fl-card);
  border:1px solid var(--fl-line);border-radius:var(--fl-r-card);
  box-shadow:var(--fl-shadow);transition:.18s;
}
.fl-usp article:hover{transform:translateY(-2px);box-shadow:var(--fl-shadow-hi);}
.fl-usp svg{width:30px;height:30px;color:var(--fl-green);margin-bottom:11px;}
.fl-usp h3{font-size:16px;margin:0 0 6px;}
.fl-usp p{font-size:14px;color:var(--fl-muted);margin:0;}

.fl-head2{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:14px;margin-bottom:26px;}
.fl-head2 h2{margin:0;}
.fl-head2 p{margin:6px 0 0;color:var(--fl-muted);font-size:15px;}
.fl-head2 a.fl-more{
  font-family:var(--fl-m);font-size:12px;font-weight:700;letter-spacing:.1em;
  text-transform:uppercase;color:var(--fl-green-dk);white-space:nowrap;
}

.fl-cats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.fl-cats>*{min-width:0;}
.fl-cat{
  display:block;position:relative;overflow:hidden;
  padding:22px;background:var(--fl-card);
  border:1px solid var(--fl-line);border-radius:var(--fl-r-card);
  box-shadow:var(--fl-shadow);transition:.2s;color:var(--fl-ink);
}
.fl-cat:hover{transform:translateY(-3px);box-shadow:var(--fl-shadow-hi);border-color:#C3D6EA;color:var(--fl-ink);}
.fl-cat-art{
  display:block;height:132px;margin:-6px -6px 14px;border-radius:12px;
  background:var(--fl-tint2);overflow:hidden;
}
.fl-cat-art svg{width:100%;height:100%;display:block;}
.fl-cat h3{font-size:17px;margin:0 0 5px;}
.fl-cat p{font-size:13.5px;color:var(--fl-muted);margin:0 0 12px;min-height:2.7em;}
.fl-cat-go{
  display:inline-flex;align-items:center;gap:7px;
  font-family:var(--fl-m);font-size:11px;font-weight:700;letter-spacing:.09em;
  text-transform:uppercase;color:var(--fl-green-dk);
}
.fl-cat:hover .fl-cat-go{gap:11px;}

.fl-models{display:flex;flex-wrap:wrap;gap:10px;}
.fl-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;counter-reset:s;}
.fl-steps>*{min-width:0;}
.fl-steps article{position:relative;padding:22px 20px 20px;background:var(--fl-card);border:1px solid var(--fl-line);border-radius:var(--fl-r-card);}
.fl-steps article::before{
  counter-increment:s;content:'0' counter(s);
  display:block;margin-bottom:10px;
  font-family:var(--fl-m);font-size:12px;font-weight:700;letter-spacing:.12em;color:var(--fl-green);
}
.fl-steps h3{font-size:16px;margin:0 0 6px;}
.fl-steps p{font-size:14px;color:var(--fl-muted);margin:0;}

.fl-faq{display:grid;gap:10px;max-width:900px;margin-inline:auto;}
.fl-faq details{background:var(--fl-card);border:1px solid var(--fl-line);border-radius:var(--fl-r-card);overflow:hidden;}
.fl-faq summary{
  cursor:pointer;list-style:none;padding:17px 20px;
  font-family:var(--fl-h);font-weight:700;font-size:16px;color:var(--fl-ink);
  display:flex;align-items:center;justify-content:space-between;gap:14px;
}
.fl-faq summary::-webkit-details-marker{display:none;}
.fl-faq summary::after{
  content:'';flex:0 0 auto;width:9px;height:9px;
  border-right:2px solid var(--fl-green);border-bottom:2px solid var(--fl-green);
  transform:rotate(45deg);transition:.2s;
}
.fl-faq details[open] summary::after{transform:rotate(-135deg);}
.fl-faq .fl-faq-b{padding:0 20px 18px;color:var(--fl-muted);font-size:15px;}

.fl-cta-island{display:grid;grid-template-columns:1.25fr .75fr;gap:30px;align-items:center;}
.fl-cta-island>*{min-width:0;}

/* ── 9. Каталог і картки товарів ───────────────────────────── */
.fl-crumbs{
  padding:16px 0 10px;font-family:var(--fl-m);font-size:11px;
  letter-spacing:.06em;text-transform:uppercase;color:var(--fl-muted);
}
.fl-crumbs a{color:var(--fl-muted);}
.fl-crumbs a:hover{color:var(--fl-green-dk);}
.fl-crumbs .sep{margin:0 7px;opacity:.55;}

.fl-shop{display:grid;grid-template-columns:264px 1fr;gap:28px;align-items:start;}
.fl-shop>*{min-width:0;}
.fl-side{
  position:sticky;top:88px;
  background:var(--fl-card);border:1px solid var(--fl-line);
  border-radius:var(--fl-r-card);padding:20px;box-shadow:var(--fl-shadow);
}
.fl-side h4{
  font-family:var(--fl-m)!important;font-size:11px;font-weight:700;letter-spacing:.12em;
  text-transform:uppercase;color:var(--fl-muted);margin:0 0 10px;
}
.fl-side ul{list-style:none;margin:0 0 20px;padding:0;display:grid;gap:2px;}
.fl-side ul a{display:block;padding:7px 10px;border-radius:var(--fl-r-sm);font-size:14.5px;color:var(--fl-ink);}
.fl-side ul a:hover{background:var(--fl-tint2);color:var(--fl-green-dk);}
.fl-side ul li.fl-on>a{background:var(--fl-green-lt);color:var(--fl-green-dk);font-weight:700;}
.fl-side-tags{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:20px;}
.fl-side-tags a{
  padding:6px 12px;border:1px solid var(--fl-line);border-radius:999px;
  font-family:var(--fl-m);font-size:11px;letter-spacing:.05em;color:var(--fl-ink);
}
.fl-side-tags a:hover,.fl-side-tags a.fl-on{border-color:var(--fl-green);background:var(--fl-green-lt);color:var(--fl-green-dk);}

.fl-toolbar{
  display:flex;flex-wrap:wrap;align-items:center;gap:12px;
  margin-bottom:20px;
}
.fl-toolbar .fl-count{font-family:var(--fl-m);font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--fl-muted);}
.fl-toolbar form.woocommerce-ordering{margin:0 0 0 auto;}
.fl-toolbar select,.woocommerce-ordering select{
  padding:10px 14px;border:2px solid var(--fl-line);border-radius:var(--fl-r-sm);
  background:var(--fl-card);font-size:14px;color:var(--fl-ink);font-family:var(--fl-b);
}
.fl-filters-btn{display:none;}

ul.products,.woocommerce ul.products,
.woocommerce ul.products.fl-products,
.woocommerce-page ul.products.fl-products,
.ast-container .woocommerce ul.products.fl-products{
  display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:18px!important;
  list-style:none;margin:0!important;padding:0;
}
/* нейтралізуємо сітку Astra всередині каталогу */
ul.products li.product.ast-grid-common-col,
ul.products li.product[class*="ast-"]{padding:0!important;}
.astra-shop-thumbnail-wrap,.astra-shop-summary-wrap{display:contents;}
ul.products::before,ul.products::after{display:none!important;}
ul.products li.product,.woocommerce ul.products li.product{
  width:auto!important;margin:0!important;float:none!important;
  min-width:0;display:flex;flex-direction:column;
  background:var(--fl-card);border:1px solid var(--fl-line);
  border-radius:var(--fl-r-card);overflow:hidden;
  box-shadow:var(--fl-shadow);transition:.2s;position:relative;
}
ul.products li.product:hover{transform:translateY(-3px);box-shadow:var(--fl-shadow-hi);}
ul.products li.product a.woocommerce-LoopProduct-link{display:block;color:inherit;}
ul.products li.product img,.woocommerce ul.products li.product img{
  display:block;width:100%;aspect-ratio:1/1;object-fit:contain;
  background:var(--fl-tint2);margin:0!important;padding:14px;
}
.fl-card-b{padding:15px 16px 17px;display:flex;flex-direction:column;flex:1 1 auto;gap:8px;}
.fl-card-specs{display:flex;flex-wrap:wrap;gap:6px;}
ul.products li.product .woocommerce-loop-product__title{
  font-size:15.5px!important;font-weight:700!important;line-height:1.35;
  margin:0!important;padding:0!important;color:var(--fl-ink);
}
ul.products li.product a:hover .woocommerce-loop-product__title{color:var(--fl-green-dk);}
ul.products li.product .price{
  font-family:var(--fl-h)!important;font-size:21px!important;font-weight:800!important;
  color:var(--fl-ink);line-height:1.2!important;
  margin:auto 0 0!important;display:flex;align-items:baseline;gap:9px;flex-wrap:wrap;
}
ul.products li.product .price .amount,
ul.products li.product .price bdi{font-size:inherit;font-weight:inherit;color:inherit;}
ul.products li.product .price del{font-size:14px;font-weight:600;color:var(--fl-muted);opacity:.8;}
ul.products li.product .price ins{text-decoration:none;color:var(--fl-ink);}
ul.products li.product .price .amount{color:inherit;}
.fl-card-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:4px;}
ul.products li.product .button,
ul.products li.product .added_to_cart{
  padding:11px 15px;font-size:13.5px;margin:0!important;
}
.fl-flags{position:absolute;top:11px;left:11px;z-index:2;display:grid;gap:6px;justify-items:start;}
.fl-badge svg{width:14px;height:14px;}
ul.products li.product span.onsale,.woocommerce span.onsale{
  position:static!important;display:inline-block;margin:0!important;padding:5px 11px!important;
  min-height:0!important;min-width:0!important;line-height:1!important;
  background:var(--fl-coral)!important;color:#fff!important;border-radius:999px!important;
  font-family:var(--fl-m)!important;font-size:10.5px!important;font-weight:700!important;letter-spacing:.06em;
}
.woocommerce ul.products li.product .star-rating,
.woocommerce .star-rating{font-size:.8em;color:var(--fl-amber);margin:0;}
.fl-empty{
  padding:44px 26px;text-align:center;background:var(--fl-card);
  border:1px dashed var(--fl-line);border-radius:var(--fl-r-card);
}
.fl-empty h3{margin:0 0 8px;}
.fl-empty p{color:var(--fl-muted);margin:0 0 18px;}

.woocommerce nav.woocommerce-pagination{margin:30px 0 0;}
.woocommerce nav.woocommerce-pagination ul{border:0;display:flex;justify-content:center;gap:8px;}
.woocommerce nav.woocommerce-pagination ul li{border:0;margin:0;overflow:visible;}
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span{
  display:grid;place-items:center;min-width:40px;height:40px;padding:0 12px;
  border:1px solid var(--fl-line);border-radius:999px;background:var(--fl-card);
  font-family:var(--fl-m);font-size:13px;font-weight:700;color:var(--fl-ink);
}
.woocommerce nav.woocommerce-pagination ul li span.current,
.woocommerce nav.woocommerce-pagination ul li a:hover{
  background:var(--fl-green);border-color:var(--fl-green);color:#fff;
}

/* ── 10. Сторінка товару ───────────────────────────────────── */
/* службові елементи Astra: у нас власні крихти, статус і сумісність */
.woocommerce div.product .woocommerce-breadcrumb,
.woocommerce div.product .single-product-category,
.woocommerce div.product .summary p.stock,
.woocommerce div.product .summary .product_meta .sku_wrapper,
.ast-woo-product-category{display:none!important;}
.woocommerce div.product{margin-top:8px;}
.woocommerce div.product div.images,
.woocommerce div.product div.summary{margin-bottom:34px;}
.woocommerce div.product div.images img{
  background:var(--fl-card);border:1px solid var(--fl-line);
  border-radius:var(--fl-r-card);padding:18px;
}
.woocommerce div.product div.images .flex-control-thumbs{margin-top:12px;display:flex;gap:10px;}
.woocommerce div.product div.images .flex-control-thumbs li{width:82px;margin:0;}
.woocommerce div.product div.images .flex-control-thumbs img{padding:6px;border-radius:10px;}
.woocommerce div.product .product_title{font-size:clamp(23px,2.7vw,32px);margin:10px 0 12px;}
.woocommerce div.product p.price,.woocommerce div.product span.price{
  font-family:var(--fl-h);font-size:34px;font-weight:800;color:var(--fl-ink);margin:14px 0 18px;
}
.woocommerce div.product p.price del{font-size:19px;color:var(--fl-muted);font-weight:600;}
.woocommerce div.product p.price ins{text-decoration:none;}
.woocommerce div.product form.cart{
  display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:18px 0 22px;
}
.woocommerce div.product form.cart div.quantity{margin:0;display:flex;align-items:center;}
.woocommerce .quantity input.qty{
  width:86px;height:50px;padding:0 8px;text-align:center;
  border:2px solid var(--fl-line);border-radius:var(--fl-r-sm);
  font-family:var(--fl-h);font-weight:700;font-size:16px;background:var(--fl-card);
}
.woocommerce div.product form.cart .button{height:50px;padding-inline:26px;}
.woocommerce div.product .woocommerce-product-details__short-description{color:var(--fl-muted);}
.fl-compat{
  display:inline-block;margin:0 0 12px;padding:7px 14px;border-radius:999px;
  border:1px solid var(--fl-line);background:var(--fl-card);
  font-family:var(--fl-m);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--fl-muted);
}
.fl-stockline{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 6px;}
.fl-trust{
  margin:20px 0;padding:16px 18px;background:var(--fl-tint);
  border:1px solid var(--fl-line);border-radius:var(--fl-r-card);
}
.fl-trust-row{display:flex;align-items:flex-start;gap:11px;padding:9px 0;border-bottom:1px solid var(--fl-line);}
.fl-trust-row:last-of-type{border-bottom:0;}
.fl-trust-row svg{width:21px;height:21px;color:var(--fl-green-dk);flex:0 0 auto;margin-top:1px;}
.fl-trust-row b{display:block;font-size:14.5px;font-weight:700;color:var(--fl-ink);}
.fl-trust-row span{font-family:var(--fl-m);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--fl-muted);}
.fl-trust-tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:11px;}
.woocommerce div.product .woocommerce-tabs ul.tabs{
  padding:0;margin:0 0 20px;border-bottom:1px solid var(--fl-line);display:flex;gap:6px;flex-wrap:wrap;
}
.woocommerce div.product .woocommerce-tabs ul.tabs::before{display:none;}
.woocommerce div.product .woocommerce-tabs ul.tabs li{
  background:transparent;border:0;border-radius:0;margin:0;padding:0;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::after{display:none;}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{
  display:block;padding:12px 16px;font-weight:700;font-size:15px;color:var(--fl-muted);
  border-bottom:2px solid transparent;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{color:var(--fl-green-dk);border-bottom-color:var(--fl-green);}
.woocommerce div.product .woocommerce-tabs .panel{padding:0;margin:0;}
.woocommerce table.shop_attributes{border:1px solid var(--fl-line);border-radius:var(--fl-r-card);overflow:hidden;border-collapse:separate;}
.woocommerce table.shop_attributes th,.woocommerce table.shop_attributes td{
  border:0;border-bottom:1px solid var(--fl-line);padding:11px 15px;font-style:normal;
}
.woocommerce table.shop_attributes th{background:var(--fl-tint);font-family:var(--fl-m);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--fl-muted);width:42%;}
.fl-relwrap{margin-top:44px;}

/* ── 11. Кошик / оформлення / акаунт ───────────────────────── */
.woocommerce table.shop_table{
  border:1px solid var(--fl-line);border-radius:var(--fl-r-card);
  border-collapse:separate;background:var(--fl-card);overflow:hidden;
}
.woocommerce table.shop_table th{
  background:var(--fl-tint);font-family:var(--fl-m);font-size:11px;
  letter-spacing:.08em;text-transform:uppercase;color:var(--fl-muted);padding:13px 15px;
}
.woocommerce table.shop_table td{padding:14px 15px;border-top:1px solid var(--fl-line);}
.woocommerce-cart .cart-collaterals .cart_totals,
.woocommerce-checkout #order_review,
.woocommerce .cart_totals{
  background:var(--fl-card);border:1px solid var(--fl-line);
  border-radius:var(--fl-r-card);padding:20px;
}
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.woocommerce-account input[type=text],.woocommerce-account input[type=email],
.woocommerce-account input[type=password],.woocommerce-account input[type=tel],
.select2-container--default .select2-selection--single{
  padding:12px 14px!important;height:auto!important;
  border:2px solid var(--fl-line)!important;border-radius:var(--fl-r-sm)!important;
  background:var(--fl-card)!important;font-size:15px!important;font-family:var(--fl-b)!important;
  color:var(--fl-ink)!important;
}
.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row select:focus,
.woocommerce form .form-row textarea:focus{border-color:var(--fl-green)!important;outline:none;}
.woocommerce form .form-row label{
  font-family:var(--fl-m);font-size:10.5px;font-weight:700;
  letter-spacing:.1em;text-transform:uppercase;color:var(--fl-muted);margin-bottom:6px;
}
.woocommerce .woocommerce-message,.woocommerce .woocommerce-info,
.woocommerce .woocommerce-error,.woocommerce-notices-wrapper>*{
  border-top:0!important;background:var(--fl-card);border:1px solid var(--fl-line);
  border-left:4px solid var(--fl-green);border-radius:var(--fl-r-card);
  padding:15px 18px!important;color:var(--fl-ink);
}
.woocommerce .woocommerce-error{border-left-color:var(--fl-coral);}
.woocommerce .woocommerce-info{border-left-color:#2A64C8;}
.woocommerce .woocommerce-message::before,
.woocommerce .woocommerce-info::before,
.woocommerce .woocommerce-error::before{display:none;}
.woocommerce-account .woocommerce-MyAccount-navigation{width:25%;}
.woocommerce-account .woocommerce-MyAccount-navigation ul{
  list-style:none;margin:0;padding:0;display:grid;gap:3px;
  background:var(--fl-card);border:1px solid var(--fl-line);border-radius:var(--fl-r-card);padding:12px;
}
.woocommerce-account .woocommerce-MyAccount-navigation li a{
  display:block;padding:10px 13px;border-radius:var(--fl-r-sm);color:var(--fl-ink);font-weight:600;font-size:14.5px;
}
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,
.woocommerce-account .woocommerce-MyAccount-navigation li a:hover{background:var(--fl-green-lt);color:var(--fl-green-dk);}
.woocommerce-account .woocommerce-MyAccount-content{width:72%;}
.fl-authgrid{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:start;}
.fl-authgrid>*{min-width:0;}
.woocommerce-account .u-column1,.woocommerce-account .u-column2{
  background:var(--fl-card);border:1px solid var(--fl-line);
  border-radius:var(--fl-r-card);padding:24px;float:none!important;width:auto!important;
}
.woocommerce-account .col2-set .col-1,.woocommerce-account .col2-set .col-2{width:100%;float:none;}

/* ── 12. Блог ──────────────────────────────────────────────── */
.fl-posts{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.fl-posts>*{min-width:0;}
.fl-post{
  display:flex;flex-direction:column;height:100%;overflow:hidden;
  background:var(--fl-card);border:1px solid var(--fl-line);
  border-radius:var(--fl-r-card);box-shadow:var(--fl-shadow);transition:.2s;
}
.fl-post:hover{transform:translateY(-3px);box-shadow:var(--fl-shadow-hi);}
.fl-post-img{display:block;aspect-ratio:16/9;background:var(--fl-tint2);overflow:hidden;}
.fl-post-img img{width:100%;height:100%;object-fit:cover;display:block;}
.fl-post-b{padding:17px 18px 20px;display:flex;flex-direction:column;gap:9px;flex:1 1 auto;}
.fl-post-b h3{font-size:17px;margin:0;line-height:1.3;}
.fl-post-b h3 a{color:var(--fl-ink);}
.fl-post-b h3 a:hover{color:var(--fl-green-dk);}
.fl-post-b p{font-size:14px;color:var(--fl-muted);margin:0;}
.fl-post-meta{
  margin-top:auto;padding-top:9px;font-family:var(--fl-m);font-size:10.5px;
  letter-spacing:.07em;text-transform:uppercase;color:var(--fl-muted);
}
.navigation.pagination{margin:30px 0 0;}
.navigation.pagination .nav-links{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;}
.navigation.pagination .page-numbers{
  display:grid;place-items:center;min-width:40px;height:40px;padding:0 12px;
  border:1px solid var(--fl-line);border-radius:999px;background:var(--fl-card);
  font-family:var(--fl-m);font-size:13px;font-weight:700;color:var(--fl-ink);
}
.navigation.pagination .page-numbers.current,
.navigation.pagination a.page-numbers:hover{background:var(--fl-green);border-color:var(--fl-green);color:#fff;}
.navigation.pagination .screen-reader-text{display:none;}

.fl-article{max-width:800px;margin-inline:auto;}
.fl-article .entry-content{font-size:17px;line-height:1.75;}
.fl-article h2{margin:34px 0 14px;}
.fl-article h3{margin:26px 0 10px;}
.fl-article ul,.fl-article ol{padding-left:22px;margin:14px 0;}
.fl-article li{margin:6px 0;}
.fl-article blockquote{
  margin:22px 0;padding:16px 20px;background:var(--fl-tint);
  border-left:4px solid var(--fl-green);border-radius:0 var(--fl-r-card) var(--fl-r-card) 0;
  font-style:normal;color:var(--fl-ink);
}
.fl-article img{border-radius:var(--fl-r-card);}
.fl-article .fl-src{
  margin-top:34px;padding:18px 20px;background:var(--fl-card);
  border:1px solid var(--fl-line);border-radius:var(--fl-r-card);font-size:14px;
}
.fl-article .fl-src h3{margin:0 0 10px;font-size:15px;}

/* ── 13. Схема принтера ────────────────────────────────────── */
.fl-schema{display:grid;grid-template-columns:1.05fr .95fr;gap:24px;align-items:stretch;}
.fl-schema>.fl-schema-map{display:flex;flex-direction:column;}
.fl-schema>.fl-schema-map .fl-svgwrap{flex:1 1 auto;display:flex;align-items:center;}
.fl-schema>*{min-width:0;}
.fl-schema-map{padding:22px;}
.fl-schema-map .fl-mono{color:var(--fl-neon);display:block;margin-bottom:14px;}
.fl-svgwrap{position:relative;border-radius:14px;border:1px solid rgba(120,170,230,.22);overflow:hidden;background:#0B1B30;}
.fl-svgwrap svg{display:block;width:100%;height:auto;}
.fl-node{cursor:pointer;transition:.16s;}
.fl-node circle{transition:.16s;}
.fl-node:hover circle{r:13;}
.fl-node.fl-on circle{fill:var(--fl-amber);stroke:#fff;stroke-width:3;}
.fl-panel{
  position:relative;background:var(--fl-card);border:1px solid var(--fl-line);
  border-radius:var(--fl-r-card);padding:22px;box-shadow:var(--fl-shadow);
}
.fl-panel::before{content:'';position:absolute;left:-1px;top:18px;bottom:18px;width:4px;background:var(--fl-green);border-radius:4px;}
.fl-panel-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px;}
.fl-panel-tabs button{
  padding:9px 15px;border-radius:var(--fl-r-sm);border:1px solid var(--fl-line);
  background:var(--fl-card);font-family:var(--fl-b);font-size:14px;font-weight:600;
  color:var(--fl-ink);cursor:pointer;transition:.16s;
}
.fl-panel-tabs button:hover{border-color:var(--fl-green);color:var(--fl-green-dk);}
.fl-panel-tabs button.fl-on{background:var(--fl-green);border-color:var(--fl-green);color:#fff;}
.fl-panel h3{margin:0 0 12px;}
.fl-sym{background:var(--fl-tint2);border-radius:var(--fl-r-card);padding:15px 18px;margin-bottom:16px;}
.fl-sym .fl-mono{color:var(--fl-muted);display:block;margin-bottom:9px;}
.fl-parts{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:16px;}
.fl-parts>*{min-width:0;}
.fl-part{border:1px solid var(--fl-line);border-radius:var(--fl-r-card);padding:14px;}
.fl-part b{display:block;font-size:14.5px;margin-bottom:5px;}
.fl-part .fl-p{font-family:var(--fl-h);font-size:20px;font-weight:800;margin-bottom:10px;}
.fl-panel-cta{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.fl-panel-cta>*{min-width:0;}
.fl-fails{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:34px;}
.fl-fails>*{min-width:0;}
.fl-fail{
  display:flex;align-items:center;justify-content:space-between;gap:14px;
  padding:19px 20px;background:var(--fl-tint2);border-radius:var(--fl-r-card);color:var(--fl-ink);
  transition:.18s;
}
.fl-fail:hover{background:#E4EDFC;color:var(--fl-ink);transform:translateY(-2px);}
.fl-fail span b{font-weight:800;}
.fl-fail svg{width:20px;height:20px;color:var(--fl-green-dk);flex:0 0 auto;}

/* ── 14. Контакти й статичні сторінки ──────────────────────── */
.fl-cols{display:grid;grid-template-columns:1fr 1fr;gap:26px;align-items:start;}
.fl-cols>*{min-width:0;}
.fl-box{background:var(--fl-card);border:1px solid var(--fl-line);border-radius:var(--fl-r-card);padding:24px;box-shadow:var(--fl-shadow);}
.fl-contacts{list-style:none;margin:0;padding:0;display:grid;gap:16px;}
.fl-contacts li{display:flex;gap:13px;align-items:flex-start;}
.fl-contacts svg{width:22px;height:22px;color:var(--fl-green-dk);flex:0 0 auto;margin-top:2px;}
.fl-contacts .fl-mono{display:block;color:var(--fl-muted);font-size:10.5px;margin-bottom:3px;}
.fl-contacts b,.fl-contacts a{font-size:16.5px;font-weight:700;color:var(--fl-ink);}
.fl-contacts a:hover{color:var(--fl-green-dk);}
.fl-form{display:grid;gap:14px;}
.fl-form label{display:block;}
.fl-form .fl-lab{
  display:block;margin-bottom:6px;font-family:var(--fl-m);font-size:10.5px;
  font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--fl-muted);
}
.fl-form input,.fl-form textarea,.fl-form select{
  width:100%;padding:12px 14px;border:2px solid var(--fl-line);border-radius:var(--fl-r-sm);
  background:var(--fl-page);font-size:15px;font-family:var(--fl-b);color:var(--fl-ink);
}
.fl-form input:focus,.fl-form textarea:focus,.fl-form select:focus{border-color:var(--fl-green);outline:none;}
.fl-form textarea{min-height:130px;resize:vertical;}
.fl-hp{position:absolute!important;left:-9999px!important;}
.fl-note{
  padding:14px 17px;border-radius:var(--fl-r-card);background:var(--fl-green-lt);
  color:#1B6D2A;font-size:14.5px;border:1px solid #BFE7C6;
}
.fl-page{max-width:840px;margin-inline:auto;}
.fl-page .entry-content{font-size:16.5px;line-height:1.75;}
.fl-page h2{margin:30px 0 12px;}
.fl-page table{width:100%;border-collapse:collapse;margin:16px 0;font-size:15px;}
.fl-page table th,.fl-page table td{border:1px solid var(--fl-line);padding:11px 14px;text-align:left;}
.fl-page table th{background:var(--fl-tint);font-family:var(--fl-m);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--fl-muted);}

/* ── 15. Футер ─────────────────────────────────────────────── */
.fl-foot{
  position:relative;margin-top:clamp(44px,6vw,80px);
  background:var(--fl-navy-soft);color:#B9CBE0;
}
.fl-foot-in{max-width:var(--fl-max);margin-inline:auto;padding:clamp(34px,4.5vw,54px) var(--fl-gut) 0;}
.fl-foot-top{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:28px;}
.fl-foot-top>*{min-width:0;}
.fl-foot-logo img{height:44px;width:auto;display:block;margin-bottom:14px;}
.fl-foot-about{font-family:var(--fl-m);font-size:12px;line-height:1.85;letter-spacing:.02em;color:#95AAC2;max-width:min(42ch,100%);}
.fl-foot h4{
  font-family:var(--fl-m)!important;font-size:11px;font-weight:700;letter-spacing:.14em;
  text-transform:uppercase;color:#7F94AD;margin:0 0 14px;
}
.fl-foot ul{list-style:none;margin:0;padding:0;display:grid;gap:9px;}
.fl-foot ul a{
  font-family:var(--fl-m);font-size:11.5px;letter-spacing:.07em;text-transform:uppercase;color:#C6D6E8;
}
.fl-foot ul a:hover{color:var(--fl-neon);}
.fl-foot-contact{display:grid;gap:9px;font-family:var(--fl-m);font-size:11.5px;letter-spacing:.06em;color:#C6D6E8;}
.fl-foot-contact a{color:#C6D6E8;}
.fl-foot-contact a:hover{color:var(--fl-neon);}
.fl-foot-bot{
  margin-top:34px;padding:18px 0 24px;border-top:1px solid rgba(150,190,240,.16);
  display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;
  font-family:var(--fl-m);font-size:10.5px;letter-spacing:.09em;text-transform:uppercase;color:#7F94AD;
}
.fl-pays{display:flex;align-items:center;flex-wrap:wrap;gap:8px;max-width:100%;}
.fl-pays span{
  padding:5px 10px;border:1px solid rgba(150,190,240,.22);border-radius:6px;
  font-size:10px;letter-spacing:.06em;color:#95AAC2;
}

/* плаваюча кнопка Viber */
.fl-fab{
  position:fixed;right:18px;bottom:18px;z-index:70;
  display:inline-flex;align-items:center;gap:9px;
  padding:13px 18px;border-radius:999px;
  background:var(--fl-green);color:#fff!important;
  font-family:var(--fl-m);font-size:11.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
  box-shadow:0 8px 24px rgba(20,110,40,.32);transition:.18s;
}
.fl-fab:hover{background:var(--fl-green-dk);transform:translateY(-2px);color:#fff!important;}
.fl-fab svg{width:19px;height:19px;}

/* ── 16. Утиліти й анімації ────────────────────────────────── */
.fl-rev{opacity:0;transform:translateY(16px);transition:opacity .55s ease,transform .55s ease;}
.fl-rev.fl-in{opacity:1;transform:none;}
.fl-hide{display:none!important;}
.fl-only-m{display:none;}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);}
@media (prefers-reduced-motion:reduce){
  .fl-rev{opacity:1;transform:none;transition:none;}
  *{animation-duration:.01ms!important;transition-duration:.01ms!important;}
}

/* ── 17. Мобільна версія ───────────────────────────────────── */
@media (max-width:1080px){
  .woocommerce ul.products.fl-products,
  .ast-container .woocommerce ul.products.fl-products{grid-template-columns:repeat(2,1fr)!important;}
  .fl-usp{grid-template-columns:repeat(2,1fr);}
  .fl-steps{grid-template-columns:repeat(2,1fr);}
  .fl-mega{min-width:min(92vw,620px);}
}
@media (max-width:980px){
  .fl-nav{
    position:fixed;top:66px;left:0;right:0;bottom:0;z-index:59;
    height:calc(100dvh - 66px);
    display:block;background:var(--fl-page);overflow-y:auto;
    overscroll-behavior:contain;
    padding:16px var(--fl-gut) 44px;
    transform:translateX(-100%);transition:transform .24s;
  }
  .fl-nav.fl-open-nav{transform:none;}
  .fl-nav>ul{display:block;}
  .fl-nav>ul>li>a{padding:14px 2px;font-size:16px;border-bottom:1px solid var(--fl-line);}
  .fl-nav>ul>li.fl-on>a{border-bottom-color:var(--fl-green);}
  .fl-mega{
    position:static;transform:none;opacity:1;visibility:visible;pointer-events:auto;
    min-width:0;width:auto;display:none;grid-template-columns:1fr;
    box-shadow:none;border:0;border-bottom:1px solid var(--fl-line);
    border-radius:0;padding:8px 0 14px;background:transparent;
  }
  .fl-has.fl-open>.fl-mega{display:grid;transform:none;gap:14px;}
  .fl-mega-col>a.fl-mega-h{font-size:15px;padding-bottom:7px;margin-bottom:5px;}
  .fl-mega-col ul a{padding:9px 10px;font-size:15px;}
  .fl-mega-note{font-size:10.5px;line-height:1.7;}
  .fl-burger{display:block;}
  .fl-hero{grid-template-columns:1fr;}
  .fl-hero-art{order:-1;aspect-ratio:16/11;}
  .fl-schema{grid-template-columns:1fr;}
  .fl-cta-island{grid-template-columns:1fr;}
  .fl-shop{grid-template-columns:1fr;}
  .fl-side{position:static;display:none;}
  .fl-side.fl-open-side{display:block;margin-bottom:18px;}
  .fl-filters-btn{display:inline-flex;}
  .fl-cols{grid-template-columns:1fr;}
  .fl-authgrid{grid-template-columns:1fr;}
  .fl-foot-top{grid-template-columns:1fr 1fr;}
  .fl-fails{grid-template-columns:1fr;}
  .fl-posts{grid-template-columns:repeat(2,1fr);}
  .woocommerce-account .woocommerce-MyAccount-navigation,
  .woocommerce-account .woocommerce-MyAccount-content{width:100%;float:none;margin-bottom:20px;}
}
@media (max-width:760px){
  :root{--fl-gut:16px;}
  /* мікро-мітки на малому екрані трохи більші — інакше нечитабельно */
  .fl-crumbs{font-size:12px;}
  .fl-compat{font-size:12px;}
  .fl-trust-row span,.fl-hero-stats span,.fl-post-meta{font-size:11.5px;}
  .fl-foot-bot{font-size:11.5px;}
  .fl-pays span{font-size:11px;}
  .fl-mega-note{font-size:11.5px;}
  .fl-side h4,.fl-foot h4{font-size:12px;}
  /* цілі натискання не менші за 44px */
  .fl-ico{min-height:44px;min-width:44px;justify-content:center;}
  .fl-burger{height:44px;}
  .fl-chip{min-height:42px;}
  .fl-side-tags a{min-height:38px;display:inline-flex;align-items:center;}
  .fl-head-in{padding:10px var(--fl-gut);gap:10px;}
  .fl-logo img{height:34px;}
  .fl-ico span{display:none;}
  .fl-ico{padding:9px;}
  .fl-nav{top:56px;height:calc(100dvh - 56px);}
  ul.products,.woocommerce ul.products,
  .woocommerce ul.products.fl-products,
  .ast-container .woocommerce ul.products.fl-products{grid-template-columns:repeat(2,1fr)!important;gap:12px!important;}
  .fl-cats{grid-template-columns:1fr;}
  .fl-posts{grid-template-columns:1fr;}
  .fl-parts{grid-template-columns:1fr;}
  .fl-panel-cta{grid-template-columns:1fr;}
  .fl-hero-stats{grid-template-columns:1fr 1fr;gap:16px;}
  .fl-only-m{display:block;}
  .fl-no-m{display:none!important;}
  .woocommerce div.product form.cart{gap:9px;}
  .woocommerce div.product form.cart .button{flex:1 1 auto;}
  .fl-foot-bot{flex-direction:column;align-items:flex-start;}
  .fl-fab{right:12px;bottom:12px;padding:12px 15px;font-size:11px;}
  .woocommerce table.shop_table_responsive tr td{text-align:right;}
}
@media (max-width:480px){
  .fl-foot-top{grid-template-columns:1fr;gap:24px;}
  ul.products li.product .price{font-size:18px;}
  .fl-usp{grid-template-columns:1fr;}
  .fl-steps{grid-template-columns:1fr;}
  .fl-hero h1{font-size:clamp(28px,8.6vw,38px);}
}
