/* Hide the utility strip and short copy only within product cards. */
.top-navigation-bar { display: none !important; }
.products .product .p-desc { display: none !important; }

/* =============================================================
   Glovi.cz — custom style (Shoptet Classic)
   Bloky úvodní stránky podle návrhu „Glovi Homepage v3" + patička.
   Servírováno z CDN, v Shoptet adminu je jen loader.
   Mobile-first: základ = telefon, media queries přidávají desktop.
   ============================================================= */

:root {
  --gl-font: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --gl-navy: #0f1f5c;
  --gl-navy-deep: #0b1f4e;
  --gl-teal: #1aa89a;
  --gl-mint: #1fd1b0;
  --gl-red: #e8576a;
  --gl-soft: #f3f4f8;
  --gl-tile: #f5f5f5;
  --gl-line: #e3e5ec;
  --gl-text: #2b3242;
  --gl-muted: #5a6480;
  --gl-radius: 14px;
}

/* --- pomocné ------------------------------------------------- */

.gl-hidden {
  display: none !important;
}

/* Sekce, které návrh na úvodní stránce nemá (slider „Akční zboží"). */
body.type-index.gl-home-ready .homepage-group-title,
body.type-index.gl-home-ready .products-block.homepage-products-1,
body.type-index.gl-home-ready #products-1 {
  display: none !important;
}

/* Prázdný pás bannerů nad obsahem (třídu přidává script.js, když v něm
   opravdu nic není — po vložení banneru v adminu se zase objeví). */
.row.banners-row.gl-hidden {
  display: none !important;
}

.gl-sec {
  margin: 40px 0;
}

.gl-h2 {
  margin: 0 0 8px;
  color: var(--gl-navy);
  font-size: 26px;
  font-weight: 800;
  line-height: 1.2;
  text-align: center;
  letter-spacing: -0.01em;
}

.gl-sub {
  margin: 0 auto 24px;
  max-width: 640px;
  color: var(--gl-muted);
  font-size: 15px;
  line-height: 1.55;
  text-align: center;
}

.gl-h2--left {
  text-align: left;
  margin-bottom: 0;
}

.gl-more {
  color: var(--gl-teal);
  font-size: 15px;
  font-weight: 700;
  white-space: nowrap;
}

.gl-more:hover {
  color: var(--gl-navy);
}

@media (min-width: 768px) {
  .gl-sec {
    margin: 56px 0;
  }
  .gl-h2 {
    font-size: 34px;
  }
  .gl-sub {
    font-size: 16px;
    margin-bottom: 34px;
  }
}

/* --- 1) Hero karty ------------------------------------------- */

.gl-hero__grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 14px;
}

.gl-hero__card {
  position: relative;
  display: block;
  overflow: hidden;
  border-radius: var(--gl-radius);
  aspect-ratio: 3 / 4;
  color: #fff;
  text-decoration: none;
  background: var(--gl-navy);
}

.gl-hero__card,
.gl-hero__card:link,
.gl-hero__card:visited,
.gl-hero__card:hover,
.gl-hero__card:focus {
  text-decoration: none !important;
  color: #fff;
}

.gl-hero__img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.45s ease;
}

.gl-hero__card:hover .gl-hero__img {
  transform: scale(1.04);
}

.gl-hero__shade {
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom, rgba(15, 31, 92, 0) 32%, rgba(15, 31, 92, 0.86) 62%, var(--gl-navy) 100%);
}

.gl-hero__body {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  /* vlastní přechod pod textem — drží čitelnost i když je odrážek víc
     a text vyroste nad hlavní stín karty (mobil, dlouhé názvy) */
  padding: 44px 16px 18px;
  background: linear-gradient(to top, var(--gl-navy) 0%, var(--gl-navy) 62%, rgba(15, 31, 92, 0) 100%);
}

.gl-hero__title {
  display: block;
  margin-bottom: 8px;
  font-size: 17px;
  font-weight: 800;
  line-height: 1.25;
}

.gl-hero__list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.gl-hero__list li {
  position: relative;
  padding-left: 14px;
  font-size: 12.5px;
  line-height: 1.5;
  color: rgba(255, 255, 255, 0.92);
}

.gl-hero__list li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 8px;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--gl-mint);
}

@media (min-width: 992px) {
  .gl-hero__grid {
    grid-template-columns: repeat(4, 1fr);
    gap: 22px;
  }
  .gl-hero__body {
    padding: 52px 20px 22px;
  }
  .gl-hero__title {
    font-size: 20px;
  }
  .gl-hero__list li {
    font-size: 13px;
  }
}

/* --- 2) USP pás (Shoptet .benefitBanner) --------------------- */

body.gl-home-ready .benefitBanner {
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
  margin: 0 0 40px;
  padding: 0;
  border: 0;
}

body.gl-home-ready .benefitBanner::before,
body.gl-home-ready .benefitBanner::after {
  content: none;
}

body.gl-home-ready .benefitBanner__item {
  position: relative;
  /* šablona dává položkám vlastní šířku a flex — grid si je řídí sám */
  display: block !important;
  width: auto !important;
  max-width: none !important;
  flex: none !important;
  margin: 0;
  padding: 16px 18px 16px 34px;
  border-radius: 10px;
  background: var(--gl-soft);
  border: 0;
  text-align: left;
}

body.gl-home-ready .benefitBanner__item::before {
  content: '';
  position: absolute;
  left: 16px;
  top: 22px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--gl-teal);
}

/* Ikonky ze šablony návrh nemá — nahrazuje je tečka výše. */
body.gl-home-ready .benefitBanner__picture {
  display: none !important;
}

body.gl-home-ready .benefitBanner__content {
  display: block;
  width: auto;
  padding: 0;
  text-align: left;
}

body.gl-home-ready .benefitBanner__title {
  display: block;
  margin: 0;
  color: var(--gl-navy);
  font-size: 15px;
  font-weight: 700;
  line-height: 1.3;
  text-transform: none;
}

body.gl-home-ready .benefitBanner__data {
  display: block;
  margin: 2px 0 0;
  color: var(--gl-muted);
  font-size: 13px;
  line-height: 1.4;
}

@media (min-width: 768px) {
  body.gl-home-ready .benefitBanner {
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
    margin-bottom: 56px;
  }
}

/* --- 3) + 5) Dlaždice ---------------------------------------- */

