/*
Theme Name:  Emirate Vape Shop
Theme URI:   https://www.globalviision.com
Author:      GlobalViision — www.globalviision.com
Author URI:  https://www.globalviision.com
Description: Emirate Vape Shop — Premium vape shop WordPress theme for Business Bay, Dubai. White background with glowing gold, orange and green accents. WooCommerce ready. SEO/AEO/GEO optimised for UAE, Dubai, India, UK, USA. Built by GlobalViision.com.
Version:     2.3.0
License:     GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: emirates-vape
Tags:        woocommerce,vape,dubai,uae,white,gold,responsive,seo,mobile-first
Website Built by: GlobalViision (www.globalviision.com)
Copyright:   © 2025 GlobalViision (https://www.globalviision.com). All Rights Reserved.

── v2.3 AUDIT FIXES ──
1. Added --orange-dk and --green-dk to :root. These were used
   throughout (.txt-orange, .s-tag.orange, and critically the
   WooCommerce "Proceed to Checkout" button) WITHOUT fallback values
   and WITHOUT ever being defined — meaning affected text rendered
   invisible (transparent gradient with no fallback) and the
   checkout button likely had a broken/missing background.
2. Added --r-2xl to :root — used in .hero-img-wrap with no fallback
   and no definition, so the hero image card had square corners
   instead of the intended rounded style.
3. Added .why-grid class with a proper mobile breakpoint — this
   class did not exist anywhere in the file before; front-page.php
   used an inline `grid-template-columns:1fr 1fr` style for the
   "Why Choose Us" section with no responsive override, so it stayed
   two-column and cramped on small screens. front-page.php has been
   updated to use this class instead of the inline style.
4. Removed the earlier, incomplete duplicate declarations of
   .ev-discount-float and .ev-whatsapp-float (the ones with only
   padding/min-height, no positioning) — kept only the complete,
   later declarations. This avoids future confusion since CSS
   cascade order made the incomplete ones dead code anyway.
*/
/* CSS VARIABLES ══════════════════════════════════ */
:root{
  --gold:        #C8960C;
  --gold-lt:     #F0BC2E;
  --gold-dk:     #9A6F08;
  --gold-glow:   rgba(200,150,12,.35);
  --gold-soft:   rgba(200,150,12,.10);
  --gold-border: rgba(200,150,12,.25);
  --orange:      #E8600A;
  --orange-lt:   #FF7B2E;
  --orange-dk:   #B84D08; /* FIX: was missing — required by .txt-orange, .s-tag.orange, badges */
  --orange-glow: rgba(232,96,10,.32);
  --orange-soft: rgba(232,96,10,.08);
  --green:       #1A7A40;
  --green-lt:    #22A054;
  --green-dk:    #145C31; /* FIX: was missing — required by .btn-green and the WooCommerce checkout button */
  --green-glow:  rgba(26,122,64,.30);
  --green-soft:  rgba(26,122,64,.08);
  --white:       #FFFFFF;
  --bg:          #FFFFFF;
  --bg-soft:     #FAFAF8;
  --bg-warm:     #FEF9F0;
  --bg-card:     #FFFFFF;
  --text:        #1A1A1A;
  --text-md:     #3D3D3D;
  --text-lt:     #666677;
  --text-xs:     #9999AA;
  --border:      rgba(200,150,12,.18);
  --border-s:    rgba(0,0,0,.07);
  --shadow-sm:   0 2px 12px rgba(0,0,0,.07);
  --shadow:      0 6px 30px rgba(0,0,0,.10);
  --shadow-lg:   0 16px 60px rgba(0,0,0,.13);
  --shadow-gold: 0 6px 35px var(--gold-glow);
  --shadow-ora:  0 6px 30px var(--orange-glow);
  --shadow-grn:  0 6px 28px var(--green-glow);
  --f-head:'Playfair Display',Georgia,serif;
  --f-body:'Inter',system-ui,sans-serif;
  --f-mono:'JetBrains Mono','Courier New',monospace;
  --r:8px;--r-lg:16px;--r-xl:24px;--r-2xl:32px; /* FIX: --r-2xl was missing — required by .hero-img-wrap */
  --t:.26s;--ease:cubic-bezier(.4,0,.2,1);
}

/* ══════════════════════════════════════════════════
   RESET & BASE
══════════════════════════════════════════════════ */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;font-size:16px}
body{
  font-family:var(--f-body);
  background:var(--bg);
  color:var(--text);
  line-height:1.72;
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
}
a{color:var(--gold-dk);text-decoration:none;transition:color var(--t)}
a:hover{color:var(--orange)}
img{max-width:100%;height:auto;display:block}
ul{list-style:none}
::selection{background:var(--gold-soft);color:var(--gold-dk)}

/* ══════════════════════════════════════════════════
   TYPOGRAPHY
══════════════════════════════════════════════════ */
h1,h2,h3{font-family:var(--f-head);font-weight:700;line-height:1.15;color:var(--text)}
h4,h5,h6{font-family:var(--f-body);font-weight:700;color:var(--text)}
h1{font-size:clamp(2.4rem,5.5vw,4.8rem)}
h2{font-size:clamp(1.9rem,4vw,3.6rem)}
h3{font-size:clamp(1.4rem,2.5vw,2.2rem)}
h4{font-size:1.1rem}
p{color:var(--text-lt);font-size:.97rem;margin-bottom:1.2rem;line-height:1.8}

.txt-gold{
  background:linear-gradient(90deg,var(--gold-dk),var(--gold),var(--gold-lt));
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
  filter:drop-shadow(0 0 12px var(--gold-glow));
}
.txt-orange{
  background:linear-gradient(90deg,var(--orange-dk),var(--orange-lt));
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
}
.txt-green{color:var(--green)}

/* ══════════════════════════════════════════════════
   LAYOUT
══════════════════════════════════════════════════ */
.container{width:92%;max-width:1260px;margin:0 auto;position:relative}
.site-wrapper{display:flex;flex-direction:column;min-height:100vh}
.site-content{flex:1;padding:80px 0}
.content-area{width:67%;float:left}
.sidebar-area{width:29%;float:right}
.clearfix::after{content:'';display:table;clear:both}
.full-width .content-area{width:100%;float:none}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:1.3rem}

/* FIX #3: .why-grid — was an inline style in front-page.php with no
   mobile breakpoint at all. Now a proper class with responsive collapse. */
.why-grid{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center}
@media(max-width:900px){
  .why-grid{grid-template-columns:1fr;gap:2.5rem}
}

