:root {
  --kgl-bft-ink: #110811;
  --kgl-bft-muted: #5f5960;
  --kgl-bft-line: #e6e6e6;
  --kgl-bft-paper: #fff;
  --kgl-bft-soft: #f7f7f7;
  --kgl-bft-orange: #d35400;
  --kgl-bft-green: #1b2631;
}

@media(max-width:749px){
  .kgl-product-static{grid-template-columns:1fr;gap:24px;padding:0 16px 40px;min-height:0}
  .kgl-product-static h1{font-size:28px}
  .kgl-product-static p:last-child{font-size:15px}
}

body { font-family: "Work Sans", Arial, sans-serif; }
.kgl-page-title,
.kgl-product-info h1,
.kgl-product-description h2,
.kgl-related > h2,
.kgl-cart-page h1,
.kgl-contact-copy h1,
.kgl-content-page h1,
.kgl-content-page h2,
.kgl-success-card h1 { font-family: "Instrument Sans", "Work Sans", Arial, sans-serif; }

.kgl-site-header {
  width: min(100% - 48px, 1352px);
  min-height: 86px;
  grid-template-columns: 62px minmax(0, 1fr) auto;
}
.kgl-site-logo,
.kgl-site-logo img { width: 52px; height: 52px; }
.kgl-site-nav { justify-content: flex-start; gap: clamp(18px, 2vw, 31px); }
.kgl-site-nav a { font-size: 15px; color: #110811; }
.kgl-site-nav a:nth-child(2),
.kgl-site-nav a:nth-child(3) { color: #a53f00; font-weight: 700; }
.kgl-cart-count { background: #d35400 !important; }

.kgl-catalog,
.kgl-cart-page,
.kgl-contact-page,
.kgl-product-page,
.kgl-content-page {
  width: min(100% - 48px, 1320px);
}
.kgl-page-kicker { color: #a53f00; }
.kgl-card__price { color: #a53f00; }
.kgl-buy-button,
.kgl-checkout-button,
.kgl-form-button { background: #1b2631; }
.kgl-buy-button:hover,
.kgl-checkout-button:hover,
.kgl-form-button:hover { background: #a53f00; }

/* Theme input rules give text fields an intrinsic minimum width. Without this
   override the quantity input forces its 118px grid wider than its column and
   places the + control underneath Add to basket. */
.kgl-qty { grid-template-columns: 36px minmax(0, 1fr) 36px; overflow: hidden; }
.kgl-qty input { width: 100%; min-width: 0; }
.kgl-buy-now,
.kgl-card__buy {
  min-height: 48px;
  border: 1px solid #d35400;
  background: #d35400;
  color: #fff;
  font: inherit;
  font-weight: 750;
  cursor: pointer;
}
.kgl-buy-now { width: 100%; margin-top: 12px; }
.kgl-card__buy { width: 100%; margin-top: 12px; }
.kgl-buy-now:hover,
.kgl-card__buy:hover { border-color: #1b2631; background: #1b2631; }
.kgl-buy-now:disabled,
.kgl-card__buy:disabled { cursor: not-allowed; opacity: .55; }

.kgl-trust-list {
  display: grid;
  gap: 10px;
  margin: 26px 0 0;
  padding: 20px;
  border: 1px solid var(--kgl-bft-line);
  list-style: none;
  color: #383239;
  font-size: 14px;
}
.kgl-trust-list li::before { content: "✓"; margin-right: 10px; color: #238636; font-weight: 800; }

.kgl-content-page {
  margin-inline: auto;
  padding-block: clamp(48px, 7vw, 96px);
}
.kgl-content-page__inner { max-width: 900px; margin-inline: auto; }
.kgl-content-page h1 { margin: 0 0 30px; font-size: clamp(42px, 7vw, 78px); line-height: 1; letter-spacing: -.045em; }
.kgl-content-page h2 { margin: 42px 0 14px; font-size: clamp(27px, 4vw, 42px); line-height: 1.12; letter-spacing: -.03em; }
.kgl-content-page h3 { margin: 30px 0 10px; font-size: 21px; }
.kgl-content-page p,
.kgl-content-page li { color: #373138; font-size: 16px; line-height: 1.75; }
.kgl-content-page a { color: #a53f00; }
.kgl-content-page img { max-width: 100%; height: auto; }

.kgl-contact-page { align-items: start; }
.kgl-contact-copy h1{font-size:clamp(42px,6.4vw,76px);line-height:.98;letter-spacing:-.045em;margin:0 0 24px}
.kgl-contact-copy p{max-width:620px;color:#4c4650;font-size:17px;line-height:1.65}
.dyu-support-note{padding:14px 16px;border-left:4px solid #a53f00;background:#fff7f1;color:#1b2631!important}
.kgl-contact-form-wrap{border:1px solid var(--kgl-bft-line);border-radius:8px;background:#fff;padding:clamp(22px,3vw,34px);box-shadow:0 16px 40px #1111110d}
.kgl-contact-form-wrap h2{margin:0 0 22px;font-family:"Instrument Sans","Work Sans",Arial,sans-serif;font-size:clamp(26px,3vw,34px);line-height:1.1;letter-spacing:-.03em}
.kgl-contact-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.kgl-contact-form label:has(textarea),
.kgl-contact-form label:has(select),
.kgl-contact-form .dyu-confirm-row,
.kgl-contact-form .kgl-form-button,
.kgl-contact-form .kgl-form-status{grid-column:1/-1}
.kgl-contact-form label { display: grid; gap: 8px; font-size: 14px; font-weight: 650; }
.kgl-contact-form .dyu-confirm-row{display:grid;grid-template-columns:20px minmax(0,1fr);align-items:start;column-gap:10px;padding:14px 0;color:#4c4650;font-weight:500;line-height:1.5}
.kgl-contact-form .dyu-confirm-row input{min-height:20px;margin-top:2px}
.kgl-contact-form input,
.kgl-contact-form select,
.kgl-contact-form textarea,
.kgl-order-form input,
.kgl-order-form textarea {
  min-height: 50px;
  padding: 12px 14px;
  border: 1px solid #1b2631;
  border-radius: 8px;
  background: #fff;
  color: #110811;
  font: inherit;
}
.kgl-contact-form textarea { min-height: 150px; }
.kgl-form-status { min-height: 24px; margin: 0; color: #245c2c; }
.dyu-support-details{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:24px}
.dyu-support-details section{border-top:1px solid var(--kgl-bft-line);padding-top:24px}
.dyu-support-details h2{margin:0 0 12px;font-family:"Instrument Sans","Work Sans",Arial,sans-serif;font-size:clamp(22px,2.2vw,30px);line-height:1.12;letter-spacing:-.025em}
.dyu-support-details p,.dyu-support-details li{color:#4c4650;font-size:15px;line-height:1.65}
.dyu-support-details ul{margin:0;padding-left:18px}

.kgl-cart-qty { width: 68px; min-height: 38px; padding: 4px 8px; border: 1px solid #bbb; }
.kgl-checkout-note { color: #716b72; font-size: 12px; line-height: 1.5; }
.kgl-inline-button { display: inline-grid; place-items: center; margin-top: 24px; text-decoration: none; }

.kgl-success-root { width: min(100% - 48px, 920px); margin: 0 auto; padding: clamp(60px, 10vw, 130px) 0; }
.kgl-success-card { padding: clamp(30px, 6vw, 70px); border: 1px solid var(--kgl-bft-line); background: #fff; text-align: center; }
.kgl-success-card h1 { margin: 10px 0 18px; font-size: clamp(42px, 7vw, 72px); line-height: 1; letter-spacing: -.045em; }
.kgl-success-card > p { max-width: 620px; margin-inline: auto; color: #4e474f; line-height: 1.7; }
.kgl-success-icon { width: 70px; height: 70px; margin: 0 auto 20px; display: grid; place-items: center; border-radius: 50%; background: #238636; color: #fff; font-size: 34px; }

@media (max-width: 900px) {
  .kgl-site-header { width: min(100% - 32px, 1352px); grid-template-columns: 44px 1fr auto; min-height: 76px; }
  .kgl-site-logo,
  .kgl-site-logo img { width: 42px; height: 42px; }
  .kgl-content-page,
  .kgl-success-root { width: min(100% - 36px, 1320px); }
  .kgl-contact-form,
  .dyu-support-details{grid-template-columns:1fr}
  .kgl-contact-form-wrap{padding:20px}
}

/* ==========================================================================
   URLIFE-STYLE CONVERSION ENGINE COMPONENTS (DYU ACCENTS)
   ========================================================================== */

/* Price Card */
.urlife-price-card {
  border: 1px solid var(--kgl-bft-line);
  border-radius: 12px;
  padding: 20px 24px;
  background-color: #ffffff;
  margin-bottom: 20px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.03);
}
.urlife-price-card .price-row {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px;
}
.urlife-price-card .price-current {
  color: #111111;
  font-size: 1.85rem;
  font-weight: 800;
  font-family: "Instrument Sans", sans-serif;
}
.urlife-price-card .price-compare {
  text-decoration: line-through;
  color: #767676;
  font-size: 1.15rem;
}
.urlife-price-card .badge-discount {
  background-color: #d23f3f;
  color: #ffffff;
  font-size: 0.75rem;
  font-weight: 700;
  padding: 3px 8px;
  border-radius: 4px;
  text-transform: uppercase;
}
.urlife-price-card .promo-row {
  margin-top: 10px;
  font-size: 0.875rem;
  color: #5f5960;
  border-top: 1px solid #f1f1f1;
  padding-top: 10px;
}
.urlife-price-card .promo-code {
  font-weight: 700;
  color: #a53f00;
  background-color: #fdf5f0;
  border: 1px dashed #e59a6d;
  padding: 2px 6px;
  border-radius: 4px;
  transition: all 0.2s ease;
  user-select: all;
  display: inline-block;
}
.urlife-price-card .promo-code:hover {
  background-color: #f9e2d2;
}

/* Tagline Badge */
.kgl-product-tagline {
  display: inline-block;
  background: #110811;
  color: #fff;
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding: 4px 10px;
  border-radius: 4px;
  margin-top: 8px;
  margin-bottom: 12px;
}

/* Trust/Benefits Card */
.urlife-benefits-card {
  border: 1px solid var(--kgl-bft-line);
  border-radius: 12px;
  padding: 16px;
  background-color: #ffffff;
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-bottom: 20px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.03);
}
.urlife-benefits-card .benefit-row {
  display: flex;
  align-items: center;
  background-color: #f7f7f9;
  border-radius: 8px;
  padding: 12px 16px;
  gap: 12px;
  border: 1px solid #f0f0f2;
}
.urlife-benefits-card .benefit-icon {
  width: 20px;
  height: 20px;
  color: #1b2631;
  flex-shrink: 0;
  fill: none;
}
.urlife-benefits-card .benefit-text {
  font-size: 0.875rem;
  color: #110811;
  font-weight: 550;
  line-height: 1.4;
}
.urlife-benefits-card .highlight-date {
  color: #d23f3f;
  font-weight: 700;
}

/* Variant Selector Layout */
.urlife-variant-selector {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-bottom: 20px;
}
.urlife-variant-selector .variant-label {
  font-size: 0.875rem;
  font-weight: 700;
  color: #111111;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
.urlife-variant-selector .select-wrapper {
  position: relative;
  width: 100%;
}
.urlife-variant-selector .select-wrapper::after {
  content: "";
  position: absolute;
  right: 18px;
  top: 50%;
  width: 8px;
  height: 8px;
  border-right: 2px solid #5f5960;
  border-bottom: 2px solid #5f5960;
  transform: translateY(-70%) rotate(45deg);
  pointer-events: none;
}
.urlife-variant-selector .variant-select {
  width: 100%;
  padding: 12px 20px;
  border: 1px solid #c0c0c0;
  border-radius: 8px;
  font-size: 1rem;
  font-weight: 500;
  background-color: #ffffff;
  appearance: none;
  cursor: pointer;
  outline: none;
  transition: border-color 0.2s ease;
}
.urlife-variant-selector .variant-select:focus {
  border-color: #1b2631;
}

/* Quantity Selector & Add to Cart button styles */
.urlife-buy-controls {
  display: flex;
  gap: 16px;
  margin-top: 10px;
  margin-bottom: 12px;
}
.urlife-quantity-selector {
  display: flex;
  align-items: center;
  border: 1px solid #c0c0c0;
  border-radius: 8px;
  width: 130px;
  overflow: hidden;
  height: 52px;
  background-color: #ffffff;
  flex-shrink: 0;
}
.urlife-quantity-selector .qty-btn {
  width: 40px;
  height: 100%;
  border: none;
  background: transparent;
  font-size: 1.25rem;
  font-weight: 500;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #111111;
  transition: background-color 0.2s ease;
}
.urlife-quantity-selector .qty-btn:hover {
  background-color: #f7f7f7;
}
.urlife-quantity-selector .qty-input {
  width: 50px;
  height: 100%;
  border: none;
  background: transparent;
  text-align: center;
  font-size: 1rem;
  font-weight: 700;
  outline: none;
  color: #111111;
  pointer-events: none;
}
.urlife-add-to-cart-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  background-color: #1b2631;
  color: #ffffff;
  border: none;
  border-radius: 8px;
  padding: 12px 24px;
  font-size: 1.05rem;
  font-weight: 700;
  cursor: pointer;
  flex-grow: 1;
  height: 52px;
  transition: all 0.25s ease;
}
.urlife-add-to-cart-btn:hover {
  background-color: #a53f00;
}
.urlife-add-to-cart-btn:disabled {
  background-color: #c8c8c8;
  cursor: not-allowed;
}
.urlife-add-to-cart-btn .cart-icon {
  width: 18px;
  height: 18px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
}

/* Buy with Confidence Card */
.urlife-confidence-card {
  border: 1px solid var(--kgl-bft-line);
  border-radius: 12px;
  padding: 24px;
  background-color: #ffffff;
  margin-top: 24px;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.03);
}
.urlife-confidence-card .card-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 16px;
  flex-wrap: wrap;
  gap: 8px;
}
.urlife-confidence-card .card-title {
  font-size: 1.15rem;
  font-weight: 800;
  color: #111111;
  margin: 0;
  font-family: "Instrument Sans", sans-serif;
  letter-spacing: -0.02em;
}
.urlife-confidence-card .badge-stock {
  color: #137333;
  font-size: 0.85rem;
  font-weight: 700;
  display: flex;
  align-items: center;
  gap: 6px;
}
.urlife-confidence-card .stock-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: #137333;
  animation: pulse-green 2s infinite;
}
@keyframes pulse-green {
  0% { transform: scale(0.95); box-shadow: 0 0 0 0 rgba(19, 115, 51, 0.7); }
  70% { transform: scale(1); box-shadow: 0 0 0 5px rgba(19, 115, 51, 0); }
  100% { transform: scale(0.95); box-shadow: 0 0 0 0 rgba(19, 115, 51, 0); }
}
.urlife-confidence-card .promo-banner {
  background-color: #eef9f2;
  color: #137333;
  border: 1px solid #d0f0db;
  border-radius: 8px;
  padding: 12px 16px;
  font-size: 0.875rem;
  line-height: 1.45;
  margin-bottom: 20px;
}
.urlife-confidence-card .highlight-code {
  font-weight: 700;
  background-color: #d0f0db;
  padding: 1px 5px;
  border-radius: 4px;
}
.urlife-confidence-card .info-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}
.urlife-confidence-card .grid-item {
  display: flex;
  flex-direction: column;
}
.urlife-confidence-card .item-title {
  font-weight: 750;
  font-size: 0.9rem;
  color: #111111;
  margin: 0 0 4px 0;
  text-transform: uppercase;
  letter-spacing: 0.03em;
}
.urlife-confidence-card .item-text {
  font-size: 0.8125rem;
  color: #5f5960;
  line-height: 1.45;
  margin: 0;
}
.urlife-confidence-card .link-contact {
  color: #111111;
  text-decoration: underline;
  font-weight: 700;
}
.urlife-confidence-card .card-footer {
  margin-top: 20px;
  padding-top: 12px;
  border-top: 1px solid #f1f1f1;
  font-size: 0.78rem;
  color: #716b72;
  line-height: 1.45;
}

/* Express Checkout Section */
.urlife-express-checkout {
  margin-top: 12px;
  margin-bottom: 12px;
}
.urlife-express-checkout .kgl-buy-now {
  margin-top: 0;
  border-radius: 8px;
  border: 1px solid #1b2631;
  background: #ffffff;
  color: #1b2631;
  font-weight: 700;
  height: 52px;
  font-size: 1rem;
  transition: all 0.25s ease;
}
.urlife-express-checkout .kgl-buy-now:hover {
  background: #1b2631;
  color: #ffffff;
}

/* Cart Drawer slide-in and backdrop overlay styling */
.kgl-cart-drawer-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0.4);
  z-index: 99999;
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s cubic-bezier(0.32, 0.72, 0, 1);
}
.kgl-cart-drawer-overlay.is-visible {
  opacity: 1;
  visibility: visible;
}
.kgl-cart-drawer {
  position: fixed;
  top: 0;
  right: 0;
  width: 100%;
  max-width: 480px;
  height: 100vh;
  background-color: #ffffff;
  z-index: 100000;
  box-shadow: -10px 0 30px rgba(0, 0, 0, 0.1);
  transform: translateX(100%);
  transition: transform 0.3s cubic-bezier(0.32, 0.72, 0, 1);
  display: flex;
  flex-direction: column;
}
.kgl-cart-drawer-overlay.is-visible .kgl-cart-drawer {
  transform: translateX(0);
}
.cart-drawer-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 20px 24px;
  border-bottom: 1px solid var(--kgl-bft-line);
}
.cart-drawer-header h2 {
  margin: 0;
  font-size: 1.35rem;
  font-weight: 700;
  font-family: "Instrument Sans", sans-serif;
}
.cart-drawer-close {
  background: none;
  border: none;
  font-size: 2rem;
  cursor: pointer;
  color: #110811;
  padding: 0;
  line-height: 1;
}
.cart-drawer-body {
  flex-grow: 1;
  overflow-y: auto;
  padding: 20px 24px;
}
.cart-drawer-empty {
  text-align: center;
  padding: 40px 20px;
}
.cart-drawer-empty h3 {
  margin: 0 0 10px 0;
  font-size: 1.15rem;
  color: #110811;
}
.cart-drawer-empty p {
  color: #5f5960;
  font-size: 0.9rem;
  margin-bottom: 20px;
}
.cart-drawer-item {
  display: grid;
  grid-template-columns: 80px 1fr auto;
  gap: 16px;
  padding-bottom: 16px;
  margin-bottom: 16px;
  border-bottom: 1px solid #f1f1f1;
}
.cart-drawer-item img {
  width: 80px;
  height: 80px;
  object-fit: contain;
  border-radius: 6px;
  background-color: #f7f7f7;
}
.cart-drawer-item-details h4 {
  margin: 0 0 4px 0;
  font-size: 0.95rem;
  font-weight: 600;
  line-height: 1.35;
}
.cart-drawer-item-details h4 a {
  color: inherit;
  text-decoration: none;
}
.cart-drawer-item-details .item-variant {
  font-size: 0.8rem;
  color: #5f5960;
  margin-bottom: 8px;
}
.cart-drawer-item-details .qty-controls {
  display: flex;
  align-items: center;
  border: 1px solid #cfcfcf;
  border-radius: 4px;
  width: fit-content;
  overflow: hidden;
}
.cart-drawer-item-details .qty-btn {
  background: transparent;
  border: none;
  width: 26px;
  height: 26px;
  font-size: 0.9rem;
  cursor: pointer;
}
.cart-drawer-item-details .qty-input {
  width: 32px;
  height: 26px;
  border: none;
  text-align: center;
  font-size: 0.85rem;
  font-weight: 600;
  background: transparent;
  pointer-events: none;
}
.cart-drawer-item .item-price {
  font-weight: 700;
  font-size: 0.95rem;
  text-align: right;
}
.cart-drawer-item .item-remove {
  display: block;
  font-size: 0.75rem;
  color: #d23f3f;
  background: none;
  border: none;
  cursor: pointer;
  padding: 0;
  margin-top: 8px;
  text-decoration: underline;
}
.cart-drawer-footer {
  padding: 24px;
  border-top: 1px solid var(--kgl-bft-line);
  background-color: #fafafa;
}
.cart-drawer-footer .drawer-summary-line {
  display: flex;
  justify-content: space-between;
  margin-bottom: 12px;
  font-size: 0.95rem;
}
.cart-drawer-footer .drawer-summary-total {
  font-size: 1.15rem;
  font-weight: 800;
  margin-top: 8px;
  padding-top: 8px;
  border-top: 1px solid #e9e9e9;
}
.cart-drawer-footer .checkout-note {
  font-size: 0.75rem;
  color: #716b72;
  margin-top: 12px;
  text-align: center;
}
.cart-drawer-footer .promo-cart-banner {
  background-color: #fdf5f0;
  border: 1px dashed #e59a6d;
  color: #a53f00;
  font-size: 0.82rem;
  padding: 8px 12px;
  border-radius: 6px;
  margin-bottom: 16px;
  font-weight: 600;
  text-align: center;
}

/* Carousel Gallery styles */
.kgl-product-gallery {
  position: relative;
  overflow: hidden;
}
.kgl-carousel-wrapper {
  position: relative;
  width: 100%;
  aspect-ratio: 1.16 / 1;
  background-color: #f7f7f9;
  border-radius: 12px;
  overflow: hidden;
  border: 1px solid var(--kgl-bft-line);
}
.kgl-carousel-items {
  width: 100%;
  height: 100%;
  display: flex;
  transition: transform 0.3s cubic-bezier(0.32, 0.72, 0, 1);
}
.kgl-carousel-item {
  min-width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.kgl-carousel-item img,
.kgl-carousel-item video {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  width: auto;
  height: auto;
}
.kgl-carousel-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background-color: rgba(255, 255, 255, 0.85);
  border: 1px solid rgba(0, 0, 0, 0.1);
  width: 44px;
  height: 44px;
  border-radius: 50%;
  cursor: pointer;
  display: grid;
  place-items: center;
  z-index: 10;
  transition: all 0.2s ease;
}
.kgl-carousel-arrow:hover {
  background-color: #ffffff;
  box-shadow: 0 4px 10px rgba(0,0,0,0.1);
}
.kgl-carousel-arrow-prev {
  left: 16px;
}
.kgl-carousel-arrow-next {
  right: 16px;
}
.kgl-carousel-arrow svg {
  width: 22px;
  height: 22px;
  fill: none;
  stroke: #111111;
  stroke-width: 2.2;
}
.kgl-carousel-counter {
  position: absolute;
  bottom: 16px;
  left: 50%;
  transform: translateX(-50%);
  background-color: rgba(17, 8, 17, 0.75);
  color: #ffffff;
  padding: 4px 12px;
  border-radius: 40px;
  font-size: 0.8rem;
  font-weight: 700;
  z-index: 10;
}
.kgl-product-thumbs {
  display: none !important; /* Hide Shopify thumbs stack completely! */
}

/* Sticky Bottom Mobile Purchase Controls */
.kgl-sticky-purchase-bar {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100vw;
  background-color: #ffffff;
  border-top: 1px solid var(--kgl-bft-line);
  box-shadow: 0 -4px 15px rgba(0, 0, 0, 0.05);
  z-index: 9999;
  transform: translateY(100%);
  transition: transform 0.25s ease;
  padding-bottom: 0;
}
.kgl-sticky-purchase-bar.is-visible {
  transform: translateY(0);
}
.sticky-bar-inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 12px 24px;
  max-width: 600px;
  margin: 0 auto;
}
/* Respect safe area on iOS devices */
@supports (padding-bottom: env(safe-area-inset-bottom)) {
  .kgl-sticky-purchase-bar {
    padding-bottom: env(safe-area-inset-bottom);
  }
}
.sticky-bar-left {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.sticky-bar-title {
  font-size: 0.9rem;
  font-weight: 700;
  color: #110811;
  max-width: 180px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.sticky-bar-price {
  font-size: 0.95rem;
  font-weight: 800;
  color: #a53f00;
}
.sticky-bar-btn {
  background-color: #1b2631;
  color: #ffffff;
  border: none;
  border-radius: 6px;
  padding: 10px 24px;
  font-size: 0.85rem;
  font-weight: 750;
  cursor: pointer;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  transition: background-color 0.2s ease;
}
.sticky-bar-btn:hover {
  background-color: #a53f00;
}

/* Sticky controls for desktop info column */
.kgl-product-info {
  position: sticky;
  top: 40px;
}

/* Styling adjustments for page-hero specs grid */
.kgl-specs-list-below {
  margin-top: 40px;
  border-top: 1px solid var(--kgl-bft-line);
  padding-top: 40px;
}
.kgl-specs-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 24px;
  margin-top: 20px;
}
.kgl-spec-item {
  background-color: #f7f7f9;
  border-radius: 8px;
  padding: 16px;
  border: 1px solid #f0f0f2;
}
.kgl-spec-label {
  font-size: 0.78rem;
  font-weight: 700;
  color: #716b72;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  margin-bottom: 4px;
}
.kgl-spec-value {
  font-size: 1.05rem;
  font-weight: 700;
  color: #110811;
}

/* Toast Copy feedback state styling */
.kgl-copy-toast {
  position: fixed;
  top: 20px;
  left: 50%;
  transform: translateX(-50%) translateY(-20px);
  background-color: #1b2631;
  color: #ffffff;
  padding: 10px 20px;
  border-radius: 30px;
  font-size: 0.85rem;
  font-weight: 600;
  z-index: 100000;
  box-shadow: 0 4px 12px rgba(0,0,0,0.15);
  opacity: 0;
  transition: all 0.25s ease;
  pointer-events: none;
}
.kgl-copy-toast.is-visible {
  opacity: 1;
  transform: translateX(-50%) translateY(0);
}

/* Unified catalogue cards and accessible scooter offer. */
.dyu-best .kgl-product-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.dyu-section-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px}.dyu-section-heading h2{font-size:32px;margin-bottom:8px}.dyu-code-price{font-size:15px;color:#934000;font-weight:650;margin:10px 0}.dyu-best small{display:block;margin-top:12px;line-height:1.5;color:#555}.kgl-card__media,.kgl-carousel-wrapper{background:#e9e9e9}.kgl-card__buy{display:inline-flex;align-items:center;justify-content:center;min-height:46px;text-decoration:none}.dyu-policy-links{display:flex;flex-wrap:wrap;justify-content:center;gap:12px 24px;padding:28px 20px;background:#f6f6f6;color:#242424;font-size:14px}.dyu-policy-links a{padding:8px;text-decoration:underline}.dyu-shopping-help{text-align:center;padding:42px 20px}.dyu-shopping-help a{margin:12px}.dyu-offer-tab{position:fixed;bottom:94px;left:16px;z-index:1000;display:flex;align-items:center;gap:10px;background:#222;color:white;border:0;border-radius:12px;padding:6px 14px 6px 6px;box-shadow:0 4px 20px #0003;cursor:pointer;font-weight:750}.dyu-offer-tab img{width:46px;height:46px;object-fit:cover;border-radius:8px}#dyu-offer{padding:0;border:0;border-radius:20px;max-width:820px;width:calc(100% - 32px);max-height:90dvh;overflow:auto;color:#202020;background:#fff;box-shadow:0 24px 100px #0005}#dyu-offer::backdrop{background:#0008}.dyu-offer-layout{display:grid;grid-template-columns:1fr 1fr}.dyu-offer-photo{position:relative;background:#eee}.dyu-offer-photo>img{width:100%;height:100%;object-fit:cover}.dyu-offer-photo small{position:absolute;bottom:8px;left:10px;right:10px;background:#fffe;padding:5px;font-size:10px}.dyu-offer-copy{padding:44px 30px 30px}.dyu-offer-copy h2{font-size:34px;line-height:1.15;margin:20px 0}.dyu-offer-copy h2 strong{color:#b84f00}.dyu-offer-copy p{line-height:1.6}.dyu-offer-close{position:absolute;right:10px;top:10px;width:44px;height:44px;border:0;border-radius:50%;background:white;color:#222;font-size:30px;z-index:2;cursor:pointer}#dyu-copy-code{width:100%;min-height:54px;border:2px dashed #b84f00;background:#fff6ed;border-radius:8px;font-size:22px;font-weight:750;cursor:pointer}#dyu-copy-code span{font-size:12px;margin-left:12px}#dyu-copy-status{min-height:22px;font-size:13px}.dyu-offer-copy .kgl-card__buy{width:100%}.dyu-offer-dismiss{display:block;min-height:44px;margin:10px auto;border:0;background:transparent;cursor:pointer;text-decoration:underline}.dyu-offer-copy small{display:block;font-size:12px;color:#555;line-height:1.5}a:focus-visible,button:focus-visible{outline:3px solid #1769aa;outline-offset:3px}
@media(max-width:900px){.dyu-best .kgl-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.dyu-section-heading{align-items:flex-start;flex-direction:column}.dyu-best .kgl-product-grid{gap:12px}.dyu-best .kgl-card__body{padding:12px}.dyu-best .kgl-card__title{font-size:16px}.dyu-best .kgl-card__price{font-size:21px}.dyu-offer-layout{grid-template-columns:1fr}.dyu-offer-photo{height:155px}.dyu-offer-photo>img{object-position:50% 70%}.dyu-offer-copy{padding:18px 22px}.dyu-offer-copy h2{font-size:28px;margin:10px 0}.dyu-offer-copy>p:first-child{display:none}.dyu-offer-tab{left:10px;bottom:90px;font-size:12px}.dyu-offer-tab img{width:36px;height:36px}}
@media(max-width:600px){html,body{max-width:100%;overflow-x:clip}}
a.dyu-hero-cta{display:inline-flex!important;align-items:center;justify-content:center;min-height:48px;padding:14px 24px!important;background:#c95400!important;color:#fff!important;border-radius:7px;text-decoration:none!important;font-weight:700;width:fit-content}
/* September homepage hierarchy: content-driven sections replace snapshot grids/media. */
.dyu-home{font-size:17px;line-height:1.65;color:#17212b}.dyu-home *,.dyu-footer *{box-sizing:border-box}.dyu-container{width:min(100%,1400px);padding-inline:40px;margin-inline:auto}.dyu-home h1,.dyu-home h2,.dyu-home h3{font-family:inherit;color:#17212b;letter-spacing:-.025em;margin:0;line-height:1.18}.dyu-home h1{font-size:clamp(36px,4.2vw,60px);font-weight:750}.dyu-home h2{font-size:clamp(28px,3vw,38px);font-weight:700}.dyu-home h3{font-size:21px;font-weight:650}.dyu-home p{margin:16px 0;max-width:780px}.dyu-home .dyu-eyebrow{font-size:13px;font-weight:750;letter-spacing:.12em;color:#5f6b75;margin:0 0 14px}.dyu-section{margin:80px 0;padding:0}.dyu-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:50px;border:0;border-radius:6px;padding:14px 25px;background:#be4e00;color:white!important;text-decoration:none!important;font-family:inherit;font-size:15px;font-weight:700;line-height:1.35;cursor:pointer;transition:background .15s,transform .15s}.dyu-button:hover{background:#9c4000}.dyu-button:active{transform:translateY(1px)}.dyu-button:disabled{opacity:.55;cursor:not-allowed}.dyu-button-secondary{background:#17212b}.dyu-button-secondary:hover{background:#0c1620}.dyu-hero{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:48px;padding-top:32px}.dyu-hero-copy>p:not(.dyu-eyebrow){font-size:18px;max-width:530px;margin:24px 0}.dyu-hero-media{display:block;position:relative;background:#e9e9e9;border-radius:16px;overflow:hidden}.dyu-hero-media img{width:100%;height:auto;aspect-ratio:1;object-fit:contain;display:block}.dyu-hero-media>span{position:absolute;bottom:16px;left:16px;padding:8px 14px;background:#fffE;border-radius:6px;font-size:14px;font-weight:700;color:#17212b}.dyu-reassurance{display:flex;gap:10px 18px;flex-wrap:wrap;padding:0;margin:24px 0 0;list-style:none;font-size:14px;font-weight:600}.dyu-finder{width:calc(100% - 80px);max-width:1000px;margin-top:32px;padding:28px 32px;display:flex;align-items:center;justify-content:space-between;gap:24px;border:1px solid #d9e0e6;border-radius:14px;background:#f5f7f9;box-shadow:0 8px 20px #17212b07}.dyu-finder h2{font-size:24px}.dyu-finder p{font-size:15px;margin-bottom:0}.dyu-finder .dyu-eyebrow{margin-bottom:8px}.dyu-actions{display:flex;gap:10px;flex-shrink:0}.dyu-section-heading{margin-bottom:28px;gap:20px}.dyu-section-heading p{margin-bottom:0}.dyu-section-heading>a{font-size:15px;font-weight:650;text-decoration:underline;flex-shrink:0}.dyu-home .kgl-product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.dyu-home .kgl-card{display:flex;flex-direction:column;border:1px solid #dbe1e6;border-radius:12px;overflow:hidden;background:white;transition:box-shadow .15s}.dyu-home .kgl-card:hover{box-shadow:0 8px 22px #17212b14}.dyu-home .kgl-card__media{display:block;aspect-ratio:1;background:#e9e9e9}.dyu-home .kgl-card__media img{width:100%;height:100%;object-fit:contain;padding:8%;transition:transform .2s}.dyu-home .kgl-card:hover img{transform:scale(1.02)}.dyu-home .kgl-card__body{padding:20px;display:flex;flex:1;flex-direction:column}.dyu-home .kgl-card__title{font-size:18px;min-height:64px;line-height:1.3}.dyu-home .kgl-card__price{font-size:25px;font-weight:750;color:#17212b;margin:8px 0 0}.dyu-home .dyu-code-price{font-size:15px;margin:8px 0 18px}.dyu-home .dyu-spec{font-size:14px;color:#61706b;min-height:20px;margin:10px 0 0}.dyu-home .kgl-card__buy{width:100%;min-height:48px;background:#be4e00;border-radius:6px;color:white;margin-top:auto;font-size:15px;font-weight:700}.dyu-home .kgl-card__buy:hover{background:#9c4000}.dyu-home .kgl-card small{font-size:13px;line-height:1.5}.dyu-category-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.dyu-category{display:flex;flex-direction:column;text-decoration:none;color:#17212b;border:1px solid #dbe1e6;border-radius:12px;overflow:hidden;padding-bottom:20px}.dyu-category img{width:100%;height:auto;aspect-ratio:4/3;object-fit:contain;background:#eee;padding:8%}.dyu-category h3{font-size:19px;margin:18px 18px 8px}.dyu-category span{font-size:14px;margin:auto 18px 0}.dyu-category:hover{border-color:#405366}.dyu-lead{font-size:18px;max-width:780px}.dyu-guide-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin-top:28px}.dyu-guide-grid article{display:flex;flex-direction:column;padding:25px;border:1px solid #dbe1e6;border-radius:12px;background:#f8faf9}.dyu-guide-grid h3{font-size:22px}.dyu-guide-grid p{font-size:16px}.dyu-guide-grid a{font-size:15px;font-weight:650;margin-top:auto;text-decoration:underline}.dyu-faq{max-width:900px}.dyu-faq h2{margin-bottom:24px}.dyu-faq details{border-bottom:1px solid #dbe1e6}.dyu-faq summary{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:64px;padding:18px 0;font-size:17px;font-weight:600;cursor:pointer;list-style:none}.dyu-faq summary::-webkit-details-marker{display:none}.dyu-faq summary span:after{content:'+';font-size:24px}.dyu-faq details[open] summary span:after{content:'−'}.dyu-faq details p{font-size:16px;margin-top:0;margin-bottom:24px}.dyu-faq>a{display:inline-block;margin-top:24px;font-size:16px;text-decoration:underline}.dyu-community{display:flex;align-items:center;justify-content:space-between;gap:32px;border-top:1px solid #dbe1e6;padding-top:40px}.dyu-community p{max-width:620px}.dyu-community .dyu-button{flex-shrink:0}.dyu-final{text-align:center;padding:48px 28px;background:#eef1f4;border-radius:16px}.dyu-final p{margin:18px auto 24px}.dyu-trust{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;padding:0 0 48px}.dyu-trust h3{font-size:20px}.dyu-trust p{font-size:15px;margin:12px 0 0}.dyu-trust div>span{display:block;color:#c9481f;font-size:28px;margin-bottom:12px}.dyu-footer{background:#17212b;color:#fff;padding:52px 0 0;font-size:15px;line-height:1.6}.dyu-footer-grid{display:grid;grid-template-columns:.8fr 1fr 1.5fr 1fr;gap:32px}.dyu-footer h2{font-size:19px;font-weight:650;margin:0 0 20px;color:white}.dyu-footer a{display:block;color:#e6ebee;text-decoration:none;padding:5px 0}.dyu-footer a:hover{text-decoration:underline}.dyu-footer .dyu-news-title{margin-top:24px}.dyu-newsletter label{display:block;margin-bottom:8px}.dyu-newsletter>div{display:flex;gap:8px}.dyu-newsletter input{width:100%;min-width:0;min-height:48px;border:1px solid #c7d0d8;border-radius:6px;background:white;color:#17212b;padding:10px;font-size:16px}.dyu-newsletter .dyu-button{padding:10px 16px;flex-shrink:0}.dyu-newsletter small{display:block;font-size:13px;margin-top:12px}.dyu-newsletter small a{display:inline;text-decoration:underline}.dyu-footer-bottom{margin:40px 0 0;padding:24px 0;border-top:1px solid #ffffff30;font-size:14px}.kgl-site-header{max-width:1400px;margin:auto;padding:16px 40px;min-height:82px}.kgl-site-nav a{font-size:15px}.kgl-header-actions a{min-width:44px;min-height:44px}.dyu-announcement{position:relative;background:#17212b;color:white;height:52px;display:flex;align-items:center;justify-content:center;padding:0 48px;text-align:center;font-size:15px;font-weight:600}.dyu-announcement a{color:white;text-decoration:none;animation:dyu-message-in .25s ease}.dyu-announcement a[hidden]{display:none}.dyu-announcement strong{display:inline-block;background:#d7f66e;color:#163928;border-radius:6px;padding:2px 8px;margin:0 4px}.dyu-announcement b{color:#ffb4a7}.dyu-announcement button{position:absolute;right:8px;top:4px;min-width:44px;min-height:44px;background:transparent;color:white;border:0;cursor:pointer}.dyu-offer-photo{display:flex;align-items:center;background:#e9e9e9}.dyu-offer-photo>img{object-fit:contain;height:auto;aspect-ratio:1}.dyu-offer-copy small{font-size:13px}.dyu-offer-copy .kgl-card__buy{border-radius:6px;background:#be4e00;font-size:15px;min-height:48px}.dyu-offer-copy h2{font-weight:700;font-size:34px;line-height:1.2}.dyu-offer-copy h2 strong{display:inline-block;margin-left:5px}.dyu-offer-copy{padding:44px 30px 28px}.dyu-offer-copy>p{font-size:16px}.dyu-offer-tab img{object-fit:contain;background:#e9e9e9}
@keyframes dyu-message-in{from{opacity:.4;transform:translateY(3px)}to{opacity:1;transform:none}}
@media(max-width:1100px){.dyu-container{padding-inline:24px}.dyu-hero{gap:28px}.dyu-finder{width:calc(100% - 48px);flex-direction:column;align-items:flex-start}.dyu-home .kgl-product-grid,.dyu-category-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.dyu-guide-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dyu-footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.kgl-site-header{padding-inline:24px}.kgl-site-nav{gap:15px}}
@media(max-width:767px){.dyu-container{padding-inline:16px}.dyu-section{margin:52px 0}.dyu-hero{grid-template-columns:1fr;gap:24px;padding-top:28px}.dyu-home h1{font-size:38px}.dyu-hero-copy>p:not(.dyu-eyebrow){font-size:17px;margin:20px 0}.dyu-hero-media{max-width:520px;width:100%;margin:auto}.dyu-reassurance{font-size:13px;gap:8px 12px;margin-top:18px}.dyu-finder{width:calc(100% - 32px);padding:24px;margin-top:24px;gap:18px}.dyu-finder h2{font-size:23px}.dyu-actions{width:100%;flex-wrap:wrap}.dyu-actions .dyu-button{flex:1;padding-inline:16px}.dyu-home .kgl-product-grid,.dyu-category-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.dyu-home .kgl-card__body{padding:14px}.dyu-home .kgl-card__title{font-size:16px;min-height:84px}.dyu-home .kgl-card__price{font-size:23px}.dyu-home .dyu-code-price{font-size:14px}.dyu-home .kgl-card small{font-size:13px}.dyu-category h3{font-size:17px;margin:14px 12px 8px}.dyu-category span{margin-inline:12px}.dyu-guide-grid{gap:14px}.dyu-guide-grid article{padding:20px}.dyu-guide-grid h3{font-size:20px}.dyu-community{flex-direction:column;align-items:flex-start}.dyu-trust{grid-template-columns:1fr;gap:24px}.dyu-trust>div{position:relative;padding-left:48px}.dyu-trust div>span{position:absolute;left:0;top:0}.dyu-footer-grid{gap:32px 20px}.dyu-footer-grid>div:nth-child(3){grid-column:1/-1;grid-row:2}.kgl-site-header{padding:12px 16px;min-height:72px}.dyu-announcement{height:58px;padding:0 44px 0 12px;font-size:13px;line-height:1.45}.dyu-announcement a>span{display:block}.dyu-announcement button{top:7px}.dyu-offer-layout{grid-template-columns:1fr}.dyu-offer-photo{height:170px;justify-content:center}.dyu-offer-photo>img{width:170px;height:170px;object-fit:contain}.dyu-offer-copy{padding:20px 24px}.dyu-offer-copy h2{font-size:30px;margin:8px 0 16px}.dyu-offer-copy>p:first-child{display:none}.dyu-offer-tab{bottom:94px}#dyu-copy-code{font-size:21px}}
@media(max-width:399px){.dyu-home .kgl-product-grid{grid-template-columns:1fr}.dyu-home .kgl-card__title{min-height:0;font-size:19px}.dyu-home .kgl-card__media{max-height:320px}.dyu-guide-grid{grid-template-columns:1fr}.dyu-footer-grid{grid-template-columns:1fr 1fr}.dyu-home h1{font-size:35px}}
@media(max-width:767px) and (max-height:740px){.dyu-offer-photo{display:none}}
@media(prefers-reduced-motion:reduce){.dyu-announcement a,.dyu-home *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* Product photographs already contain their grey backdrop; do not frame them twice. */
.dyu-home .kgl-card,.kgl-card,.dyu-category{border:0;box-shadow:none;background:transparent}
.dyu-home .kgl-card:hover,.kgl-card:hover{box-shadow:none}
.dyu-home .kgl-card__media,.kgl-card__media,.dyu-hero-media,.kgl-carousel-wrapper,.dyu-offer-photo{border:0;box-shadow:none;background:transparent}
.dyu-home .kgl-card__media,.kgl-card__media{aspect-ratio:1;border-radius:8px}
.dyu-home .kgl-card__media img,.kgl-card__media img,.dyu-category img,.kgl-carousel-item img{padding:0!important;border:0;box-shadow:none;object-fit:contain;background:transparent}
.dyu-category img{aspect-ratio:1;border-radius:8px}
.dyu-home .kgl-card__body,.kgl-card__body{padding:18px 0 0}
.dyu-category h3,.dyu-category span{margin-left:0;margin-right:0}
.dyu-offer-photo{align-self:start;align-items:flex-start}
.kgl-card__price,.dyu-home .kgl-card__price{color:#25322e;font-size:24px;font-weight:700;line-height:1.2;margin:5px 0 12px}
.dyu-price-label,.dyu-home .dyu-price-label{display:block;font-size:13px;font-weight:600;line-height:1.5;color:#5b645f;margin:6px 0 3px;letter-spacing:0}
.dyu-code-price,.dyu-home .dyu-code-price{display:flex;flex-direction:column;align-items:flex-start;gap:3px;margin:4px 0 18px;padding:0;background:transparent;color:#9f4000;line-height:1.2}
.dyu-code-price .dyu-price-label{color:#9f4000;margin:0}
.dyu-offer-amount{font-size:30px;line-height:1.15;font-weight:750;white-space:nowrap;letter-spacing:-.025em}
.dyu-saving{font-size:13px;line-height:1.5;font-weight:500;color:#55645c;margin-top:3px}
#kgl-product-price{padding:0;border:0;box-shadow:none;background:transparent;margin:24px 0}
#kgl-product-price .price-row{display:block;margin-bottom:16px}
#kgl-product-price .price-current{font-size:29px;color:#25322e}
#kgl-product-price .dyu-offer-amount{font-size:40px}
#kgl-product-price .promo-row{justify-content:flex-start;font-size:14px}
#kgl-product-price .promo-code{font:inherit;border:0;color:#173b2d;min-height:44px;padding:8px 12px;cursor:pointer}
.kgl-card__buy{width:100%;min-height:48px;border-radius:6px;font-size:15px}
.kgl-card__body{display:flex;flex-direction:column}.kgl-card__buy{margin-top:auto}
.drawer-summary-line{gap:16px}.drawer-summary-line>span:last-child{text-align:right;font-size:14px}.kgl-checkout-note,.checkout-note{font-size:14px;line-height:1.5}
@media(max-width:767px){.dyu-home .kgl-card__body,.kgl-card__body{padding:14px 0 0}.dyu-home .kgl-card__price,.kgl-card__price{font-size:22px}.dyu-offer-amount{font-size:28px}.dyu-offer-photo{justify-self:center}.dyu-price-label,.dyu-home .dyu-price-label{font-size:13px}}
/* Keep the single product photograph at its own aspect ratio on the PDP. */
.kgl-carousel-wrapper{aspect-ratio:auto;border-radius:8px}.kgl-carousel-items,.kgl-carousel-item{height:auto}.kgl-carousel-item img{width:100%;height:auto;max-height:none;display:block}
/* This landscape ES80 photo has ample side space; square cover retains the whole scooter. */
.dyu-home [data-best-slug*="foldable-portable-electric-scooter-350w"] .kgl-card__media img{object-fit:cover}
.kgl-cart-drawer{box-sizing:border-box;width:min(100vw,480px);height:100dvh;max-height:100dvh}.cart-drawer-body{min-height:0}.cart-drawer-footer{flex-shrink:0}.cart-drawer-item{grid-template-columns:80px minmax(0,1fr) auto}.cart-drawer-item-details{min-width:0;overflow-wrap:anywhere}.cart-drawer-close{min-width:44px;min-height:44px}.cart-drawer-item-details .qty-btn{width:44px;height:44px}.cart-drawer-item-details .qty-input{height:44px}.cart-drawer-item .item-remove{min-height:44px;font-size:14px}.cart-drawer-item img{background:transparent;border:0;padding:0}
@media(max-width:480px){.cart-drawer-header,.cart-drawer-body,.cart-drawer-footer{padding:16px}.cart-drawer-item{grid-template-columns:64px minmax(0,1fr);gap:12px}.cart-drawer-item img{width:64px;height:64px}.cart-drawer-item .item-price{grid-column:2;text-align:left}.cart-drawer-footer .drawer-summary-total{font-size:17px}.cart-drawer-footer .checkout-note{font-size:13px}.kgl-summary-line{gap:12px}.kgl-summary-line>span:last-child{text-align:right;font-size:14px}}

/* URLIFE geometry reference, measured in CSS pixels at 1440 and 390px. */
:root{--dyu-page-width:1440px;--dyu-gutter:40px}
.dyu-container{width:min(100%,var(--dyu-page-width));padding-inline:var(--dyu-gutter)}
.dyu-announcement{height:69.59375px;background:linear-gradient(110deg,#0f766e,#064e3b);font-size:14px}
.kgl-site-header{width:100%;max-width:1440px;height:87.375px;min-height:0;margin:0 auto;padding:11.1875px 40px;grid-template-columns:120px minmax(0,1fr) auto;gap:24px}
.kgl-site-logo,.kgl-site-logo img{width:120px;height:65px;object-fit:contain}
.kgl-site-nav{gap:20px}.kgl-site-nav a{font-size:14px}
.kgl-product-page{width:100%;max-width:1440px;padding:0 40px;margin:0 auto}
.kgl-product-static{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr);align-items:center;gap:48px;padding:48px 0;min-height:620px}.kgl-product-static img{display:block;width:100%;max-height:620px;object-fit:contain;background:#f7f7f7}.kgl-product-static h1{margin:0;font-size:clamp(34px,4vw,58px);line-height:1.05}.kgl-product-static p:last-child{max-width:580px;color:#5f6670;font-size:18px;line-height:1.6}
.kgl-product-top{display:grid!important;grid-template-columns:2fr 1fr!important;gap:0!important;align-items:start;margin:0;padding:0}
.kgl-product-gallery{padding:0 24px 0 0;min-width:0;position:sticky;top:0}
.kgl-carousel-wrapper{width:100%;aspect-ratio:1!important;height:auto!important;max-height:none!important;border:0!important;border-radius:0!important;background:transparent!important}
.kgl-carousel-items,.kgl-carousel-item{height:100%!important;width:100%}
.kgl-carousel-item img{width:100%!important;height:100%!important;aspect-ratio:1;object-fit:contain!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important}
.kgl-product-info{min-width:0;width:100%;padding:48px 0 77px 24px!important;margin:0;position:static}
.kgl-product-info h1{font:700 24px/1.2 'Instrument Sans',sans-serif!important;letter-spacing:0;margin:0!important;color:#000}
.kgl-product-tagline{display:inline-flex;margin:12px 0 0;padding:6px 12px;font:600 12px/16.8px 'Work Sans',sans-serif;letter-spacing:.5px;color:#fff;background:#1b2631;border-radius:4px;max-width:100%}
#kgl-product-price{margin:77px 0 0!important;border:1px solid #e6e6e6;border-radius:12px;padding:24px;box-shadow:0 4px 12px #0000001a;background:#fff}
#kgl-product-price .price-row{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:0 0 20px}
#kgl-product-price .price-current{font:700 40px/1.2 'Work Sans',sans-serif;color:#000}
#kgl-product-price .price-current.price-before-code{font-size:20px;font-weight:400;line-height:1.4;color:#666;opacity:.7;text-decoration:line-through}
#kgl-product-price .dyu-offer-amount{font:700 40px/1.2 'Work Sans',sans-serif;color:#000;letter-spacing:0}
.dyu-discount-badge{display:inline-flex;border-radius:20px;background:#c9481f;color:#fff;padding:3px 10px;font-size:12px;font-weight:700;white-space:nowrap}
#kgl-product-price .promo-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:13px;color:#555;margin:6px 0 0;line-height:18.2px}
#kgl-product-price .promo-code{background:none;border:0;border-radius:0;color:#c9481f;font:800 13px/18.2px 'Work Sans',sans-serif;padding:0;min-height:0;cursor:pointer}
.urlife-benefits-card{display:flex;flex-direction:column;gap:12px;margin:16px 0 0!important;padding:24px;border:1px solid #e6e6e6;border-radius:12px;box-shadow:0 4px 12px #0000001a;background:#fff}
.urlife-benefits-card .benefit-row{display:flex;align-items:center;gap:12px;padding:12px;border:0;border-left:3px solid #1b2631;border-radius:8px;background:#f9f9f9;margin:0;min-height:44px}
.urlife-benefits-card .benefit-icon{width:20px;height:20px;flex:0 0 20px;color:#1b2631}
.urlife-benefits-card .benefit-text{font:400 14px/1.4 'Work Sans',sans-serif;color:#000}
.urlife-benefits-card .highlight-date{color:#c1121f;font-weight:700}
.urlife-variant-selector{margin:64px 0 28px}.variant-label{display:block;font-size:14px;margin-bottom:8px}
.urlife-variant-selector .variant-select{width:100%;height:47.1875px;min-height:0;padding:12.8px 25.6px 12.8px 16px;border:1px solid #e6e6e6;border-radius:8px;font:400 14px/1.4 'Work Sans',sans-serif}
.urlife-buy-controls{display:flex!important;align-items:center;gap:12px;margin:28px 0 0}
.urlife-quantity-selector{display:flex!important;align-items:center;flex:0 0 126px;width:126px;height:46px;border:1px solid #e6e6e6;border-radius:0;overflow:hidden}
.urlife-quantity-selector .qty-btn{width:44px;min-width:44px;height:44px;min-height:44px;padding:0;border:0;background:transparent;color:#110811;font-size:18px}
.urlife-quantity-selector .qty-input{min-width:0;width:36px;height:44px;padding:0;border:0;font-size:14px;text-align:center;background:transparent}
.urlife-add-to-cart-btn{height:54px;min-height:54px;flex:1;min-width:0;border:0;border-radius:0;background:#1b2631;color:white;padding:16px 24px;font:800 14px/19.6px 'Work Sans',sans-serif}
.urlife-add-to-cart-btn .cart-icon{display:none}
.urlife-express-checkout{margin:12px 0 0}.urlife-express-checkout .kgl-buy-now{width:100%;height:54px;min-height:54px;border:0;border-radius:0;background:#1b2631;font:700 14px/19.6px 'Work Sans',sans-serif}
.urlife-confidence-card{margin:44px 0 0;padding:16px;border:1px solid #1108111f;border-radius:0;background:#f7faf8;box-shadow:none;color:#110811}
.urlife-confidence-card .card-header{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #1108111a;padding:0 0 10px;margin:0 0 12px}
.urlife-confidence-card .card-title{font:700 15px/21px 'Work Sans',sans-serif;margin:0}
.urlife-confidence-card .badge-stock{font:700 14px/19.6px 'Work Sans',sans-serif;color:#17212b;text-align:right;background:none;padding:0;border:0;white-space:normal}.stock-dot{display:none}
.urlife-confidence-card .promo-banner{margin:0 0 12px;padding:10px 12px;background:#ecfdf5;border:1px solid #17212b33;color:#064e3b;font:400 13px/1.45 'Work Sans',sans-serif;border-radius:0}
.urlife-confidence-card .highlight-code{display:inline-block;margin:0 3px;padding:2px 7px;border-radius:4px;background:#17212b;color:#fff;font-weight:800}
.urlife-confidence-card .info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.urlife-confidence-card .grid-item{display:grid;gap:3px}.urlife-confidence-card .item-title{font:800 13px/1.45 'Work Sans',sans-serif;margin:0;color:#1b2631}.urlife-confidence-card .item-text{font:400 13px/1.45 'Work Sans',sans-serif;margin:0;color:#110811}
.urlife-confidence-card .card-footer{margin:12px 0 0;padding:10px 0 0;border-top:1px solid #1108111a;font:400 12px/1.45 'Work Sans',sans-serif;color:#3f3f46}
.urlife-confidence-card a{color:#0f766e;font-weight:800;text-decoration:underline}
.dyu-product-video{display:block;width:100%;margin:48px 0 32px}.dyu-product-video h3{font:400 18px/1.15 'Instrument Sans',sans-serif;margin:0 0 16px;color:#110811}
.dyu-video-frame{position:relative;width:100%;aspect-ratio:16/9;background:#000;border-radius:8px;overflow:hidden}.dyu-video-frame iframe,.dyu-video-play,.dyu-video-placeholder{position:absolute;inset:0;width:100%;height:100%;border:0;margin:0}.dyu-video-play{cursor:pointer;background:#000;padding:0}.dyu-video-play img{width:100%;height:100%;object-fit:cover}.dyu-video-play>span{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);color:white;background:#d00;border-radius:12px;padding:10px 22px;font-size:28px}.dyu-video-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;color:#ddd;font:400 14px/1.4 'Work Sans',sans-serif}.dyu-video-placeholder>span{font-size:34px;color:#999}.dyu-video-placeholder p{margin:12px 0 0}
.kgl-product-description{width:100%;max-width:1240px;margin:160px auto 0;padding:40px 20px;border:0}.kgl-product-description>h2{font:400 48px/1.1 'Instrument Sans',sans-serif;letter-spacing:-.02em;margin:0 0 24px;color:#110811}.kgl-product-description>p{font:400 16px/1.6 'Work Sans',sans-serif;margin:0 0 30px;max-width:none}.dyu-detail-features{display:grid;gap:20px;margin-bottom:30px}.dyu-detail-feature{padding:20px;background:#f4f0f4;border-radius:8px}.dyu-detail-feature h3{font:600 20px/1.15 'Instrument Sans',sans-serif;margin:0 0 8px}.dyu-detail-feature p{font-size:14px;line-height:1.5;margin:0}.kgl-specs-list-below{padding:0;margin:0;border:0}.kgl-specs-list-below>.kgl-page-kicker,.kgl-specs-list-below>h2{display:none}.kgl-specs-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.kgl-spec-item{padding:15px;border:1px solid #e6e6e6;border-radius:4px;background:#fff}.kgl-spec-label{font-size:12px;letter-spacing:.5px;margin-bottom:4px}.kgl-spec-value{font-size:14px}
.dyu-product-faq{width:85%;margin:0 auto;padding:60px 20px;text-align:center}.dyu-product-faq h2{font:500 36px/1.2 'Instrument Sans',sans-serif;letter-spacing:-.02em;margin:0 0 15px}.dyu-product-faq>p{font-size:16px;color:#666;margin:0 0 50px}.dyu-product-faq>div{display:flex;flex-direction:column;gap:20px;margin-bottom:20px}.dyu-product-faq details{text-align:left;border:1px solid #e8e8e8;border-radius:12px;box-shadow:0 2px 8px #0000000a;overflow:hidden}.dyu-product-faq summary{padding:28px 35px;font-size:16px;cursor:pointer;display:flex;justify-content:space-between;gap:16px}.dyu-product-faq summary:after{content:'⌄'}.dyu-product-faq details[open] summary:after{content:'⌃'}.dyu-product-faq details p{padding:0 35px 24px;margin:0;line-height:1.6}.kgl-related{margin:48px 0 80px}.kgl-related>.kgl-page-kicker{display:none}.kgl-related>h2{font:400 24px/1.15 'Instrument Sans',sans-serif;margin:0 0 24px}
.dyu-home{font:400 14px/1.4 'Work Sans',sans-serif;color:#110811}.dyu-home h1,.dyu-home h2,.dyu-home h3{font-family:'Instrument Sans',sans-serif;font-weight:400;letter-spacing:0;color:#110811}.dyu-home .dyu-section{margin:0}.dyu-hero{}.dyu-home .dyu-hero-copy .dyu-eyebrow{}.dyu-home .dyu-hero h1{}.dyu-hero-copy>p:not(.dyu-eyebrow){font-size:18px;line-height:1.4;margin:24px 0 0}.dyu-hero-media{border-radius:0;background:transparent}.dyu-hero-media img{width:100%;aspect-ratio:auto}.dyu-hero-media>span,.dyu-hero-copy>.dyu-button,.dyu-hero-copy>.dyu-reassurance{display:none}
.dyu-finder{display:flex;max-width:1120px;width:calc(100% - 80px);margin:0 auto 34px;padding:28px;min-height:273.171875px;background:#fff;border:1px solid #e6e6e6;border-radius:8px;box-shadow:0 12px 28px #0000000a;gap:24px}.dyu-finder>div:first-child{max-width:640px}.dyu-finder h2{font-size:clamp(24px,2.1333vw,32px);font-weight:700;line-height:1.12}.dyu-finder p{font-size:16px;line-height:1.5;margin:12px 0 0}.dyu-home .dyu-eyebrow{font-size:12px;letter-spacing:.14em;font-weight:600}.dyu-button{border-radius:0;background:#1b2631;font-size:14px;min-height:54px;padding:16px 24px}.dyu-button-secondary{background:#fff;color:#1b2631!important;border:1px solid #1b2631}
.dyu-home .dyu-best{padding:40px 20px;background:#f8f8f8}.dyu-home .dyu-best h2{font-size:32px;line-height:1.1;text-align:center;width:100%;margin:0 0 40px}.dyu-best>.dyu-section-heading{display:block;margin:0}.dyu-best>.dyu-section-heading p,.dyu-best>.dyu-section-heading>a{display:none}.dyu-home .kgl-product-grid{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px}.dyu-home .kgl-card{flex:0 0 calc((100% - 60px)/4);scroll-snap-align:start;min-width:0;border:0;border-radius:0;background:#fff}.dyu-home .kgl-card__media{aspect-ratio:1;background:transparent;border:0}.dyu-home .kgl-card__media img{padding:0;object-fit:contain}.dyu-home .kgl-card__body{padding:20px;text-align:center}.dyu-home .kgl-card__title{font:400 16px/1.4 'Instrument Sans',sans-serif;min-height:44.8px}.dyu-home .dyu-spec{display:none}.dyu-home .kgl-card__price{font-size:12px;line-height:1.4;margin:8px 0}.dyu-home .kgl-card__price .dyu-price-label{display:inline;font-size:12px;margin-right:4px}.dyu-home .dyu-code-price{display:flex;justify-content:center;flex-wrap:wrap;gap:3px;margin:8px 0 20px}.dyu-home .dyu-code-price .dyu-price-label{font-size:16px;font-weight:700;color:#d35400}.dyu-home .dyu-offer-amount{font-size:20px;line-height:1.4;color:#d35400}.dyu-home .dyu-saving{font-size:11px;flex-basis:100%}.dyu-home .kgl-card__buy{min-height:48px;background:#1b2631;border-radius:0;border:0;font-size:14px}.dyu-home .kgl-card small{font-size:11px;line-height:1.4}
#dyu-range{padding:100px 0 80px}.dyu-section-heading{text-align:center;margin-bottom:48px}.dyu-home #dyu-range h2{font-size:48px;line-height:1.1}.dyu-home #dyu-range p{margin:16px auto 0;font-size:16px}.dyu-category-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:40px 24px}.dyu-category{padding:0 0 24px;border:0;border-radius:0}.dyu-category img{aspect-ratio:1;width:100%;height:auto;object-fit:contain;padding:0;background:transparent}.dyu-category h3{font-size:20px;line-height:1.15;margin:24px 24px 8px}.dyu-category span{font-size:14px;margin:0 24px;color:#666}
#dyu-guide{max-width:1120px;margin:0 auto;padding:72px 0 0}.dyu-home #dyu-guide h2{font-size:clamp(32px,3.2722vw,48px);line-height:1.08}.dyu-home .dyu-lead{max-width:720px;font-size:16px;line-height:1.6;margin:20px 0 30px}.dyu-guide-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.dyu-guide-grid article{padding:22px;border:1px solid #ddd;border-radius:8px;background:#f5f5f5}.dyu-guide-grid h3{font-size:16px;line-height:1.25}.dyu-guide-grid p{font-size:14px;line-height:1.65;margin:12px 0}.dyu-guide-grid a{font-size:13px}
#dyu-faq{max-width:1120px;margin:0 auto;padding:48px 0 84px}.dyu-home #dyu-faq h2{font-size:30.88px;line-height:1.15;margin-bottom:20px}#dyu-faq>.dyu-eyebrow{display:none}#dyu-faq summary{padding:18px 0;font-size:14px}#dyu-faq details p{font-size:14px}#dyu-faq>a{font-size:14px}
.dyu-community{display:flex;flex-direction:column;text-align:center;align-items:center;gap:28px;padding:36px 20px 48px}.dyu-home .dyu-community h2{font-size:36px;line-height:1.05}.dyu-community p{font-size:16px;color:#666}.dyu-final{display:none}.dyu-trust{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;text-align:center;padding:64px 0;margin:0}.dyu-trust>div{padding:0;position:static}.dyu-trust div>span{display:block;position:static;font-size:32px;margin-bottom:16px}.dyu-trust h3{font:400 32px/1.15 'Instrument Sans',sans-serif;margin:0 0 8px}.dyu-trust p{font-size:14px;line-height:1.4;margin:0}.dyu-footer{background:white;color:#110811;padding:48px 0 0;border:0}.dyu-footer-grid{grid-template-columns:1fr 1fr 2fr;gap:32px}.dyu-footer-grid h2{font:400 20px/1.1 'Instrument Sans',sans-serif}.dyu-footer-grid a{font-size:14px;line-height:1.4}.dyu-footer-grid>nav{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:12px 24px}.dyu-footer-grid>nav h2{display:none}.dyu-footer-bottom{font-size:12px;padding:32px 0;margin-top:32px;border-top:1px solid #eee}
@media(max-width:1023px) and (min-width:750px){.kgl-site-nav{gap:12px}.kgl-site-nav a{font-size:12px}.dyu-finder{flex-wrap:wrap}#kgl-product-price .dyu-offer-amount{font-size:32px}.urlife-confidence-card .info-grid{grid-template-columns:1fr}}
@media(max-width:749px){
:root{--dyu-gutter:16px}.dyu-announcement{height:83px;font-size:12px}.kgl-site-header{height:60px;padding:8px 16px;grid-template-columns:44px 1fr auto;min-height:0}.kgl-site-logo,.kgl-site-logo img{width:80px;height:44px}.kgl-product-page{padding:0}.kgl-product-top{display:block!important}.kgl-product-gallery{position:static;padding:0}.kgl-carousel-wrapper{height:100vw!important;aspect-ratio:1}.kgl-product-info{padding:33.59375px 16px 58px!important}.kgl-product-info h1{font-size:18px!important}.kgl-product-tagline{font-size:10.8px;line-height:15.12px}#kgl-product-price{margin-top:69px!important;padding:18px}#kgl-product-price .price-current.price-before-code{font-size:16px}#kgl-product-price .dyu-offer-amount,#kgl-product-price .price-current{font-size:32px}.urlife-benefits-card{padding:18px}.urlife-variant-selector{margin-top:64px}.urlife-variant-selector .variant-select{height:49.984375px;font-size:16px}.urlife-quantity-selector{flex-basis:126px}.urlife-add-to-cart-btn{padding:16px 12px}.urlife-confidence-card{padding:14px}.urlife-confidence-card .card-header{flex-direction:column;align-items:flex-start;gap:4px}.urlife-confidence-card .badge-stock{text-align:left}.urlife-confidence-card .info-grid{grid-template-columns:1fr}.dyu-product-video{margin-top:48px}.kgl-product-description{margin-top:40px;padding:24px 16px}.kgl-product-description>h2{font-size:28.8px}.kgl-product-description>p{font-size:14.4px}.kgl-specs-grid{grid-template-columns:1fr}.dyu-product-faq{width:100%;padding:40px 16px}.dyu-product-faq h2{font-size:28px}.dyu-product-faq>p{font-size:14px;margin-bottom:30px}.dyu-product-faq summary{padding:22px 20px;font-size:15px}.dyu-product-faq details p{padding:0 20px 20px;font-size:14px}.kgl-related{padding:0 16px}
.dyu-hero-copy>p:not(.dyu-eyebrow){font-size:18px;line-height:1.55;margin-top:24px}.dyu-finder{width:calc(100% - 32px);padding:20px;margin-bottom:24px;display:flex;flex-direction:column;align-items:stretch;min-height:0}.dyu-finder h2{font-size:24px}.dyu-actions{flex-direction:column;gap:12px}.dyu-home .dyu-best{padding:30px 16px}.dyu-home .dyu-best h2{font-size:24px;margin-bottom:40px}.dyu-home .kgl-product-grid{gap:16px}.dyu-home .kgl-card{flex:0 0 294px}.dyu-home .kgl-card__body{padding:16px}.dyu-home .kgl-card__title{font-size:15px;min-height:42px}.dyu-home #dyu-range{padding:80px 0 54px}.dyu-home #dyu-range h2{font-size:28.8px}.dyu-home #dyu-range p{font-size:14px}.dyu-category-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 16px}.dyu-category h3{font-size:17px;line-height:1.15;margin:16px 16px 8px}.dyu-category span{margin:0 16px;font-size:13px}#dyu-guide{padding-top:54px}.dyu-home #dyu-guide h2{font-size:32px}.dyu-guide-grid{grid-template-columns:1fr}.dyu-guide-grid article{padding:18px}.dyu-guide-grid h3{font-size:16px}#dyu-faq{padding:40px 0 64px}.dyu-home #dyu-faq h2{font-size:24px}.dyu-community{align-items:center}.dyu-home .dyu-community h2{font-size:32px}.dyu-trust{grid-template-columns:1fr;padding:48px 0;gap:40px}.dyu-trust h3{font-size:28px}.dyu-footer-grid{grid-template-columns:1fr 1fr}.dyu-footer-grid>div:nth-child(3){grid-column:1/-1;grid-row:auto}.dyu-footer-grid>nav{gap:12px 20px}
}
/* Keep geometry overrides above the previous storefront's ID rules. */
#kgl-product-price .promo-code{min-height:0;padding:0;font:800 13px/18.2px 'Work Sans',sans-serif;color:#c9481f}
.urlife-express-checkout .kgl-buy-now{color:#fff}
.dyu-footer h2,.dyu-footer a,.dyu-footer small{color:#110811}.dyu-footer .dyu-button{color:#fff!important;background:#1b2631}.dyu-footer-grid>div>h2{margin-bottom:20px}.dyu-footer-grid>div>a{margin-bottom:10px}.dyu-footer-grid>div:nth-child(3)>.dyu-news-title{margin-top:24px}
.dyu-home .dyu-code-price{flex-direction:row;align-items:baseline;text-align:center}.dyu-home .dyu-code-price .dyu-price-label{margin:0}.dyu-home .dyu-saving{white-space:normal}.dyu-home .kgl-card__media,.dyu-home .kgl-card__media img,.dyu-category img{border-radius:0}.dyu-home #dyu-range .dyu-section-heading{display:block;text-align:center}.dyu-home #dyu-range h2{text-align:center}
@media(max-width:749px){#kgl-product-price .dyu-offer-amount{font-size:32px}.dyu-home .dyu-code-price{align-items:baseline}}
#kgl-product-price .promo-row{border:0;padding:0}
.urlife-variant-selector{margin-top:28px;gap:4.8px}.urlife-variant-selector .variant-label{margin:0;font:400 14px/19.6px 'Work Sans',sans-serif;text-transform:none;letter-spacing:0}
.dyu-home .dyu-best .kgl-card{position:relative}.dyu-home .dyu-best .kgl-card__price{position:absolute;top:12px;right:12px;margin:0;padding:6px 10px;background:#d35400;color:#fff;font-size:14px;border-radius:4px}.dyu-home .dyu-best .kgl-card__price .dyu-price-label{color:#fff;font-size:11px}.dyu-home .dyu-best .kgl-card__price [data-best-price]{color:#fff}.dyu-home .dyu-best .kgl-card__title{margin-bottom:8px}.dyu-home .dyu-best .kgl-card__body{min-height:240px}
.kgl-related .kgl-product-grid{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:16px}.kgl-related .kgl-card__title{font:400 14px/1.4 'Instrument Sans',sans-serif}.kgl-related .kgl-card__price{font-size:16px}.kgl-related .dyu-offer-amount{font-size:20px}.kgl-related .kgl-card__buy{background:#1b2631;font-size:12px;padding:8px}.kgl-related .kgl-card__media{border-radius:0}.kgl-related .kgl-card__media img{border-radius:0}
@media(max-width:1023px){.kgl-related .kgl-product-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:749px){.urlife-variant-selector{margin-top:24px;margin-bottom:24px}.urlife-buy-controls{margin-top:24px}.dyu-home .dyu-best .kgl-card__price{font-size:13px}.kgl-related .kgl-product-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:16px}.kgl-related .kgl-card{flex:0 0 180px;scroll-snap-align:start}}
.dyu-footer .dyu-newsletter .dyu-button{background:#1b2631;border-radius:0;color:#fff!important}
/* Owner ZIP import: full galleries supersede the earlier single-photo setting. */
.dyu-hero-media img{object-fit:cover;object-position:55% 50%}
.kgl-carousel-items{display:flex;flex-wrap:nowrap}.kgl-carousel-item{flex:0 0 100%;min-width:100%}.kgl-carousel-wrapper{overflow:hidden}.dyu-gallery-thumbnails{display:flex;gap:8px;overflow-x:auto;padding:12px 0;max-width:100%}.dyu-gallery-thumbnails button{flex:0 0 64px;width:64px;height:64px;padding:2px;background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer}.dyu-gallery-thumbnails button[aria-pressed=true]{border:2px solid #1b2631}.dyu-gallery-thumbnails img{width:100%;height:100%;object-fit:contain}.kgl-carousel-arrow{display:flex;z-index:2}.kgl-carousel-counter{display:block;z-index:2}#dyu-availability-note{font-size:14px;line-height:1.5;color:#17212b;margin:12px 0;padding:10px 12px;border-left:3px solid #17212b;background:#f0fdf4;font-weight:650}#dyu-availability-note:empty{display:none}
.kgl-carousel-item--video{display:flex;align-items:center;justify-content:center;background:#000!important}.dyu-gallery-video{position:relative;width:100%;aspect-ratio:16/9;background:#000;overflow:hidden}.dyu-gallery-video iframe,.dyu-gallery-video-play{position:absolute;inset:0;width:100%;height:100%;margin:0;border:0}.dyu-gallery-video-play{padding:0;cursor:pointer;background:#000}.kgl-carousel-item--video .dyu-gallery-video-play img{display:block;width:100%!important;height:100%!important;aspect-ratio:auto!important;object-fit:contain!important;background:#000!important}.dyu-gallery-video-play>span{position:absolute;left:50%;top:50%;display:grid;place-items:center;width:72px;height:52px;transform:translate(-50%,-50%);border-radius:14px;background:#e62117;color:#fff;font-size:28px;line-height:1;box-shadow:0 8px 24px #0006}.dyu-gallery-video-play:focus-visible>span{outline:3px solid #fff;outline-offset:4px}
@media(min-width:750px){.kgl-product-gallery{position:static}}
/* DYU homepage and discount popup parity with URLIFE, 2026-09-15.
   This is the single source of truth for the home hero, finder card, header nav
   accent and welcome popup. Keep older product-page and catalogue rules above. */
.kgl-card__media{position:relative}
.urlife-add-to-cart-btn,.kgl-buy-now,.kgl-checkout-button{letter-spacing:0}
.urlife-add-to-cart-btn:hover,.kgl-buy-now:hover{transform:translateY(-1px);box-shadow:0 12px 28px #00000018}
.dyu-home > .dyu-hero.dyu-container{
  width:100%;
  max-width:none;
  min-height:calc(60svh + 60px);
  display:grid;
  grid-template-columns:5fr 7fr;
  gap:0;
  align-items:start;
  padding:60px 0 0;
}
.dyu-home .dyu-hero-copy{
  min-width:0;
  padding:clamp(112px,12svh,168px) clamp(28px,3.2vw,52px) 0 clamp(24px,2.75vw,40px);
}
.dyu-home .dyu-hero-copy .dyu-eyebrow{
  margin:0 0 18px;
  color:#000;
  font:700 clamp(72px,4.95vw,104px)/.94 "Instrument Sans",sans-serif;
  letter-spacing:0;
  white-space:normal;
  overflow-wrap:normal;
}
.dyu-home .dyu-hero h1{
  max-width:600px;
  margin:0;
  color:#a74700;
  font-size:clamp(34px,2.45vw,48px);
  line-height:1.08;
  font-weight:700;
}
.dyu-hero-copy>p:not(.dyu-eyebrow){
  max-width:525px;
  margin:28px 0 0;
  color:#110811;
  font-size:18px;
  line-height:1.42;
}
.dyu-home .dyu-hero-media{
  width:100%;
  height:60svh;
  min-height:0;
  max-height:none;
  align-self:start;
  overflow:hidden;
  border-radius:0;
  background:#f4f4f4;
}
.dyu-home .dyu-hero-media img{
  width:100%;
  height:100%;
  aspect-ratio:auto;
  object-fit:cover;
  object-position:60% 50%;
}
.dyu-hero-media>span,.dyu-hero-copy>.dyu-button,.dyu-hero-copy>.dyu-reassurance{display:none}
.dyu-home > .dyu-finder.dyu-container{
  width:min(100% - 80px,1120px);
  max-width:1120px;
  margin:40px auto 34px;
  padding:28px;
  min-height:0;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:22px 28px;
  align-items:center;
  border:1px solid #e4e4e4;
  border-radius:8px;
  background:#fff;
  box-shadow:0 12px 28px #0000000a;
}
.dyu-finder>div:first-child{max-width:660px}
.dyu-finder .dyu-eyebrow{
  margin:0 0 10px;
  color:#c95400;
  font-size:12px;
  letter-spacing:.14em;
  white-space:nowrap;
}
.dyu-finder h2{
  max-width:620px;
  margin:0;
  font-size:clamp(25px,2vw,32px);
  line-height:1.08;
  font-weight:700;
}
.dyu-finder p{
  max-width:660px;
  margin:12px 0 0;
  color:#5f5960;
  font-size:16px;
  line-height:1.5;
}
.dyu-finder .dyu-actions{
  align-self:center;
  display:flex;
  flex-direction:row;
  gap:10px;
  width:auto;
}
.dyu-finder .dyu-button{
  width:auto;
  min-width:112px;
  min-height:44px;
  padding:12px 18px;
  border-radius:4px;
  font-size:13px;
  white-space:nowrap;
}
.dyu-finder .dyu-button-secondary{background:#fff;color:#1b2631!important;border:1px solid #1b2631}
.dyu-strip-trust{
  grid-column:1/-1;
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.dyu-strip-trust span{
  display:inline-flex;
  min-height:0;
  padding:8px 12px;
  border:1px solid #e6e6e6;
  border-radius:999px;
  background:#fff;
  color:#6c6c72;
  font-size:12px;
  line-height:1.25;
}
.dyu-strip-trust span::before{display:none}
.dyu-home > .dyu-container{max-width:none;width:100%;padding-inline:0}
.dyu-container > .dyu-best,
.dyu-container > #dyu-range,
.dyu-container > .dyu-community,
.dyu-container > .dyu-trust{
  width:100%;
  margin-inline:0;
  padding-left:clamp(16px,2.75vw,40px);
  padding-right:clamp(16px,2.75vw,40px);
}
.dyu-container > #dyu-guide,
.dyu-container > #dyu-faq{width:min(100% - 80px,1240px);max-width:1240px}
.dyu-home .dyu-best .kgl-card{flex-basis:calc((100% - 60px)/4)}
.kgl-site-nav a{color:#110811!important;font-weight:400!important}
.kgl-site-nav a[href="/collections/electric-scooters"]{color:#a53f00!important;font-weight:700!important}
.kgl-mobile-nav a{color:#110811!important;font-weight:500!important}
.kgl-mobile-nav a[href="/collections/electric-scooters"]{color:#a53f00!important;font-weight:750!important}
#dyu-offer{
  width:min(820px,calc(100vw - 40px));
  max-width:820px;
  max-height:calc(100dvh - 64px);
  padding:0;
  border:0;
  border-radius:18px;
  overflow:hidden;
  opacity:0;
  transform:translateY(18px) scale(.98);
  box-shadow:0 34px 90px #00000045;
}
#dyu-offer::backdrop{background:#0009;backdrop-filter:blur(1px)}
#dyu-offer[open]{opacity:1;transform:none;animation:dyu-offer-in .28s ease-out both}
@keyframes dyu-offer-in{from{opacity:0;transform:translateY(18px) scale(.98)}to{opacity:1;transform:none}}
.dyu-offer-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:390px;background:#fff}
.dyu-offer-photo{display:block;align-self:stretch;background:#e9e9e9;border:0;box-shadow:none;overflow:hidden}
.dyu-offer-photo>img{display:block;width:100%;height:100%;aspect-ratio:auto;object-fit:cover;object-position:52% 50%}
.dyu-offer-photo small{display:none!important}
.dyu-offer-copy{padding:42px 34px 34px;background:#fff}
.dyu-offer-copy>p:first-child{display:block;margin:0 0 22px;color:#17212b;font-size:22px;font-weight:800;letter-spacing:0;text-transform:uppercase}
.dyu-offer-copy h2{margin:0 0 14px;color:#17212b;font-size:29px;line-height:1.15;letter-spacing:0;font-weight:800}
.dyu-offer-copy h2 strong{color:#c95400}
.dyu-offer-copy>p:not(:first-child){margin:0 0 24px;color:#5b6670;font-size:16px;line-height:1.45}
.dyu-offer-form{display:grid;gap:12px;margin:0}
.dyu-offer-form .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.dyu-offer-form input{width:100%;min-height:48px;border:1px solid #d1d7de;border-radius:7px;padding:12px 14px;font:inherit}
#dyu-offer .dyu-offer-form button[type="submit"]:not(.button-unstyled){min-height:48px;border:0;border-radius:7px;background:#1b2631!important;color:#fff!important;font:800 15px/1.2 "Work Sans",sans-serif;cursor:pointer}
#dyu-copy-status{min-height:18px;margin:0;color:#17212b;font-size:13px}
.dyu-offer-dismiss{min-height:0;margin:14px 0 0;padding:0;border:0;background:transparent;color:#1d4ed8;font-weight:700;text-align:left;text-decoration:none;cursor:pointer}
.dyu-offer-close{position:absolute;top:14px;right:14px;z-index:2;width:40px;height:40px;border:0!important;border-radius:0;background:transparent;color:#6b7280;font-size:30px;line-height:1;box-shadow:none!important;cursor:pointer}
.dyu-offer-close:hover{color:#17212b;background:transparent}.dyu-offer-close:focus,.dyu-offer-close:focus-visible{outline:0!important}
body:has(#dyu-offer[open]) .dyu-offer-tab{display:none}
.dyu-offer-tab{display:none!important}
.dyu-offer-tab img{object-fit:cover;background:transparent}
@media(max-width:1023px) and (min-width:750px){
  .dyu-home .dyu-hero-copy{padding-top:72px}
  .dyu-home .dyu-hero-copy .dyu-eyebrow{font-size:clamp(58px,7vw,76px)}
  .dyu-home .dyu-hero h1{font-size:clamp(30px,3.6vw,38px)}
  .dyu-home > .dyu-finder.dyu-container{width:calc(100% - 48px);grid-template-columns:1fr}
  .dyu-finder .dyu-actions{justify-content:flex-start}
}
@media(max-width:749px){
  .dyu-home > .dyu-hero.dyu-container{grid-template-columns:1fr;min-height:0;padding:28px 16px 0;gap:20px}
  .dyu-home .dyu-hero-copy{order:1;padding:0}
  .dyu-home .dyu-hero-copy .dyu-eyebrow{font-size:clamp(48px,15vw,64px);white-space:normal}
  .dyu-home .dyu-hero h1{font-size:29px}
  .dyu-hero-copy>p:not(.dyu-eyebrow){font-size:17px;line-height:1.5;margin-top:20px}
  .dyu-home .dyu-hero-media{order:2;height:60svh;min-height:320px;width:100%;max-width:none}
  .dyu-home .dyu-hero-media img{object-position:58% 50%}
  .dyu-home > .dyu-finder.dyu-container{width:calc(100% - 32px);margin:28px auto 28px;padding:22px;grid-template-columns:1fr;gap:18px}
  .dyu-finder .dyu-actions{flex-direction:column;width:100%}
  .dyu-finder .dyu-button{width:100%;white-space:normal}
  .dyu-strip-trust{display:flex;gap:8px}.dyu-strip-trust span{font-size:11px}
  .dyu-container > #dyu-guide,.dyu-container > #dyu-faq{width:calc(100% - 32px)}
  #dyu-offer{width:calc(100% - 20px);max-height:calc(100dvh - 24px);border-radius:18px}
  .dyu-offer-layout{grid-template-columns:minmax(0,1fr);width:100%;min-height:0}
  .dyu-offer-photo{width:100%;height:245px;justify-self:stretch}
  .dyu-offer-photo>img{width:100%;height:100%;object-fit:cover;object-position:50% 46%}
  .dyu-offer-copy{width:100%;padding:24px 26px 28px}
  .dyu-offer-copy>p:first-child{font-size:17px;margin-bottom:18px}
  .dyu-offer-copy h2{font-size:27px}
  .dyu-offer-copy>p:not(:first-child){font-size:16px;margin-bottom:22px}
  .dyu-offer-close{top:252px;right:24px;width:30px;height:30px;font-size:28px}
}

@media(max-width:749px){
  .dyu-home .dyu-best{
    padding:32px 0 36px;
    overflow:hidden;
  }
  .dyu-home .dyu-best h2{
    margin:0 0 28px;
    font-size:32px;
  }
  .dyu-home .dyu-best .kgl-product-grid{
    display:flex!important;
    gap:14px;
    overflow-x:auto;
    overscroll-behavior-x:contain;
    scroll-snap-type:x mandatory;
    scroll-padding-left:16px;
    padding:0 16px 12px;
    -webkit-overflow-scrolling:touch;
  }
  /* 2026-09-24: was flex:0 0 min(76vw,286px) - a deliberate partial-width
     carousel-peek card, structurally different from URLIFE's real mobile
     Best Sellers (one full-width card per view, no next-card peek).
     100% resolves against the grid's own content-box (already excludes
     the grid's own 16px+16px padding above), so this fills the visible
     scroll area exactly, matching URLIFE. */
  .dyu-home .dyu-best .kgl-card{
    flex:0 0 100%!important;
    width:100%;
    min-width:0;
    border:1px solid #eee;
    background:#fff;
    scroll-snap-align:start;
  }
  .dyu-home .dyu-best .kgl-card__media{
    display:flex;
    align-items:center;
    justify-content:center;
    aspect-ratio:1;
    padding:14px 14px 0;
  }
  .dyu-home .dyu-best .kgl-card__media img{
    width:100%;
    height:100%;
    object-fit:contain;
  }
  .dyu-home .dyu-best .kgl-card__price{
    top:10px;
    right:10px;
    left:auto;
    max-width:calc(100% - 20px);
    padding:7px 9px;
    font-size:13px;
    line-height:1.1;
    white-space:nowrap;
  }
  .dyu-home .dyu-best .kgl-card__price .dyu-price-label{
    display:none;
  }
  .dyu-home .dyu-best .kgl-card__body{
    min-height:0;
    padding:16px 14px 18px;
  }
  .dyu-home .dyu-best .kgl-card__title{
    min-height:0;
    max-height:3.75em;
    overflow:hidden;
    font:500 18px/1.25 "Instrument Sans",sans-serif;
    text-wrap:balance;
    overflow-wrap:normal;
    word-break:normal;
  }
  .dyu-home .dyu-best .dyu-code-price{
    display:block;
    margin:10px 0 14px;
    text-align:center;
  }
  .dyu-home .dyu-best .dyu-code-price .dyu-price-label{
    display:block;
    margin:0 0 2px;
    color:#5f5960;
    font-size:12px;
  }
  .dyu-home .dyu-best .dyu-offer-amount{
    display:block;
    font-size:24px;
    line-height:1.2;
  }
  .dyu-home .dyu-best .dyu-saving{
    display:block;
    margin-top:6px;
    font-size:12px;
    line-height:1.35;
  }
  .dyu-home .dyu-best .kgl-card__buy{
    width:100%;
    min-height:46px;
    font-size:14px;
  }
}

@media(max-width:749px){
  .kgl-product-static{grid-template-columns:1fr;gap:24px;padding:0 16px 40px;min-height:0}
  .kgl-product-static h1{font-size:28px}
  .kgl-product-static p:last-child{font-size:15px}
}

/* Real Size selector (added alongside the existing Colour selector for
   products that vary by size, e.g. the heated winter vest) - tighten the
   gap between the two stacked .urlife-variant-selector blocks instead of
   the 64px top margin meant for a single standalone selector. */
.urlife-variant-selector + .urlife-variant-selector { margin-top: 16px; }

/* 2026-09-22 full-clone pass: mega-menu nav (structurally clones
   urlifebikes.co.uk's real hover/focus mega-menu under "URLIFE Gear"),
   mobile sub-nav indent, footer newsletter form, and the offer popup's
   reopening tab (image + label) not previously styled together. */
.dyu-nav-item { position: relative; display: flex; align-items: center; }
.dyu-mega-panel {
  position: absolute; top: 100%; left: 50%; transform: translateX(-50%) translateY(6px);
  background: #fff; border: 1px solid #dbe1e6; border-radius: 10px;
  box-shadow: 0 16px 40px #17212b1f; padding: 14px; display: flex; flex-direction: column;
  gap: 4px; min-width: 220px; opacity: 0; visibility: hidden; pointer-events: none;
  transition: opacity .15s ease, transform .15s ease; z-index: 40;
}
.dyu-nav-item:hover .dyu-mega-panel,
.dyu-nav-item:focus-within .dyu-mega-panel {
  opacity: 1; visibility: visible; pointer-events: auto; transform: translateX(-50%) translateY(0);
}
.dyu-mega-panel a { padding: 8px 10px; border-radius: 6px; color: #17212b; white-space: nowrap; }
.dyu-mega-panel a:hover { background: #f5f7f9; text-decoration: none; }
.kgl-mobile-nav a.dyu-mobile-subnav { padding-left: 24px; font-size: 13px; color: #5f6b75; }

.dyu-footer .dyu-newsletter form { margin: 0; }
.dyu-footer-newsletter-form small { color: #b7c0c8; }

.dyu-offer-tab { display: flex; }
.dyu-offer-tab span { font-size: 13px; }
#dyu-offer-form { display: flex; gap: 8px; margin: 18px 0 6px; flex-wrap: wrap; }
#dyu-offer-form input { flex: 1 1 200px; min-height: 48px; border: 1px solid #c7d0d8; border-radius: 6px; padding: 10px 12px; font-size: 15px; }
#dyu-offer-form button { flex-shrink: 0; }
.visually-hidden { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

@media (max-width: 1100px) {
  .dyu-mega-panel { display: none; }
}

/* 2026-09-22 round 3 (owner deep-dive pass): hero subhead, best-seller card
   exact format (corner badge / regular-strikethrough / save pill / buy now),
   "coming soon" category tiles, full-width collection page, footer
   partner-links row, finder card 3-button + pill-reassurance layout -
   cloned structurally from urlifebikes.co.uk's real live pages (owner
   screenshots + direct CSS checks this session), DYU's own real content. */

.dyu-hero-subhead { color: #d35400; font-weight: 700; font-size: clamp(20px, 2vw, 26px); margin: 8px 0 16px; }

.dyu-finder { display: flex; flex-wrap: wrap; align-items: flex-start; justify-content: space-between; gap: 20px 28px; }
.dyu-finder-text { flex: 1 1 420px; }
.dyu-finder .dyu-actions { flex: 0 0 auto; display: flex; gap: 10px; flex-wrap: wrap; }
.dyu-finder .dyu-reassurance { flex: 1 0 100%; list-style: none; display: flex; flex-wrap: wrap; gap: 10px; margin: 22px 0 0; padding: 0; }
.dyu-finder .dyu-reassurance li { border: 1px solid #d9e0e6; border-radius: 999px; padding: 8px 16px; font-size: 13px; font-weight: 600; color: #3c4650; background: #fff; }

.dyu-bs-card { position: relative; }
.dyu-bs-card .kgl-card__media { position: relative; }
.dyu-corner-badge { position: absolute; top: 10px; right: 10px; z-index: 2; background: #c95400; color: #fff; font-size: 12px; font-weight: 800; padding: 5px 10px; border-radius: 6px; }
.dyu-regular-price { color: #767676; font-size: 14px; margin-top: 10px; }
.dyu-bs-card .dyu-code-price { margin: 4px 0 10px; font-size: 16px; }
.dyu-bs-card .dyu-offer-amount { color: #c95400; }
.dyu-save-pill { display: inline-block; background: #c95400; color: #fff; font-size: 11px; font-weight: 800; padding: 3px 10px; border-radius: 999px; margin-bottom: 12px; }
.dyu-buy-now { display: block; width: 100%; background: #1a1f24; color: #fff; text-align: center; border-radius: 6px; min-height: 46px; line-height: 46px; font-weight: 700; text-decoration: none; }
.dyu-buy-now:hover { background: #000; }
.dyu-bs-card small { display: block; margin-top: 10px; color: #767676; font-size: 12px; line-height: 1.5; }

.dyu-category-soon { cursor: default; }
.dyu-soon-media-wrap { position: relative; display: block; aspect-ratio: 4/3; overflow: hidden; background: #eef1f4; }
.dyu-soon-media-wrap img { width: 100%; height: 100%; object-fit: cover; filter: grayscale(35%); opacity: 0.85; }
.dyu-soon-flag { position: absolute; left: 10px; bottom: 10px; background: #1a1f24; color: #fff; font-size: 11px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; padding: 5px 10px; border-radius: 999px; }
.dyu-category-soon span:last-child { color: #9aa5ae; }

.dyu-catalog-full { width: 100%; padding: 40px 0 0; }
.dyu-catalog-header { margin-bottom: 20px; }
.dyu-catalog-grid { display: grid; grid-template-columns: repeat(5, minmax(0,1fr)); gap: 2px; width: 100%; }
.dyu-catalog-grid .kgl-card { border-radius: 0; }
.dyu-catalog-info { max-width: 900px; margin: 0 auto; text-align: center; border: 1px solid #e6e6e6; border-radius: 12px; padding: 40px; }
.dyu-catalog-badges { display: flex; justify-content: center; gap: 24px; margin-top: 28px; flex-wrap: wrap; }
.dyu-catalog-badges > div { display: flex; align-items: flex-start; gap: 10px; text-align: left; max-width: 220px; }
.dyu-catalog-badges span { flex-shrink: 0; }
.dyu-catalog-badges p { margin: 4px 0 0; font-size: 13px; color: #666; }

.dyu-footer-partners { display: flex; flex-wrap: wrap; gap: 8px 16px; align-items: center; padding: 20px 0 0; font-size: 13px; color: #b7c0c8; border-top: 1px solid #ffffff20; margin-top: 16px; }
.dyu-footer-partners a { display: inline; padding: 0; color: #e6ebee; text-decoration: underline; }

@media (max-width: 1100px) { .dyu-catalog-grid { grid-template-columns: repeat(3, minmax(0,1fr)); } }
@media (max-width: 767px) {
  .dyu-catalog-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .dyu-catalog-info { padding: 24px; }
  .dyu-finder .dyu-actions { width: 100%; }
  .dyu-finder .dyu-actions .dyu-button { flex: 1 1 auto; }
}

/* Real mobile tap-target bug found via Playwright measurement this session
   (owner explicitly asked mobile to be checked for real, not assumed): an
   earlier cascade layer shrank .dyu-offer-close to 30x30 and
   .dyu-offer-dismiss to a 0-height text link with no padding - both well
   under the ~44px minimum touch target. Restored real tap-target sizes
   without changing their visual position/look. */
.dyu-offer-close { width: 44px !important; height: 44px !important; display: flex !important; align-items: center; justify-content: center; }
.dyu-offer-dismiss { min-height: 44px !important; padding: 12px 0 !important; display: inline-flex !important; align-items: center; }

/* 2026-09-23 owner correction: icon-only logo, sized larger to match
   URLIFE's real header footprint (was a small circular text badge). */
/* Real bug found this session: previous size (140x76) was ~17% larger than
   URLIFE's own real measured header logo footprint (120x65, measured live
   via getBoundingClientRect on urlifebikes.co.uk) - matched exactly. */
.kgl-site-logo, .kgl-site-logo img { width: 120px; height: 65px; object-fit: contain; }
@media (max-width: 767px) {
  .kgl-site-logo, .kgl-site-logo img { width: 80px; height: 43px; }
}

/* ===== 2026-09-23 pixel-precision design QA pass (owner overlay/measurement
   report against the real live urlifebikes.co.uk) - fixes applied in the
   owner's given priority order. Real background/border colours sampled
   from URLIFE's own live computed styles this session. ===== */

/* --- Header: full-width, right-aligned controls, active nav, cart badge --- */
.kgl-site-header {
  max-width: none !important;
  width: 100% !important;
  padding-inline: 60px !important;
  margin: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 40px !important;
}
.kgl-site-nav { flex: 1 1 auto; }
.kgl-header-actions { margin-left: auto; flex-shrink: 0; }
.kgl-site-nav a.is-active { color: #c95400 !important; font-weight: 800 !important; }
.kgl-cart-count { background: #1a1f24 !important; color: #fff; border-radius: 999px; }
.dyu-currency { display: flex; align-items: center; gap: 6px; font-size: 14px; font-weight: 600; color: #17212b; padding-right: 4px; cursor: default; }
.dyu-currency-flag { font-size: 16px; }
.dyu-currency-caret { width: 14px; height: 14px; stroke: currentColor; fill: none; stroke-width: 2; }
@media (max-width: 1100px) { .dyu-currency { display: none; } }

/* --- Announcement bar: ~51px, one solid dark green, white text, orange/red highlights only --- */
.dyu-announcement {
  height: 51px !important;
  background: #0b3d2e !important;
  font-size: 14px !important;
  line-height: 1.3 !important;
  padding: 0 48px !important;
}
.dyu-announcement strong {
  background: none !important;
  color: #ffb347 !important;
  padding: 0 !important;
  border-radius: 0 !important;
  font-weight: 800;
}

/* --- Hero: padding-inline 60px, vertical-center, image bounds --- */
.dyu-home > .dyu-hero.dyu-container {
  padding-inline: 60px !important;
  align-items: center !important;
}
.dyu-home .dyu-hero-copy {
  align-self: center !important;
  padding-top: 0 !important;
}
.dyu-home .dyu-hero-media {
  margin-right: 60px !important;
  margin-left: 18px !important;
  width: calc(100% - 78px) !important;
}
.dyu-hero-copy > p:not(.dyu-eyebrow) {
  max-width: 480px !important;
  line-height: 1.5 !important;
}

/* --- Finder card: lighter title weight, left padding, vertical button alignment --- */
.dyu-finder { padding-left: 44px !important; align-items: center !important; }
.dyu-finder-text h2 { font-weight: 650 !important; line-height: 1.25 !important; }
.dyu-finder .dyu-actions { align-self: center; }

/* --- Best Sellers: constrain width so cards read ~463px at large viewports --- */
.dyu-best { margin-inline: 47px !important; padding-inline: 16px !important; padding-top: 28px !important; }

/* --- Product image containment (normalises scale/crop without touching source files) --- */
.kgl-card__media, .dyu-bs-card .kgl-card__media { aspect-ratio: 1/1; display: grid; place-items: center; overflow: hidden; background: #f7f4f1; }
/* 2026-09-24: was width/height:88%, leaving a real ~19px pale margin on
   every side (measured live: a 282x282 image inside a 321x321 container) -
   owner-reported "too much empty framing" on Best Sellers/collection
   cards. Checked URLIFE's real live best-sellers card image
   (.best-sellers-carousel__image) directly: it's sized 1:1 with its
   container (no shrink), so the bike fills the card. Matching that here -
   the container's own aspect-ratio:1 + object-fit:contain still prevents
   any distortion or cropping for non-square source photos. */
.kgl-card__media img, .dyu-bs-card .kgl-card__media img { width: 100%; height: 100%; object-fit: contain; }

/* --- Discount badge: compact centered pill, not a full-width strip --- */
.dyu-corner-badge {
  display: inline-flex !important;
  width: auto !important;
  padding: 5px 12px !important;
  border-radius: 3px !important;
  top: 10px; right: 10px;
}

/* --- Carousel arrows on the Best Sellers row --- */
.dyu-best { position: relative; }
.dyu-carousel-arrow {
  position: absolute; top: 45%; transform: translateY(-50%);
  width: 44px; height: 44px; border-radius: 50%;
  background: #fff; border: 1px solid #e2e2e2; box-shadow: 0 2px 8px #0000001a;
  display: flex; align-items: center; justify-content: center; cursor: pointer; z-index: 3;
}
.dyu-carousel-arrow:hover { background: #f7f4f1; }
.dyu-carousel-arrow--prev { left: -6px; }
.dyu-carousel-arrow--next { right: -6px; }
.dyu-carousel-arrow svg { width: 18px; height: 18px; stroke: #17212b; fill: none; stroke-width: 2; }

/* --- Section surface colours (sampled from real URLIFE-family palette) --- */
body { background: #ffffff; }
.dyu-best { background: #faf9f7; }
.kgl-card, .dyu-bs-card { background: #ffffff; border-color: #e7e4e0; }

/* --- "Leave a review" fixed widget --- */
.dyu-review-widget {
  position: fixed; right: 18px; bottom: 18px; z-index: 900;
  background: #17212b; color: #fff; font-size: 13px; font-weight: 700;
  padding: 10px 16px; border-radius: 8px; box-shadow: 0 6px 20px #00000026;
  text-decoration: none !important; display: inline-flex; align-items: center; gap: 6px;
  min-width: 100px; min-height: 37px; justify-content: center;
}
.dyu-review-widget:hover { background: #0c1620; }
@media (max-width: 767px) { .dyu-review-widget { right: 12px; bottom: 12px; font-size: 12px; padding: 9px 14px; } }

/* ===== 2026-09-23 round 6 - fresh live-vs-live re-check (owner: Best
   Sellers still didn't match). This round's fix (text-align:left) turned
   out to be based on a screenshot misread - see the corrected, computed-
   style-verified block further below which restores center alignment
   (the real, confirmed-correct value) and fixes several other real
   mismatches (border/radius, colour, font sizes) found via a full
   computed-style diff against urlifebikes.co.uk's live DOM. ===== */
.dyu-bs-card .dyu-save-pill { display: inline-flex; }
.dyu-bs-card small { text-align: center !important; }

/* --- Sticky header (real bug: URLIFE's header nav bar stays pinned to the
   top on scroll while its announcement bar scrolls away - verified live on
   urlifebikes.co.uk this session; DYU's whole header-group had no
   position rule at all so it scrolled away completely). --- */
.kgl-site-header { position: sticky; top: 0; z-index: 500; background: #fff; }

/* --- Currency flag: URLIFE uses a real flag image
   (cdn.shopify.com/static/images/flags/gb.svg), not an emoji - emoji flags
   don't render on Windows, which is what "doesn't have the flag" was. --- */
.dyu-currency-flag-emoji { display: none !important; }
.dyu-currency-flag-img { width: 18px; height: 13px; display: inline-block; border-radius: 2px; }

/* --- FAQ section styling parity with URLIFE's real accordion --- */
.dyu-faq { text-align: left; }
.dyu-faq h2 { text-align: center; }
.dyu-faq > p { text-align: center; color: #666; }

/* --- "Customer stories" / review-solicitation section --- */
.dyu-stories { text-align: center; padding: 64px 0; }
.dyu-stories .dyu-eyebrow { text-align: center; }
.dyu-stories h2 { margin: 8px 0 12px; }
.dyu-stories > p { color: #666; max-width: 560px; margin: 0 auto 32px; }
.dyu-review-card { max-width: 620px; margin: 0 auto 48px; border: 1px solid #e7e4e0; border-radius: 10px; padding: 28px 32px; }
.dyu-review-card p { margin: 0 0 18px; }
.dyu-review-card a { display: inline-flex; align-items: center; justify-content: center; background: #17212b; color: #fff !important; text-decoration: none !important; padding: 12px 22px; border-radius: 6px; font-weight: 700; font-size: 14px; }
.dyu-review-card a:hover { background: #0c1620; }

/* --- Behind-the-scenes teaser strip above Customer stories --- */
.dyu-teaser-strip { display: flex; justify-content: space-between; align-items: center; padding: 20px 0; border-top: 1px solid #e7e4e0; font-size: 15px; }
.dyu-teaser-strip a { color: #17212b; text-decoration: underline; font-weight: 600; }
@media (max-width: 600px) { .dyu-teaser-strip { flex-direction: column; gap: 10px; text-align: center; } }

/* Real bug found via computed-style inspection: body was computing
   overflow-x:hidden / overflow-y:auto from somewhere in the shared base
   stylesheet, which makes body its own scroll container and breaks
   position:sticky on the header (sticky needs the viewport/documentElement
   to be the scrolling box). Force it back to a normal non-scrolling body
   so the sticky header actually works. */
html, body { overflow-y: visible !important; }
body { overflow-x: hidden; }

/* Real bug: .kgl-card__body is a flex column container, so the "Save 10%"
   pill (inline-flex) was stretching to the full card width via the default
   flex align-self:stretch, even though inline-flex governs its own
   children not itself as a flex item. Pin it to its content width. */
/* Real URLIFE computed style (confirmed via fresh DOM inspection this
   round) shows the "Save 10%" pill CENTERED, not left-aligned - correcting
   the align-self:flex-start override from an earlier round that was based
   on a screenshot misread. */
.dyu-bs-card .dyu-save-pill { align-self: center !important; }

/* --- Simple collection-page card (real URLIFE pattern: image, title,
   single orange price, no button/badge) - see kougouleu-store.js's card(). --- */
.dyu-simple-card .kgl-card__body { text-align: left; padding: 16px 4px; }
.dyu-simple-card .kgl-card__title { font-size: 16px; font-weight: 500; color: #17212b; margin: 0 0 8px; }
.dyu-simple-price { color: #c95400; font-weight: 700; font-size: 16px; }
.dyu-simple-card .kgl-card__media { background: #f4f4f4; }

/* Real bug found this session via rapid-interval Playwright screenshots
   (owner: "brief display error... less than a second" when clicking into a
   product): the static SEO-fallback markup (productStaticMain() - a plain
   image+intro+specs-grid layout meant only for non-JS crawlers) was fully
   visible for ~150-250ms after navigation before kougouleu-store.js's
   catalog() fetch resolved and replaced #kgl-product-root's innerHTML with
   the real, richer PDP layout (price card, gallery, trust badges, colour
   picker). To a real visitor with JS enabled this reads as a jarring
   flash of a completely different, plainer page. The static markup stays
   in the raw HTML (still readable by crawlers/JS-rendering search bots)
   but is now hidden from visual rendering so real users see a brief blank
   area instead of a wrong-layout flash while the real data loads. */
.kgl-product-static { display: none; }
#kgl-product-root { min-height: 620px; display: block; }
@media (max-width: 767px) { #kgl-product-root { min-height: 420px; } }

/* Real bug found this session: owner's exact reference screenshot shows a
   dark "Claim discount" button (matching the site's dark-navy secondary
   button treatment) and only the "10% OFF" portion of the heading in
   orange, the rest black - DYU's version had an orange button and a
   fully-black heading (the <strong> wrap was missing from the markup even
   though CSS for it already existed). Fixed both. */
.dyu-offer-copy .kgl-card__buy { background: #17212b !important; }
.dyu-offer-copy .kgl-card__buy:hover { background: #0c1620 !important; }

/* ===== Best Sellers - real computed-style diff against urlifebikes.co.uk's
   actual live DOM (not a screenshot guess) this session. My round-6 "fix"
   to text-align:left was WRONG - real URLIFE computed style is CENTER for
   title/regular-price/with-code/badge/button/disclaimer, only the small
   corner ribbon badge is left ("start") aligned. Reverting that regression
   and fixing several other real numeric mismatches found via the diff:
   card border/radius were completely missing, the discounted-price colour
   was a different, darker orange than the real #d35400, and font sizes on
   the badge/button/corner-badge were all slightly off. ===== */
.dyu-bs-card .kgl-card__body,
.dyu-bs-card .kgl-card__title,
.dyu-bs-card .dyu-regular-price { text-align: center !important; }
.dyu-bs-card { border: 1px solid #e0e0e0 !important; border-radius: 8px !important; overflow: hidden; }
.dyu-bs-card .kgl-card__title { font-size: 16px !important; font-weight: 500 !important; }
.dyu-bs-card .dyu-regular-price { font-size: 14px !important; }
.dyu-bs-card .dyu-code-price { text-align: center !important; }
.dyu-bs-card .dyu-offer-amount { color: #d35400 !important; font-size: 20px !important; font-weight: 700 !important; }
.dyu-bs-card .dyu-save-pill { font-size: 12px !important; font-weight: 600 !important; padding: 4px 12px !important; border-radius: 4px !important; margin-inline: auto !important; }
.dyu-bs-card .dyu-buy-now { font-size: 16px !important; font-weight: 600 !important; border-radius: 4px !important; }
.dyu-corner-badge { font-size: 13px !important; font-weight: 600 !important; }

/* Owner instruction: PDP "Buy Now" button should use the real purple colour
   sampled directly from the owner's supplied swatch (#5433eb) - colour
   only, no Shopify/Shop Pay branding or wordmark (label stays "Buy now -
   secure checkout", DYU runs on Stripe, not Shopify). */
.urlife-express-checkout .kgl-buy-now { background: #5433eb !important; }
.urlife-express-checkout .kgl-buy-now:hover { background: #4526c9 !important; }

/* ===== 2026-09-24 mobile regression fix (owner: "mobile is completely
   broken"). Root cause: the 2026-09-23 desktop pixel-precision QA pass
   above added several unconditional `!important` padding/margin rules
   (header padding-inline:60px, hero-container padding-inline:60px,
   hero-media margins, finder padding-left:44px, Best Sellers
   margin-inline:47px) with no @media(max-width:767px) override. Because
   they're !important, they silently clobbered this file's own pre-existing,
   correct mobile values (the one-line @media(max-width:767px) block earlier
   in this file, e.g. .kgl-site-header{padding:12px 16px}) on every mobile
   viewport, not just desktop as intended.
   Worst real breakage, confirmed via Playwright at 390px width + a live
   getBoundingClientRect() diff: .dyu-best (Best Sellers) computed to
   left:55/right:429 against a 390px-wide viewport - i.e. its right edge sat
   39px past the physical screen edge, silently clipped by this file's own
   `body{overflow-x:hidden}` rule (added earlier this session to make the
   sticky header work) rather than causing a visible scrollbar. Screenshot
   proof: the second Best Sellers card's price/discount/buy-button and the
   right carousel arrow were entirely cut off-screen. Cross-checked against
   URLIFE's real live mobile Best Sellers section (one full-width, centered
   card, no overflow) and AOVOPRO's real live mobile header
   (padding:16px each side) as working references - restoring DYU's
   values to match. */
@media (max-width: 767px) {
  .kgl-site-header { padding-inline: 16px !important; gap: 16px !important; }
  .dyu-home > .dyu-hero.dyu-container { padding-inline: 16px !important; }
  .dyu-home .dyu-hero-media {
    margin-left: auto !important;
    margin-right: auto !important;
    width: 100% !important;
    max-width: 520px !important;
  }
  .dyu-finder { padding-left: 24px !important; }
  /* .dyu-best also carries the .dyu-container class, which sets
     width:min(100%,1400px) (line ~925) - not `auto` - so any extra
     margin-inline here doesn't shrink the box to fit, it just pushes the
     whole element beyond its parent's edge (same class of bug as the
     Thermoscup aspect-ratio+max-height width-shrink incident: invisible
     from the CSS text alone, only found via getBoundingClientRect()).
     Zero it out on mobile so .dyu-container's own padding-inline:16px +
     margin-inline:auto (already correct) governs spacing, same as every
     other section on the page. */
  .dyu-best { margin-inline: 0 !important; }
}

/* ===== 2026-09-24 image-integrity pass =====
   The promotional source images have deliberately composed, incompatible
   aspect ratios: the homepage hero is 1032x576 (landscape), while the offer
   artwork is 672x900 (portrait). Later URLIFE-matching rules forced both into
   fixed-height boxes with object-fit:cover. That removed 36.5% of the hero on
   desktop, 62.3% on mobile, and cut the rider/bike out of the offer artwork.
   Preserve each full composition instead of asking a single focal point to
   survive every viewport. Product/catalogue imagery already uses contain. */
.dyu-home .dyu-hero-media {
  height: auto;
  aspect-ratio: 1032 / 576;
  align-self: center;
  background: #f4f4f4;
}
.dyu-home .dyu-hero-media img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}
.dyu-offer-layout {
  grid-template-columns: minmax(280px, .82fr) minmax(0, 1.18fr);
  min-height: 450px;
}
.dyu-offer-photo {
  justify-content: center;
  background: #f3f0ed;
}
.dyu-offer-photo > img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

@media (max-width: 749px) {
  .dyu-home .dyu-hero-media {
    height: auto;
    min-height: 0;
    aspect-ratio: 1032 / 576;
  }
  .dyu-offer-layout {
    grid-template-columns: minmax(0, 1fr);
    min-height: 0;
  }
  .dyu-offer-photo {
    height: min(300px, 38dvh);
  }
  .dyu-offer-photo > img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
  }
  .dyu-offer-close {
    top: 10px;
    right: 12px;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: #fffffff0;
  }
}


/* ===== 2026-09-30 URLIFE mobile and collection parity ===== */
html, body {
  margin: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
}
body { overflow-x: clip; }

.kgl-site-header { width: 100% !important; max-width: none !important; box-sizing: border-box !important; }

/* URLIFE promo bar: naturally sized rotating slides, gradient background,
   highlighted code pill and responsive wrapping (no fixed-height clipping). */
.dyu-announcement {
  height: 69.59375px !important;
  min-height: 69.59375px !important;
  padding: 0 !important;
  overflow: hidden;
  background: linear-gradient(90deg, #0b3d2e, #0f766e, #0b3d2e) !important;
  background-size: 200% 100% !important;
  animation: dyu-promobar-shift 9s ease-in-out infinite;
  font-size: 14px !important;
  line-height: 1.4 !important;
}
.dyu-announcement-slides {
  position: relative;
  width: 100%;
  min-height: 1.4em;
}
.dyu-announcement [data-dyu-announcement] {
  width: 100%;
  min-height: 42px;
  padding: 11px 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  flex-wrap: wrap;
  color: #fff;
  text-align: center;
  text-decoration: none;
  box-sizing: border-box;
}
.dyu-announcement [data-dyu-announcement][hidden] { display: none !important; }
.dyu-announcement-code {
  display: inline-block;
  padding: 3px 12px;
  border-radius: 999px;
  background: #c7f464;
  color: #04120a;
  font-weight: 800;
  letter-spacing: .06em;
}
.dyu-announcement-date { color: #ff8b80; font-weight: 800; }
@keyframes dyu-promobar-shift { 0%,100% { background-position: 0 50%; } 50% { background-position: 100% 50%; } }

/* URLIFE collection front: five square editorial tiles on desktop, two on
   mobile, with the same 40px/16px page gutters and image crop behaviour. */
.dyu-home #dyu-range.dyu-container {
  width: 100% !important;
  max-width: none !important;
  padding-inline: 40px !important;
}
.dyu-category-grid { grid-template-columns: repeat(5, minmax(0, 1fr)) !important; gap: 40px 24px !important; }
.dyu-category { border: 0 !important; border-radius: 0 !important; padding: 0 0 24px !important; overflow: visible !important; }
.dyu-category img {
  display: block;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 1 / 1 !important;
  object-fit: cover !important;
  padding: 0 !important;
  background: #f4f3f5 !important;
}
.dyu-category h3 { margin: 16px 16px 6px !important; font-size: 16px !important; line-height: 1.25 !important; font-weight: 500 !important; }
.dyu-category span { margin: 0 16px !important; font-size: 12px !important; color: #666 !important; }

/* Prevent desktop containers from growing beyond the viewport. */
.dyu-home > .dyu-best { width: auto !important; margin-inline: 40px !important; }

/* Match URLIFE's compact 680px two-panel offer and eliminate the side bands
   by filling the media frame instead of letterboxing the portrait artwork. */
#dyu-offer { max-width: 680px !important; width: calc(100% - 32px) !important; border-radius: 16px !important; }
.dyu-offer-layout { grid-template-columns: minmax(280px, 320px) minmax(0, 1fr) !important; min-height: 0 !important; }
.dyu-offer-photo { align-self: stretch !important; justify-self: stretch !important; background: #eee !important; }
.dyu-offer-photo > img { width: 100% !important; height: 100% !important; object-fit: cover !important; object-position: 50% 50% !important; }
.dyu-offer-copy { padding: 36px 34px !important; }
.dyu-offer-copy small { display: none !important; }

@media (max-width: 749px) {
  .dyu-announcement { height: 89px !important; min-height: 89px !important; font-size: 12.5px !important; }
  .dyu-announcement [data-dyu-announcement] { min-height: 0; padding: 10px 12px; }
  .dyu-home > .dyu-hero.dyu-container { padding-top: 45px !important; }
  .dyu-home .dyu-hero-media {
    order: -1;
    width: 100% !important;
    max-width: none !important;
    aspect-ratio: 358 / 422 !important;
    border-radius: 0 !important;
    background: #f4f4f4;
  }
  .dyu-home .dyu-hero-media img { object-fit: cover !important; object-position: 50% 50% !important; }
  .dyu-home .dyu-hero { gap: 32px !important; }
  .dyu-home #dyu-range.dyu-container { padding-inline: 16px !important; }
  .dyu-category-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 28px 16px !important; }
  .dyu-category h3 { margin: 14px 0 6px !important; font-size: 15px !important; }
  .dyu-category span { margin: 0 !important; }
  .dyu-home > .dyu-best { width: auto !important; margin-inline: 0 !important; }
  #dyu-offer { width: calc(100% - 20px) !important; max-width: 400px !important; max-height: calc(100dvh - 20px) !important; }
  .dyu-offer-layout { grid-template-columns: minmax(0, 1fr) !important; }
  .dyu-offer-photo { display: block !important; width: 100% !important; height: auto !important; aspect-ratio: 1 / 1 !important; }
  .dyu-offer-photo > img { object-fit: cover !important; object-position: 50% 48% !important; }
  .dyu-offer-copy { padding: 24px 22px 26px !important; }
  .dyu-offer-copy h2 { font-size: 27px !important; }
}

@media (prefers-reduced-motion: reduce) { .dyu-announcement { animation: none !important; } }

/* DYU final image-fit safeguard: preserve complete products in collection and product cards. */
.dyu-category img,.kgl-card__media img{object-fit:contain!important;object-position:center!important}
