.elementor-303 .elementor-element.elementor-element-18ba5e8f{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:stretch;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-303 .elementor-element.elementor-element-55ceacc{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:16px 16px;--row-gap:16px;--column-gap:16px;--flex-wrap:wrap;}.elementor-303 .elementor-element.elementor-element-7f5a7159{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:stretch;--gap:80px 80px;--row-gap:80px;--column-gap:80px;--padding-top:1%;--padding-bottom:0%;--padding-left:0.5%;--padding-right:0.5%;}.elementor-303 .elementor-element.elementor-element-41bd643e.elementor-wc-products ul.products li.product{text-align:left;}.elementor-303 .elementor-element.elementor-element-41bd643e.elementor-wc-products  ul.products{grid-column-gap:10px;grid-row-gap:140px;}.elementor-303 .elementor-element.elementor-element-41bd643e.elementor-wc-products .attachment-woocommerce_thumbnail{margin-bottom:35px;}.elementor-303 .elementor-element.elementor-element-41bd643e.elementor-wc-products ul.products li.product .woocommerce-loop-product__title{color:#1C1C1C;margin-bottom:3px;}.elementor-303 .elementor-element.elementor-element-41bd643e.elementor-wc-products ul.products li.product .woocommerce-loop-category__title{color:#1C1C1C;margin-bottom:3px;}.elementor-303 .elementor-element.elementor-element-41bd643e.elementor-wc-products ul.products li.product .woocommerce-loop-product__title, .elementor-303 .elementor-element.elementor-element-41bd643e.elementor-wc-products ul.products li.product .woocommerce-loop-category__title{font-family:"Bebas Neue", Sans-serif;font-size:30px;font-weight:400;text-transform:uppercase;font-style:normal;text-decoration:none;line-height:1.05em;letter-spacing:-0.01px;}.elementor-303 .elementor-element.elementor-element-41bd643e.elementor-wc-products ul.products li.product .price{color:#111111;font-family:"Poppins", Sans-serif;font-size:16px;font-weight:300;text-transform:none;font-style:normal;text-decoration:none;line-height:1.5em;letter-spacing:0px;}.elementor-303 .elementor-element.elementor-element-41bd643e.elementor-wc-products ul.products li.product .price ins{color:#111111;}.elementor-303 .elementor-element.elementor-element-41bd643e.elementor-wc-products ul.products li.product .price ins .amount{color:#111111;}.elementor-303 .elementor-element.elementor-element-41bd643e.elementor-wc-products ul.products li.product .price del{color:#1C244B;}.elementor-303 .elementor-element.elementor-element-41bd643e.elementor-wc-products ul.products li.product .price del .amount{color:#1C244B;}.elementor-303 .elementor-element.elementor-element-41bd643e.elementor-wc-products ul.products li.product .price del {font-family:"Poppins", Sans-serif;font-size:16px;font-weight:300;text-transform:none;font-style:normal;text-decoration:line-through;line-height:1.5em;letter-spacing:0px;word-spacing:0em;}.elementor-303 .elementor-element.elementor-element-41bd643e.elementor-wc-products ul.products li.product .button{color:#1C244B;background-color:#02010100;font-family:"Poppins", Sans-serif;font-size:16px;font-weight:500;text-transform:capitalize;font-style:italic;text-decoration:underline;line-height:1em;letter-spacing:0px;padding:10px 0px 0px 0px;margin-top:0px;}.elementor-303 .elementor-element.elementor-element-41bd643e.elementor-wc-products ul.products li.product .button:hover{color:#467FF7;}.elementor-303 .elementor-element.elementor-element-41bd643e.elementor-wc-products .added_to_cart{color:#1C244B;}.elementor-303 .elementor-element.elementor-element-41bd643e.elementor-wc-products ul.products li.product span.onsale{display:block;color:#FFFFFF;background-color:#467FF7;font-family:"Poppins", Sans-serif;font-size:16px;font-weight:500;text-transform:capitalize;font-style:normal;text-decoration:none;line-height:30px;letter-spacing:0px;border-radius:0px;min-width:80px;min-height:30px;right:auto;left:0;margin:0px;}body.elementor-page-303{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}@media(min-width:768px){.elementor-303 .elementor-element.elementor-element-55ceacc{--content-width:1800px;}.elementor-303 .elementor-element.elementor-element-7f5a7159{--content-width:100%;}}@media(max-width:1024px){.elementor-303 .elementor-element.elementor-element-55ceacc{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-303 .elementor-element.elementor-element-7f5a7159{--gap:50px 50px;--row-gap:50px;--column-gap:50px;--margin-top:0%;--margin-bottom:0%;--margin-left:0%;--margin-right:0%;--padding-top:1%;--padding-bottom:0%;--padding-left:0.5%;--padding-right:0.5%;}.elementor-303 .elementor-element.elementor-element-41bd643e.elementor-element{--align-self:flex-start;}.elementor-303 .elementor-element.elementor-element-41bd643e.elementor-wc-products  ul.products{grid-column-gap:20px;grid-row-gap:40px;}.elementor-303 .elementor-element.elementor-element-41bd643e.elementor-wc-products ul.products li.product .woocommerce-loop-product__title, .elementor-303 .elementor-element.elementor-element-41bd643e.elementor-wc-products ul.products li.product .woocommerce-loop-category__title{font-size:2.2vw;}.elementor-303 .elementor-element.elementor-element-41bd643e.elementor-wc-products ul.products li.product .price{font-size:14px;}.elementor-303 .elementor-element.elementor-element-41bd643e.elementor-wc-products ul.products li.product .button{font-size:14px;}.elementor-303 .elementor-element.elementor-element-41bd643e.elementor-wc-products ul.products li.product span.onsale{font-size:14px;line-height:2em;}}@media(max-width:767px){.elementor-303 .elementor-element.elementor-element-7f5a7159{--padding-top:30%;--padding-bottom:0%;--padding-left:6%;--padding-right:6%;}.elementor-303 .elementor-element.elementor-element-41bd643e.elementor-wc-products ul.products li.product{text-align:center;}.elementor-303 .elementor-element.elementor-element-41bd643e{width:100%;max-width:100%;}.elementor-303 .elementor-element.elementor-element-41bd643e.elementor-wc-products  ul.products{grid-column-gap:20px;grid-row-gap:70px;}.elementor-303 .elementor-element.elementor-element-41bd643e.elementor-wc-products .attachment-woocommerce_thumbnail{margin-bottom:30px;}.elementor-303 .elementor-element.elementor-element-41bd643e.elementor-wc-products ul.products li.product .woocommerce-loop-product__title, .elementor-303 .elementor-element.elementor-element-41bd643e.elementor-wc-products ul.products li.product .woocommerce-loop-category__title{font-size:18px;}}/* Start custom CSS for html, class: .elementor-element-4ad04d6f *//* ==========================================================
   GYMRILLA — Category Strip (self-contained styles)
   Scope: #grx-cats-1
   ========================================================== */

/* ---------- CONFIG ---------- */
#grx-cats-1{
  /* counts & sizing */
  --cards-desktop: 3;      /* visible cards on desktop */
  --cards-tablet: 2.1;     /* ~2 with a peek */
  --cards-mobile: 1.12;    /* 1 with a peek */
  --gap: 24px;             /* space between cards */
  --edge: 32px;            /* left/right track padding */
  --card-max: 560px;       /* cap per-card width on desktop */

  /* imagery */
  --ratio: 4/5;            /* tall editorial crop */
  --radius: 0px;           /* flat corners */
  --shadow: 0 24px 64px rgba(0,0,0,.10);
  --shadow-hover: 0 32px 84px rgba(0,0,0,.16);

  /* type */
  --title-size: clamp(22px, 1.1vw + 16px, 30px);
  --title-track: 0.2px;    /* tighter for luxury */
  --desc-size: clamp(16px, 0.3vw + 15px, 18px);
  --text: #111;
  --muted: #3f3f46;

  /* internal spacing */
  --inner-gap: 8px;        /* spacing between image, title, text */
}

/* ---------- LAYOUT ---------- */
#grx-cats-1{ position: relative; width: 100%; }
#grx-cats-1 .grx-track{
  display: flex; flex-wrap: nowrap; align-items: stretch;
  gap: var(--gap);
  padding-left: var(--edge); padding-right: var(--edge);
  overflow-x: auto; overflow-y: hidden;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
  cursor: grab;
}
/* hide scrollbar (you want swipe without a bar) */
#grx-cats-1 .grx-track{ scrollbar-width: none; }
#grx-cats-1 .grx-track::-webkit-scrollbar{ display: none; }

