/* ============================================================
   Allure — Apple-inspired Premium Light Theme
   Clean / Minimal / Airy / Premium
   Overrides Voxo demo1/demo2 without touching logic
   ============================================================ */
:root{
  --apple-bg:#ffffff;
  --apple-bg-soft:#F5F5F7;
  --apple-card:#ffffff;
  --apple-text:#1D1D1F;
  --apple-text-2:rgba(29,29,31,.68);
  --apple-text-3:#AAAAAA;
  --apple-line:rgba(0,0,0,.08);
  --apple-blue:#007AFF;
  --apple-blue-dark:#0A84FF;
  --apple-black:#1D1D1F;
  --apple-radius:18px;
  --apple-radius-lg:28px;
  --apple-shadow:0 8px 32px rgba(0,0,0,.06);
  --apple-shadow-lg:0 20px 60px rgba(0,0,0,.08);
  --apple-nav-h:52px;
  --apple-font:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text",Inter,"Helvetica Neue",Helvetica,Arial,sans-serif;
}

/* ---------- Base ---------- */
html, body{ overflow-x:clip !important; }
body.theme-color1.light.ltr,
body{
  font-family:var(--apple-font) !important;
  background:var(--apple-bg) !important;
  color:var(--apple-text) !important;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  letter-spacing:-.01em;
}
h1,h2,h3,h4,h5,.h1,.h2,.h3,.h4,.h5{
  font-family:var(--apple-font) !important;
  letter-spacing:-.02em;
  color:var(--apple-text) !important;
  font-weight:600 !important;
}
p,span,li,a,div{ font-family:var(--apple-font); }
a{ color:var(--apple-blue); text-decoration:none; }
a:hover{ text-decoration:underline; }
.font-light,.text-muted{ color:var(--apple-text-2) !important; }
.theme-color{ color:var(--apple-text) !important; }
.container,.container-fluid-lg,.container-fluid{ max-width:1200px !important; }

