/* ==========================================================================
   UGLOW Sport — Elite Landing (2026)
   Brand: Lato · flat · 0 radius · Signal #0E8FCC accent · 220ms
   Headline system: Lato 900 italic, Signal blue italic accent word
   Mobile-first 375 / 768 / 1024 / 1440
   ========================================================================== */

/* ---------- 1. TOKENS ---------- */
:root{
  /* Brand primaries */
  --ugs-signal:   #0E8FCC;
  --ugs-icemist:  #F5F7FA;
  --ugs-graphite: #2A2A28;
  /* Soft editorial near-black — replaces flat #000 / #0A0A0A on banners + headings.
     Reads warmer next to Signal blue and avoids the harsh "PowerPoint black" look. */
  --ugs-ink:     #000 /*#1B1F24*/;

  /* Secondary palette */
  --ugs-glacier:   #E6F1F9;
  --ugs-electric:  #00B5E8;
  --ugs-deep:      #0A5A85;
  --ugs-abyss:     #072B47;
  --ugs-anchor:    #0070CC;
  --ugs-softcloud: #F0F2F5;
  --ugs-smoke:     #D8DCE4;
  --ugs-ash:       #8F8A7E;
  --ugs-paper:     #FAFAF9;

  /* Semantic */
  --c-bg:          var(--ugs-paper);
  --c-surface:     #FFFFFF;
  --c-surface-alt: var(--ugs-icemist);
  --c-fg:          var(--ugs-graphite);
  --c-fg-strong:   var(--ugs-ink);
  --c-muted:       var(--ugs-ash);
  --c-border:      var(--ugs-smoke);
  --c-accent:      var(--ugs-signal);
  --c-cta:         var(--ugs-ink);
  --c-on-cta:      #FFFFFF;


/* Font declaration */

/* Lato font 

@font-face {
    font-family: 'latobold';
    src: url('https://www.uglowsport.com/wp-content/themes/uglow/font/lato/lato-bold-webfont.woff2') format('woff2'),
         url('https://www.uglowsport.com/wp-content/themes/uglow/font/lato/lato-bold-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'latolight';
    src: url('https://www.uglowsport.com/wp-content/themes/uglow/font/lato/lato-light-webfont.woff2') format('woff2'),
         url('https://www.uglowsport.com/wp-content/themes/uglow/font/lato/lato-light-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'latoregular';
    src: url('https://www.uglowsport.com/wp-content/themes/uglow/font/lato/lato-regular-webfont.woff2') format('woff2'),
         url('https://www.uglowsport.com/wp-content/themes/uglow/font/lato/lato-regular-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}*/

  /* Scale — anchored to U·GLOW Brand Guidelines V3:
     H3 = 36/1.1/700 is the brand reference; we treat that as our H1.
     Everything else cascades down, symmetrical, weight 600/700, never 900. */
  --fs-eyebrow: 11px;
  --fs-body:    16px;
  --fs-lead:    17px;
  --fs-h3:      clamp(16px, .25vw + 14px, 18px);   /* sub-section */
  --fs-h2:      clamp(20px, .6vw + 16px, 24px);    /* section subhead */
  --fs-h1:      clamp(28px, 1.1vw + 20px, 36px);   /* brand reference */
  --fs-display: clamp(34px, 2.2vw + 18px, 52px);   /* hero only */
  --lh-tight:   1.1;
  --lh-normal:  1.5;

  /* Spacing (8pt rhythm) */
  --s-1:  4px;  --s-2:  8px;  --s-3: 12px; --s-4: 16px;
  --s-5: 24px; --s-6: 32px;  --s-7: 48px; --s-8: 64px;
  --s-9: 96px; --s-10: 128px;

  /* Layout */
  --container: 1440px;
  --gutter-d: 40px;
  --gutter-m: 24px;
  --h-topbar: 36px;
  --h-header: 76px;

  /* Motion */
  --ease-out: cubic-bezier(.22,.61,.36,1);
  --ease-in:  cubic-bezier(.55,.06,.68,.19);
  --t-fast:   160ms;
  --t-base:   220ms;
  --t-slow:   400ms;

  /* Layers */
  --z-header:   60;
  --z-drawer:   90;
  --z-search:   95;
  --z-minicart: 75;
}
@media (min-width: 1024px){
  :root{ --h-header: 96px; }
}

/* ---------- 2. RESET (scoped) ---------- */
body.ugs-2026-lp,
body.ugs-2026-lp *,
body.ugs-2026-lp *::before,
body.ugs-2026-lp *::after { box-sizing: border-box; }
a {
    outline: none !important;
}

.ugs-drawer__sublist li:hover a{
    padding-left: 10px;
}
.ugs-drawer__list li:hover a {
    text-indent: 20px;
}
.ugs-drawer__sublist li a,
.ugs-drawer__list li button,
.ugs-drawer__list li a {
    transition: all 1s ease-in-out;
}
.ugs-drawer__list li:hover button {
    text-indent: 20px;
}

.ugc-page-wrap header.ugc-hero p.ugc-hero-sub {
    margin: 20px auto;
}

body.ugs-2026-lp{
  margin: 0; padding: 0;
  background: var(--c-bg); color: var(--c-fg);
  font-family: "Lato", sans-serif;
  font-size: var(--fs-body);
  line-height: 1.65;
  font-weight: 400;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  overflow-x: hidden;
}

.ugs-2026-lp a{ color: inherit; text-decoration: none; transition: color var(--t-base) var(--ease-out), opacity var(--t-base) var(--ease-out); }
.ugs-2026-lp a:hover{ color: var(--c-fg-strong); }
.ugs-2026-lp img{ max-width: 100%; height: auto; display: block; }
.ugs-2026-lp button {
    cursor: pointer;
    font-family: inherit;
    border: 0;
    background: transparent;
    color: inherit;
    padding: 0;
    font-size: 16px;
}
section.ugs-prods .ugs-carousel__arrows button.ugs-carousel__arrow {
    background: rgba(0, 0, 0, .1);
}
.ugs-hero__meta button.ugs-hero__nav {
    background: rgba(0, 0, 0, .5);
}
.ugs-2026-lp h1,.ugs-2026-lp h2,.ugs-2026-lp h3,.ugs-2026-lp h4,.ugs-2026-lp h5,.ugs-2026-lp h6{ margin:0; color: var(--c-fg-strong); letter-spacing: -.02em; }
.ugs-2026-lp p {
    margin: 20px 0 var(--s-4);
    max-width: 60ch;
}
.ugs-2026-lp ul{ list-style: none; margin: 0; padding: 0; }