/* ══════════════════════════════════════════════════
   TOP BAR
══════════════════════════════════════════════════ */
.top-bar{
  background:linear-gradient(90deg,var(--gold-dk),var(--gold),var(--gold-lt),var(--gold));
  background-size:300%;
  animation:topBarShimmer 8s ease infinite;
  padding:.45rem 0;font-size:.72rem;
  box-shadow:0 2px 20px var(--gold-glow);
}
@keyframes topBarShimmer{0%,100%{background-position:0%}50%{background-position:100%}}
.top-bar-inner{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.5rem}
.top-bar a,.top-bar span{color:rgba(26,15,0,.85);font-weight:600}
.top-bar a:hover{color:var(--white)}
.top-bar .cta-link{
  background:rgba(255,255,255,.2);border:1px solid rgba(255,255,255,.4);
  color:#1A0F00;padding:.2rem .9rem;border-radius:50px;font-weight:700;
  transition:all var(--t);
}
.top-bar .cta-link:hover{background:rgba(255,255,255,.4);color:#1A0F00}

/* ══════════════════════════════════════════════════
   HEADER — GOLD BACKGROUND
══════════════════════════════════════════════════ */
.site-header{
  background:var(--white);
  border-bottom:3px solid var(--gold);
  position:sticky;top:0;z-index:1000;
  box-shadow:0 4px 40px var(--gold-glow),0 2px 8px rgba(0,0,0,.08);
  transition:all var(--t);
}
.site-header.scrolled{
  box-shadow:0 6px 50px var(--gold-glow),0 4px 20px rgba(0,0,0,.12);
}
.header-inner{display:flex;align-items:center;justify-content:space-between;padding:1rem 0;gap:1.5rem}

/* Logo */
.site-branding a{display:flex;align-items:center;gap:.85rem;text-decoration:none}
.logo-mark{
  width:48px;height:48px;border-radius:14px;flex-shrink:0;
  background:linear-gradient(135deg,var(--gold-dk),var(--gold),var(--gold-lt));
  display:flex;align-items:center;justify-content:center;
  font-size:1.3rem;font-family:var(--f-head);font-weight:700;color:var(--white);
  box-shadow:0 4px 20px var(--gold-glow),inset 0 1px 0 rgba(255,255,255,.3);
  transition:all var(--t);
}
.site-branding a:hover .logo-mark{transform:scale(1.06);box-shadow:0 8px 30px var(--gold-glow)}
.logo-name{font-family:var(--f-head);font-size:1.4rem;font-weight:700;color:var(--text);display:block;line-height:1.2}
.logo-name span{color:var(--gold-dk)}
.logo-sub{font-size:.58rem;color:var(--text-xs);letter-spacing:.18em;text-transform:uppercase;font-family:var(--f-mono);display:block;margin-top:1px}
.logo-credit{font-size:.5rem;color:var(--text-xs);letter-spacing:.1em;display:block;margin-top:1px}
.logo-credit a{color:var(--gold-dk)}

/* Navigation */
.main-navigation{flex:1;display:flex;justify-content:center}
.main-navigation ul{display:flex;gap:.1rem;align-items:center;flex-wrap:wrap}
.main-navigation ul li a{
  color:var(--text-md);padding:.5rem 1rem;border-radius:8px;
  font-size:.86rem;font-weight:600;transition:all var(--t);white-space:nowrap;
  border-bottom:2px solid transparent;position:relative;
}
.main-navigation ul li a::after{
  content:'';position:absolute;bottom:-2px;left:50%;right:50%;
  height:2px;background:linear-gradient(90deg,var(--gold),var(--orange));
  transition:all .3s var(--ease);border-radius:2px;
}
.main-navigation ul li a:hover,
.main-navigation ul li.current-menu-item>a{
  color:var(--gold-dk);background:var(--gold-soft);
}
.main-navigation ul li a:hover::after,
.main-navigation ul li.current-menu-item>a::after{left:10%;right:10%}

/* Dropdown */
.main-navigation ul li{position:relative}
.main-navigation ul li ul{
  display:none;position:absolute;top:calc(100% + 8px);left:0;
  background:var(--white);border:1px solid var(--border);
  border-radius:var(--r-lg);min-width:200px;padding:.5rem;
  z-index:100;box-shadow:var(--shadow-lg),0 0 0 1px var(--gold-border);
}
.main-navigation ul li:hover>ul{display:block;animation:dropIn .2s ease}
@keyframes dropIn{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}
.main-navigation ul li ul li a{
  color:var(--text-md);padding:.55rem 1rem;border:none;
  display:block;font-size:.84rem;border-radius:var(--r);border-bottom:none;
}
.main-navigation ul li ul li a::after{display:none}
.main-navigation ul li ul li a:hover{color:var(--gold-dk);background:var(--gold-soft)}

/* Header CTA */
.header-actions{flex-shrink:0;display:flex;align-items:center;gap:.8rem}
.btn-header{
  background:linear-gradient(135deg,var(--gold-dk),var(--gold),var(--gold-lt));
  color:var(--white);padding:.65rem 1.6rem;border-radius:50px;
  font-size:.84rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;
  box-shadow:var(--shadow-gold);border:1px solid rgba(255,255,255,.2);
  transition:all var(--t);white-space:nowrap;
}
.btn-header:hover{transform:translateY(-2px);box-shadow:0 10px 40px var(--gold-glow);color:var(--white)}

/* Mobile toggle */
.menu-toggle{
  display:none;background:var(--bg-soft);border:2px solid var(--gold-border);
  color:var(--gold-dk);width:44px;height:44px;border-radius:10px;
  cursor:pointer;font-size:1.2rem;align-items:center;justify-content:center;
  transition:all var(--t);
}
.menu-toggle:hover{background:var(--gold-soft);border-color:var(--gold)}
#nav-close{
  display:none;position:absolute;top:1.2rem;right:1.2rem;
  background:var(--gold-soft);border:1px solid var(--gold-border);color:var(--text);
  width:40px;height:40px;border-radius:50%;font-size:1.1rem;
  cursor:pointer;align-items:center;justify-content:center;
}

/* ══════════════════════════════════════════════════
   BUTTONS
══════════════════════════════════════════════════ */
.btn{
  display:inline-flex;align-items:center;gap:.5rem;
  padding:.9rem 2.2rem;border-radius:50px;border:none;
  font-weight:700;font-size:.9rem;cursor:pointer;
  transition:all var(--t) var(--ease);text-decoration:none;
  text-transform:uppercase;letter-spacing:.08em;white-space:nowrap;
  position:relative;overflow:hidden;
}
.btn::before{
  content:'';position:absolute;inset:0;
  background:rgba(255,255,255,.18);
  transform:translateX(-110%) skewX(-15deg);
  transition:transform .5s var(--ease);
}
.btn:hover::before{transform:translateX(120%) skewX(-15deg)}

.btn-gold{
  background:linear-gradient(135deg,var(--gold-dk),var(--gold),var(--gold-lt));
  color:var(--white);box-shadow:var(--shadow-gold);
}
.btn-gold:hover{transform:translateY(-3px);box-shadow:0 14px 50px var(--gold-glow);color:var(--white)}

.btn-orange{
  background:linear-gradient(135deg,var(--orange-dk),var(--orange),var(--orange-lt));
  color:var(--white);box-shadow:var(--shadow-ora);
}
.btn-orange:hover{transform:translateY(-3px);box-shadow:0 14px 50px var(--orange-glow);color:var(--white)}

.btn-green{
  background:linear-gradient(135deg,var(--green-dk),var(--green),var(--green-lt));
  color:var(--white);box-shadow:var(--shadow-grn);
}
.btn-green:hover{transform:translateY(-3px);box-shadow:0 14px 50px var(--green-glow);color:var(--white)}

.btn-outline-gold{
  background:var(--white);color:var(--gold-dk);
  border:2px solid var(--gold);box-shadow:var(--shadow-gold);
}
.btn-outline-gold:hover{
  background:linear-gradient(135deg,var(--gold-dk),var(--gold));
  color:var(--white);border-color:transparent;
}

.btn-outline{background:var(--white);color:var(--text-md);border:2px solid var(--border-s)}
.btn-outline:hover{border-color:var(--gold);color:var(--gold-dk);background:var(--gold-soft)}

.btn-sm{padding:.6rem 1.5rem;font-size:.82rem}

/* ══════════════════════════════════════════════════
   SECTION LABELS
══════════════════════════════════════════════════ */
.s-tag{
  display:inline-flex;align-items:center;gap:.45rem;
  font-family:var(--f-mono);font-size:.65rem;font-weight:700;
  letter-spacing:.2em;text-transform:uppercase;
  color:var(--gold-dk);background:var(--gold-soft);
  border:1px solid var(--gold-border);
  padding:.22rem .9rem;border-radius:50px;margin-bottom:1rem;width:fit-content;
  box-shadow:0 2px 12px var(--gold-glow);
}
.s-tag::before{content:'◆';font-size:.5rem;opacity:.7}
.s-tag.orange{color:var(--orange-dk);background:var(--orange-soft);border-color:rgba(232,96,10,.3);box-shadow:0 2px 12px var(--orange-glow)}
.s-tag.green{color:var(--green-dk);background:var(--green-soft);border-color:rgba(26,122,64,.25);box-shadow:0 2px 12px var(--green-glow)}

/* ══════════════════════════════════════════════════
   HERO — SALON
══════════════════════════════════════════════════ */
.hero-section{
  background:linear-gradient(150deg,var(--bg-warm) 0%,var(--white) 50%,#F0FBF4 100%);
  min-height:88vh;display:flex;align-items:center;position:relative;overflow:hidden;
}
.hero-section::before{
  content:'';position:absolute;inset:0;
  background:
    radial-gradient(ellipse 60% 50% at 15% 20%, rgba(200,150,12,.12) 0%,transparent 60%),
    radial-gradient(ellipse 50% 40% at 90% 80%, rgba(232,96,10,.08) 0%,transparent 60%),
    radial-gradient(ellipse 40% 50% at 60% 10%, rgba(26,122,64,.06) 0%,transparent 65%);
  pointer-events:none;
}
/* Decorative rings */
.hero-ring{
  position:absolute;border-radius:50%;pointer-events:none;
  border:1px solid;opacity:.2;
}
.hero-ring-1{width:600px;height:600px;border-color:var(--gold);top:-200px;right:-150px;animation:spinSlow 40s linear infinite}
.hero-ring-2{width:400px;height:400px;border-color:var(--orange);top:-100px;right:-50px;animation:spinSlow 30s linear infinite reverse}
.hero-ring-3{width:200px;height:200px;border-color:var(--green);top:50px;right:150px;animation:spinSlow 20s linear infinite}
@keyframes spinSlow{from{transform:rotate(0)}to{transform:rotate(360deg)}}

.hero-inner{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center;padding:80px 0;position:relative;z-index:2}

.hero-badge{
  display:inline-flex;align-items:center;gap:.6rem;
  background:var(--white);border:1px solid var(--gold-border);
  border-radius:50px;padding:.4rem 1.1rem;margin-bottom:1.8rem;
  box-shadow:var(--shadow-gold);animation:fadeUp .6s ease both;
}
.hero-badge-dot{width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 10px var(--green-glow);animation:blink 1.6s ease infinite}
@keyframes blink{0%,100%{opacity:1}50%{opacity:.2}}
.hero-badge span{font-size:.72rem;font-weight:700;color:var(--text-md);font-family:var(--f-mono);text-transform:uppercase;letter-spacing:.12em}

.hero-left h1{margin-bottom:1.4rem;animation:fadeUp .6s .1s ease both}
.hero-left>p{font-size:1.05rem;max-width:490px;margin-bottom:2.2rem;animation:fadeUp .6s .2s ease both;color:var(--text-md)}
.hero-cta{display:flex;gap:1rem;flex-wrap:wrap;margin-bottom:3rem;animation:fadeUp .6s .3s ease both}

.hero-trust{display:flex;gap:1.8rem;flex-wrap:wrap;animation:fadeUp .6s .4s ease both;padding-top:1.5rem;border-top:1px solid var(--border-s)}
.trust-item{display:flex;align-items:center;gap:.5rem;font-size:.82rem;color:var(--text-lt)}
.trust-icon{font-size:1rem}

@keyframes fadeUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}

