/*
Theme Name: 925 Ananta
Description: Header component first (announcement bar + main nav), matching Khushbu Jewellers layout/colors, rebranded. Other sections built one at a time after this is approved.
Version: 1.0
Text Domain: ananta925
*/

/* ==========================================================================
   ROOT COLORS - sampled directly from the reference screenshot
   ========================================================================== */
:root{
  --wine: #55142A;        /* announcement bar background */
  --wine-dark: #3e0f1e;
  --nav-text: #6b2f22;    /* nav link color (warm maroon-brown) */
  --nav-text-hover: #55142A;
  --ink: #111111;         /* logo / body text */
  --border: #e6e0da;
  --bg: #ffffff;
  --font-body: 'Karla', Arial, sans-serif;
  --font-head: 'Montserrat', 'Segoe UI', Arial, sans-serif;
}

*{ box-sizing:border-box; }
body{ margin:0; font-family: var(--font-body); color:var(--ink); background:var(--bg); font-size:15px; line-height:1.6; }
h1,h2,h3,h4,h5,h6{ font-family: var(--font-head); font-weight:600; letter-spacing:-0.01em; }
a{ text-decoration:none; color:inherit; }
ul{ list-style:none; margin:0; padding:0; }
img{ max-width:100%; display:block; }

/* ==========================================================================
   ANNOUNCEMENT BAR (top wine strip - social icons left, message centered)
   ========================================================================== */
.announcement-bar{
  background: var(--wine);
  color:#fff;
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:10px 24px;
  min-height:40px;
}
.announcement-bar__social{
  position:absolute;
  left:24px;
  top:50%;
  transform:translateY(-50%);
  display:flex;
  gap:16px;
}
.announcement-bar__social a{
  width:20px; height:20px;
  display:flex; align-items:center; justify-content:center;
  color:#fff;
  opacity:0.95;
}
.announcement-bar__social svg{ width:18px; height:18px; }
.announcement-bar__message{
  margin:0;
  font-size:14px;
  font-weight:500;
  letter-spacing:0.01em;
  text-align:center;
}

/* ==========================================================================
   MAIN HEADER (logo, nav, search, account/wishlist/cart)
   ========================================================================== */
.site-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding:14px 32px;
  border-bottom:1px solid var(--border);
  background:#fff;
  position:sticky;
  top:0;
  z-index:60;
}

.site-header__logo{
  font-family: var(--font-head);
  font-size:26px;
  font-weight:700;
  letter-spacing:0.02em;
  color:var(--ink);
  white-space:nowrap;
  display:flex;
  align-items:center;
  gap:6px;
}
.site-header__logo .mark{
  color:var(--wine);
  font-size:1em;
}

.main-nav{
  display:flex;
  align-items:center;
  gap:30px;
}
.main-nav > ul{
  display:flex;
  align-items:center;
  gap:30px;
}
.main-nav > ul > li{
  position:relative;
}
.main-nav__link{
  display:flex;
  align-items:center;
  gap:5px;
  font-size:14.5px;
  font-weight:600;
  color:var(--nav-text);
  padding:8px 0;
  white-space:nowrap;
}
.main-nav__link:hover{ color:var(--nav-text-hover); }
.main-nav > ul > li.current .main-nav__link{
  color:var(--ink);
  border-bottom:2px solid var(--ink);
}
.main-nav__link .caret{
  width:9px; height:9px;
  border-right:1.6px solid currentColor;
  border-bottom:1.6px solid currentColor;
  transform:rotate(45deg);
  margin-top:-3px;
}