.ugs-sr-only{ position:absolute !important; width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0; }
.ugs-skip-link{ position:absolute; left:-9999px; top:8px; background:var(--c-fg-strong); color:#fff; padding:8px 12px; z-index: 9999; }
.ugs-skip-link:focus{ left:8px; }

.ugs-2026-lp a:focus-visible,
.ugs-2026-lp button:focus-visible,
.ugs-2026-lp input:focus-visible{
  outline: 2px solid var(--c-accent);
  outline-offset: 3px;
}

/* ---------- 3. UTILITIES ---------- */
.ugs-container{ width: 100%; max-width: var(--container); padding-left: var(--gutter-m); padding-right: var(--gutter-m); margin: 0 auto; }
@media (min-width: 1024px){ .ugs-container{ padding-left: var(--gutter-d); padding-right: var(--gutter-d); } }
.ugs-container--flush{ padding-left: 0; padding-right: 0; max-width: 100%; }

.ugs-hide-sm{ display: inline-flex !important; }
.ugs-hide-md{ display: inline-flex !important; }
@media (max-width: 640px){ .ugs-hide-sm{ display: none !important; } }
@media (max-width: 900px){ .ugs-hide-md{ display: none !important; } }

/* JetBrains Mono eyebrow */
.ugs-eyebrow {
    display: inline-block;
    font-family: "Lato", sans-serif;
    font-size: var(--fs-eyebrow);
    font-weight: 500;
    letter-spacing: .22em;
    text-transform: uppercase;
    color: var(--c-muted);
    margin-bottom: var(--s-3);
}
.ugs-eyebrow em{ font-style: normal; color: var(--c-accent); }
.ugs-eyebrow--on-dark{ color: rgba(255,255,255,.7); }
.ugs-eyebrow--on-dark em{ color: #fff; }
.ugs-eyebrow--num{ color: var(--c-fg-strong); }
.ugs-eyebrow--num::before{ content: "0"; }

/* --- Brand headline system — Lato 700 (per U·GLOW Brand Guidelines V3) ---
   H1 36/1.1/700 is the anchor. H2 / H3 cascade down at the same weight. */
.ugs-h1{
  font-family: "Lato", sans-serif;
  font-size: var(--fs-h1);
  font-weight: 700;
  line-height: var(--lh-tight);
  letter-spacing: -.018em;
  color: var(--c-fg-strong);
}
.ugs-h2 {
    font-family: "Lato", sans-serif;
    font-size: var(--fs-h2);
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: -.012em;
    color: var(--c-fg-strong);
}
.ugs-h3{
  font-family:"Lato", sans-serif;
  font-size: var(--fs-h3);
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: -.008em;
  color: var(--c-fg-strong);
}
/* italic emphasis inside headings — same weight, never bumped */
.ugs-h1 em, .ugs-h2 em, .ugs-h3 em{
  font-style: italic;
  font-weight: 700;
  color: inherit;
}
/* opt-in: brand-book Signal blue accent — use sparingly */
.ugs-h--signal em {
    font-style: italic;
    font-weight: 700 !important;
    color: var(--c-accent);
    background: #fff;
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    font-family: "Lato", sans-serif;
}

/* Section head layout (Prada/brand-book pattern with mono sidebar) */
.ugs-section-head{ margin-bottom: var(--s-7); max-width: 1000px; }
.ugs-section-head--center{ margin-left: auto; margin-right: auto; text-align: center; }
.ugs-section-head--row{ display: flex; justify-content: space-between; align-items: flex-end; gap: var(--s-6); flex-wrap: wrap; max-width: 100%; }
.ugs-section-head__aside{ display: flex; gap: var(--s-5); align-items: center; }
.ugs-section-head__desc{ color: var(--c-fg); max-width: 56ch; margin-top: var(--s-4); font-size: 17px; line-height: 1.6; }
.ugs-section-head__num{ font-family: "Lato", sans-serif; font-size: 11px; letter-spacing: .22em; text-transform: uppercase; color: var(--c-muted); display: block; margin-bottom: var(--s-5); }
.ugs-section-head__num em{ color: var(--c-accent); font-style: normal; }

.ugs-link-arrow {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-family: "Lato", sans-serif;
    font-weight: 600;
    letter-spacing: .02em;
    font-size: 14px;
    border-bottom: 1px solid currentColor;
    padding-bottom: 2px;
    transition: gap var(--t-base) var(--ease-out), color var(--t-base) var(--ease-out);
}
.ugs-link-arrow:hover{ gap: 16px; color: var(--c-fg-strong); }
.ugs-link-arrow--accent{ color: var(--c-accent); }

/* ----------------------------------------------------------------------------
   BUTTONS — single canonical CTA system
   One height, one padding, one weight, one transition.
   Variants only swap COLOR. Never size, never weight.
   --------------------------------------------------------------------------- */
.ugs-btn{
  display: inline-flex; align-items: center; justify-content: center; gap: 10px;
  height: 46px;
  padding: 0 24px;
  font-family: "Lato", sans-serif;
  font-weight: 600;
  font-size: 13px;
  letter-spacing: .06em;
  text-transform: uppercase;
  border: 1px solid var(--c-fg-strong);
  background: var(--c-fg-strong);
  color: #fff !important;
  border-radius: 0;
  cursor: pointer;
  white-space: nowrap;
  transition:
    background var(--t-base) var(--ease-out),
    color      var(--t-base) var(--ease-out),
    border-color var(--t-base) var(--ease-out),
    transform  var(--t-fast) var(--ease-out);
}
.ugs-btn *{ color: inherit; }
.ugs-btn:hover{ background: #fff; color: var(--c-fg-strong) !important; border-color: var(--c-fg-strong); }
.ugs-btn:active{ transform: translateY(1px); }

/* Solid (default) — alias of base */
.ugs-btn--solid{ background: var(--c-fg-strong); color: #fff !important; border-color: var(--c-fg-strong); }
.ugs-btn--solid:hover{ background: #fff; color: var(--c-fg-strong) !important; }

/* Ghost — outlined, used over imagery / dark backgrounds */
.ugs-btn--ghost{ background: transparent; color: #fff !important; border-color: rgba(255,255,255,.7); }
.ugs-btn--ghost:hover{ background: #fff; color: var(--c-fg-strong) !important; border-color: #fff; }

/* Accent — Signal blue, on-brand */
.ugs-btn--accent{ background: var(--c-accent); color: #fff !important; border-color: var(--c-accent); }
.ugs-btn--accent:hover{ background: transparent; color: var(--c-accent) !important; border-color: var(--c-accent); }

/* Inverse — used inside dark sections where a solid white CTA reads better */
.ugs-btn--inverse{ background: #fff; color: var(--c-fg-strong) !important; border-color: #fff; }
.ugs-btn--inverse:hover{ background: transparent; color: #fff !important; border-color: #fff; }

/* Sizes — strictly height, never weight or font-size dramatic shift */
.ugs-btn--lg{ height: 52px; padding: 0 30px; font-size: 13.5px; }
.ugs-btn--sm{ height: 38px; padding: 0 18px; font-size: 12px; }

/* ---------- 4. TOPBAR ---------- */
.ugs-topbar{
  position: fixed; top: 0; left: 0; right: 0;
  z-index: calc(var(--z-header) + 1);
  background: rgba(27,31,36,.92);
  -webkit-backdrop-filter: saturate(140%) blur(10px);
  backdrop-filter: saturate(140%) blur(10px);
  color: #F0F2F5;
  font-size: 12px;
  border-bottom: 1px solid rgba(255,255,255,.06);
  height: var(--h-topbar);
  display: flex; align-items: center;
  transition: transform var(--t-base) var(--ease-out),
              opacity var(--t-base) var(--ease-out);
  will-change: transform;
}
.ugs-topbar.is-hidden{ transform: translateY(-100%); }
.ugs-topbar__inner{
  width: 100%;
  max-width: var(--container);
  margin: 0 auto;
  padding: 0 var(--gutter-m);
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: var(--s-4);
}
@media (min-width: 1024px){ .ugs-topbar__inner{ padding-left: var(--gutter-d); padding-right: var(--gutter-d); } }
.ugs-topbar__tag{ font-family: "Lato", sans-serif; letter-spacing: .18em; text-transform: uppercase; color: rgba(255,255,255,.55); font-size: 11px; }
.ugs-topbar__ticker{ overflow: hidden; text-align: center; }
.ugs-ticker__track{
  display: inline-flex; gap: var(--s-7); align-items: center;
  animation: ugsTicker 40s linear infinite;
  white-space: nowrap;
}
.ugs-ticker__track li{ display: inline-flex; gap: var(--s-3); align-items: center; }
.ugs-ticker__track strong{ color: #fff; font-weight: 700; }
.ugs-flag{ font-size: 14px; line-height: 1; }
.ugs-dot{ width: 6px; height: 6px; background: var(--c-accent); display: inline-block; }
@keyframes ugsTicker{ from{transform:translateX(0);} to{transform:translateX(-50%);} }

.ugs-topbar__actions{ display: none; gap: var(--s-3); align-items: center; }
@media (min-width: 768px){ .ugs-topbar__actions{ display: inline-flex; } }
.ugs-topbar__link{ color: rgba(255,255,255,.78); font-weight: 600; letter-spacing: .02em; }
.ugs-topbar__link:hover{ color: #fff; }
.ugs-sep{ width: 1px; height: 12px; background: rgba(255,255,255,.2); }

@media (max-width: 767px){
  .ugs-topbar__inner{ grid-template-columns: 1fr; }
  .ugs-topbar__meta{ display: none; }
}

/* ---------- 5. HEADER ---------- */
.ugs-header{
  position: fixed; top: var(--h-topbar); left: 0; right: 0;
  z-index: var(--z-header);
  background: transparent;
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
  border-bottom: 1px solid transparent;
  transition: transform var(--t-base) var(--ease-out),
              background var(--t-base) var(--ease-out),
              box-shadow var(--t-base) var(--ease-out),
              border-color var(--t-base) var(--ease-out),
              top var(--t-base) var(--ease-out);
  will-change: transform, background;
}
/* Transparent glass mode — active while over the hero · fully see-through */
.ugs-header.is-over-hero {
    background: rgba(0, 0, 0, .2);
    border-bottom-color: transparent;
    color: #fff;
}
.ugs-header.is-over-hero .ugs-txtbtn,
.ugs-header.is-over-hero .ugs-iconbtn,
.ugs-header.is-over-hero a{ color: #fff; }
.ugs-header.is-over-hero .ugs-logo__img{ filter: brightness(0) invert(1) drop-shadow(0 1px 2px rgba(0,0,0,.25)); }
/* Past hero — solid white so content stays readable */
.ugs-header.is-scrolled{
  background: rgba(255,255,255,.94);
  -webkit-backdrop-filter: saturate(140%) blur(12px);
  backdrop-filter: saturate(140%) blur(12px);
  border-bottom-color: rgba(10,10,10,.06);
  box-shadow: 0 1px 0 0 rgba(10,10,10,.06);
}
/* When topbar is hidden, header slides up to cover its spot */
.ugs-topbar.is-hidden ~ .ugs-header,
.ugs-header.is-topbar-hidden{ top: 0; }
/* Hide header entirely (scrolling down past hero) */
.ugs-header.is-hidden{ transform: translateY(calc(-100% - var(--h-topbar) - 4px)); }

.ugs-header__inner{
  max-width: var(--container);
  margin: 0 auto;
  padding: 0 var(--gutter-m);
  height: var(--h-header);
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: var(--s-4);
}
@media (min-width: 1024px){ .ugs-header__inner{ padding: 0 var(--gutter-d); } }

.ugs-header__left{ display: flex; align-items: center; gap: var(--s-5); justify-content: flex-start; }
.ugs-header__right{ display: flex; align-items: center; gap: var(--s-4); justify-content: flex-end; }

.ugs-logo{ display: inline-flex; justify-self: center; align-items: center; line-height: 0; }
.ugs-logo__img{
  height: 40px !important;
  width: auto !important;
  max-width: 180px;
  max-height: 44px;
  display: block;
  object-fit: contain;
  transition: filter var(--t-base) var(--ease-out), height var(--t-base) var(--ease-out);
}
@media (min-width: 1024px){
  .ugs-logo__img{ height: 60px !important; max-height: 64px; max-width: 260px; }
}

/* Text buttons (Menu / Search / Contact) */
.ugs-txtbtn{
  display: inline-flex; align-items: center; gap: 10px;
  padding: 10px 0;
  font-family: "Lato", sans-serif; font-weight: 400; font-size: 15px;
  letter-spacing: 0; text-transform: none;
  color: var(--c-fg-strong);
  line-height: 1;
  position: relative;
  transition: opacity var(--t-base) var(--ease-out);
}
.ugs-txtbtn:hover{ opacity: .65; }
.ugs-txtbtn svg{ flex-shrink: 0; }
.ugs-txtbtn span{ display: inline-block; }

html:not(.dgwt-wcas-overlay-mobile-on) .ugs-search .dgwt-wcas-search-wrapp.dgwt-wcas-layout-icon .dgwt-wcas-search-form{
    opacity: 1;
    display: block;
    position: absolute;
    left: 0px !important;
    top: calc(100% + 8px);
    min-width: 100%;
    z-index: 1000;
}

html:not(.dgwt-wcas-overlay-mobile-on) .ugs-search .dgwt-wcas-search-wrapp.dgwt-wcas-layout-icon {
    max-width: 100%;
    width: 100%;
    background: #fff !important;
    float: left;
    height: auto;
}

.dgwt-wcas-open-pirx .dgwt-wcas-details-inner, .dgwt-wcas-open-pirx .dgwt-wcas-suggestions-wrapp>.dgwt-wcas-suggestion {
    max-height: 400px;
    overflow: hidden;
    overflow-y: auto;
}

.dgwt-wcas-style-pirx .dgwt-wcas-sf-wrapp {
    background: #fff;
    padding: 10px;
    border-radius: 10px;
}
@media (max-width: 640px){ .ugs-txtbtn span{ display: none; } .ugs-txtbtn{ gap: 0; } }
.ugs-txtbtn--label{ font-size: 14px; }

.ugs-iconbtn{
  width: 44px; height: 44px;
  display: inline-flex; align-items: center; justify-content: center;
  color: var(--c-fg-strong); position: relative;
  transition: opacity var(--t-base) var(--ease-out);
  background: transparent;
}
.ugs-iconbtn:hover{ opacity: .65; }

/* Cart + badge */
.ugs-cart{ position: relative; }
.ugs-cart__btn{ position: relative; }
.ugs-cart__badge{
  position: absolute; top: 4px; right: 4px;
  min-width: 18px; height: 18px; padding: 0 5px;
  background: var(--c-accent); color: #fff;
  font-family: "Lato", sans-serif; font-size: 10px; font-weight: 500;
  display: inline-flex; align-items: center; justify-content: center;
  border-radius: 999px;
  line-height: 1;
}
.ugs-cart__badge.is-empty{ display: none; }

/* ---------- 6. MINI-CART (click toggle, fixed WC styles) ---------- */
.ugs-minicart{
  position: absolute;
  top: calc(100% + 8px); right: 0;
  width: min(380px, calc(100vw - 48px));
  background: #fff;
  border: 1px solid var(--c-border);
  padding: 0;
  z-index: var(--z-minicart);
  opacity: 0; visibility: hidden; transform: translateY(-6px);
  transition: opacity var(--t-base) var(--ease-out), transform var(--t-base) var(--ease-out), visibility var(--t-base);
  box-shadow: 0 8px 32px -12px rgba(10,10,10,.18);
}
.ugs-cart.is-open .ugs-minicart{ opacity: 1; visibility: visible; transform: translateY(0); }
.ugs-minicart__head{
  display: flex; align-items: center; justify-content: space-between;
  padding: var(--s-4) var(--s-5);
  border-bottom: 1px solid var(--c-border);
}
.ugs-minicart__title{ font-family: "Lato", sans-serif; font-size: 11px; letter-spacing: .22em; text-transform: uppercase; color: var(--c-muted); }
.ugs-minicart__close{ font-size: 22px; color: var(--c-fg-strong); width: 32px; height: 32px; display: inline-flex; align-items: center; justify-content: center; background: transparent; }
.ugs-minicart__body {
    padding: 0 20px 20px;
    max-height: min(70vh, 560px);
    overflow-y: auto;
}

/* Woo mini cart overrides (scoped) */
.ugs-minicart .woocommerce-mini-cart{ margin: 0; padding: 0; list-style: none; }
.ugs-minicart .woocommerce-mini-cart__empty-message{ margin: 0; padding: var(--s-5) 0; text-align: center; font-size: 14px; color: var(--c-muted); }
.ugs-minicart .woocommerce-mini-cart-item,
.ugs-minicart .woocommerce-mini-cart-item, .ugs-minicart .mini_cart_item {
    display: flex;
    grid-template-columns: 64px 1fr auto;
    gap: var(--s-3);
    align-items: center;
    padding: 0;
    border-bottom: 1px solid var(--c-border);
    position: relative;
    list-style: none;
}
.ugs-minicart .woocommerce-mini-cart-item:last-child{ border-bottom: 0; }
.ugs-minicart .mini_cart_item img,
.ugs-minicart .mini_cart_item img, .ugs-minicart .woocommerce-mini-cart-item img {
    width: 50px;
    height: 80px;
    object-fit: cover;
    margin: 0 10px 0 0;
    float: left;
}
.ugs-minicart .mini_cart_item a:not(.remove):not(.remove_from_cart_button) {
    display: block;
    font-size: 12px;
    font-weight: 400;
    color: var(--c-fg-strong);
    line-height: 80px;
    text-decoration: none;
    width: auto;
    max-width: 200px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.ugs-minicart .mini_cart_item .quantity {
    display: block;
    font-family: "Lato", sans-serif;
    font-size: 12px;
    color: var(--c-muted);
    letter-spacing: .02em;
    margin-top: 0;
}
.ugs-minicart .mini_cart_item .amount{ color: var(--c-fg-strong); font-weight: 700; }
.ugs-minicart .remove,
.ugs-minicart .remove_from_cart_button{
  position: absolute !important;
  top: var(--s-4); right: 0;
  width: 24px !important; height: 24px !important;
  font-size: 0 !important; color: transparent !important; background: transparent !important;
  line-height: 1 !important;
  border: 0 !important;
  text-decoration: none !important;
  opacity: .6; transition: opacity var(--t-base);
}
.ugs-minicart .remove::before,
.ugs-minicart .remove_from_cart_button::before{
  content: "×"; font-size: 18px; font-family: "Lato", sans-serif; color: var(--c-fg-strong);
  position: absolute; inset: 0; display: flex; align-items: center; justify-content: center;
}
.ugs-minicart .remove:hover, .ugs-minicart .remove_from_cart_button:hover{ opacity: 1; }
.ugs-minicart .total,
.ugs-minicart .woocommerce-mini-cart__total{
  display: flex; justify-content: space-between; align-items: baseline;
  padding: var(--s-4) 0;
  margin: var(--s-3) 0 0;
  border-top: 1px solid var(--c-border);
  font-size: 14px;
}
.ugs-minicart .total strong,
.ugs-minicart .woocommerce-mini-cart__total strong{ font-family: "Lato", sans-serif; font-size: 11px; letter-spacing: .22em; text-transform: uppercase; color: var(--c-muted); font-weight: 500; }
.ugs-minicart .total .amount,
.ugs-minicart .woocommerce-mini-cart__total .amount{ font-size: 18px; font-weight: 700; color: var(--c-fg-strong); font-family: "Lato", sans-serif; }
.ugs-minicart .buttons,
.ugs-minicart .woocommerce-mini-cart__buttons{
  display: grid; grid-template-columns: 1fr 1fr; gap: var(--s-2);
  margin: 0; padding: 0;
}
.ugs-minicart .buttons a,
.ugs-minicart .woocommerce-mini-cart__buttons a{
  display: inline-flex; align-items: center; justify-content: center;
  padding: 13px 14px;
  font-family: "Lato", sans-serif; font-weight: 700; letter-spacing: .04em;
  font-size: 13px;
  border: 1px solid var(--c-fg-strong);
  background: transparent; color: var(--c-fg-strong);
  text-decoration: none;
  transition: background var(--t-base) var(--ease-out), color var(--t-base) var(--ease-out);
  margin: 0 !important;
  float: none !important;
}
.ugs-minicart .buttons a:hover,
.ugs-minicart .woocommerce-mini-cart__buttons a:hover{ background: var(--c-fg-strong); color: #fff; }
.ugs-minicart .buttons .checkout,
.ugs-minicart .woocommerce-mini-cart__buttons .checkout{
  background: var(--c-fg-strong); color: #fff;
}
.ugs-minicart .buttons .checkout:hover,
.ugs-minicart .woocommerce-mini-cart__buttons .checkout:hover{ background: var(--c-accent); border-color: var(--c-accent); color: #fff; }

/* ---------- 7. SEARCH OVERLAY ---------- */
.ugs-search{
  position: fixed; inset: 0;
  background: rgba(10,10,10,.72);
  backdrop-filter: blur(4px);
  z-index: var(--z-search);
  display: flex; align-items: flex-start; justify-content: center;
  padding: 10vh var(--s-6) var(--s-6);
}
.ugs-search[hidden]{ display: none; }
.ugs-search__inner {
    background: #fff;
    width: 100%;
    padding: var(--s-7);
    position: relative;
    height: auto;
    min-height: 240px;
}

.dgwt-wcas-open-pirx .dgwt-wcas-open .dgwt-wcas-suggestions-wrapp, .dgwt-wcas-open-pirx .dgwt-wcas-open.dgwt-wcas-nores .dgwt-wcas-suggestions-wrapp {
    border-top-left-radius: 20px !important;
    margin-top: -2px;
    margin-left: 17px;
    padding-top: 40px;
    border: 0px !important;
    z-index: 999999999 !important;
}

.dgwt-wcas-open-pirx-compact .dgwt-wcas-details-wrapp, .dgwt-wcas-open-pirx-compact .dgwt-wcas-suggestions-wrapp {
    margin-top: -20px;
    margin-right: 17px !important;
    position: relative;
    border-top-right-radius: 20px !important;
	padding-top: 40px;
	border:0;
}

.dgwt-wcas-pd-addtc .show_variation.less_inn {
    float: left;
    width: 100%;
}

.dgwt-wcas-pd-addtc .show_variation.less_inn button.variation-size-option {
    width: auto;
    max-width: 24px;
    border: 1px solid #ccc;
    float: left;
    margin: 0 10px 0 0;
    width: 24px;
    font-size: 12px;
    margin-top: 8px;
}

.dgwt-wcas-pd-addtc .show_variation.less_inn button.button.add_to_cart_button.size-add-to-cart {
    float: right;
}

button.ugs-search__close.js-ugs-search-close {
    font-size: 12px !important;
}

.ugs-search__close{ position: absolute; top: var(--s-4); right: var(--s-4); font-family: "Lato", sans-serif; font-size: 12px; letter-spacing: .18em; text-transform: uppercase; color: var(--c-muted); background: transparent; }

/* ---------- 8. DRAWER (Prada-style) ---------- */
.ugs-drawer{
  position: fixed; inset: 0 auto 0 0;
  width: 0; /* containing block only — panels are absolutely positioned inside */
  z-index: var(--z-drawer);
  background: transparent;
  pointer-events: none;
  transition: opacity var(--t-base) var(--ease-out);
}
.ugs-drawer__scrim{
  position: fixed; inset: 0;
  background: rgba(10,10,10,.45);
  opacity: 0; pointer-events: none;
  transition: opacity var(--t-base) var(--ease-out);
  z-index: calc(var(--z-drawer) - 1);
}
.ugs-drawer.is-open{ pointer-events: auto; }
.ugs-drawer__scrim.is-open{ opacity: 1; pointer-events: auto; }

.ugs-drawer__panel{
  position: absolute; top: 0; left: 0;
  width: min(440px, 100vw);
  height: 100vh;
  background: #fff;
  border-right: 1px solid var(--c-border);
  transform: translateX(-100%);
  transition: transform var(--t-slow) var(--ease-out);
  display: flex; flex-direction: column;
  pointer-events: auto;
  box-shadow: 0 0 0 0 rgba(0,0,0,0);
  will-change: transform;
}
.ugs-drawer__panel--lvl1{ z-index: 1; transition-delay: 0ms; }
.ugs-drawer__panel--lvl2{ z-index: 2; transition-delay: 0ms; }
.ugs-drawer__panel--lvl3{ z-index: 3; transition-delay: 0ms; }

.ugs-drawer.is-sub-open .ugs-drawer__panel--lvl2{ box-shadow: -8px 0 24px rgba(10,10,10,.04); }
.ugs-drawer.is-sub3-open .ugs-drawer__panel--lvl3{ box-shadow: -8px 0 24px rgba(10,10,10,.06); }
.ugs-search .dgwt-wcas-style-pirx .dgwt-wcas-sf-wrapp {
    background: transparent;
}

.dgwt-wcas-style-pirx .dgwt-wcas-sf-wrapp input[type=search].dgwt-wcas-search-input {
    border: 1px solid #000 !important;
    background-color:transparent;
}


/* Primary list separator + highlight */
.ugs-drawer__rule{
  height: 1px; background: var(--c-border); margin: var(--s-3) var(--s-5);
  padding: 0 !important;
}
.ugs-drawer__list li.is-highlight a,
.ugs-drawer__list a.is-highlight{ color: var(--c-accent); font-weight: 700; }

/* Cascade state: each sibling panel slides one width further right */
.ugs-drawer.is-open .ugs-drawer__panel--lvl1{ transform: translateX(0); }
.ugs-drawer.is-sub-open .ugs-drawer__panel--lvl2{ transform: translateX(100%); transition-delay: 40ms; }
.ugs-drawer.is-sub3-open .ugs-drawer__panel--lvl3{ transform: translateX(200%); transition-delay: 60ms; }

/* Drawer head */
.ugs-drawer__head{
  display: flex; align-items: center; gap: var(--s-6);
  padding: var(--s-4) var(--s-5);
  min-height: var(--h-header);
  border-bottom: 1px solid var(--c-border);
}
.ugs-drawer__head .ugs-txtbtn{ font-size: 15px; }
.ugs-drawer__close-primary:focus-visible{ outline: 2px solid var(--c-accent); outline-offset: 4px; }

/* Drawer list */
.ugs-drawer__list{ flex: 1; padding: var(--s-4) 0; overflow-y: auto; }
.ugs-drawer__list ul{ padding: 0; margin: 0; }
.ugs-drawer__list li{ padding: 0; margin: 0; }
.ugs-drawer__list a,
.ugs-drawer__list button{
  display: flex; align-items: center; justify-content: space-between; gap: var(--s-3);
  width: 100%;
  padding: 12px var(--s-5);
  font-family: "Lato", sans-serif; font-weight: 400; font-size: 14px;
  color: var(--c-fg-strong);
  text-align: left;
  background: transparent;
  line-height: 1.3;
  transition: color var(--t-base), background var(--t-base);
}
.ugs-drawer__list a:hover,
.ugs-drawer__list button:hover,
.ugs-drawer__list button.is-active{
  color: var(--c-fg-strong);
}
.ugs-drawer__list li a.ugs-drawer__feature {
    display: block;
    margin-top: 0;
}
.ugs-drawer__list button.is-active{ outline: 2px solid var(--c-accent); outline-offset: -4px; }
.ugs-drawer__chev{ color: var(--c-muted); font-size: 22px; line-height: 1; font-weight: 300; transition: transform var(--t-base); }
.ugs-drawer__list button:hover .ugs-drawer__chev{ transform: translateX(4px); color: var(--c-fg-strong); }
.ugs-drawer__tag{
  font-family: "Lato", sans-serif; font-size: 10px; letter-spacing: .18em;
  color: var(--c-muted); font-weight: 500;
  text-transform: uppercase; margin-left: 6px; vertical-align: super;
}

/* Drawer foot (Prada-style: phone, account, locale) */
.ugs-drawer__foot{
  padding: var(--s-4) var(--s-5) var(--s-5);
  border-top: 1px solid var(--c-border);
  display: flex; flex-direction: column; gap: var(--s-3);
}
.ugs-drawer__footlink{
  display: inline-flex; align-items: center; gap: var(--s-3);
  font-size: 12px;
  color: var(--c-fg-strong);
  padding: 0px 0;
}
.ugs-drawer__footlink svg{ color: var(--c-muted); }

/* Drawer sub-panel (lvl 2 + lvl 3) */
.ugs-drawer__panel--lvl2,
.ugs-drawer__panel--lvl3{
  border-left: 0;
  border-right: 1px solid var(--c-border);
}
.ugs-drawer__sub{
  flex: 1;
  padding: var(--s-4) var(--s-5) var(--s-7);
  overflow-y: auto;
  display: none;
}
.ugs-drawer__sub.is-active{ display: block; }
/* Rich 3rd-level panel: top quick links row + sublist + product feature */
.ugs-drawer__sub--rich{ display: none; }
.ugs-drawer__sub--rich.is-active{ display: flex; flex-direction: column; }
.ugs-drawer__sub-top{
  display: flex; flex-wrap: wrap; gap: var(--s-4);
  padding: 0 0 var(--s-4);
  margin: 0 0 var(--s-4);
  border-bottom: 1px solid var(--c-border);
}
.ugs-drawer__sub-top a{
  font-family: "Lato", sans-serif; font-size: 11px; letter-spacing: .18em;
  text-transform: uppercase; font-weight: 500; color: var(--c-fg-strong);
  padding: 6px 10px; border: 1px solid var(--c-border);
  transition: background var(--t-base), color var(--t-base), border-color var(--t-base);
}
.ugs-drawer__sub-top a:hover{ background: var(--c-fg-strong); color: #fff; border-color: var(--c-fg-strong); }
.ugs-drawer__sub-top a:first-child{ color: var(--c-accent); border-color: var(--c-accent); }
.ugs-drawer__sub-top a:first-child:hover{ background: var(--c-accent); color: #fff; border-color: var(--c-accent); }
.ugs-drawer__sublist{ margin: 0 0 var(--s-6); padding: 0; }
.ugs-drawer__sublist li{ padding: 0; }
.ugs-drawer__sublist a,
.ugs-drawer__sublist button{
  display: flex; align-items: center; justify-content: space-between; gap: var(--s-3);
  width: 100%;
  padding: 12px 0;
  font-family: "Lato", sans-serif; font-size: 14px; font-weight: 400;
  color: var(--c-fg-strong);
  background: transparent; border: 0; text-align: left;
  cursor: pointer;
  transition: color var(--t-base) var(--ease-out);
}
.ugs-drawer__sublist a:hover,
.ugs-drawer__sublist button:hover{ color: var(--c-accent); }
.ugs-drawer__sublist a em{ font-style: italic; color: var(--c-muted); font-size: 13px; margin-left: 6px; }
.ugs-drawer__sublist--light a,
.ugs-drawer__sublist--light button{ font-weight: 400; color: var(--c-fg); }
.ugs-drawer__sublist .ugs-drawer__chev{ font-size: 20px; color: var(--c-muted); }
.ugs-drawer__subhead{
  font-family: "Lato", sans-serif; font-size: 11px; letter-spacing: .22em; text-transform: uppercase;
  color: var(--c-muted); font-weight: 500;
  margin: var(--s-4) 0 var(--s-3);
}
.ugs-drawer__feature{ display: block; margin-top: var(--s-5); overflow: hidden; }
.ugs-drawer__feature img{ width: 100%; aspect-ratio: 4/3; object-fit: cover; transition: transform 600ms var(--ease-out); }
.ugs-drawer__feature:hover img{ transform: scale(1.04); }
.ugs-drawer__feature-cap{
  display: block; padding: var(--s-3) 0 0;
  font-family: "Lato", sans-serif; font-size: 11px; letter-spacing: .18em;
  text-transform: uppercase; color: var(--c-fg-strong);
}

/* Mobile stacking: each deeper panel fully covers the previous (stacked, no cascade) */
@media (max-width: 767px){
  .ugs-drawer__panel{ width: 100vw; max-width: 100vw; border-right: 0; }
  .ugs-drawer.is-sub-open .ugs-drawer__panel--lvl2{ transform: translateX(0); }
  .ugs-drawer.is-sub3-open .ugs-drawer__panel--lvl3{ transform: translateX(0); }
  .ugs-drawer__scrim{ display: none; }
  .ugs-hero__meta{ display: none!important; }
}

/* ---------- 9. HERO ---------- */
.ugs-hero{
  position: relative;
  height: clamp(560px, 86vh, 920px);
  overflow: hidden;
  background: var(--c-fg-strong);
  color: #fff;
}
.ugs-hero__stage{ position: absolute; inset: 0; }
.ugs-hero__slide{
  position: absolute; inset: 0;
  background-size: cover; background-position: center;
  opacity: 0; transform: scale(1.04);
  transition: opacity 1200ms var(--ease-out), transform 12000ms linear;
}
.ugs-hero__slide.is-active{ opacity: 1; z-index: 1; transform: scale(1); }
.ugs-hero__overlay{
  position: absolute; inset: 0;
  background:
    linear-gradient(180deg, rgba(7,43,71,.2) 0%, rgba(10,10,10,.15) 40%, rgba(10,10,10,.75) 100%);
}
.ugs-hero__inner{
  position: absolute; left: 0; right: 0; bottom: 0;
  max-width: var(--container); margin: 0 auto;
  padding: 0 var(--gutter-m) var(--s-8);
}
@media (min-width: 1024px){ .ugs-hero__inner{ padding: 0 var(--gutter-d) var(--s-9); } }

.ugs-hero__title {
    font-family: "Lato", sans-serif;
    font-size: var(--fs-display);
    font-weight: 700;
    line-height: var(--lh-tight);
    color: #fff;
    max-width: 20ch;
    margin: 0 0 var(--s-4);
    letter-spacing: -.018em;
}
.ugs-hero__title em{ font-style: italic; font-weight: 700; color: var(--c-accent); }
.ugs-hero__sub{ max-width: 50ch; color: rgba(255,255,255,.82); font-size: var(--fs-lead); line-height: 1.5; margin: 0 0 var(--s-6); font-weight: 300; }
.ugs-hero__cta{ display: flex; gap: var(--s-4); flex-wrap: wrap; }

.ugs-hero__controls{
  position: absolute; left: 50%; transform: translateX(-50%);
  bottom: var(--s-5); z-index: 2;
  display: flex; gap: 10px;
}
@media (min-width: 1024px){ .ugs-hero__controls{ left: var(--gutter-d); transform: none; bottom: var(--s-5); } }
.ugs-hero__dot{ width: 42px; height: 2px; background: rgba(255,255,255,.3); transition: background var(--t-base) var(--ease-out); }
.ugs-hero__dot.is-active{ background: var(--c-accent); }

.ugs-hero__meta{
  position: absolute; right: var(--gutter-m); bottom: var(--s-5);
  display: flex; align-items: center; gap: var(--s-4);
  font-family: "Lato", sans-serif; font-size: 12px; color: rgba(255,255,255,.7);
  z-index: 2;
}
@media (min-width: 1024px){ .ugs-hero__meta{ right: var(--gutter-d); } }
.ugs-hero__nav{
  width: 44px; height: 44px;
  border: 1px solid rgba(255,255,255,.4);
  color: #fff;
  background: transparent;
  transition: background var(--t-base) var(--ease-out), color var(--t-base) var(--ease-out);
}
.ugs-hero__nav:hover{ background: #fff; color: var(--c-fg-strong); }
.ugs-hero__index{ letter-spacing: .2em; }

/* ---------- 10. MARQUEE ---------- */
.ugs-marquee{
  background: var(--c-fg-strong);
  color: #fff;
  overflow: hidden;
  padding: 14px 0;
  border-bottom: 1px solid rgba(255,255,255,.06);
}
.ugs-marquee__track{
  display: inline-flex; gap: var(--s-7); align-items: center;
  white-space: nowrap;
  animation: ugsTicker 48s linear infinite;
  font-family: "Lato", sans-serif;
  font-size: 13px;
  letter-spacing: .16em;
  text-transform: uppercase;
}
.ugs-marquee__dot{ width: 6px; height: 6px; background: var(--c-accent); display: inline-block; }

/* ---------- 11. GENDER BLOCKS (Women / Men with category carousels) ---------- */
.ugs-gender{ padding: var(--s-9) 0; background: var(--c-bg); }
.ugs-gender + .ugs-gender{ padding-top: 0; }
.ugs-gender__head{
  display: flex; align-items: flex-end; justify-content: space-between; gap: var(--s-5);
  margin-bottom: var(--s-6); flex-wrap: wrap;
}
.ugs-gender__title{
  font-family: "Lato", sans-serif; font-size: var(--fs-h1); font-weight: 700;
  line-height: var(--lh-tight); letter-spacing: -.018em; color: var(--c-fg-strong); margin: 0;
}
.ugs-gender__title em{ font-style: italic; font-weight: 700; color: inherit; }
.ugs-gender__aside{ display: flex; gap: var(--s-5); align-items: center; flex-wrap: wrap; }
.ugs-gender__meta{ font-family: "Lato", sans-serif; font-size: 11px; letter-spacing: .22em; text-transform: uppercase; color: var(--c-muted); }
.ugs-gender__meta em{ color: var(--c-accent); font-style: normal; }

.ugs-cattrack{ position: relative; }
.ugs-catcard{
  position: relative; display: block; overflow: hidden;
  aspect-ratio: 3/4; background: var(--c-surface-alt);
}
.ugs-catcard__media{ position: absolute; inset: 0; }
.ugs-catcard__media img{ width: 100%; height: 100%; object-fit: cover; transition: transform 900ms var(--ease-out); filter: saturate(1.02); }
.ugs-catcard:hover .ugs-catcard__media img{ transform: scale(1.06); }
.ugs-catcard::after{
  content:''; position: absolute; inset: 0;
  background: linear-gradient(180deg, rgba(0,0,0,0) 45%, rgba(0,0,0,.65) 100%);
}
.ugs-catcard__cap{
  position: absolute; left: 0; right: 0; bottom: 0; z-index: 1;
  padding: var(--s-5);
  display: flex; align-items: flex-end; justify-content: space-between; gap: var(--s-3);
  color: #fff;
}
.ugs-catcard__num{
  font-family: "Lato", sans-serif; font-size: 11px; letter-spacing: .22em; text-transform: uppercase;
  color: rgba(255,255,255,.78); display: block; margin-bottom: 6px;
}
.ugs-catcard__name{
  font-family: "Lato", sans-serif; font-weight: 700; font-size: clamp(18px, .8vw + 14px, 24px);
  letter-spacing: -.008em; line-height: var(--lh-tight); color: #fff; margin: 0;
}
.ugs-catcard__arrow{
  width: 36px; height: 36px; flex: 0 0 36px;
  border: 1px solid rgba(255,255,255,.6); display: inline-flex; align-items: center; justify-content: center;
  font-size: 14px; transition: background var(--t-base) var(--ease-out), border-color var(--t-base) var(--ease-out);
}
.ugs-catcard:hover .ugs-catcard__arrow{ background: var(--c-accent); border-color: var(--c-accent); }

.ugs-gender--reverse .ugs-gender__head{ flex-direction: row-reverse; }

/* Unified 4-up category grid (Tops · Bottoms · Jackets · Accessories) */
.ugs-catgrid{
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: var(--s-3);
}
@media (min-width: 768px){ .ugs-catgrid{ grid-template-columns: repeat(4, 1fr); gap: var(--s-4); } }
.ugs-catgrid .ugs-catcard{ aspect-ratio: 3/4; }

/* ==========================================================================
   23a. GENDER BANNER CAROUSEL — merged Men+Women, 2s autoplay, pause on hover
   ========================================================================== */
.ugs-gbanner-slider{ position: relative; background: var(--c-fg-strong); }
.ugs-gcarousel.owl-carousel{ position: relative; }
.ugs-gcarousel.owl-carousel .owl-stage-outer{ overflow: hidden; }
.ugs-gcarousel.owl-carousel .owl-stage{ display: flex; }
.ugs-gcarousel.owl-carousel .owl-item{ padding: 0; }
.ugs-gcarousel.owl-carousel .owl-nav{ display: none; }
.ugs-gcarousel.owl-carousel .owl-dots{
  position: absolute; left: 0; right: 0; bottom: var(--s-4);
  display: flex; justify-content: center; gap: 8px; z-index: 3;
}
.ugs-gcarousel.owl-carousel .owl-dot{
  width: 24px; height: 2px; background: rgba(255,255,255,.35);
  transition: background var(--t-base);
}
.ugs-gcarousel.owl-carousel .owl-dot.active{ background: #fff; }

.ugs-gslide{
  position: relative;
  min-height: clamp(460px, 72vh, 760px);
  overflow: hidden;
  color: #fff;
  display: flex; align-items: flex-end;
}
.ugs-gslide__bg{
  position: absolute; inset: 0;
  background-size: cover; background-position: center;
  transition: transform 1200ms var(--ease-out);
}
.ugs-gcarousel .owl-item.active .ugs-gslide__bg{ transform: scale(1.04); }
.ugs-gslide__overlay{
  position: absolute; inset: 0;
  background:
    linear-gradient(180deg, rgba(0,0,0,.0) 0%, rgba(0,0,0,.15) 40%, rgba(0,0,0,.7) 100%),
    linear-gradient(90deg, rgba(0,0,0,.35) 0%, rgba(0,0,0,0) 60%);
}
.ugs-gslide__inner{
  position: relative; z-index: 1;
  width: 100%; padding: var(--s-8) var(--gutter-m);
  display: flex; align-items: flex-end; justify-content: space-between; gap: var(--s-5);
}
@media (min-width: 1024px){ .ugs-gslide__inner{ padding: var(--s-9) var(--gutter-d); } }
.ugs-gslide__eyebrow {
    font-family: "Lato", sans-serif;
    font-size: 11px;
    letter-spacing: .24em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, .82);
    display: block;
    margin-bottom: var(--s-4);
}

h2.ugs-gslide__title {
    color: #fff;
}
.ugs-gslide__eyebrow em{ color: var(--c-accent); font-style: normal; }
.ugs-gslide__title{
  font-family:"Lato", sans-serif; font-weight: 700;
  font-size: var(--fs-display);
  line-height: var(--lh-tight); letter-spacing: -.018em; color: #fff;
  margin: 0 0 var(--s-4); max-width: 20ch;
}
.ugs-gslide__title em{ font-style: italic; font-weight: 700; color: var(--c-accent); }
.ugs-gslide__sub{ color: rgba(255,255,255,.85); max-width: 48ch; font-size: var(--fs-lead); font-weight: 300; margin: 0 0 var(--s-5); }
.ugs-gslide__cta{ display: flex; gap: var(--s-3); flex-wrap: wrap; }
@media (max-width: 767px){
  .ugs-gslide{ min-height: 78vh; }
  .ugs-gslide__inner{ flex-direction: column; align-items: flex-start; }
}

/* Owl fade animation helpers (used by gender carousel) */
.owl-carousel .animated{ animation-duration: 700ms; animation-fill-mode: both; }
.owl-carousel .owl-animated-in{ z-index: 1; }
.owl-carousel .owl-animated-out{ z-index: 0; }
.owl-carousel .fadeOut{ animation-name: ugsFadeOut; }
.owl-carousel .fadeIn{ animation-name: ugsFadeIn; }
@keyframes ugsFadeOut{ from{ opacity: 1; } to{ opacity: 0; } }
@keyframes ugsFadeIn { from{ opacity: 0; } to{ opacity: 1; } }

/* ---------- 12. PRODUCT CAROUSELS ---------- */
.ugs-prods{ padding: var(--s-9) 0; }
.ugs-prods--muted{ background: var(--c-surface-alt); }

.ugs-carousel{ position: relative; }
.ugs-carousel__arrows{ display: flex; gap: 2px; }
.ugs-carousel__arrow{
  width: 44px; height: 44px;
  border: 1px solid var(--c-border);
  background: transparent;
  color: var(--c-fg-strong);
  font-size: 16px;
  transition: background var(--t-base) var(--ease-out), color var(--t-base) var(--ease-out), border-color var(--t-base) var(--ease-out);
}
.ugs-carousel__arrow:hover{ background: var(--c-fg-strong); color: #fff; border-color: var(--c-fg-strong); }
section.ugs-prods .ugs-container .ugs-carousel .owl-dots {
    margin-top: 80px;
}

.ugs-pcard{ position: relative; display: block; background: transparent; }
.ugs-pcard__media{ position: relative; display: block; overflow: hidden; aspect-ratio: 3/4; background: var(--c-surface-alt); }
.ugs-pcard__img{ width: 100%; height: 100%; object-fit: cover; transition: opacity var(--t-slow) var(--ease-out), transform 900ms var(--ease-out); }
.ugs-pcard__img--hover{ position: absolute; inset: 0; opacity: 0; }
.ugs-pcard:hover .ugs-pcard__img--hover{ opacity: 1; }
.ugs-pcard:hover .ugs-pcard__img{ transform: scale(1.03); }
.ugs-pcard__badge{
  position: absolute; top: var(--s-3); left: var(--s-3);
  background: var(--c-fg-strong); color: #fff;
  padding: 4px 8px; font-family: "Lato", sans-serif; font-size: 10px; font-weight: 500; letter-spacing: .18em; text-transform: uppercase;
}
.ugs-pcard__badge--alt{ background: var(--c-accent); left: auto; right: var(--s-3); }
.ugs-pcard__body{ padding-top: var(--s-4); }
.ugs-pcard__cat{ font-family: "Lato", sans-serif; font-size: 11px; letter-spacing: .18em; text-transform: uppercase; color: var(--c-muted); display: block; margin-bottom: 6px; }
.ugs-pcard__title {
    font-size: 14px;
    font-weight: 700;
    line-height: 1.3;
    margin: 0 0 var(--s-2);
    text-transform: none;
    color: var(--c-fg-strong);
    letter-spacing: -.01em;
}
.ugs-pcard__body span.ugs-pcard__cat {
    display: none;
}
.ugs-pcard__title a{ color: inherit; }
.ugs-pcard__title a:hover{ color: var(--c-accent); }
.ugs-pcard__foot{ display: flex; align-items: center; justify-content: space-between; gap: var(--s-3); }
.ugs-pcard__price{ font-family: "Lato", sans-serif; font-size: 14px; font-weight: 500; color: var(--c-fg-strong); }
.ugs-pcard__price del{ color: var(--c-muted); font-weight: 400; margin-right: 6px; }
.ugs-pcard__cta{ font-family: "Lato", sans-serif; font-size: 11px; letter-spacing: .18em; text-transform: uppercase; font-weight: 500; border-bottom: 1px solid var(--c-border); padding-bottom: 2px; }
.ugs-pcard__cta:hover{ border-bottom-color: var(--c-accent); color: var(--c-accent); }
.ugs-pcard--placeholder{ background: var(--c-surface-alt); aspect-ratio: 3/4; }

/* ---------- 13. ACTIVITY ---------- */
.ugs-activity{ padding: var(--s-9) 0; background: var(--c-bg); }
.ugs-activity__track{
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: 78%;
  gap: var(--s-4);
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scroll-padding: var(--gutter-m);
  padding-bottom: var(--s-5);
  -webkit-overflow-scrolling: touch;
}
@media (min-width: 768px){ .ugs-activity__track{ grid-auto-columns: 44%; gap: var(--s-5); } }
@media (min-width: 1024px){ .ugs-activity__track{ grid-template-columns: repeat(4, 1fr); grid-auto-flow: row; grid-auto-columns: unset; overflow: visible; gap: var(--s-4); } }

.ugs-activity__card{ display: block; scroll-snap-align: start; position: relative; }
.ugs-activity__media{ position: relative; overflow: hidden; aspect-ratio: 3/4; background: var(--c-surface-alt); }
.ugs-activity__media img{ width: 100%; height: 100%; object-fit: cover; transition: transform 900ms var(--ease-out); }
.ugs-activity__card:hover .ugs-activity__media img{ transform: scale(1.05); }
.ugs-activity__foot{ padding: var(--s-4) 0 0; }
.ugs-activity__foot h3{ font-size: var(--fs-h3); font-weight: 700; line-height: 1.25; text-transform: none; margin: 4px 0 var(--s-2); color: var(--c-fg-strong); letter-spacing: -.008em; }

/* ---------- 14. FEATURE (method) — Signal-blue editorial block ---------- */
.ugs-feature{ padding: var(--s-9) 0; background: var(--c-surface-alt); color: var(--c-fg); }
.ugs-feature h2, .ugs-feature h3{ color: var(--c-fg-strong); }
.ugs-feature__grid{ display: grid; grid-template-columns: 1fr; gap: var(--s-7); align-items: center; }
@media (min-width: 1024px){ .ugs-feature__grid{ grid-template-columns: 1.05fr 1fr; gap: var(--s-9); } }
.ugs-feature__media{ position: relative; aspect-ratio: 4/5; overflow: hidden; background: var(--c-glacier); }
.ugs-feature__media img{ width: 100%; height: 100%; object-fit: cover; }
.ugs-feature__mono{ position: absolute; bottom: var(--s-4); left: var(--s-4); font-family: "Lato", sans-serif; font-size: 11px; color: rgba(255,255,255,.85); letter-spacing: .2em; text-transform: uppercase; background: rgba(10,10,10,.5); padding: 4px 8px; }
.ugs-feature__copy p{ color: var(--c-fg); max-width: 56ch; font-size: 17px; line-height: 1.6; }
.ugs-feature__copy strong{ color: var(--c-fg-strong); font-weight: 700; }
.ugs-feature__specs{ display: grid; grid-template-columns: repeat(2, 1fr); gap: 1px; margin: var(--s-6) 0; background: var(--c-border); border: 1px solid var(--c-border); }
.ugs-feature__specs li{ padding: var(--s-5); background: #fff; }
.ugs-feature__specs strong {
    display: block;
    font-family: "Lato", sans-serif;
    font-size: clamp(26px, 1.4vw + 16px, 30px);
    font-weight: 700;
    color: var(--c-fg-strong);
    line-height: var(--lh-tight);
    margin-bottom: 8px;
    letter-spacing: -.018em;
}
.ugs-feature__specs li:nth-child(1) strong em,
.ugs-feature__specs li:nth-child(3) strong em{ color: var(--c-accent); font-style: italic; }
.ugs-feature__specs span {
    font-family: "Lato", sans-serif;
    font-size: 11px;
    letter-spacing: .18em;
    text-transform: uppercase;
    color: var(--c-muted);
}
.ugs-feature__cta{ display: flex; gap: var(--s-5); align-items: center; flex-wrap: wrap; margin-top: var(--s-5); }

/* Feature sidebar meta (mono labels like the brand book) */
.ugs-feature__meta{
  font-family: "Lato", sans-serif; font-size: 11px; letter-spacing: .18em;
  text-transform: uppercase; color: var(--c-muted);
  display: grid; grid-template-columns: auto 1fr; gap: 4px var(--s-4);
  margin: var(--s-5) 0 0;
}
section.ugs-collections h2#ugsColTitle em {
    color: #00a3db !important;
    -webkit-text-fill-color: #00a3db;
}
.ugs-feature__meta dt{ color: var(--c-muted); }
.ugs-feature__meta dd{ color: var(--c-fg-strong); margin: 0; }

/* ---------- 15. COLLECTIONS ---------- */
.ugs-collections{ padding: var(--s-9) 0; background: var(--c-bg); }
.ugs-collections__grid{ display: grid; grid-template-columns: 1fr; gap: var(--s-4); }
@media (min-width: 768px){
  .ugs-collections__grid{
    grid-template-columns: 1.4fr 1fr 1fr;
    grid-template-rows: auto auto;
    grid-template-areas: 'a b c' 'a d c';
    gap: 2px;
    background: var(--c-border);
  }
  .ugs-collection--tall{ grid-area: a; aspect-ratio: 4/5.6; }
  .ugs-collections__grid .ugs-collection:nth-child(2){ grid-area: b; }
  .ugs-collections__grid .ugs-collection:nth-child(3){ grid-area: d; }
    .ugs-collections__grid .ugs-collection:nth-child(4) {
        grid-area: c;
        aspect-ratio: 4 / 6.03;
    }
}
.ugs-collection{ position: relative; display: block; overflow: hidden; aspect-ratio: 4/3; background: var(--c-surface); }
.ugs-collection img{ width: 100%; height: 100%; object-fit: cover; transition: transform 900ms var(--ease-out); }
.ugs-collection:hover img{ transform: scale(1.04); }
.ugs-collection::after{ content:''; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(0,0,0,0) 45%, rgba(0,0,0,.68) 100%); pointer-events: none; }
.ugs-collection__cap{ position: absolute; left: 0; right: 0; bottom: 0; padding: var(--s-5); color: #fff; z-index: 1; }
.ugs-collection__cap h3{ font-size: clamp(22px, 1.1vw + 16px, 30px); color: #fff; font-weight: 700; line-height: var(--lh-tight); text-transform: none; margin: 2px 0 var(--s-3); letter-spacing: -.012em; }
.ugs-collection__cap h3 em{ font-style: italic; color: var(--c-accent); font-weight: 700; }

/* ---------- 16. PRESS ---------- */
.ugs-press{ padding: var(--s-8) 0; border-top: 1px solid var(--c-border); border-bottom: 1px solid var(--c-border); background: var(--c-bg); }
.ugs-press__label{ display: block; text-align: center; }
.ugs-press__row{ display: flex; flex-wrap: wrap; justify-content: space-around; gap: var(--s-5); align-items: center; margin-top: var(--s-4); }
.ugs-press__row span{ font-family: 'Lato', serif; font-weight: 300; font-style: italic; font-size: clamp(16px, 1.4vw, 22px); color: var(--c-muted); letter-spacing: .01em; }

/* ---------- 17. NEWSLETTER (class=news — brand-book Signal gradient) ---------- */
.ugs-newsletter,
.news{
  padding: var(--s-9) 0;
  background: linear-gradient(120deg, var(--ugs-abyss) 0%, var(--ugs-deep) 55%, var(--ugs-signal) 100%);
  color: #fff;
  position: relative;
  overflow: hidden;
  isolation: isolate;
}
.ugs-newsletter::before{
  content: "Signal / Dispatch / 2026";
  position: absolute;
  bottom: var(--s-4); right: var(--gutter-d);
  font-family: "Lato", sans-serif; font-size: 10px; letter-spacing: .24em;
  text-transform: uppercase; color: rgba(255,255,255,.32);
  pointer-events: none;
}
.ugs-news__stamp{
  position: absolute; top: var(--s-4); left: var(--gutter-d);
  font-family: "Lato", sans-serif; font-size: 10px; letter-spacing: .24em;
  text-transform: uppercase; color: rgba(255,255,255,.4);
}
.ugs-newsletter__grid{ display: grid; grid-template-columns: 1fr; gap: var(--s-6); align-items: center; position: relative; z-index: 1; }
@media (min-width: 1024px){ .ugs-newsletter__grid{ grid-template-columns: 1.1fr 1fr; gap: var(--s-8); } }
.ugs-newsletter__copy .ugs-eyebrow{ color: rgba(255,255,255,.7); }
.ugs-newsletter__copy .ugs-eyebrow em{ color: #fff; font-style: normal; }
.ugs-newsletter__copy p{ color: rgba(255,255,255,.86); max-width: 52ch; font-size: 17px; line-height: 1.55; }
.ugs-newsletter__copy p strong{ color: #fff; font-weight: 700; }
.ugs-newsletter .ugs-h2{ color: #fff; }
.ugs-newsletter .ugs-h2 em{
  font-style: italic; font-weight: 700;
  background: linear-gradient(92deg, #BFE3F5 0%, #FFFFFF 60%);
  -webkit-background-clip: text; background-clip: text;
  -webkit-text-fill-color: transparent;
}
.ugs-news__meta{ display: grid; grid-template-columns: max-content 1fr; gap: 6px var(--s-4); margin-top: var(--s-5); max-width: 420px; }
.ugs-news__meta dt{ font-family: "Lato", sans-serif; font-size: 10px; letter-spacing: .22em; text-transform: uppercase; color: rgba(255,255,255,.55); }
.ugs-news__meta dd{ margin: 0; font-family: "Lato", sans-serif; font-size: 12px; color: #fff; letter-spacing: .04em; }
/* Newsletter form — wraps either our inline markup OR the [mc4wp_form] output.
   Targets both with the same overrides so MC4WP's <form>/<input>/<button> render
   as cleanly as the hand-rolled version. */
.ugs-newsletter__form{ display: block; max-width: 520px; }

/* MC4WP renders <form class="mc4wp-form">…<p><label/><input/></p><p><input type="submit"/></p>…</form>
   so we override the <p> spacing and the input rows. */
.ugs-newsletter__form form,
.ugs-newsletter__form .mc4wp-form{
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 0;
  align-items: stretch;
}
.ugs-newsletter__form form > p,
.ugs-newsletter__form .mc4wp-form-fields{
  margin: 0;
  display: contents;
}
.ugs-newsletter__form label{ display: none; }

.ugs-newsletter__form input[type="email"],
.ugs-newsletter__form input[type="text"]{
  height: 52px;
  padding: 0 18px;
  width: 100%;
  font-family: "Lato", sans-serif; font-size: 15px;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.4); border-right: 0;
  color: #fff;
  border-radius: 0;
}
.ugs-newsletter__form input::placeholder{ color: rgba(255,255,255,.6); }
.ugs-newsletter__form input:focus{ outline: none; border-color: #fff; background: rgba(255,255,255,.14); }

.ugs-newsletter__form button,
.ugs-newsletter__form input[type="submit"]{
  height: 52px;
  padding: 0 26px;
  background: #fff;
  border: 1px solid #fff;
  color: var(--ugs-abyss) !important;
  font-family: "Lato", sans-serif;
  font-weight: 600;
  font-size: 13px;
  letter-spacing: .06em;
  text-transform: uppercase;
  cursor: pointer;
  border-radius: 0;
  white-space: nowrap;
  transition: background var(--t-base) var(--ease-out), color var(--t-base) var(--ease-out);
}
.ugs-newsletter__form button:hover,
.ugs-newsletter__form input[type="submit"]:hover{
  background: var(--ugs-electric);
  border-color: var(--ugs-electric);
  color: #fff !important;
}

/* MC4WP success / error responses */
.ugs-newsletter__form .mc4wp-response{
  grid-column: 1 / -1;
  margin-top: var(--s-3);
  font-size: 13px;
  color: rgba(255,255,255,.9);
}
.ugs-newsletter__form .mc4wp-response .mc4wp-success{ color: #B5F0C7; }
.ugs-newsletter__form .mc4wp-response .mc4wp-error{   color: #FFC2C2; }

.ugs-newsletter__fine{
  display: block;
  grid-column: 1/-1;
  font-size: 12px;
  color: rgba(255,255,255,.65);
  margin-top: var(--s-3);
}
.ugs-newsletter__fine a{ border-bottom: 1px solid currentColor; color: #fff; }

/* ---------- 18. DISCIPLINES ---------- */
.ugs-disciplines{ padding: var(--s-9) 0; background: var(--c-bg); }
.ugs-disciplines__grid{ display: grid; grid-template-columns: 1fr; gap: 2px; background: var(--c-border); }
.ugs-discipline__caption img.ugs-discipline__logo {
    width: auto;
    margin: 0 0 10px;
    height: 50px;
}

@media (min-width: 768px){ .ugs-disciplines__grid{ grid-template-columns: repeat(3, 1fr); } }
.ugs-discipline{ position: relative; display: block; overflow: hidden; background: var(--c-surface); aspect-ratio: 4/5; }
.ugs-discipline img{ width: 100%; height: 100%; object-fit: cover; transition: transform 900ms var(--ease-out); }
.ugs-discipline:hover img{ transform: scale(1.05); }
.ugs-discipline::after{ content:''; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(0,0,0,0) 50%, rgba(0,0,0,.6)); pointer-events: none; }
.ugs-discipline__caption{ position: absolute; left: 0; right: 0; bottom: 0; padding: var(--s-5); color: #fff; z-index: 1; }
.ugs-discipline__logo{ height: 28px; width: auto; filter: brightness(0) invert(1); margin-bottom: var(--s-3); }

/* ---------- 19. FOOTER (2-tone black: upper graphite · lower true black) ---------- */
:root{
  --ugs-black-upper: #171717; /* z-ink, slightly lighter */
  --ugs-black-lower: #000000; /* z-black */
  --ugs-footer-rule: rgba(255,255,255,.08);
  --ugs-footer-muted: rgba(255,255,255,.58);
  --ugs-footer-body:  rgba(255,255,255,.82);
}
.ugs-footer{
  background: var(--ugs-black-upper);
  color: var(--ugs-footer-body);
  padding: 0;
  border-top: 1px solid var(--ugs-black-lower);
}
.ugs-footer .ugs-container{ padding-top: var(--s-9); padding-bottom: 0; }
.ugs-footer h4{ font-family: "Lato", sans-serif; font-size: 11px; font-weight: 500; letter-spacing: .22em; text-transform: uppercase; color: var(--ugs-footer-muted); margin-bottom: var(--s-4); }
.ugs-footer a{ color: var(--ugs-footer-body); }
.ugs-footer a:hover{ color: #fff; }
.ugs-footer__top{ display: grid; grid-template-columns: 1fr; gap: var(--s-8); padding-bottom: var(--s-8); border-bottom: 1px solid var(--ugs-footer-rule); }
@media (min-width: 1024px){ .ugs-footer__top{ grid-template-columns: 1fr 2fr; gap: var(--s-9); } }
.ugs-footer__logo img {
    height: auto;
    margin-bottom: var(--s-5);
    filter: brightness(0) invert(1);
    width: 200px;
}
.ugs-footer__statement{ font-size: 18px; font-weight: 300; font-style: italic; color: #fff; max-width: 32ch; line-height: 1.4; }
.ugs-footer__statement em{ color: var(--c-accent); font-style: italic; font-weight: 400; }
.ugs-social{ display: flex; gap: var(--s-3); margin-top: var(--s-5); }
.ugs-social a{ width: 40px; height: 40px; border: 1px solid var(--ugs-footer-rule); display: inline-flex; align-items: center; justify-content: center; color: #fff; transition: background var(--t-base) var(--ease-out), color var(--t-base) var(--ease-out), border-color var(--t-base) var(--ease-out); }
.ugs-social a:hover{ background: var(--c-accent); color: #fff; border-color: var(--c-accent); }

.ugs-footer__cols{ display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--s-6); }
@media (min-width: 768px){ .ugs-footer__cols{ grid-template-columns: repeat(4, 1fr); } }
.ugs-footer__col ul li{ margin-bottom: 10px; font-size: 14px; }
.ugs-footer__col ul li a{ text-transform: none; color: var(--ugs-footer-body); }
.ugs-footer__col ul li a:hover{ color: #fff; }

.ugs-footer__usps{
  display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--s-5);
  padding: var(--s-6) 0;
  border-bottom: 1px solid var(--ugs-footer-rule);
}
@media (min-width: 768px){ .ugs-footer__usps{ grid-template-columns: repeat(4, 1fr); } }
.ugs-footer__usp{ display: flex; gap: var(--s-3); align-items: flex-start; color: var(--ugs-footer-body); }
.ugs-footer__usp svg{ color: var(--c-accent); flex-shrink: 0; margin-top: 2px; }
.ugs-footer__flag{ font-size: 22px; line-height: 1; flex-shrink: 0; margin-top: 1px; }
.ugs-footer__usp strong{ display: block; color: #fff; font-weight: 700; font-size: 13px; letter-spacing: .02em; }
.ugs-footer__usp span{ display: block; font-family: "Lato", sans-serif; font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: var(--ugs-footer-muted); margin-top: 2px; }

/* Lower black bar — true black · slim */
.ugs-footer__bottom{
  background: var(--ugs-black-lower);
  margin-top: 0;
}
/* Kill the generic 96px top padding inherited from .ugs-footer .ugs-container */
.ugs-footer .ugs-footer__bottom > .ugs-container{
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
.ugs-footer__bottom-inner{
  display: flex; flex-wrap: wrap; gap: var(--s-4); align-items: center; justify-content: space-between;
  padding: 10px 0;
  min-height: 40px;
  font-size: 11px; letter-spacing: .02em; color: var(--ugs-footer-muted);
  line-height: 1.4;
}
.ugs-footer__legal{ margin: 0; color: var(--ugs-footer-muted); font-size: 11px; }
.ugs-footer__legalnav{ display: flex; gap: var(--s-4); margin: 0; }
.ugs-footer__legalnav a{ text-transform: none; color: var(--ugs-footer-muted); font-size: 11px; padding: 0; }
.ugs-footer__legalnav a:hover{ color: #fff; }

/* Currency switcher — upward-opening dropdown, never pushes layout */
.ugs-footer__bottom{ overflow: visible; }                  /* allow dropdown to escape the black bar */
.ugs-footer__bottom-inner{ overflow: visible; position: relative; }
.ugs-footer__currency{ position: relative; overflow: visible; }
.ugs-footer__currency .widget{ padding: 0; margin: 0; background: transparent; border: 0; overflow: visible; }
.ugs-footer__currency .widget-title,
.ugs-footer__currency .widgettitle{ display: none; }

.ugs-footer__currency :is(select){
  font-family: "Lato", sans-serif; font-size: 11px; letter-spacing: .12em;
  text-transform: uppercase; color: var(--ugs-footer-body);
  background: transparent; border: 1px solid var(--ugs-footer-rule);
  padding: 6px 28px 6px 10px;
  appearance: none; -webkit-appearance: none;
  background-image: linear-gradient(45deg, transparent 50%, var(--ugs-footer-muted) 50%), linear-gradient(135deg, var(--ugs-footer-muted) 50%, transparent 50%);
  background-position: calc(100% - 14px) 55%, calc(100% - 9px) 55%;
  background-size: 5px 5px, 5px 5px;
  background-repeat: no-repeat;
  cursor: pointer;
}
.ugs-footer__currency :is(select) option{ color: #000; background: #fff; }

/* WPML / WCML / cs-currency-switcher style dropdowns — open upward */
.ugs-footer__currency .wcml_currency_switcher,
.ugs-footer__currency .wpml-ls-legacy-dropdown,
.ugs-footer__currency .cs-currency-switcher,
.ugs-footer__currency .currency-switcher,
.ugs-footer__currency .widget_cs_currency_switcher{
  position: relative;
}
.ugs-footer__currency .wcml_currency_switcher > ul,
.ugs-footer__currency .wpml-ls-sub-menu,
.ugs-footer__currency .cs-currency-switcher ul,
.ugs-footer__currency .currency-switcher ul,
.ugs-footer__currency ul.sub-menu,
.ugs-footer__currency .dropdown-menu{
  position: absolute !important;
  top: auto !important;
  bottom: calc(100% + 6px) !important;
  left: 0 !important; right: auto !important;
  min-width: 160px;
  max-height: 260px; overflow-y: auto;
  margin: 0; padding: 6px 0;
  background: #111; color: #fff;
  border: 1px solid var(--ugs-footer-rule);
  box-shadow: 0 -12px 32px rgba(0,0,0,.45);
  z-index: 120;
}
.ugs-footer__currency .wcml_currency_switcher > ul li,
.ugs-footer__currency .cs-currency-switcher ul li,
.ugs-footer__currency .wpml-ls-sub-menu li,
.ugs-footer__currency ul.sub-menu li,
.ugs-footer__currency .dropdown-menu li{ list-style: none; }
.ugs-footer__currency .wcml_currency_switcher a,
.ugs-footer__currency .cs-currency-switcher a,
.ugs-footer__currency .wpml-ls-sub-menu a,
.ugs-footer__currency ul.sub-menu a,
.ugs-footer__currency .dropdown-menu a{
  display: block; padding: 8px 14px;
  font-family: "Lato", sans-serif; font-size: 11px; letter-spacing: .12em;
  text-transform: uppercase; color: #fff; text-decoration: none;
}
.ugs-footer__currency .wcml_currency_switcher a:hover,
.ugs-footer__currency .cs-currency-switcher a:hover,
.ugs-footer__currency ul.sub-menu a:hover,
.ugs-footer__currency .dropdown-menu a:hover{ background: rgba(255,255,255,.06); }

/* Ultimate catch-all — ANY ul inside the switcher container opens upward.
   Plugins vary (woocs, wcml, cs-currency-switcher, aelia, ywccp) but the
   dropdown is almost always a <ul> child of the trigger. */
.ugs-footer__currency ul{
  position: absolute !important;
  top: auto !important;
  bottom: calc(100% + 6px) !important;
  left: 0 !important; right: auto !important;
  transform: none !important;
}
.ugs-footer__currency ul.js-ugs-up-flip{
  top: auto !important;
  bottom: calc(100% + 6px) !important;
  left: 0 !important;
}
/* Class added by JS on the body when currency dropdown is open — lifts stacking */
body.ugs-currency-open .ugs-footer__bottom{ z-index: 1000; position: relative; }

/* ---------- 20. OWL CAROUSEL overrides ---------- */
.ugs-carousel.owl-carousel .owl-item{ padding: 0 var(--s-2); }
.ugs-carousel.owl-carousel .owl-stage{ display: flex; }
.ugs-carousel.owl-carousel .owl-dots{ display: flex; justify-content: center; gap: 6px; margin-top: var(--s-4); }
.ugs-carousel.owl-carousel .owl-dot{ width: 24px; height: 2px; background: var(--c-border); transition: background var(--t-base); }
.ugs-carousel.owl-carousel .owl-dot.active{ background: var(--c-accent); }
.ugs-carousel.owl-carousel .owl-nav{ display: none; }

/* ==========================================================================
   23. GENDER HERO BANNER (full-length editorial banner for Men / Women)
   ========================================================================== */
.ugs-gbanner{
  position: relative;
  min-height: clamp(460px, 72vh, 760px);
  overflow: hidden;
  background: var(--c-fg-strong);
  color: #fff;
  display: flex; align-items: flex-end;
}
.ugs-gbanner__bg{
  position: absolute; inset: 0;
  background-size: cover; background-position: center;
  transform: scale(1.02);
  transition: transform 1800ms var(--ease-out);
}
.ugs-gbanner:hover .ugs-gbanner__bg{ transform: scale(1.05); }
.ugs-gbanner__overlay{
  position: absolute; inset: 0;
  background: linear-gradient(180deg, rgba(0,0,0,0) 35%, rgba(0,0,0,.45) 75%, rgba(0,0,0,.8) 100%);
}
.ugs-gbanner__inner{
  position: relative; z-index: 1;
  width: 100%;
  padding: var(--s-7) var(--gutter-m) var(--s-7);
  display: flex; align-items: flex-end; justify-content: space-between;
  gap: var(--s-6); flex-wrap: wrap;
}
@media (min-width: 1024px){
  .ugs-gbanner__inner{ padding: var(--s-9) var(--gutter-d); }
}
.ugs-gbanner__eyebrow{
  font-family: "Lato", sans-serif; font-size: 11px; font-weight: 500;
  letter-spacing: .22em; text-transform: uppercase;
  color: rgba(255,255,255,.7); display: block; margin-bottom: var(--s-3);
}
.ugs-gbanner__eyebrow em{ color: var(--c-accent); font-style: normal; }
.ugs-gbanner__title{
  font-family: "Lato", sans-serif; font-weight: 700;
  font-size: var(--fs-display);
  line-height: var(--lh-tight); letter-spacing: -.018em; color: #fff;
  margin: 0 0 var(--s-4); max-width: 18ch;
}
.ugs-gbanner__title em{ font-style: italic; font-weight: 700; color: var(--c-accent); }
.ugs-gbanner__sub{ color: rgba(255,255,255,.82); max-width: 48ch; font-size: var(--fs-lead); font-weight: 300; margin: 0 0 var(--s-5); }
.ugs-gbanner__cta{ display: flex; gap: var(--s-3); flex-wrap: wrap; }
.ugs-gbanner__meta{
  font-family: "Lato", sans-serif; font-size: 11px; letter-spacing: .22em;
  text-transform: uppercase; color: rgba(255,255,255,.55);
  display: flex; flex-direction: column; gap: 4px; text-align: right;
}
.ugs-gbanner__meta strong{ color: #fff; font-weight: 500; }

/* ==========================================================================
   23b. OVERLAY READABILITY — any heading/text placed over an image must be white
   ========================================================================== */
.ugs-hero, .ugs-hero *,
.ugs-gbanner, .ugs-gbanner *,
.ugs-catcard__cap, .ugs-catcard__cap *,
.ugs-collection__cap, .ugs-collection__cap *,
.ugs-discipline__caption, .ugs-discipline__caption *{
  text-shadow: 0 1px 2px rgba(0,0,0,.18);
}
.ugs-hero h1, .ugs-hero h2, .ugs-hero h3, .ugs-hero h4, .ugs-hero p, .ugs-hero span,
.ugs-gbanner h1, .ugs-gbanner h2, .ugs-gbanner h3, .ugs-gbanner h4,
.ugs-gbanner__title, .ugs-gbanner__eyebrow,
.ugs-catcard h1, .ugs-catcard h2, .ugs-catcard h3, .ugs-catcard h4,
.ugs-catcard__name, .ugs-catcard__num,
.ugs-collection__cap h1, .ugs-collection__cap h2, .ugs-collection__cap h3, .ugs-collection__cap h4,
.ugs-collection__cap p, .ugs-collection__cap span,
.ugs-discipline__caption h1, .ugs-discipline__caption h2, .ugs-discipline__caption h3, .ugs-discipline__caption h4,
.ugs-discipline__caption p, .ugs-discipline__caption span,
.ugs-discipline__caption strong{
  color: #fff !important;
}
/* Keep em-accent tokens visible — restore brand accent where used */
.ugs-hero__title em,
.ugs-gbanner__title em,
.ugs-gbanner__eyebrow em,
.ugs-collection__cap h3 em{
  color: var(--c-accent) !important;
}

.ugs-collection.ugs-collection--tall {
    aspect-ratio: 4 / 4.3;
}

/* ==========================================================================
   24. OUR PARTNERS — editorial "They Trust Us" grid (5 × 2, divider lines)
   ========================================================================== */
.ugs-partners{
  padding: var(--s-9) 0;
  background: #F5F4EF; /* warm paper, editorial */
  border-top: 1px solid var(--c-border);
  border-bottom: 1px solid var(--c-border);
}
.ugs-partners__head{
  max-width: 1100px;
  margin: 0 0 var(--s-7);
}
.ugs-partners__eyebrow{
  display: inline-block;
  font-family: "Lato", sans-serif; font-size: 11px;
  letter-spacing: .28em; text-transform: uppercase; font-weight: 600;
  color: var(--c-accent);
  margin-bottom: var(--s-5);
}
.ugs-partners__title{
  font-family: "Lato", sans-serif;
  font-weight: 500;
  font-size: clamp(44px, 4.4vw + 16px, 96px);
  line-height: 1.02;
  letter-spacing: -.02em;
  color: var(--c-fg-strong);
  margin: 0 0 var(--s-3);
}
.ugs-partners__rule{
  width: 72px; height: 2px;
  background: var(--c-accent);
  margin: var(--s-4) 0 var(--s-5);
}
.ugs-partners__desc{
  color: var(--c-fg); font-size: 17px; line-height: 1.6;
  max-width: 60ch; margin: 0;
}
.ugs-partners__grid{
  display: grid;
  grid-template-columns: 1fr;
  border-top: 1px solid rgba(10,10,10,.12);
}
@media (min-width: 640px){ .ugs-partners__grid{ grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 900px){ .ugs-partners__grid{ grid-template-columns: repeat(5, 1fr); } }
.ugs-partners__cell{
  min-height: 160px;
  display: flex; align-items: center; justify-content: center;
  padding: var(--s-6) var(--s-3);
  border-bottom: 1px solid rgba(10,10,10,.12);
  border-right: 1px solid rgba(10,10,10,.12);
  font-family:"Lato", sans-serif; font-weight: 400;
  font-size: 15px; letter-spacing: .22em; text-transform: uppercase;
  color: var(--c-muted);
  transition: color var(--t-base) var(--ease-out), background var(--t-base) var(--ease-out);
}
.ugs-partners__cell:hover{ color: var(--c-fg-strong); background: rgba(255,255,255,.5); }
/* last column — remove right border */
@media (min-width: 900px){
  .ugs-partners__grid .ugs-partners__cell:nth-child(5n){ border-right: 0; }
}
@media (min-width: 640px) and (max-width: 899px){
  .ugs-partners__grid .ugs-partners__cell:nth-child(2n){ border-right: 0; }
}
@media (max-width: 639px){
  .ugs-partners__cell{ border-right: 0; }
}

/* ==========================================================================
   25. REVIEWS — customer review slider with 5-star rating
   ========================================================================== */
.ugs-reviews{
  padding: var(--s-9) 0;
  background: var(--c-bg);
  border-bottom: 1px solid var(--c-border);
}
.ugs-reviews__head{
  display: flex; align-items: flex-end; justify-content: space-between;
  gap: var(--s-5); flex-wrap: wrap; margin-bottom: var(--s-7);
}
.ugs-reviews__summary{
  display: flex; gap: var(--s-4); align-items: center; flex-wrap: wrap;
  font-family: "Lato", sans-serif; font-size: 12px;
  letter-spacing: .14em; text-transform: uppercase; color: var(--c-muted);
}
.ugs-reviews__score{
  font-family: "Lato", sans-serif; font-weight: 700; font-size: 28px;
  color: var(--c-fg-strong); letter-spacing: -.018em; line-height: 1;
}
.ugs-reviews__stars{ display: inline-flex; gap: 2px; color: var(--c-accent); font-size: 16px; letter-spacing: 2px; }
.ugs-reviews__stars--lg{ font-size: 20px; }
.ugs-reviews__count{ color: var(--c-fg); }

.ugs-review{
  background: #fff;
  border: 1px solid var(--c-border);
  padding: var(--s-6) var(--s-5);
  height: 100%;
  display: flex; flex-direction: column; gap: var(--s-4);
  transition: border-color var(--t-base) var(--ease-out), box-shadow var(--t-base) var(--ease-out);
}
.ugs-review:hover{ border-color: var(--c-fg-strong); box-shadow: 0 12px 32px -12px rgba(10,10,10,.1); }
.ugs-review__stars{ color: var(--c-accent); font-size: 15px; letter-spacing: 3px; }
.ugs-review__title{
  font-family: "Lato", sans-serif; font-weight: 700; font-size: 17px;
  color: var(--c-fg-strong); margin: 0; line-height: 1.25; letter-spacing: -.01em;
}
.ugs-review__quote{
  margin: 0; color: var(--c-fg); font-size: 15px; line-height: 1.6;
  font-weight: 300;
}
.ugs-review__foot{
  margin-top: auto; padding-top: var(--s-4); border-top: 1px solid var(--c-border);
  display: flex; flex-wrap: wrap; align-items: center; gap: 8px 10px;
  font-family: "Lato", sans-serif; font-size: 11px; letter-spacing: .14em;
  text-transform: uppercase; color: var(--c-muted);
  line-height: 1.2;
}
.ugs-review__name{ color: var(--c-fg-strong); font-weight: 600; }
.ugs-review__badge{
  display: inline-flex; align-items: center;
  padding: 3px 8px;
  background: var(--c-accent);
  color: #fff;
  font-size: 9.5px; letter-spacing: .16em; font-weight: 700;
  border-radius: 2px;
  white-space: nowrap;
}
.ugs-review__sep{ color: var(--c-border); font-family: "Lato", sans-serif; }
.ugs-review__product{
  color: var(--c-muted);
  flex: 1 1 100%;
  font-size: 10.5px; letter-spacing: .14em;
}
@media (min-width: 480px){
  .ugs-review__product{ flex: 0 1 auto; }
}

/* ---------- Reviews · score block + distribution bars ---------- */
.ugs-reviews__score-wrap{
  display: inline-flex; align-items: baseline; gap: 8px;
}
.ugs-reviews__score-meta{
  font-family: "Lato", sans-serif; font-size: 11px; letter-spacing: .14em;
  text-transform: uppercase; color: var(--c-muted);
}
.ugs-reviews__dist{
  display: grid; gap: 8px;
  max-width: 560px;
  margin: 0 0 var(--s-7);
  padding: var(--s-5);
  background: var(--c-surface-alt);
  border: 1px solid var(--c-border);
}
.ugs-reviews__row{
  display: grid;
  grid-template-columns: 48px 1fr 120px;
  align-items: center; gap: 12px;
  font-family: "Lato", sans-serif; font-size: 11px; letter-spacing: .12em;
  text-transform: uppercase; color: var(--c-fg-strong);
}
.ugs-reviews__row-label{ font-weight: 700; color: var(--c-fg-strong); white-space: nowrap; }
.ugs-reviews__row-label span{ color: var(--c-accent); margin-left: 2px; }
.ugs-reviews__bar{
  position: relative; display: block; height: 8px;
  background: #e9ecef; border-radius: 1px; overflow: hidden;
}
.ugs-reviews__bar-fill{
  position: absolute; inset: 0 auto 0 0; height: 100%;
  background: var(--c-accent);
  transition: width 600ms var(--ease-out);
}
.ugs-reviews__row-count{ text-align: right; color: var(--c-fg-strong); font-weight: 600; }
.ugs-reviews__row-pct{ color: var(--c-muted); font-weight: 400; margin-left: 4px; }

.ugs-reviews__carousel-head{
  display: flex; align-items: center; justify-content: space-between;
  gap: var(--s-4); margin-bottom: var(--s-5);
}

/* ---------- Reviews · new Owl markup (.all_product_reviews .review-box) ---------- */
/* Equal-height tiles: Owl needs the stage to stretch all items to match the tallest. */
.all_product_reviews{ display: block; }
.all_product_reviews .owl-stage{ display: flex; align-items: stretch; }
.all_product_reviews .owl-item{ display: flex; height: auto; }
.all_product_reviews .owl-item > .item{ width: 100%; display: flex; }
.all_product_reviews .item{ width: 100%; }

.all_product_reviews .review-box{
  background: #fff;
  border: 1px solid var(--c-border);
  padding: var(--s-6) var(--s-5);
  width: 100%;
  min-height: 280px;
  display: flex; flex-direction: column; gap: var(--s-4);
  transition: border-color var(--t-base) var(--ease-out), box-shadow var(--t-base) var(--ease-out), transform var(--t-base) var(--ease-out);
  position: relative;
}
.all_product_reviews .review-box:hover{
  box-shadow: 0 12px 32px -12px rgba(10,10,10,.10);
  transform: translateY(-2px);
}

/* Unicode-glyph stars (independent of Woo's star.eot font) */
.all_product_reviews .review-stars{
  display: inline-flex; align-items: center;
  color: var(--c-accent);
  font-size: 18px; letter-spacing: 4px; line-height: 1;
}

/* Body text — clamped to keep all tiles the same height visually */
.all_product_reviews .review-body{
  margin: 0;
  color: var(--c-fg);
  font-size: 15px; line-height: 1.6; font-weight: 400;
  flex: 1 1 auto;
  /* Clamp to 6 lines */
  display: -webkit-box;
  -webkit-line-clamp: 6;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* Footer block: avatar + name/date + verified */
.all_product_reviews .review-box-head{
  display: flex; align-items: center; gap: 12px;
  padding-top: var(--s-4);
  margin-top: auto;
  border-top: 1px solid var(--c-border);
}
.all_product_reviews .review-avatar{
  width: 40px; height: 40px;
  flex: 0 0 40px;
  border-radius: 50%;
  object-fit: cover;
  background: var(--c-surface-alt);
}
.all_product_reviews .review-avatar--initials{
  display: inline-flex; align-items: center; justify-content: center;
  background: var(--c-fg-strong); color: #fff;
  font-family:"Lato", sans-serif; font-weight: 700; font-size: 13px;
  letter-spacing: 0;
  text-transform: uppercase;
}
.all_product_reviews .review-box-meta{
  display: flex; flex-direction: column; gap: 2px;
  flex: 1 1 auto; min-width: 0;
}
.all_product_reviews .review-author{
  color: var(--c-fg-strong); font-family: "Lato", sans-serif;
  font-weight: 700; font-size: 14px; letter-spacing: -.005em;
  text-transform: none;
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
  max-width: 100%;
}
.all_product_reviews .review-date{
  color: var(--c-muted);
  font-family: "Lato", sans-serif;
  font-size: 10.5px; letter-spacing: .14em; text-transform: uppercase;
}
.all_product_reviews .review-verified{
  flex: 0 0 auto;
  display: inline-flex; align-items: center;
  padding: 4px 8px;
  background: var(--c-accent); color: #fff;
  font-family: "Lato", sans-serif;
  font-size: 9.5px; letter-spacing: .16em; font-weight: 700;
  text-transform: uppercase;
  border-radius: 2px; white-space: nowrap;
}

/* ---------- Activity · Owl carousel overrides ---------- */
/* The .ugs-activity__track was a CSS grid; now it's an Owl carousel.
   Owl injects .owl-stage > .owl-item, so the snap-grid rules don't apply.
   Reset display to let Owl take over but keep the card visuals. */
.ugs-activity .owl-carousel{
  display: block;
  grid-template-columns: none;
  grid-auto-flow: unset;
  grid-auto-columns: unset;
  overflow: visible;
  padding-bottom: 0;
}
.ugs-activity .owl-carousel .owl-stage{ display: flex; }
.ugs-activity .owl-carousel .owl-item{ display: flex; }
.ugs-activity .owl-carousel .ugs-activity__card{ width: 100%; }
.ugs-activity .owl-dots{ margin-top: var(--s-4); }

/* ---------- 21. RESPONSIVE TUNING ---------- */
@media (max-width: 767px){
  .ugs-hero{ height: 78vh; min-height: 560px; }
  .ugs-hero__inner{ padding-bottom: var(--s-8); }
  .ugs-hero__sub{ font-size: 15px; }
  .ugs-hero__cta{ flex-direction: column; align-items: flex-start; gap: var(--s-3); }
  .ugs-hero__cta .ugs-btn{ width: 100%; justify-content: center; }

  .ugs-split, .ugs-prods, .ugs-activity, .ugs-feature, .ugs-collections, .ugs-disciplines, .ugs-newsletter{ padding: var(--s-7) 0; }

  .ugs-section-head__aside{ width: 100%; justify-content: space-between; }
  .ugs-feature__specs{ grid-template-columns: 1fr 1fr; }
  .ugs-press__row{ gap: var(--s-3); }
  .ugs-press__row span{ flex: 1 1 40%; text-align: center; }

  .ugs-newsletter__form{ max-width: 100%; }
  .ugs-newsletter__form form,
  .ugs-newsletter__form .mc4wp-form{ grid-template-columns: 1fr; gap: var(--s-3); }
  .ugs-newsletter__form input[type="email"],
  .ugs-newsletter__form input[type="text"]{ border-right: 1px solid rgba(255,255,255,.4); }

  .ugs-gbanner{ min-height: 78vh; }
  .ugs-gbanner__inner{ flex-direction: column; align-items: flex-start; }
  .ugs-gbanner__meta{ text-align: left; flex-direction: row; gap: var(--s-3); flex-wrap: wrap; }
  .ugs-gbanner__cta{ width: 100%; flex-direction: column; align-items: stretch; }
  .ugs-gbanner__cta .ugs-btn{ width: 100%; justify-content: center; }

  .ugs-partners{ padding: var(--s-7) 0; }
  .ugs-partners__cell{ min-height: 120px; font-size: 13px; }

  .ugs-reviews{ padding: var(--s-7) 0; }
  .ugs-reviews__summary{ width: 100%; }
  .ugs-review{ padding: var(--s-5) var(--s-4); }
  .ugs-reviews__dist{ padding: var(--s-4); }
  .ugs-reviews__row{ grid-template-columns: 38px 1fr 90px; gap: 8px; font-size: 10px; }
  .all_product_reviews .review-box{ padding: var(--s-5) var(--s-4); }
  .ugs-footer__bottom-inner{ gap: var(--s-3); }
  .ugs-footer__bottom-inner .ugs-footer__legalnav{ order: 3; width: 100%; }
}

/* ---------- 22. REDUCED MOTION ---------- */
@media (prefers-reduced-motion: reduce){
  *, *::before, *::after{
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
    scroll-behavior: auto !important;
  }
  .ugs-hero__slide{ transform: none !important; }
}

/* ---------- 23. SCROLL LOCK ---------- */
body.ugs-nav-open{ overflow: hidden; }

/* ---------- 24. AOS SAFETY NET ----------
   If AOS misses an element (deferred scripts, fast scroll, JS error),
   make sure these critical sections are still visible. */
.ugs-collection[data-aos]:not(.aos-animate),
.ugs-discipline[data-aos]:not(.aos-animate),
.ugs-activity__card[data-aos]:not(.aos-animate),
.ugs-feature [data-aos]:not(.aos-animate),
.ugs-feature__media[data-aos]:not(.aos-animate),
.ugs-feature__copy[data-aos]:not(.aos-animate){ opacity: 1 !important; transform: none !important; }

/* ---------- 25. SUBSCRIBE MODAL (vanilla, Bootstrap-free) ----------
   Custom dialog that wraps the MailerLite embed (data-form="rbKxWr").
   Trigger: any element with .js-ugs-subscribe-open in the footer. */
.ugs-modal{
  position: fixed; inset: 0; z-index: 1100;
  display: none;
  align-items: center; justify-content: center;
  padding: 24px;
}
.ugs-modal.is-open{ display: flex; }
.ugs-modal__scrim{
  position: absolute; inset: 0;
  background: rgba(8,8,10,.72);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  cursor: pointer;
}
.ugs-modal__panel{
  position: relative; z-index: 1;
  width: 100%; max-width: 520px;
  max-height: 92vh; overflow: auto;
  background: #fff;
  border-radius: 8px;
  box-shadow: 0 30px 80px rgba(0,0,0,.45);
  animation: ugsModalIn .28s ease-out both;
}
@keyframes ugsModalIn{
  from { opacity: 0; transform: translateY(12px) scale(.98); }
  to   { opacity: 1; transform: translateY(0) scale(1); }
}
.ugs-modal__close{
  position: absolute; top: 10px; right: 10px;
  width: 36px; height: 36px;
  display: inline-flex; align-items: center; justify-content: center;
  background: transparent; border: 0;
  font-size: 28px; line-height: 1;
  color: #1a1a1a; cursor: pointer;
  border-radius: 50%;
  transition: background .15s ease;
}
.ugs-modal__close:hover{ background: rgba(0,0,0,.06); }
.ugs-modal__body{ padding: 36px 32px 28px; }
.ugs-modal__title{
  margin: 6px 0 8px;
  font-size: clamp(1.5rem, 2.2vw, 1.9rem);
  line-height: 1.15;
}
.ugs-modal__sub{
  margin: 0 0 18px;
  color: #555;
  font-size: .95rem; line-height: 1.5;
}
.ugs-modal .ml-embedded{ width: 100%; }
.ugs-modal .ml-embedded iframe,
.ugs-modal .ml-embedded form{ width: 100% !important; max-width: 100% !important; }
@media (max-width: 480px){
  .ugs-modal{ padding: 12px; }
  .ugs-modal__body{ padding: 28px 20px 22px; }
}
body.ugs-modal-open{ overflow: hidden; }
