/*
Theme Name: Ninja Airfryer Amazon Style
Theme URI: https://ninjaairfryerstore.com/
Author: NewKepler + ChatGPT
Version: 1.0.11
Text Domain: ninja-airfryer
*/

:root{
  --ink:#0f172a;
  --muted:#6b7280;
  --bg:#f3f4f6;
  --card:#ffffff;
  --line:#e5e7eb;
  /* Amazon NL-like nav colors */
  --header:#232f3e;
  --header2:#37475a;
  /* Amazon search / accent orange */
  --amazon-orange:#febd69;
  --amazon-yellow:#ffd814;
  --btn-orange:#f0a12a;
  --cart-orange:#f08804;
  --radius:14px;
  --shadow:0 10px 25px rgba(15,23,42,.08);
}

*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  color:var(--ink);
  background:var(--bg);
}

/* HEADER */
.site-header{
  /* Solid header color to match the logo block */
  background: var(--header2);
  color:#fff;
}
.site-header-top{
  display:flex;
  align-items:center;
  gap:12px;
  padding:8px 12px;
  min-height:56px;
}
.nav-toggle{
  width:44px;height:44px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.06);
  border-radius:10px;
  display:grid;
  place-items:center;
  cursor:pointer;
}
.nav-toggle-bars,
.nav-toggle-bars::before,
.nav-toggle-bars::after{
  content:"";
  display:block;
  width:18px;
  height:2px;
  background:#fff;
  border-radius:999px;
  position:relative;
}
.nav-toggle-bars::before{position:absolute;top:-6px;left:0}
.nav-toggle-bars::after{position:absolute;top:6px;left:0}

.site-logo img{
  height:72px;
  max-height:72px;
  width:auto;
  display:block;
}
.header-search{flex:1; min-width:220px;}
.site-header-search-form{
  display:flex;
  align-items:stretch;
  background:#fff;
  border-radius:8px;
  overflow:hidden;
  height:40px;
}

/* Delivery row (under search) */
.site-header-delivery{
  display:flex;
  align-items:center;
  gap:8px;
  padding:6px 14px 10px;
  font-size:13px;
  line-height:1.2;
  color:#fff;
}
.site-header-delivery .deliver-icon{
  width:16px;
  height:16px;
  flex:0 0 auto;
  fill:none;
  stroke:#fff;
  stroke-width:1.8;
}
.site-header-delivery .deliver-prefix{opacity:.9;}
.site-header-delivery .deliver-select{
  background:rgba(255,255,255,.08);
  color:#fff;
  border:1px solid rgba(255,255,255,.18);
  border-radius:999px;
  padding:2px 10px;
  height:28px;
  font-size:13px;
}
.site-header-delivery .deliver-select option{color:#111827;}
.search-field{
  -webkit-tap-highlight-color: transparent;

  -webkit-appearance:none;
  appearance:none;

  flex:1;
  border:0;
  padding:0 12px;
  font-size:14px;
  outline:none;
}

/* Style the submit button (prevents odd iOS/Browser default highlights) */
.search-submit{
  border:0;
  width:52px;
  background:var(--amazon-orange);
  display:grid;
  place-items:center;
  cursor:pointer;
}
.search-submit svg{
  width:18px;height:18px;
  stroke:#111;
  fill:none;
  stroke-width:2.5;
}

/* Reduce iOS search decorations */
.search-field::-webkit-search-cancel-button{ -webkit-appearance:none; display:none; }
.search-field::-webkit-search-decoration{ -webkit-appearance:none; }

/* SEARCH INPUT: remove iOS/Chrome blue autofill/focus blobs */
.search-field{
  -webkit-tap-highlight-color: transparent;

  background:#fff;
  color:#111;
  -webkit-appearance:none;
  appearance:none;
  border-radius:0;
  box-shadow:none;
}
.search-field:focus{
  outline:none;
  box-shadow:none;
}
.search-field::-webkit-search-cancel-button,
.search-field::-webkit-search-decoration,
.search-field::-webkit-search-results-button,
.search-field::-webkit-search-results-decoration{
  -webkit-appearance:none;
}
.search-field:-webkit-autofill,
.search-field:-webkit-autofill:hover,
.search-field:-webkit-autofill:focus{
  -webkit-text-fill-color:#111;
  transition: background-color 9999s ease-in-out 0s;
  box-shadow: 0 0 0 1000px #fff inset !important;
}
.site-header-search-button{
  border:0;
  width:52px;
  background:var(--amazon-orange);
  display:grid;
  place-items:center;
  cursor:pointer;
}
.site-header-search-button svg{
  width:18px;height:18px;
  stroke:#111;
  fill:none;
  stroke-width:2.5;
}
.header-cart a{
  width:44px;height:44px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.06);
  border-radius:10px;
  color:#fff;
}
.header-cart svg{width:22px;height:22px; fill:currentColor;}

.site-header-nav{
  background:rgba(255,255,255,.06);
  border-top:1px solid rgba(255,255,255,.08);
  padding:8px 14px;
}
.nav-category-pill{
  display:inline-block;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.12);
  color:#fff;
  padding:5px 10px;
  border-radius:999px;
  font-size:13px;
}