/* soft edge fades to hint "swipe" (adjust color if page bg ≠ white) */
#grx-cats-1::before,
#grx-cats-1::after{
  content:""; position:absolute; top:0; bottom:0; width:44px;
  pointer-events:none; z-index:40;
}
#grx-cats-1::before{
  left:0;
  background: linear-gradient(to right, rgba(255,255,255,1), rgba(255,255,255,0));
}
#grx-cats-1::after{
  right:0;
  background: linear-gradient(to left, rgba(255,255,255,1), rgba(255,255,255,0));
}

/* ---------- CARDS ---------- */
/* Desktop: 3 big cards (or capped by --card-max) */
#grx-cats-1 .grx-card{
  scroll-snap-align: start;
  display: flex; flex-direction: column; align-items: flex-start;
  gap: var(--inner-gap); text-align: left;
  color: inherit; text-decoration: none; background: transparent; border: 0;

  flex: 0 0 calc( min(var(--card-max),
                calc((100% - (var(--gap) * (var(--cards-desktop) - 1))) / var(--cards-desktop))) );
  max-width: calc( min(var(--card-max),
                calc((100% - (var(--gap) * (var(--cards-desktop) - 1))) / var(--cards-desktop))) );
}
#grx-cats-1 .grx-card:focus-visible{ outline: 2px solid #000; outline-offset: 2px; }