/* Kill old theme color */
.btn-solid-default,.btn-solid,.btn-primary,.btn.theme-bg-color{
  background:var(--apple-blue) !important;
  border-color:var(--apple-blue) !important;
  color:#fff !important;
  border-radius:980px !important;
  padding:10px 28px !important;
  font-size:15px !important;
  font-weight:500 !important;
  letter-spacing:-.01em;
  box-shadow:none !important;
  text-transform:none !important;
}
.btn-solid-default:hover,.btn-solid:hover,.btn-primary:hover{ background:#0A84FF !important; text-decoration:none; }
/* kill legacy square hover-fill that peeks out around pills */
.btn::before,.btn-solid-default::before,.btn-solid::before,.btn-primary::before,.btn-solid-dark::before,.btn-solid-light::before,.btn-light-white::before,.btn-white::before{ display:none !important; }
/* search submit button — subtle grow on hover */
.apple-search-drop .btn{ transition:transform .2s ease !important; }
.apple-search-drop .btn:hover{ transform:scale(1.06); }
.btn-outline-apple{
  background:#fff !important; color:var(--apple-blue) !important;
  border:1px solid var(--apple-line) !important; border-radius:980px !important;
  padding:10px 28px !important;
}

/* ---------- Announcement + Apple Nav ---------- */
.apple-announce{
  background:var(--apple-bg-soft);
  color:var(--apple-text-2);
  font-size:12px; text-align:center;
  padding:10px 16px; letter-spacing:-.01em;
}
.apple-announce a{ color:var(--apple-blue); }
.apple-nav{
  position:sticky; top:0; z-index:2000;
  background:rgba(251,251,253,.72) !important;
  -webkit-backdrop-filter:saturate(180%) blur(20px);
  backdrop-filter:saturate(180%) blur(20px);
  border-bottom:1px solid transparent;
  height:var(--apple-nav-h);
  transition:background .3s ease, box-shadow .3s ease, border-color .3s ease;
}
.apple-nav.scrolled{
  background:rgba(251,251,253,.82) !important;
  -webkit-backdrop-filter:saturate(180%) blur(28px);
  backdrop-filter:saturate(180%) blur(28px);
  border-bottom-color:var(--apple-line);
  box-shadow:0 4px 24px rgba(0,0,0,.06);
}
.apple-nav.scrolled{
  background:rgba(251,251,253,.68) !important;
  -webkit-backdrop-filter:saturate(180%) blur(28px);
  backdrop-filter:saturate(180%) blur(28px);
  box-shadow:0 4px 24px rgba(0,0,0,.08);
}
.apple-nav-inner{
  max-width:1200px; margin:0 auto; height:var(--apple-nav-h);
  display:flex; align-items:center;
  padding:0 20px; gap:26px;
}
.apple-logo img{ max-height:26px !important; max-width:120px !important; object-fit:contain; }
.apple-logo{ flex-shrink:0; }
.apple-links{ display:flex; gap:22px; align-items:center; justify-content:center; flex:1; min-width:0; }
.apple-links a{
  color:var(--apple-text) !important; font-size:12px; font-weight:400;
  opacity:.8; letter-spacing:-.01em; text-decoration:none !important;
  white-space:nowrap;
}
.apple-links a:hover{ opacity:1; text-decoration:none !important; }
.apple-more{ position:relative; display:inline-flex; align-items:center; align-self:center; line-height:1; }
.apple-more > a{ cursor:pointer; line-height:1 !important; padding:0 !important; margin:0 !important; display:inline-block !important; }
.apple-more > a{ cursor:pointer; }
.apple-more-drop{
  display:none; position:absolute; top:100%; left:50%; transform:translateX(-50%);
  background:#fff; border:1px solid var(--apple-line); border-radius:14px;
  box-shadow:0 20px 60px rgba(0,0,0,.12); padding:8px; min-width:200px; z-index:2100;
}
.apple-more:hover .apple-more-drop, .apple-more:focus-within .apple-more-drop{ display:block; }
.apple-more-drop a{
  display:block !important; padding:9px 14px !important; border-radius:9px;
  font-size:13px !important; white-space:nowrap;
}
.apple-more-drop a:hover{ background:#F5F5F7; }
.apple-icons{ display:flex; gap:18px; align-items:center; flex-shrink:0; margin-left:auto; }
.apple-icon-btn{
  background:transparent !important; border:0 !important; padding:4px !important;
  color:var(--apple-text) !important; opacity:.8; cursor:pointer; border-radius:8px !important;
}
.apple-icon-btn:hover{ opacity:1; }
.apple-icon-btn svg{ width:17px; height:17px; }
.apple-search-pill{
  background:#fff; border:1px solid var(--apple-line);
  border-radius:980px; padding:6px 14px; display:flex; align-items:center; gap:8px;
  min-width:180px;
}
.apple-search-pill input{ border:0 !important; outline:0 !important; font-size:13px; width:100%; background:transparent; }
.apple-bag-count{
  background:var(--apple-blue); color:#fff; font-size:10px; font-weight:600;
  min-width:18px; height:18px; border-radius:9px; display:inline-flex;
  align-items:center; justify-content:center; padding:0 5px; margin-left:4px;
}
/* hide legacy header chrome */
header#home .top-header,
header#home .main-header.navbar-searchbar,
header#home .category-menu,
header#home nav .main-navbar{ display:none !important; }
/* Keep search-full functional but Apple styled */
.search-full{
  background:rgba(255,255,255,.98) !important;
  border-bottom:1px solid var(--apple-line);
}
.search-full .input-group{ max-width:680px; margin:18px auto !important; }
.search-full input{
  border-radius:980px !important; border:1px solid var(--apple-line) !important;
  padding:12px 20px !important; font-size:15px !important;
}

/* Mobile bottom bar removed — hamburger drawer replaces it */
.mobile-menu{ display:none !important; }
.apple-burger{
  display:none; background:transparent !important; border:0 !important; padding:6px !important;
  color:#1D1D1F !important; cursor:pointer; flex-shrink:0;
}
.apple-drawer-bg{ display:none; position:fixed; inset:0; background:rgba(0,0,0,.35); z-index:2998; }
.apple-drawer{
  position:fixed; top:0; left:0; bottom:0; width:min(320px, 84vw); z-index:2999;
  background:#fff; box-shadow:20px 0 60px rgba(0,0,0,.15);
  transform:translateX(-102%); transition:transform .32s cubic-bezier(.32,.72,.35,1);
  overflow-y:auto; padding:18px 8px 30px;
}
.apple-drawer.open{ transform:translateX(0); }
.apple-drawer-head{
  display:flex; align-items:center; justify-content:space-between;
  padding:6px 14px 14px; font-size:17px; font-weight:700; color:#1D1D1F;
}
.apple-drawer-head button{ background:#F5F5F7; border:0; border-radius:50%; width:30px; height:30px; font-size:14px; cursor:pointer; color:#1D1D1F; }
.apple-drawer-link{
  display:block; padding:12px 14px; border-radius:10px;
  font-size:15px; color:#1D1D1F !important; text-decoration:none !important;
}
.apple-drawer-link:hover{ background:#F5F5F7; }
@media(max-width:900px){ .apple-burger{ display:inline-flex; } }

/* ---------- Hero (Apple style) ---------- */
.apple-hero{
  background:#fff; border-radius:var(--apple-radius-lg);
  margin:20px auto; max-width:1280px; overflow:hidden;
  position:relative; text-align:center; padding:64px 24px 0;
  border:1px solid rgba(0,0,0,.04);
}
.apple-hero.eyebrow-dark{ background:#000; color:#f5f5f7; border:0; }
.apple-hero.eyebrow-dark h1,.apple-hero.eyebrow-dark h2,.apple-hero.eyebrow-dark p{ color:#f5f5f7 !important; }
.apple-eyebrow{
  font-size:14px; font-weight:600; letter-spacing:.02em; text-transform:uppercase;
  color:#b64400; margin-bottom:8px;
}
.apple-hero h1,.apple-hero h2{
  font-size:clamp(36px,5vw,64px) !important; line-height:1.05 !important; font-weight:700 !important;
  margin:0 0 10px !important;
}
.apple-hero .apple-sub{
  font-size:clamp(17px,2vw,24px); color:var(--apple-text-2); font-weight:400; margin-bottom:18px;
}
.apple-hero.eyebrow-dark .apple-sub{ color:#a1a1a6 !important; }
.apple-cta-row{ display:flex; gap:22px; justify-content:center; margin-bottom:28px; flex-wrap:wrap; }
.apple-cta{ font-size:17px; color:var(--apple-blue) !important; }
.apple-cta:hover{ text-decoration:underline; }
.apple-hero-media{
  margin:0 auto; max-width:1000px; border-radius:18px 18px 0 0; overflow:hidden;
  background:var(--apple-bg-soft);
}
.apple-hero-media img{ width:100%; height:min(58vh,560px); object-fit:cover; display:block; }
/* legacy carousel -> Apple hero */
#carouselExampleCaptions{ max-width:1280px; margin:20px auto; border-radius:var(--apple-radius-lg); overflow:hidden; background:#000; }
#carouselExampleCaptions .carousel-item{ height:min(70vh,620px) !important; background-size:cover !important; }
#carouselExampleCaptions .carousel-caption{
  border:0 !important; background:transparent !important; opacity:1 !important;
  width:auto !important; padding:0 !important; bottom:12% !important;
}
#carouselExampleCaptions .carousel-caption h5{
  font-size:clamp(32px,5vw,56px) !important; font-weight:700 !important; color:#fff !important;
}
#carouselExampleCaptions .carousel-caption p{ color:rgba(255,255,255,.82) !important; font-size:19px !important; }
#carouselExampleCaptions .carousel-indicators button{ width:8px !important; height:8px !important; border-radius:50% !important; }

/* ---------- Sections ---------- */
.apple-section{ max-width:1200px; margin:0 auto; padding:64px 20px 8px; }
.apple-section-head{ text-align:center; margin-bottom:32px; }
.apple-section-head h5{
  font-size:14px !important; text-transform:uppercase; letter-spacing:.06em;
  color:var(--apple-text-3) !important; font-weight:600 !important; margin-bottom:8px !important;
}
.apple-section-head h2{ font-size:clamp(28px,3.4vw,40px) !important; margin:0 !important; }
.apple-section-head p{ color:var(--apple-text-2); font-size:17px; margin-top:10px; }

/* legacy .title -> Apple */
.title.text-center{ margin:56px 0 24px !important; }
.title h5{ font-size:13px !important; text-transform:uppercase; letter-spacing:.06em; color:var(--apple-text-3) !important; font-weight:600 !important; }
.title h2{ font-size:clamp(26px,3vw,36px) !important; }

/* ---------- Product cards (Apple Store cards) ---------- */
.product-wrapper{ padding-bottom:8px; }
.product-box{
  background:var(--apple-card) !important; border:1px solid rgba(0,0,0,.05) !important;
  border-radius:var(--apple-radius) !important; overflow:hidden;
  box-shadow:var(--apple-shadow) !important; transition:transform .35s ease, box-shadow .35s ease !important;
  margin:10px !important;
}
.product-box:hover{ transform:translateY(-4px); box-shadow:var(--apple-shadow-lg) !important; }
.product-box .img-wrapper{
  background:var(--apple-bg-soft) !important; border:0 !important; height:280px !important;
  display:flex; align-items:center; justify-content:center; padding:24px !important;
}
.product-box .img-wrapper img{
  object-fit:contain !important; height:220px !important; width:100% !important;
  mix-blend-mode:multiply;
}
.product-box .cart-wrap{ display:none !important; } /* hide hover icon cluster for minimal look */
.product-box .product-details{ padding:20px 20px 22px !important; text-align:center !important; }
.product-box .rating-details span{ color:var(--apple-text-3) !important; font-size:12px !important; text-transform:uppercase; letter-spacing:.04em; }
.product-box .main-price h5,.product-box .main-price a h5{
  font-size:17px !important; font-weight:600 !important; margin:8px 0 6px !important;
}
.product-box .product-details .main-price h5,
.product-box .product-details .main-price a h5{
  display:block !important; -webkit-line-clamp:unset !important; line-clamp:unset !important;
  -webkit-box-orient:unset !important; overflow:visible !important;
  white-space:normal !important; text-overflow:clip !important; max-height:none !important;
}
.product-box .main-price h3,.product-box .main-price .theme-color{
  color:var(--apple-text) !important; font-size:15px !important; font-weight:500 !important;
}
.product-box .listing-content p{ display:none !important; }
.product-box .btn.listing-content{
  display:inline-block !important; margin-top:12px !important;
  background:var(--apple-blue) !important; color:#fff !important;
  border-radius:980px !important; padding:8px 22px !important; font-size:14px !important;
}
/* slick arrows minimal */
.slick-arrow{
  background:#fff !important; border:1px solid var(--apple-line) !important;
  width:38px !important; height:38px !important; min-width:38px !important;
  border-radius:50% !important; font-size:16px !important;
  box-shadow:var(--apple-shadow); z-index:2;
  display:inline-flex !important; align-items:center !important; justify-content:center !important;
  padding:0 !important; line-height:1 !important;
}
.slick-arrow i, .slick-arrow svg{ line-height:1 !important; margin:0 !important; }
.prev-arrow{ left:6px !important; } .next-arrow{ right:6px !important; }
/* shop category rail arrows — pushed outward */
.slide-7-1 .prev-arrow{ left:-14px !important; }
.slide-7-1 .next-arrow{ right:-24px !important; }

/* ---------- Promo tiles (Apple grid) ---------- */
.apple-tiles{ display:grid; grid-template-columns:1fr 1fr; gap:20px; max-width:1280px; margin:20px auto; padding:0 20px; }
.apple-tile{
  border-radius:var(--apple-radius-lg); overflow:hidden; min-height:520px;
  display:flex; flex-direction:column; align-items:center; text-align:center;
  padding:48px 24px 0; background:var(--apple-bg-soft); border:1px solid rgba(0,0,0,.04);
  position:relative;
}
.apple-tile.dark{ background:#000; color:#f5f5f7; }
.apple-tile.dark h3{ color:#f5f5f7 !important; }
.apple-tile h3{ font-size:32px !important; margin:0 0 6px !important; }
.apple-tile p{ color:var(--apple-text-2); font-size:17px; margin:0 0 14px; }
.apple-tile.dark p{ color:#a1a1a6; }
.apple-tile img{ width:100%; height:340px; object-fit:cover; margin-top:auto; }
/* legacy banners -> tiles */
section.ratio2_1 .collection-banner,
.timer-banner,.collection-center{
  border-radius:var(--apple-radius-lg) !important; overflow:hidden !important;
  box-shadow:var(--apple-shadow) !important; border:1px solid rgba(0,0,0,.04) !important;
  background:#fff !important;
}
section.ratio2_1{ padding:12px 0 !important; }
.banner-btn-grup .btn,.collection-contain .btn{ border-radius:980px !important; }

/* ---------- Value props (Apple minimal) ---------- */
.service-section{ background:transparent !important; padding:24px 0 0 !important; }
.service-wrap{
  background:#fff !important; border:1px solid rgba(0,0,0,.05) !important;
  border-radius:var(--apple-radius) !important; box-shadow:none !important;
  padding:22px !important; display:flex !important; gap:14px !important; align-items:flex-start !important;
}
.service-wrap .service-icon svg,#chart{ width:36px !important; height:36px !important; }
.service-wrap h3{ font-size:15px !important; margin:0 0 4px !important; }
.service-wrap span{ font-size:13px !important; color:var(--apple-text-2) !important; }

/* ---------- Shop top categories: thumb above, text pill below ---------- */
.product_category_wrapper.cat-top-item{
  background:transparent !important; border:0 !important; box-shadow:none !important;
  display:flex !important; flex-direction:column !important; align-items:center !important;
  gap:10px; padding:6px 4px !important; margin:6px !important;
}
.product_category_wrapper.cat-top-item .cat-top-thumb{
  display:inline-flex; align-items:center; justify-content:center;
  width:166px; height:166px;
  background:transparent !important; border:0 !important; border-radius:0 !important;
  box-shadow:none !important; outline:none !important;
  overflow:visible; flex-shrink:0;
  transition:transform .25s ease !important;
}
.product_category_wrapper.cat-top-item .cat-top-thumb:hover{ transform:translateY(-3px); }
.product_category_wrapper.cat-top-item .cat-top-thumb img{
  width:150px !important; height:150px !important; object-fit:contain;
  background:transparent !important; border:0 !important; border-radius:0 !important;
  box-shadow:none !important; outline:none !important; mix-blend-mode:multiply;
}
.cat-top-pill{
  display:inline-block; background:#fff !important; color:#1D1D1F !important;
  border:1px solid rgba(0,0,0,.09) !important; border-radius:980px !important;
  padding:7px 18px !important; text-decoration:none !important; white-space:nowrap;
  transition:background .2s ease !important;
}
.cat-top-pill:hover{ background:#F5F5F7 !important; text-decoration:none !important; }
.cat-top-pill h5{ font-size:13px !important; font-weight:500 !important; margin:0 !important; }
/* ---------- Category pills (legacy) ---------- */
.product_category_wrapper{
  background:#fff !important; border:1px solid var(--apple-line) !important;
  border-radius:980px !important; padding:8px 14px 8px 8px !important; margin:6px !important;
  display:inline-flex !important; align-items:center; gap:10px;
}
.product_category_wrapper img{ width:36px !important; height:36px !important; border-radius:50% !important; background:var(--apple-bg-soft); }
.product_category_wrapper h5{ font-size:13px !important; font-weight:500 !important; margin:0 !important; }

/* ---------- Breadcrumb (Apple) ---------- */
.breadcrumb-section{
  background:var(--apple-bg-soft) !important; padding:44px 0 32px !important; text-align:center;
}
.breadcrumb-section .circles{ display:none !important; }
.breadcrumb-section.shapes .circles{ display:block !important; }
.brand-banner-center{ text-align:center; }
.brand-banner-logo{ max-height:64px; max-width:280px; object-fit:contain; }
.brand-banner-tagline{ margin:12px 0 0; font-size:15px; color:rgba(35,35,35,.65); }
.breadcrumb-section h3{ font-size:clamp(28px,4vw,40px) !important; }
.breadcrumb-section .breadcrumb{ justify-content:center !important; background:transparent !important; }
.breadcrumb-section .breadcrumb a{ color:var(--apple-text-2) !important; font-size:13px !important; }

/* ---------- Shop filters: checkbox lists ---------- */
.apple-check-list{ list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:2px; max-height:260px; overflow-y:auto; }
.apple-check{ display:flex; align-items:center; gap:10px; padding:8px 10px; border-radius:10px; cursor:pointer; margin:0; }
.apple-check:hover{ background:#F5F5F7; }
.apple-check input{ display:none; }
.apple-box{
  flex:0 0 20px; width:20px; height:20px; border-radius:7px;
  border:1.5px solid rgba(0,0,0,.2); background:#fff;
  display:inline-flex; align-items:center; justify-content:center;
  color:#fff; transition:all .18s ease;
}
.apple-box svg{ opacity:0; transform:scale(.5); transition:all .18s ease; }
.apple-check input:checked + .apple-box{ background:#007AFF; border-color:#007AFF; }
.apple-check input:checked + .apple-box svg{ opacity:1; transform:scale(1); }
.apple-check-label{ font-size:14px; color:#1D1D1F; }
/* ---------- Shop filters / cards ---------- */
.apple-filters{
  position:sticky; top:72px; background:#fff; border:1px solid rgba(0,0,0,.07);
  border-radius:18px; padding:22px; box-shadow:0 8px 32px rgba(0,0,0,.05);
}
.apple-filters-head{ display:flex; justify-content:space-between; align-items:center; margin-bottom:6px; }
.apple-filters-head h3{ font-size:19px !important; margin:0 !important; }
.apple-filters-head a{ font-size:13px; color:#007AFF !important; }
.apple-filter-group{ padding:14px 0; border-top:1px solid rgba(0,0,0,.06); margin-top:14px; }
.apple-filter-group:first-of-type{ border-top:0; margin-top:6px; padding-top:6px; }
.apple-filter-group h4{ font-size:13px !important; font-weight:600 !important; color:#1D1D1F !important; margin:0 0 12px !important; }
.apple-pills{ display:flex; flex-wrap:wrap; gap:8px; }
.apple-pill{ margin:0; cursor:pointer; }
.apple-pill input{ display:none; }
.apple-pill span{
  display:inline-block; font-size:13px; font-weight:500; color:#1D1D1F;
  background:#F5F5F7; border:1px solid transparent; border-radius:980px;
  padding:8px 16px; transition:all .2s ease; white-space:nowrap;
}
.apple-pill:hover span{ background:#e8e8ed; }
.apple-pill input:checked + span{ background:#1D1D1F; color:#fff; }
.apple-filter-apply{ width:100%; margin-top:16px; border:0; cursor:pointer; }
.category-option,.accordion-item,.card{
  border-radius:16px !important; border:1px solid var(--apple-line) !important;
  box-shadow:none !important; background:#fff !important;
}
.form-control,.form-select{
  border-radius:12px !important; border:1px solid var(--apple-line) !important;
  padding:10px 14px !important; font-size:14px !important; box-shadow:none !important;
}
.form-control:focus,.form-select:focus{ border-color:var(--apple-blue) !important; box-shadow:0 0 0 4px rgba(0,122,255,.14) !important; }
.page-item .page-link{ border-radius:10px !important; border:1px solid var(--apple-line) !important; color:var(--apple-text) !important; margin:0 4px; }
.page-item.active .page-link{ background:var(--apple-text) !important; border-color:var(--apple-text) !important; color:#fff !important; }
/* shop pagination — summary above, numbers centered */
.page-section{ display:flex; flex-direction:column; align-items:center; gap:10px; margin-top:28px; }
.shop-results-count{ font-size:13px; color:rgba(29,29,31,.68); margin:0; }
.page-section .pagination{ justify-content:center !important; }
/* subscribe form — button matches input: rounded rectangle */
.subscribe-section .subsribe-input .btn,
.subscribe-section .input-group .btn{ border-radius:12px !important; margin-left:8px !important; }
.page-section nav.d-flex p.small.text-muted{ display:none !important; }
.page-section nav.d-flex > div.d-sm-none{ display:none !important; }

/* ---------- Product detail (Apple PDP) ---------- */
.apple-pdp{ background:#fff; padding:8px 0 0; }
.apple-pdp-container{ max-width:1200px !important; }
.apple-pdp-crumb{ max-width:1200px; margin:0 auto; padding:18px 20px 0; font-size:12px; color:#AAAAAA; display:flex; gap:8px; flex-wrap:wrap; }
.apple-pdp-crumb a{ color:rgba(29,29,31,.68) !important; }
.apple-pdp-crumb .current{ color:#1D1D1F; }
.apple-pdp-card{ background:#fff !important; border:0 !important; box-shadow:none !important; padding:12px 0 8px !important; }
.apple-pdp-grid{ align-items:start; }
.apple-pdp-gallery{ position:sticky; top:72px; align-self:start; }
.apple-pdp-gallery .carousel{ background:#F5F5F7; border:1px solid rgba(0,0,0,.06); border-radius:18px; overflow:hidden; }
.apple-pdp-gallery .carousel-inner{ background:#F5F5F7 !important; }
.apple-pdp-gallery .carousel-item{ background:#F5F5F7; }
/* BS4-JS + BS5-CSS bridge: restore v4 directional slide so photos glide instead of swapping */
.apple-pdp-gallery .carousel-item,
.quick-view-modal .qv-gallery .carousel-item{
  transition:transform .25s ease-out !important;
  -webkit-backface-visibility:hidden; backface-visibility:hidden;
}
.apple-pdp-gallery .carousel-item-next, .apple-pdp-gallery .carousel-item-prev,
.quick-view-modal .qv-gallery .carousel-item-next, .quick-view-modal .qv-gallery .carousel-item-prev{
  display:block !important; position:absolute !important; top:0; left:0; width:100%;
}
.apple-pdp-gallery .active.carousel-item-right, .apple-pdp-gallery .carousel-item-next:not(.carousel-item-left),
.quick-view-modal .qv-gallery .active.carousel-item-right, .quick-view-modal .qv-gallery .carousel-item-next:not(.carousel-item-left){
  -webkit-transform:translateX(100%) !important; transform:translateX(100%) !important;
}
.apple-pdp-gallery .active.carousel-item-left, .apple-pdp-gallery .carousel-item-prev:not(.carousel-item-right),
.quick-view-modal .qv-gallery .active.carousel-item-left, .quick-view-modal .qv-gallery .carousel-item-prev:not(.carousel-item-right){
  -webkit-transform:translateX(-100%) !important; transform:translateX(-100%) !important;
}
/* incoming photo fades in as it starts gliding (overlap feel) */
.apple-pdp-gallery .carousel-item-next:not(.carousel-item-left),
.quick-view-modal .qv-gallery .carousel-item-next:not(.carousel-item-left){
  opacity:0;
}
.apple-pdp-gallery .carousel-item-next.carousel-item-left,
.quick-view-modal .qv-gallery .carousel-item-next.carousel-item-left{
  opacity:1; transition:transform .25s ease-out, opacity .18s ease-out !important;
}
.apple-pdp-gallery .carousel-inner img{ height:520px !important; object-fit:contain !important; border-radius:0 !important; padding:0 !important; background:none !important; }
.apple-pdp-arrow{ width:44px !important; height:44px !important; min-width:44px !important; padding:0 !important; top:50%; transform:translateY(-50%); background:rgba(255,255,255,.9) !important; border-radius:50% !important; opacity:1 !important; box-shadow:0 4px 16px rgba(0,0,0,.1); display:inline-flex !important; align-items:center !important; justify-content:center !important; }
.apple-pdp-arrow span{ font-size:26px; color:#1D1D1F; line-height:1 !important; margin:0 !important; transform:translateY(-1px); }
.apple-pdp-thumbs{ display:flex; gap:10px; margin-top:12px; flex-wrap:wrap; }
.apple-pdp-thumb{ width:72px; height:72px; border-radius:14px; border:1px solid rgba(0,0,0,.08); background:#fff; padding:6px; cursor:pointer; overflow:hidden; }
.apple-pdp-thumb img{ width:100%; height:100%; object-fit:contain; }
.apple-pdp-buy .apple-buy-inner{ padding:8px 8px 8px 12px; }
.apple-pdp-eyebrow{ font-size:13px; font-weight:600; color:#AAAAAA !important; text-transform:uppercase; letter-spacing:.05em; margin:0 0 8px; }
.apple-pdp-buy h1#product_name,.apple-pdp-buy h2#product_name{ font-size:clamp(28px,3.4vw,40px) !important; line-height:1.1 !important; font-weight:700 !important; margin:0 0 10px !important; }
.apple-pdp-short{ color:rgba(29,29,31,.68); font-size:15px; margin-bottom:10px; }
.apple-pdp-short p{ margin:0; }
.apple-pdp-bestseller{ font-size:13px; color:#1D1D1F; margin:0 0 18px; }
.apple-pdp-bestseller span{ color:#AAAAAA; }
.apple-pdp .price-detail{ font-size:28px !important; font-weight:700 !important; letter-spacing:-.02em; margin:18px 0 6px !important; padding-top:18px; border-top:1px solid rgba(0,0,0,.08); }
.apple-pdp .product-title{ font-size:13px !important; font-weight:600 !important; color:#1D1D1F !important; text-transform:none !important; margin:18px 0 10px !important; }
.apple-pdp .size-box ul{ display:flex; flex-wrap:wrap; gap:16px; list-style:none; padding:0; margin:0; }
.apple-pdp .size-box ul li{ margin:0 !important; width:auto !important; max-width:none !important; border:0 !important; background:transparent !important; box-shadow:none !important; }
.apple-pdp .size-box ul li a,.apple-pdp .size_char{
  display:inline-flex; align-items:center; justify-content:center; min-width:52px; height:38px;
  border:1px solid transparent !important; border-radius:10px !important;
  padding:0 16px !important; color:#1D1D1F !important; background:#F5F5F7 !important;
  font-size:14px !important; font-weight:500 !important; text-decoration:none !important;
}
.apple-pdp .size-box ul li a:hover{ background:#e8e8ed !important; }
/* kill legacy black selected-size background */
.addeffect-section .size-box ul li.active{ background:transparent !important; box-shadow:none !important; }
/* breathing room between variant options */
.quick-view-modal .size-box ul{ display:flex !important; flex-wrap:wrap !important; gap:14px !important; list-style:none !important; padding:0 !important; margin:0 !important; }
.quick-view-modal .size-box ul li{ margin:0 !important; width:auto !important; max-width:none !important; border:0 !important; background:transparent !important; box-shadow:none !important; }
.quick-view-modal .color-image .image-section{ display:flex !important; flex-wrap:wrap !important; gap:18px !important; list-style:none !important; padding:0 !important; }
.quick-view-modal .color-image .image-section li{ margin:0 !important; }
.apple-pdp .color-image .image-section{ display:flex; gap:20px; list-style:none; padding:0; flex-wrap:wrap; }
.apple-pdp .color-image .image-section li{ width:44px !important; height:44px !important; border-radius:50% !important; border:2px solid rgba(0,0,0,.1); overflow:hidden; padding:2px !important; }
.apple-pdp .qty-box .input-group{ width:200px; max-width:200px; height:46px; border:1px solid rgba(0,0,0,.16); border-radius:980px; overflow:hidden; background:#fff; display:flex !important; align-items:stretch !important; justify-content:space-between !important; flex-wrap:nowrap !important; }
.apple-pdp .qty-box input{ border:0 !important; text-align:center !important; font-weight:600; font-size:16px !important; background:transparent !important; box-shadow:none !important; height:auto !important; width:60px !important; flex:0 0 60px !important; padding:0 !important; }
.apple-pdp .qty-box .btn{ border:0 !important; background:transparent !important; color:#1D1D1F !important; padding:0 20px !important; font-size:18px !important; font-weight:400 !important; display:inline-flex !important; align-items:center !important; }
.apple-pdp .product-buttons{ display:flex; gap:10px; margin-top:22px; flex-wrap:wrap; }
.apple-pdp .product-buttons .btn{ border-radius:980px !important; padding:12px 30px !important; font-size:15px !important; }
.apple-pdp #add-to-cart-button{ margin-left:0 !important; }
.apple-pdp #add-to-cart-button .btn{ background:#007AFF !important; border-color:#007AFF !important; }
.apple-pdp #add-to-cart-button .btn.btn-out{ background:#AAAAAA !important; border-color:#AAAAAA !important; }
.apple-pdp-perks{ list-style:none; padding:18px 0 0; margin:22px 0 0; border-top:1px solid rgba(0,0,0,.08); display:flex; flex-direction:column; gap:10px; color:rgba(29,29,31,.8); font-size:13px; }
.apple-pdp-perks li{ display:flex; gap:10px; align-items:flex-start; }
.apple-pdp-stock{ display:flex; align-items:center; gap:8px; margin:4px 0 2px; font-size:13px; font-weight:600; }
.apple-stock-dot{ width:9px; height:9px; border-radius:50%; background:#AAAAAA; }
.apple-stock-dot.in{ background:#007AFF; }
.apple-stock-dot.out{ background:#FF3B30; }
.apple-pdp-stock.is-out #availability{ color:#FF3B30; }
/* PDP variation selected state */
.apple-pdp-buy .size_char.pdp-selected,
.apple-pdp-buy .size_char.pdp-selected:hover,
.apple-pdp-buy .size_char.pdp-selected:active,
.apple-pdp-buy .size_char.pdp-selected:focus{
  background:#007AFF !important; color:#fff !important; border-color:#007AFF !important;
}
.apple-pdp-buy .color-image .image-section li,
.apple-pdp-buy .color-image .image-section li a{
  background:transparent !important; border:0 !important; box-shadow:none !important; outline:none !important;
  width:48px !important; height:48px !important; min-width:48px !important;
  padding:0 !important; margin:0 !important; border-radius:50% !important;
  display:block !important; overflow:visible !important; position:relative !important;
}
.apple-pdp-buy .color-image .image-section li a > div,
.apple-pdp-buy .color-image .image-section li a > img{
  width:100% !important; height:100% !important;
  border-radius:50% !important; margin:0 !important; padding:0 !important;
  display:block !important;
}
.apple-pdp-buy .product_color.pdp-selected{ outline:none !important; box-shadow:none !important; }
.apple-pdp-buy .product_color.pdp-selected > div,
.apple-pdp-buy .product_color.pdp-selected > img{
  border-radius:50% !important;
  box-shadow:0 0 0 3px #fff, 0 0 0 6px rgba(0,122,255,.45) !important;
}
/* Combined-variation picks: blue tile for pills, circle ring for colors */
.apple-pdp-buy .size-box .combo_pick.pdp-selected,
.apple-pdp-buy .size-box .combo_pick.pdp-selected:hover,
.apple-pdp-buy .size-box .combo_pick.pdp-selected:active,
.apple-pdp-buy .size-box .combo_pick.pdp-selected:focus{
  background:#007AFF !important; color:#fff !important; border-color:#007AFF !important;
}
.apple-pdp-buy .color-image .combo_pick.pdp-selected > div,
.apple-pdp-buy .color-image .combo_pick.pdp-selected > img{
  border-radius:50% !important;
  box-shadow:0 0 0 3px #fff, 0 0 0 6px rgba(0,122,255,.45) !important;
}
.apple-pdp-details{ background:#F5F5F7; border-radius:18px; padding:32px; margin-top:8px; }
.apple-pdp-details-grid{ display:grid; grid-template-columns:1fr; gap:32px; }
.apple-pdp-details h3{ font-size:21px !important; margin:0 0 12px !important; }
.apple-pdp-details .product-detail{ color:rgba(29,29,31,.8); font-size:14px; line-height:1.65; }
.apple-pdp-specs{ background:#fff; border-radius:14px; padding:20px; height:fit-content; }
.apple-pdp-specs h4{ font-size:14px !important; margin:0 0 12px !important; }
.apple-pdp-specs ul{ list-style:none; padding:0; margin:0; display:flex; flex-direction:column; }
.apple-pdp-specs li{ display:flex; justify-content:space-between; padding:10px 0; border-top:1px solid rgba(0,0,0,.06); font-size:13px; }
.apple-pdp-specs li span{ color:#AAAAAA; }
@media(max-width:900px){ .apple-pdp-gallery{ position:static; } .apple-pdp-gallery .carousel-inner img{ height:340px !important; } .apple-pdp-details-grid{ grid-template-columns:1fr; } .apple-pdp .product-buttons{ justify-content:center !important; } .apple-pdp .product-buttons .btn{ padding:10px 26px !important; font-size:14px !important; width:auto !important; } .apple-pdp .qty-box .input-group{ margin:0 auto !important; } .apple-pdp .apple-pdp-stock{ justify-content:center !important; } .apple-pdp .size-box ul{ justify-content:center !important; } .apple-pdp .product-title.size-text{ text-align:center !important; } }
/* legacy PDP fallbacks (quick-view modal only — PDP uses .apple-pdp-* above) */
.product-right h2{ font-size:32px !important; line-height:1.15 !important; }
.product-btn .btn{ border-radius:980px !important; padding:12px 32px !important; }

/* ---------- Cart / checkout / auth ---------- */
.cart-table,.order-box,.checkout-box,.auth-box,.dashboard-box{
  background:#fff !important; border-radius:var(--apple-radius-lg) !important;
  border:1px solid rgba(0,0,0,.05) !important; box-shadow:var(--apple-shadow) !important;
}
.table{ --bs-table-bg:transparent; }
.table th{ font-size:12px; text-transform:uppercase; letter-spacing:.05em; color:var(--apple-text-3); font-weight:600; border:0 !important; }
.table td{ vertical-align:middle; border-color:var(--apple-line) !important; font-size:14px; }

/* ---------- Wishlist / cart tables → stacked cards on mobile ---------- */
@media(max-width:767px){
  .wish-list-section .cart-table thead{ display:none !important; }
  .wish-list-section .cart-table,
  .wish-list-section .cart-table tbody{ display:block !important; width:100% !important; background:transparent !important; border:0 !important; }
  .wish-list-section .cart-table tr{
    display:block !important; width:100% !important;
    background:#fff !important; border:1px solid rgba(0,0,0,.07) !important; border-radius:18px !important;
    box-shadow:0 8px 24px rgba(0,0,0,.05) !important;
    margin-bottom:14px !important; padding:16px !important;
  }
  .wish-list-section .cart-table td{
    display:block !important; width:100% !important;
    border:0 !important; text-align:center !important; padding:6px 4px !important;
  }
  .wish-list-section .cart-table td img{ max-width:130px !important; height:auto !important; margin:0 auto; }
  .wish-list-section .cart-table .mobile-cart-content{ display:none !important; }
}

/* ---------- Blog (Apple Newsroom) ---------- */
.single_course,.blog-card{
  background:#fff !important; border-radius:var(--apple-radius) !important; overflow:hidden !important;
  border:1px solid rgba(0,0,0,.05) !important; box-shadow:var(--apple-shadow) !important;
}
.single_course .course_head,.single_course .course_head img{ height:220px !important; object-fit:cover; }
.single_course .course_content{ background:#fff !important; padding:22px !important; }
.single_course .tag{
  background:var(--apple-bg-soft) !important; color:var(--apple-text-2) !important;
  border-radius:980px !important; font-size:12px !important; font-weight:600 !important;
  padding:5px 12px !important; text-transform:none !important;
}
.single_course h4 a{ color:var(--apple-text) !important; font-size:19px !important; }

/* ---------- Footer (Apple) ---------- */
footer.footer-sm-space{ background:var(--apple-bg-soft) !important; border-top:1px solid var(--apple-line); margin-top:64px; }
.main-footer{ padding:40px 0 20px !important; }
.footer-title h3,.footer-newsletter h3{ font-size:12px !important; font-weight:600 !important; color:var(--apple-text) !important; }
.footer-content a,.footer-contact span,.footer-newsletter p{ font-size:12px !important; color:var(--apple-text-2) !important; }
.footer-content li{ margin-bottom:8px !important; }
.footer-newsletter .form-control{ border-radius:980px !important; }
.sub-footer{ border-top:1px solid var(--apple-line) !important; padding:16px 0 !important; }
.sub-footer p,.sub-footer li{ font-size:12px !important; color:var(--apple-text-3) !important; }

/* ---------- Modals / misc ---------- */
.swal2-container{ z-index:3000 !important; }
/* wishlist saved state — grey, not blue */
a.in-wishlist, button.in-wishlist{ color:#9AA0A6 !important; }
a.in-wishlist svg, button.in-wishlist svg{ stroke:#9AA0A6 !important; fill:#9AA0A6 !important; }
.btn.in-wishlist{ background:#9AA0A6 !important; border-color:#9AA0A6 !important; color:#fff !important; }
.btn.in-wishlist::before{ display:none !important; }
.modal-content{ border-radius:22px !important; border:0 !important; box-shadow:var(--apple-shadow-lg) !important; overflow:hidden; }
.tap-to-top{
  background:transparent !important; border-radius:50% !important;
  overflow:visible !important; box-shadow:none !important;
  width:48px !important; height:48px !important;
  min-width:48px !important; min-height:48px !important;
  padding:0 !important; aspect-ratio:1 / 1 !important;
}
.tap-to-top::before{ display:none !important; }
.tap-to-top a{
  width:48px !important; height:48px !important;
  min-width:48px !important; min-height:48px !important;
  padding:0 !important; aspect-ratio:1 / 1 !important; line-height:1 !important;
  display:inline-flex !important; align-items:center !important; justify-content:center !important;
  background:#007AFF !important; border:0 !important; border-radius:50% !important;
  box-shadow:0 8px 24px rgba(0,122,255,.35) !important;
  font-size:16px !important;
}
.tap-to-top i{ color:rgba(255,255,255,.75) !important; font-size:16px; }
.js-cookie-consent{ border-radius:16px !important; margin:12px; width:calc(100% - 24px) !important; box-shadow:var(--apple-shadow-lg); border:1px solid var(--apple-line) !important; background:#fff !important; }

/* ---------- Responsive ---------- */
@media(max-width:900px){
  .apple-links{ display:none; }
  .apple-search-pill{ min-width:0; flex:1; }
  .apple-tiles{ grid-template-columns:1fr; }
  .apple-hero{ margin:12px; border-radius:22px; padding:44px 18px 0; }
  #carouselExampleCaptions{ margin:12px; }
  .apple-pdp-card{ padding:0 12px !important; }
  .product-box .img-wrapper{ height:220px !important; }
  .product-box .img-wrapper img{ height:170px !important; }
}
/* ---------- Apple stacked heroes (apple.com) ---------- */
.apple-hero-stack{ display:flex; flex-direction:column; gap:12px; padding:0 0 8px; }
.apple-hero-full{
  position:relative; text-align:center; padding:0; overflow:hidden;
  min-height:min(80vh,720px); max-height:720px; display:flex; align-items:flex-start; justify-content:center;
}
.apple-hero-full::after{
  content:""; position:absolute; inset:0; z-index:1; pointer-events:none;
}
.apple-hero-dark::after{ background:linear-gradient(rgba(0,0,0,.62), rgba(0,0,0,.15) 45%, rgba(0,0,0,0) 60%, rgba(0,0,0,.35)); }
.apple-hero-light::after{ background:linear-gradient(rgba(245,245,247,.88), rgba(245,245,247,.25) 45%, rgba(245,245,247,0) 60%, rgba(245,245,247,.4)); }
.apple-hero-dark{ background:#000; color:#F5F5F7; }
.apple-hero-dark h1{ color:#F5F5F7 !important; font-size:clamp(40px,5.6vw,72px) !important; line-height:1.04 !important; font-weight:700 !important; letter-spacing:-.03em !important; margin:0 0 8px !important; }
.apple-hero-dark .apple-sub{ color:#AAAAAA !important; font-size:clamp(17px,2vw,24px); }
.apple-hero-light{ background:#F5F5F7; color:#1D1D1F; }
.apple-hero-light h2{ font-size:clamp(32px,4.4vw,56px) !important; line-height:1.06 !important; font-weight:700 !important; margin:0 0 8px !important; }
.apple-hero-light .apple-sub{ color:rgba(29,29,31,.68); font-size:clamp(16px,1.8vw,21px); }
.apple-hero-copy{ position:relative; z-index:2; max-width:860px; margin:0 auto; padding:72px 20px 0; }
.apple-eyebrow.light{ color:#AAAAAA; }
.apple-btn-primary{
  display:inline-block; background:#007AFF !important; color:#fff !important;
  border-radius:980px !important; padding:10px 28px !important; font-size:15px !important; font-weight:500 !important;
}
.apple-btn-primary:hover{ background:#0A84FF !important; text-decoration:none !important; }
.apple-hero-media-full{ position:absolute; inset:0; z-index:0; max-width:none; margin:0; }
.apple-hero-media-full img{ width:100%; height:100%; object-fit:cover; display:block; border-radius:0 !important; }
/* ---------- Dynamic hero slider ---------- */
/* Image-only hero slides — no text, whole image is the link */
.apple-hero-full.image-only{ min-height:0; display:block; }
.apple-hero-full.image-only::after{ display:none; }
.apple-hero-link{ display:block; }
.apple-hero-link:hover{ text-decoration:none; }
.apple-hero-full.image-only .apple-hero-media-full{ position:relative; inset:auto; display:flex; justify-content:center; }
.apple-hero-full.image-only .apple-hero-media-full img{ width:auto; max-width:100%; height:auto; max-height:720px; object-fit:contain; }
.apple-hero-slider{ position:relative; overflow:hidden; }
.apple-hero-track{ display:flex; align-items:flex-start; transition:transform .7s cubic-bezier(.32,.72,.35,1); }
.apple-hero-track .apple-hero-slide{ flex:0 0 100%; min-width:100%; }
.apple-hero-lines{
  position:absolute; bottom:20px; left:0; right:0; z-index:3;
  display:flex; gap:10px; justify-content:center;
}
.apple-hero-lines button{
  width:56px; height:4px; border-radius:999px; border:0; padding:0; cursor:pointer;
  background:rgba(170,170,170,.4); overflow:hidden; position:relative;
}
.apple-hero-lines button span{
  position:absolute; top:0; left:0; bottom:0; width:0;
  background:#8E8E93; border-radius:999px; display:block;
}
.apple-tiles-2up{ display:grid; grid-template-columns:1fr 1fr; gap:12px; padding:0 12px; }
.apple-promo-tile{
  display:flex; flex-direction:column; align-items:center; text-align:center;
  background:#fff; border-radius:0; padding:48px 20px 0; overflow:hidden;
  border:1px solid rgba(0,0,0,.04); text-decoration:none !important;
}
.apple-promo-tile.light-gray{ background:#F5F5F7; }
.apple-promo-tile.dark{ background:#000; }
.apple-promo-tile.dark h3{ color:#F5F5F7 !important; }
.apple-promo-tile.dark .apple-tile-sub{ color:#AAAAAA; }
.apple-promo-tile h3{ font-size:clamp(24px,3vw,36px) !important; margin:0 0 6px !important; }
.apple-tile-sub{ color:rgba(29,29,31,.68); font-size:16px; margin:0 0 10px; }
.apple-promo-tile img{ width:100%; height:360px; object-fit:cover; margin-top:18px; }
.apple-promo-tile.cat img{ object-fit:contain; height:300px; padding:28px; margin-top:8px; }
.apple-promo-tile.product h3{
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;
  min-height:2.6em;
}
.apple-price{ color:rgba(29,29,31,.68); font-size:15px; font-weight:600; margin:0 0 10px; }
.apple-promo-tile.dark .apple-price{ color:#AAAAAA; }
@media(max-width:860px){
  .apple-tiles-2up{ grid-template-columns:1fr; }
  .apple-hero-full{ min-height:0; display:block; }
  .apple-hero-full::after{ display:none; }
  .apple-hero-copy{ padding:48px 20px 30px; }
  .apple-hero-media-full{ position:relative; inset:auto; }
  .apple-hero-media-full img{ height:auto; }
  .apple-hero-lines{ bottom:12px; }
}
/* Wide TV cards (3-up) */
.slide-wide .product-box .img-wrapper,
.apple-tiles-2up .product-box .img-wrapper{ height:340px !important; }
.slide-wide .product-box .img-wrapper img,
.apple-tiles-2up .product-box .img-wrapper img{ height:270px !important; }
@media(max-width:900px){
  .slide-wide .product-box .img-wrapper,
  .apple-tiles-2up .product-box .img-wrapper{ height:260px !important; }
  .slide-wide .product-box .img-wrapper img,
  .apple-tiles-2up .product-box .img-wrapper img{ height:200px !important; }
}
/* ---------- Shop by category rail ---------- */
.cat-rail-section{ padding-top:56px !important; }
.cat-rail-head{ margin-bottom:24px; }
.cat-rail-eyebrow{ font-size:14px; color:rgba(29,29,31,.68); margin:0 0 4px; }
.cat-rail-head h2{ font-size:clamp(28px,3.4vw,40px) !important; margin:0 !important; text-transform:none !important; }
.cat-rail{
  display:flex; gap:16px; overflow-x:auto; padding:4px 20px 20px; margin:0 -20px;
  scroll-snap-type:x mandatory; scrollbar-width:none;
}
.cat-rail.slick-initialized{ overflow:visible; scroll-snap-type:none; }
.cat-rail .slick-slide{ margin:0 8px; }
.cat-rail .slide-arrow{
  width:44px !important; height:44px !important; min-width:44px !important;
  border-radius:50% !important; background:#fff !important;
  border:1px solid var(--apple-line) !important;
  box-shadow:0 4px 16px rgba(0,0,0,.12) !important;
  display:inline-flex !important; align-items:center !important; justify-content:center !important;
  padding:0 !important; line-height:1 !important;
  color:#1D1D1F !important; font-size:18px !important; z-index:3 !important;
  position:absolute !important; top:38% !important; transform:translateY(-50%) !important;
}
.cat-rail .slide-arrow svg{ line-height:1 !important; margin:0 !important; color:#1D1D1F !important; }
.cat-rail .slide-arrow::before{ display:none !important; }
.cat-rail .prev-arrow{ left:-10px !important; }
.cat-rail .next-arrow{ right:-10px !important; }
.cat-card{
  flex:0 0 270px; scroll-snap-align:start;
  background:#fff; border:1px solid rgba(0,0,0,.06); border-radius:18px; overflow:hidden;
  text-decoration:none !important; display:flex !important; flex-direction:column;
  transition:transform .35s ease, box-shadow .35s ease !important;
}
.cat-card:hover{ transform:translateY(-5px); box-shadow:0 20px 50px rgba(0,0,0,.12) !important; text-decoration:none !important; }
.cat-card-media{
  display:flex; align-items:center; justify-content:center;
  background:#F5F5F7; height:290px; overflow:hidden;
}
.cat-card-media img{
  width:100%; height:100%; object-fit:contain; padding:28px;
  transition:transform .5s ease;
}
.cat-card:hover .cat-card-media img{ transform:scale(1.07); }
.cat-card-body{ display:flex; flex-direction:column; gap:2px; padding:18px 20px 20px; position:relative; }
.cat-card-name{ font-size:17px; font-weight:600; color:#1D1D1F; }
.cat-card-sub{ font-size:13px; color:#AAAAAA; }
.cat-card-arrow{
  position:absolute; right:18px; bottom:18px; font-size:18px; color:#1D1D1F;
  transition:transform .25s ease;
}
.cat-card:hover .cat-card-arrow{ transform:translateX(4px); }
/* ---------- Brand strip minimal ---------- */
.brand-slider{ padding:0 54px; }
.brand-slider .slide-arrow{
  width:44px !important; height:44px !important; min-width:44px !important;
  border-radius:50% !important; background:#fff !important;
  border:1px solid var(--apple-line) !important;
  box-shadow:0 4px 16px rgba(0,0,0,.12) !important;
  display:inline-flex !important; align-items:center !important; justify-content:center !important;
  padding:0 !important; line-height:1 !important;
  color:#1D1D1F !important; font-size:18px !important; z-index:3 !important;
  top:50% !important; transform:translateY(-50%) !important;
}
.brand-slider .slide-arrow i, .brand-slider .slide-arrow svg{ line-height:1 !important; margin:0 !important; color:#1D1D1F !important; }
.brand-slider .slide-arrow::before{ display:none !important; }
.brand-slider .prev-arrow{ left:5px !important; }
.brand-slider .next-arrow{ right:5px !important; }
@media(max-width:768px){ .brand-slider{ padding:0 40px; } .brand-slider .prev-arrow{ left:0 !important; } .brand-slider .next-arrow{ right:0 !important; } }
.brand-image{
  background:#fff !important; border:1px solid var(--apple-line) !important;
  border-radius:16px !important; height:96px; display:flex !important;
  align-items:center; justify-content:center; margin:8px;
}
.brand-image img{ max-height:56px !important; width:auto !important; max-width:140px; object-fit:contain; filter:grayscale(20%); opacity:.85; }
/* ---------- Brand detail page ---------- */
.apple-brand-hero{ padding-top:32px !important; }
.apple-brand-head{ display:flex; align-items:center; gap:22px; background:#fff; border:1px solid rgba(0,0,0,.06); border-radius:28px; padding:28px 32px; box-shadow:0 8px 32px rgba(0,0,0,.05); }
.apple-brand-head img{ max-height:72px; max-width:200px; object-fit:contain; }
.apple-brand-head h1{ font-size:clamp(28px,3.6vw,40px) !important; margin:0 !important; }
.apple-brand-head p{ color:rgba(29,29,31,.68); margin:6px 0 0; font-size:15px; }
/* ---------- Auth / generic light cards ---------- */
.log-in-section,.sign-up-section,.contact-section,.wishlist-section,.cart-section{
  background:transparent !important;
}
.log-in-box,.contact-box,.faq-box{
  background:#fff !important; border-radius:28px !important;
  border:1px solid rgba(0,0,0,.05) !important; box-shadow:var(--apple-shadow) !important;
}
/* Hide noisy old backgrounds */
.section-b-space{ padding-bottom:48px !important; }
/* ---------- Quick-view modal (Apple) ---------- */
.quick-view-modal .modal-content{ position:relative; }
.qv-close{
  position:absolute; top:12px; right:12px; z-index:10;
  width:34px !important; height:34px !important; min-width:34px !important;
  border-radius:50% !important; border:0 !important; padding:0 !important;
  background:#F5F5F7 !important; color:#1D1D1F !important;
  display:inline-flex !important; align-items:center !important; justify-content:center !important;
  font-size:20px !important; line-height:1 !important; cursor:pointer;
}
.qv-close:hover{ background:#e8e8ed !important; }
.qv-close span{ line-height:1; transform:translateY(-1px); }
/* gallery */
.quick-view-modal .qv-gallery{ background:transparent; border-radius:18px; overflow:hidden; position:relative; }
.quick-view-modal .qv-gallery .carousel-inner{ background:transparent !important; }
.quick-view-modal .qv-gallery .carousel-inner img{ height:340px !important; object-fit:contain !important; padding:20px; mix-blend-mode:multiply; }
.quick-view-modal .qv-gallery .carousel-item img{ cursor:zoom-in; transition:transform .3s ease; }
.quick-view-modal .qv-gallery .carousel-item img.qv-zoomed{ transform:scale(2); cursor:zoom-out; }
.quick-view-modal .qv-arrow{
  width:36px !important; height:36px !important;
  top:50% !important; transform:translateY(-50%) !important;
  background:rgba(255,255,255,.92) !important; border-radius:50% !important;
  box-shadow:0 4px 14px rgba(0,0,0,.12); opacity:1 !important;
  display:inline-flex !important; align-items:center !important; justify-content:center !important;
}
.quick-view-modal .qv-arrow span{ font-size:22px; color:#1D1D1F; line-height:1; }
.quick-view-modal .carousel-control-prev.qv-arrow{ left:10px !important; }
.quick-view-modal .carousel-control-next.qv-arrow{ right:10px !important; }
/* thumbnail strip */
.qv-thumbs{ display:flex; align-items:center; gap:8px; margin-top:12px; }
.qv-thumbs-track{ display:flex; gap:8px; overflow-x:auto; flex:1; padding:2px; scrollbar-width:none; }
.qv-thumbs-track::-webkit-scrollbar{ display:none; }
.qv-thumb{
  flex:0 0 64px; width:64px; height:64px; padding:4px; cursor:pointer;
  background:transparent; border:1.5px solid rgba(0,0,0,.08); border-radius:12px; overflow:hidden;
}
.qv-thumb.active{ border-color:#007AFF; background:transparent; box-shadow:0 0 0 3px rgba(0,122,255,.18); }
.qv-thumb img{ width:100%; height:100%; object-fit:contain; mix-blend-mode:multiply; }
.qv-thumbs-arrow{
  flex:0 0 28px; width:28px; height:28px; border-radius:50%; border:1px solid rgba(0,0,0,.1);
  background:#fff; color:#1D1D1F; font-size:16px; line-height:1; cursor:pointer;
  display:inline-flex; align-items:center; justify-content:center; padding:0;
}
/* variation selected state */
.quick-view-modal .size_char.qv-selected{
  background:#007AFF !important; color:#fff !important; border-color:#007AFF !important;
  outline:none !important; box-shadow:none !important;
}
.quick-view-modal .product_color.qv-selected{ outline:none !important; box-shadow:none !important; }
.quick-view-modal .color-image .image-section li,
.quick-view-modal .color-image .image-section li a{
  background:transparent !important; border:0 !important; border-radius:50% !important;
  box-shadow:none !important; outline:none !important; padding:2px !important;
}
.quick-view-modal .product_color.qv-selected > div,
.quick-view-modal .product_color.qv-selected > img{
  border-radius:50% !important;
  box-shadow:0 0 0 3px #fff, 0 0 0 6px rgba(0,122,255,.45), 0 6px 18px rgba(0,122,255,.3) !important;
}
/* stock badges */
.quick-view-modal .badge.stock-out{ background:#FF3B30 !important; }
/* compact pill quantity */
.quick-view-modal .qty-box .input-group{
  max-width:148px; border:1px solid rgba(0,0,0,.14); border-radius:980px;
  overflow:hidden; background:#fff; flex-wrap:nowrap !important;
}
.quick-view-modal .qty-box input{
  border:0 !important; text-align:center !important; font-weight:600;
  height:32px !important; padding:0 4px !important; font-size:14px !important;
  border-radius:980px !important; box-shadow:none !important;
}
.quick-view-modal .qty-box .btn{
  border:0 !important; background:transparent !important; color:#1D1D1F !important;
  width:30px !important; height:32px !important; min-width:30px !important;
  padding:0 !important; font-size:11px !important;
  display:inline-flex !important; align-items:center !important; justify-content:center !important;
}
.quick-view-modal .product-right{ padding:4px 4px 4px 8px; }
@media(prefers-reduced-motion:reduce){ *{ transition:none !important; } }