.gl-customers { padding: 32px 18px 26px; background: #f5f8fa; border-radius: 16px; text-align: center; }
.gl-customers .gl-h2 { margin: 0 0 8px; }
.gl-customers__intro { margin: 0 0 26px; color: #64748b; font-size: 16px; line-height: 1.5; }
.gl-customers__scroll { overflow-x: auto; overscroll-behavior-x: contain; scroll-snap-type: x proximity; scrollbar-width: thin; scrollbar-color: #b9d9dc transparent; }
.gl-customers__scroll:focus-visible { outline: 2px solid #0ba5a9; outline-offset: 4px; border-radius: 8px; }
.gl-customers__list { display: grid; grid-template-columns: repeat(9, minmax(112px, 1fr)); gap: 8px; margin: 0; padding: 0 0 8px; list-style: none; }
.gl-customers__list li { display: flex; align-items: center; flex-direction: column; gap: 12px; margin: 0; padding: 0; color: var(--gl-navy); font-size: 15px; font-weight: 600; line-height: 1.4; scroll-snap-align: start; }
.gl-customers__icon { display: grid; place-items: center; width: 78px; height: 78px; border-radius: 50%; background: #e6f2f3; }
.gl-customers__icon svg { width: 54px; height: 54px; }
.gl-customer-accent { stroke: #099ca5; }
@media (max-width: 767px) {
  .gl-customers { padding: 24px 14px 20px; }
  .gl-customers__list { grid-template-columns: repeat(9, 118px); gap: 10px; }
  .gl-customers__intro { font-size: 15px; margin-bottom: 20px; }
}

.gl-tiles__grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 14px;
}

.gl-tile,
.gl-tile:link,
.gl-tile:visited,
.gl-tile:hover,
.gl-tile:focus {
  display: block;
  text-align: center;
  text-decoration: none !important;
  color: var(--gl-navy);
}

.gl-tile__media {
  position: relative;
  display: block;
  overflow: hidden;
  border-radius: 12px;
  background: var(--gl-tile);
}

.gl-ratio-square {
  aspect-ratio: 1 / 1;
}

.gl-ratio-wide {
  /* poměr fotek v Poradně (cca 2,15:1) — sedí i na zástupný rámeček */
  aspect-ratio: 43 / 20;
}

.gl-tile__media img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.4s ease;
}

.gl-tile:hover .gl-tile__media img {
  transform: scale(1.05);
}

/* Zástupná dlaždice, dokud není fotka. */
.gl-tile__media--empty {
  border: 1px dashed #d3d6e0;
  background: var(--gl-tile);
}

.gl-tile__ph {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 6px;
  color: #9aa1b5;
}

.gl-tile__phLabel {
  font-size: 12px;
  line-height: 1.2;
  text-align: center;
  padding: 0 8px;
}

.gl-tile__label {
  display: block;
  margin-top: 10px;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.3;
}

.gl-tile:hover .gl-tile__label {
  color: var(--gl-teal);
}

@media (min-width: 576px) {
  .gl-tiles__grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media (min-width: 992px) {
  .gl-tiles__grid {
    grid-template-columns: repeat(6, 1fr);
    gap: 20px;
  }
  .gl-tile__label {
    margin-top: 14px;
    font-size: 15px;
  }
}

/* --- 4) Banner fakturace ------------------------------------- */

.gl-invoice__box {
  position: relative;
  overflow: hidden;
  border-radius: 16px;
  background: linear-gradient(120deg, #081a44 0%, var(--gl-navy-deep) 55%, #0d2b63 100%);
  color: #fff;
}

.gl-invoice__text {
  position: relative;
  z-index: 2;
  padding: 28px 22px 32px;
}

.gl-invoice__eyebrow {
  margin: 0 0 12px;
  color: var(--gl-mint);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.gl-invoice__h {
  margin: 0 0 12px;
  font-size: 28px;
  font-weight: 800;
  line-height: 1.15;
  color: #fff;
}

.gl-invoice__perex {
  margin: 0 0 20px;
  max-width: 30em;
  font-size: 15px;
  line-height: 1.55;
  color: rgba(255, 255, 255, 0.86);
}

.gl-invoice__checks {
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px 26px;
  margin: 0 0 24px;
  padding: 0;
  list-style: none;
  max-width: 34em;
}

.gl-invoice__checks li {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 15px;
  font-weight: 600;
  color: #fff;
}

.gl-invoice__checks svg {
  flex: 0 0 auto;
}

.gl-btn,
.gl-btn:link,
.gl-btn:visited,
.gl-btn:hover,
.gl-btn:focus,
.gl-more,
.gl-more:link,
.gl-more:visited,
.gl-more:hover {
  text-decoration: none !important;
}

.gl-btn {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 14px 24px;
  border-radius: 10px;
  background: var(--gl-mint);
  color: #06283c;
  font-size: 16px;
  font-weight: 800;
  text-decoration: none;
  transition: background 0.2s ease, transform 0.2s ease;
}

.gl-btn:hover {
  background: #17bd9e;
  color: #06283c;
  text-decoration: none;
  transform: translateY(-1px);
}

.gl-invoice__art {
  display: none;
}

@media (min-width: 768px) {
  .gl-invoice__checks {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (min-width: 992px) {
  .gl-invoice__box {
    display: block;
  }
  .gl-invoice__text {
    width: 58%;
    padding: 52px 48px 54px;
  }
  .gl-invoice__h {
    font-size: 40px;
  }
  .gl-invoice__perex {
    font-size: 16px;
  }
  .gl-invoice__art {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: 48%;
    z-index: 1;
  }
  .gl-invoice__art img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center right;
    -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 22%);
    mask-image: linear-gradient(90deg, transparent 0, #000 22%);
  }
}

/* --- 6) Poradna ---------------------------------------------- */
/* Pastel invoice concept 03 with selectable text and a native registration link. */
.gl-invoice__box { background: #e0f3ed; color: var(--gl-navy); border-radius: 22px; }
.gl-invoice__eyebrow { color: #138b84; }
.gl-invoice__h { color: var(--gl-navy); font-weight: 700; letter-spacing: -.035em; }
.gl-invoice__perex { color: var(--gl-navy); }
.gl-invoice__checks { display: flex; flex-wrap: wrap; gap: 6px 14px; max-width: none; }
.gl-invoice__checks li { color: #405978; font-size: 13px; font-weight: 400; gap: 6px; }
.gl-invoice__checks svg { width: 12px; height: 12px; }
.gl-invoice .gl-btn { border-radius: 40px; background: #009d94; color: #fff; font-weight: 600; }
.gl-invoice .gl-btn:hover { background: #087e78; color: #fff; }
.gl-invoice .gl-btn:focus-visible { outline: 3px solid var(--gl-navy); outline-offset: 4px; }
@media(min-width: 992px) {
  .gl-invoice__text { width: 58%; padding: 40px 36px; }
  .gl-invoice__h { font-size: clamp(30px, 3vw, 42px); }
  .gl-invoice__art { width: 44%; overflow: hidden; }
  .gl-invoice__art img { object-fit: cover; object-position: right center; mask-image: linear-gradient(90deg, transparent, #000 14%); -webkit-mask-image: linear-gradient(90deg, transparent, #000 14%); }
}
@media(max-width: 991px) {
  .gl-invoice__text { padding: 28px 24px; }
  .gl-invoice__art { display: block; position: relative; height: 235px; width: min(100%, 330px); margin: 0 auto; overflow: hidden; }
  .gl-invoice__art img { height: 100%; width: 100%; object-fit: contain; }
}

.gl-advice {
  position: relative;
  padding: 34px 0 40px;
  background: var(--gl-soft);
  /* plná šířka bez vodorovného posuvníku: pozadí roztáhne spread stínu,
     clip-path ho ořízne na horní a dolní hranu sekce */
  box-shadow: 0 0 0 100vmax var(--gl-soft);
  clip-path: inset(0 -100vmax);
}

.gl-advice__head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 22px;
}

.gl-advice__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px;
}

.gl-advice__card,
.gl-advice__card:link,
.gl-advice__card:visited,
.gl-advice__card:hover,
.gl-advice__card:focus {
  text-decoration: none !important;
  color: var(--gl-navy);
}

.gl-advice__card {
  display: block;
  overflow: hidden;
  border-radius: 12px;
  background: #fff;
  color: var(--gl-navy);
  text-decoration: none;
  transition: box-shadow 0.25s ease, transform 0.25s ease;
}

.gl-advice__card:hover {
  text-decoration: none;
  color: var(--gl-navy);
  box-shadow: 0 10px 28px rgba(15, 31, 92, 0.12);
  transform: translateY(-2px);
}

.gl-advice__card .gl-tile__media {
  border-radius: 0;
  background: #fff;
}

.gl-advice__card .gl-tile__media--empty {
  border: 0;
  border-bottom: 1px dashed #d3d6e0;
  background: var(--gl-tile);
}

.gl-advice__body {
  display: block;
  padding: 18px 20px 22px;
}

.gl-advice__title {
  display: block;
  margin-bottom: 6px;
  font-size: 17px;
  font-weight: 800;
  line-height: 1.3;
}

.gl-advice__perex {
  display: block;
  color: var(--gl-muted);
  font-size: 14px;
  line-height: 1.5;
}

@media (min-width: 768px) {
  .gl-advice {
    padding: 48px 0 56px;
  }
  .gl-advice__grid {
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
  }
  .gl-advice__title {
    font-size: 18px;
  }
}

/* --- Patička — světlé sloupce a newsletter -------------------- */
#footer.gl-footer-ready { background: #fff; border-top: 1px solid #e5e8ef; }
#footer.gl-footer-ready .footer-rows.gl-hidden { display: none !important; }
.gl-footer { margin: 0 auto; padding-top: 40px; padding-bottom: 36px; color: #101d4b; }
.gl-footer__newsletter { display: grid; gap: 24px; padding: 24px; margin-bottom: 40px; background: #eaf7f5; border-radius: 12px; }
.gl-footer__newsIntro { display: flex; align-items: center; gap: 18px; }
.gl-footer__newsIntro > svg { width: 44px; height: 44px; flex: none; color: #087f85; }
#footer .gl-footer__newsIntro h3 { margin: 0 0 8px; font-size: 22px; font-weight: 700; color: #101d4b; }
.gl-footer__newsIntro p { margin: 0; color: #536078; font-size: 15px; line-height: 1.5; }
.gl-footer__grid { display: grid; gap: 32px; }
.gl-footer__grid > * { min-width: 0; }
.gl-footer__logo img { display: block; width: 180px; max-width: 100%; height: auto; }
.gl-footer__claim { margin: 18px 0; font-size: 17px; line-height: 1.55; font-weight: 400; }
#footer .gl-footer__ch { margin: 0 0 20px; color: #101d4b; font-size: 20px; font-weight: 700; text-transform: none; letter-spacing: 0; }
#footer .gl-footer__links { margin: 0; padding: 0 !important; list-style: none; }
#footer .gl-footer__links li { margin: 0; padding: 0; background: none; }
#footer .gl-footer__links li + li { margin-top: 12px; }
#footer .gl-footer__links a { color: #101d4b; text-decoration: none; font-size: 15px; line-height: 1.5; }
#footer .gl-footer__action { color: #087f85; text-decoration: none; font-size: 16px; font-weight: 700; }
#footer .gl-footer a:hover { color: #087f85; text-decoration: underline; }
#footer .gl-footer__phone, #footer .gl-footer__mail { display: flex; align-items: center; gap: 12px; color: #101d4b; text-decoration: none; }
#footer .gl-footer__phone { font-size: 26px; font-weight: 800; line-height: 1.3; white-space: nowrap; }
#footer .gl-footer__mail { margin-top: 16px; font-size: 17px; font-weight: 600; }
.gl-footer__contact svg { color: #087f85; flex: none; }
.gl-footer__help { margin: 24px 0 10px; color: #536078; font-size: 15px; }
.gl-footer__newsSlot { min-width: 0; }
.gl-footer__newsSlot .subscribe-form { position: relative; margin: 0; }
.gl-footer__newsSlot fieldset { display: flex; flex-wrap: wrap; align-items: flex-start; margin: 0; padding: 0; border: 0; gap: 0; }
.gl-footer__newsSlot .form-group { order: 1; flex: 1 1 0; min-width: 0; margin: 0; }
.gl-footer__newsSlot .consents { order: 3; flex: 1 1 100%; }
.gl-footer__newsSlot .form-control { width: 100%; height: 50px; border: 1px solid #cbd3df; border-radius: 8px 0 0 8px; background: #fff; font-size: 16px; padding: 0 14px; }
.gl-footer__newsSlot .btn { position: static !important; order: 2; flex: 0 0 auto; width: auto; min-width: 106px; height: 50px; line-height: 50px; margin: 0; padding: 0 20px; border: 0; border-radius: 0 8px 8px 0; background: #0f1f5c; color: #fff; font-size: 15px; font-weight: 700; letter-spacing: 0; text-transform: none; }
.gl-footer__newsSlot .consents .label, .gl-footer__newsSlot .consents p { margin: 10px 0 0; color: #536078; font-size: 12px; line-height: 1.5; }
#footer .gl-footer__newsSlot .consents a { color: #536078; text-decoration: underline; }
.gl-footer__newsSlot input:focus-visible, .gl-footer__newsSlot button:focus-visible, #footer .gl-footer a:focus-visible, .gl-footer__legal a:focus-visible { outline: 2px solid #087f85; outline-offset: 3px; }
#footer.gl-footer-ready .footer-bottom { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 18px; margin: 0 auto; padding-top: 22px; padding-bottom: 26px; border-top: 1px solid #e5e8ef; color: #536078; font-size: 12px; }
#footer.gl-footer-ready .footer-bottom .copyright { order: 0; float: none; }
#footer.gl-footer-ready .footer-bottom #signature { order: 2; float: none; }
.gl-footer__legal { display: flex; flex-wrap: wrap; gap: 16px 24px; order: 1; }
#footer .gl-footer__legal a { color: #536078; font-size: 13px; }
@media (min-width: 600px) {
  .gl-footer__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (min-width: 1200px) {
  .gl-footer { padding-top: 48px; padding-bottom: 42px; }
  .gl-footer__newsletter { grid-template-columns: 1.2fr 1fr; align-items: center; padding: 30px; margin-bottom: 52px; gap: 40px; }
  .gl-footer__grid { grid-template-columns: 1.15fr 1fr 1.15fr 1.15fr; gap: 32px; }
}
@media (max-width: 479px) {
  .gl-footer__newsletter { padding: 20px 16px; }
  .gl-footer__newsIntro { align-items: flex-start; gap: 12px; }
  .gl-footer__newsIntro > svg { width: 30px; height: 30px; }
  #footer .gl-footer__newsIntro h3 { font-size: 19px; }
  .gl-footer__newsSlot .btn { min-width: 92px; padding: 0 12px; }
}

/* --- Drobnosti v hlavičce ------------------------------------- */

.gl-topmail {
  margin-left: 18px;
  color: var(--gl-navy);
  font-size: 13px;
  font-weight: 700;
  white-space: nowrap;
}

.gl-topmail:hover {
  color: var(--gl-teal);
}

/* V návrhu je hlavní menu psané normálně; položky psané v adminu
   verzálkami (HYGIENA, STOMATOLOGIE) přepisuje script.js. */
#navigation .menu-level-1 > li > a {
  text-transform: none;
}

/* USP pás — volné linkové ikonky na bílém pozadí. */
body.gl-home-ready .gl-benefits {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 28px 16px;
  padding: 12px 0;
}
body.gl-home-ready .gl-benefits .benefitBanner__item {
  display: flex !important;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  gap: 14px;
  padding: 0 8px;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  text-align: center;
}
body.gl-home-ready .gl-benefits .benefitBanner__item::before,
body.gl-home-ready .gl-benefits .benefitBanner__item::after {
  content: none;
}
.gl-benefits__icon {
  display: block;
  flex: 0 0 40px;
  width: 40px;
  height: 40px;
  color: #087f85;
}
body.gl-home-ready .gl-benefits .benefitBanner__content {
  min-width: 0;
  text-align: center;
}
body.gl-home-ready .gl-benefits .benefitBanner__title {
  color: #101d4b;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.5;
}
@media (min-width: 992px) {
  body.gl-home-ready .gl-benefits {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 22px;
    padding: 16px 0;
  }
  body.gl-home-ready .gl-benefits .benefitBanner__title {
    font-size: 16px;
  }
}

/* Hlavička — široké hledání, kontakt a původní ovládání Shoptetu. */
.gl-header-contact { display: none; }
.gl-header-account > svg { display: none; }
@media (min-width: 992px) {
  body.gl-header-ready .top-navigation-bar { border-bottom: 1px solid #e5e8ef; background: #fff; }
  body.gl-header-ready .top-navigation-bar > .container { display: flex; align-items: center; min-height: 40px; }
  body.gl-header-ready .top-navigation-menu { order: 0; }
  body.gl-header-ready .top-navigation-contacts { order: 2; margin-left: auto; }
  body.gl-header-ready .top-navigation-contacts > strong,
  body.gl-header-ready .top-navigation-contacts > .project-phone { display: none; }
  body.gl-header-ready .gl-topmail { color: #101d4b; font-size: 14px; }
  body.gl-header-ready #header .header-top {
    display: grid;
    grid-template-columns: 190px minmax(220px, 1fr) auto;
    align-items: center;
    gap: 24px;
    height: 126px;
    padding: 20px 0;
  }
  body.gl-header-ready #header .header-top > div { height: auto; min-width: 0; }
  body.gl-header-ready #header .site-name-wrapper { width: auto; padding: 0; }
  body.gl-header-ready #header .site-name { margin: 0; padding: 0; }
  body.gl-header-ready #header .site-name img { width: 190px; max-width: 100%; height: auto; max-height: 72px; object-fit: contain; }
  body.gl-header-ready #header .header-top > .search { padding: 0; width: 100%; }
  body.gl-header-ready #header .search-form { margin: 0; width: 100%; }
  body.gl-header-ready #header .search-form fieldset { position: relative; margin: 0; padding: 0; border: 0; }
  body.gl-header-ready #header .search-input {
    height: 54px; width: 100%; padding: 0 112px 0 42px;
    border: 1px solid #e5e8ef; border-radius: 8px;
    background-color: #f3f4f7; color: #101d4b; font-size: 15px;
  }
  body.gl-header-ready #header .search-input:focus { border-color: #087f85; outline: 2px solid #087f85; outline-offset: 1px; }
  body.gl-header-ready #header .search-form button {
    position: absolute; inset: 0 0 0 auto; width: 98px; min-width: 0;
    height: 54px; padding: 0 16px; border: 0; border-radius: 0 8px 8px 0;
    background: #0f1f5c; color: #fff; line-height: 54px; font-size: 16px; text-transform: none;
  }
  body.gl-header-ready #header .navigation-buttons { display: flex; align-items: center; justify-content: flex-end; gap: 0; }
  body.gl-header-ready #header .gl-header-account,
  body.gl-header-ready #header .cart-count {
    position: relative; inset: auto; display: flex !important; flex-direction: column;
    align-items: center; justify-content: center; gap: 8px;
    width: 100px; min-width: 90px; height: 70px; padding: 0 12px;
    border: 0; border-left: 1px solid #e5e8ef; background: transparent; color: #101d4b;
    line-height: 1.3; font-size: 13px; font-weight: 400; text-transform: none;
  }
  body.gl-header-ready #header .gl-header-account > svg { display: block; flex: none; }
  body.gl-header-ready #header .gl-header-account::before,
  body.gl-header-ready #header .gl-header-account::after,
  body.gl-header-ready #header .cart-count::after { display: none; }
  body.gl-header-ready #header .cart-count::before { color: #101d4b; font-size: 30px; line-height: 30px; margin: 0; }
  body.gl-header-ready #header .cart-count .cart-price { display: block !important; margin: 0; padding: 0; font-size: 12px; font-weight: 400; color: #101d4b; }
  body.gl-header-ready #header .navigation-buttons > a[data-target="cart"] i { top: 0; background-color: #1aa89a; }
  body.gl-header-ready #header .gl-header-account:focus-visible,
  body.gl-header-ready #header .cart-count:focus-visible,
  body.gl-header-ready #header .gl-header-contact:focus-visible { outline: 2px solid #087f85; outline-offset: 3px; }
  body.gl-header-ready #navigation .menu-level-1 > li > a { font-size: 16px; }
}
@media (min-width: 1200px) {
  body.gl-header-ready #header .header-top { grid-template-columns: 210px minmax(260px, 1fr) auto auto; gap: 28px; }
  body.gl-header-ready #header .site-name img { width: 210px; }
  .gl-header-contact { display: flex; align-items: center; gap: 12px; color: #101d4b; text-decoration: none; white-space: nowrap; }
  .gl-header-contact > svg { color: #1aa89a; width: 34px; height: 34px; flex: none; }
  .gl-header-contact > span { display: flex; flex-direction: column; gap: 3px; }
  .gl-header-contact small { font-size: 13px; }
  .gl-header-contact strong { font-size: 21px; line-height: 1.2; }
}
/* USP podle schváleného návrhu — ikonka vedle textu. */
body.gl-home-ready .gl-benefits { gap: 24px 16px; }
body.gl-home-ready .gl-benefits .benefitBanner__item {
  flex-direction: row; align-items: center; justify-content: flex-start;
  gap: 14px; padding: 6px 12px;
}
body.gl-home-ready .gl-benefits .benefitBanner__content { text-align: left; }
.gl-benefits__icon { flex-basis: 44px; width: 44px; height: 44px; }
@media (min-width: 992px) {
  body.gl-home-ready .gl-benefits { gap: 0; }
  body.gl-home-ready .gl-benefits .benefitBanner__item { padding: 8px 20px; }
  body.gl-home-ready .gl-benefits .benefitBanner__item + .benefitBanner__item { border-left: 1px solid #e5e8ef; }
  body.gl-home-ready .gl-benefits .benefitBanner__item:first-child { padding-left: 0; }
}
@media (max-width: 479px) {
  body.gl-home-ready .gl-benefits { grid-template-columns: 1fr; gap: 14px; }
}

/* Přepsání odsazení a barev zděděných z patičky šablony. */
#footer .gl-footer { padding-left: 20px; padding-right: 20px; }
#footer .gl-footer__newsSlot .consents .label { color: #536078 !important; }
#footer .gl-footer__newsSlot .form-group:not(.consents) > label {
  position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0;
}
#footer.gl-footer-ready .footer-bottom { padding-left: 20px; padding-right: 20px; }

#footer.gl-footer-ready { opacity: 1; }
#footer .gl-footer__newsSlot .btn { background: #0f1f5c; color: #fff; }
#footer .gl-footer__newsSlot .form-control { text-align: left; }

#footer.gl-footer-ready .footer-bottom { flex-direction: row; }
#footer.gl-footer-ready .footer-bottom > * { margin: 0; }
#footer .gl-footer__newsSlot input.form-control { padding-left: 14px; }


/* Native header controls: one account button and a consistent live cart. */
.gl-header-cart-icon,
.gl-header-cart-label,
.gl-header-cart-zero { display: none; }
@media (max-width: 991px) {
  body.gl-header-ready #header .navigation-buttons .gl-header-account { display: none !important; }
}
@media (min-width: 992px) {
  body.gl-header-ready #header .cart-count::before { display: none !important; }
  body.gl-header-ready #header .cart-count .cart-price { display: none !important; }
  body.gl-header-ready #header .gl-header-cart-icon { display: block; width: 30px; height: 30px; flex-shrink: 0; }
  body.gl-header-ready #header .gl-header-cart-label { display: block; font-size: 13px; line-height: 18px; }
  body.gl-header-ready #header .gl-header-account > span { font-size: 13px; line-height: 18px; }
  body.gl-header-ready #header .cart-count i,
  body.gl-header-ready #header .cart-count.gl-header-cart-empty .gl-header-cart-zero {
    display: flex; position: absolute; top: 0; right: 23px; left: auto;
    align-items: center; justify-content: center; min-width: 19px; height: 19px;
    padding: 0 4px; border-radius: 50%; background: #16b9ad; color: #fff;
    font: 600 11px/1 Arial, sans-serif; border: 2px solid #fff;
  }
}

/* Approved pastel categories and Merci gift. Photos share one cached sprite. */
.gl-hero__pastel { --gl-card-bg:#ddf1ff; --gl-card-accent:#81c6f2; display:flex; flex-direction:column; aspect-ratio:auto; background:var(--gl-card-bg); }
.gl-hero__pastel--1 { --gl-card-bg:#dff7eb; --gl-card-accent:#91d9b8; }
.gl-hero__pastel--2 { --gl-card-bg:#fff2dc; --gl-card-accent:#edc886; }
.gl-hero__pastel--3 { --gl-card-bg:#fbe0e1; --gl-card-accent:#a10e31; }
.gl-hero__card.gl-hero__pastel { color:var(--gl-navy); }
.gl-hero__photo { display:block; flex-shrink:0; width:100%; aspect-ratio:421 / 431; background-repeat:no-repeat; background-size:421.378% 205.8%; background-position:1.848% 22.588%; }
.gl-hero__pastel--1 .gl-hero__photo { background-position:34% 22.588%; }
.gl-hero__pastel--2 .gl-hero__photo { background-position:66.075% 22.588%; }
.gl-hero__pastel--3 .gl-hero__photo { background-position:98.226% 22.588%; }
.gl-hero__pastel .gl-hero__body { position:static; display:flex; flex:1; flex-direction:column; padding:22px; background:none; }
.gl-hero__pastel .gl-hero__title { margin:0 0 16px; color:var(--gl-navy); font-size:clamp(19px,1.6vw,26px); line-height:1.2; }
.gl-hero__pastel .gl-hero__list { margin:0 0 20px; }
.gl-hero__pastel .gl-hero__list li { display:flex; align-items:center; gap:10px; padding:0; margin:0 0 10px; color:var(--gl-navy); font-size:14px; line-height:1.45; }
.gl-hero__pastel .gl-hero__list li::before { display:none; }
.gl-hero__feature { display:flex; align-items:center; justify-content:center; flex:0 0 32px; height:32px; border:1px solid var(--gl-card-accent); border-radius:50%; }
.gl-hero__feature svg { width:21px; height:21px; }
.gl-hero__link { margin-top:auto; font-size:14px; font-weight:600; }
.gl-hero__link span { margin-left:10px; }
.gl-hero__product { font-size:20px; line-height:1.4; margin:0 0 20px; }
.gl-hero__offer { margin:auto 0 0; padding-top:20px; border-top:1px solid #d699a4; color:#8b1230; font-size:clamp(21px,1.9vw,28px); font-weight:750; line-height:1.3; }
a.gl-hero__pastel:hover .gl-hero__link { text-decoration:underline; }
a.gl-hero__pastel:focus-visible { outline:3px solid #16b9ad; outline-offset:4px; }
@media(max-width:1199px) { .gl-hero__pastel .gl-hero__body { padding:16px; } .gl-hero__pastel .gl-hero__list li { font-size:13px; gap:7px; } }
@media(max-width:575px) { .gl-hero__grid { grid-template-columns:1fr; gap:18px; } .gl-hero__pastel .gl-hero__body { padding:22px; } .gl-hero__pastel .gl-hero__title { font-size:24px; } .gl-hero__pastel .gl-hero__list li { font-size:15px; } }


/* Do not paint the native layout while its replacement is being built.
   The timer also restores native content if custom JS fails or is disabled. */
@keyframes gl-native-fallback {
  to { visibility: visible; }
}
body:not(.ordering-process):not(.gl-header-ready) #header,
body:not(.ordering-process):not(.gl-header-ready) .top-navigation-bar {
  visibility: hidden;
  animation: gl-native-fallback 1ms step-end 1500ms forwards;
}


/* Mobile variant purchase row — approved concept 1.
   Presentation only: retain native forms, price IDs, quantity bounds and events. */
@media (max-width: 767px) {
  body.type-detail #variants { padding: 16px 12px; background: #fff; border-radius: 12px; }
  body.type-detail #variants::before { color: var(--gl-navy); font-size: 25px; line-height: 1.25; margin-bottom: 8px; }
  body.type-detail #variants .variant-table .table-row {
    display: grid; grid-template-columns: minmax(0, 1fr) 184px;
    align-items: center; gap: 18px 10px; padding: 24px 0;
    background: #fff; border-bottom: 1px solid var(--gl-line);
  }
  body.type-detail #variants .variant-table .table-row:last-child { border-bottom: 0; }
  body.type-detail #variants .table-row > .table-col { width: auto; min-width: 0; padding: 0; margin: 0; float: none; }
  body.type-detail #variants .table-row > .variant-name-wrapper {
    grid-column: 1 / -1; display: grid; grid-template-columns: 64px minmax(0, 1fr);
    column-gap: 14px; row-gap: 5px; align-items: center; margin: 0;
  }
  body.type-detail #variants .variant-name-wrapper > .variant-image { grid-column: 1; grid-row: 1 / span 2; width: 64px; margin: 0; }
  body.type-detail #variants .variant-image img { max-width: 100%; height: auto; }
  body.type-detail #variants .variant-name-wrapper > div:not(.variant-image):not(.var-dostupnost) {
    grid-column: 2; width: auto; min-width: 0; font-size: 10px; color: var(--gl-muted); overflow-wrap: anywhere;
  }
  body.type-detail #variants .variant-name { display: block; font-size: 17px; line-height: 1.35; color: var(--gl-navy); }
  body.type-detail #variants .var-dostupnost { grid-column: 2; width: auto; margin: 0; font-size: 13px; line-height: 1.45; }
  body.type-detail #variants .var-dostupnost.skladem,
  body.type-detail #variants .var-dostupnost.vyprodano { padding-left: 17px; }
  body.type-detail #variants .var-dostupnost::before { font-size: 10px; }
  body.type-detail #variants .variant-name-wrapper:not(:has(.variant-image)) { grid-template-columns: minmax(0, 1fr); }
  body.type-detail #variants .variant-name-wrapper:not(:has(.variant-image)) > div { grid-column: 1; }
  body.type-detail #variants .table-row > .price { grid-column: 1; }
  body.type-detail #variants .variant-price-wrap { text-align: left; }
  body.type-detail #variants .variant-price-wrap .price-final { font-size: 23px; line-height: 1.2; font-weight: 750; color: var(--gl-navy); }
  body.type-detail #variants .variant-price-wrap .price-additional { margin-top: 4px; font-size: 12px; line-height: 1.3; color: var(--gl-muted); }
  body.type-detail #variants .variant-price-wrap .price-standard { font-size: 12px; line-height: 1.3; }
  body.type-detail #variants .table-row > .cart { grid-column: 2; text-align: right; }
  body.type-detail #variants .variant-cart,
  body.type-detail #variants .variant-submit { width: 100%; margin: 0; }
  body.type-detail #variants .variant-submit fieldset {
    display: flex; align-items: center; justify-content: flex-end; gap: 8px;
    min-width: 0; width: 100%; padding: 0; border: 0; margin: 0;
  }
  body.type-detail #variants .variant-cart .quantity {
    position: relative; inset: auto; display: grid; grid-template-columns: repeat(3, 1fr);
    flex: 0 0 132px; width: 132px; height: 44px; padding: 0; margin: 0;
    border: 1px solid #dce2ec; border-radius: 9px; background: #f8fafc; overflow: visible;
  }
  body.type-detail #variants .quantity > label { grid-column: 2; grid-row: 1; width: 100%; min-width: 0; margin: 0; }
  body.type-detail #variants .quantity > .increase-tooltip,
  body.type-detail #variants .quantity > .decrease-tooltip { position: absolute; }
  body.type-detail #variants .quantity input.amount {
    width: 100%; height: 42px; padding: 0; margin: 0; min-width: 0;
    font-size: 16px; line-height: normal; color: var(--gl-navy); background: #fff; border: 0; border-radius: 0;
  }
  body.type-detail #variants .quantity .increase,
  body.type-detail #variants .quantity .decrease {
    position: static; inset: auto; grid-row: 1; display: flex; align-items: center; justify-content: center;
    width: 100%; height: 42px; padding: 0; margin: 0; border: 0 !important;
    background: transparent; color: var(--gl-navy); font-size: 0; touch-action: manipulation;
  }
  body.type-detail #variants .quantity .decrease { grid-column: 1; }
  body.type-detail #variants .quantity .increase { grid-column: 3; }
  body.type-detail #variants .quantity .decrease::before,
  body.type-detail #variants .quantity .increase::before {
    position: static; width: auto; height: auto; color: currentColor; font: 400 22px/1 Arial, sans-serif;
  }
  body.type-detail #variants .quantity .decrease::before { content: '−'; }
  body.type-detail #variants .quantity .increase::before { content: '+'; }
  body.type-detail #variants .quantity .increase__sign,
  body.type-detail #variants .quantity .decrease__sign { display: none; }
  body.type-detail #variants .variant-cart .btn.add-to-cart-button {
    display: inline-flex; flex: 0 0 44px; align-items: center; justify-content: center;
    width: 44px; min-width: 44px; height: 44px !important; min-height: 44px;
    padding: 0; margin: 0; border: 1px solid var(--gl-navy); border-radius: 9px;
    background: var(--gl-navy); color: #fff; font-size: 0; line-height: 1; box-shadow: none;
  }
  body.type-detail #variants .variant-cart .btn.add-to-cart-button::before {
    content: ''; display: block; position: static; width: 23px; height: 25px; margin: 0;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 26' fill='none' stroke='white' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 8h16l1 16H3L4 8Z'/%3E%3Cpath d='M8 10V6a4 4 0 0 1 8 0v4'/%3E%3C/svg%3E") center / contain no-repeat;
  }
  body.type-detail #variants .variant-cart .btn.add-to-cart-button .sr-only {
    position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0);
  }
  body.type-detail #variants .variant-cart .btn.add-to-cart-button:disabled { opacity: .45; cursor: not-allowed; }
  body.type-detail #variants .quantity button:disabled { opacity: .45; cursor: not-allowed; }
  body.type-detail #variants .quantity button:focus-visible,
  body.type-detail #variants .quantity input:focus-visible,
  body.type-detail #variants .add-to-cart-button:focus-visible { outline: 2px solid var(--gl-teal); outline-offset: 2px; }
  @media (hover: hover) {
    body.type-detail #variants .variant-cart .btn.add-to-cart-button:not(:disabled):hover { background: #172d75; }
    body.type-detail #variants .quantity button:not(:disabled):hover { color: var(--gl-teal); }
  }
}
@media (max-width: 359px) {
  body.type-detail #variants { padding: 14px 8px; }
  body.type-detail #variants .variant-table .table-row { grid-template-columns: minmax(0, 1fr) 160px; gap: 16px 6px; }
  body.type-detail #variants .variant-cart .quantity { width: 108px; flex-basis: 108px; }
  body.type-detail #variants .variant-price-wrap .price-final { font-size: 21px; }
  body.type-detail #variants .variant-price-wrap .price-additional { font-size: 11px; }
}

/* Native Classic compatibility. All shared homepage components remain intact. */
@media(min-width:768px) {
  body.gl-classic #navigation { min-height: 60px; overflow: visible; width: 100%; margin-left: 0; margin-right: 0; }
  body.gl-classic #navigation .navigation-in { position: relative; width: 100% !important; }
  body.gl-classic #navigation .menu-level-1 { width: 100%; }
  body.gl-classic .top-navigation-bar .top-navigation-menu { min-width: 0; flex: 1; }
  body.gl-classic .top-navigation-bar .top-navigation-contacts { flex: 0 0 auto; }
}
body.gl-classic { background: #fff; color: var(--gl-text); }
body.gl-classic .container { width: 100%; max-width: 1440px; padding-left: 24px; padding-right: 24px; }
body.gl-classic #content-wrapper { background: #fff; }
body.gl-classic.type-index .content-wrapper-in { width: 100%; }
body.gl-classic.type-index #content { width: 100%; padding-left: 0; padding-right: 0; }
body.gl-classic.type-index .homepage-box { background: #fff; }
body.gl-classic.type-index #content > h1 { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0,0,0,0); }
body.gl-classic.type-index .latest-contribution-box { display: none; }
body.gl-classic .gl-hero { margin-top: 32px; }
body.gl-classic .gl-benefits .benefitBanner__item { max-width: none; }
body.gl-classic .gl-footer { width: 100%; }
body.gl-classic .gl-header-account { border-top: 0; border-right: 0; border-bottom: 0; }
body.gl-classic .gl-header-account-icon,
body.gl-classic .gl-header-cart-icon { pointer-events: none; }
body.gl-classic .gl-header-contact:hover { color: var(--gl-navy); text-decoration: none; }
body.gl-classic.type-index .welcome { position: relative; padding: 40px 0; margin: 0; }
body.gl-classic.type-index .welcome > .h1 { color: var(--gl-navy); font-size: 28px; line-height: 1.3; }
body.gl-classic.type-index .welcome p { color: var(--gl-muted); font-size: 15px; line-height: 1.7; }
body.gl-classic.type-index .welcome > div { margin-left: 0; margin-right: 0; max-width: none; text-align: left; }
body.gl-classic .gl-welcome-art img { width: 100%; height: auto; max-height: 440px; object-fit: contain; }
body.gl-classic #footer.gl-footer-ready { padding-top: 0; }
body.gl-classic #footer.gl-footer-ready .footer-bottom { max-width: 1392px; }
body.gl-classic #variants .variant-name { font-weight: 700; color: var(--gl-navy); }
body.gl-classic #variants .variant-name-wrapper,
body.gl-classic #variants .variant-name-wrapper > div { text-align: left; justify-items: start; }
body.gl-classic #variants .var-dostupnost { margin-top: 6px; font-size: 14px; }
@media(min-width: 768px) {
  body.gl-classic #header { background: #fff; }
  body.gl-classic #header .navigation-wrapper { position: relative; }
  body.gl-classic #navigation { background: var(--gl-navy); border: 0; height: auto; }
  body.gl-classic #navigation .navigation-in { background: transparent; }
  body.gl-classic #navigation .menu-level-1 > li > a { color: #fff; padding: 19px 22px; font-weight: 700; text-transform: none; }
  body.gl-classic #navigation .menu-level-1 > li > a:hover { background: #1a306d; }
  body.gl-classic #navigation .menu-level-2 a { color: var(--gl-navy); }
  body.gl-classic #navigation .menu-level-2 { background: #fff; }
  body.gl-classic #navigation .menu-helper { background: var(--gl-navy); color: #fff; }
  body.gl-classic .welcome { min-height: 420px; }
  body.gl-classic .welcome > .h1,
  body.gl-classic .welcome > div:not(.h1) { width: 49%; }
  body.gl-classic .welcome > .gl-welcome-art { position: absolute; width: 46%; right: 0; top: 15px; bottom: 15px; margin: 0; display: flex; align-items: center; }
}
@media(min-width: 992px) {
  body.gl-classic.gl-header-ready #header .header-top > div:last-child { width: auto; }
  body.gl-classic.gl-header-ready #header .navigation-buttons { position: static; width: auto; }
  body.gl-classic.gl-header-ready #header .navigation-buttons > a[data-target="navigation"] { display: none; }
  body.gl-classic.gl-header-ready #header .search-form button { top: 0; }
  body.gl-classic .top-navigation-tools > .top-nav-button { display: none; }
}
@media(max-width: 991px) {
  body.gl-classic .gl-header-contact { display: none; }
}
@media(max-width: 767px) {
  body.gl-classic .container { padding-left: 16px; padding-right: 16px; }
  body.gl-classic #header .container { padding-left: 12px; padding-right: 12px; }
  body.gl-classic .gl-hero { margin-top: 20px; }
  body.gl-classic .welcome { padding: 24px 0; }
  body.gl-classic .gl-header-cart-icon, body.gl-classic .gl-header-cart-label, body.gl-classic .gl-header-cart-zero { display: none; }
  body.gl-classic #variants { opacity: 1; }
  body.gl-classic.type-detail #variants .variant-name-wrapper:not(:has(.variant-image)) > div:not(.variant-image):not(.var-dostupnost) { grid-column: 1; }
}

/* Modern typography. Keep icon-font pseudo-elements and compact cart sizes intact. */
body.gl-classic {
  --template-font: var(--gl-font);
  --template-headings-font: var(--gl-font);
  font-family: var(--gl-font);
  font-weight: 400;
  -webkit-font-smoothing: antialiased;
}
body.gl-classic :is(h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6),
body.gl-classic :is(input,select,textarea,button,.btn),
body.gl-classic #navigation a,
body.gl-classic .price-final {
  font-family: var(--gl-font);
}
body.gl-classic :is(h1,h2,h3,.h1,.h2,.h3) {
  font-weight: 600;
  letter-spacing: -.025em;
  line-height: 1.3;
}
body.gl-classic .gl-hero__title,
body.gl-classic .gl-hero__offer,
body.gl-classic .gl-invoice__title {
  font-weight: 700;
  letter-spacing: -.025em;
}
body.gl-classic #navigation .menu-level-1 > li > a { font-weight: 600; letter-spacing: .015em; }
body.gl-classic .gl-benefits strong { font-weight: 600; line-height: 1.5; }
body.gl-classic #footer :is(.gl-footer__ch,.gl-footer__newsIntro h3) { font-weight: 600; letter-spacing: -.02em; }
body.gl-classic #footer .gl-footer__phone,
body.gl-classic .gl-header-contact strong,
body.gl-classic #variants .variant-price-wrap .price-final { font-weight: 700; letter-spacing: -.025em; }
body.gl-classic #variants .variant-name { font-weight: 600; }
body.gl-classic .price-final,
body.gl-classic input.amount { font-variant-numeric: tabular-nums; }

/* Rounded desktop navigation; overflow remains visible for dropdown panels. */
@media(min-width: 768px) {
  body.gl-classic #navigation {
    border-radius: 12px;
    box-shadow: 0 4px 12px rgba(15,31,92,.08);
  }
  body.gl-classic #navigation .menu-level-1 > li { border-color: rgba(255,255,255,.09); }
  body.gl-classic #navigation .menu-level-1 > li:first-child > a { border-radius: 12px 0 0 12px; }
  body.gl-classic #navigation .menu-level-1 > li > a { transition: background-color .18s ease; }
  body.gl-classic.gl-header-ready #navigation .menu-level-1 > li > a { font-size: 16px; line-height: 22px; padding-top: 19px; padding-bottom: 19px; text-shadow: none; }
  body.gl-classic #navigation .menu-level-1 > li:hover > a,
  body.gl-classic #navigation .menu-level-1 > li.active > a { background: #1a306d; box-shadow: inset 0 -3px 0 #64d6c8; }
  body.gl-classic #navigation .menu-level-1 > li > a:focus-visible { outline: 2px solid #71dfd3; outline-offset: -4px; }
  body.gl-classic #navigation .menu-level-2 { border-radius: 0 0 12px 12px; }
  body.gl-classic #navigation .menu-helper { border-radius: 0 12px 12px 0; }
}
@media(prefers-reduced-motion: reduce) {
  body.gl-classic #navigation .menu-level-1 > li > a { transition: none; }
}

/* Category cards: native links, prices, stock labels and actions remain in place. */
body.type-category #products.products-block { row-gap: 20px; margin-top: 24px; margin-bottom: 24px; }
body.type-category #products.products-block::before,
body.type-category #products.products-block::after { display: none; }
body.type-category #products.products-block > .product { min-width: 0; padding: 0 10px; border: 0; }
body.type-category #products .gl-product-card { display: flex; flex-direction: column; height: 100%; padding: 14px; border: 1px solid #e5e9f0; border-radius: 16px; background: #fff; box-shadow: 0 3px 12px rgba(15,31,92,.035); }
body.type-category #products .gl-product-card::before,
body.type-category #products .gl-product-card::after { display: none; }
body.type-category #products .gl-product-card > .image { padding: 8px; margin: 0 0 14px; border-radius: 10px; aspect-ratio: 4/3; display: flex; align-items: center; justify-content: center; }
body.type-category #products .gl-product-card > .image img { width: 100%; height: 100%; object-fit: contain; }
body.type-category #products .gl-product-card .p-in { display: flex; flex: 1; flex-direction: column; padding: 0; width: 100%; }
body.type-category #products .gl-product-card .p-in-in { padding: 0; height: auto !important; }
body.type-category #products .gl-product-card .name { display: block; height: auto !important; min-height: 4.35em; margin: 0 0 12px; font-size: 14px; font-weight: 600; line-height: 1.45; text-align: left; }
body.type-category #products .gl-product-card .ratings-wrapper { display: flex; flex-wrap: wrap; gap: 8px; height: auto; margin: 0 0 12px; }
body.type-category #products .gl-product-card .availability { margin: 0; font-size: 12px; }
body.type-category #products .gl-product-card .p-bottom { margin-top: auto; padding-top: 16px; }
body.type-category #products .gl-product-card .p-bottom > div { display: flex; flex-wrap: wrap; align-items: end; justify-content: space-between; gap: 12px; }
body.type-category #products .gl-product-card .prices { display: flex; flex-direction: column; text-align: left; margin: 0; }
body.type-category #products .gl-product-card .price-final { order: -1; font-size: 23px; color: var(--gl-navy); }
body.type-category #products .gl-product-card .price-additional { font-size: 11px; color: var(--gl-muted); }
body.type-category #products .gl-product-card .p-tools { margin: 0; padding: 0; }
body.type-category #products .gl-product-card .p-tools .btn { border-radius: 9px; min-height: 42px; padding: 10px 16px; font-size: 13px; text-transform: none; font-weight: 600; }
.gl-card-sizes { display: flex; flex-wrap: wrap; gap: 6px; min-height: 58px; align-content: start; font-size: 11px; line-height: 1.45; color: var(--gl-muted); }
.gl-card-sizes__label { flex-basis: 100%; }
.gl-card-size { display: inline-flex; align-items: center; justify-content: center; min-width: 32px; min-height: 32px; padding: 4px 7px; border: 1px solid #dce6e8; border-radius: 7px; background: #f2f8f7; color: var(--gl-navy); font-size: 12px; font-weight: 600; }
.gl-card-size:hover,.gl-card-size:focus-visible { background: #e0f2ee; border-color: #1aa89a; text-decoration: none; }
@media(min-width: 992px) {
  body.type-category #products .gl-product-card { padding: 20px; }
  body.type-category #products .gl-product-card .name { font-size: 15px; }
}
@media(hover: hover) {
  body.type-category #products .gl-product-card:hover { border-color: #c6d6df; box-shadow: 0 8px 24px rgba(15,31,92,.08); }
}
@media(max-width: 479px) {
  body.type-category #products.products-block > .product { padding-left: 5px; padding-right: 5px; }
  body.type-category #products .gl-product-card { padding: 11px; border-radius: 12px; }
  body.type-category #products .gl-product-card .name { font-size: 13px; }
  body.type-category #products .gl-product-card .price-final { font-size: 20px; }
  body.type-category #products .gl-product-card .p-tools { width: 100%; }
  body.type-category #products .gl-product-card .p-tools .btn { width: 100%; }
}

/* Product variants alongside the photo; native forms are siblings, never nested. */
body.type-detail .social-buttons-wrapper { display: none; }
body.type-detail .gl-detail-purchase { display: grid; grid-template-columns: minmax(0,1fr); gap: 24px; }
body.type-detail .gl-detail-purchase > .p-detail-inner-header { grid-column: 1 / -1; }
body.type-detail .gl-detail-purchase > form { min-width: 0; }
body.type-detail .gl-detail-purchase .product-top { margin: 0; }
body.type-detail .gl-detail-purchase .product-top > div { width: 100%; float: none; padding-left: 0; padding-right: 0; }
body.type-detail .gl-detail-purchase .p-final-price-wrapper,
body.type-detail .gl-detail-purchase p:has(#choose-variant) { display: none; }
body.type-detail #variants.gl-purchase-panel { display: block !important; opacity: 1; visibility: visible; padding: 20px; margin: 0; border: 1px solid #e5e9f0; border-radius: 16px; background: #fff; align-self: start; scroll-margin-top: 24px; }
body.type-detail #variants.gl-purchase-panel::before { display: none; }
#gl-purchase-title { margin: 0 0 8px; font-size: 22px; }
@media(min-width: 992px) {
  body.type-detail .gl-detail-purchase { grid-template-columns: minmax(0,1fr) minmax(440px,1fr); gap: 24px 40px; }
  body.type-detail .gl-detail-purchase > form { grid-column: 1; }
  body.type-detail #variants.gl-purchase-panel { grid-column: 2; }
}
@media(min-width: 768px) {
  body.type-detail #variants.gl-purchase-panel .table-row { display: grid; grid-template-columns: minmax(0,1fr) 184px; gap: 8px 18px; align-items: center; padding: 18px 0; border-bottom: 1px solid #e5e9f0; }
  body.type-detail #variants.gl-purchase-panel .table-row:last-child { border-bottom: 0; }
  body.type-detail #variants.gl-purchase-panel .table-col { width: auto; padding: 0; float: none; }
  body.type-detail #variants.gl-purchase-panel .variant-name-wrapper { grid-column: 1; grid-row: 1; display: block; }
  body.type-detail #variants.gl-purchase-panel .variant-image { display: none; }
  body.type-detail #variants.gl-purchase-panel .variant-name-wrapper > div:not(.variant-image) { display: block; font-size: 10px; color: var(--gl-muted); }
  body.type-detail #variants.gl-purchase-panel .variant-name { font-size: 16px; }
  body.type-detail #variants.gl-purchase-panel .variant-name-wrapper .var-dostupnost { font-size: 13px; }
  body.type-detail #variants.gl-purchase-panel .price { grid-column: 1; grid-row: 2; text-align: left; }
  body.type-detail #variants.gl-purchase-panel .variant-price-wrap { text-align: left; }
  body.type-detail #variants.gl-purchase-panel .price-final { font-size: 22px; font-weight: 700; color: var(--gl-navy); }
  body.type-detail #variants.gl-purchase-panel .price-additional { font-size: 11px; }
  body.type-detail #variants.gl-purchase-panel .cart { grid-column: 2; grid-row: 1 / span 2; }
  body.type-detail #variants.gl-purchase-panel fieldset { display: flex; align-items: center; gap: 8px; }
  body.type-detail #variants.gl-purchase-panel .quantity { margin: 0; border-radius: 8px; }
  body.type-detail #variants.gl-purchase-panel .btn { border-radius: 8px; min-height: 44px; }
}
body.type-detail #variants.gl-purchase-panel .variant-cart .quantity { display: grid; grid-template-columns: repeat(3,1fr); flex: 0 0 132px; width: 132px; height: 44px; padding: 0; border: 1px solid #dce2ec; border-radius: 9px; background: #f8fafc; }
body.type-detail #variants.gl-purchase-panel .quantity > label { grid-column: 2; grid-row: 1; width: 100%; min-width: 0; margin: 0; }
body.type-detail #variants.gl-purchase-panel .quantity input.amount { width: 100%; height: 42px; padding: 0; border: 0; border-radius: 0; background: #fff; font-size: 16px; text-align: center; }
body.type-detail #variants.gl-purchase-panel .quantity .increase,
body.type-detail #variants.gl-purchase-panel .quantity .decrease { position: static; inset: auto; display: flex; align-items: center; justify-content: center; grid-row: 1; width: 100%; height: 42px; padding: 0; border: 0; background: transparent; font-size: 0; color: var(--gl-navy); }
body.type-detail #variants.gl-purchase-panel .quantity .decrease { grid-column: 1; }
body.type-detail #variants.gl-purchase-panel .quantity .increase { grid-column: 3; }
body.type-detail #variants.gl-purchase-panel .quantity .decrease::before { content: '−'; font: 22px/1 Arial,sans-serif; position: static; }
body.type-detail #variants.gl-purchase-panel .quantity .increase::before { content: '+'; font: 22px/1 Arial,sans-serif; position: static; }
body.type-detail #variants.gl-purchase-panel .increase__sign,
body.type-detail #variants.gl-purchase-panel .decrease__sign { display: none; }
body.type-detail #variants.gl-purchase-panel .btn.add-to-cart-button { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 44px; width: 44px; height: 44px; min-width: 44px; padding: 0; margin: 0; border-radius: 9px; background: var(--gl-navy); border: 1px solid var(--gl-navy); color: #fff; font-size: 0; }
body.type-detail #variants.gl-purchase-panel .btn.add-to-cart-button::before { margin: 0; font-size: 23px; color: #fff; }
@media(max-width: 359px) {
  body.type-detail #variants.gl-purchase-panel { padding: 14px 8px; }
  body.type-detail #variants.gl-purchase-panel .variant-cart .quantity { width: 108px; flex-basis: 108px; }
}

/* Match the native single-product purchase controls to the glove variants. */
body.type-detail #product-detail-form .add-to-cart { display: flex; align-items: center; gap: 8px; flex-wrap: nowrap; }
body.type-detail #product-detail-form .add-to-cart .quantity { display: grid; grid-template-columns: repeat(3, 1fr); flex: 0 0 132px; width: 132px; height: 44px; padding: 0; margin: 0; border: 1px solid #dce2ec; border-radius: 9px; background: #f8fafc; }
body.type-detail #product-detail-form .quantity > label { grid-column: 2; grid-row: 1; width: 100%; min-width: 0; margin: 0; }
body.type-detail #product-detail-form .quantity input.amount { width: 100%; height: 42px; padding: 0; border: 0; border-radius: 0; background: #fff; font-size: 16px; text-align: center; }
body.type-detail #product-detail-form .quantity .increase,
body.type-detail #product-detail-form .quantity .decrease { position: static; inset: auto; display: flex; align-items: center; justify-content: center; grid-row: 1; width: 100%; height: 42px; padding: 0; border: 0; background: transparent; font-size: 0; color: var(--gl-navy); }
body.type-detail #product-detail-form .quantity .decrease { grid-column: 1; }
body.type-detail #product-detail-form .quantity .increase { grid-column: 3; }
body.type-detail #product-detail-form .quantity .decrease::before { content: '−'; font: 22px/1 Arial,sans-serif; position: static; transform: none; }
body.type-detail #product-detail-form .quantity .increase::before { content: '+'; font: 22px/1 Arial,sans-serif; position: static; transform: none; }
body.type-detail #product-detail-form .increase__sign,
body.type-detail #product-detail-form .decrease__sign { display: none; }
body.type-detail #product-detail-form .add-to-cart .btn.add-to-cart-button { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 44px; width: 44px; height: 44px; min-width: 44px; min-height: 44px; padding: 0; margin: 0; border-radius: 9px; background: var(--gl-navy); border: 1px solid var(--gl-navy); color: #fff; font-size: 0; }
body.type-detail #product-detail-form .add-to-cart .btn.add-to-cart-button::before { content: ''; display: block; position: static; width: 25px; height: 25px; margin: 0; background: center / contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 3h3l2.5 12h11L21 7H6M8 15l-1 3h12'/%3E%3Ccircle cx='9' cy='21' r='1'/%3E%3Ccircle cx='18' cy='21' r='1'/%3E%3C/svg%3E"); }
body.type-detail #product-detail-form .add-to-cart .btn.add-to-cart-button::after { display: none; }
body.type-detail #product-detail-form .add-to-cart .btn.add-to-cart-button:disabled { opacity: .45; cursor: not-allowed; }
body.type-detail #product-detail-form .add-to-cart button:focus-visible { outline: 2px solid var(--gl-teal); outline-offset: 2px; }
body.type-detail #product-detail-form .add-to-cart .btn.add-to-cart-button:not(:disabled):hover { background-color: #172d75; }

/* Compact purchase rows: details on the left, controls vertically centered on the right. */
body.type-detail #variants.gl-purchase-panel .table-row { display: grid; grid-template-columns: minmax(0,1fr) 184px; gap: 4px 14px; padding: 12px 0; align-items: center; }
body.type-detail #variants.gl-purchase-panel .table-row > .variant-name-wrapper { display: block; grid-column: 1; grid-row: 1; margin: 0; }
body.type-detail #variants.gl-purchase-panel .variant-name-wrapper .variant-image { display: none; }
body.type-detail #variants.gl-purchase-panel .variant-name-wrapper > div:not(.variant-image) { font-size: 9px; line-height: 1.35; }
body.type-detail #variants.gl-purchase-panel .variant-name { font-size: 15px; line-height: 1.3; margin: 0 0 3px; }
body.type-detail #variants.gl-purchase-panel .table-row > .price { grid-column: 1; grid-row: 2; }
body.type-detail #variants.gl-purchase-panel .variant-price-wrap { display: flex; flex-wrap: wrap; align-items: baseline; gap: 2px 9px; text-align: left; }
body.type-detail #variants.gl-purchase-panel .price-final { order: 0; font-size: 20px; line-height: 1.25; }
body.type-detail #variants.gl-purchase-panel .price-additional { order: 2; flex-basis: 100%; margin: 0; font-size: 10px; line-height: 1.3; }
body.type-detail #variants.gl-purchase-panel .var-dostupnost { order: 1; margin: 0; font-size: 11px; line-height: 1.3; }
body.type-detail #variants.gl-purchase-panel .var-dostupnost .availability-amount { display: none; }
body.type-detail #variants.gl-purchase-panel .table-row > .cart { grid-column: 2; grid-row: 1 / span 2; align-self: center; }
body.type-detail #variants.gl-purchase-panel .variant-submit fieldset { display: flex; align-items: center; justify-content: flex-end; gap: 8px; margin: 0; padding: 0; }
body.type-detail #variants.gl-purchase-panel .quantity .increase::before,
body.type-detail #variants.gl-purchase-panel .quantity .decrease::before { line-height: 1; width: auto; height: auto; }
@media(max-width: 479px) {
  body.type-detail #variants.gl-purchase-panel { padding: 16px 12px; }
  body.type-detail #variants.gl-purchase-panel .table-row { grid-template-columns: minmax(0,1fr) 160px; column-gap: 8px; }
  body.type-detail #variants.gl-purchase-panel .variant-cart .quantity { width: 108px; flex-basis: 108px; }
  body.type-detail #variants.gl-purchase-panel .variant-name { font-size: 14px; }
  body.type-detail #variants.gl-purchase-panel .productEan { overflow-wrap: anywhere; }
}

/* Tight category-card information rows, preserving Shoptet column widths. */
body.type-category #products .gl-product-card .stars .star { font-size: 15px; color: #d99b24; }
body.type-category #products .gl-product-card .stars .star-off { color: #dce2eb; }
body.type-category #products .gl-product-card .stars { filter: drop-shadow(0 1px 1px rgba(185,121,12,.12)); }
body.type-category #products .gl-product-card .name { min-height: 0; margin-bottom: 6px; }
body.type-category #products .gl-product-card .ratings-wrapper { margin-bottom: 7px; }
body.type-category #products .gl-product-card .gl-card-sizes { min-height: 0; gap: 4px 6px; }
body.type-category #products .gl-product-card .p-bottom { padding-top: 10px; }
body.type-category #products .gl-product-card > .image { padding: 0; aspect-ratio: 6/5; }
body.type-category #products .gl-product-card .ratings-wrapper { display: flex; flex-wrap: nowrap; align-items: center; justify-content: space-between; gap: 6px; }
body.type-category #products .gl-product-card .stars-wrapper { float: none; flex: 0 0 auto; margin: 0; }
body.type-category #products .gl-product-card .availability { float: none; width: auto; flex: 0 0 auto; margin: 0; padding: 0; white-space: nowrap; font-size: 14px; font-weight: 600; }
body.type-category #products .gl-product-card .availability-amount { display: none; }
body.type-category #products .gl-product-card .p-bottom > div { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 8px; align-items: center; }
body.type-category #products .gl-product-card .p-tools { width: auto; }
body.type-category #products .gl-product-card .p-tools .btn { width: auto; white-space: nowrap; }
body.type-category #products .gl-product-card .prices { min-width: 0; }
@media(max-width: 479px) {
  body.type-category #products .gl-product-card .ratings-wrapper { gap: 4px; }
  body.type-category #products .gl-product-card .stars { font-size: 11px; white-space: nowrap; }
  body.type-category #products .gl-product-card .stars .star { font-size: 12px; }
  body.type-category #products .gl-product-card .availability { font-size: 12px; }
  body.type-category #products .gl-product-card .price-final { font-size: 18px; white-space: nowrap; }
  body.type-category #products .gl-product-card .price-additional { font-size: 9px; }
  body.type-category #products .gl-product-card .p-bottom > div { gap: 5px; }
  body.type-category #products .gl-product-card .p-tools .btn { min-width: 48px; padding: 10px 7px; font-size: 11px; }
}
/* Always-visible native category filters; retain Shoptet's product columns. */
body.type-index.gl-home-ready .welcome-wrapper { display: none !important; }
.gl-home-products__head { display: flex; justify-content: space-between; align-items: center; gap: 16px; margin-bottom: 20px; }
.gl-home-products__head .gl-h2 { margin: 0; }
.gl-home-products__controls { display: flex; gap: 8px; }
.gl-home-products__controls button { width: 44px; height: 44px; border: 1px solid #dfe6ef; border-radius: 50%; background: #fff; color: var(--gl-navy); font-size: 23px; cursor: pointer; }
.gl-home-products__controls button:hover { background: #edf7f6; }
.gl-home-products__controls button:disabled { opacity: .3; cursor: default; }
body.gl-home-ready .gl-home-products #products-1 { display: flex !important; flex-wrap: nowrap; gap: 20px; overflow-x: auto; scroll-snap-type: x mandatory; scroll-padding: 0; overscroll-behavior-x: contain; margin: 0; padding: 2px 0 12px; width: 100%; scrollbar-width: thin; scrollbar-color: #c4cedd transparent; }
body.gl-home-ready .gl-home-products #products-1::before,
body.gl-home-ready .gl-home-products #products-1::after { display: none; }
body.gl-home-ready .gl-home-products #products-1 > .product { flex: 0 0 calc((100% - 60px) / 4); width: calc((100% - 60px) / 4); min-width: 0; padding: 0; float: none; scroll-snap-align: start; border: 0; }
.gl-home-products .p { height: 100%; padding: 16px; border: 1px solid #e2e7ef; border-radius: 16px; background: #fff; overflow: hidden; }
.gl-home-products .p > .image { aspect-ratio: 6 / 5; display: flex; align-items: center; justify-content: center; }
.gl-home-products .p > .image img { max-height: 100%; object-fit: contain; }
.gl-home-products .p .name { font-size: 14px; line-height: 1.45; color: var(--gl-navy); }
.gl-home-products .p .price-final { color: var(--gl-navy); font-size: 21px; font-weight: 700; }
.gl-home-products .p .stars .star { color: #d99b24; }
.gl-home-products .p .availability-amount { display: none; }
.gl-home-products .p .btn { border-radius: 9px; }
.gl-home-products :is(button,a):focus-visible,
.gl-home-products #products-1:focus-visible { outline: 2px solid var(--gl-teal); outline-offset: 2px; }
@media(max-width: 991px) {
  body.gl-home-ready .gl-home-products #products-1 > .product { flex-basis: calc((100% - 40px) / 3); width: calc((100% - 40px) / 3); }
}
@media(max-width: 767px) {
  body.gl-home-ready .gl-home-products #products-1 { gap: 12px; }
  body.gl-home-ready .gl-home-products #products-1 > .product { flex-basis: 72%; width: 72%; }
  .gl-home-products__head .gl-h2 { font-size: 22px; }
}
body.type-category #products .gl-product-card .p-tools .gl-card-cart-link { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; min-width: 44px; padding: 7px; background: transparent; color: var(--gl-navy); border: 0; border-radius: 10px; box-shadow: none; }
body.type-category #products .gl-product-card .p-tools .gl-card-cart-link::before,
body.type-category #products .gl-product-card .p-tools .gl-card-cart-link::after { display: none; }
body.type-category #products .gl-product-card .p-tools .gl-card-cart-link:hover { background: #edf2fa; color: var(--gl-navy); }
body.type-category #products .gl-product-card .p-tools .gl-card-cart-link:focus-visible { outline: 2px solid var(--gl-teal); outline-offset: 2px; }
body.type-category #products .gl-card-cart-link svg { width: 27px; height: 27px; flex: 0 0 27px; }
body.gl-inline-filters .listSorting,
body.gl-inline-filters #filters-wrapper,
body.gl-inline-filters .filters-unveil-button-wrapper,
body.gl-inline-filters .toggle-filters { display: none !important; }
body.gl-inline-filters #category-header { display: block; padding: 0; margin: 0 0 20px; min-height: 0; background: transparent; border: 0; }
body.gl-inline-filters #category-header .listItemsTotal { display: none; }
body.gl-no-category-filters #category-header,
body.gl-no-category-filters #filters-wrapper,
body.gl-no-category-filters .filters-unveil-button-wrapper,
body.gl-no-category-filters .toggle-filters,
body.gl-no-category-filters .gl-category-filters { display: none !important; }
.gl-category-filters { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 24px; width: 100%; padding: 14px 18px; margin: 0; border: 1px solid #e2e7ef; border-radius: 14px; background: #f8fafc; }
.gl-filter-group { display: flex; flex-wrap: wrap; align-items: center; gap: 7px; }
.gl-filter-group > strong { margin-right: 5px; font-size: 13px; color: #48536a; }
.gl-filter-chip { display: inline-flex; align-items: center; justify-content: center; gap: 7px; min-width: 40px; min-height: 40px; padding: 8px 12px; border: 1px solid #e0e5ee; border-radius: 10px; background: #fff; color: #172344; font-size: 13px; font-weight: 600; text-decoration: none !important; transition: background .15s, border-color .15s; }
.gl-filter-chip:hover { background: #f1f5fa; border-color: #a4b3cc; }
.gl-filter-chip.is-active { background: #edf2fc; border-color: #111c59; color: #111c59; box-shadow: inset 0 0 0 1px #111c59; }
.gl-filter-chip:focus-visible { outline: 3px solid #19b7b1; outline-offset: 3px; }
.gl-filter-chip[aria-disabled="true"] { opacity: .4; cursor: default; }
.gl-filter-swatch { width: 15px; height: 15px; border: 1px solid #0002; border-radius: 50%; flex: 0 0 15px; }
.gl-filter-clear { align-self: center; padding: 10px 0; color: #52627c; font-size: 12px; text-decoration: underline; }
/* Light breadcrumb trail; preserve native links and BreadcrumbList metadata. */
body.type-detail #description .gl-parameters { width: 100%; table-layout: fixed; border-collapse: separate; border-spacing: 0; border: 1px solid #e2e7ef; border-radius: 12px; overflow: hidden; margin: 0; background: #fff; font-size: 13px; }
body.type-detail #description .gl-parameters th,
body.type-detail #description .gl-parameters td { padding: 12px 16px; text-align: left; vertical-align: top; border: 0; border-bottom: 1px solid #e8edf3; line-height: 1.5; overflow-wrap: anywhere; }
body.type-detail #description .gl-parameters th { width: 42%; background: #f5f7fa; color: #526079; font-weight: 500; }
body.type-detail #description .gl-parameters td { color: var(--gl-navy); font-weight: 500; }
body.type-detail #description .gl-parameters tr:last-child > * { border-bottom: 0; }
body.type-detail #description .gl-parameters .row-header-label-colon { display: none; }
.gl-related-files { margin-top: 24px; }
.gl-related-files h3 { margin: 0 0 12px; font-size: 19px; color: var(--gl-navy); }
body.type-detail .gl-related-files #relatedFiles { display: grid !important; gap: 8px; margin: 0; padding: 0; opacity: 1; visibility: visible; list-style: none; }
body.type-detail .gl-related-files #relatedFiles > li { display: flex; align-items: center; gap: 10px; padding: 12px 14px; margin: 0; border: 1px solid #e2e7ef; border-radius: 9px; background: #f8fafc; }
body.type-detail .gl-related-files #relatedFiles a { color: var(--gl-navy); font-size: 13px; overflow-wrap: anywhere; }
body.type-detail .gl-related-files #relatedFiles img { flex: 0 0 16px; margin: 0; }
@media(max-width: 767px) {
  body.type-detail #description .gl-parameters th,
  body.type-detail #description .gl-parameters td { padding: 10px 12px; font-size: 12px; }
}
.gl-detail-summary { min-width: 0; }
.gl-detail-summary .p-detail-inner-header { margin: 0 0 12px; }
.gl-detail-summary .p-detail-inner-header h1 { display: block; margin: 0 0 8px; font-size: clamp(24px, 2.2vw, 32px); line-height: 1.25; font-weight: 600; color: var(--gl-navy); }
.gl-detail-summary .p-code { display: none; }
.gl-detail-summary .p-detail-info > :not(.stars-wrapper) { display: none; }
.gl-detail-summary .p-detail-info .js-ratingDialogTrigger { position: absolute; inset: 0; width: 100%; height: 100%; opacity: 0; padding: 0; margin: 0; cursor: pointer; }
.gl-detail-summary .p-detail-info .stars-wrapper { position: relative; min-height: 32px; }
.gl-detail-summary .p-detail-info .stars-wrapper:focus-within { outline: 2px solid var(--gl-teal); outline-offset: 3px; border-radius: 4px; }
.gl-detail-summary .p-detail-info { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 16px; margin: 0 0 8px; padding: 0; font-size: 12px; }
.gl-detail-summary .p-detail-info .stars-wrapper { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; margin: 0; }
.gl-detail-summary .p-detail-info .star { color: #d99b24; }
.gl-detail-summary .p-detail-info .star-off { color: #dce2eb; }
.gl-detail-benefits { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 10px; padding: 6px 0; margin: 0 0 10px; border: 0; }
.gl-detail-benefits:empty { display: none; }
.gl-detail-benefits > div { display: flex; flex-direction: column; align-items: center; text-align: center; gap: 6px; font-size: 12px; line-height: 1.35; font-weight: 500; color: var(--gl-navy); }
.gl-detail-benefits svg { width: 48px; height: 48px; flex: 0 0 48px; color: var(--gl-teal); }
@media(min-width: 992px) {
  body.type-detail .gl-detail-summary-layout > form { grid-column: 1; grid-row: 1; }
  body.type-detail .gl-detail-summary-layout > .gl-detail-summary { grid-column: 2; grid-row: 1; }
}
@media(max-width: 991px) {
  body.type-detail .gl-detail-summary-layout { row-gap: 12px; }
  body.type-detail .gl-detail-summary-layout > .gl-detail-summary { display: contents; }
  body.type-detail .gl-detail-summary-layout .p-detail-inner-header { grid-row: 1; margin-bottom: 0; }
  body.type-detail .gl-detail-summary-layout .p-detail-info { grid-row: 2; margin-bottom: 0; }
  body.type-detail .gl-detail-summary-layout > form { grid-row: 3; }
  body.type-detail .gl-detail-summary-layout .gl-detail-benefits { grid-row: 4; margin-bottom: 0; }
  body.type-detail .gl-detail-summary-layout #variants { grid-row: 5; }
}
body.gl-classic .breadcrumbs-wrapper { display: block; }
body.gl-classic .breadcrumbs {
  display: flex; flex-wrap: wrap; align-items: center; gap: 0;
  margin: 16px 0 20px; padding: 0; min-height: 36px;
  background: transparent; border: 0; box-shadow: none;
  font-family: var(--gl-font); font-size: 13px; line-height: 1.6;
  color: #68748a;
}
body.gl-classic .breadcrumbs > span {
  display: inline-flex; align-items: center; float: none;
  margin: 0; padding: 0; min-width: 0; border: 0; background: none;
}
body.gl-classic .breadcrumbs a {
  display: inline-flex; align-items: center; min-height: 36px;
  margin: 0; padding: 4px 6px; border: 0; border-radius: 7px;
  background: transparent; color: var(--gl-navy); font-size: inherit;
  font-weight: 500; text-decoration: none;
}
body.gl-classic .breadcrumbs a:hover { color: #127b75; background: #edf7f6; }
body.gl-classic .breadcrumbs a::after { content: none; display: none; }
body.gl-classic .breadcrumbs a:not(.navigation-home-icon)::before { content: none; display: none; }
body.gl-classic .breadcrumbs a:focus-visible { outline: 2px solid #1aa89a; outline-offset: 2px; }
body.gl-classic .breadcrumbs .navigation-home-icon { width: 36px; justify-content: center; }
body.gl-classic .breadcrumbs .navigation-home-icon::before {
  content: ''; display: block; position: static; width: 17px; height: 17px;
  margin: 0; background: currentColor; transform: none; box-shadow: none; border: 0;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M3 10.5 12 3l9 7.5M5.5 9v11h5v-6h3v6h5V9' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M3 10.5 12 3l9 7.5M5.5 9v11h5v-6h3v6h5V9' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
}
body.gl-classic .breadcrumbs .navigation-bullet {
  display: inline-flex; align-items: center; justify-content: center;
  width: 22px; height: 24px; flex: 0 0 22px; margin: 0; padding: 0;
  font-size: 0; background: none; border: 0;
}
body.gl-classic .breadcrumbs .navigation-bullet::before {
  content: ''; display: block; width: 5px; height: 5px;
  border: solid #a0aabb; border-width: 1.5px 1.5px 0 0; transform: rotate(45deg);
}
body.gl-classic .breadcrumbs .navigation-bullet::after { content: none; }
body.gl-classic .breadcrumbs > span:last-child > span[itemprop="name"] { padding: 4px 6px; font-weight: 400; }
@media (max-width: 767px) {
  body.gl-classic .breadcrumbs { flex-wrap: nowrap; overflow-x: auto; margin: 8px 0 12px; padding: 2px; font-size: 12px; scrollbar-width: thin; }
  body.gl-classic .breadcrumbs > span { flex: 0 0 auto; white-space: nowrap; }
  body.gl-classic .breadcrumbs a { min-height: 40px; }
  body.gl-classic .breadcrumbs .navigation-bullet { width: 17px; flex-basis: 17px; }
}
@media (max-width: 767px) {
  .gl-category-filters { gap: 13px; padding: 12px; }
  .gl-filter-group { gap: 6px; width: 100%; }
  .gl-filter-group > strong { width: 100%; margin: 0 0 2px; }
  .gl-filter-chip { min-height: 44px; padding: 9px 11px; }
}

/* Compact, readable description pilot: Magenta nitrile gloves. */
body.type-detail #description.gl-compact-description .description-inner { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 28px; }
body.type-detail #description.gl-compact-description .basic-description,
body.type-detail #description.gl-compact-description .extended-description { width: auto; min-width: 0; padding: 0; margin: 0; float: none; }
body.type-detail #description.gl-compact-description { font-family: Inter, sans-serif; font-size: 16px; line-height: 1.6; color: #35425a; }
body.type-detail #description.gl-compact-description .basic-description span { font-family: inherit !important; font-size: inherit !important; }
body.type-detail #description.gl-compact-description h3 { margin: 0 0 14px; font-size: 21px; font-weight: 600; color: var(--gl-navy); }
body.type-detail #description.gl-compact-description p { margin: 0 0 18px; }
body.type-detail #description.gl-compact-description .gl-parameters th,
body.type-detail #description.gl-compact-description .gl-parameters td { font-size: 16px; line-height: 1.4; padding: 9px 14px; }
body.type-detail #description.gl-compact-description .gl-parameters th { width: 48%; }
.gl-product-standards { border: 1px solid #e2e7ef; border-radius: 12px; background: #f8fafc; margin: 18px 0 0; }
.gl-product-standards summary { cursor: pointer; padding: 14px 16px; font-weight: 600; color: var(--gl-navy); }
.gl-product-standards summary:focus-visible { outline: 2px solid #16b9ad; outline-offset: 3px; border-radius: 10px; }
.gl-product-standards ul { margin: 0; padding: 0 20px 16px 36px; }
.gl-product-standards li { margin: 0 0 8px; }
body.type-detail #description.gl-compact-description .gl-related-files { margin-top: 18px; }
@media (max-width: 767px) {
  body.type-detail #description.gl-compact-description .description-inner { grid-template-columns: minmax(0, 1fr); gap: 22px; }
  body.type-detail #description.gl-compact-description .gl-parameters th,
  body.type-detail #description.gl-compact-description .gl-parameters td { padding: 9px 10px; }
}