/* Tablet: ~2 visible + peek */
@media (max-width:1024px){
  #grx-cats-1{ --gap: 22px; --edge: 22px; --card-max: 520px; --inner-gap: 6px; }
  #grx-cats-1 .grx-card{
    flex-basis: calc( (100% - var(--gap)) / var(--cards-tablet) );
    max-width:  calc( (100% - var(--gap)) / var(--cards-tablet) );
  }
}

/* Mobile: 1 large + peek */
@media (max-width:767px){
  #grx-cats-1{ --gap: 18px; --edge: 16px; --card-max: 380px; }
  #grx-cats-1 .grx-card{ flex-basis: 85%; max-width: 85%; }
}

/* ---------- IMAGE ---------- */
#grx-cats-1 .grx-media{ margin: 0; width: 100%; }
#grx-cats-1 .grx-media img{
  display: block; width: 100%; height: auto;
  aspect-ratio: var(--ratio); object-fit: cover;
  border-radius: var(--radius);
  box-shadow: var(--shadow);
  transition: transform .2s ease, box-shadow .2s ease;
}
@media (hover:hover){
  #grx-cats-1 .grx-card:hover .grx-media img{
    transform: translateY(-1px) scale(1.005);
    box-shadow: var(--shadow-hover);
  }
}

/* ---------- TEXT ---------- */
#grx-cats-1 .grx-title{
  margin: 4px 0 2px 0;
  padding-inline: 8px;                      /* small inset from edge */
  font-family: "Bebas Neue", sans-serif;
  font-size: var(--title-size);
  letter-spacing: var(--title-track);
  line-height: 1.04; color: var(--text);
  text-align: left;
}
#grx-cats-1 .grx-desc{
  margin: 0;
  padding-inline: 8px;                      /* small inset from edge */
  font-size: var(--desc-size);
  line-height: 1.5; color: var(--muted);
  max-width: 54ch; text-align: left;
}

/* ---------- ARROWS (desktop only) ---------- */
#grx-cats-1 .grx-nav{
  position: absolute; top: 50%; transform: translateY(-50%);
  z-index: 50;
  width: 46px; height: 46px; display: grid; place-items: center;
  color: #fff; background: rgba(17,17,17,.96); /* visible on light bg */
  border: 0; border-radius: 999px;
  box-shadow: 0 10px 24px rgba(0,0,0,.18);
  cursor: pointer; user-select: none;
}
#grx-cats-1 .grx-prev{ left: 10px; }
#grx-cats-1 .grx-next{ right: 10px; }
#grx-cats-1 .grx-nav:hover{ transform: translateY(-50%) scale(1.06); }
@media (max-width:1024px){ #grx-cats-1 .grx-nav{ display: none; } }

/* ---------- Motion preference ---------- */
@media (prefers-reduced-motion: reduce){
  #grx-cats-1 .grx-media img,
  #grx-cats-1 .grx-nav{ transition: none !important; }
}
#grx-cats-1::before,
#grx-cats-1::after{
  content:none !important;
  display:none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-55ceacc *//* ===== Archive header: 2-up layout ===== */
.gr-arch{
  display:flex; flex-direction:row; flex-wrap:wrap;
  align-items:flex-start; justify-content:space-between;
  gap:20px;
  padding-block:24px;
}

/* Left: title (refined size) */
.gr-arch-title{
  font-size: clamp(28px, 3.5vw, 56px) !important; /* Desktop max = 56px */
  line-height: 1.05;
  letter-spacing: -0.01em;
  text-transform: uppercase;

  max-width: 18ch;          /* keeps long titles tidy */
  overflow-wrap:anywhere;
  white-space: normal;
  text-wrap: balance;

  flex:0 1 auto;
  margin:0;
}

/* Right: description */
.gr-arch-desc{
  flex:1 1 0;
  max-width:70ch;
  font-size:18px;
  line-height:1.65;
  margin:0;
}

/* Reset Elementor default margins */
.gr-arch .elementor-widget-heading,
.gr-arch .elementor-widget-text-editor{ margin:0; }

/* Tablet */
@media (max-width:1024px){
  .gr-arch{ flex-direction:column; gap:16px; padding-block:20px; }
  .gr-arch-title{
    font-size: clamp(24px, 4vw, 42px) !important; /* Max ~42px */
    line-height:1.1;
    max-width:20ch;
  }
  .gr-arch-desc{ max-width:72ch; }
}

/* Mobile */
@media (max-width:767px){
  .gr-arch{ gap:12px; padding-block:16px; }
  .gr-arch-title{
    font-size: clamp(22px, 5vw, 32px) !important; /* Max ~32px */
    line-height:1.15;
    max-width:22ch;
  }
  .gr-arch-desc{ font-size:16px; line-height:1.6; }
}

@media (min-width:1025px){
  .gr-arch-title{
    align-self: center;
    margin-top: 3px;           /* adjust 2–6px as needed */
  }
}/* End custom CSS */