/* MOBILE MENU */
.mobile-menu-overlay{
  position:fixed;
  inset:0;
  background:rgba(0,0,0,.45);
  z-index:99998;
}
.site-mobile-menu{
  position:fixed;
  top:0;
  left:0;
  height:100%;
  width:min(320px, 88vw);
  background:#0f172a;
  color:#fff;
  z-index:99999;
  box-shadow:0 20px 60px rgba(0,0,0,.35);
}
.site-mobile-menu-inner{padding:16px}
.site-mobile-menu-title{font-weight:700;margin-bottom:12px}
.site-mobile-menu-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.site-mobile-menu-list a{
  display:block;
  color:#fff;
  text-decoration:none;
  padding:10px 10px;
  border-radius:10px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.10);
}
.site-mobile-menu-list a:hover{background:rgba(255,255,255,.10)}

/* hide breadcrumb row etc if exists */
.site-subnav, .site-subnav--breadcrumbs, .view-on-amazon, .view-on-amazon-toggle, .view-on-amazon-toggle label {display:none!important}

/* MAIN LAYOUT */
.site-main{max-width:1260px;margin:0 auto;padding:18px 14px 40px;}

/* =========================================================
   Deep Tissue page – Amazon-like mobile PDP (requested)
   Scope: ONLY /sharper-image-deep-tissue/ via its template body class.
   ========================================================= */