/* Dropdown (Shop By Category / Info / Our Policy) */
.has-dropdown{ position:relative; }
.dropdown{
  position:absolute;
  top:100%;
  left:0;
  background:#fff;
  border:1px solid var(--border);
  box-shadow:0 12px 30px rgba(0,0,0,0.08);
  min-width:240px;
  padding:10px 0;
  border-radius:6px;
  opacity:0;
  visibility:hidden;
  transform:translateY(6px);
  transition:all .18s ease;
  z-index:70;
}
.has-dropdown:hover .dropdown{
  opacity:1;
  visibility:visible;
  transform:translateY(0);
}
.dropdown li{ position:relative; }
.dropdown a{
  display:block;
  padding:9px 20px;
  font-size:13.5px;
  color:#333;
  white-space:nowrap;
}
.dropdown a:hover{ background:#faf5f2; color:var(--wine); }

/* Nested submenu (Religious & Gift Items -> Silver Frame etc.) */
.dropdown .has-submenu{ display:flex; align-items:center; justify-content:space-between; }
.dropdown .has-submenu .caret{
  width:7px; height:7px;
  border-right:1.4px solid #888;
  border-bottom:1.4px solid #888;
  transform:rotate(-45deg);
  margin-right:18px;
}
.submenu{
  position:absolute;
  top:0;
  left:100%;
  background:#fff;
  border:1px solid var(--border);
  box-shadow:0 12px 30px rgba(0,0,0,0.08);
  min-width:200px;
  padding:10px 0;
  border-radius:6px;
  opacity:0;
  visibility:hidden;
  transform:translateX(6px);
  transition:all .18s ease;
}
.has-submenu-wrap:hover .submenu{
  opacity:1;
  visibility:visible;
  transform:translateX(0);
}

.site-header__search{
  flex:1;
  max-width:340px;
  display:flex;
  align-items:center;
  gap:8px;
  border:1px solid var(--border);
  border-radius:999px;
  padding:9px 18px;
  background:#fafafa;
}
.site-header__search input{
  border:none; background:none; outline:none;
  flex:1; font-size:13.5px; color:#333;
}
.site-header__search svg{ width:16px; height:16px; color:#888; flex-shrink:0; }

.site-header__icons{
  display:flex;
  align-items:center;
  gap:18px;
}
.site-header__icons a{
  display:flex;
  align-items:center;
  justify-content:center;
  color:var(--ink);
  position:relative;
}
.site-header__icons svg{ width:21px; height:21px; }
.site-header__icons .count{
  position:absolute;
  top:-6px; right:-8px;
  background:var(--wine);
  color:#fff;
  font-size:9px;
  font-weight:700;
  width:15px; height:15px;
  border-radius:50%;
  display:flex; align-items:center; justify-content:center;
}

/* Mobile menu toggle - hidden on desktop, shown under 990px */
.mobile-menu-toggle{ display:none; background:none; border:none; cursor:pointer; padding:6px; color:var(--ink); }
.mobile-menu-toggle svg{ width:24px; height:24px; }

/* mobile-only elements are hidden on desktop */
.mobile-search-bar{ display:none; }
.icon-search-mobile{ display:none; }
.drawer-overlay{ display:none; }
.mobile-drawer{ display:none; }

/* ==========================================================================
   MOBILE HEADER (<= 990px) : hamburger | logo | wishlist+cart, search below
   ========================================================================== */
@media (max-width: 990px){
  html, body{ overflow-x:hidden !important; max-width:100%; }
  .main-nav{ display:none; }
  .site-header__search{ display:none; }
  .mobile-menu-toggle{ display:flex; }

  /* three-column layout: hamburger left, logo center, icons right */
  .site-header{
    display:grid;
    grid-template-columns:auto 1fr auto;
    align-items:center;
    gap:8px;
    padding:12px 16px;
  }
  .site-header__logo{
    justify-self:center;
    font-size:20px;
    letter-spacing:0.01em;
  }
  .site-header__logo .mark{ font-size:0.9em; }

  /* on mobile the account icon lives in the drawer, so hide it up top */
  .site-header__icons{ gap:16px; }
  .site-header__icons .icon-account{ display:none; }
  /* wishlist hidden on mobile (kept in desktop only) */
  .site-header__icons a[aria-label="Wishlist"]{ display:none; }
  /* search moves into header as an icon; standalone bar removed */
  .icon-search-mobile{ display:flex; align-items:center; }
  .mobile-search-bar{ display:none !important; }

  /* announcement bar hidden on mobile */
  .announcement-bar{ display:none; }

}

@media (max-width: 380px){
  .site-header__logo{ font-size:17px; }
  .site-header__icons{ gap:12px; }
}

/* ==========================================================================
   MOBILE NAVIGATION DRAWER (slide-in panel with Menu / Categories tabs)
   ========================================================================== */
body.drawer-lock{ overflow:hidden; }

.drawer-overlay{
  position:fixed;
  inset:0;
  background:rgba(0,0,0,0.45);
  z-index:998;
  opacity:0;
  transition:opacity .25s ease;
}
.drawer-overlay.is-visible{ opacity:1; }

.mobile-drawer{
  position:fixed;
  top:0;
  left:0;
  height:100vh;
  height:100dvh;
  width:86%;
  max-width:360px;
  background:#fff;
  z-index:999;
  transform:translateX(-100%);
  transition:transform .28s cubic-bezier(.4,0,.2,1);
  display:flex;
  flex-direction:column;
  box-shadow:2px 0 24px rgba(0,0,0,0.12);
  overflow-y:auto;
  -webkit-overflow-scrolling:touch;
}
@media (max-width: 990px){
  .mobile-drawer{ display:flex; }
}
.mobile-drawer.is-open{ transform:translateX(0); }

/* --- tabs (Menu / Categories) --- */
.drawer-tabs{
  position:sticky;
  top:0;
  z-index:2;
  display:flex;
  align-items:center;
  background:#fff;
  border-bottom:1px solid var(--border);
}
.drawer-tab{
  flex:1;
  background:none;
  border:none;
  cursor:pointer;
  padding:16px 8px;
  font-size:13px;
  font-weight:600;
  letter-spacing:0.08em;
  color:#8a8a8a;
  position:relative;
}
.drawer-tab.is-active{ color:var(--wine); }
.drawer-tab.is-active::after{
  content:"";
  position:absolute;
  left:20%;
  right:20%;
  bottom:-1px;
  height:2px;
  background:var(--wine);
}
.drawer-close{
  background:none;
  border:none;
  cursor:pointer;
  padding:12px 16px;
  color:#555;
  display:flex;
  align-items:center;
}
.drawer-close svg{ width:20px; height:20px; }

/* --- panels --- */
.drawer-panel{ display:none; padding:6px 0 24px; }
.drawer-panel.is-active{ display:block; }

/* --- menu lists --- */
.drawer-menu{ margin:0; padding:0; }
.drawer-menu > li{
  border-bottom:1px solid #f1eeeb;
}
.drawer-menu > li > a,
.drawer-menu__parent{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:15px 20px;
  font-size:15px;
  color:var(--ink);
  cursor:pointer;
}
.drawer-menu__parent > a{
  flex:1;
  padding:0;
  color:inherit;
}
.drawer-arrow{
  color:#b0a8a2;
  font-size:22px;
  line-height:1;
  padding-left:12px;
  transition:transform .2s ease;
}
.drawer-menu__parent.is-expanded > .drawer-arrow{ transform:rotate(90deg); }

/* --- badges (NEW / BEST) --- */
.drawer-badge{
  display:inline-block;
  margin-left:8px;
  padding:2px 7px;
  font-size:10px;
  font-weight:700;
  letter-spacing:0.04em;
  border-radius:4px;
  vertical-align:middle;
}
.drawer-badge--new{ background:#e8115b; color:#fff; }
.drawer-badge--best{ background:#b89a63; color:#fff; }

/* --- nested submenu (accordion) --- */
.drawer-submenu{
  max-height:0;
  overflow:hidden;
  transition:max-height .3s ease;
  background:#faf8f6;
}
.drawer-menu__parent.has-child.is-expanded > .drawer-submenu{
  max-height:600px;
}
/* has-child rows: the <a> + arrow sit in a flex row, submenu drops below */
.drawer-menu__parent.has-child{
  display:block;
  padding:0;
  position:relative;
}
.drawer-menu__parent.has-child > a{
  display:inline-flex;
  width:calc(100% - 44px);
  padding:15px 0 15px 20px;
  font-size:15px;
  color:var(--ink);
}
.drawer-menu__parent.has-child > .drawer-arrow{
  position:absolute;
  right:20px;
  top:15px;
}
.drawer-submenu li a{
  display:block;
  padding:12px 20px 12px 34px;
  font-size:14px;
  color:#5a5148;
}

/* categories list: lighter, denser rows */
.drawer-menu--cats > li > a{ padding:14px 20px; }

/* --- guest account card at bottom of Menu tab --- */
.drawer-account{
  display:flex;
  align-items:center;
  gap:12px;
  margin:18px 16px 0;
  padding:14px;
  border:1px solid var(--border);
  border-left:3px solid var(--wine);
  border-radius:8px;
}
.drawer-account__icon svg{ width:22px; height:22px; color:var(--wine); }
.drawer-account__text{ display:flex; flex-direction:column; line-height:1.35; }
.drawer-account__text strong{ font-size:14px; color:var(--ink); }
.drawer-account__text small{ font-size:12px; color:#9a9a9a; }

/* ==========================================================================
   HERO BANNER SLIDER (Swiper-based, fade transition, pill dots)
   ========================================================================== */
.hero-slider-section{
  padding: 24px 0 0;
  background:#fff;
}
.hero-slider-container{
  max-width:1440px;
  margin:0 auto;
  padding:0 20px;
}
.hero-pill-swiper{
  width:100%;
  border-radius:20px;
  overflow:hidden;
  position:relative;
  box-shadow:0 10px 40px rgba(0,0,0,0.05);
  line-height:0;
}
.hero-pill-dots{
  position:relative !important;
  margin-top:24px;
  display:flex;
  justify-content:center;
  align-items:center;
  gap:12px;
}
.hero-pill-dots .swiper-pagination-bullet{
  width:10px !important;
  height:10px !important;
  background-color:#000000 !important;
  opacity:0.4;
  margin:0 !important;
  border-radius:50px !important;
  transition:all .5s ease;
}
.hero-pill-dots .swiper-pagination-bullet-active{
  width:35px !important;
  opacity:1 !important;
  background-color: var(--wine) !important;
}
@media screen and (max-width:767px){
  .hero-slider-container{ padding:0 15px; }
  .hero-pill-swiper{ border-radius:13.333px; }
}

/* ==========================================================================
   CATEGORY SCROLL ROW (simple, no external library)
   ========================================================================== */
.cat-scroll-section{
  padding: 28px 0;
  background:#fff;
}
.cat-scroll-wrap{
  max-width:1440px;
  margin:0 auto;
  padding:0 60px;
  position:relative;
}
.cat-scroll-track{
  display:flex;
  gap:22px;
  overflow-x:auto;
  scroll-behavior:smooth;
  scrollbar-width:none;
  padding:4px 2px;
}
.cat-scroll-track::-webkit-scrollbar{ display:none; }
.cat-scroll-item{
  flex:0 0 auto;
  width:96px;
  text-align:center;
  color:#333;
}
.cat-scroll-circle{
  display:block;
  width:80px;
  height:80px;
  border-radius:50%;
  margin:0 auto 8px;
  background: linear-gradient(160deg,#f1e6da,#e2d2bd);
  border:1px solid rgba(85,20,42,0.12);
}
.cat-scroll-label{
  font-size:12.5px;
  font-weight:600;
  color:#333;
}
.cat-scroll-btn{
  position:absolute;
  top:44px;
  width:36px;
  height:36px;
  border-radius:50%;
  background:#fff;
  border:1px solid #e2d8cf;
  box-shadow:0 2px 6px rgba(0,0,0,0.08);
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  font-size:14px;
  color:#55142A;
  z-index:5;
}
.cat-scroll-btn--prev{ left:10px; }
.cat-scroll-btn--next{ right:10px; }
@media (max-width:767px){
  .cat-scroll-wrap{ padding:0 15px; }
  .cat-scroll-btn{ display:none; }
}

/* ==========================================================================
   COLLECTION SCROLL SECTION (desktop: 1 row + arrows / mobile: 2 rows)
   ========================================================================== */
.collection-scroll-section{
  padding: 36px 0 44px;
  background:#fff;
}
.collection-scroll-title{
  font-family: var(--font-head);
  font-style: italic;
  font-weight: 500;
  font-size: 28px;
  text-align: center;
  color: var(--wine);
  margin: 0 0 26px;
}
.collection-scroll-wrap{
  position: relative;
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 20px;
}

/* shared item styling (used by both desktop row and mobile rows) */
.cs-item{
  flex:0 0 auto;
  text-decoration:none;
  color:#333;
  text-align:center;
}
.cs-thumb{
  display:block;
  border-radius:12px;
  background: linear-gradient(160deg,#f3e4da,#e8cfc0);
  background-size:cover;
  background-position:center;
  margin-bottom:8px;
}
.cs-label{
  font-family: var(--font-head);
  font-style: italic;
  font-size:14px;
  color:#444;
}

/* Desktop row */
.cs-desktop-row{
  display:flex;
  gap:16px;
  overflow-x:auto;
  scroll-behavior:smooth;
  padding: 6px 54px;
  scrollbar-width:none;
}
.cs-desktop-row::-webkit-scrollbar{ display:none; }
.cs-desktop-row .cs-item{ width:150px; }
.cs-desktop-row .cs-thumb{ width:150px; height:150px; }

.cs-arrow{
  position:absolute;
  top:78px;
  width:36px; height:36px;
  border-radius:50%;
  background:#fff;
  border:1px solid #e2d8cf;
  box-shadow:0 2px 6px rgba(0,0,0,.1);
  display:flex; align-items:center; justify-content:center;
  cursor:pointer;
  color: var(--wine);
  z-index:5;
  font-size:13px;
}
.cs-arrow--prev{ left:8px; }
.cs-arrow--next{ right:8px; }

/* Mobile: hidden by default, shown under 768px; desktop row hidden there */
.cs-mobile-rows{ display:none; }

@media (max-width: 767px){
  .cs-desktop-row, .cs-arrow{ display:none !important; }
  .cs-mobile-rows{ display:block; }

  .collection-scroll-wrap{ padding:0 10px; }

  .cs-mobile-row{
    display:flex;
    gap:10px;
    overflow-x:auto;
    scroll-behavior:smooth;
    padding: 4px 8px;
    scrollbar-width:none;
    margin-bottom:12px;
  }
  .cs-mobile-row::-webkit-scrollbar{ display:none; }
  .cs-mobile-row .cs-item{ width:100px; }
  .cs-mobile-row .cs-thumb{ width:100px; height:100px; border-radius:10px; margin-bottom:6px; }
  .cs-mobile-row .cs-label{ font-size:12px; }
}

/* ==========================================================================
   PRODUCT SCROLL SECTION (real WooCommerce products - e.g. Rakhis)
   ========================================================================== */
.prod-scroll-section{
  padding: 40px 0 30px;
  background:#fff;
}
.prod-scroll-title{
  font-family: var(--font-head);
  font-style: italic;
  font-weight: 500;
  font-size: 28px;
  text-align: center;
  color: var(--wine);
  margin: 0 0 26px;
}
.prod-scroll-wrap{
  position: relative;
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 20px;
}
.prod-scroll-row{
  display:flex;
  gap:18px;
  overflow-x:auto;
  scroll-behavior:smooth;
  padding: 6px 54px;
  scrollbar-width:none;
}
.prod-scroll-row::-webkit-scrollbar{ display:none; }

.prod-card{
  flex:0 0 auto;
  width:220px;
  text-decoration:none;
  color:#333;
  display:block;
}
.prod-card__media{
  position:relative;
  width:220px;
  height:220px;
  border-radius:12px;
  overflow:hidden;
  background:#f4ece4;
  margin-bottom:10px;
}
.prod-card__media img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.prod-card__badge{
  position:absolute;
  top:10px;
  left:10px;
  background: var(--wine);
  color:#fff;
  font-size:11px;
  font-weight:700;
  padding:4px 10px;
  border-radius:4px;
  z-index:2;
}
.prod-card__wishlist{
  position:absolute;
  top:8px;
  right:8px;
  width:30px;
  height:30px;
  border-radius:50%;
  background:rgba(255,255,255,0.85);
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:15px;
  color:#c96a86;
  z-index:2;
}
.prod-card__title{
  font-size:13.5px;
  color:#333;
  margin:0 0 6px;
  line-height:1.3;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.prod-card__price{ margin:0; }
.prod-card__price .now{
  font-weight:700;
  font-size:15px;
  color: var(--wine);
}
.prod-card__price .was{
  font-size:12.5px;
  color:#999;
  text-decoration:line-through;
  margin-left:6px;
}

.prod-scroll-btn{
  position:absolute;
  top:96px;
  width:36px; height:36px;
  border-radius:50%;
  background:#fff;
  border:1px solid #e2d8cf;
  box-shadow:0 2px 6px rgba(0,0,0,.1);
  display:flex; align-items:center; justify-content:center;
  cursor:pointer;
  color: var(--wine);
  z-index:5;
  font-size:13px;
}
.prod-scroll-btn--prev{ left:8px; }
.prod-scroll-btn--next{ right:8px; }

.prod-scroll-viewall{
  text-align:center;
  margin-top:20px;
}
.prod-scroll-viewall-btn{
  display:inline-block;
  padding:12px 34px;
  border-radius:999px;
  background: var(--wine);
  color:#fff;
  text-decoration:none;
  font-size:14px;
  font-weight:600;
}

@media (max-width:767px){
  .prod-scroll-wrap{ padding:0 12px; }
  .prod-scroll-btn{ display:none; }

  /* Switch from horizontal scroll to a 2-column grid on mobile */
  .prod-scroll-row{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:16px 12px;
    overflow:visible;
    padding:6px 0;
  }
  /* Show only the first 6 products per section on mobile */
  .prod-scroll-row .prod-card:nth-child(n+7){ display:none; }

  .prod-card{ width:100%; }
  .prod-card__media{ width:100%; height:auto; aspect-ratio:1/1; }
  .prod-card__title{ font-size:13px; }
  .prod-card__price .now{ font-size:15px; }
  .prod-card__price .was{ font-size:12px; }

  /* View all closer to the grid */
  .prod-scroll-viewall{ margin-top:14px; }
}

/* ==========================================================================
   SHOP BY PRICE (3 banner cards with floating badges)
   ========================================================================== */
.price-cards-section{
  padding: 40px 0;
  background:#fff;
}
.price-cards-header{
  text-align:center;
  margin-bottom:26px;
}
.price-cards-eyebrow{
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:2px;
  color:#b39359;
  display:block;
  margin-bottom:8px;
  font-weight:700;
}
.price-cards-title{
  font-family: var(--font-head);
  font-style: italic;
  font-weight: 500;
  font-size: 30px;
  color: var(--wine);
  margin:0;
}
.price-cards-grid{
  max-width:1000px;
  margin:0 auto;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:20px;
  padding:0 20px;
}
.price-card{
  position:relative;
  aspect-ratio:1/1;
  border-radius:12px;
  overflow:visible;
  text-decoration:none;
  display:block;
  box-shadow:0 10px 25px rgba(0,0,0,0.08);
  transition:transform .4s cubic-bezier(.165,.84,.44,1);
}
.price-card:hover{ transform:translateY(-5px); }
.price-card__img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  border-radius:12px;
  z-index:1;
}
.price-card__img--placeholder{
  background: linear-gradient(160deg, #6d1b38, #55142A 60%, #3e0f1e);
}
.price-card__overlay{
  position:absolute;
  inset:0;
  background:linear-gradient(to top, rgba(0,0,0,0.5) 0%, transparent 50%);
  border-radius:12px;
  z-index:2;
}
.price-card__badge{
  position:absolute;
  top:-10px;
  right:-6px;
  background:rgba(255,255,255,0.2);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  border:0.5px solid rgba(255,255,255,0.4);
  padding:5px 12px;
  border-radius:7px;
  z-index:3;
  box-shadow:0 4px 12px rgba(0,0,0,0.15);
  font-size:10px;
  font-weight:700;
  color:#fff;
  text-transform:uppercase;
  letter-spacing:1px;
}
.price-card__content{
  position:absolute;
  bottom:15px;
  left:0;
  right:0;
  text-align:center;
  z-index:3;
}
.price-card__label{
  font-family: var(--font-head);
  font-style: italic;
  font-weight:600;
  font-size:20px;
  color:#fff;
  text-shadow:0 2px 6px rgba(0,0,0,0.5);
}

@media (max-width:767px){
  .price-cards-grid{ gap:10px; padding:0 15px; }
  .price-card__label{ font-size:15px; }
  .price-card__badge{ font-size:8px; padding:3px 8px; }
}

/* ==========================================================================
   SITE FOOTER (3 columns + social icons)
   ========================================================================== */
.site-footer{
  background:#fff;
  border-top:1px solid var(--border);
  padding:48px 32px 0;
}
.site-footer__inner{
  max-width:1300px;
  margin:0 auto;
  display:grid;
  grid-template-columns:1fr 1fr 1.3fr;
  gap:40px;
}
.site-footer__col h4{
  font-family: var(--font-head);
  font-size:18px;
  color: var(--wine);
  margin:0 0 20px;
}
.site-footer__contact-heading{
  text-decoration:underline;
}
.site-footer__col ul{
  list-style:none;
  margin:0;
  padding:0;
}
.site-footer__col ul li{
  margin-bottom:14px;
}
.site-footer__col ul li a{
  color:#8a5a5a;
  text-decoration:none;
  font-size:15px;
}
.site-footer__col ul li a:hover{
  color: var(--wine);
}
.site-footer__col--contact p{
  color:#8a5a5a;
  font-size:15px;
  line-height:1.7;
  margin:0 0 16px;
}
.site-footer__brand-name{ margin-bottom:4px !important; }
.site-footer__link{
  color:#333 !important;
  text-decoration:underline !important;
}
.site-footer__gst,
.site-footer__legal{
  font-size:14px !important;
}

.site-footer__social{
  display:flex;
  justify-content:center;
  gap:14px;
  padding:10px 0 20px;
}
.site-footer__social a{
  width:42px;
  height:42px;
  border-radius:8px;
  border:1.5px solid var(--wine);
  color: var(--wine);
  display:flex;
  align-items:center;
  justify-content:center;
}
.site-footer__social a svg{
  width:19px;
  height:19px;
}

.site-footer__bottom{
  text-align:center;
  font-size:13px;
  color:#999;
  padding:0 0 20px;
}

@media (max-width:900px){
  .site-footer__inner{
    grid-template-columns:1fr;
    gap:32px;
  }
}

/* ==========================================================================
   SEO INTERNAL LINKS BLOCK (keyword links grouped by heading)
   ========================================================================== */
.seo-links-section{
  background:#fff;
  padding:40px 0 20px;
  border-top:1px solid var(--border);
}
.seo-links-wrap{
  max-width:1300px;
  margin:0 auto;
  padding:0 32px;
}
.seo-links-group{
  margin-bottom:26px;
}
.seo-links-group h4{
  font-size:16px;
  font-weight:700;
  color:#1a1a1a;
  margin:0 0 8px;
}
.seo-links-group p{
  margin:0;
  font-size:14px;
  line-height:1.9;
  color:#555;
}
.seo-links-group p a{
  color:#555;
  text-decoration:none;
}
.seo-links-group p a:hover{
  color: var(--wine);
  text-decoration:underline;
}

/* ==========================================================================
   PROFESSIONAL POLISH LAYER
   Global refinements: consistent section rhythm, missing hover/interaction
   states, smoother transitions, and small brand-consistency fixes.
   Placed at the end so these rules take priority over earlier ones.
   ========================================================================== */

/* ---- Global feel: smooth scrolling, branded selection, focus states ---- */
html{ scroll-behavior:smooth; }
::selection{ background:var(--wine); color:#fff; }
a, button{ transition: color .2s ease, background-color .2s ease, border-color .2s ease, transform .2s ease, box-shadow .2s ease; }
a:focus-visible, button:focus-visible, input:focus-visible{
  outline:2px solid var(--wine);
  outline-offset:2px;
}
button{ cursor:pointer; font-family:inherit; }

/* ---- Consistent section rhythm: same padding scale + subtle dividers ---- */
.cat-scroll-section,
.collection-scroll-section,
.prod-scroll-section,
.price-cards-section{
  padding: 52px 0;
}
@media (max-width:767px){
  .cat-scroll-section,
  .collection-scroll-section,
  .prod-scroll-section,
  .price-cards-section{
    padding: 32px 0;
  }
}

/* ---- Section titles: consistent weight/spacing across all sections ---- */
.collection-scroll-title,
.prod-scroll-title,
.price-cards-title{
  letter-spacing:0.01em;
}
@media (max-width:767px){
  .collection-scroll-title,
  .prod-scroll-title,
  .price-cards-title{
    font-size:22px;
    margin-bottom:18px;
  }
}

/* ---- Header: sticky depth + icon hover states (previously missing) ---- */
.site-header{
  box-shadow: 0 2px 10px rgba(0,0,0,0.03);
}
.site-header__icons a{
  width:38px; height:38px;
  border-radius:50%;
}
.site-header__icons a:hover{
  background: var(--card, #f6efe8);
  color: var(--wine);
}
.mobile-menu-toggle:hover{ opacity:0.65; }
.site-header__search{
  transition: border-color .2s ease, box-shadow .2s ease;
}
.site-header__search:focus-within{
  border-color: var(--wine);
  box-shadow: 0 0 0 3px rgba(85,20,42,0.08);
}
.announcement-bar__social a{ transition: opacity .2s ease, transform .2s ease; }
.announcement-bar__social a:hover{ opacity:1; transform:translateY(-1px); }

/* ---- Circular nav-arrow buttons: unified hover treatment everywhere ---- */
.cat-scroll-btn,
.cs-arrow,
.prod-scroll-btn{
  transition: background-color .2s ease, color .2s ease, box-shadow .2s ease, transform .2s ease;
}
.cat-scroll-btn:hover,
.cs-arrow:hover,
.prod-scroll-btn:hover{
  background: var(--wine);
  color:#fff;
  border-color: var(--wine);
  box-shadow:0 6px 16px rgba(85,20,42,0.25);
  transform: translateY(-1px);
}

/* ---- Category rail + collection scroll items: hover lift ---- */
.cat-scroll-item,
.cs-item{
  transition: transform .2s ease;
}
.cat-scroll-circle,
.cs-thumb{
  transition: box-shadow .25s ease, border-color .25s ease;
}
.cat-scroll-item:hover,
.cs-item:hover{
  transform: translateY(-3px);
}
.cat-scroll-item:hover .cat-scroll-circle,
.cs-item:hover .cs-thumb{
  box-shadow: 0 10px 20px rgba(85,20,42,0.12);
  border-color: var(--wine);
}
.cat-scroll-item:hover .cat-scroll-label,
.cs-item:hover .cs-label{
  color: var(--wine);
}

/* ---- Product cards: hover lift + image zoom (previously had no hover at all) ---- */
.prod-card__media{
  transition: box-shadow .3s ease;
}
.prod-card__media img{
  transition: transform .4s ease;
}
.prod-card:hover .prod-card__media{
  box-shadow: 0 14px 28px rgba(0,0,0,0.14);
}
.prod-card:hover .prod-card__media img{
  transform: scale(1.06);
}
.prod-card:hover .prod-card__title{
  color: var(--wine);
}
.prod-card__wishlist{
  transition: background-color .2s ease, color .2s ease, transform .2s ease;
}
.prod-card__wishlist:hover{
  background: var(--wine);
  color:#fff;
  transform: scale(1.1);
}

/* ---- Pill buttons ("View all", newsletter etc.): clear hover + active feedback ---- */
.prod-scroll-viewall-btn{
  transition: background-color .2s ease, transform .2s ease, box-shadow .2s ease;
  box-shadow: 0 4px 14px rgba(85,20,42,0.18);
}
.prod-scroll-viewall-btn:hover{
  background: var(--wine-dark);
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(85,20,42,0.28);
}
.prod-scroll-viewall-btn:active{
  transform: translateY(0);
  box-shadow: 0 3px 10px rgba(85,20,42,0.2);
}

/* ---- Shop by Price cards: slightly richer hover feedback ---- */
.price-card{
  transition: transform .35s cubic-bezier(.165,.84,.44,1), box-shadow .35s ease;
}
.price-card:hover{
  box-shadow: 0 18px 34px rgba(0,0,0,0.14);
}

/* ---- Footer: link + social icon hover polish ---- */
.site-footer__col ul li a{
  transition: color .2s ease, padding-left .2s ease;
}
.site-footer__col ul li a:hover{
  padding-left:3px;
}
.site-footer__social a{
  transition: background-color .2s ease, color .2s ease, transform .2s ease;
}
.site-footer__social a:hover{
  background: var(--wine);
  color:#fff;
  transform: translateY(-2px);
}

/* ---- Dropdown menu items: slightly nicer hover feedback ---- */
.dropdown a{ transition: background-color .15s ease, color .15s ease, padding-left .15s ease; }
.dropdown a:hover{ padding-left:24px; }

/* ---- Main nav links: subtle underline-grow on hover for a premium feel ---- */
.main-nav__link{ position:relative; }
.main-nav__link::after{
  content:'';
  position:absolute;
  left:0; bottom:2px;
  width:0; height:1.5px;
  background: var(--wine);
  transition: width .25s ease;
}
.main-nav__link:hover::after{ width:100%; }
.main-nav > ul > li.current .main-nav__link::after{ display:none; }

/* ==========================================================================
   SHOP GRID PAGE (main Shop page + every category page - same template)
   ========================================================================== */
.shop-grid-section{
  padding: 16px 0 60px;
}
.shop-grid-wrap{
  max-width:1440px;
  margin:0 auto;
  padding:0 32px;
}
.shop-grid-title{
  font-family: var(--font-head);
  font-size:32px;
  font-weight:600;
  color:#1a1a1a;
  text-align:center;
  margin:0 0 30px;
}

.shop-grid-toolbar{
  display:flex;
  align-items:stretch;
  gap:12px;
  margin-bottom:16px;
}
/* Filter + Sort: identical pill buttons, each takes half the row */
.shop-tool-btn{
  flex:1 1 0;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  height:46px;
  padding:0 22px;
  border:1.5px solid var(--border);
  border-radius:999px;
  background:#fff;
  font-size:13px;
  font-weight:700;
  letter-spacing:0.04em;
  text-transform:uppercase;
  color:var(--ink);
  box-sizing:border-box;
  line-height:1;
}
.shop-tool-btn:hover{
  background:var(--ink);
  color:#fff;
  border-color:var(--ink);
}
.shop-tool-btn svg{ width:16px; height:16px; }

/* ---- Sort bottom sheet ---- */
.ananta-sort-overlay{
  position:fixed;
  inset:0;
  background:rgba(0,0,0,0.45);
  z-index:1000;
  opacity:0;
  transition:opacity .25s ease;
}
.ananta-sort-overlay.is-visible{ opacity:1; }
.ananta-sort-sheet{
  position:fixed;
  left:0;
  right:0;
  bottom:0;
  z-index:1001;
  background:#fff;
  border-radius:20px 20px 0 0;
  transform:translateY(100%);
  transition:transform .28s cubic-bezier(.4,0,.2,1);
  max-height:80vh;
  overflow-y:auto;
  box-shadow:0 -6px 24px rgba(0,0,0,0.12);
}
.ananta-sort-sheet.is-open{ transform:translateY(0); }
.ananta-sort-sheet__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:18px 20px;
  font-size:17px;
  font-weight:700;
  border-bottom:1px solid var(--border);
  position:sticky;
  top:0;
  background:#fff;
}
.ananta-sort-close{
  background:none;
  border:none;
  cursor:pointer;
  color:#666;
  padding:4px;
}
.ananta-sort-close svg{ width:20px; height:20px; }
.ananta-sort-list{ margin:0; padding:0; list-style:none; }
.ananta-sort-opt{
  display:block;
  padding:16px 20px;
  font-size:15px;
  color:var(--ink);
  border-bottom:1px solid #f1eeeb;
}
.ananta-sort-opt.is-active{
  color:var(--wine);
  font-weight:700;
}
.ananta-sort-opt:hover{ background:#faf8f6; }

.shop-filter-panel{
  max-height:0;
  overflow:hidden;
  transition: max-height .3s ease, margin .3s ease;
  margin-bottom:0;
}
.shop-filter-panel.is-open{
  max-height:200px;
  margin-bottom:26px;
}
.shop-filter-panel__label{
  display:block;
  font-size:12.5px;
  font-weight:700;
  color:#777;
  margin-bottom:10px;
  text-transform:uppercase;
  letter-spacing:0.05em;
}
.shop-filter-panel__pills{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.shop-filter-pill{
  padding:8px 16px;
  border-radius:999px;
  background: var(--card, #f6efe8);
  color: var(--nav-text);
  font-size:13px;
  font-weight:600;
}
.shop-filter-pill:hover{
  background: var(--wine);
  color:#fff;
}

.shop-grid{
  display:grid;
  grid-template-columns:repeat(5, 1fr);
  gap:24px;
  margin-bottom:20px;
  padding-top:16px;
  border-top:1px solid var(--border);
}
.shop-grid-card .prod-card__media{
  width:100%;
  aspect-ratio:1/1;
  height:auto;
}
.shop-grid-empty{
  text-align:center;
  color:#888;
  padding:60px 0;
  font-size:15px;
}

.shop-grid-pagination{
  text-align:center;
  margin-top:30px;
}
.shop-grid-pagination .page-numbers{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:38px;
  height:38px;
  margin:0 4px;
  border-radius:50%;
  font-size:14px;
  font-weight:600;
  color:var(--ink);
  border:1px solid var(--border);
}
.shop-grid-pagination .page-numbers.current{
  background: var(--wine);
  color:#fff;
  border-color: var(--wine);
}
.shop-grid-pagination .page-numbers:hover{
  border-color: var(--wine);
  color: var(--wine);
}
.shop-grid-pagination .page-numbers.current:hover{ color:#fff; }

@media (max-width:1200px){
  .shop-grid{ grid-template-columns:repeat(4,1fr); }
}
@media (max-width:900px){
  .shop-grid{ grid-template-columns:repeat(3,1fr); gap:16px; }
  .shop-grid-title{ font-size:24px; }
}
@media (max-width:600px){
  .shop-grid{ grid-template-columns:repeat(2,1fr); gap:12px; }
  .shop-grid-wrap{ padding:0 15px; }
  .shop-grid-toolbar{ display:none; }
}

/* ==========================================================================
   SINGLE PRODUCT PAGE
   WooCommerce renders the actual gallery/variations/add-to-cart/tabs
   markup itself (see single-product.php) - everything below just
   restyles WooCommerce's own class names to match the site's look.
   ========================================================================== */
.single-product-main{
  padding: 6px 0 60px;
}
.single-product-wrap{
  max-width:1300px;
  margin:0 auto;
  padding:0 32px;
}

/* Product page layout uses FLEXBOX, not CSS grid.
   Reason: div.product has many children beyond gallery+summary
   (tabs, upsells, cross-sells, "pair it well", related products,
   sticky bar, etc.) added by WooCommerce/theme hooks. A 2-column
   grid auto-places every extra child into column 1 or 2, leaving
   the other column blank - that was the empty-box bug. Flexbox with
   flex-basis:100% on those extra children avoids that entirely,
   regardless of how many hooks add sections. */
.woocommerce div.product{
  display:flex;
  flex-wrap:wrap;
  gap:32px;
  align-items:flex-start;
}
.woocommerce div.product > .woocommerce-product-gallery,
.woocommerce div.product > .images{
  flex:0 1 44%;
  max-width:460px;
  min-width:0;
  width:auto;
  float:none;
  margin:0;
}
.woocommerce div.product > .summary,
.woocommerce div.product > .entry-summary{
  flex:1 1 56%;
  min-width:320px;
  width:auto;
  float:none;
  margin:0;
}
/* Every other direct child (tabs, related, upsells, cross-sells,
   custom hooked sections) always gets the full row width. */
.woocommerce div.product > *:not(.woocommerce-product-gallery):not(.images):not(.summary):not(.entry-summary){
  flex-basis:100%;
  width:100%;
}

/* ---- Gallery (left column) — clean flexslider-safe layout ---- */
.woocommerce div.product .woocommerce-product-gallery{
  position: sticky;
  top: 20px;
  align-self: start;
  width:100% !important;
  float:none !important;
  margin:0 !important;
  padding:0 !important;
  opacity:1 !important;
}
/* Hide the Sale! badge on the single product page for now */
.woocommerce div.product .onsale,
.single-product span.onsale{
  display:none !important;
}
/* Hide WC's zoom trigger; our main image opens the lightbox on click */
.woocommerce div.product .woocommerce-product-gallery__trigger{ display:none !important; }

/* ---- Custom square gallery ---- */
.ananta-gallery__stage{
  position:relative;
  width:100%;
  max-width:100%;
  aspect-ratio:1 / 1;          /* 1500x1500 square */
  border-radius:16px;
  overflow:hidden;
  background:#f6f2ef;
  margin:0;
}
.ananta-gallery__main{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center;
  display:block;
  cursor:zoom-in;
}
.ananta-gallery__thumbs{
  display:flex;
  gap:10px;
  margin-top:12px;
  overflow-x:auto;
  padding-bottom:4px;
  scrollbar-width:none;
}
.ananta-gallery__thumbs::-webkit-scrollbar{ display:none; }
.ananta-gallery__thumb{
  flex:0 0 auto;
  width:72px;
  height:72px;
  padding:0;
  border:1.5px solid var(--border);
  border-radius:8px;
  overflow:hidden;
  background:none;
  cursor:pointer;
  opacity:0.8;
  transition:border-color .2s ease, opacity .2s ease;
}
.ananta-gallery__thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.ananta-gallery__thumb.is-active,
.ananta-gallery__thumb:hover{
  border-color:var(--wine);
  opacity:1;
}

/* ---- Summary (right column) ---- */
.summary.entry-summary{
  padding-top:4px;
  float:none !important;   /* WooCommerce sets float:right by default */
  width:auto !important;
  margin:0 !important;
}
.woocommerce div.product .product_title,
.product_title{
  font-family: var(--font-head) !important;
  font-size:22px !important;
  font-weight:600 !important;
  color:#1a1a1a !important;
  line-height:1.25;
  margin:0 0 12px;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.woocommerce-product-rating{
  margin-bottom:14px;
}
.star-rating{ color: var(--wine); }

.woocommerce div.product .summary .price,
.summary .price{
  font-size:22px !important;
  font-weight:700 !important;
  color: var(--wine) !important;
  display:block;
  margin-bottom:14px;
}
.woocommerce div.product .summary .price ins,
.summary .price ins{
  text-decoration:none !important;
  color: var(--wine) !important;
}
.woocommerce div.product .summary .price del,
.summary .price del{
  color:#999 !important;
  font-size:17px;
  font-weight:400;
  margin-right:10px;
}
.woocommerce-product-details__short-description{
  color:#555;
  font-size:14.5px;
  line-height:1.7;
  margin-bottom:22px;
}

/* Variations table (Color / Size dropdowns) */
table.variations{
  width:100%;
  margin-bottom:0;
  flex:0 0 auto !important;
  align-self:flex-start !important;
}
.single-product .single_variation_wrap{ margin-top:0 !important; }
.single-product .single_variation_wrap > .woocommerce-variation.single_variation{
  margin:0 !important; padding:0 !important; min-height:0 !important; height:0 !important;
  overflow:hidden !important; font-size:0 !important; line-height:0 !important;
}
.single-product .single_variation_wrap > .woocommerce-variation.single_variation:empty{ display:none !important; }
.single-product .woocommerce-variation-add-to-cart{ margin-top:14px !important; }
.single-product .reset_variations{ display:none !important; }
table.variations td{ padding:8px 0; }
table.variations label{
  font-weight:700;
  font-size:13px;
  text-transform:uppercase;
  letter-spacing:0.04em;
  color:#333;
}
table.variations select{
  width:100%;
  padding:10px 14px;
  border:1.5px solid var(--border);
  border-radius:8px;
  font-size:14px;
  background:#fff;
}
.woocommerce-variation-price .price{
  font-size:20px;
}
.reset_variations{
  font-size:12.5px;
  color: var(--wine);
  margin-left:8px;
}

/* Quantity + Add to cart row */
form.cart{
  display:flex;
  align-items:center;
  gap:14px;
  flex-wrap:wrap;
  margin-bottom:24px;
}
.quantity{ display:inline-block; }
.quantity .qty{
  width:70px;
  padding:13px 12px !important;
  border:1.5px solid var(--border) !important;
  border-radius:999px !important;
  text-align:center;
  font-size:15px;
}
.woocommerce div.product form.cart button.single_add_to_cart_button,
button.single_add_to_cart_button{
  flex:1;
  min-width:200px;
  padding:15px 30px !important;
  border:none !important;
  border-radius:999px !important;
  background: var(--wine) !important;
  color:#fff !important;
  font-size:15px !important;
  font-weight:700 !important;
  letter-spacing:0.02em;
  text-transform:uppercase;
  box-shadow: 0 6px 18px rgba(85,20,42,0.22);
  transition: background-color .2s ease, transform .2s ease, box-shadow .2s ease;
}
.woocommerce div.product form.cart button.single_add_to_cart_button:hover,
button.single_add_to_cart_button:hover{
  background: var(--wine-dark) !important;
  transform: translateY(-2px);
  box-shadow: 0 10px 24px rgba(85,20,42,0.3);
}
.woocommerce div.product form.cart button.single_add_to_cart_button:disabled,
button.single_add_to_cart_button:disabled{
  background:#ccc !important;
  box-shadow:none;
  cursor:not-allowed;
}

/* Default WooCommerce meta (SKU + categories) is hidden;
   we render a category breadcrumb above the gallery instead. */
.product_meta{
  display:none !important;
}

/* Category breadcrumb shown above the product (full width, over gallery) */
.ananta-cat-breadcrumb{
  grid-column: 1 / -1;
  font-size:13px;
  color:#888;
  margin:0 0 14px;
  line-height:1.6;
}
.ananta-cat-breadcrumb a{
  color: var(--wine);
  text-decoration:none;
}
.ananta-cat-breadcrumb a:hover{ text-decoration:underline; }
.ananta-cat-breadcrumb .sep{ margin:0 6px; color:#bbb; }

/* Trust badges row */
.ananta-trust-badges{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  margin:6px 0 22px;
  padding:16px 0;
  border-top:1px solid var(--border);
  border-bottom:1px solid var(--border);
}
.ananta-trust-badge{
  display:flex;
  align-items:center;
  gap:8px;
  font-size:12.5px;
  font-weight:600;
  color:#555;
}
.ananta-trust-badge__icon{
  color: var(--wine);
  font-size:18px;
}

/* ---- Tabs (Description / Shipping & Returns / Store Address / Reviews) ---- */
.woocommerce-tabs{
  grid-column: 1 / -1;
  margin-top:4px;
  padding-top:0;
}
/* Native <details> accordion (starts closed, no JS) */
.ananta-accordion-tabs .ananta-acc-item{
}
.ananta-acc-summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:16px 2px;
  cursor:pointer;
  list-style:none;
  font-family: var(--font-head);
  font-size:17px;
  font-weight:700;
  color:#1a1a1a;
}
.ananta-acc-summary::-webkit-details-marker{ display:none; }
.ananta-acc-arrow{
  font-size:24px;
  line-height:1;
  color:var(--wine);
  transition:transform .2s ease;
}
.ananta-acc-item[open] .ananta-acc-arrow{ transform:rotate(90deg); }
.ananta-acc-content{ padding:4px 2px 20px; }
.ananta-acc-content .woocommerce-Tabs-panel{ margin:0 !important; padding:0 !important; }
.ananta-acc-content > *:first-child{ margin-top:0 !important; }
/* the description body already has its own H2; hide it to avoid duplicate heading */
.ananta-acc-content > .woocommerce-Tabs-panel > h2:first-child,
.ananta-acc-content h2#tab-title-description{ display:none; }
.woocommerce div.product .woocommerce-tabs ul.tabs.wc-tabs li,
ul.tabs.wc-tabs li{
  list-style:none !important;
  border:none !important;
  background:none !important;
  margin:0 !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs.wc-tabs li a,
ul.tabs.wc-tabs li a{
  display:block !important;
  padding:12px 22px !important;
  font-size:13.5px !important;
  font-weight:700 !important;
  text-transform:uppercase;
  letter-spacing:0.03em;
  color:#888 !important;
  border-bottom:2px solid transparent !important;
  background:none !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs.wc-tabs li.active a,
ul.tabs.wc-tabs li.active a{
  color: var(--wine) !important;
  border-bottom-color: var(--wine) !important;
}
.woocommerce-Tabs-panel{
  max-width:800px;
  font-size:14.5px !important;
  color:#555 !important;
  line-height:1.8;
}
/* Collapsible description accordion */
.ananta-desc-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  width:100%;
  max-width:800px;
  padding:16px 0;
  background:none;
  border:none;
  border-bottom:1px solid var(--border);
  cursor:pointer;
  font-family: var(--font-head);
  font-size:17px;
  font-weight:700;
  color:#1a1a1a;
}
.ananta-desc-arrow{
  font-size:24px;
  color:var(--wine);
  line-height:1;
  transition:transform .2s ease;
}
.ananta-desc-header.is-open .ananta-desc-arrow{ transform:rotate(90deg); }
.ananta-desc-panel{ padding-top:16px; }
.woocommerce-Tabs-panel h2{
  font-family: var(--font-head);
  font-size:20px;
  color:#1a1a1a;
  margin:0 0 16px;
}
.ananta-tab-list{
  margin:0;
  padding:0;
  list-style:none;
}
.ananta-tab-list li{
  margin-bottom:10px;
  padding-left:18px;
  position:relative;
}
.ananta-tab-list li::before{
  content:'';
  position:absolute;
  left:0; top:9px;
  width:6px; height:6px;
  border-radius:50%;
  background: var(--wine);
}

/* ---- Related products ---- */
.related.products{
  grid-column: 1 / -1;
  margin-top:8px;
  border-top:1px solid var(--border);
  padding-top:8px;
}
.related.products > h2{
  font-family: var(--font-head);
  font-style: italic;
  font-size:26px;
  color: var(--wine);
  text-align:center;
  margin:0 0 26px;
}
.woocommerce .related.products ul.products,
.related.products ul.products,
.woocommerce .related.products ul.products.columns-1,
.woocommerce .related.products ul.products.columns-2,
.woocommerce .related.products ul.products.columns-3,
.woocommerce .related.products ul.products.columns-4,
.woocommerce .related.products ul.products.columns-5,
.woocommerce .related.products ul.products.columns-6{
  display:grid !important;
  grid-template-columns:repeat(5,1fr) !important;
  gap:18px !important;
  list-style:none !important;
  margin:0 !important;
  padding:0 !important;
}
/* Neutralise WooCommerce's floated-column first/last/nth margins */
.woocommerce .related.products ul.products li.product,
.woocommerce .related.products ul.products li.product.first,
.woocommerce .related.products ul.products li.product.last,
.related.products ul.products li.product{
  text-align:center !important;
  float:none !important;
  clear:none !important;
  width:auto !important;
  max-width:100% !important;
  margin:0 !important;
  padding:0 !important;
}
.related.products ul.products li.product .onsale{
  display:none !important; /* hide WooCommerce's default circular sale badge here - keeps the grid clean */
}
.related.products ul.products li.product a img{
  border-radius:12px !important;
  margin-bottom:10px !important;
  transition: transform .3s ease;
  width:100% !important;
  aspect-ratio:1 / 1 !important;
  object-fit:cover !important;
  height:auto !important;
}
.related.products ul.products li.product a:hover img{
  transform: scale(1.04);
}
.related.products ul.products li.product .woocommerce-loop-product__title{
  font-size:12.5px !important;
  font-weight:500 !important;
  color:#333 !important;
  margin:0 0 4px !important;
  line-height:1.4 !important;
}
.related.products ul.products li.product .price{
  font-size:14px !important;
  font-weight:700 !important;
  color: var(--wine) !important;
}
.related.products ul.products li.product .button{
  display:inline-block !important;
  margin-top:10px !important;
  padding:8px 18px !important;
  border-radius:999px !important;
  background: var(--card, #f6efe8) !important;
  color: var(--nav-text) !important;
  font-size:12px !important;
  font-weight:700 !important;
}
.related.products ul.products li.product .button:hover{
  background: var(--wine) !important;
  color:#fff !important;
}

/* ==========================================================================
   RELATED PRODUCTS - custom card (Khushbu-style: 2nd image on hover + rating)
   ========================================================================== */
.ananta-related{ margin-top:20px; }
.ananta-related > h2{
  font-family: var(--font-head);
  font-style:italic;
  font-size:26px;
  color: var(--wine);
  text-align:center;
  margin:0 0 26px;
}
.ananta-related-grid{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:12px;
  list-style:none;
  margin:0;
  padding:0;
}
/* FIX: some other stylesheet (WooCommerce core / clearfix) injects a
   ::before/::after pseudo-element on this ul. Since the ul is display:grid,
   that pseudo-element becomes a REAL grid item occupying column 1,
   pushing every real product one column to the right and leaving the
   first column blank. Kill it outright. */
.ananta-related-grid::before,
.ananta-related-grid::after{
  content:none !important;
  display:none !important;
}
.ananta-related-card{ margin:0; padding:0; }
.ananta-related-card__link{
  display:block;
  text-decoration:none;
  color:inherit;
}
.ananta-related-card__media{
  position:relative;
  width:100%;
  aspect-ratio:1 / 1;
  border-radius:12px;
  overflow:hidden;
  background:#faf6f4;
}
.ananta-related-card__img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  transition: opacity .4s ease, transform .5s ease;
}
.ananta-related-card__img--secondary{ opacity:0; }
.ananta-related-card:hover .ananta-related-card__img--primary{ opacity:0; }
.ananta-related-card:hover .ananta-related-card__img--secondary{ opacity:1; transform:scale(1.04); }
/* Rating overlay bottom-left, like the reference */
.ananta-related-card__rating{
  position:absolute;
  left:8px;
  bottom:8px;
  display:flex;
  align-items:center;
  gap:4px;
  background:rgba(255,255,255,0.92);
  padding:3px 8px;
  border-radius:999px;
  font-size:11.5px;
  font-weight:600;
  color:#333;
  z-index:2;
}
.ananta-related-card__rating .star{ color:#e6b800; }
.ananta-related-card__rating .sep{ color:#ccc; }
.ananta-related-card__body{ padding:10px 2px 0; text-align:left; }
.ananta-related-card__title{
  font-size:13px;
  font-weight:400;
  color:#333;
  line-height:1.35;
  margin:0 0 5px;
  display:-webkit-box;
  -webkit-line-clamp:1;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.ananta-related-card__price{
  font-size:15px;
  font-weight:700;
  color:#1a1a1a;
}
.ananta-related-card__price del{ color:#999; font-weight:400; font-size:12px; margin-left:6px; }
.ananta-related-card__price ins{ text-decoration:none; color:#1a1a1a; }

/* Tablet: 3 per row */
@media (min-width:601px) and (max-width:1024px){
  .ananta-related-grid{ grid-template-columns:repeat(3,1fr); }
}
/* Mobile: 2 per row */
@media (max-width:600px){
  .ananta-related-grid{ grid-template-columns:repeat(2,1fr); gap:10px; }
  .ananta-related > h2{ font-size:22px; }
  .ananta-related-card__title{ font-size:12px; }
  .ananta-related-card__price{ font-size:14px; }
}

@media (max-width:900px){
  .woocommerce div.product{
    grid-template-columns: 1fr;
    gap:28px;
    max-width:100%;
  }
  .woocommerce div.product > .woocommerce-product-gallery,
  .woocommerce-product-gallery{
    position: static;
    flex:1 1 100% !important;
    width:100% !important;
    max-width:100% !important;
    margin:0 !important;
  }
  .single-product-wrap{
    padding:0 16px;
    max-width:100%;
    overflow-x:hidden;   /* kill horizontal shift/scroll on mobile */
  }
  .single-product-main{ padding-top:0 !important; }
  .single-product-wrap{ padding-top:0 !important; }
  .woocommerce div.product{ margin-top:0 !important; }
  .ananta-gallery__stage{ margin-top:0 !important; }
  /* Nothing inside the product should exceed the viewport */
  .woocommerce div.product .summary,
  .woocommerce div.product .entry-summary,
  .woocommerce div.product *{
    max-width:100%;
    box-sizing:border-box;
  }
  /* Title must wrap normally, never overflow */
  .woocommerce div.product .product_title,
  .product_title{
    word-wrap:break-word;
    overflow-wrap:break-word;
    font-size:17px !important;
    line-height:1.25 !important;
  }
  .woocommerce div.product .summary .price,
  .summary .price{ font-size:20px !important; }
  /* Show the whole product on mobile, no cropping */
  .woocommerce div.product .woocommerce-product-gallery__image > a > img,
  .woocommerce div.product .woocommerce-product-gallery__image img.wp-post-image{
    max-height:none !important;
    object-fit:contain !important;
  }
  /* Trust badges wrap nicely on small screens */
  .ananta-trust-badges{ gap:10px 16px; }
  /* Pincode / any input rows shouldn't force page wider */
  .single-product-main input,
  .single-product-main .quantity input{
    max-width:100%;
  }
  .related.products ul.products{ grid-template-columns:repeat(2,1fr) !important; gap:14px !important; }

  /* ---- Kill all horizontal overflow on mobile ---- */
  .single-product-main,
  .woocommerce div.product,
  .woocommerce div.product .summary,
  .woocommerce div.product .entry-summary{
    max-width:100% !important;
    overflow-x:hidden !important;
  }
  .woocommerce div.product *{ max-width:100%; }

  /* ---- Cart row: qty box (left) + add to cart (fills rest), one line ---- */
  form.cart,
  form.cart *{
    box-sizing:border-box !important;
    max-width:100%;
  }
  form.cart{
    width:100%;
    margin:16px 0 24px !important;
  }
  .single-product .woocommerce-variation-add-to-cart{
    display:flex !important;
    flex-wrap:wrap !important;
    align-items:center;
    gap:10px;
    width:100%;
  }
  /* Quantity stepper on its own row; add-to-cart full width below. */
  .single-product .woocommerce-variation-add-to-cart .quantity{
    display:inline-flex !important;
    flex:0 0 auto !important;
    order:1;
    height:48px;
  }
  .single-product .woocommerce-variation-add-to-cart .single_add_to_cart_button{
    flex:1 1 100% !important;
    width:100% !important;
    min-width:100% !important;
    order:2;
  }
  .single-product form.cart .quantity input.qty{
    width:56px !important;
    height:100% !important;
    padding:0 !important;
    border:none !important;
    border-radius:0 !important;
    text-align:center;
    font-size:16px;
  }
  .single-product .woocommerce-variation-add-to-cart button.single_add_to_cart_button{
    height:52px;
    padding:0 20px !important;
    border-radius:999px !important;
    box-shadow:none !important;
  }
  .ananta-buy-now-btn{
    flex:1 1 0 !important;
    min-width:0 !important;
    height:52px !important;
    padding:0 20px !important;
    white-space:nowrap !important;
    display:flex !important; align-items:center; justify-content:center;
    text-decoration:none;
    border-radius:999px !important;
  }
  /* Trust badges: 2 per row, never overflow */
  .ananta-trust-badges{
    gap:12px 10px;
  }
  .ananta-trust-badge{
    flex:0 0 calc(50% - 6px);
    font-size:12px;
  }
  /* Highlight + delivery boxes never exceed width */
  .ananta-highlight-box,
  .ananta-highlight-boxes,
  .ananta-delivery-check,
  .ananta-delivery-check input{
    max-width:100% !important;
    box-sizing:border-box;
  }

/* Tablet: related products 3 per row */
@media (min-width:601px) and (max-width:1024px){
  .related.products ul.products{ grid-template-columns:repeat(3,1fr) !important; }
}

/* ==========================================================================
   SINGLE PRODUCT PAGE - EXTRA FEATURES
   (variation buttons, gift box, highlight boxes, accordion tabs,
   pair-it-well cross-sells, sticky add-to-cart bar)
   ========================================================================== */

/* ---- Variation swatches (replace default <select> with clickable boxes) ---- */
/* Hide the real Woo <select> but keep it in the DOM so its value still drives
   variation matching / price / variation_id. */
/* Prevent the flash of raw dropdowns on load: keep the variation table
   invisible until the swatch JS marks it ready. */
.single-product form.cart.variations_form:not(.ananta-swatches-ready) table.variations{
  visibility:hidden;
}
select.ananta-select-hidden,
.single-product table.variations select.ananta-select-hidden,
.single-product table.variations select[data-ananta-swatched="1"],
.single-product #ring-size,
.single-product #color,
body .single-product form.cart table.variations td.value select{
  display:none !important;
  position:absolute !important;
  width:1px !important; height:1px !important;
  padding:0 !important; margin:-1px !important;
  overflow:hidden !important; clip:rect(0 0 0 0) !important;
  white-space:nowrap !important; border:0 !important;
  opacity:0 !important; pointer-events:none !important;
}
/* The attribute label ("Ring Size", "Color") sits above the swatch row. */
table.variations th.label,
table.variations td.label{
  display:block;
  font-weight:700;
  font-size:13px;
  text-transform:uppercase;
  letter-spacing:0.04em;
  color:#333;
  text-align:left;
  padding:0 0 10px !important;
}
body .single-product table.variations,
body .single-product table.variations tbody,
body .single-product table.variations tr,
body .single-product table.variations th,
body .single-product table.variations th.label,
body .single-product table.variations td,
body .single-product table.variations td.value{
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  text-align:left !important;
  float:none !important;
}
body .single-product table.variations th.label{ padding:0 0 10px !important; }
table.variations,
table.variations tbody,
table.variations tr,
table.variations td{
  display:block;
  width:100%;
  height:auto !important;
  min-height:0 !important;
  vertical-align:top;
}
table.variations tr{ margin-bottom:16px; }
table.variations tr:last-child{ margin-bottom:0; }

body .single-product .ananta-variation-buttons{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:14px !important;
  margin-bottom:6px;
}
body .single-product .ananta-variation-btn{
  min-width:64px !important;
  height:64px !important;
  padding:0 16px !important;
  border:1px solid var(--border) !important;
  border-radius:8px !important;
  background:#fff !important;
  font-size:16px !important;
  font-weight:500 !important;
  color:#333 !important;
  cursor:pointer;
  line-height:1 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  transition:border-color .15s ease, background .15s ease, color .15s ease;
}
.ananta-variation-btn.is-selected{
  background:#fff;
  border-color: var(--ink);
  border-width:2px;
  color: var(--ink);
}
.ananta-variation-btn:hover{
  border-color: var(--wine);
}

/* ---- Gift box checkbox ---- */
.ananta-giftbox-field{
  margin:4px 0 16px;
  font-size:14px;
}
.ananta-giftbox-field label{
  display:flex;
  align-items:center;
  gap:8px;
  cursor:pointer;
}
.ananta-giftbox-field input{
  width:16px; height:16px;
  accent-color: var(--wine);
}

/* ---- Return / warranty highlight boxes ---- */
.ananta-highlight-boxes{
  display:flex;
  flex-direction:column;
  gap:10px;
  margin:20px 0;
}
.ananta-highlight-box{
  background: linear-gradient(160deg,#fbeef1,#f7e6ea);
  border:1px solid #f0d5da;
  border-radius:10px;
  padding:14px 18px;
  text-align:center;
}
.ananta-highlight-box__title{
  margin:0 0 4px;
  font-weight:700;
  font-size:14.5px;
  color: var(--wine);
}
.ananta-highlight-box__sub{
  margin:0;
  font-size:12.5px;
  color:#886;
  color:#8a7176;
}

/* ---- Delivery estimate placeholder ---- */
.ananta-delivery-check{
  margin:20px 0;
}
.ananta-delivery-check__label{
  font-family: var(--font-head);
  font-size:16px;
  color: var(--wine);
  margin:0 0 10px;
}
.ananta-delivery-check__row{
  display:flex;
  gap:0;
  max-width:100%;
}
.ananta-delivery-check__row input{
  flex:1 1 auto;
  min-width:0;   /* prevents flex item from overflowing its container */
  padding:12px 16px;
  border:1.5px solid var(--border);
  border-radius:999px 0 0 999px;
  border-right:none;
  font-size:14px;
}
.ananta-delivery-check__row button{
  flex:0 0 auto;
  white-space:nowrap;
  padding:12px 26px;
  border:none;
  border-radius:0 999px 999px 0;
  background: var(--wine);
  color:#fff;
  font-weight:700;
  font-size:13.5px;
}
.ananta-delivery-check__row button:hover{ background: var(--wine-dark); }

/* ---- Accordion tabs (overrides the earlier horizontal tab CSS) ---- */
.woocommerce div.product .woocommerce-tabs ul.tabs.wc-tabs,
ul.tabs.wc-tabs{
  display:block !important;
  border-bottom:none !important;
  margin:0 !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs.wc-tabs li,
ul.tabs.wc-tabs li{
  border-bottom:1px solid var(--border) !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs.wc-tabs li a,
ul.tabs.wc-tabs li a{
  display:flex !important;
  align-items:center;
  justify-content:space-between;
  padding:16px 4px !important;
  font-size:13.5px !important;
  border-bottom:none !important;
}
ul.tabs.wc-tabs li a::after{
  content:'\25BE';
  font-size:12px;
  color:#999;
  transition: transform .2s ease;
}
ul.tabs.wc-tabs li.ananta-open a::after{
  transform: rotate(180deg);
}
.woocommerce-Tabs-panel{
  max-width:100% !important;
  padding:4px 4px 20px !important;
}

/* ---- Pair it well cross-sells (vertical list rows, full width) ---- */
.ananta-pair-well{
  grid-column: 1 / -1;
  margin-top:30px;
  padding-top:26px;
  border-top:1px solid var(--border);
  max-width:500px;
}
.ananta-pair-well h3{
  font-family: var(--font-head);
  font-style: italic;
  font-size:20px;
  color: var(--wine);
  margin:0 0 14px;
}
.ananta-pair-well-row{
  display:block;
  border:1px solid var(--border);
  border-radius:10px;
  overflow:hidden;
}
.ananta-pair-item{
  display:flex;
  align-items:center;
  gap:14px;
  width:auto;
  padding:12px 16px;
  text-align:left;
  border-bottom:1px solid var(--border);
  background: linear-gradient(160deg,#fbf3f4,#fdf7f8);
}
.ananta-pair-item:last-child{ border-bottom:none; }
.ananta-pair-item img{
  width:56px;
  height:56px;
  border-radius:8px;
  object-fit:cover;
  flex-shrink:0;
}
.ananta-pair-item__title{
  display:block;
  font-size:13px;
  color:#333;
  margin-bottom:3px;
}
.ananta-pair-item__price{
  display:block;
  font-size:13.5px;
  font-weight:700;
  color: var(--wine);
}

/* ---- Sticky bottom add-to-cart bar ---- */
.ananta-sticky-bar{
  position:fixed;
  left:0; right:0; bottom:0;
  background:#fff;
  border-top:1px solid var(--border);
  box-shadow:0 -6px 20px rgba(0,0,0,0.08);
  padding:12px 24px;
  z-index:500;
  transform: translateY(100%);
  transition: transform .3s ease;
}
.ananta-sticky-bar.is-visible{
  transform: translateY(0);
}
.ananta-sticky-bar__inner{
  max-width:1300px;
  margin:0 auto;
  display:flex;
  align-items:center;
  gap:16px;
}
.ananta-sticky-bar__inner img{
  width:44px; height:44px;
  border-radius:8px;
  object-fit:cover;
}
.ananta-sticky-bar__title{
  flex:1;
  font-size:13.5px;
  font-weight:600;
  color:#333;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.ananta-sticky-bar__price{
  font-weight:700;
  color: var(--wine);
  font-size:15px;
}
.ananta-sticky-bar__btn{
  padding:11px 24px;
  border:none;
  border-radius:999px;
  background: var(--wine);
  color:#fff;
  font-weight:700;
  font-size:13.5px;
  text-transform:uppercase;
}
.ananta-sticky-bar__btn:hover{ background: var(--wine-dark); }

@media (max-width:600px){
  .ananta-sticky-bar__title{ display:none; }
}

} /* close stray unclosed @media(max-width:900px) so cart/drawer/search CSS applies on desktop */

/* ==========================================================================
   925 ANANTA - CART / CHECKOUT + BUY NOW + SLIDE-IN DRAWER  (appended)
   ========================================================================== */

/* ---- shared page shell (cart / checkout / my-account via page.php) ---- */
.ananta-shop-page{ padding:24px 0 60px; }
.ananta-shop-wrap{ max-width:1200px; margin:0 auto; padding:0 20px; }
.ananta-breadcrumb{ font-size:13px; color:#8a7f77; margin-bottom:14px; }
.ananta-breadcrumb a{ color:#8a7f77; text-decoration:none; }
.ananta-breadcrumb a:hover{ color:var(--wine); }
.ananta-breadcrumb .sep{ margin:0 6px; opacity:.6; }
.ananta-page-title{ font-family:var(--font-head); font-size:28px; font-weight:700; color:var(--ink); margin:0 0 24px; letter-spacing:-0.02em; }

.ananta-shop-page table.shop_table{ width:100%; border-collapse:collapse; background:#fff; border:1px solid var(--border); border-radius:10px; overflow:hidden; }
.ananta-shop-page table.shop_table th{ font-family:var(--font-head); font-weight:600; font-size:13px; text-transform:uppercase; letter-spacing:.03em; color:#6b2f22; background:#faf5f2; padding:14px 16px; text-align:left; border:none; }
.ananta-shop-page table.shop_table td{ padding:16px; border-top:1px solid var(--border); vertical-align:middle; }
.ananta-shop-page table.cart img{ width:72px; height:auto; border-radius:8px; }
.ananta-shop-page .product-name a{ color:var(--ink); text-decoration:none; font-weight:600; }
.ananta-shop-page .product-name a:hover{ color:var(--wine); }
.ananta-shop-page .quantity input.qty{ width:64px; padding:8px; text-align:center; border:1px solid var(--border); border-radius:8px; }
.ananta-shop-page td.product-remove a.remove{ color:var(--wine) !important; font-size:20px; line-height:1; width:26px; height:26px; display:inline-flex; align-items:center; justify-content:center; border-radius:50%; background:#faf5f2; }
.ananta-shop-page td.product-remove a.remove:hover{ background:var(--wine); color:#fff !important; }
.ananta-shop-page .actions{ display:flex; flex-wrap:wrap; gap:10px; align-items:center; }
.ananta-shop-page .coupon input#coupon_code{ padding:11px 14px; border:1px solid var(--border); border-radius:8px; min-width:160px; }
.ananta-shop-page .button, .ananta-shop-page button.button, .ananta-shop-page a.button, .ananta-shop-page .checkout-button, .ananta-shop-page #place_order{ background:var(--wine) !important; color:#fff !important; font-family:var(--font-head); font-weight:600; font-size:14px; padding:13px 26px; border:none; border-radius:8px; cursor:pointer; transition:background .2s; text-transform:uppercase; }
.ananta-shop-page .button:hover, .ananta-shop-page button.button:hover, .ananta-shop-page a.button:hover, .ananta-shop-page .checkout-button:hover, .ananta-shop-page #place_order:hover{ background:var(--wine-dark) !important; }
.ananta-shop-page .button[name="update_cart"]{ background:#faf5f2 !important; color:var(--wine) !important; border:1px solid var(--border); }
.ananta-shop-page .cart-collaterals{ margin-top:34px; display:flex; justify-content:flex-end; }
.ananta-shop-page .cart_totals{ width:100%; max-width:420px; background:#fff; border:1px solid var(--border); border-radius:10px; padding:24px; }
.ananta-shop-page .cart_totals h2{ font-family:var(--font-head); font-size:18px; margin:0 0 16px; }
.ananta-shop-page .cart_totals table{ width:100%; border:none; }
.ananta-shop-page .cart_totals th, .ananta-shop-page .cart_totals td{ padding:12px 0; border-top:1px solid var(--border); }
.ananta-shop-page .cart_totals .order-total .amount{ font-size:18px; color:var(--wine); }
.ananta-shop-page .wc-proceed-to-checkout .checkout-button{ display:block; width:100%; text-align:center; margin-top:16px; }
.ananta-checkout-content h3{ font-family:var(--font-head); font-size:18px; color:var(--ink); margin:0 0 16px; padding-bottom:10px; border-bottom:1px solid var(--border); }
.ananta-checkout-page label{ display:block; font-size:13px; font-weight:600; color:#6b2f22; margin-bottom:6px; }
.ananta-checkout-page input.input-text, .ananta-checkout-page textarea, .ananta-checkout-page select{ width:100%; padding:12px 14px; border:1px solid var(--border); border-radius:8px; font-size:14px; background:#fff; }
.ananta-checkout-page input.input-text:focus, .ananta-checkout-page textarea:focus, .ananta-checkout-page select:focus{ outline:none; border-color:var(--wine); box-shadow:0 0 0 3px rgba(85,20,42,.08); }
.ananta-checkout-page #order_review{ background:#fff; border:1px solid var(--border); border-radius:10px; padding:24px; }
.ananta-checkout-page .woocommerce-checkout-payment{ background:#faf5f2; border-radius:10px; padding:18px; margin-top:16px; }
.ananta-checkout-page #place_order{ width:100%; margin-top:14px; }
.ananta-shop-page .woocommerce-message, .ananta-shop-page .woocommerce-info, .ananta-shop-page .woocommerce-error{ border-left:4px solid var(--wine); background:#faf5f2; padding:14px 18px; border-radius:6px; list-style:none; margin-bottom:20px; }
@media (min-width:900px){
  .ananta-checkout-page form.checkout{ display:grid; grid-template-columns:1.2fr .8fr; gap:36px; align-items:start; }
  .ananta-checkout-page form.checkout #order_review_heading, .ananta-checkout-page form.checkout #order_review{ grid-column:2; }
}

/* ---- BUY IT NOW button (single product) ---- */
.single-product .ananta-buy-now-btn{
  background:var(--ink) !important; color:#fff !important;
  font-family:var(--font-head); font-weight:700; font-size:15px;
  letter-spacing:.02em; border:none; border-radius:999px;
  cursor:pointer; transition:background .2s; text-align:center;
  display:flex !important; align-items:center; justify-content:center;
  text-decoration:none; line-height:1;
}
.single-product .ananta-buy-now-btn:hover{ background:#000 !important; }

/* Layout: quantity stepper on its own row, then Add-to-Cart + Buy-Now side by
   side on the next row. Attributes (swatches) already sit above via Woo. */
.single-product .woocommerce-variation-add-to-cart{
  display:flex !important; flex-wrap:wrap !important;
  align-items:center; gap:10px !important; margin-top:0 !important;
}
.single-product .woocommerce-variation-add-to-cart .quantity{ flex:0 0 auto !important; order:1; }
.single-product .woocommerce-variation-add-to-cart .single_add_to_cart_button{ flex:1 1 100% !important; width:100% !important; min-width:100% !important; order:2; }
/* Quantity stepper (- 1 +) */
.single-product form.cart .quantity{
  display:inline-flex !important;
  align-items:center;
  border:1.5px solid var(--border);
  border-radius:8px;
  overflow:hidden;
  height:48px;
}
.single-product form.cart .quantity input.qty{
  width:56px !important; height:100% !important;
  border:none !important; border-radius:0 !important;
  text-align:center; font-size:16px;
  padding:0 !important;
  -moz-appearance:textfield;
}
.single-product form.cart .quantity input.qty::-webkit-outer-spin-button,
.single-product form.cart .quantity input.qty::-webkit-inner-spin-button{
  -webkit-appearance:none; margin:0;
}
.single-product form.cart .quantity .ananta-qty-btn{
  width:44px; height:100%;
  border:none; background:#fff;
  font-size:20px; line-height:1; color:var(--ink);
  cursor:pointer; padding:0;
  display:flex; align-items:center; justify-content:center;
  transition:background .15s ease;
}
.single-product form.cart .quantity .ananta-qty-btn:hover{ background:#f5f1ee; }
/* Buy-now (if ever re-enabled) full width. */
.single-product .ananta-buy-now-btn{
  flex:1 1 100% !important; min-width:100% !important; width:100% !important;
  height:52px; margin:0 !important;
  display:flex !important; align-items:center; justify-content:center;
}
.single-product .ananta-buy-now-btn{ padding:0 20px; }

/* ---- SLIDE-IN CART DRAWER ---- */
body.ananta-drawer-lock{ overflow:hidden; }
.ananta-cart-overlay{
  position:fixed; inset:0; background:rgba(0,0,0,.45);
  opacity:0; visibility:hidden; transition:opacity .25s; z-index:9998;
}
.ananta-cart-overlay.is-open{ opacity:1; visibility:visible; }
.ananta-cart-drawer{
  position:fixed; top:0; right:0; height:100%; width:400px; max-width:88vw;
  background:#fff; z-index:9999; box-shadow:-6px 0 24px rgba(0,0,0,.12);
  transform:translateX(100%); transition:transform .3s ease;
  display:flex; flex-direction:column;
}
.ananta-cart-drawer.is-open{ transform:translateX(0); }
.ananta-cart-drawer__head{
  display:flex; align-items:center; justify-content:space-between;
  padding:20px 22px; border-bottom:1px solid var(--border);
}
.ananta-cart-drawer__head h2{ font-family:var(--font-head); font-size:20px; margin:0; color:var(--ink); }
.ananta-cart-drawer__close{ background:none; border:none; font-size:28px; line-height:1; color:var(--wine); cursor:pointer; }
.ananta-cart-drawer__body{ flex:1; overflow-y:auto; padding:18px 22px; }

/* mini cart contents */
.ananta-cart-drawer .cart_list{ list-style:none; margin:0; padding:0; }
.ananta-cart-drawer .cart_list li{ display:flex; gap:12px; padding:14px 0; border-bottom:1px solid var(--border); position:relative; }
.ananta-cart-drawer .cart_list li img{ width:64px !important; height:auto; border-radius:8px; float:none !important; margin:0 !important; }
.ananta-cart-drawer .cart_list li a{ color:var(--ink); text-decoration:none; font-weight:600; font-size:14px; }
.ananta-cart-drawer .cart_list .quantity{ display:block; color:#8a7f77; font-size:13px; margin-top:4px; }
.ananta-cart-drawer .cart_list a.remove{ position:absolute; top:14px; right:0; color:var(--wine) !important; font-size:18px; }
.ananta-cart-drawer .woocommerce-mini-cart__total{ display:flex; justify-content:space-between; align-items:center; padding:16px 0; font-family:var(--font-head); font-size:16px; border-bottom:1px solid var(--border); margin-bottom:16px; }
.ananta-cart-drawer .woocommerce-mini-cart__total .amount{ color:var(--wine); font-size:18px; }
.ananta-cart-drawer .woocommerce-mini-cart__buttons{ display:flex; flex-direction:column; gap:10px; }
.ananta-cart-drawer .woocommerce-mini-cart__buttons a{
  display:block; text-align:center; padding:14px; border-radius:8px;
  font-family:var(--font-head); font-weight:600; text-transform:uppercase; font-size:14px; text-decoration:none;
}
.ananta-cart-drawer .woocommerce-mini-cart__buttons a.button{ background:#faf5f2; color:var(--wine); border:1px solid var(--border); }
.ananta-cart-drawer .woocommerce-mini-cart__buttons a.checkout{ background:var(--wine); color:#fff; }
.ananta-cart-drawer .woocommerce-mini-cart__empty-message{ text-align:center; color:#8a7f77; padding:40px 0; }

/* ==== CUSTOM CART DRAWER BODY (reference layout) ==== */
.ananta-cart-drawer__body-inner{ flex:1; overflow-y:auto; padding:18px 20px; }
.ananta-cart-drawer.is-loading .ananta-cart-drawer__body-inner{ opacity:.5; pointer-events:none; }
.ananta-drawer-head-row{ display:flex; justify-content:space-between; font-family:var(--font-head); font-size:12px; letter-spacing:.08em; color:#8a7f77; padding-bottom:12px; border-bottom:1px solid var(--border); }
.ananta-drawer-items{ list-style:none; margin:0; padding:0; }
.ananta-drawer-item{ display:flex; gap:14px; padding:18px 0; border-bottom:1px solid var(--border); }
.ananta-drawer-item__img{ flex:0 0 96px; }
.ananta-drawer-item__img img{ width:96px !important; height:96px !important; object-fit:cover; border-radius:12px; display:block; margin:0 !important; }
.ananta-drawer-item__info{ flex:1; min-width:0; display:flex; flex-direction:column; gap:4px; }
.ananta-drawer-item__name{ color:var(--wine); text-decoration:none; font-weight:600; font-size:15px; line-height:1.3; display:-webkit-box; -webkit-line-clamp:1; -webkit-box-orient:vertical; overflow:hidden; }
.ananta-drawer-item__price{ color:#8a7f77; font-size:14px; }
.ananta-drawer-item__controls{ display:flex; align-items:center; gap:16px; margin-top:8px; }
.ananta-qty-stepper{ display:inline-flex; align-items:center; border:1.5px solid var(--border); border-radius:12px; overflow:hidden; }
.ananta-qty-stepper button{ width:38px; height:40px; background:none; border:none; font-size:18px; color:var(--ink); cursor:pointer; line-height:1; }
.ananta-qty-stepper button:hover{ background:#faf5f2; color:var(--wine); }
.ananta-qty-val{ min-width:34px; text-align:center; font-size:15px; }
.ananta-drawer-remove{ background:none; border:none; cursor:pointer; color:var(--wine); padding:6px; }
.ananta-drawer-remove svg{ width:20px; height:20px; }
.ananta-drawer-foot{ padding-top:18px; }
.ananta-drawer-subtotal{ display:flex; justify-content:space-between; align-items:center; font-family:var(--font-head); font-size:16px; margin-bottom:14px; }
.ananta-drawer-subtotal .amt{ color:var(--wine); font-size:20px; font-weight:700; }
.ananta-drawer-checkout{ display:block; text-align:center; background:var(--wine); color:#fff; font-family:var(--font-head); font-weight:600; text-transform:uppercase; letter-spacing:.02em; padding:16px; border-radius:999px; text-decoration:none; }
.ananta-drawer-checkout:hover{ background:var(--wine-dark); }
.ananta-drawer-empty{ text-align:center; color:#8a7f77; padding:40px 0; }
.ananta-drawer-shop{ display:block; text-align:center; color:var(--wine); text-decoration:none; font-weight:600; }

/* ==== SEARCH PANEL ==== */
.ananta-search-overlay{ position:fixed; inset:0; background:rgba(0,0,0,.45); opacity:0; visibility:hidden; transition:opacity .25s; z-index:10000; }
.ananta-search-overlay.is-open{ opacity:1; visibility:visible; }
.ananta-search-panel{ position:fixed; top:0; left:0; right:0; background:#fff; z-index:10001; transform:translateY(-100%); transition:transform .3s ease; max-height:92vh; display:flex; flex-direction:column; border-radius:0 0 18px 18px; box-shadow:0 12px 40px rgba(0,0,0,.15); }
.ananta-search-panel.is-open{ transform:translateY(0); }
.ananta-search-panel__top{ display:flex; align-items:center; gap:12px; padding:18px 20px; border-bottom:1px solid var(--border); }
.ananta-search-close{ background:none; border:none; cursor:pointer; color:var(--ink); padding:4px; flex:0 0 auto; }
.ananta-search-close svg{ width:24px; height:24px; }
.ananta-search-form{ flex:1; margin:0; }
.ananta-search-input{ width:100%; padding:13px 16px; border:1.5px solid var(--border); border-radius:10px; font-family:var(--font-body); font-size:15px; }
.ananta-search-input:focus{ outline:none; border-color:var(--wine); }
.ananta-search-panel__body{ overflow-y:auto; padding:18px 20px 26px; }
.ananta-search-h{ font-family:var(--font-head); font-size:15px; color:var(--ink); margin:18px 0 12px; }
.ananta-search-h:first-child{ margin-top:0; }
.ananta-search-chips{ display:flex; flex-wrap:wrap; gap:10px; }
.ananta-search-chip{ padding:9px 18px; border:1px solid var(--border); border-radius:999px; color:var(--ink); text-decoration:none; font-size:14px; }
.ananta-search-chip:hover{ background:var(--wine); color:#fff; border-color:var(--wine); }
.ananta-search-cards{ display:flex; gap:14px; overflow-x:auto; padding-bottom:6px; -webkit-overflow-scrolling:touch; }
.ananta-search-cards--results{ flex-wrap:wrap; overflow:visible; }
.ananta-search-card{ flex:0 0 150px; text-decoration:none; display:flex; flex-direction:column; gap:6px; }
.ananta-search-cards--results .ananta-search-card{ flex:0 0 calc(50% - 7px); }
.ananta-search-card__img img{ width:100%; height:150px; object-fit:cover; border-radius:12px; display:block; margin:0 !important; }
.ananta-search-card__title{ color:var(--ink); font-size:13px; line-height:1.35; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.ananta-search-card__price{ color:var(--wine); font-weight:700; font-size:14px; }
.ananta-search-card__price del{ color:#aaa; font-weight:400; font-size:12px; }
.ananta-search-empty{ color:#8a7f77; text-align:center; padding:30px 0; }
@media (min-width:768px){
  .ananta-search-panel{ left:50%; right:auto; transform:translate(-50%,-100%); width:640px; border-radius:0 0 18px 18px; }
  .ananta-search-panel.is-open{ transform:translate(-50%,0); }
}

/* Search panel is mobile-only; desktop uses the header search box */
@media (min-width:1025px){
  .ananta-search-panel, .ananta-search-overlay{ display:none !important; }
}

/* Desktop: hide the search + wishlist icons (search box already present) */
@media (min-width:1025px){
  .site-header__icons .icon-search-mobile,
  .site-header__icons a[aria-label="Wishlist"]{ display:none !important; }
}

/* Desktop shop toolbar: Filter left (compact), Sort right (compact) */
@media (min-width:1025px){
  .shop-grid-toolbar{ justify-content:space-between; }
  .shop-grid-toolbar .shop-tool-btn{ flex:0 0 auto; width:auto; padding:0 26px; }
}

/* Desktop: Sort becomes a dropdown under the Sort button (not a full sheet) */
@media (min-width:1025px){
  .shop-grid-wrap{ position:relative; }
  .ananta-sort-overlay{ background:transparent !important; }
  /* closed by default on desktop */
  .ananta-sort-sheet{ display:none !important; }
  .ananta-sort-sheet.is-open{
    display:block !important;
    position:absolute !important; top:62px !important; right:0 !important; left:auto !important; bottom:auto !important;
    width:260px !important; max-width:260px !important; height:auto !important; max-height:none !important;
    border-radius:12px !important; transform:none !important; box-shadow:0 10px 30px rgba(0,0,0,.14) !important;
    border:1px solid var(--border); z-index:60;
  }
  .ananta-sort-sheet__head{ display:none !important; }
  .ananta-sort-list{ padding:8px 0 !important; }
  .ananta-sort-opt{ padding:11px 20px !important; border:none !important; }
  .ananta-sort-opt.is-active{ color:var(--wine) !important; font-weight:700; }
}

/* Desktop: push product title down a bit */
@media (min-width:1025px){
  .woocommerce div.product .summary .product_title,
  .woocommerce div.product .product_title{ margin-top:24px !important; }
}

/* Desktop: pink return/warranty highlight cards (same look as mobile) */
@media (min-width:1025px){
  .ananta-highlight-boxes{ display:flex; flex-direction:column; gap:10px; margin:20px 0; }
  .ananta-highlight-box{
    background:linear-gradient(160deg,#fbeef1,#f7e6ea);
    border:1px solid #f0d5da; border-radius:10px; padding:14px 18px; text-align:center;
  }
  .ananta-highlight-box__title{ margin:0 0 4px; font-weight:700; font-size:14.5px; color:var(--wine); }
  .ananta-highlight-box__sub{ margin:0; font-size:12.5px; color:#8a7176; }
}

/* Desktop: hide sticky add-to-cart bar */
@media (min-width:1025px){
  .ananta-sticky-bar,
  .ananta-sticky-bar__inner{ display:none !important; }
}
@media (min-width:1025px){
  .prod-scroll-section{ transform:translateX(-21px); }
}
@media (min-width:1025px){
  .collection-scroll-section{ transform:translateX(-24px); }
}
/* ==== FOOTER (Mooneye-style 4-col + contact) ==== */
.site-footer__inner--4col{
  display:grid !important; grid-template-columns:1.4fr 1fr 1fr 1.4fr !important; gap:40px;
  max-width:1280px; margin:0 auto; padding:56px 40px 20px;
}
.site-footer__col h4{ font-family:var(--font-head); font-size:16px; color:var(--ink); margin:0 0 18px; }
.site-footer__col ul{ list-style:none; margin:0; padding:0; }
.site-footer__col ul li{ margin-bottom:14px; }
.site-footer__col ul li a{ color:var(--nav-text); text-decoration:none; font-size:15px; }
.site-footer__col ul li a:hover{ color:var(--wine); }
.site-footer__news-text{ color:var(--nav-text); font-size:15px; line-height:1.6; margin:0 0 18px; }
.site-footer__news-input{ width:100%; padding:14px 16px; border:1px solid var(--border); border-radius:6px; font-size:14px; margin-bottom:16px; }
.site-footer__news-btn{ background:var(--ink); color:#fff; border:none; padding:14px 34px; font-family:var(--font-head); font-weight:600; letter-spacing:.06em; text-transform:uppercase; border-radius:4px; cursor:pointer; }
.site-footer__news-btn:hover{ background:#000; }
.site-footer__brand-text{ color:var(--nav-text); font-size:15px; line-height:1.6; margin:0; }
.site-footer__contactinfo{ margin-top:30px; }
.site-footer__contactinfo h4{ font-family:var(--font-head); font-size:16px; color:var(--ink); margin:0 0 14px; }
.site-footer__contactinfo p{ color:var(--nav-text); font-size:15px; margin:0 0 8px; }
.site-footer__contactinfo a{ color:var(--nav-text); }
.site-footer__contactinfo a:hover{ color:var(--wine); }
@media (max-width:900px){
  .site-footer{ padding:40px 10px 0; }
  .site-footer__inner--4col{ grid-template-columns:1fr 1fr !important; gap:16px; padding:24px 4px 16px; overflow-wrap:break-word; }
  .site-footer__inner--4col > .site-footer__col:nth-child(4) > h4:first-child,
  .site-footer__brand-text{ display:none !important; }
  .site-footer__contactinfo{ margin-top:0; }
}

/* ==== SHOPIFY-STYLE 2-COLUMN CHECKOUT ==== */
.ananta-shop-wrap--checkout{ max-width:1200px; }
.ananta-checkout-page .woocommerce{ width:100%; }

@media (min-width:900px){
  .ananta-checkout-page form.checkout{
    display:grid !important;
    grid-template-columns:1.15fr .85fr;
    gap:48px; align-items:start;
  }
  .ananta-checkout-page #customer_details{ grid-column:1; }
  .ananta-checkout-page #order_review_heading,
  .ananta-checkout-page #order_review{ grid-column:2; grid-row:1; }
  /* sticky order summary */
  .ananta-checkout-page #order_review{ position:sticky; top:20px; }
}

/* left column headings */
.ananta-checkout-page #customer_details h3,
.ananta-checkout-page #order_review_heading{
  font-family:var(--font-head); font-size:20px; color:var(--ink);
  margin:0 0 18px; padding:0; border:none;
}
.ananta-checkout-page .col2-set .col-1,
.ananta-checkout-page .col2-set .col-2{ width:100%; float:none; margin-bottom:8px; }

/* form fields */
.ananta-checkout-page .form-row{ margin-bottom:14px; padding:0; }
.ananta-checkout-page label{ display:block; font-size:13px; font-weight:600; color:#555; margin-bottom:6px; }
.ananta-checkout-page input.input-text,
.ananta-checkout-page textarea,
.ananta-checkout-page .select2-container .select2-selection,
.ananta-checkout-page select{
  width:100%; min-height:42px; padding:10px 13px; border:1px solid #ccc;
  border-radius:8px; font-size:14px; background:#fff; box-sizing:border-box;
}
.ananta-checkout-page input.input-text:focus,
.ananta-checkout-page textarea:focus,
.ananta-checkout-page select:focus{ outline:none; border-color:var(--wine); box-shadow:0 0 0 3px rgba(85,20,42,.08); }

/* right order summary card - shopify grey panel */
.ananta-checkout-page #order_review{
  background:#fff !important; border:1px solid #ececec !important;
  border-radius:12px; padding:26px;
}
.ananta-checkout-page #order_review table.shop_table{
  background:transparent; border:none; margin:0;
}
.ananta-checkout-page #order_review table.shop_table th,
.ananta-checkout-page #order_review table.shop_table td{
  border:none; padding:5px 0; background:transparent;
}
.ananta-checkout-page #order_review .cart_item td{ border-bottom:1px solid #e6e6e6; }
.ananta-checkout-page #order_review .order-total th,
.ananta-checkout-page #order_review .order-total td{ font-size:18px; padding-top:16px; }
.ananta-checkout-page #order_review .order-total .amount{ color:var(--wine); font-weight:700; }
.ananta-checkout-page .woocommerce-checkout-payment{
  background:#fff !important; border:1px solid #ececec; border-radius:10px; padding:18px; margin-top:18px;
}
.ananta-checkout-page .woocommerce-checkout-payment ul.payment_methods{ border:none; padding:0; list-style:none; margin:0; }
.ananta-checkout-page .woocommerce-checkout-payment ul.payment_methods li{ padding:10px 0; }
.ananta-checkout-page .woocommerce-checkout-payment ul.payment_methods li input.input-radio{ width:auto !important; margin:0 8px 0 0; vertical-align:middle; display:inline-block; }
.ananta-checkout-page .woocommerce-checkout-payment ul.payment_methods li label{ display:inline-block !important; margin:0 !important; vertical-align:middle; }
.ananta-checkout-page #place_order{
  width:100%; margin-top:16px; background:var(--wine) !important; color:#fff !important;
  border:none; border-radius:8px; padding:16px; font-family:var(--font-head);
  font-weight:700; font-size:16px; cursor:pointer;
}
.ananta-checkout-page #place_order:hover{ background:var(--wine-dark) !important; }

/* Checkout order-summary product thumbnail + qty badge */
.ananta-corev-item{ display:flex; align-items:center; gap:14px; }
.ananta-corev-thumb{ position:relative; flex:0 0 auto; }
.ananta-corev-thumb img{ width:60px !important; height:60px !important; object-fit:cover; border-radius:10px; border:1px solid #e6e6e6; margin:0 !important; display:block; }
.ananta-corev-qty{
  position:absolute; top:-8px; right:-8px; min-width:20px; height:20px;
  background:#333; color:#fff; border-radius:50%; font-size:11px; font-weight:700;
  display:flex; align-items:center; justify-content:center; padding:0 5px;
}
.ananta-corev-name{ font-size:14px; line-height:1.35; color:var(--ink); }
.ananta-checkout-page #order_review .cart_item td.product-name{ padding-right:12px; }

/* Checkout: compact headings, labels, spacing */
.ananta-checkout-page #customer_details h3,
.ananta-checkout-page #order_review_heading{ font-size:18px !important; margin-bottom:14px !important; }
.ananta-checkout-page label{ font-size:12.5px !important; margin-bottom:4px !important; }
.ananta-checkout-page .form-row{ margin-bottom:12px !important; }
.ananta-checkout-page #order_review{ padding:20px !important; }
.ananta-checkout-page #order_review table.shop_table th{ font-size:12px; }

/* Mobile checkout: reduce side padding */
@media (max-width:900px){
  .ananta-checkout-page .ananta-shop-wrap--checkout{ padding-left:1px; padding-right:5px; }
  .ananta-checkout-page #order_review{ padding:0 !important; width:100%; max-width:100%; box-sizing:border-box; }
}

/* Checkout page: hide footer columns + social, keep only copyright */
body.woocommerce-checkout .site-footer__inner,
body.woocommerce-checkout .site-footer__social,
body.woocommerce-checkout .seo-links-section,
body.woocommerce-checkout-page .site-footer__inner,
body.woocommerce-checkout-page .site-footer__social,
body.woocommerce-checkout-page .seo-links-section{ display:none !important; }
body.woocommerce-checkout .site-footer,
body.woocommerce-checkout-page .site-footer{ padding-top:0 !important; }

/* ---- cart/checkout item variation lines (Color / Ring Size) ----
   WooCommerce outputs each attribute as <dt>label</dt><dd>value</dd> inside
   <dl class="variation">. The browser default puts <dd> on its own line and
   floats <dt>, which pushed the Ring Size value ("7") onto a second row.
   Keep each attribute on one line: label + value together, one pair per row. */
.ananta-checkout-page dl.variation,
.ananta-shop-page dl.variation{
  margin:6px 0 0 !important; padding:0 !important;
  font-size:12.5px; color:#6b6058; line-height:1.5; overflow:hidden;
}
.ananta-checkout-page dl.variation dt,
.ananta-shop-page dl.variation dt{
  display:inline !important; float:none !important; clear:none !important;
  margin:0 4px 0 0 !important; padding:0 !important; font-weight:600;
}
.ananta-checkout-page dl.variation dd,
.ananta-shop-page dl.variation dd{
  display:inline !important; float:none !important; clear:none !important;
  margin:0 !important; padding:0 !important; font-weight:400;
}
.ananta-checkout-page dl.variation dd p,
.ananta-shop-page dl.variation dd p{ display:inline !important; margin:0 !important; }
/* force a line break after each attribute's value so pairs stack cleanly */
.ananta-checkout-page dl.variation dd::after,
.ananta-shop-page dl.variation dd::after{ content:""; display:block; }

/* ---- inline checkout coupon box (below total, above payment) ---- */
.ananta-checkout-page .ananta-coupon-row td{ padding:14px 0 4px !important; border:none !important; }
.ananta-coupon-form{
  display:flex; gap:10px; align-items:stretch; margin:0;
}
.ananta-coupon-input{
  flex:1 1 auto; min-width:0;
  border:1px solid var(--border); border-radius:8px;
  padding:12px 14px; font-size:14px; color:var(--ink);
  background:#fff; outline:none;
}
.ananta-coupon-input:focus{ border-color:var(--wine); }
.ananta-coupon-input::placeholder{ color:#9a9088; }
.ananta-coupon-apply.button{
  flex:0 0 auto; border:none; cursor:pointer;
  background:var(--wine); color:#fff;
  padding:0 22px; border-radius:8px;
  font-size:14px; font-weight:600; line-height:1;
  transition:background .15s ease;
}
.ananta-coupon-apply.button:hover{ background:var(--wine-dark); }
@media (max-width:900px){
  .ananta-checkout-page .ananta-coupon-row td{ padding:16px 0 16px !important; }
  .ananta-coupon-apply.button{ padding:0 18px; }
}