/* Hero image card */
.hero-right{position:relative;animation:fadeUp .6s .25s ease both}
.hero-img-wrap{
  border-radius:var(--r-2xl);overflow:hidden;position:relative;
  background:linear-gradient(145deg,var(--bg-warm),#F0FBF4);
  border:3px solid var(--gold-border);
  box-shadow:var(--shadow-lg),0 0 60px var(--gold-glow);
  height:460px;
}
.hero-img-placeholder{
  width:100%;height:100%;
  background:linear-gradient(145deg,#FEF3D0,#E8F5EE,#FEF3D0);
  display:flex;align-items:center;justify-content:center;flex-direction:column;gap:1rem;
}
.hero-img-placeholder .ph-icon{font-size:5rem;opacity:.4}
.hero-img-placeholder p{font-size:.85rem;color:var(--text-lt);font-style:italic;margin:0}
.hero-float-badge{
  position:absolute;bottom:1.5rem;left:1.5rem;
  background:var(--white);border-radius:var(--r-lg);
  padding:1rem 1.4rem;box-shadow:var(--shadow-gold),var(--shadow-lg);
  border:1px solid var(--gold-border);
  display:flex;align-items:center;gap:1rem;
}
.hfb-num{font-family:var(--f-head);font-size:2rem;font-weight:700;color:var(--gold-dk);line-height:1}
.hfb-txt{font-size:.73rem;color:var(--text-lt);line-height:1.5}
.hfb-txt strong{color:var(--text);display:block}
.hero-float-stars{
  position:absolute;top:1.5rem;right:1.5rem;
  background:var(--white);border-radius:var(--r-lg);
  padding:.7rem 1rem;box-shadow:var(--shadow-gold);border:1px solid var(--gold-border);
  font-size:.85rem;
}

/* ══════════════════════════════════════════════════
   SERVICES CARDS
══════════════════════════════════════════════════ */
.services-section{padding:100px 0;background:var(--bg-soft)}
.section-hd{margin-bottom:3.5rem}
.section-hd.center{text-align:center}
.section-hd.center .s-tag{margin:0 auto 1rem}
.section-hd p{color:var(--text-lt);margin-top:.6rem;font-size:1rem}

.service-card{
  background:var(--bg-card);border:1px solid var(--border-s);
  border-radius:var(--r-xl);padding:2rem;
  transition:all var(--t) var(--ease);position:relative;overflow:hidden;
  box-shadow:var(--shadow-sm);
}
.service-card::before{
  content:'';position:absolute;top:0;left:0;right:0;height:4px;
  background:linear-gradient(90deg,var(--gold),var(--orange),var(--green));
  transform:scaleX(0);transform-origin:left;transition:transform .4s var(--ease);
  border-radius:var(--r) var(--r) 0 0;
}
.service-card:hover{
  transform:translateY(-8px);border-color:var(--gold-border);
  box-shadow:var(--shadow-gold),var(--shadow-lg);
}
.service-card:hover::before{transform:scaleX(1)}
.svc-icon{
  width:58px;height:58px;border-radius:16px;
  background:var(--gold-soft);border:1px solid var(--gold-border);
  display:flex;align-items:center;justify-content:center;
  font-size:1.5rem;margin-bottom:1.4rem;
  transition:all var(--t);box-shadow:0 2px 12px var(--gold-glow);
}
.service-card:hover .svc-icon{
  background:linear-gradient(135deg,var(--gold-dk),var(--gold-lt));
  box-shadow:0 6px 25px var(--gold-glow);transform:scale(1.08);
}
.service-card h3{font-size:1.15rem;font-family:var(--f-body);font-weight:700;letter-spacing:0;text-transform:none;margin-bottom:.6rem;color:var(--text)}
.service-card p{font-size:.88rem;color:var(--text-lt);margin:0;line-height:1.7}
.svc-link{
  display:inline-flex;align-items:center;gap:.4rem;
  color:var(--gold-dk);font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;
  margin-top:1.2rem;border-bottom:1.5px solid transparent;transition:all var(--t);
}
.svc-link:hover{color:var(--orange-dk);border-bottom-color:var(--orange);gap:.7rem}

/* ══════════════════════════════════════════════════
   STATS BAR
══════════════════════════════════════════════════ */
.stats-bar{
  background:linear-gradient(135deg,var(--gold-dk),var(--gold),var(--gold-lt),var(--orange));
  background-size:300%;animation:topBarShimmer 8s ease infinite;
  padding:50px 0;
  box-shadow:0 8px 50px var(--gold-glow);
}
.stats-inner{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;text-align:center}
.stat-item{padding:1rem}
.stat-num{font-family:var(--f-head);font-size:3.2rem;font-weight:700;color:var(--white);display:block;line-height:1;text-shadow:0 2px 20px rgba(0,0,0,.2)}
.stat-lbl{font-size:.7rem;color:rgba(255,255,255,.85);text-transform:uppercase;letter-spacing:.16em;font-family:var(--f-mono);margin-top:.4rem;display:block}

/* ══════════════════════════════════════════════════
   TESTIMONIALS
══════════════════════════════════════════════════ */
.testimonials-section{padding:100px 0;background:var(--white)}
.review-card{
  background:var(--bg-card);border:1px solid var(--border-s);
  border-radius:var(--r-xl);padding:2rem;
  transition:all var(--t) var(--ease);box-shadow:var(--shadow-sm);
  position:relative;overflow:hidden;
}
.review-card::before{
  content:'\201C';position:absolute;top:-.5rem;right:1.2rem;
  font-size:8rem;font-family:Georgia,serif;line-height:1;
  color:var(--gold);opacity:.1;
}
.review-card:hover{
  transform:translateY(-6px);border-color:var(--gold-border);
  box-shadow:var(--shadow-gold),var(--shadow-lg);
}
.review-stars{color:var(--gold);font-size:.95rem;letter-spacing:.1em;margin-bottom:1rem;
  text-shadow:0 0 12px var(--gold-glow)}
.review-body{color:var(--text-md);font-size:.95rem;line-height:1.8;margin-bottom:1.5rem;font-style:italic}
.review-author{display:flex;align-items:center;gap:.85rem}
.rev-av{
  width:44px;height:44px;border-radius:50%;flex-shrink:0;
  background:linear-gradient(135deg,var(--gold-dk),var(--gold-lt));
  display:flex;align-items:center;justify-content:center;
  font-weight:700;color:var(--white);font-size:.9rem;
  box-shadow:0 4px 16px var(--gold-glow);
}
.rev-name{font-weight:700;color:var(--text);font-size:.9rem}
.rev-role{font-size:.72rem;color:var(--text-xs);font-family:var(--f-mono)}

/* ══════════════════════════════════════════════════
   PRICING
══════════════════════════════════════════════════ */
.pricing-section{padding:100px 0;background:var(--bg-soft)}
.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.price-card{
  background:var(--bg-card);border:1px solid var(--border-s);
  border-radius:var(--r-xl);padding:2.2rem;
  transition:all var(--t) var(--ease);box-shadow:var(--shadow-sm);position:relative;
}
.price-card.popular{
  border-color:var(--gold);
  box-shadow:var(--shadow-gold),var(--shadow-lg);
  transform:scale(1.04);
  background:linear-gradient(160deg,var(--white),var(--bg-warm));
}
.popular-badge{
  position:absolute;top:-14px;left:50%;transform:translateX(-50%);
  background:linear-gradient(90deg,var(--gold-dk),var(--gold-lt));
  color:var(--white);padding:.28rem 1.2rem;border-radius:50px;
  font-size:.65rem;font-weight:800;text-transform:uppercase;letter-spacing:.12em;
  white-space:nowrap;box-shadow:var(--shadow-gold);
}
.price-tier{font-family:var(--f-mono);font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.2em;color:var(--gold-dk);margin-bottom:.7rem}
.price-card h3{font-size:1.3rem;color:var(--text);margin-bottom:.5rem;font-family:var(--f-body);font-weight:700;letter-spacing:0;text-transform:none}
.price-amount{
  font-family:var(--f-head);font-size:3.2rem;font-weight:700;
  background:linear-gradient(135deg,var(--gold-dk),var(--gold-lt));
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
  filter:drop-shadow(0 2px 8px var(--gold-glow));
  line-height:1;margin:.8rem 0;
}
.price-amount span{font-size:.95rem;font-family:var(--f-body);font-weight:400;color:var(--text-lt);-webkit-text-fill-color:var(--text-lt)}
.price-desc{font-size:.84rem;color:var(--text-lt);margin-bottom:1.5rem}
.price-features{margin-bottom:2rem}
.price-features li{
  display:flex;align-items:center;gap:.7rem;
  padding:.48rem 0;border-bottom:1px solid var(--border-s);
  font-size:.87rem;color:var(--text-md);
}
.price-features li:last-child{border-bottom:none}
.price-features li::before{content:'✓';color:var(--green);font-weight:700;flex-shrink:0;font-size:.8rem;text-shadow:0 0 10px var(--green-glow)}

/* ══════════════════════════════════════════════════
   FAQ
══════════════════════════════════════════════════ */
.faq-section{padding:80px 0;background:var(--white)}
.faq-item{border:1px solid var(--border-s);border-radius:var(--r-lg);margin-bottom:.75rem;overflow:hidden;transition:all var(--t);box-shadow:var(--shadow-sm)}
.faq-item.open{border-color:var(--gold-border);box-shadow:var(--shadow-gold)}
.faq-q{
  width:100%;background:var(--bg-card);border:none;
  padding:1.3rem 1.5rem;display:flex;justify-content:space-between;align-items:center;gap:1rem;
  color:var(--text);font-size:.97rem;font-weight:600;cursor:pointer;font-family:var(--f-body);text-align:left;
  transition:background var(--t);
}
.faq-item.open .faq-q{background:var(--bg-warm)}
.faq-icon{
  color:var(--gold-dk);flex-shrink:0;width:30px;height:30px;border-radius:50%;
  background:var(--gold-soft);border:1px solid var(--gold-border);
  display:flex;align-items:center;justify-content:center;font-size:1rem;
  transition:all .3s var(--ease);box-shadow:0 2px 10px var(--gold-glow);
}
.faq-item.open .faq-icon{
  transform:rotate(45deg);
  background:linear-gradient(135deg,var(--gold-dk),var(--gold-lt));
  color:var(--white);box-shadow:0 4px 18px var(--gold-glow);
}
.faq-a{display:none;background:var(--bg-warm);padding:0 1.5rem 1.3rem;border-top:1px solid var(--border-s)}
.faq-a p{color:var(--text-md);font-size:.92rem;line-height:1.8;margin:1rem 0 0}
/* Basic styling for the [ev_faq] shortcode's plain <h3>/<p> Q&A markup on the homepage */
.ev-faq-block h3{
  font-family:var(--f-body);font-size:1.02rem;font-weight:700;color:var(--text);
  background:var(--bg-card);border:1px solid var(--border-s);border-radius:var(--r-lg);
  padding:1.1rem 1.4rem;margin:0 0 .5rem;box-shadow:var(--shadow-sm);
}
.ev-faq-block p{
  background:var(--bg-warm);border:1px solid var(--border-s);border-top:none;
  border-radius:0 0 var(--r-lg) var(--r-lg);padding:1rem 1.4rem 1.4rem;
  margin:-0.6rem 0 1.2rem;font-size:.92rem;
}

/* ══════════════════════════════════════════════════
   BLOG CARDS
══════════════════════════════════════════════════ */
.blog-section{padding:100px 0;background:var(--bg-soft)}
.post-card{
  background:var(--bg-card);border:1px solid var(--border-s);
  border-radius:var(--r-xl);overflow:hidden;
  transition:all var(--t) var(--ease);box-shadow:var(--shadow-sm);
}
.post-card:hover{transform:translateY(-8px);border-color:var(--gold-border);box-shadow:var(--shadow-gold),var(--shadow-lg)}
.post-thumb{height:210px;overflow:hidden;background:linear-gradient(135deg,var(--bg-warm),#E8F5EE)}
.post-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.post-card:hover .post-thumb img{transform:scale(1.06)}
.post-body{padding:1.5rem}
.post-cat{display:inline-block;font-size:.62rem;background:var(--gold-soft);color:var(--gold-dk);padding:.2rem .7rem;border-radius:50px;font-family:var(--f-mono);text-transform:uppercase;letter-spacing:.1em;margin-bottom:.7rem;border:1px solid var(--gold-border)}
.post-body h3{font-size:1.04rem;font-weight:700;color:var(--text);line-height:1.45;margin-bottom:.6rem;font-family:var(--f-body);text-transform:none;letter-spacing:0}
.post-body h3 a{color:var(--text);transition:color var(--t)}
.post-body h3 a:hover{color:var(--gold-dk)}
.post-meta{font-size:.74rem;color:var(--text-xs);margin-bottom:.7rem}
.post-excerpt{font-size:.86rem;color:var(--text-lt);line-height:1.68;margin:0}
.read-more{display:inline-flex;align-items:center;gap:.35rem;color:var(--orange-dk);font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;margin-top:.9rem;border-bottom:1.5px solid transparent;transition:all var(--t)}
.read-more:hover{color:var(--orange);border-bottom-color:var(--orange);gap:.6rem}

/* ══════════════════════════════════════════════════
   CTA SECTION
══════════════════════════════════════════════════ */
.cta-section{
  padding:90px 0;
  background:linear-gradient(135deg,var(--gold-dk),var(--gold),var(--gold-lt));
  background-size:200%;animation:topBarShimmer 8s ease infinite;
  position:relative;overflow:hidden;
  box-shadow:inset 0 0 100px rgba(0,0,0,.1);
}
.cta-section::before{
  content:'';position:absolute;inset:0;
  background:radial-gradient(ellipse 70% 80% at 50% 50%,rgba(255,255,255,.15) 0%,transparent 70%);
}
.cta-inner{position:relative;z-index:1;text-align:center;max-width:740px;margin:0 auto}
.cta-inner h2{color:var(--white);margin-bottom:1rem;text-shadow:0 2px 20px rgba(0,0,0,.2)}
.cta-inner p{font-size:1.05rem;margin-bottom:2.5rem;color:rgba(255,255,255,.9)}
.cta-buttons{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}

/* ══════════════════════════════════════════════════
   GALLERY / PORTFOLIO PREVIEW
══════════════════════════════════════════════════ */
.gallery-section{padding:100px 0;background:var(--white)}
.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.gal-item{
  border-radius:var(--r-xl);overflow:hidden;position:relative;
  background:var(--bg-soft);border:1px solid var(--border-s);
  aspect-ratio:4/3;transition:all var(--t) var(--ease);box-shadow:var(--shadow-sm);
}
.gal-item:hover{transform:scale(1.03);box-shadow:var(--shadow-gold),var(--shadow-lg);border-color:var(--gold-border)}
.gal-item img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.gal-item:hover img{transform:scale(1.08)}
.gal-overlay{
  position:absolute;inset:0;
  background:linear-gradient(180deg,transparent 40%,rgba(200,150,12,.6) 100%);
  opacity:0;transition:opacity var(--t);display:flex;align-items:flex-end;padding:1.2rem;
}
.gal-item:hover .gal-overlay{opacity:1}
.gal-label{color:var(--white);font-weight:700;font-size:.9rem;text-shadow:0 2px 8px rgba(0,0,0,.3)}

/* ══════════════════════════════════════════════════
   TICKER BAR
══════════════════════════════════════════════════ */
.ticker-bar{position:relative;overflow:hidden;padding:.75rem 0;background:var(--bg-warm);border-top:2px solid var(--gold-border);border-bottom:2px solid var(--gold-border)}
.ticker-track{display:inline-flex;animation:ticker 28s linear infinite;white-space:nowrap}
.ticker-item{font-family:var(--f-mono);font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.15em;color:var(--gold-dk);padding:0 2.5rem}
.ticker-item::before{content:'✦  ';color:var(--orange)}
@keyframes ticker{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ══════════════════════════════════════════════════
   PAGE HERO / BREADCRUMB
══════════════════════════════════════════════════ */
.page-hero{
  background:linear-gradient(150deg,var(--bg-warm),var(--white));
  border-bottom:2px solid var(--gold-border);padding:55px 0;position:relative;overflow:hidden;
}
.page-hero::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 55% 70% at 80% 50%,rgba(200,150,12,.08) 0%,transparent 65%)}
.page-hero h1{font-size:clamp(1.9rem,4.5vw,3.2rem)}
.breadcrumb{display:flex;gap:.5rem;align-items:center;font-size:.76rem;color:var(--text-xs);margin-top:.8rem;flex-wrap:wrap}
.breadcrumb a{color:var(--text-xs);transition:color var(--t)}
.breadcrumb a:hover{color:var(--gold-dk)}
.breadcrumb .sep{color:var(--gold);opacity:.5}
.breadcrumb .current{color:var(--gold-dk);font-weight:600}

/* ══════════════════════════════════════════════════
   SIDEBAR & WIDGETS
══════════════════════════════════════════════════ */
.widget{background:var(--bg-card);border:1px solid var(--border-s);border-radius:var(--r-lg);padding:1.6rem;margin-bottom:1.6rem;box-shadow:var(--shadow-sm)}
.widget-title{font-family:var(--f-mono);font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.18em;color:var(--gold-dk);margin-bottom:1rem;padding-bottom:.7rem;border-bottom:2px solid var(--gold-border)}
.widget ul li{padding:.4rem 0;border-bottom:1px solid var(--border-s);font-size:.87rem}
.widget ul li:last-child{border-bottom:none}
.widget ul li a{color:var(--text-md);transition:color var(--t);display:flex;align-items:center;gap:.4rem}
.widget ul li a:hover{color:var(--gold-dk)}

/* ══════════════════════════════════════════════════
   ENTRY CONTENT
══════════════════════════════════════════════════ */
.entry-content{color:var(--text-md);font-size:1rem;line-height:1.88}
.entry-content h2,.entry-content h3{color:var(--text);margin:2rem 0 1rem;font-family:var(--f-body);font-weight:700;text-transform:none;letter-spacing:0}
.entry-content h2{font-size:1.65rem}
.entry-content h3{font-size:1.3rem}
.entry-content p{margin-bottom:1.4rem}
.entry-content a{color:var(--gold-dk);border-bottom:1px solid var(--gold-border)}
.entry-content a:hover{color:var(--orange-dk);border-bottom-color:var(--orange)}
.entry-content ul,.entry-content ol{padding-left:1.6rem;margin-bottom:1.4rem}
.entry-content li{margin-bottom:.5rem}
.entry-content blockquote{border-left:4px solid var(--gold);background:var(--bg-warm);padding:1.2rem 1.5rem;border-radius:0 var(--r) var(--r) 0;margin:2rem 0;font-style:italic}
.entry-content code{background:var(--bg-soft);color:var(--gold-dk);padding:.15rem .4rem;border-radius:4px;font-family:var(--f-mono);font-size:.9em;border:1px solid var(--border-s)}

/* ══════════════════════════════════════════════════
   PAGINATION
══════════════════════════════════════════════════ */
.pagination{display:flex;gap:.4rem;margin-top:3rem;flex-wrap:wrap}
.pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:42px;padding:0 .8rem;background:var(--white);border:1.5px solid var(--border-s);border-radius:10px;color:var(--text-md);font-size:.9rem;transition:all var(--t);font-weight:600}
.pagination .page-numbers.current,.pagination .page-numbers:hover{background:linear-gradient(135deg,var(--gold-dk),var(--gold));border-color:transparent;color:var(--white);box-shadow:var(--shadow-gold)}

/* ══════════════════════════════════════════════════
   404
══════════════════════════════════════════════════ */
.error-404{text-align:center;padding:100px 0}
.code-404{font-family:var(--f-head);font-size:clamp(6rem,16vw,11rem);font-weight:700;display:block;line-height:1;background:linear-gradient(135deg,var(--gold-dk),var(--gold-lt),var(--orange));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;filter:drop-shadow(0 4px 30px var(--gold-glow))}

/* ══════════════════════════════════════════════════
   ANIMATIONS
══════════════════════════════════════════════════ */
.fade-in{opacity:0;transform:translateY(20px);transition:opacity .65s ease,transform .65s ease}
.fade-in.visible{opacity:1;transform:translateY(0)}

/* ══════════════════════════════════════════════════
   FOOTER — light gold / cream premium theme
══════════════════════════════════════════════════ */
.site-footer{
  background:var(--bg-warm);
  border-top:4px solid var(--gold);
}
.footer-top-bar{
  background:linear-gradient(90deg,var(--gold-dk),var(--gold),var(--gold-lt),var(--orange),var(--gold));
  background-size:300%;animation:topBarShimmer 8s ease infinite;
  padding:.6rem 0;
  box-shadow:0 4px 30px var(--gold-glow);
}
.footer-tb-inner{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.5rem;font-size:.73rem;color:rgba(26,15,0,.9);font-weight:600}
.footer-tb-inner a{color:rgba(26,15,0,.9);font-weight:700}
.footer-main{padding:70px 0 50px}
.footer-grid{display:grid;grid-template-columns:1.8fr 1fr 1fr 1.2fr;gap:3rem}
.footer-brand p{color:var(--text-lt);font-size:.86rem;line-height:1.8;margin:1rem 0 1.5rem}
.footer-brand .logo-name{color:var(--text)}
.footer-brand .logo-name span{color:var(--gold-dk)}
.footer-brand .logo-sub{color:var(--text-lt)}
.social-links{display:flex;gap:.5rem}
.soc-btn{width:38px;height:38px;border-radius:10px;background:rgba(200,150,12,.08);border:1px solid var(--gold-border);display:flex;align-items:center;justify-content:center;color:var(--text-lt);font-size:.72rem;font-family:var(--f-mono);font-weight:700;transition:all var(--t);text-decoration:none}
.soc-btn:hover{background:linear-gradient(135deg,var(--gold-dk),var(--gold-lt));border-color:transparent;color:var(--white);box-shadow:0 4px 20px var(--gold-glow)}
.footer-col h5{font-family:var(--f-mono);font-size:.64rem;font-weight:700;text-transform:uppercase;letter-spacing:.2em;color:var(--gold-dk);margin-bottom:1.3rem;padding-bottom:.6rem;border-bottom:1px solid var(--gold-border)}
.footer-col ul li{padding:.38rem 0;border-bottom:none}
.footer-col ul li a{color:var(--text-md);font-size:.87rem;transition:all var(--t)}
.footer-col ul li a:hover{color:var(--gold-dk)}
.footer-newsletter p{font-size:.85rem;color:var(--text-lt);margin-bottom:1rem}
.nl-input{width:100%;background:var(--white);border:1px solid var(--gold-border);border-radius:8px;padding:.7rem 1rem;color:var(--text);font-size:.86rem;font-family:var(--f-body);outline:none;margin-bottom:.5rem;transition:border-color var(--t)}
.nl-input:focus{border-color:var(--gold);box-shadow:0 0 0 3px var(--gold-soft)}
.nl-input::placeholder{color:var(--text-lt)}
.nl-btn{width:100%;background:linear-gradient(135deg,var(--gold-dk),var(--gold-lt));color:var(--white);border:none;border-radius:8px;padding:.75rem;font-weight:800;font-size:.85rem;cursor:pointer;font-family:var(--f-body);text-transform:uppercase;letter-spacing:.08em;transition:all var(--t)}
.nl-btn:hover{box-shadow:var(--shadow-gold);transform:translateY(-1px)}
.footer-divider{height:1px;background:linear-gradient(90deg,transparent,var(--gold-border),transparent)}
.footer-bottom{padding:1.4rem 0;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;font-size:.76rem;color:var(--text-lt)}
.footer-bottom a{color:var(--text-lt)}
.footer-bottom a:hover{color:var(--gold-dk)}
.footer-links{display:flex;gap:1.5rem;flex-wrap:wrap}
.footer-built-by{display:flex;align-items:center;gap:.5rem;color:var(--gold-dk);font-family:var(--f-mono);font-size:.62rem;letter-spacing:.1em;text-transform:uppercase}
.footer-built-by a{color:var(--gold-dk);border-bottom:1px solid var(--gold-border)}

/* ══════════════════════════════════════════════════
   RESPONSIVE
══════════════════════════════════════════════════ */
@media(max-width:1100px){
  .hero-inner{grid-template-columns:1fr}
  .hero-right{display:none}
  .footer-grid{grid-template-columns:1fr 1fr}
  .pricing-grid{grid-template-columns:1fr 1fr}
  .price-card.popular{transform:none}
}
@media(max-width:900px){
  .grid-3,.grid-4{grid-template-columns:1fr 1fr}
  .services-grid{grid-template-columns:1fr 1fr}
  .stats-inner{grid-template-columns:1fr 1fr}
  .content-area,.sidebar-area{width:100%;float:none}
  .gallery-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:768px){
  section{padding:60px 0}
  .top-bar{display:none}
  .main-navigation{
    display:none;position:fixed;inset:0;
    background:rgba(255,255,255,.98);z-index:9998;
    flex-direction:column;align-items:center;justify-content:center;
    backdrop-filter:blur(20px);
  }
  .main-navigation.active{display:flex}
  .main-navigation ul{flex-direction:column;align-items:center;gap:.5rem}
  .main-navigation ul li a{
    font-size:1.5rem;font-family:var(--f-head);font-weight:700;
    padding:.8rem 2rem;color:var(--text);border-bottom:none;
  }
  .main-navigation ul li a:hover{color:var(--gold-dk);background:var(--gold-soft)}
  .main-navigation ul li a::after{display:none}
  #nav-close{display:flex}
  .menu-toggle{display:flex}
  .btn-header{display:none}
  .footer-grid{grid-template-columns:1fr 1fr;gap:2rem}
  .footer-brand{grid-column:1/-1}
  .footer-bottom{flex-direction:column;text-align:center}
  .pricing-grid{grid-template-columns:1fr}
  .cta-buttons{flex-direction:column;align-items:center}
}
@media(max-width:480px){
  .grid-2,.grid-3,.grid-4,.services-grid,.gallery-grid{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr}
  .hero-cta{flex-direction:column}
  .stats-inner{grid-template-columns:1fr 1fr}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:4px}
.skip-link{position:absolute;top:-100%;left:1rem;background:var(--gold);color:var(--white);padding:.5rem 1.2rem;border-radius:0 0 8px 8px;font-weight:700;z-index:99999}
.skip-link:focus{top:0}

/* ══════════════════════════════════════════════════
   WOOCOMMERCE OVERRIDES — Emirate Vape Shop
══════════════════════════════════════════════════ */
.woocommerce-store-notice,.demo_store{background:linear-gradient(90deg,var(--gold-dk),var(--gold))!important;color:var(--white)!important;font-weight:600;box-shadow:0 4px 20px var(--gold-glow)}
.woocommerce ul.products li.product .woocommerce-loop-product__title{color:var(--text);font-weight:700;font-size:1rem;font-family:var(--f-body)}
.woocommerce ul.products li.product .price{color:var(--gold-dk);font-weight:700;font-size:1.1rem;text-shadow:0 1px 8px var(--gold-glow)}
.woocommerce ul.products li.product{border:1px solid var(--border-s);border-radius:var(--r-xl);overflow:hidden;padding:1.2rem;background:var(--bg-card);transition:all var(--t) var(--ease);box-shadow:var(--shadow-sm)}
.woocommerce ul.products li.product:hover{transform:translateY(-6px);border-color:var(--gold-border);box-shadow:var(--shadow-gold),var(--shadow-lg)}

/* Explicit grid control for the shop loop — overrides WooCommerce's default float-based columns for reliable responsive behavior */
.woocommerce ul.products,.woocommerce-page ul.products{display:grid!important;grid-template-columns:repeat(4,1fr);gap:1.8rem;list-style:none;margin:0}
.woocommerce ul.products li.product,.woocommerce-page ul.products li.product{width:auto!important;margin:0!important;float:none!important}
@media(max-width:1100px){.woocommerce ul.products,.woocommerce-page ul.products{grid-template-columns:repeat(3,1fr)}}
@media(max-width:768px){.woocommerce ul.products,.woocommerce-page ul.products{grid-template-columns:repeat(2,1fr);gap:1rem}}
@media(max-width:480px){.woocommerce ul.products,.woocommerce-page ul.products{grid-template-columns:1fr}}
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button{background:linear-gradient(135deg,var(--gold-dk),var(--gold),var(--gold-lt))!important;color:var(--white)!important;border:none!important;border-radius:50px!important;font-weight:700!important;padding:.65rem 1.6rem!important;transition:all var(--t)!important;box-shadow:var(--shadow-gold)!important;text-transform:uppercase!important;letter-spacing:.06em!important;font-family:var(--f-body)!important}
.woocommerce a.button:hover,.woocommerce button.button:hover{transform:translateY(-2px)!important;box-shadow:0 10px 40px var(--gold-glow)!important}
.woocommerce a.button.alt,.woocommerce button.button.alt{background:linear-gradient(135deg,var(--orange-dk),var(--orange),var(--orange-lt))!important;box-shadow:var(--shadow-ora)!important}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{background:linear-gradient(135deg,var(--green-dk),var(--green),var(--green-lt))!important;box-shadow:var(--shadow-grn)!important}
.woocommerce .star-rating span::before{color:var(--gold)!important}
.woocommerce .star-rating{text-shadow:0 0 10px var(--gold-glow)}
.woocommerce div.product .woocommerce-tabs .tabs li.active a{border-bottom:3px solid var(--gold);color:var(--gold-dk);font-weight:700}
.woocommerce div.product .woocommerce-tabs .tabs li a:hover{color:var(--gold-dk)}

/* ══════════════════════════════════════════════════
   SINGLE PRODUCT PAGE — layout, mobile responsiveness, brand styling
══════════════════════════════════════════════════ */
.woocommerce div.product{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:start;position:relative}
.woocommerce div.product div.images{position:relative}
.woocommerce div.product .summary{padding-top:.5rem}
.woocommerce div.product .product_title{font-family:var(--f-head);font-size:2.2rem;line-height:1.2;margin-bottom:1rem}
.woocommerce div.product p.price{font-family:var(--f-head);font-size:1.8rem;color:var(--gold-dk);font-weight:700;margin-bottom:1.5rem}
.woocommerce div.product .woocommerce-product-details__short-description{color:var(--text-lt);line-height:1.7;margin-bottom:1.5rem}
.woocommerce div.product form.cart{display:flex;align-items:center;flex-wrap:wrap;gap:1rem;margin-bottom:2rem}
.woocommerce div.product form.cart .quantity{margin-right:.5rem}
.woocommerce div.product form.cart input.qty{width:64px;padding:.8rem .5rem;text-align:center;border:1px solid var(--gold-border);border-radius:8px;font-size:.95rem}

@media(max-width:900px){
  .woocommerce div.product{grid-template-columns:1fr;gap:1.5rem}
  .woocommerce div.product .product_title{font-size:1.7rem}
  .woocommerce div.product p.price{font-size:1.5rem}
  .woocommerce div.product form.cart{flex-direction:column;align-items:stretch}
  .woocommerce div.product form.cart .quantity{margin-right:0;margin-bottom:.5rem}
  .ev-buy-now-btn{margin-left:0;width:100%;justify-content:center}
  .woocommerce div.product .single_add_to_cart_button{width:100%;justify-content:center}
}
@media(max-width:480px){
  .woocommerce div.product .product_title{font-size:1.4rem}
}
.woocommerce table.shop_table{border:1px solid var(--border-s)!important}
.woocommerce table.shop_table th{background:var(--bg-warm);color:var(--text);font-weight:700}
.woocommerce-message,.woocommerce-info{background:var(--bg-warm)!important;border-top-color:var(--gold)!important;color:var(--text)!important}
.woocommerce-error{border-top-color:var(--orange)!important}
.woocommerce span.onsale{background:linear-gradient(135deg,var(--orange-dk),var(--orange-lt))!important;border-radius:50%!important;font-weight:800!important;box-shadow:var(--shadow-ora)!important}

/* ══════════════════════════════════════════════════
   MISSING STYLES FIX — was added to assets/css/custom.css
   Covers elements referenced in functions.php that had
   no matching CSS: Buy Now, Wishlist, Badges, Qty selector,
   floating discount badge, age gate. Mobile-first, with
   minimum 44px tap targets per accessibility guidelines.
══════════════════════════════════════════════════ */

/* ── BUY NOW BUTTON — base style ── */
.ev-buy-now-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:.5rem;
  background:linear-gradient(135deg,var(--green-dk),var(--green),var(--green-lt));
  color:#fff!important;padding:.9rem 2rem;border-radius:50px;
  font-weight:700;font-size:.9rem;text-transform:uppercase;letter-spacing:.06em;
  box-shadow:0 6px 28px rgba(26,122,64,.30);
  transition:all .26s cubic-bezier(.4,0,.2,1);
  text-decoration:none;min-height:48px;
}
.ev-buy-now-btn:hover{transform:translateY(-2px);box-shadow:0 10px 36px rgba(26,122,64,.4);color:#fff!important}
@media(max-width:900px){
  .ev-buy-now-btn{width:100%;margin-left:0;margin-top:.5rem}
}

/* ── WISHLIST BUTTON (heart icon) ── */
.ev-wishlist-btn{
  position:absolute;top:.8rem;right:.8rem;z-index:5;
  width:40px;height:40px;min-width:44px;min-height:44px; /* accessible tap target */
  border-radius:50%;background:#fff;border:1px solid var(--border-s);
  display:flex;align-items:center;justify-content:center;
  font-size:1.1rem;color:var(--text-lt);cursor:pointer;
  box-shadow:0 2px 10px rgba(0,0,0,.08);transition:all .2s ease;
}
.ev-wishlist-btn:hover,.ev-wishlist-btn[aria-pressed="true"]{
  background:var(--orange);color:#fff;border-color:transparent;
}
.woocommerce ul.products li.product{position:relative}

/* ── PRODUCT BADGES — "Best Seller" / "New" ── */
.ev-badge{
  position:absolute;top:.8rem;left:.8rem;z-index:5;
  display:inline-block;padding:.3rem .8rem;border-radius:50px;
  font-size:.65rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;
  box-shadow:0 2px 10px rgba(0,0,0,.12);
}
.ev-badge-bestseller{background:linear-gradient(135deg,var(--gold-dk),var(--gold));color:#fff}
.ev-badge-new{background:linear-gradient(135deg,var(--orange-dk),var(--orange));color:#fff}

/* ── QUANTITY SELECTOR ON SHOP LOOP ── */
.ev-loop-qty-row{display:flex;align-items:center;gap:.5rem;margin-top:.75rem;flex-wrap:wrap}
.ev-loop-qty{
  width:56px;min-height:44px; /* accessible tap target */
  text-align:center;border:1px solid var(--gold-border);
  border-radius:8px;font-size:.9rem;padding:.4rem;
  -moz-appearance:textfield;
}
.ev-loop-qty::-webkit-inner-spin-button,.ev-loop-qty::-webkit-outer-spin-button{opacity:1;height:32px}
@media(max-width:480px){
  .ev-loop-qty-row{flex-direction:column;align-items:stretch}
  .ev-loop-qty{width:100%}
}

/* ── AGE GATE — ensure buttons never overflow on very narrow screens ── */
#ev-age-gate > div > div{flex-wrap:wrap}
#ev-age-gate button{min-height:48px;min-width:100px}
@media(max-width:360px){
  #ev-age-gate h2{font-size:1.3rem}
  #ev-age-gate{padding:1rem}
}

/* ── PRODUCT TABS NAV — ensure tap targets stay accessible on mobile ── */
.ev-tab-btn{min-height:44px}

/* ── DELIVERY BADGE SHORTCODE — wraps cleanly on narrow product pages ── */
.ev-delivery-badge{max-width:100%;flex-wrap:wrap;line-height:1.3}

/* ── GENERAL: enlarge small text-link tap targets site-wide for mobile ── */
@media(max-width:768px){
  .svc-link,.read-more{
    display:inline-flex;align-items:center;min-height:44px;padding:.4rem 0;
  }
}

/* ══════════════════════════════════════════════════
   STYLE ADDITIONS — v2.2/2.3
   Powers markup that functions.php outputs: the promo banner,
   the WhatsApp float button, the Top Categories image grid, and
   the Quick View modal + flavour swatches.
   Mobile-first, 44px+ tap targets throughout.

   FIX (v2.3): removed the earlier duplicate/incomplete declarations
   of .ev-discount-float and .ev-whatsapp-float that only set
   padding/min-height with no positioning — those were dead code
   under normal CSS cascade rules, but confusing to maintain. Only
   the complete versions below remain.
══════════════════════════════════════════════════ */

/* ── TOP PROMO BANNER (wp_body_open) ── */
.ev-promo-banner{
  background:var(--bg-warm);border-bottom:1px solid var(--gold-border);
  color:var(--text-md);font-size:.8rem;font-weight:600;
  display:flex;align-items:center;justify-content:center;gap:.8rem;flex-wrap:wrap;
  padding:.55rem 1rem;text-align:center;
}
.ev-promo-banner a{color:var(--gold-dk);font-weight:700}
.ev-promo-banner .promo-sep{color:var(--gold);opacity:.5}
@media(max-width:600px){
  .ev-promo-banner{font-size:.72rem;gap:.5rem;padding:.5rem .75rem}
  .ev-promo-banner .promo-sep{display:none}
  .ev-promo-banner br{display:none}
}

/* ── FLOATING "GET 10% OFF" BADGE (bottom-LEFT) — single, complete declaration ── */
.ev-discount-float{
  position:fixed;left:1.2rem;bottom:1.2rem;z-index:9990;
  background:var(--green);color:#fff;
  padding:.6rem 1.2rem;padding-bottom:calc(.6rem + env(safe-area-inset-bottom));
  border-radius:50px;font-weight:700;font-size:.85rem;
  box-shadow:0 6px 24px rgba(0,0,0,.18);text-decoration:none;
  min-height:44px;display:flex;align-items:center;
}
.ev-discount-float:hover{color:#fff;transform:translateY(-2px)}
@media(max-width:768px){
  .ev-discount-float{bottom:calc(1rem + env(safe-area-inset-bottom));font-size:.8rem;padding:.5rem 1rem;left:1rem}
}

/* ── FLOATING WHATSAPP BUTTON (bottom-RIGHT) — single, complete declaration ── */
.ev-whatsapp-float{
  position:fixed;right:1.2rem;bottom:1.2rem;z-index:9991;
  width:56px;height:56px;border-radius:50%;
  background:#25D366;display:flex;align-items:center;justify-content:center;
  box-shadow:0 6px 24px rgba(37,211,102,.45);
  transition:all .26s cubic-bezier(.4,0,.2,1);
}
.ev-whatsapp-float:hover{transform:translateY(-2px) scale(1.05);box-shadow:0 10px 32px rgba(37,211,102,.55)}
@media(max-width:768px){
  .ev-whatsapp-float{width:50px;height:50px;right:1rem;bottom:calc(1rem + env(safe-area-inset-bottom))}
}

/* ── TOP CATEGORIES GRID — big image tiles ── */
.ev-top-cats-grid{
  display:grid;grid-template-columns:repeat(5,1fr);gap:1.2rem;
}
.ev-top-cat-tile{
  display:flex;flex-direction:column;align-items:center;gap:.7rem;
  text-decoration:none;transition:transform .26s ease;
}
.ev-top-cat-tile:hover{transform:translateY(-6px)}
.ev-top-cat-img{
  width:100%;aspect-ratio:1/1;border-radius:var(--r-xl);overflow:hidden;
  background:var(--bg-soft);border:1px solid var(--border-s);
  box-shadow:var(--shadow-sm);
}
.ev-top-cat-img img{width:100%;height:100%;object-fit:cover}
.ev-top-cat-placeholder{
  width:100%;height:100%;display:flex;align-items:center;justify-content:center;
  font-size:2.5rem;opacity:.35;
}
.ev-top-cat-label{
  font-weight:700;font-size:.9rem;color:var(--text);text-align:center;
}
@media(max-width:1100px){.ev-top-cats-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:600px){.ev-top-cats-grid{grid-template-columns:repeat(2,1fr);gap:.9rem}
  .ev-top-cat-label{font-size:.8rem}
}

/* ══════════════════════════════════════════════════
   QUICK VIEW MODAL + VARIATION SWATCHES
══════════════════════════════════════════════════ */
.ev-quickview-btn{
  width:100%;margin-top:.6rem;
  background:var(--bg-card);border:1.5px solid var(--gold-border);
  color:var(--gold-dk);padding:.6rem 1rem;border-radius:8px;
  font-weight:700;font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;
  cursor:pointer;transition:all .2s;min-height:44px;
}
.ev-quickview-btn:hover{background:var(--gold-soft);border-color:var(--gold)}

.ev-qv-modal{
  position:fixed;inset:0;z-index:99998;background:rgba(26,26,26,.6);
  display:flex;align-items:center;justify-content:center;padding:1rem;
  opacity:0;visibility:hidden;transition:opacity .25s ease;
}
.ev-qv-modal.open{opacity:1;visibility:visible}
.ev-qv-modal-inner{
  background:var(--white);border-radius:var(--r-xl);
  max-width:800px;width:100%;max-height:90vh;overflow-y:auto;
  position:relative;padding:2rem;box-shadow:var(--shadow-lg);
}
.ev-qv-close{
  position:absolute;top:1rem;right:1rem;z-index:2;
  width:40px;height:40px;border-radius:50%;background:var(--bg-soft);
  border:1px solid var(--border-s);font-size:1.1rem;cursor:pointer;
  display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;
}
.ev-qv-inner{display:grid;grid-template-columns:1fr 1fr;gap:2rem}
.ev-qv-image img{width:100%;border-radius:var(--r-lg)}
.ev-qv-summary h3{font-family:var(--f-head);font-size:1.5rem;margin-bottom:.6rem}
.ev-qv-price{color:var(--gold-dk);font-size:1.3rem;font-weight:700;margin-bottom:1rem}
.ev-qv-desc{color:var(--text-lt);margin-bottom:1.5rem;line-height:1.7}
.ev-qv-loading{text-align:center;padding:3rem;color:var(--text-lt)}
@media(max-width:700px){
  .ev-qv-inner{grid-template-columns:1fr}
  .ev-qv-modal-inner{padding:1.5rem;max-height:85vh}
}

.ev-swatch-wrap{display:flex;flex-wrap:wrap;gap:.6rem;margin:.6rem 0 1rem}
.ev-swatch-btn{
  background:var(--bg-card);border:1.5px solid var(--gold-border);
  color:var(--text-md);padding:.6rem 1.1rem;border-radius:50px;
  font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s;
  min-height:44px;
}
.ev-swatch-btn:hover{border-color:var(--gold);background:var(--gold-soft)}
.ev-swatch-btn.active{
  background:linear-gradient(135deg,var(--gold-dk),var(--gold));
  color:#fff;border-color:transparent;box-shadow:var(--shadow-gold);
}
@media(max-width:480px){
  .ev-swatch-btn{flex:1 1 calc(50% - .6rem);text-align:center}
}

.ev-tab-nav{display:flex;gap:1rem;justify-content:center;margin-bottom:2rem;flex-wrap:wrap}
.ev-tab-btn{
  background:var(--bg-soft);border:1.5px solid var(--border-s);
  padding:.6rem 1.4rem;border-radius:50px;font-weight:700;font-size:.85rem;
  cursor:pointer;transition:all .2s;min-height:44px;
}
.ev-tab-btn.active{background:linear-gradient(135deg,var(--gold-dk),var(--gold));color:#fff;border-color:transparent}

.ev-delivery-badge{
  display:inline-flex;align-items:center;gap:.5rem;
  background:var(--green-soft);border:1px solid rgba(26,122,64,.25);
  color:var(--green);padding:.5rem 1rem;border-radius:50px;
  font-size:.82rem;font-weight:700;margin:.5rem 0;max-width:100%;flex-wrap:wrap;line-height:1.3;
}

/* ══════════════════════════════════════════════════
   v2.4 — Issue Prioritization Report fixes (H6)
   Classes replacing inline styles removed from front-page.php.
══════════════════════════════════════════════════ */
.section-cta{text-align:center;margin-top:3rem}

.reason-list{margin:1.5rem 0 2rem}
.reason-item{display:flex;align-items:center;gap:.75rem;padding:.6rem 0;border-bottom:1px solid var(--border-s);font-size:.92rem;color:var(--text-md)}
.reason-item a{color:var(--gold-dk);border-bottom:1px solid var(--gold-border)}
.reason-item a:hover{color:var(--orange-dk);border-bottom-color:var(--orange)}
.reason-check{color:var(--green);font-weight:700;text-shadow:0 0 10px var(--green-glow)}

.box-card{
  background:var(--bg-card);border:1px solid var(--border-s);
  border-radius:var(--r-xl);text-align:center;padding:1.6rem;
  transition:all var(--t) var(--ease);box-shadow:var(--shadow-sm);
}
.box-card:hover{transform:translateY(-8px);border-color:var(--gold-border);box-shadow:var(--shadow-gold),var(--shadow-lg)}

.hero-float-stars-sub{font-size:.78rem;color:var(--text-lt)}

.age-notice{
  background:var(--orange-soft);border:2px solid rgba(232,96,10,.3);
  border-radius:var(--r-xl);padding:1.8rem 2rem;margin:0 auto;max-width:900px;
  display:flex;gap:1.5rem;align-items:center;flex-wrap:wrap;
}
.age-notice-icon{font-size:2.5rem}
.age-notice-title{font-weight:700;color:var(--orange-dk);font-size:1rem;margin-bottom:.35rem}
.age-notice-text{margin:0;font-size:.88rem;color:var(--text-md)}

.blog-header-row{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:3rem;flex-wrap:wrap;gap:1rem}
.blog-empty-state{grid-column:1/-1;text-align:center;padding:3rem 1rem;color:var(--text-lt)}

/* ── Inline footer "Chat on WhatsApp" button (separate from the
   floating .ev-whatsapp-float button) — matches WhatsApp's own brand
   green, consistent with the floating button's color language. ── */
.whatsapp-btn{
  display:inline-flex;align-items:center;gap:.6rem;
  background:#25D366;color:#fff!important;
  padding:.75rem 1.6rem;border-radius:50px;
  font-weight:700;font-size:.85rem;text-decoration:none;
  box-shadow:0 4px 20px rgba(37,211,102,.35);
  transition:all var(--t) var(--ease);min-height:44px;
}
.whatsapp-btn:hover{transform:translateY(-2px);box-shadow:0 8px 28px rgba(37,211,102,.45);color:#fff!important}
.whatsapp-btn svg{flex-shrink:0}


/* ══════════════════════════════════════════════════
   v2.6 — archive-product.php + content-product.php +
   single-product.php audit fixes
══════════════════════════════════════════════════ */

/* ── Shop archive hero ── */
.shop-title{font-size:clamp(1.9rem,4.5vw,3.2rem);margin-top:.8rem}
.shop-desc{color:var(--text-lt);font-size:.95rem;line-height:1.8;max-width:760px;margin-top:.6rem}

/* ── Shop toolbar (result count + ordering dropdown) ── */
.shop-toolbar{
  display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;
  gap:1rem;margin-bottom:2.5rem;padding-bottom:1.5rem;border-bottom:1px solid var(--border-s);
}
.shop-result-count p{margin:0;font-size:.85rem;color:var(--text-lt)}
.shop-ordering select{
  background:var(--white);border:1.5px solid var(--gold-border);border-radius:8px;
  padding:.6rem 1rem;font-size:.85rem;color:var(--text-md);min-height:44px;cursor:pointer;
}
@media(max-width:600px){
  .shop-toolbar{flex-direction:column;align-items:stretch}
  .shop-ordering select{width:100%}
}

/* ── Single product: inline-style-to-class conversions ── */
.single-product-section{padding-top:60px}
.product-tabs-wrap{margin-top:4rem}
.related-products-section{padding:100px 0;background:var(--bg-soft)}

/* ── Brand link near product title ── */
.product-brand-link{
  display:inline-block;font-family:var(--f-mono);font-size:.72rem;font-weight:700;
  text-transform:uppercase;letter-spacing:.15em;color:var(--gold-dk);
  margin-bottom:.5rem;border-bottom:1px solid var(--gold-border);
}
.product-brand-link:hover{color:var(--orange-dk);border-bottom-color:var(--orange)}

/* ── Stock status badge ── */
.stock-badge{
  display:inline-flex;align-items:center;gap:.5rem;
  padding:.5rem 1rem;border-radius:50px;font-size:.82rem;font-weight:700;
  margin:.8rem 0;
}
.stock-in{background:var(--green-soft);color:var(--green);border:1px solid rgba(26,122,64,.25)}
.stock-low{background:var(--orange-soft);color:var(--orange-dk);border:1px solid rgba(232,96,10,.3)}
.stock-out{background:rgba(0,0,0,.05);color:var(--text-lt);border:1px solid var(--border-s)}

/* ── Trust badges reused on product page (SVG icons now, was emoji) ── */
.product-trust{margin-top:1.5rem;padding-top:1.5rem}
.product-trust .trust-icon{display:inline-flex;color:var(--gold-dk)}

/* ── Delivery information box ── */
.delivery-info-box{
  background:var(--bg-warm);border:1px solid var(--gold-border);border-radius:var(--r-lg);
  padding:1.4rem 1.6rem;margin:1.5rem 0;
}
.delivery-info-box h4{font-size:.9rem;margin-bottom:.8rem;color:var(--text)}
.delivery-info-box ul{display:flex;flex-direction:column;gap:.6rem}
.delivery-info-box li{display:flex;align-items:center;gap:.7rem;font-size:.86rem;color:var(--text-md)}
.dib-icon{display:inline-flex;color:var(--gold-dk);flex-shrink:0}

/* ── Payment method badges ── */
.payment-icons{display:flex;flex-wrap:wrap;gap:.5rem;margin:1.2rem 0}
.pay-badge{
  background:var(--bg-soft);border:1px solid var(--border-s);border-radius:8px;
  padding:.4rem .8rem;font-size:.75rem;font-weight:600;color:var(--text-md);
}

/* ── Shipping & Returns accordion (native <details>) ── */
.shipping-returns{
  border:1px solid var(--border-s);border-radius:var(--r-lg);margin:1.5rem 0;overflow:hidden;
}
.shipping-returns summary{
  padding:1rem 1.3rem;cursor:pointer;font-weight:700;font-size:.9rem;color:var(--text);
  background:var(--bg-card);list-style:none;display:flex;align-items:center;
  min-height:44px;
}
.shipping-returns summary::-webkit-details-marker{display:none}
.shipping-returns summary::before{content:'+ ';color:var(--gold-dk);font-weight:800}
.shipping-returns[open] summary::before{content:'− '}
.shipping-returns-body{padding:0 1.3rem 1.3rem;background:var(--bg-warm)}
.shipping-returns-body p{font-size:.86rem;margin-bottom:.8rem}
.shipping-returns-body p:last-child{margin-bottom:0}

/* ── Share links ── */
.product-share{display:flex;align-items:center;gap:.8rem;flex-wrap:wrap;margin:1.2rem 0;font-size:.82rem}
.product-share-label{font-weight:700;color:var(--text-md)}
.product-share a{
  color:var(--gold-dk);border-bottom:1px solid var(--gold-border);min-height:44px;
  display:inline-flex;align-items:center;
}
.product-share a:hover{color:var(--orange-dk);border-bottom-color:var(--orange)}

/* ── Product-page FAQ block ── */
.product-faq-wrap{margin-top:3rem}
.product-faq-heading{font-size:1.4rem;margin-bottom:1.2rem}

/* ── Sticky mobile/tablet Add to Cart bar ── */
.sticky-cart{
  position:fixed;left:0;right:0;bottom:0;z-index:9985;
  background:var(--white);border-top:1px solid var(--border-s);
  box-shadow:0 -6px 24px rgba(0,0,0,.1);
  transform:translateY(100%);opacity:0;pointer-events:none;
  transition:transform .3s var(--ease),opacity .3s var(--ease);
  padding:.7rem 0;padding-bottom:calc(.7rem + env(safe-area-inset-bottom));
}
.sticky-cart.visible{transform:translateY(0);opacity:1;pointer-events:auto}
.sticky-cart-inner{display:flex;align-items:center;justify-content:space-between;gap:1rem}
.sticky-cart-info{display:flex;align-items:center;gap:.8rem;min-width:0}
.sticky-cart-info img{width:44px;height:44px;border-radius:8px;object-fit:cover;flex-shrink:0}
.sticky-cart-text{min-width:0}
.sticky-cart-title{
  font-size:.82rem;font-weight:700;color:var(--text);white-space:nowrap;
  overflow:hidden;text-overflow:ellipsis;max-width:180px;
}
.sticky-cart-price{font-size:.8rem;color:var(--gold-dk);font-weight:700}
.sticky-cart-btn{padding:.65rem 1.4rem;font-size:.78rem;flex-shrink:0}
@media(min-width:1025px){
  .sticky-cart{display:none}
}
@media(max-width:480px){
  .sticky-cart-title{max-width:120px}
}

/* ══════════════════════════════════════════════════
   v2.7 — Amazon-style linear product flow +
   Frequently Bought Together
══════════════════════════════════════════════════ */
.product-full-description,.product-specs,.product-reviews{margin-top:3rem;padding-top:3rem;border-top:1px solid var(--border-s)}
.product-full-description:first-child{margin-top:0;padding-top:0;border-top:none}

/* WooCommerce's default additional-information table has no custom
   styling anywhere yet since it uses its own class, not .shop_table */
.woocommerce-product-attributes{width:100%;border-collapse:collapse;margin-top:1rem}
.woocommerce-product-attributes th,.woocommerce-product-attributes td{
  padding:.7rem 1rem;border:1px solid var(--border-s);font-size:.88rem;text-align:left;
}
.woocommerce-product-attributes th{background:var(--bg-warm);font-weight:700;width:35%}

.fbt-section{margin-top:4rem;padding-top:3rem;border-top:1px solid var(--border-s)}

/* ══════════════════════════════════════════════════
   v2.8 — comments.php (reviews on product pages,
   comments on regular pages/posts)
══════════════════════════════════════════════════ */
.comments-area{margin-top:2rem}
.comments-count{font-size:1.2rem;margin-bottom:1.5rem}
.comment-list{list-style:none;display:flex;flex-direction:column;gap:1.2rem}
.comment-list .comment{
  background:var(--bg-card);border:1px solid var(--border-s);border-radius:var(--r-lg);
  padding:1.2rem 1.4rem;
}
.no-comments{color:var(--text-lt);font-size:.9rem;margin-bottom:1.5rem}
#commentform{margin-top:2rem}
#commentform h3{font-size:1.1rem;margin-bottom:1rem}
#commentform p{margin-bottom:1rem}
#commentform input[type="text"],#commentform input[type="email"],#commentform textarea{
  width:100%;border:1.5px solid var(--gold-border);border-radius:8px;
  padding:.7rem 1rem;font-size:.9rem;font-family:var(--f-body);min-height:44px;
}
#commentform textarea{min-height:120px}