/* JBA v16.4.0 — safe home storefront polish.
 * Presentation-only layer. It deliberately does not change carousel widths,
 * Bootstrap rows/columns, product queries, or shopping behavior. */
:root{
  --jba1640-navy:#06245b;
  --jba1640-navy-deep:#00173e;
  --jba1640-gold:#d6a33f;
  --jba1640-gold-soft:#f7e9c8;
  --jba1640-surface:#fff;
  --jba1640-canvas:#f6f8fc;
  --jba1640-text:#102242;
  --jba1640-muted:#65728a;
  --jba1640-border:#e4e9f1;
  --jba1640-radius:18px;
  --jba1640-shadow:0 10px 34px rgba(5,31,77,.08);
}

/* Trust row */
.jba-v10-trust-row.jba-v11-trust-row{
  gap:10px;
  margin:14px 0 18px;
  padding:0;
  background:transparent;
}
.jba-v10-trust-row.jba-v11-trust-row>div{
  min-height:76px;
  padding:14px 16px;
  border:1px solid var(--jba1640-border);
  border-radius:15px;
  background:linear-gradient(180deg,#fff,#fbfcff);
  box-shadow:0 5px 18px rgba(5,31,77,.045);
}
.jba-v10-trust-row.jba-v11-trust-row b{
  color:var(--jba1640-navy);
  font-size:14px;
  line-height:1.7;
}
.jba-v10-trust-row.jba-v11-trust-row span{
  color:var(--jba1640-muted);
  font-size:12px;
  line-height:1.8;
}

/* Comparison drawer — visual cleanup only. */
.compare-box{
  border:1px solid var(--jba1640-border);
  border-radius:16px;
  box-shadow:var(--jba1640-shadow);
}
.compare-box .compare-opt .h3{color:var(--jba1640-navy);font-weight:800}
.compare-box .compare-opt .btn-primary{
  border-color:var(--jba1640-navy);
  border-radius:12px;
  background:var(--jba1640-navy);
}

/* Category showcase */
.jba-v1026-category-section{
  margin:22px 0;
  padding:26px clamp(14px,2.5vw,30px) 30px;
  border:1px solid var(--jba1640-border);
  border-radius:22px;
  background:linear-gradient(145deg,#fff 0%,#fbfcff 58%,#f7f1e5 145%);
  box-shadow:var(--jba1640-shadow);
}
.jba-v1026-category-head h2{
  margin:7px 0 3px;
  color:var(--jba1640-navy-deep);
  font-size:clamp(23px,2.3vw,34px);
  line-height:1.45;
  font-weight:900;
}
.jba-v1026-category-head p{color:var(--jba1640-muted);font-size:13px}
.jba-v1026-category-grid{gap:14px}
.jba-v1026-cat-card>a{
  min-height:210px;
  border:1px solid var(--jba1640-border);
  border-radius:17px;
  background:#fff;
  box-shadow:0 5px 18px rgba(5,31,77,.055);
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}
.jba-v1026-cat-card>a:hover,
.jba-v1026-cat-card>a:focus-visible{
  transform:translateY(-3px);
  border-color:rgba(214,163,63,.55);
  box-shadow:0 13px 28px rgba(5,31,77,.11);
}
.jba-v1026-cat-card strong{color:var(--jba1640-navy);font-size:15px}
.jba-v1026-cat-card small{color:var(--jba1640-muted);line-height:1.8}

/* Product sections. Width/display rules are intentionally untouched. */
.jba-v1640-product-section{
  margin-top:18px;
  border-radius:var(--jba1640-radius);
}
.jba-v1640-product-section>.panel{
  overflow:hidden;
  border:1px solid var(--jba1640-border);
  border-radius:var(--jba1640-radius);
  background:var(--jba1640-surface);
  box-shadow:var(--jba1640-shadow);
}
.jba-v1640-product-section .panel-heading.head-side{
  min-height:64px;
  padding:13px clamp(14px,2vw,24px);
  border:0;
  border-bottom:1px solid var(--jba1640-border);
  background:linear-gradient(90deg,#fff 0%,#fbfcff 65%,#fff9eb 145%);
}
.jba-v1640-product-section .panel-title{
  position:relative;
  margin:0;
  padding-right:17px;
  color:var(--jba1640-navy-deep);
  font-size:clamp(18px,1.65vw,24px);
  line-height:1.7;
  font-weight:900;
}
.jba-v1640-product-section .panel-title:before{
  content:"";
  position:absolute;
  top:50%;
  right:0;
  width:6px;
  height:26px;
  border-radius:8px;
  background:linear-gradient(180deg,var(--jba1640-gold),#f3c766);
  transform:translateY(-50%);
}
.jba-v1640-product-section .title-more a{
  display:inline-flex;
  align-items:center;
  gap:7px;
  min-height:38px;
  padding:7px 12px;
  border:1px solid rgba(6,36,91,.12);
  border-radius:11px;
  color:var(--jba1640-navy);
  background:#fff;
  font-size:12px;
  font-weight:700;
  transition:border-color .18s ease,background .18s ease;
}
.jba-v1640-product-section .title-more a:hover,
.jba-v1640-product-section .title-more a:focus-visible{
  border-color:rgba(214,163,63,.7);
  background:#fffaf0;
}
.jba-v1640-product-section .title-more svg{width:12px;height:12px;fill:currentColor}
.jba-v1640-product-section .panel-body{background:#fff}
.jba-v1640-product-section .item-slider{
  border-color:var(--jba1640-border);
  border-radius:14px;
  background:#fff;
  box-shadow:0 4px 15px rgba(5,31,77,.045);
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}
.jba-v1640-product-section .item-slider:hover{
  transform:translateY(-2px);
  border-color:rgba(214,163,63,.42);
  box-shadow:0 11px 25px rgba(5,31,77,.095);
}
.jba-v1640-product-section .item-slider .pro-name h3{
  color:var(--jba1640-text);
  line-height:1.9;
}
.jba-v1640-product-section .item-slider .code{
  border-top-color:#edf0f5;
  color:var(--jba1640-muted);
}
.jba-v1640-product-section .item-slider .basket,
.jba-v1640-product-section .item-slider .more-info{
  border-radius:10px;
}
.jba-v1640-product-section .carousel-control{
  width:42px;
  height:52px;
  top:50%;
  margin-top:-26px;
  border:1px solid var(--jba1640-border);
  border-radius:13px;
  background:rgba(255,255,255,.94);
  box-shadow:0 6px 20px rgba(5,31,77,.12);
  opacity:.94;
}
.jba-v1640-product-section .carousel-control:hover{opacity:1}

/* Banner breathing room, without changing its grid. */
.jba-v1570-showcase-shell{margin-bottom:18px}
.jba-v147-showcase{border-radius:20px}

/* Keyboard focus */
.jba-v1026-category-section a:focus-visible,
.jba-v1640-product-section a:focus-visible,
.jba-v1640-product-section button:focus-visible{
  outline:3px solid rgba(214,163,63,.48);
  outline-offset:3px;
}

@media (max-width:767px){
  .jba-v10-trust-row.jba-v11-trust-row{gap:8px;margin:10px 0 14px}
  .jba-v10-trust-row.jba-v11-trust-row>div{min-height:68px;padding:10px 11px;border-radius:13px}
  .jba-v1026-category-section{margin:15px 0;padding:20px 11px 22px;border-radius:18px}
  .jba-v1026-category-grid{gap:9px}
  .jba-v1026-cat-card>a{min-height:174px;border-radius:14px}
  .jba-v1640-product-section{margin-top:13px}
  .jba-v1640-product-section>.panel{border-radius:15px}
  .jba-v1640-product-section .panel-heading.head-side{min-height:56px;padding:10px 12px}
  .jba-v1640-product-section .panel-title{font-size:18px;padding-right:13px}
  .jba-v1640-product-section .panel-title:before{width:5px;height:22px}
  .jba-v1640-product-section .title-more a{min-height:34px;padding:5px 9px;font-size:11px}
  .jba-v1640-product-section .item-slider{border-radius:12px;box-shadow:none}
  .jba-v1640-product-section .item-slider:hover{transform:none;box-shadow:none}
  .jba-v1640-product-section .carousel-control{width:36px;height:44px;margin-top:-22px;border-radius:11px}
}

@media (prefers-reduced-motion:reduce){
  .jba-v1026-cat-card>a,
  .jba-v1640-product-section .item-slider,
  .jba-v1640-product-section .title-more a{transition:none}
}