body.page-template-page-sharper-image-deep-tissue-php .site-main{max-width:980px;}
body.page-template-page-sharper-image-deep-tissue-php .dt-amz{
  background:#fff;
  border:1px solid var(--line);
  border-radius:16px;
  box-shadow:0 6px 18px rgba(15,23,42,.06);
  padding: 16px;
}
body.page-template-page-sharper-image-deep-tissue-php .dt-amz__ratingRow{display:flex;justify-content:flex-end;margin:0 0 6px;}
body.page-template-page-sharper-image-deep-tissue-php .dt-amz__rating{display:flex;align-items:center;gap:8px;font-size:15px;line-height:1;color:#0f1111;}
body.page-template-page-sharper-image-deep-tissue-php .dt-amz__ratingVal{font-weight:600;}
body.page-template-page-sharper-image-deep-tissue-php .dt-amz__stars{color:#ffa41c;letter-spacing:1px;font-size:16px;}
body.page-template-page-sharper-image-deep-tissue-php .dt-amz__ratingCount{color:#007185;text-decoration:none;}
body.page-template-page-sharper-image-deep-tissue-php .dt-amz__ratingCount:hover{text-decoration:underline;}

body.page-template-page-sharper-image-deep-tissue-php .dt-amz__title{
  margin:0;
  font-weight:400;
  color:#0f1111;
  font-size:17px;
  line-height:1.35;
}
@media (max-width:520px){
  body.page-template-page-sharper-image-deep-tissue-php .dt-amz__title{font-size:15px;}
}
body.page-template-page-sharper-image-deep-tissue-php .dt-amz__bought{
  margin:10px 0 14px;
  font-weight:800;
  color:#0f1111;
  font-size:18px;
}

/* Gallery: big image + dots like Amazon */
body.page-template-page-sharper-image-deep-tissue-php .dt-amz__gallery{margin:0 0 14px;}
body.page-template-page-sharper-image-deep-tissue-php .dt-amz__slider{position:relative;}
body.page-template-page-sharper-image-deep-tissue-php .dt-amz__track{display:flex;overflow:hidden;border-radius:14px;background:#fff;}
body.page-template-page-sharper-image-deep-tissue-php .dt-amz__slide{min-width:100%;}
body.page-template-page-sharper-image-deep-tissue-php .dt-amz__slide img{width:100%;height:auto;display:block;object-fit:contain;background:#fff;}
body.page-template-page-sharper-image-deep-tissue-php .dt-amz__dots{display:flex;justify-content:center;gap:10px;margin:10px 0 0;}
body.page-template-page-sharper-image-deep-tissue-php .dt-amz__dots button{
  width:10px;height:10px;border-radius:999px;border:0;
  background:#d1d5db;
}
body.page-template-page-sharper-image-deep-tissue-php .dt-amz__dots button.is-active{background:#111827;}

/* Style header */
body.page-template-page-sharper-image-deep-tissue-php .dt-amz__styleHeader{display:flex;gap:10px;align-items:baseline;margin:14px 0 10px;}
body.page-template-page-sharper-image-deep-tissue-php .dt-amz__styleLabel{font-weight:800;color:#0f1111;font-size:14px;}
body.page-template-page-sharper-image-deep-tissue-php .dt-amz__styleValue{font-weight:800;color:#0f1111;font-size:14px;}

/* Variant cards strip */
body.page-template-page-sharper-image-deep-tissue-php .dt-amz__variants{
  display:flex;
  gap:14px;
  overflow-x:auto;
  padding: 6px 2px 10px;
  -webkit-overflow-scrolling: touch;
}
body.page-template-page-sharper-image-deep-tissue-php .dt-amz__variant{
  flex:0 0 210px;
  background:#fff;
  border:2px solid #d1d5db;
  border-radius:14px;
  padding:12px;
  text-decoration:none;
  color:#0f1111;
  position:relative;
}
body.page-template-page-sharper-image-deep-tissue-php .dt-amz__variant.is-active{border-color:#2563eb; box-shadow: 0 0 0 2px rgba(37,99,235,.10) inset;}
body.page-template-page-sharper-image-deep-tissue-php .dt-amz__vImg{height:120px;display:grid;place-items:center;margin-bottom:10px;}
body.page-template-page-sharper-image-deep-tissue-php .dt-amz__vImg img{max-width:100%;max-height:120px;object-fit:contain;display:block;}
body.page-template-page-sharper-image-deep-tissue-php .dt-amz__vName{font-weight:800;font-size:22px;line-height:1.05;margin:0 0 8px;}
body.page-template-page-sharper-image-deep-tissue-php .dt-amz__vPrice{font-size:19px;line-height:1;font-weight:800;margin:0 0 6px;}
body.page-template-page-sharper-image-deep-tissue-php .dt-amz__cur{font-size:12px;font-weight:700;margin-right:4px;vertical-align:top;}
body.page-template-page-sharper-image-deep-tissue-php .dt-amz__cents{font-size:14px;font-weight:800;vertical-align:top;}
body.page-template-page-sharper-image-deep-tissue-php .dt-amz__vUnit{color:#111827;font-size:12px;margin:0 0 6px;}
body.page-template-page-sharper-image-deep-tissue-php .dt-amz__vStrike{color:#6b7280;text-decoration:line-through;font-size:14px;margin:0 0 6px;}
body.page-template-page-sharper-image-deep-tissue-php .dt-amz__vStock{color:#15803d;font-size:14px;font-weight:700;margin-top:2px;}
body.page-template-page-sharper-image-deep-tissue-php .dt-amz__vTag{
  margin-top:10px;
  background:#2f6f5e;
  color:#fff;
  text-align:center;
  padding:10px 10px;
  border-radius:0 0 12px 12px;
  position:absolute;
  left:0;right:0;bottom:0;
  font-weight:800;
}

/* Price block */
body.page-template-page-sharper-image-deep-tissue-php .dt-amz__priceBlock{margin: 10px 0 12px; color:#0f1111;}
body.page-template-page-sharper-image-deep-tissue-php .dt-amz__dealRow{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;}
body.page-template-page-sharper-image-deep-tissue-php .dt-amz__pct{color:#b91c1c;font-size:26px;letter-spacing:.5px;}
body.page-template-page-sharper-image-deep-tissue-php .dt-amz__pCur{font-size:13px;font-weight:700;}
body.page-template-page-sharper-image-deep-tissue-php .dt-amz__pMain{font-size:42px;font-weight:900;line-height:1;}
body.page-template-page-sharper-image-deep-tissue-php .dt-amz__pCents{font-size:15px;font-weight:900;vertical-align:top;}
body.page-template-page-sharper-image-deep-tissue-php .dt-amz__pUnit{color:#111827;font-size:12px;}
body.page-template-page-sharper-image-deep-tissue-php .dt-amz__listPrice{color:#6b7280;font-size:13px;margin:8px 0 0;}
body.page-template-page-sharper-image-deep-tissue-php .dt-amz__strike{text-decoration:line-through;}
body.page-template-page-sharper-image-deep-tissue-php .dt-amz__ship{color:#374151;font-size:13px;margin:10px 0 0;}
body.page-template-page-sharper-image-deep-tissue-php .dt-amz__link{color:#007185;}
body.page-template-page-sharper-image-deep-tissue-php .dt-amz__delivery{font-size:16px;margin:10px 0 0;}
body.page-template-page-sharper-image-deep-tissue-php .dt-amz__deliverTo{font-size:16px;margin:10px 0 0;}
body.page-template-page-sharper-image-deep-tissue-php .dt-amz__inStock{color:#15803d;font-size:22px;font-weight:800;margin:10px 0 0;}

/* Quantity + buttons */
body.page-template-page-sharper-image-deep-tissue-php .dt-amz__qtyRow{margin:14px 0 14px;}
body.page-template-page-sharper-image-deep-tissue-php .dt-amz__qtyBox{
  border:1px solid #d1d5db;
  border-radius:12px;
  padding:14px;
  background:#f3f4f6;
  display:flex;
  justify-content:space-between;
  align-items:center;
}
body.page-template-page-sharper-image-deep-tissue-php .dt-amz__qtyLabel{font-size:16px;font-weight:800;}
body.page-template-page-sharper-image-deep-tissue-php .dt-amz__qtySelect{font-size:20px;padding:10px 12px;border-radius:10px;border:1px solid #cbd5e1;background:#fff;}

body.page-template-page-sharper-image-deep-tissue-php .dt-amz__cta{display:grid;gap:14px;margin: 10px 0 18px;}
body.page-template-page-sharper-image-deep-tissue-php .dt-amz__btn{
  display:block;
  text-align:center;
  padding:15px 15px;
  border-radius:999px;
  font-size:19px;
  font-weight:800;
  text-decoration:none;
  border:0;
}
body.page-template-page-sharper-image-deep-tissue-php .dt-amz__btn--cart{background: var(--amazon-yellow); color:#111827;}
body.page-template-page-sharper-image-deep-tissue-php .dt-amz__btn--buy{background: var(--amazon-orange); color:#111827;}

@media (min-width: 980px){
  body.page-template-page-sharper-image-deep-tissue-php .dt-amz{padding:22px;}
  body.page-template-page-sharper-image-deep-tissue-php .dt-amz__variants{overflow:visible;}
}
.product-layout{
  display:grid;
  grid-template-columns: 1.05fr 1.3fr .75fr;
  gap:18px;
  align-items:start;
}
@media (max-width: 1100px){
  .product-layout{grid-template-columns:1fr; }
}

.product-gallery, .product-main, .buybox{
  background:var(--card);
  border:1px solid var(--line);
  border-radius:var(--radius);
  box-shadow:var(--shadow);
}
.product-gallery{padding:10px; display:grid; grid-template-columns:70px 1fr; gap:14px;}

/* Mobile: show the main image first, then the thumbnail strip BELOW (like Amazon mobile). */
@media (max-width: 1100px){
  .product-gallery{display:flex; flex-direction:column; gap:10px;}
  .product-gallery .si-slider{order:1;}
  .product-gallery .si-thumbs{order:2;}
}
.product-thumbs{display:grid; gap:8px;}
.product-thumb-btn{
  border:1px solid var(--line);
  background:#fff;
  padding:4px;
  border-radius:10px;
  cursor:pointer;
}
.product-thumb-btn img{
  width:100%;
  height:auto;
  display:block;
  border-radius:8px;
}
.product-thumb-btn--active{border-color:var(--amazon-orange); box-shadow:0 0 0 2px rgba(243,168,71,.25)}
.product-image-main{
  /* Reduce "empty" space above/below the main product image */
  display:flex;
  align-items:flex-start;
  justify-content:center;
  min-height:0;
  padding:0;
}
#product-main-image{
  width:100%;
  max-width:720px;
  max-height:720px;
  height:auto;
  object-fit:contain;
  display:block;
}

/* =========================
   AMAZON-LIKE IMAGE SLIDER
   ========================= */
.product-gallery{ overflow:hidden; }
.si-slider{ width:100%; }
.si-track{
  display:flex;
  overflow-x:auto;
  scroll-snap-type:x mandatory;
  -webkit-overflow-scrolling:touch;
  border-radius:12px;
}
.si-track::-webkit-scrollbar{ height:0; }
.si-slide{
  flex:0 0 100%;
  scroll-snap-align:start;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:4px;
}
.si-slide img{
  width:100%;
  max-width:560px;
  max-height:560px;
  height:auto;
  object-fit:contain;
  display:block;
}
.si-dots{
  display:flex;
  justify-content:center;
  gap:8px;
  padding:8px 4px 2px;
}
.si-dot{
  width:10px;height:10px;
  border-radius:999px;
  border:1px solid rgba(17,24,39,.25);
  background:rgba(17,24,39,.20);
  cursor:pointer;
}
.si-dot.is-active{ background:rgba(17,24,39,.75); border-color:rgba(17,24,39,.75); }

.si-thumbs{
  display:flex;
  gap:8px;
  overflow-x:auto;
  padding:8px 2px 2px;
  -webkit-overflow-scrolling:touch;
}
.si-thumbs::-webkit-scrollbar{ height:0; }
.si-thumb{
  flex:0 0 auto;
  width:62px;
  border:1px solid var(--line);
  background:#fff;
  padding:4px;
  border-radius:10px;
  cursor:pointer;
}
.si-thumb img{ width:100%; height:auto; display:block; border-radius:8px; }
.si-thumb.is-active{ border-color:var(--amazon-orange); box-shadow:0 0 0 2px rgba(243,168,71,.25); }

/* Desktop: thumbs on the left like Amazon */
@media (min-width: 1101px){
  .product-gallery{ grid-template-columns:78px 1fr; }
  .si-thumbs{ flex-direction:column; overflow-x:visible; overflow-y:auto; max-height:560px; padding:0; }
  .si-thumb{ width:70px; }
  .si-dots{ padding-top:10px; }
}
.product-main{padding:16px;}
.product-brand{font-size:12px;color:var(--muted);margin-bottom:6px;}
.product-brand a{color:#0a58ca;text-decoration:none}
.product-title{margin:0 0 8px;font-size:22px;line-height:1.15;}
.product-rating-row{display:flex; gap:10px; align-items:center; font-size:12px; margin-bottom:10px;}
.stars{color:#f59e0b; letter-spacing:1px;}
.badge-amz-choice{background:#111827;color:#fff;padding:3px 8px;border-radius:999px;font-size:11px;}
.product-price-block{margin:12px 0;}
.product-price-save{display:inline-block;background:#b12704;color:#fff;font-weight:700;padding:6px 10px;border-radius:10px;font-size:13px;margin-bottom:6px;}
.product-price-main{font-size:30px;font-weight:800;}
.currency{font-size:.8em;vertical-align:top;}
.cents{font-size:.55em;vertical-align:top;}
.product-options-group{margin-top:14px;}
.product-options-label{font-size:13px;color:var(--muted);margin-bottom:8px;}
.color-swatch-row{display:flex;flex-wrap:wrap;gap:10px;}
.color-swatch{
  display:flex;align-items:center;gap:8px;
  border:1px solid var(--line);
  background:#fff;
  padding:7px 10px;
  border-radius:10px;
  cursor:pointer;
}
.color-swatch--active{border-color:var(--amazon-orange); box-shadow:0 0 0 2px rgba(243,168,71,.25)}
.color-swatch-circle{width:14px;height:14px;border-radius:999px;border:1px solid rgba(0,0,0,.12)}
.product-attachments-options{display:flex;flex-wrap:wrap;gap:8px;}
.option-pill{border:1px solid var(--line);padding:6px 10px;border-radius:999px;background:#fff;font-size:13px;}
.about-card{margin-top:16px;border:1px solid var(--line);border-radius:var(--radius);padding:14px;background:#fff}
.about-card h2{margin:0 0 10px;font-size:18px;}
.about-card ul{margin:0;padding-left:20px;color:#111827}
.about-card li{margin:6px 0;color:#111827;}

/* Simple spec table used on product pages */
.spec-grid{margin-top:10px;border:1px solid var(--line);border-radius:12px;overflow:hidden}
.spec-row{display:grid;grid-template-columns:160px 1fr;border-top:1px solid var(--line)}
.spec-row:first-child{border-top:0}
.spec-k{background:#f9fafb;color:#111827;font-weight:700;padding:10px 12px;font-size:13px}
.spec-v{background:#fff;color:#111827;padding:10px 12px;font-size:13px}
@media (max-width:520px){.spec-row{grid-template-columns:1fr}.spec-k{border-bottom:1px solid var(--line)}}


/* CTA buttons directly under the product image gallery */
.gallery-cta{
  grid-column: 1 / -1;
  display: grid;
  gap: 10px;
  margin-top: 10px;
  padding: 0 2px 2px;
}
@media (min-width: 1101px){
  .gallery-cta{
    padding-left: 0;
    padding-right: 0;
  }
}

/* BUY BOX */
.buybox{padding:16px; position:sticky; top:14px;}
@media (max-width:1100px){ .buybox{position:static;} }
.buybox-price{font-size:28px;font-weight:800;}
.buybox-stock{color:#067d62;font-weight:800;margin-top:8px;}
.buybox-qty-row{margin:10px 0;font-size:13px;color:var(--muted);display:flex;gap:8px;align-items:center;}
.buybox-qty-select{padding:6px 10px;border:1px solid var(--line);border-radius:10px;}
.btn-secondary,.btn-primary{
  display:block;
  text-align:center;
  text-decoration:none;
  font-weight:800;
  padding:12px 14px;
  border-radius:999px;
  margin-top:10px;
  border:1px solid rgba(0,0,0,.08);
}
.btn-secondary{background:var(--amazon-yellow); color:#111;}
.btn-primary{background:var(--btn-orange); color:#111;}
.btn-secondary:hover,.btn-primary:hover{filter:brightness(.98)}

/* Footer */
.site-footer{
  padding:22px 14px;
  background:#0b141d;
  color:#cbd5e1;
  text-align:center;
  font-size:13px;
}
.footer-inner{max-width:980px;margin:0 auto;display:grid;gap:12px;}
.footer-legal{color:#cbd5e1;opacity:.95;line-height:1.45;}
.footer-legal p{margin:0;}
.footer-links{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;}
.site-footer a{color:#cbd5e1;text-decoration:none;margin:0 8px;}
.site-footer a:hover{text-decoration:underline}

/* Visually hidden (still present for crawlers & screen readers) */
.sr-only{
  position:absolute !important;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0;
}


/* =========================
   HEADER: LOGO SIZE + AMAZON-LIKE MENU COLORS
   ========================= */
.site-header-top{ align-items:center; }
.site-logo-img{
  height: 72px;
  max-height: 72px;
  width: auto;
  display:block;
}
@media (min-width: 1024px){
  .site-logo-img{
    height: 80px;
    max-height: 60px;
  }
}

/* Keep the search button color inside the input nicely */
.site-header-search-form{
  border-radius: 4px;
  overflow: hidden;
}
.site-header-search-button{
  background: #febd69;
  border: none;
  border-left: 1px solid rgba(0,0,0,.12);
}
.site-header-search-button svg{ width: 18px; height: 18px; }

/* Hamburger button */
.nav-toggle{
  width: 44px;
  height: 44px;
  border: 1px solid rgba(255,255,255,.15);
  border-radius: 4px;
  background: transparent;
  display: inline-flex;
  align-items:center;
  justify-content:center;
  gap: 4px;
}
.nav-toggle span{
  display:block;
  width: 18px;
  height: 2px;
  background: rgba(255,255,255,.92);
}

/* Mobile menu overlay + panel */
.site-menu-overlay{
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,.35);
  z-index: 99990;
}
.site-mobile-menu{
  position: fixed;
  top: 0;
  left: 0;
  height: 100vh;
  width: min(360px, 86vw);
  background: #232f3e;
  color: #fff;
  z-index: 99999;
  box-shadow: 0 10px 30px rgba(0,0,0,.35);
  transform: translateX(-102%);
  transition: transform .16s ease;
}
.site-mobile-menu.is-open{ transform: translateX(0); }
.site-mobile-menu-inner{ padding: 16px; }
.site-mobile-menu-title{
  font-weight: 800;
  font-size: 16px;
  margin-bottom: 10px;
  letter-spacing: .2px;
}
.site-mobile-menu-list{
  list-style: none;
  margin: 0;
  padding: 0;
}
.site-mobile-menu-list a{
  display:block;
  padding: 10px 10px;
  border-radius: 6px;
  color: #fff !important;
  text-decoration: none;
  font-weight: 700;
}
.site-mobile-menu-list a:visited{ color:#fff !important; }
.site-mobile-menu-list a:hover{
  background: rgba(255,255,255,.08);
  color: #ff9900 !important;
}
html.menu-open, html.menu-open body{ overflow:hidden; }

/* Hide any breadcrumb/subnav row from earlier versions */
.site-subnav, .site-subnav--breadcrumbs{ display:none !important; }

/* Product image: avoid huge overflow */
.product-image-main img{
  max-width: 100%;
  max-height: 520px;
  height: auto;
  object-fit: contain;
  margin: 0 auto;
  display: block;
}

/* ===== Mobile header overflow + cart visibility fix ===== */
html, body{max-width:100%; overflow-x:hidden;}
.site-header, .site-header-top{max-width:100%; box-sizing:border-box;}
/* Avoid iOS overflow caused by 100vw: keep it 100% */
.site-header{width:100%;}
.site-header-top{
  padding-right: calc(14px + env(safe-area-inset-right));
  padding-left: calc(14px + env(safe-area-inset-left));
}
.header-search{flex:1 1 auto; min-width:0;}
.header-cart{flex:0 0 auto;}
/* Prevent any media from pushing layout wider */
img, svg, video, iframe{max-width:100%; height:auto;}




/* === Amazon-like mobile ordering: text first, then images === */
.product-layout--amazon{
  grid-template-columns: 1.05fr 1.3fr;
}
.product-layout--amazon .product-gallery{ grid-column:1; grid-row:1 / span 4; }
.product-layout--amazon .product-main{ grid-column:2; grid-row:1; }
.product-layout--amazon .variant-strip{ grid-column:2; grid-row:2; }
.product-layout--amazon .product-buybox{ grid-column:2; grid-row:3; }

.product-buybox{
  background:var(--card);
  border:1px solid var(--line);
  border-radius:var(--radius);
  box-shadow:var(--shadow);
  padding:14px;
}
.product-buybox .buybox-inner{ display:grid; gap:10px; }
.product-buybox .btn-secondary,
.product-buybox .btn-primary{
  display:block;
  text-align:center;
  padding:14px 14px;
  border-radius:999px;
  font-weight:800;
  letter-spacing:.2px;
  border:1px solid transparent;
}
.product-buybox .btn-secondary{
  background:var(--amazon-yellow);
  color:#111;
}
.product-buybox .btn-primary{
  background:var(--btn-orange);
  color:#111;
}

/* Social proof line like Amazon */
.product-social-proof{
  margin:10px 0 14px;
  font-weight:400;
  color:#111;
}

/* Style selector strip */
.variant-strip{
  background:var(--card);
  border:1px solid var(--line);
  border-radius:var(--radius);
  box-shadow:var(--shadow);
  padding:14px;
}
.variant-head{
  font-size:16px;
  margin-bottom:10px;
}
.variant-cards{
  display:flex;
  gap:12px;
  overflow:auto;
  padding-bottom:8px;
  -webkit-overflow-scrolling:touch;
  scroll-snap-type:x mandatory;
}
.variant-card{
  flex:0 0 170px;
  display:block;
  border:1px solid var(--line);
  border-radius:12px;
  background:#fff;
  padding:10px;
  text-decoration:none;
  color:inherit;
  scroll-snap-align:start;
}
.variant-card.is-selected{
  border-color:#1e66ff;
  box-shadow:0 0 0 2px rgba(30,102,255,.2);
}
.variant-thumb{
  width:100%;
  aspect-ratio: 1 / 1;
  border-radius:10px;
  border:1px solid var(--line);
  overflow:hidden;
  background:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
}
.variant-thumb img{ width:100%; height:100%; object-fit:contain; display:block; }
.variant-meta{ margin-top:10px; font-size:14px; }
.variant-label{ font-weight:800; margin-bottom:4px; }
.variant-price{ font-weight:900; font-size:18px; }
.variant-unit{ color:var(--muted); font-size:13px; }
.variant-strike{ color:var(--muted); text-decoration:line-through; font-size:13px; }
.variant-stock{ color:#1f7a1f; font-weight:700; margin-top:6px; }

/* Mobile: stack (text first, then images) */
@media (max-width: 1100px){
  .product-layout--amazon{ grid-template-columns:1fr; }
  .product-layout--amazon .product-main{ grid-column:1; grid-row:auto; }
  .product-layout--amazon .product-gallery{ grid-column:1; grid-row:auto; }
  .product-layout--amazon .variant-strip{ grid-column:1; grid-row:auto; }
  .product-layout--amazon .product-buybox{ grid-column:1; grid-row:auto; }
  .variant-card{ flex-basis: 155px; }
}


/* No-bold utility (user preference) */
.no-bold, .product-copy strong, .product-copy b, .about-card strong, .about-card b, .legal-page strong, .legal-page b{font-weight:400;}

@media (max-width: 1100px){
  .buybox{grid-row:2;}
  .product-main{grid-row:3;}
}

.hero-title{font-size:26px; line-height:1.2; font-weight:400; margin:8px 0 10px;}
@media (max-width:1100px){.hero-title{font-size:22px;}}
.hero-subtitle{font-size:16px; color:var(--muted); margin:0 0 12px; font-weight:400;}
@media (max-width:1100px){.hero-subtitle{font-size:14px;}}

.amazon-long-title{font-size:20px;line-height:1.35;font-weight:400;color:#0f1111;margin:8px 0 10px;}
@media (min-width:1101px){.amazon-long-title{font-size:22px;}}
@media (max-width:520px){.amazon-long-title{font-size:17px;}}

/* =========================
   Amazon-like PDP title + rating placement (mobile)
   - Rating appears on the top-right
   - Long title sits under it on the left
   ========================= */
.amz-pdp-hero{
  max-width:1180px;
  margin: 0 auto 12px;
  padding: 0 2px;
}
.amz-pdp-rating{
  display:flex;
  justify-content:flex-end;
  align-items:center;
  margin: 2px 0 6px;
}
.amz-rating-link{
  display:inline-flex;
  align-items:center;
  gap:6px;
  color:#0f1111;
  text-decoration:none;
  font-size:14px;
  line-height:1;
}
.amz-rating-value{color:#0f1111;font-weight:600;}
.amz-stars{
  position:relative;
  display:inline-block;
  font-size:16px;
  line-height:1;
  letter-spacing:1px;
}
.amz-stars::before{
  content:"★★★★★";
  color:#d1d5db;
}
.amz-stars-fill{
  position:absolute;
  left:0; top:0;
  overflow:hidden;
  height:100%;
}
.amz-stars-fill::before{
  content:"★★★★★";
  color:#f59e0b;
}
.amz-mob-count{color:#2563eb;text-decoration:none;}
.amz-mob-count:hover{text-decoration:underline;}

.amz-badge{
  display:inline-flex;
  align-items:center;
  padding:4px 8px;
  border-radius:6px;
  font-size:12px;
  background:#111827;
  color:#fff;
}
.amz-mob-bought{
  margin-top:10px;
  font-size:16px;
  font-weight:700;
  color:#111827;
}

.amz-mob-media{max-width:980px;margin:0 auto; padding:10px 0 0;}
.amz-gallery--dots .amz-gallery-dots{
  display:flex;
  justify-content:center;
  gap:8px;
  padding:10px 0 0;
}
.amz-gallery--dots .amz-gallery-dots span{
  width:8px;height:8px;border-radius:999px;
  background:#d1d5db;
  display:inline-block;
}
.amz-gallery--dots .amz-gallery-dots span.is-active{background:#111827;}

.amz-mob-buybox{
  max-width:980px;
  margin:10px auto 0;
  padding-top:8px;
}
.amz-price{
  font-weight:800;
  color:#111827;
  display:flex;
  align-items:flex-end;
  gap:2px;
}
.amz-price-currency{font-size:20px; transform:translateY(-8px);}
.amz-price-major{font-size:52px; line-height:1;}
.amz-price-minor{font-size:20px; transform:translateY(-8px);}

.amz-mob-vat{margin-top:8px;color:#111827;font-size:16px;}
.amz-mob-ship{margin-top:8px;font-size:16px;color:#111827;}
.amz-mob-stock{margin-top:12px;color:#16a34a;font-size:22px;font-weight:700;}

.amz-mob-ctas{margin-top:14px;display:grid;gap:12px;}
.amz-cta{
  display:flex;
  justify-content:center;
  align-items:center;
  height:54px;
  border-radius:999px;
  text-decoration:none;
  font-weight:700;
  font-size:18px;
  color:#111827;
  border:1px solid rgba(17,24,39,.12);
}
.amz-cta-cart{background:#fbbf24;}
.amz-cta-buy{background:#f59e0b;}
.amz-cta:hover{filter:brightness(.98);}

.amz-mob-note{
  margin-top:14px;
  font-size:12px;
  color:var(--muted);
  line-height:1.35;
}

/* Make it feel like the screenshots on small screens */
@media (min-width: 900px){
  .amz-mob-pdp{padding:18px 16px 26px;}
  .amz-mob-title{font-size:22px;}
}


/* === Amazon-like mobile PDP fixes (v3) === */
.amz-mob-pdp{max-width:980px;margin:0 auto;padding:10px 0 0;}
.amz-mob-head{padding:0 0 10px;}
.amz-mob-media{padding:0;}
.amz-gallery-main{width:100%;}
.amz-pdp-mainimg{width:100%;height:auto;display:block;border-radius:6px;background:#f3f4f6;}
.amz-gallery-thumbs{display:flex;gap:8px;overflow:auto;padding:10px 0 0;}
.amz-gallery-thumbs img{width:64px;height:64px;object-fit:cover;border-radius:6px;border:1px solid #e5e7eb;background:#f3f4f6;flex:0 0 auto;}
.amz-gallery-thumbs img.is-active{outline:2px solid #f3a847;outline-offset:1px;}
/* keep dots aligned to thumb count */
.amz-gallery--dots .amz-gallery-dots{padding:8px 0 0;}



/* ==== Amazon-like header location bar (fix oversized SVG + spacing) ==== */
.amz-header-loc{
  display:flex;
  align-items:center;
  gap:8px;
  padding:8px 14px 10px;
  font-size:13px;
  line-height:1.2;
  color:#fff;
}
.amz-header-loc .amz-loc-icon{
  width:16px;
  height:16px;
  flex:0 0 auto;
  fill:none;
  stroke:#fff;
  stroke-width:1.8;
}
.amz-header-loctext{
  display:inline-block;
  opacity:.95;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  max-width:calc(100vw - 80px);
}

/* Safety: if any deliver-icon SVG still exists, force it small */
.deliver-icon{
  width:16px !important;
  height:16px !important;
  fill:none !important;
  stroke:currentColor !important;
  stroke-width:1.8 !important;
}


/* === Header location bar (Amazon-like) === */
.amz-header-loc{
  display:flex;
  align-items:center;
  gap:8px;
  padding:6px 14px 10px;
  font-size:12.5px;
  line-height:1.2;
  color:#fff;
  background: var(--header2);
  border-top:1px solid rgba(255,255,255,.10);
}
.amz-header-loc .amz-loc-icon{
  width:16px !important;
  height:16px !important;
  max-width:16px !important;
  max-height:16px !important;
  flex:0 0 16px !important;
  display:inline-block !important;
}
.amz-header-loc .amz-loc-icon path,
.amz-header-loc .amz-loc-icon circle{
  fill: currentColor;
}
.amz-header-loctext{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}

/* Safety: prevent detached stars overlaying header */
body > .amz-stars-fill,
body > .amz-stars{
  display:none !important;
}


/* === AMAZON-LIKE MOBILE HEADER (v7) === */
.site-header.amz-header{
  background: var(--header);
}
.amz-top{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  padding:6px 10px;
  gap:10px;
}
.amz-burger{
  width:40px;height:40px;
  border:0;
  background:transparent;
  padding:0;
}
.nav-toggle-bars{
  width:18px;height:2px;
  background:#fff;
  display:block;
  position:relative;
}
.nav-toggle-bars:before,
.nav-toggle-bars:after{
  content:"";
  position:absolute;
  left:0;
  width:18px;height:2px;
  background:#fff;
}
.nav-toggle-bars:before{ top:-6px; }
.nav-toggle-bars:after{ top:6px; }

.amz-logo .site-logo-link{
  display:inline-flex;
  align-items:center;
  padding:0;
  background:transparent;
  border:0;
}
.amz-logo img,
.amz-brand-img{
  width:auto;
  height:32px;
  max-width:120px;
  object-fit:contain;
}

.amz-top-right{
  display:flex;
  align-items:center;
  margin-left:auto;
}
.amz-cart{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:44px;
  height:40px;
  border:0;
  background:transparent;
  color:#fff;
}
.amz-cart:visited{ color:#fff; }
.amz-cart .cart-icon{
  width:28px;
  height:28px;
  fill:#fff;
}

/* Cart count (orange number like Amazon) */
.amz-cart{
  position:relative;
}
.amz-cart-count{
  position:absolute;
  top:2px;
  right:6px;
  font-weight:800;
  font-size:14px;
  line-height:1;
  color:var(--cart-orange) !important;
}

/* DZ201 hero: rating above title, aligned right like Amazon */
.amz-mob-rating--top{
  display:flex;
  justify-content:flex-end;
  align-items:center;
  gap:8px;
  margin:2px 0 6px;
}

/* DZ201 hero: title should NOT look like a link */
.amz-mob-title{
  color:#0F1111;
  text-decoration:none;
  text-align:left;
}

/* Search row */
.amz-search{
  padding:6px 10px 8px;
  background: var(--header);
}
.site-header-search-form{
  display:flex;
  align-items:stretch;
  width:100%;
  border-radius:8px;
  overflow:hidden;
  background:#fff;
}
.site-header-search-form input[type="search"]{
  flex:1;
  border:0 !important;
  height:40px;
  padding:0 12px;
  font-size:16px;
  outline:none;
}
.site-header-search-form button{
  width:48px;
  border:0;
  background:#febd69;
  display:flex;
  align-items:center;
  justify-content:center;
}
.site-header-search-form .search-icon{
  width:22px;
  height:22px;
  fill:#111;
}

/* Location bar */
.amz-locbar{
  display:flex;
  align-items:center;
  gap:8px;
  padding:6px 10px;
  background: var(--header2);
  color:#fff;
  font-size:14px;
  line-height:1.2;
}
.amz-pin{
  width:16px !important;
  height:16px !important;
  fill:#fff;
  flex:0 0 auto;
}
.amz-loctext{
  opacity:.95;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  flex:1 1 auto;
}
.amz-loclink{
  color:#fff;
  opacity:.9;
  text-decoration:none;
  white-space:nowrap;
  flex:0 0 auto;
}

/* Kill any stray large SVGs inside the header (safety) */
.site-header svg{ max-width:24px; max-height:24px; }

/* Remove any leftover top padding/margins that create a big blue slab */
.site-header + .site-content{ margin-top:0; }


/* Safety: prevent SVG icons from exploding on iOS */
.amz-header svg,
.amz-header .cart-icon,
.amz-header .amz-pin,
.amz-header .search-icon{
  max-width:24px;
  max-height:24px;
  width:24px;
  height:24px;
}


/* === v11: Amazon mobile header fixes === */
.amz-header .amz-top{justify-content:flex-start;}
.amz-header .site-logo{display:flex;align-items:center;}
.amz-header .site-logo-link{display:inline-flex;align-items:center;}
.amz-header .site-logo img,
.amz-header .amz-brand-img{
  height:28px !important;
  max-height:28px !important;
  width:auto !important;
  max-width:120px !important;
}
.amz-header .amz-burger{margin-right:2px;}
/* Ensure no cart on top bar */
.amz-header .amz-top-right,
.amz-header .amz-cart{display:none !important;}
/* Location bar: no right link spacing */
.amz-locbar{justify-content:flex-start;gap:8px;}
.amz-locbar .amz-loctext{white-space:nowrap;}
.amz-locbar .amz-loclink{display:none !important;}
/* Rating row right-aligned full width */
.amz-mob-rating--top{width:100%;justify-content:flex-end;}
/* Title size closer to Amazon */
.amz-mob-title{
  font-size:18px !important;
  line-height:1.25 !important;
  font-weight:600;
  margin:4px 0 6px;
}
