/* ==========================================================================
   Gorilla Dirt theme — design system
   Brand gold #FEB442 · deep gold #D98A1E · brown header #302413 · ink #141210
   Fonts: Oswald (headings) + Inter (body)
   ========================================================================== */
:root{
  --fire:#FEB442; --fire-bright:#FEB442; --fire-deep:#D98A1E;
  --ink:#141210; --charcoal:#211E1B; --brown:#302413;
  --paper:#ffffff; --paper-2:#EDE7DC; --line:#E1D9CC; --muted:#6E655B;
  --white:#fff; --sand:#B9AA93; --ok:#2E7D46;
  --radius:14px; --shadow:0 10px 30px rgba(20,18,16,.10); --shadow-lg:0 24px 60px rgba(20,18,16,.22);
  --gd-edge:48px; /* side gutter for body content (header/footer keep their own) */
}
@media(max-width:1000px){:root{--gd-edge:32px}}
@media(max-width:600px){:root{--gd-edge:18px}}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--ink);background:var(--paper);line-height:1.5;-webkit-font-smoothing:antialiased;overflow-x:clip}
h1,h2,h3,h4,.display{font-family:Oswald,Inter,sans-serif;letter-spacing:.01em;line-height:1.05;margin:0}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
button{font-family:inherit;cursor:pointer;border:none;background:none}
.wrap{max-width:1240px;margin:0 auto;padding:0 var(--gd-edge)}
/* Header & footer keep the tighter original gutter; body content gets more room. */
.site-header .wrap,.site-footer .wrap{padding-left:22px;padding-right:22px}
/* Body-content containers that don't use .wrap get the wider gutter too. */
.gd-product-top,.woocommerce-tabs,.shop-layout,.pdp,
.single-product .related.products,.single-product .upsells.products,
.gd-crumb,.woocommerce-breadcrumb,
.woocommerce-cart .gd-wc-main,.woocommerce-cart .woocommerce,.woocommerce-cart .woocommerce-notices-wrapper,
.gd-wc-page .entry-title,.gd-page,.gd-page-wide{padding-left:var(--gd-edge)!important;padding-right:var(--gd-edge)!important}
.upper{text-transform:uppercase;letter-spacing:.14em}
.eyebrow{font-family:Oswald;font-weight:600;text-transform:uppercase;letter-spacing:.22em;font-size:12px;color:var(--fire-deep)}
.gd-sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* ---------- Buttons ---------- */
.btn,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit,.woocommerce a.button.alt,.woocommerce button.button.alt{display:inline-flex;align-items:center;gap:9px;font-weight:700;font-size:14px;padding:14px 26px;border-radius:10px;transition:.18s transform,.18s box-shadow,.18s background;text-transform:uppercase;letter-spacing:.06em;font-family:Oswald;line-height:1}
.btn-fire,.woocommerce a.button.alt,.woocommerce button.button.alt,.woocommerce #respond input#submit,.woocommerce a.button,.woocommerce button.button{background:var(--fire-bright);color:var(--ink);box-shadow:none}
.btn-fire:hover,.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover{transform:translateY(-2px);box-shadow:none;background:#FFC15E;color:var(--ink)}
.btn-dark{background:var(--ink);color:#fff}
.btn-dark:hover{transform:translateY(-2px)}
.btn-ghost{background:transparent;color:#fff;border:2px solid rgba(255,255,255,.55)}
.btn-ghost:hover{background:#fff;color:var(--ink)}
.btn-outline{border:2px solid var(--ink);color:var(--ink)}
.btn-outline:hover{background:var(--ink);color:#fff}
.btn-sm{padding:10px 16px;font-size:12px}
/* Force gold on WooCommerce "alt" / add-to-cart buttons (beats WC default purple) */
.woocommerce a.button.alt,.woocommerce button.button.alt,.woocommerce input.button.alt,.woocommerce #respond input#submit,.woocommerce .single_add_to_cart_button,.woocommerce .checkout-button{background:var(--fire-bright)!important;color:var(--ink)!important;border:0!important;text-shadow:none!important}
.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover,.woocommerce .single_add_to_cart_button:hover,.woocommerce .checkout-button:hover{background:#FFC15E!important;color:var(--ink)!important}

/* ---------- Announcement ---------- */
.announce{background:#241A0E;color:#F4E9D8;text-align:center;font-size:12.5px;font-weight:600;letter-spacing:.08em;padding:9px 12px;text-transform:uppercase;font-family:Oswald}
.announce b{color:var(--fire)}

/* ---------- Header ---------- */
.site-header{position:sticky;top:0;z-index:60;background:var(--brown);backdrop-filter:blur(8px);border-bottom:1px solid rgba(254,180,66,.22)}
.site-header .nav{display:flex;align-items:center;gap:26px;height:70px}
.gd-logo,.logo{display:inline-block;height:34px;width:172px;background:var(--fire);
  -webkit-mask:var(--gd-logo) left center/contain no-repeat;mask:var(--gd-logo) left center/contain no-repeat}
.gd-logo-link{display:inline-flex;align-items:center}
.gd-logo-text{font-family:Oswald;font-weight:700;text-transform:uppercase;letter-spacing:.04em;font-size:26px;color:var(--fire)}
.foot-logo.gd-logo-text,.mnav-head .gd-logo-text{font-size:22px}
.mainnav{margin-left:8px}
.mainnav ul{display:flex;gap:24px;list-style:none;margin:0;padding:0;align-items:center}
.mainnav a{color:var(--fire);font-family:Oswald;font-weight:600;text-transform:uppercase;letter-spacing:.09em;font-size:14px;padding:6px 0;position:relative;display:inline-block}
.mainnav a::after{content:"";position:absolute;left:0;bottom:-2px;height:2px;width:0;background:var(--fire);transition:.2s}
.mainnav li:hover>a::after,.mainnav .current-menu-item>a::after{width:100%}
.mainnav li:hover>a,.mainnav .current-menu-item>a{color:#FFD98A}
.mainnav li{position:relative}
.mainnav ul ul{display:none;position:absolute;top:100%;left:0;background:var(--brown);padding:8px 0;min-width:210px;border-radius:0 0 10px 10px;box-shadow:var(--shadow-lg);z-index:70}
.mainnav li:hover>ul{display:block}
.mainnav ul ul li{display:block}
.mainnav ul ul a{display:block;padding:9px 18px;font-size:13px}
.nav-tools{margin-left:auto;display:flex;align-items:center;gap:18px}
.icon-btn{color:var(--fire);display:flex;align-items:center;gap:7px;font-size:13px;font-weight:600}
.icon-btn:hover{color:#FFD98A}
.icon-btn svg{width:21px;height:21px;stroke:currentColor;fill:none;stroke-width:1.7}
.cart-btn{position:relative}
.cart-count{position:absolute;top:-8px;right:-10px;background:var(--fire-bright);color:var(--ink);font-size:11px;font-weight:800;min-width:18px;height:18px;border-radius:9px;display:flex;align-items:center;justify-content:center;padding:0 4px;font-family:Inter}
.hamb{display:none}

/* ---------- Mobile nav drawer ---------- */
.gd-overlay{position:fixed;inset:0;background:rgba(20,18,16,.5);z-index:90;opacity:0;visibility:hidden;transition:.3s;backdrop-filter:blur(2px)}
.gd-overlay.show{opacity:1;visibility:visible}

/* Search overlay */
.gd-search-backdrop{position:fixed;inset:0;background:rgba(20,18,16,.5);z-index:119;opacity:0;visibility:hidden;transition:.28s;backdrop-filter:blur(2px)}
.gd-search-backdrop.show{opacity:1;visibility:visible}
.gd-search{position:fixed;top:0;left:0;right:0;z-index:120;background:var(--paper);box-shadow:0 8px 26px rgba(0,0,0,.14);transform:translateY(-100%);transition:transform .3s cubic-bezier(.4,0,.2,1)}
.gd-search.show{transform:translateY(0)}
.gd-search-panel{max-width:900px;margin:0 auto;display:flex;align-items:center;gap:12px;padding:20px 22px}
.gd-search-form{flex:1;display:flex;align-items:center;gap:12px;border:2px solid var(--line);border-radius:12px;padding:5px 5px 5px 16px;background:#fff}
.gd-search-form:focus-within{border-color:var(--fire-deep)}
.gd-search-ico{width:22px;height:22px;stroke:var(--muted);fill:none;stroke-width:2;flex:0 0 auto}
.gd-search-input{flex:1;border:none;outline:none;background:none;font-family:Inter;font-size:17px;color:var(--ink);padding:10px 0;min-width:0}
.gd-search-go{white-space:nowrap;padding:11px 24px!important}
.gd-search-close{background:none;border:none;font-size:30px;line-height:1;color:var(--muted);cursor:pointer;width:42px;height:42px;flex:0 0 auto;border-radius:50%}
.gd-search-close:hover{color:var(--ink);background:var(--paper-2)}
@media(max-width:600px){.gd-search-panel{padding:14px 16px;gap:8px}.gd-search-go{display:none}.gd-search-input{font-size:16px}}
.mobilenav{position:fixed;top:0;left:-340px;width:320px;max-width:88vw;height:100%;background:var(--brown);z-index:100;transition:.32s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;box-shadow:var(--shadow-lg)}
.mobilenav.show{left:0}
.mnav-head{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;border-bottom:1px solid rgba(254,180,66,.2)}
.mnav-head .x{color:var(--fire);font-size:28px;line-height:1}
.mnav-links{flex:1;overflow-y:auto;padding:10px 0}
.mnav-links ul{list-style:none;margin:0;padding:0}
.mnav-links a{display:flex;align-items:center;justify-content:space-between;color:var(--fire);font-family:Oswald;font-weight:600;text-transform:uppercase;letter-spacing:.06em;font-size:16px;padding:15px 22px;border-bottom:1px solid rgba(255,255,255,.06)}
.mnav-links a:active{background:rgba(254,180,66,.1)}
.mnav-foot{padding:18px 22px;border-top:1px solid rgba(254,180,66,.2);display:flex;gap:10px}
.mnav-foot a{flex:1;text-align:center;color:var(--ink);background:var(--fire);border-radius:9px;padding:12px;font-family:Oswald;font-weight:700;text-transform:uppercase;font-size:13px}
.mnav-foot a.ghost{background:transparent;color:var(--fire);border:1.5px solid var(--fire)}

/* ---------- Hero ---------- */
.hero{position:relative;min-height:640px;display:flex;align-items:center;color:#fff;overflow:hidden}
.hero-bg{position:absolute;inset:0;background-size:cover;background-position:center;transform:scale(1.05)}
.hero-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,18,16,.86) 0%,rgba(20,18,16,.55) 45%,rgba(20,18,16,.15) 100%)}
.hero-inner{position:relative;z-index:2;max-width:642px;padding:60px 22px}
.hero h1{font-size:clamp(44px,6vw,80px);font-weight:700;text-transform:uppercase;margin:14px 0 8px}
.hero h1 .em{color:var(--fire)}
.hero p{font-size:19px;color:#E7DFD3;max-width:490px;margin:0 0 30px}
.hero-cta{display:flex;gap:14px;flex-wrap:wrap}
.hero-badges{display:flex;gap:26px;margin-top:38px;flex-wrap:wrap}
.hero-badges div{font-size:13px;color:#D8CFC2;display:flex;align-items:center;gap:8px;font-weight:600}
.hero-badges svg{width:18px;height:18px;stroke:var(--fire);fill:none;stroke-width:2}

/* ---------- Trust strip ---------- */
.trust{background:var(--ink);color:#E7DFD3}
.trust .wrap{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;padding:16px 22px}
.trust div{display:flex;align-items:center;gap:10px;font-size:13px;font-weight:600;font-family:Oswald;letter-spacing:.06em;text-transform:uppercase}
.trust svg{width:20px;height:20px;stroke:var(--fire);fill:none;stroke-width:1.8}

/* ---------- Sections ---------- */
.gd-section{padding:70px 0}
.sec-head{text-align:center;max-width:640px;margin:0 auto 42px}
.sec-head h2{font-size:clamp(30px,4vw,46px);font-weight:700;text-transform:uppercase;margin:8px 0}
.sec-head p{color:var(--muted);font-size:16px;margin:0}
.section-alt{background:var(--paper-2)}
/* Homepage Instagram section — white background */
.gd-ig-section{background:#fff}
.gd-ig-feed{margin-top:8px}
.section-dark{background:var(--ink);color:#F4F0E9}
.section-dark .sec-head p{color:#B7AD9F}

/* ---------- Category grid ---------- */
.cat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.cat{position:relative;border-radius:var(--radius);overflow:hidden;aspect-ratio:3/4;box-shadow:var(--shadow)}
.cat img{width:100%;height:100%;object-fit:cover;transition:.5s}
.cat:hover img{transform:scale(1.07)}
.cat::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(20,18,16,.85))}
.cat-info{position:absolute;bottom:0;left:0;right:0;padding:20px;z-index:2;color:#fff}
.cat-info h3{font-size:22px;font-weight:700;text-transform:uppercase}
.cat-info span{font-size:12.5px;color:#D8CFC2}
.cat-info .go{margin-top:8px;display:inline-flex;align-items:center;gap:6px;color:var(--fire);font-family:Oswald;font-weight:600;font-size:13px;text-transform:uppercase;letter-spacing:.08em;opacity:0;transform:translateY(6px);transition:.25s}
.cat:hover .go{opacity:1;transform:none}

/* ---------- Product cards (home + shop loop) ---------- */
.prod-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.gd-card,.woocommerce ul.products li.product,ul.products li.product{background:#fff;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);transition:.22s;display:flex;flex-direction:column;position:relative;margin:0!important;list-style:none;float:none!important;width:auto!important;clear:none!important;align-self:stretch}
.gd-card:hover,ul.products li.product:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg)}
/* Mobile-first: 2 columns by default, wider grids at >=768px (avoids specificity wars) */
.woocommerce ul.products,ul.products{display:grid!important;grid-template-columns:repeat(2,1fr)!important;gap:16px!important;list-style:none!important;margin:0!important;padding:0!important;align-items:stretch}
ul.products::before,ul.products::after{display:none!important;content:none!important}
@media(min-width:768px){
	.woocommerce ul.products,ul.products{grid-template-columns:repeat(3,1fr)!important;gap:22px!important}
	.woocommerce ul.products.columns-1,ul.products.columns-1{grid-template-columns:1fr!important}
	.woocommerce ul.products.columns-2,ul.products.columns-2{grid-template-columns:repeat(2,1fr)!important}
}
@media(min-width:1024px){
	.woocommerce ul.products.columns-4,ul.products.columns-4{grid-template-columns:repeat(4,1fr)!important}
}
.card-img{position:relative;aspect-ratio:1/1;overflow:hidden;background:var(--paper-2)}
.card-img img{width:100%;height:100%;object-fit:cover;transition:.4s}
.gd-card:hover .card-img img,ul.products li.product:hover img{transform:scale(1.05)}
ul.products li.product a img{margin:0}
.tag{position:absolute;top:12px;left:12px;z-index:2;font-family:Oswald;font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.08em;padding:5px 10px;border-radius:6px;color:#fff}
.tag.sale,ul.products li.product .onsale{background:var(--fire-bright);color:var(--ink);position:absolute;top:12px;left:12px;margin:0;min-height:auto;min-width:auto;border-radius:6px;padding:5px 10px;font-family:Oswald;font-weight:600;font-size:11px}
.tag.new{background:var(--ink)}
.tag.bestseller{background:var(--fire-deep);color:#fff}
.tag.pick{background:var(--brown);color:var(--fire)}
.tag.magsafe{background:rgba(20,18,16,.82);color:#fff;display:flex;align-items:center;gap:5px}
.tag.magsafe::before{content:"";width:9px;height:9px;border:2px solid var(--fire);border-radius:50%}
.tag.design{background:var(--fire);color:var(--ink)}
.card-body{padding:16px 16px 18px;display:flex;flex-direction:column;gap:6px;flex:1}
.stars,.star-rating{color:var(--fire);font-size:13px;letter-spacing:1px}
.gd-card h3,.woocommerce ul.products li.product .woocommerce-loop-product__title{font-family:Inter;font-size:15px;font-weight:600;line-height:1.3}
.variant-line{font-size:12.5px;color:var(--fire-deep);font-weight:700;display:flex;align-items:center;gap:6px}
.variant-line::before{content:"";width:12px;height:12px;border-radius:3px;background:var(--vswatch,var(--fire));box-shadow:0 0 0 1px rgba(0,0,0,.15)}
.price,ul.products li.product .price{margin-top:auto;font-family:Oswald;font-weight:700;font-size:19px;color:var(--ink)}
.price .was,ul.products li.product .price del{color:var(--muted);text-decoration:line-through;font-weight:500;font-size:15px;margin-right:7px;opacity:1}
.price .now,ul.products li.product .price ins{color:var(--fire-deep);text-decoration:none}

/* Custom loop card (matches mockup): badge, heart, image, rating, title, price, hover add-to-cart */
.woocommerce ul.products li.product .card-img{position:relative;aspect-ratio:1/1;overflow:hidden;background:var(--paper-2)}
.woocommerce ul.products li.product .card-img .gd-card-imglink{display:block;width:100%;height:100%}
.woocommerce ul.products li.product .card-img img{width:100%!important;height:100%!important;object-fit:cover;margin:0!important;transition:.4s;border-radius:0}
.woocommerce ul.products li.product:hover .card-img img{transform:scale(1.05)}
.woocommerce ul.products li.product .wish{position:absolute;top:10px;right:10px;z-index:3;width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.92);display:flex;align-items:center;justify-content:center;border:0;box-shadow:0 2px 6px rgba(20,18,16,.12)}
.woocommerce ul.products li.product .wish svg{width:17px;height:17px;stroke:var(--ink);fill:none;stroke-width:1.8;transition:.15s}
.woocommerce ul.products li.product .wish.on svg{fill:var(--fire);stroke:var(--fire)}
.woocommerce ul.products li.product .quick{position:absolute;left:12px;right:12px;bottom:12px;z-index:3;opacity:0;transform:translateY(10px);transition:.24s}
.woocommerce ul.products li.product:hover .quick{opacity:1;transform:none}
.woocommerce ul.products li.product .quick .button,.woocommerce ul.products li.product .quick .added_to_cart{display:flex!important;width:100%!important;justify-content:center;margin:0!important;background:var(--ink)!important;color:#fff!important;font-size:12px!important;padding:12px!important;text-align:center;box-shadow:none!important}
.woocommerce ul.products li.product .quick .button:hover{background:var(--fire)!important;color:var(--ink)!important;transform:none}
.woocommerce ul.products li.product .quick .loading{opacity:.6}
.woocommerce ul.products li.product .card-body{padding:16px!important;display:flex;flex-direction:column;gap:6px;flex:1}
.woocommerce ul.products li.product .card-body .stars{font-size:13px;color:var(--fire);letter-spacing:1px;min-height:18px}
.woocommerce ul.products li.product .card-body .stars.no-rating{color:var(--line)}
.woocommerce ul.products li.product .card-body .stars span{color:var(--muted);font-size:12px;margin-left:5px;letter-spacing:0}
.woocommerce ul.products li.product .card-body .woocommerce-loop-product__title{font-family:Inter;font-size:15px;font-weight:600;line-height:1.3;padding:0!important;margin:0;color:var(--ink)}
.woocommerce ul.products li.product .card-body .price{padding:0!important;margin:auto 0 0 0!important;font-family:Oswald;font-weight:700;font-size:19px;color:var(--ink)}
.woocommerce ul.products li.product .card-body .price del{color:var(--muted);font-weight:500;font-size:15px;margin-right:6px;opacity:1}
.woocommerce ul.products li.product .card-body .price ins{color:var(--fire-deep);text-decoration:none}
/* Category header description (single, styled) */
.shop-head .term-description,.shop-head .woocommerce-product-search{color:var(--muted);margin-top:8px;max-width:600px}
.shop-head .term-description p{color:var(--muted);margin:0}

/* ---------- Single product (styled to match mockup) ---------- */
.single-product div.product{max-width:1240px;margin:0 auto;padding:0;display:block;position:relative}
.single-product .gd-product-top{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:52px;align-items:start;padding:24px 22px 10px;position:relative}
.single-product .gd-product-top .woocommerce-product-gallery{margin:0;float:none!important;width:auto!important;min-width:0;max-width:100%;align-self:start;overflow:hidden}
/* Constrain only the OUTER flexslider box. The inner __wrapper must be free to
   take flexslider's computed (wide, multi-slide) width — capping it makes the
   slides wrap vertically and pushes the active image out of view. */
.single-product .gd-product-top .woocommerce-product-gallery .flexslider{width:auto!important;max-width:100%;margin:0}
.single-product .gd-product-top .summary{min-width:0;margin:0}
.single-product .woocommerce-product-gallery__wrapper{margin:0}
.single-product .woocommerce-product-gallery__image{border-radius:var(--radius);overflow:hidden;background:#fff}
.single-product .woocommerce-product-gallery__image img{border-radius:var(--radius)}
.single-product .gd-thumb-scroller{position:relative;margin-top:12px;overflow:hidden}
.single-product .woocommerce-product-gallery .flex-control-thumbs{display:flex!important;gap:10px!important;margin:0!important;padding:0!important;list-style:none;flex-wrap:nowrap!important;width:100%!important;max-width:100%!important;overflow-x:auto!important;overflow-y:hidden!important;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}
.single-product .woocommerce-product-gallery .flex-control-thumbs::-webkit-scrollbar{display:none;height:0;width:0}
.single-product .flex-control-thumbs li{flex:0 0 auto!important;width:auto!important;float:none!important;margin:0!important;list-style:none}
.single-product .flex-control-thumbs img{width:80px!important;height:80px!important;object-fit:cover;border-radius:10px;border:2px solid transparent;opacity:.7;cursor:pointer;transition:.15s;display:block}
.single-product .gd-thumb-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:4;width:34px;height:34px;border-radius:50%;background:#fff;box-shadow:0 2px 8px rgba(20,18,16,.2);display:flex;align-items:center;justify-content:center;font-size:22px;line-height:1;color:var(--ink);cursor:pointer;border:0;padding-bottom:3px}
.single-product .gd-thumb-arrow.prev{left:-2px}
.single-product .gd-thumb-arrow.next{right:-2px}
.single-product .gd-thumb-arrow[hidden]{display:none!important}
.single-product .flex-control-thumbs img.flex-active,.single-product .flex-control-thumbs img:hover{opacity:1;border-color:var(--fire)}
.single-product .woocommerce-product-gallery .onsale,.single-product span.onsale{position:absolute;top:14px;left:14px;z-index:5;background:var(--fire);color:var(--ink);font-family:Oswald;font-weight:600;text-transform:uppercase;font-size:12px;padding:6px 12px;border-radius:6px;margin:0;min-height:0;min-width:0}

.single-product div.product .summary{margin:0;float:none;width:auto}
.single-product .gd-pdp-eyebrow{margin-bottom:4px}
.single-product .product_title{font-size:clamp(28px,3.4vw,40px);text-transform:uppercase;font-weight:700;margin:2px 0 10px;line-height:1.05}
.single-product .woocommerce-product-rating,.single-product .gd-rating-row{margin:0 0 14px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.single-product .gd-rating-row .star-rating{margin:0;font-size:16px;color:var(--fire);line-height:1}
.single-product .gd-review-link{font-size:13px;color:var(--muted);text-decoration:underline}
.single-product .gd-review-link:hover{color:var(--fire-deep)}
.single-product .gd-stock-badge{font-size:13px;font-weight:600;display:inline-flex;align-items:center;gap:7px;line-height:1}
.single-product .gd-stock-badge::before{content:"";width:8px;height:8px;border-radius:50%;background:currentColor;flex:0 0 auto}
.single-product .gd-stock-badge.in{color:var(--ok)}
.single-product .gd-stock-badge.out{color:#b00020}
.single-product .gd-stock-badge.back{color:#C77A0A}
.single-product .gd-stock-badge.preorder{color:var(--fire-deep)}
.single-product .gd-stock-badge.low{color:#C0392B;font-weight:700}
.single-product .gd-stock-badge.low::before{background:#C0392B;animation:gd-pulse 1.4s ease-in-out infinite}
@keyframes gd-pulse{0%,100%{opacity:1}50%{opacity:.35}}
.single-product .summary>.price{font-family:Oswald;font-weight:700;font-size:30px;color:var(--ink);margin:0 0 4px;display:flex;gap:12px;align-items:baseline;flex-wrap:wrap}
.single-product .summary>.price del{color:var(--muted);font-size:20px;opacity:1;text-decoration:line-through}
.single-product .summary>.price ins{color:var(--fire-deep);text-decoration:none}
.single-product .summary>.price .amount{color:var(--fire-deep)}
.single-product .gd-save-badge{display:inline-block;background:rgba(217,138,30,.14);color:var(--fire-deep);font-family:Oswald;font-weight:700;font-size:12.5px;letter-spacing:.03em;padding:4px 10px;border-radius:6px;margin:0 0 14px}
.single-product .woocommerce-product-details__short-description{color:#4a443c;font-size:15px;line-height:1.6;margin:14px 0 6px}
.single-product .summary .stock.in-stock{color:var(--ok);font-weight:600;font-size:13px;display:inline-flex;align-items:center;gap:7px}
.single-product .summary .stock.in-stock::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--ok)}
.single-product .summary .stock.out-of-stock{color:#b00;font-weight:600}

/* Variations rendered as pill swatches */
.single-product form.cart{margin:20px 0 0}
.single-product .variations{width:100%;border:0;margin:0}
.single-product .variations tr{display:block;margin-bottom:16px}
.single-product .variations td,.single-product .variations th{display:block;padding:0;text-align:left;border:0;width:auto}
.single-product .variations label{font-family:Oswald;text-transform:uppercase;letter-spacing:.05em;font-size:13px;font-weight:600;margin:0 0 9px;display:block}
.single-product .gd-hidden-select{position:absolute!important;opacity:0;width:1px;height:1px;overflow:hidden;pointer-events:none}
.single-product .gd-swatches{display:flex;gap:9px;flex-wrap:wrap}
.single-product .gd-swatch{border:1.5px solid var(--line);border-radius:9px;padding:10px 16px;font-size:14px;font-weight:600;background:#fff;color:var(--ink);transition:.15s;font-family:Inter;cursor:pointer}
.single-product .gd-swatch:hover{border-color:var(--ink)}
.single-product .gd-swatch.active{border-color:var(--ink);background:var(--ink);color:#fff}
.single-product .gd-swatch.disabled{opacity:.35;text-decoration:line-through;cursor:not-allowed}
.single-product .reset_variations{display:inline-block;margin-top:6px;font-size:12.5px;color:var(--muted);text-decoration:underline}
.single-product .woocommerce-variation-price{margin:10px 0}
.single-product .woocommerce-variation-price .price,
.single-product .woocommerce-variation-price .price .woocommerce-Price-amount,
.single-product .woocommerce-variation-price .price .woocommerce-Price-amount bdi{font-family:Oswald;font-weight:700;font-size:26px;color:var(--fire-deep)!important}
/* WooCommerce (and the Stripe express "Buy now" area) print their own stock
   line near Add to Cart — we already show stock status next to the product
   title, so hide every duplicate. Our own badge uses .gd-stock-badge and the
   Back-in-Stock notice uses .gbis-*, so neither is affected. */
.single-product .summary .stock,
.single-product form.cart .stock,
.single-product .single_variation .stock,
.single-product .wc-stripe-product-checkout-container .stock,
.single-product .woocommerce-variation-availability{display:none!important}

/* Quantity + add to cart row */
.single-product .woocommerce-variation-add-to-cart,.single-product form.cart:not(.variations_form){display:flex;align-items:stretch;gap:12px;flex-wrap:wrap;margin-top:18px}
.single-product .quantity{display:flex;align-items:center;border:1.5px solid var(--line);border-radius:10px;overflow:hidden;background:#fff}
.single-product .quantity input.qty{width:54px;height:54px;border:0;text-align:center;font-family:Oswald;font-weight:600;font-size:16px;background:transparent;-moz-appearance:textfield}
.single-product .quantity input.qty::-webkit-outer-spin-button,.single-product .quantity input.qty::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.single-product .quantity .gd-qbtn{width:46px;height:54px;flex:0 0 auto;display:flex;align-items:center;justify-content:center;font-size:22px;line-height:1;color:var(--ink);background:#fff;border:0;cursor:pointer;padding:0;user-select:none;transition:background .12s}
.single-product .quantity .gd-qbtn:hover{background:var(--paper-2)}
.single-product .quantity .gd-qbtn:active{background:var(--line)}
.single-product .quantity .gd-qminus{border-right:1.5px solid var(--line)}
.single-product .quantity .gd-qplus{border-left:1.5px solid var(--line)}
/* Product page: free-ship nudge (above add-to-cart) + social-proof line (below) */
.single-product .gd-pdp-freeship{display:flex;align-items:center;gap:8px;background:var(--paper-2);border:1px solid var(--line);border-left:3px solid var(--fire);border-radius:10px;padding:10px 14px;margin:16px 0 4px;font-size:13.5px;color:#3a352f}
.single-product .gd-pdp-freeship b{color:var(--ink)}
.single-product .gd-pdp-freeship .gd-fs-ico{font-size:15px;line-height:1}
.single-product .gd-pdp-proof{display:flex;align-items:center;gap:8px;margin:14px 0 0;font-size:13.5px;color:var(--muted)}
.single-product .gd-pdp-proof .gd-proof-stars{color:var(--fire);letter-spacing:1px;font-size:14px}
.single-product .gd-pdp-proof b{color:var(--ink);font-family:Oswald;font-size:15px}
.single-product .single_add_to_cart_button{flex:1;min-width:200px;justify-content:center;font-size:16px;padding:16px 24px}
.single-product .single_add_to_cart_button.disabled,.single-product .single_add_to_cart_button.wc-variation-selection-needed{opacity:.5}

/* Trust badges + meta (hooked) */
.single-product .pdp-trust{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:22px 0 0;padding:22px 0 0;border-top:1px solid var(--line)}
.single-product .product_meta{display:none!important}

.single-product .related.products,.single-product .upsells.products{max-width:1240px;margin:0 auto;padding:30px 22px 60px;clear:both}
.single-product .related.products>h2,.single-product .upsells.products>h2{font-size:30px;text-transform:uppercase;text-align:center;margin-bottom:26px}
@media(max-width:1000px){
  .single-product div.product,
  .single-product .gd-product-top{grid-template-columns:1fr!important;gap:28px}
  .single-product div.product .woocommerce-product-gallery{position:static}
  .single-product .gd-product-top .woocommerce-product-gallery,
  .single-product .gd-product-top .summary{width:auto!important;max-width:100%;float:none!important;margin:0}
  .single-product .pdp-trust{grid-template-columns:1fr 1fr}
}
/* Prevent the gallery + thumbnail strip from forcing horizontal page scroll on phones. */
@media(max-width:600px){
  .single-product .gd-product-top .woocommerce-product-gallery{max-width:100%;overflow:hidden}
  .single-product .flex-control-thumbs,
  .single-product .gd-thumbs{max-width:100%}
  .single-product .summary>.price{font-size:26px}
}

/* ---------- Product reviews (Gorilla Dirt design, native WooCommerce/CusRev data) ---------- */
.gd-reviews .woocommerce-Reviews-title{display:none}
.gd-rev-summary{display:grid;grid-template-columns:230px 1fr;gap:40px;align-items:center;background:var(--paper-2);border-radius:var(--radius);padding:30px;margin-bottom:34px}
.gd-rev-score{text-align:center}
.gd-rev-big{font-family:Oswald;font-weight:700;font-size:58px;line-height:1;color:var(--ink)}
.gd-rev-bigstars{margin:6px 0;display:flex;justify-content:center}
.gd-rev-bigstars .star-rating{font-size:20px;color:var(--fire)}
.gd-rev-basedon{font-size:13px;color:var(--muted)}
.gd-rev-bars{display:flex;flex-direction:column;gap:8px}
.gd-rev-bar{display:flex;align-items:center;gap:12px;font-size:13px}
.gd-rev-lb{width:40px;color:var(--muted);white-space:nowrap}
.gd-rev-track{flex:1;height:9px;background:#fff;border-radius:5px;overflow:hidden}
.gd-rev-fill{display:block;height:100%;background:var(--fire);border-radius:5px}
.gd-rev-num{width:34px;text-align:right;color:var(--muted)}
.gd-reviews-controls{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:22px}
.gd-rev-lead{font-family:Oswald;font-weight:700;text-transform:uppercase;font-size:20px}
.gd-rev-filters{display:flex;gap:8px;flex-wrap:wrap}
.gd-rev-fchip{border:1.5px solid var(--line);background:#fff;border-radius:999px;padding:7px 15px;font-size:12.5px;font-weight:600;color:#4a443c;cursor:pointer;font-family:Inter}
.gd-rev-fchip.on{background:var(--ink);color:#fff;border-color:var(--ink)}
.gd-reviews-list{list-style:none!important;margin:0!important;padding:0!important;display:grid;grid-template-columns:1fr 1fr;gap:20px}
/* WooCommerce's .commentlist clearfix pseudo-elements become phantom grid cells
   (they'd leave an empty first cell). Remove them. */
.gd-reviews-list::before,.gd-reviews-list::after{content:none!important;display:none!important}
.gd-reviews-list>li{margin:0!important;list-style:none}
/* High specificity to beat WooCommerce's default `#reviews #comments ol.commentlist li` rules. */
.woocommerce #reviews #comments ol.commentlist li.gd-review-card,
.gd-reviews-list li.gd-review-card{background:#faf7f2!important;border:1px solid var(--line)!important;border-radius:var(--radius)!important;padding:22px!important;box-shadow:none!important}
.gd-review-card .gd-rev-head{display:flex;align-items:center;gap:11px;margin-bottom:10px}
.gd-rev-av{width:42px;height:42px;border-radius:50%;background:var(--fire);color:var(--ink);display:flex;align-items:center;justify-content:center;font-family:Oswald;font-weight:700;flex-shrink:0}
.gd-rev-who{min-width:0}
.gd-rev-who b{font-size:14px;display:block}
.gd-rev-verified{font-size:11.5px;color:var(--ok);font-weight:600}
.gd-rev-date{margin-left:auto;text-align:right;font-size:11.5px;color:var(--muted);white-space:nowrap}
.gd-rev-stars{margin:2px 0 8px}
.gd-review-card .star-rating{color:var(--fire);font-size:14px}
.gd-rev-text{font-size:14px;color:#3a352f;line-height:1.55}
/* Review photos (customer-uploaded) */
.gd-rev-photos{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.gd-rev-photo-link{display:block;width:64px;height:64px;border-radius:8px;overflow:hidden;border:1px solid var(--line)}
.gd-rev-photo-link img.gd-rev-photo{width:64px!important;height:64px!important;object-fit:cover;display:block;margin:0}
/* Review form: photo upload field */
.gd-review-form .gd-review-upload{margin:0 0 14px}
.gd-review-form .gd-review-upload label{display:block;font-weight:600;font-size:14px;margin-bottom:6px}
.gd-review-form .gd-review-upload input[type=file]{display:block;font-size:13px}
.gd-review-form .gd-review-upload .gd-upload-hint{display:block;font-size:12px;color:var(--muted);margin-top:5px}
.gd-rev-text p{margin:0 0 8px}
.gd-rev-text p:last-child{margin-bottom:0}
.gd-reviews-list .children{list-style:none;margin:12px 0 0;padding:0}
.gd-reviews-list .children li{margin:0;list-style:none}
.gd-merchant-reply{background:var(--paper-2);border-radius:10px;padding:12px 14px;font-size:13px}
.gd-merchant-reply b{font-family:Oswald;text-transform:uppercase;font-size:12px;letter-spacing:.05em;color:var(--fire-deep);display:block;margin-bottom:4px}
.gd-reply-text p{margin:0}
.gd-rev-none{padding:40px 0;text-align:center;color:var(--muted);font-size:16px}
/* Write a review + form */
.gd-write-review-cta{text-align:center;margin:34px 0 0}
.gd-review-form{max-width:640px;margin:24px auto 0;display:none}
.gd-review-form.show{display:block}
.gd-review-form .comment-reply-title{font-family:Oswald;text-transform:uppercase;font-size:22px;font-weight:700;display:block;margin-bottom:16px}
.gd-review-form label{font-family:Oswald;text-transform:uppercase;font-size:13px;letter-spacing:.05em;display:block;margin-bottom:8px;font-weight:600}
.gd-review-form select,.gd-review-form textarea,.gd-review-form input[type=text],.gd-review-form input[type=email],.gd-review-form input[type=url]{width:100%;border:1.5px solid var(--line);border-radius:9px;padding:12px 14px;font-family:inherit;font-size:15px;margin-bottom:16px;background:#fff}
.gd-review-form .comment-form-rating select{max-width:220px}
.gd-review-form .form-submit input,.gd-review-form input#submit{background:var(--fire-bright)!important;color:var(--ink)!important;border:0;border-radius:10px;font-family:Oswald;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:14px 28px;font-size:14px;cursor:pointer}
.gd-review-form .form-submit input:hover{background:#FFC15E!important}
@media(max-width:900px){
	.gd-rev-summary{grid-template-columns:1fr;gap:24px}
	.gd-reviews-list{grid-template-columns:1fr}
}

/* ---------- Split feature tiles ---------- */
.split{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.feat{position:relative;border-radius:var(--radius);overflow:hidden;min-height:360px;display:flex;align-items:flex-end;color:#fff;box-shadow:var(--shadow)}
.feat img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:.5s}
.feat:hover img{transform:scale(1.06)}
.feat::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,rgba(20,18,16,.82))}
.feat-c{position:relative;z-index:2;padding:26px}
.feat-c .eyebrow{color:#FFB27A}
.feat-c h3{font-size:26px;font-weight:700;text-transform:uppercase;margin:6px 0 14px}

/* ---------- Reviews wall ---------- */
.rev-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.rev{background:#fff;border-radius:var(--radius);padding:26px;box-shadow:var(--shadow);border-top:3px solid var(--fire)}
.rev .stars{font-size:15px}
.rev p{font-size:14.5px;color:#3a352f;margin:12px 0 16px}
.rev .who{display:flex;align-items:center;gap:10px}
.rev .av{width:40px;height:40px;border-radius:50%;background:var(--fire);color:var(--ink);display:flex;align-items:center;justify-content:center;font-family:Oswald;font-weight:700}
.rev .who b{font-size:14px}
.rev .who span{font-size:12px;color:var(--ok);font-weight:600}

/* ---------- Why us ---------- */
.why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:10px}
.why{text-align:center;padding:26px 18px;border:1px solid rgba(255,255,255,.09);border-radius:var(--radius);background:rgba(255,255,255,.03)}
.why .ic{width:52px;height:52px;margin:0 auto 14px;border-radius:12px;background:rgba(254,180,66,.18);display:flex;align-items:center;justify-content:center}
.why .ic svg{width:26px;height:26px;stroke:var(--fire);fill:none;stroke-width:1.8}
.why h4{font-size:17px;text-transform:uppercase;margin-bottom:7px}
.why p{font-size:13.5px;color:#B7AD9F;margin:0}

/* ---------- Newsletter ---------- */
.news{background:linear-gradient(120deg,var(--ink) 0%,var(--charcoal) 100%);color:#fff;border-radius:20px;padding:48px;display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap;box-shadow:var(--shadow-lg);border:1px solid rgba(254,180,66,.35)}
.news h2{font-size:34px;text-transform:uppercase;font-weight:700;color:var(--fire)}
.news p{margin:8px 0 0;color:#D8CFC2;max-width:420px}
.news form{display:flex;gap:10px;flex-wrap:wrap}
.news input{border:none;border-radius:10px;padding:15px 18px;min-width:250px;font-size:15px}
/* Email-capture plugin form embedded in the dark newsletter band */
.news .gd-ec{width:auto}
.news .gd-ec-body{text-align:left}
.news .gd-ec-fine,.news .gd-ec-mailnote{color:#D8CFC2}
.news .gd-ec-result.ok{color:#fff}
.news .gd-ec-result .gd-ec-code{background:var(--fire);color:var(--ink)}

/* ---------- Breadcrumb ---------- */
.gd-crumb,.woocommerce-breadcrumb{max-width:1240px!important;margin:0 auto!important;padding:9px 22px!important;font-size:11.5px;line-height:1.4;color:var(--muted);white-space:normal;opacity:.85}
.gd-crumb a:hover,.woocommerce-breadcrumb a:hover{color:var(--fire-deep)}
/* Long breadcrumb trails: keep them to one scrollable line so they never take over the page */
@media(max-width:700px){
  .gd-crumb,.woocommerce-breadcrumb{white-space:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:7px 18px!important;font-size:11px}
  .gd-crumb::-webkit-scrollbar,.woocommerce-breadcrumb::-webkit-scrollbar{display:none;height:0}
}
.gd-crumb span{color:var(--ink);font-weight:600}

/* ---------- Shop layout ---------- */
.shop-head{background:var(--paper-2);color:var(--ink);padding:38px 0;border-bottom:1px solid var(--line)}
.shop-head .eyebrow{color:var(--fire-deep)}
.shop-head h1{font-size:clamp(32px,4vw,50px);text-transform:uppercase;font-weight:700}
.shop-head p{color:var(--muted);margin-top:8px;max-width:560px}
.shop-layout{max-width:1240px;margin:0 auto;display:grid;grid-template-columns:250px 1fr;gap:34px;padding:38px 22px 70px}
.filters h4{font-family:Oswald;font-size:14px;text-transform:uppercase;letter-spacing:.08em;margin:22px 0 12px;padding-bottom:8px;border-bottom:2px solid var(--line)}
.filters h4:first-child{margin-top:0}
.fopt{display:flex;align-items:center;gap:9px;font-size:14px;padding:5px 0;color:#4a443c;cursor:pointer}
.fopt input{accent-color:var(--fire)}
.fopt .ct{margin-left:auto;color:var(--muted);font-size:12px}
/* Theme-generated attribute filters (checkbox-style links) */
.gd-attr-filter{display:flex;flex-direction:column;gap:1px;max-height:230px;overflow-y:auto;padding-right:14px}
.gd-attr-filter .fopt{display:flex;align-items:center;gap:10px;font-size:14px;padding:6px 0;color:#4a443c;text-decoration:none;cursor:pointer}
.gd-attr-filter .fopt:hover{color:var(--ink)}
.gd-attr-filter .fopt .box{width:17px;height:17px;border:1.5px solid var(--line);border-radius:4px;flex:0 0 auto;position:relative;background:#fff;transition:.12s}
.gd-attr-filter .fopt.on .box{background:var(--fire);border-color:var(--fire)}
.gd-attr-filter .fopt.on .box::after{content:"";position:absolute;left:5px;top:1px;width:5px;height:9px;border:solid var(--ink);border-width:0 2px 2px 0;transform:rotate(45deg)}
.gd-attr-filter .fopt.on{color:var(--ink);font-weight:600}
.gd-attr-filter .fopt .ct{margin-left:auto;color:var(--muted);font-size:12px}
.cat-select{display:flex;flex-direction:column;gap:0;margin-bottom:4px}
.cat-select a,.cat-select button{text-align:left;font-size:14px;padding:5px 12px;border-radius:8px;color:#4a443c;font-weight:600;display:flex;justify-content:space-between;align-items:center;transition:.12s;line-height:1.3}
.cat-select a:hover,.cat-select button:hover{background:var(--paper-2)}
.cat-select .on{background:var(--ink);color:#fff}
.cat-select .branch{color:var(--fire-deep)}
.cat-select .ct{font-size:11.5px;color:var(--muted);font-weight:500}
.cat-select .on .ct{color:#B7AD9F}
.cat-select .cat-link.depth-1{padding-left:24px;font-weight:500;font-size:13.5px}
.cat-select .cat-link.depth-2{padding-left:38px;font-weight:500;font-size:13px}
.cat-select .cat-link.depth-3{padding-left:52px;font-weight:500;font-size:12.5px}
.fgroup-sub{font-family:Oswald;font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--fire-deep);margin:12px 0 6px;display:flex;align-items:center;gap:7px}
.fgroup-sub svg{width:15px;height:15px;stroke:var(--fire-deep);fill:none;stroke-width:1.8}
.device-scroll{max-height:190px;overflow-y:auto;padding-right:6px;margin-right:-6px}
.pricebox{display:flex;gap:8px;align-items:center;margin-top:4px}
.pricebox input{width:100%;border:1.5px solid var(--line);border-radius:8px;padding:8px 10px;font-family:inherit;font-size:13px}
.pricebox span{color:var(--muted)}
.shop-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px;gap:14px;flex-wrap:wrap}
.shop-toolbar .cnt,.woocommerce-result-count{color:var(--muted);font-size:14px;margin:0}
.shop-toolbar select,.woocommerce-ordering select{border:1.5px solid var(--line);border-radius:9px;padding:10px 14px;font-family:inherit;font-size:14px;background:#fff}
.chiprow{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:20px}
.fchip{background:#fff;border:1.5px solid var(--line);border-radius:999px;padding:7px 14px;font-size:12.5px;font-weight:600;color:#4a443c}
.fchip.on{background:var(--ink);color:#fff;border-color:var(--ink)}
.mobile-filter-btn{display:none;align-items:center;gap:9px;width:100%;justify-content:center;background:var(--ink);color:#fff;font-family:Oswald;font-weight:600;text-transform:uppercase;letter-spacing:.06em;font-size:14px;padding:14px;border-radius:10px;margin-bottom:18px}
.mobile-filter-btn svg{width:18px;height:18px;stroke:var(--fire);fill:none;stroke-width:1.9}
.foot-menu-empty{font-size:12px;color:var(--muted)}

/* ---------- Pagination ---------- */
.pagination,.woocommerce-pagination ul{display:flex;justify-content:center;align-items:center;gap:6px;margin-top:44px;flex-wrap:wrap;list-style:none;padding:0;border:0!important}
.pagination a,.woocommerce-pagination ul li a,.woocommerce-pagination ul li span{min-width:42px;height:42px;padding:0 10px;display:flex;align-items:center;justify-content:center;border:1.5px solid var(--line)!important;border-radius:10px;font-family:Oswald;font-weight:600;font-size:15px;color:#4a443c;background:#fff;transition:.15s}
.pagination a:hover,.woocommerce-pagination ul li a:hover{border-color:var(--ink)!important;color:var(--ink)}
.pagination a.on,.woocommerce-pagination ul li span.current{background:var(--ink);color:#fff;border-color:var(--ink)!important}
.pagination a.nav-arrow{gap:6px;font-size:13px;text-transform:uppercase;letter-spacing:.04em}
.pagination .dots{color:var(--muted);padding:0 4px}
.pagination a.disabled{opacity:.4;pointer-events:none}
.gd-loadmore-wrap{text-align:center;margin-top:40px}
.gd-loadmore{min-width:220px;justify-content:center}
.gd-loadmore.loading{opacity:.6;pointer-events:none}

/* ---------- Product detail (PDP) ---------- */
.pdp{max-width:1240px;margin:0 auto;display:grid;grid-template-columns:1.15fr 1fr;gap:48px;padding:30px 22px 60px}
.buybox h1,.pdp .product_title{font-size:38px;text-transform:uppercase;font-weight:700;margin:6px 0 10px}
.rate-row{display:flex;align-items:center;gap:10px;margin-bottom:16px}
.rate-row .star-rating{font-size:16px}
.pdp-price,.pdp .price{font-family:Oswald;font-weight:700;font-size:32px;display:flex;align-items:baseline;gap:12px;margin-bottom:6px;color:var(--ink)}
.pdp-price .was,.pdp .price del{font-size:22px;color:var(--muted);text-decoration:line-through;font-weight:500}
.pdp-price .now,.pdp .price ins{color:var(--fire-deep);text-decoration:none}
.save-badge{background:rgba(217,138,30,.15);color:var(--fire-deep);font-weight:700;font-size:12.5px;padding:4px 10px;border-radius:6px;font-family:Oswald;letter-spacing:.04em}
.pdp-desc{color:#4a443c;font-size:15px;margin:18px 0}
.pdp-trust{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:22px;padding-top:22px;border-top:1px solid var(--line)}
.pdp-trust div{display:flex;align-items:center;gap:10px;font-size:13.5px;font-weight:600;color:#3a352f}
.pdp-trust svg{width:22px;height:22px;stroke:var(--fire-deep);fill:none;stroke-width:1.7;flex-shrink:0}
/* Variation form buttons -> gold pills */
.pdp .variations td{padding:6px 0}
.pdp .single_add_to_cart_button{width:100%;justify-content:center;font-size:16px;padding:16px;margin-top:14px}
.pdp .quantity input{height:52px;border:1.5px solid var(--line);border-radius:10px;text-align:center;font-family:Oswald;font-weight:600;width:70px}

/* ---------- PDP tabs (Description / Specs / Reviews) ---------- */
.woocommerce-tabs ul.tabs{display:flex;flex-wrap:wrap;gap:2px;border-bottom:2px solid var(--line)!important;margin:0 0 30px!important;padding:0!important;list-style:none}
.woocommerce-tabs ul.tabs::before,.woocommerce-tabs ul.tabs::after{display:none!important;content:none!important}
.woocommerce-tabs ul.tabs li{margin:0!important;padding:0!important;background:transparent!important;border:0!important;border-radius:0!important}
.woocommerce-tabs ul.tabs li::before,.woocommerce-tabs ul.tabs li::after{display:none!important;content:none!important;border:0!important}
.woocommerce-tabs ul.tabs li.active{background:transparent!important;border:0!important}
.woocommerce-tabs ul.tabs li a{font-family:Oswald;font-weight:600;text-transform:uppercase;letter-spacing:.06em;font-size:15px;padding:14px 22px!important;color:var(--muted)!important;border-bottom:3px solid transparent!important;display:block;background:transparent!important}
.woocommerce-tabs ul.tabs li.active a{color:var(--ink)!important;border-color:var(--fire)!important}
.woocommerce-tabs ul.tabs li a:hover{color:var(--ink)!important}
.woocommerce-tabs .panel h2{font-size:24px;text-transform:uppercase;margin-bottom:14px}
.woocommerce-tabs{max-width:1240px;margin:0 auto;padding:0 22px 40px}
.feat-list{list-style:none;padding:0;margin:0}
.feat-list li{display:flex;gap:12px;padding:11px 0;border-bottom:1px solid var(--line);font-size:14.5px;color:#3a352f;align-items:flex-start}
.feat-list svg{width:20px;height:20px;stroke:var(--fire-deep);fill:none;stroke-width:2;flex-shrink:0;margin-top:1px}

/* Product page: editable subtitle, benefits, at-a-glance card */
.gd-pdp-eyebrow{margin-bottom:4px}
.gd-benefits{margin:18px 0}
.gd-benefits h3{font-size:20px;text-transform:uppercase;margin-bottom:10px}
.gd-benefits .feat-list li span b{color:var(--ink)}
.gd-spec-card{background:var(--paper-2);border-radius:var(--radius);padding:22px 24px;margin:20px 0}
.gd-spec-card h4{font-family:Oswald;text-transform:uppercase;font-size:15px;letter-spacing:.06em;margin-bottom:12px}
.gd-spec-card .spec-row{display:flex;justify-content:space-between;gap:16px;padding:9px 0;border-bottom:1px solid var(--line);font-size:14px}
.gd-spec-card .spec-row:last-child{border:none}
.gd-spec-card .spec-row span:first-child{color:var(--muted)}
.gd-spec-card .spec-row span:last-child{font-weight:600;text-align:right}
/* Description-tab lists → soft info box + gold checkmarks (breaks up the wall of text). */
.woocommerce-Tabs-panel--description ul,
.woocommerce-Tabs-panel--description ol{background:var(--paper-2);border:1px solid var(--line);border-left:3px solid var(--fire);border-radius:var(--radius);margin:22px 0;padding:18px 24px}
.woocommerce-Tabs-panel--description ul{list-style:none!important}
.woocommerce-Tabs-panel--description ul li{position:relative;list-style:none!important;padding-left:30px;margin:0 0 9px;line-height:1.55}
.woocommerce-Tabs-panel--description ul li:last-child,
.woocommerce-Tabs-panel--description ol li:last-child{margin-bottom:0}
.woocommerce-Tabs-panel--description ul li::before{content:"";position:absolute;left:0;top:2px;width:19px;height:19px;background:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="%23D98A1E" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"><path d="M20 6 9 17l-5-5"/></svg>') no-repeat center/contain}
.woocommerce-Tabs-panel--description ol{padding-left:42px}
.woocommerce-Tabs-panel--description ol li{margin:0 0 9px;line-height:1.55;padding-left:4px}
.woocommerce-Tabs-panel--description ol li::marker{color:var(--fire-deep);font-family:Oswald;font-weight:700}
/* Nested lists shouldn't get their own box (avoid box-in-box). */
.woocommerce-Tabs-panel--description ul ul,
.woocommerce-Tabs-panel--description ul ol,
.woocommerce-Tabs-panel--description ol ul,
.woocommerce-Tabs-panel--description ol ol{background:none;border:none;border-radius:0;margin:9px 0 0;padding:0 0 0 22px}

/* ---------- Product tabs: expand all panels, hide the tab nav ----------
   Every tab's content is shown stacked (each keeps its own in-panel heading),
   so shoppers never have to hunt for or click tabs. */
.woocommerce-tabs ul.tabs.wc-tabs,
.woocommerce-tabs .wc-tabs { display: none !important; }
.woocommerce-tabs .woocommerce-Tabs-panel { display: block !important; }
.woocommerce-tabs .woocommerce-Tabs-panel + .woocommerce-Tabs-panel { margin-top: 30px; padding-top: 30px; border-top: 1px solid var(--line); }
/* Hide each panel's tab-title heading (the first heading only) — content
   sub-headings inside the panels are kept. */
.woocommerce-tabs .woocommerce-Tabs-panel > h2:first-child,
.woocommerce-tabs .woocommerce-Tabs-panel > h3:first-child { display: none !important; }

/* ---------- Reviews (CusRev / native) summary ---------- */
.rev-summary{display:grid;grid-template-columns:260px 1fr;gap:40px;align-items:center;background:var(--paper-2);border-radius:var(--radius);padding:30px;margin-bottom:34px}
.rev-score{text-align:center}
.rev-score .big{font-family:Oswald;font-weight:700;font-size:58px;line-height:1;color:var(--ink)}
.rev-bars{display:flex;flex-direction:column;gap:8px}
.rev-bar{display:flex;align-items:center;gap:12px;font-size:13px}
.rev-bar .lb{width:52px;color:var(--muted)}
.rev-bar .track{flex:1;height:9px;background:#fff;border-radius:5px;overflow:hidden}
.rev-bar .fill{height:100%;background:var(--fire);border-radius:5px}

/* ---------- Footer ---------- */
.site-footer{background:#0E0C0B;color:#B7AD9F;position:relative;overflow:hidden}
.site-footer::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,transparent,var(--fire),transparent)}
/* Footer forest topper: full-width silhouette sitting flush on the dark footer */
.gd-footer-forest{line-height:0;font-size:0;margin:0;width:100%;overflow:hidden;background:transparent;pointer-events:none}
.gd-footer-forest img{display:block;width:100%;height:auto;margin-bottom:-2px}
/* Hide the gold accent line so the forest merges seamlessly into the footer */
.site-footer.gd-has-forest::before{display:none}
.foot-perks{border-bottom:1px solid rgba(255,255,255,.08);padding:30px 0}
.foot-perks .wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.fperk{display:flex;align-items:center;gap:14px}
.fperk .pic{width:44px;height:44px;border-radius:11px;background:rgba(254,180,66,.14);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.fperk .pic svg{width:22px;height:22px;stroke:var(--fire);fill:none;stroke-width:1.8}
.fperk b{color:#fff;font-family:Oswald;text-transform:uppercase;letter-spacing:.04em;font-size:14px;display:block}
.fperk span{font-size:12.5px;color:#8f857a}
.foot-main{padding:52px 0 34px;position:relative;z-index:2}
.foot-grid{display:grid;grid-template-columns:1.7fr 1fr 1fr 1fr;gap:40px}
.foot-grid h4{color:#fff;font-family:Oswald;font-size:14px;text-transform:uppercase;letter-spacing:.1em;margin-bottom:18px}
.foot-grid a{display:block;font-size:14px;padding:6px 0;color:#B7AD9F;transition:.15s;width:fit-content}
.foot-grid a:hover{color:var(--fire);transform:translateX(3px)}
.foot-grid ul,.foot-menu{list-style:none;margin:0;padding:0}
.foot-logo{height:32px;width:150px;margin-bottom:18px}
.foot-brand p{font-size:14px;line-height:1.65;color:#9a9086;max-width:330px;margin:0 0 20px}
.foot-badges{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:20px}
.foot-badge{display:flex;align-items:center;gap:9px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:9px 13px;font-size:11.5px;color:#B7AD9F;line-height:1.3}
.foot-badge b{color:var(--fire);font-family:Oswald;font-size:15px}
.foot-badge svg{width:20px;height:20px;stroke:var(--fire);fill:none;stroke-width:1.7}
.social{display:flex;gap:11px}
.social a{width:40px;height:40px;border-radius:10px;background:rgba(255,255,255,.06);display:flex;align-items:center;justify-content:center;transition:.18s}
.social a:hover{background:var(--fire);transform:translateY(-3px)}
.social a:hover svg{fill:var(--ink)}
.social svg{width:18px;height:18px;fill:#fff;transition:.18s}
.foot-pay{display:flex;gap:7px;flex-wrap:wrap;margin-top:14px}
.foot-pay b{background:rgba(255,255,255,.07);color:#cfc6ba;padding:5px 9px;border-radius:5px;font-size:10px;font-family:Oswald;letter-spacing:.04em}
.foot-bottom{border-top:1px solid rgba(255,255,255,.09);padding:22px;display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;font-size:12.5px;position:relative;z-index:2}
.foot-made{display:flex;align-items:center;gap:7px;color:#8f857a}
.foot-made svg{width:15px;height:15px;stroke:var(--fire);fill:none;stroke-width:1.8}

/* ---------- Slide cart (native) ---------- */
.gd-slidecart{position:fixed;top:0;right:0;width:420px;max-width:92vw;height:100%;background:var(--paper);z-index:100;transform:translateX(100%);transition:transform .34s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;box-shadow:var(--shadow-lg)}
.gd-slidecart.show{transform:translateX(0)}
.gd-cart-head{background:var(--brown);color:#fff;padding:20px 22px;display:flex;align-items:center;justify-content:space-between}
.gd-cart-head h3{font-size:20px;text-transform:uppercase;font-weight:700;color:var(--fire)}
.gd-cart-head .x{color:var(--fire);font-size:28px;line-height:1}
.gd-cart-body{flex:1;overflow-y:auto;display:flex;flex-direction:column}
#gd-slidecart .widget_shopping_cart_content{display:flex;flex-direction:column;flex:1;min-height:0}
#gd-slidecart .gd-ship-bar{background:var(--charcoal);color:#fff;padding:14px 22px;font-size:12.5px}
#gd-slidecart .gd-ship-bar b{color:var(--fire)}
#gd-slidecart .gd-ship-track{height:6px;background:rgba(255,255,255,.15);border-radius:4px;margin-top:9px;overflow:hidden}
#gd-slidecart .gd-ship-fill{height:100%;background:var(--fire);border-radius:4px;transition:width .3s}
/* Custom slide-cart items (matches mockup) */
#gd-slidecart .gd-cart-items{list-style:none!important;margin:0!important;padding:8px 22px!important;flex:1;overflow-y:auto}
#gd-slidecart .gd-citem{display:flex;gap:14px;padding:18px 0;border-bottom:1px solid var(--line);position:relative;margin:0!important;list-style:none!important}
#gd-slidecart .gd-citem::before{content:none!important;display:none!important}
#gd-slidecart .gd-citem-img{flex:0 0 auto}
#gd-slidecart .gd-citem-img img{width:74px!important;height:74px!important;border-radius:10px;object-fit:cover;margin:0!important;float:none!important;display:block}
#gd-slidecart .gd-citem-info{flex:1;min-width:0;padding-right:56px}
#gd-slidecart .gd-citem-title{font-family:Inter;font-size:14px;font-weight:600;color:var(--ink);line-height:1.3;text-decoration:none;display:block}
#gd-slidecart .gd-citem-var{font-size:12px;color:var(--muted);margin-top:2px}
#gd-slidecart .gd-citem-price{font-family:Oswald;font-weight:700;color:var(--fire-deep);font-size:15px;margin-top:5px}
#gd-slidecart .gd-citem-price del{color:var(--muted);font-weight:500;font-size:13px;margin-right:5px}
#gd-slidecart .gd-citem-price ins{text-decoration:none;color:var(--fire-deep)}
#gd-slidecart .gd-qty{display:inline-flex;align-items:center;border:1.5px solid var(--line);border-radius:9px;overflow:hidden;margin-top:9px}
#gd-slidecart .gd-qstep{width:30px;height:30px;font-size:16px;color:var(--ink);background:#fff;line-height:1}
#gd-slidecart .gd-qstep:hover{background:var(--paper-2)}
#gd-slidecart .gd-qval{width:34px;height:30px;border:none;border-left:1.5px solid var(--line);border-right:1.5px solid var(--line);text-align:center;font-family:Oswald;font-weight:600;font-size:14px;background:#fff;padding:0}
#gd-slidecart .gd-remove{position:absolute;top:18px;right:0;font-size:11px;color:var(--muted)!important;text-decoration:underline;background:none;width:auto;height:auto;padding:0}
#gd-slidecart .gd-remove:hover{color:var(--fire-deep)!important}
/* Upsell */
#gd-slidecart .gd-cart-upsell{background:var(--paper-2);margin:0 22px 14px;border-radius:12px;padding:14px;position:relative}
#gd-slidecart .gd-upsell-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}
#gd-slidecart .gd-upsell-lbl{font-family:Oswald;font-weight:600;text-transform:uppercase;font-size:12px;letter-spacing:.08em;color:var(--muted)}
#gd-slidecart .gd-upsell-dismiss{background:none;border:none;color:var(--muted);font-size:20px;line-height:1;width:24px;height:24px;cursor:pointer;padding:0;border-radius:50%;flex:0 0 auto}
#gd-slidecart .gd-upsell-dismiss:hover{color:var(--ink);background:rgba(0,0,0,.07)}
#gd-slidecart .gd-upsell-item{display:flex;align-items:center;gap:12px}
#gd-slidecart .gd-upsell-item img{width:48px!important;height:48px!important;border-radius:8px;object-fit:cover;margin:0!important;float:none!important}
#gd-slidecart .gd-upsell-info{flex:1;min-width:0}
#gd-slidecart .gd-upsell-info h5{font-size:13px;font-weight:600;font-family:Inter;margin:0;line-height:1.25}
#gd-slidecart .gd-upsell-info h5 a{color:var(--ink);text-decoration:none}
#gd-slidecart .gd-upsell-info h5 a:hover{color:var(--fire-deep)}
#gd-slidecart .gd-upsell-sale{display:inline-block;background:var(--fire);color:var(--ink);font-family:Oswald;font-weight:700;text-transform:uppercase;font-size:9.5px;letter-spacing:.05em;padding:1px 6px;border-radius:4px;margin:3px 0}
#gd-slidecart .gd-upsell-price{display:block;font-family:Oswald;font-weight:700;color:var(--fire-deep);font-size:13px}
#gd-slidecart .gd-upsell-price del{color:var(--muted);font-weight:500;font-size:11px;margin-right:4px}
#gd-slidecart .gd-upsell-price ins{text-decoration:none;color:var(--fire-deep)}
#gd-slidecart .gd-upsell-add{margin-left:auto;border:1.5px solid var(--ink)!important;border-radius:8px;padding:7px 12px!important;font-size:11px;font-weight:700;font-family:Oswald;text-transform:uppercase;color:var(--ink);background:#fff;white-space:nowrap;text-decoration:none;align-self:center}
#gd-slidecart .gd-upsell-add:hover{background:var(--ink);color:#fff}
/* Foot */
#gd-slidecart .gd-cart-foot{border-top:1px solid var(--line);padding:20px 22px;background:#fff}
#gd-slidecart .gd-subtot{display:flex;justify-content:space-between;font-family:Oswald;font-weight:700;font-size:20px;margin-bottom:2px}
#gd-slidecart .gd-subtot-amt{color:var(--fire-deep)}
#gd-slidecart .gd-foot-note{font-size:12px;color:var(--muted);text-align:center;margin:6px 0 14px}
#gd-slidecart .gd-checkout{width:100%;justify-content:center;font-size:16px;padding:16px}
#gd-slidecart .gd-viewcart{display:block;text-align:center;margin-top:12px;font-size:13px;color:var(--muted);text-decoration:underline}
#gd-slidecart .gd-pay{display:flex;justify-content:center;gap:7px;margin-top:14px;flex-wrap:wrap}
#gd-slidecart .gd-pay b{background:var(--paper-2);padding:4px 8px;border-radius:5px;font-size:10px;color:#4a443c;font-family:Oswald;letter-spacing:.03em;font-weight:600}
#gd-slidecart .gd-empty{padding:60px 22px;text-align:center;color:var(--muted)}
#gd-slidecart.gd-loading .widget_shopping_cart_content{opacity:.5;pointer-events:none;transition:opacity .2s}
@media(max-width:560px){.gd-slidecart{width:100%;max-width:100%}}

/* ---------- WooCommerce full-width pages (cart/checkout/account) ---------- */
.gd-wc-page{width:100%;padding:30px 0 20px}
.gd-wc-page>article{max-width:none}
.gd-wc-page .entry-title{max-width:1240px;margin:0 auto 6px;padding:0 22px;text-transform:uppercase;font-size:clamp(30px,4vw,44px)}

/* ---------- Cart page (CRO layout) ---------- */
.woocommerce-cart .gd-wc-main,.woocommerce-cart .woocommerce{max-width:1240px;margin:0 auto;padding:10px 22px 70px}
.woocommerce-cart .woocommerce-notices-wrapper{max-width:1240px;margin:0 auto;padding:0 22px}
.gd-cartpage-shipbar{background:var(--ink);color:#fff;border-radius:12px;padding:16px 20px;font-size:14px;font-weight:600;margin-bottom:26px}
.gd-cartpage-shipbar b{color:var(--fire)}
.gd-cartpage-shipbar .gd-ship-track{height:7px;background:rgba(255,255,255,.15);border-radius:4px;margin-top:10px;overflow:hidden}
.gd-cartpage-shipbar .gd-ship-fill{height:100%;background:var(--fire);border-radius:4px;transition:width .3s}
.gd-cart-grid{display:grid;grid-template-columns:1fr 370px;gap:36px;align-items:start}
.gd-cart-main{min-width:0}
.woocommerce-cart table.cart{border:1px solid var(--line);border-radius:var(--radius);border-collapse:separate;border-spacing:0;overflow:hidden;background:#fff;margin:0}
.woocommerce-cart table.cart thead th{background:var(--paper-2);font-family:Oswald;text-transform:uppercase;letter-spacing:.05em;font-size:12px;color:#4a443c;padding:14px 16px;text-align:left;border:0}
.woocommerce-cart table.cart td{padding:16px;border-top:1px solid var(--line);vertical-align:middle;background:#fff}
.woocommerce-cart table.cart td.product-thumbnail img{width:72px;height:72px;object-fit:cover;border-radius:10px}
.gd-cart-main table.cart td.product-name,.woocommerce-cart table.cart td.product-name{font-size:15px!important;line-height:1.35}
.gd-cart-main table.cart td.product-name a,.woocommerce-cart table.cart td.product-name a{font-size:15px!important;font-weight:600;color:var(--ink);text-decoration:none}
.gd-cart-main table.cart td.product-name a:hover{color:var(--fire-deep)}
.gd-cart-main table.cart td.product-name .variation,.gd-cart-main table.cart td.product-name dl,.woocommerce-cart table.cart td.product-name dl{font-size:12.5px;color:var(--muted);margin:4px 0 0;font-weight:400}
.woocommerce-cart table.cart .product-price,.woocommerce-cart table.cart .product-subtotal{font-family:Oswald;font-weight:600}
.woocommerce-cart table.cart .product-subtotal{color:var(--fire-deep)}
.woocommerce-cart table.cart td.product-remove a.remove{color:var(--muted)!important;font-size:20px;width:26px;height:26px;line-height:24px;text-align:center;border-radius:50%;background:var(--paper-2);display:inline-block}
.woocommerce-cart table.cart td.product-remove a.remove:hover{background:var(--fire);color:var(--ink)!important}
.woocommerce-cart .quantity input.qty{width:64px;height:42px;border:1.5px solid var(--line);border-radius:8px;text-align:center;font-family:Oswald;font-weight:600}
.woocommerce-cart table.cart td.actions{background:var(--paper-2);padding:16px}
.woocommerce-cart table.cart td.actions .coupon{display:flex;gap:8px;float:left}
.woocommerce-cart table.cart td.actions .coupon input{height:44px;border:1.5px solid var(--line);border-radius:8px;padding:0 12px;min-width:150px}
.woocommerce-cart table.cart td.actions button{height:44px}
.woocommerce-cart table.cart td.actions button[name="update_cart"]{float:right;background:transparent;color:var(--ink);border:2px solid var(--ink)}
.woocommerce-cart table.cart td.actions button[name="update_cart"]:hover{background:var(--ink);color:#fff}
.gd-continue{display:inline-block;margin-top:20px;font-weight:600;color:var(--muted);text-decoration:none}
.gd-continue:hover{color:var(--fire-deep)}
/* Order summary card */
.gd-cart-aside{position:sticky;top:90px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:26px;box-shadow:var(--shadow)}
.woocommerce-cart .gd-cart-aside .cart_totals{background:none!important;border:0!important;box-shadow:none!important;padding:0!important;margin:0!important;width:100%!important;float:none!important}
.woocommerce-cart .cart_totals h2{font-size:22px;text-transform:uppercase;margin:0 0 12px;font-weight:700}
/* Clean borderless rows — remove WooCommerce's boxed table grid */
.woocommerce-cart .cart_totals table,.woocommerce-cart .cart_totals table.shop_table{width:100%!important;border:0!important;border-collapse:collapse!important;border-radius:0!important;margin:0 0 16px!important}
.woocommerce-cart .cart_totals table tr,.woocommerce-cart .cart_totals table tbody{border:0!important}
.woocommerce-cart .cart_totals table th{text-align:left;font-weight:500;padding:12px 12px 12px 0!important;color:var(--muted);font-family:Inter;font-size:14px;border:0!important;vertical-align:top}
.woocommerce-cart .cart_totals table td{text-align:right;padding:12px 0 12px 12px!important;font-family:Inter;font-weight:600;font-size:15px;border:0!important;vertical-align:top}
.woocommerce-cart .cart_totals .cart-subtotal th,.woocommerce-cart .cart_totals .shipping th{font-weight:500}
.woocommerce-cart .cart_totals .order-total th{font-family:Oswald;text-transform:uppercase;font-size:16px;color:var(--ink);font-weight:600}
.woocommerce-cart .cart_totals .order-total th,.woocommerce-cart .cart_totals .order-total td{border-top:2px solid var(--line)!important;padding-top:16px!important}
.woocommerce-cart .cart_totals .order-total td{color:var(--fire-deep);font-family:Oswald;font-weight:700;font-size:22px}
.woocommerce-cart .cart_totals .woocommerce-shipping-destination,.woocommerce-cart .cart_totals .shipping-calculator-button{font-size:12.5px;color:var(--muted);line-height:1.4}
.woocommerce-cart .cart_totals .woocommerce-shipping-methods{margin:0;padding:0;list-style:none}
.woocommerce-cart .cart_totals .woocommerce-shipping-methods label{font-weight:600;color:var(--ink)}
.woocommerce-cart .wc-proceed-to-checkout{padding:0}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{width:100%;justify-content:center;font-size:16px;padding:16px;margin:0}
.gd-cart-trust{display:flex;flex-direction:column;gap:9px;margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}
.gd-cart-trust div{display:flex;align-items:center;gap:9px;font-size:13px;font-weight:600;color:#3a352f}
.gd-cart-trust svg{width:18px;height:18px;stroke:var(--fire-deep);fill:none;stroke-width:1.8}

/* Cart page: "You might also like" recommendations */
.gd-cart-recs{margin:44px 0 10px}
.gd-cart-recs-title{font-family:Oswald;text-transform:uppercase;font-size:22px;letter-spacing:.02em;margin:0 0 18px}
.gd-cart-recs-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.gd-rec-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:14px}
.gd-rec-imglink{display:block;border-radius:10px;overflow:hidden;margin-bottom:10px;position:relative;aspect-ratio:1/1;background:var(--paper-2)}
.gd-rec-sale{position:absolute;top:8px;left:8px;background:var(--fire);color:var(--ink);font-family:Oswald;font-weight:700;text-transform:uppercase;font-size:10px;letter-spacing:.05em;padding:2px 7px;border-radius:5px}
.gd-rec-imglink img{width:100%;height:100%;display:block;object-fit:cover}
.gd-rec-title{font-family:Inter;font-weight:600;font-size:14px;color:var(--ink);line-height:1.3;text-decoration:none;margin-bottom:6px}
.gd-rec-title:hover{color:var(--fire-deep)}
.gd-rec-price{font-family:Oswald;font-weight:700;color:var(--fire-deep);font-size:16px;margin-bottom:12px}
.gd-rec-price del{color:var(--muted);font-weight:500;font-size:13px;margin-right:5px}
.gd-rec-add{margin-top:auto;text-align:center;border:1.5px solid var(--ink);border-radius:9px;padding:10px 12px;font-family:Oswald;font-weight:700;text-transform:uppercase;font-size:12px;letter-spacing:.04em;color:var(--ink);background:#fff;text-decoration:none;transition:.15s}
.gd-rec-add:hover{background:var(--ink);color:#fff}
.gd-upsell-thumb{display:block;flex:0 0 auto}

/* Sticky add-to-cart bar (product page) */
.gd-sticky-atc{position:fixed;left:0;right:0;bottom:0;z-index:90;background:#fff;border-top:1px solid var(--line);box-shadow:0 -4px 22px rgba(0,0,0,.10);transform:translateY(110%);transition:transform .28s cubic-bezier(.4,0,.2,1);padding:10px 0}
.gd-sticky-atc.show{transform:translateY(0)}
.gd-sticky-inner{max-width:1240px;margin:0 auto;padding:0 22px;display:flex;align-items:center;gap:14px}
.gd-sticky-media{flex:0 0 auto;width:48px;height:48px;border-radius:8px;overflow:hidden;display:block}
.gd-sticky-media img{width:48px;height:48px;object-fit:cover;display:block;margin:0}
.gd-sticky-info{display:flex;flex-direction:column;min-width:0;flex:1}
.gd-sticky-title{font-weight:600;font-size:14px;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gd-sticky-price{font-family:Oswald;font-weight:700;color:var(--fire-deep);font-size:16px;line-height:1.2}
.gd-sticky-price del{color:var(--muted);font-weight:500;font-size:13px;margin-right:5px}
.gd-sticky-btn{flex:0 0 auto;white-space:nowrap;padding:12px 28px!important}
@media(max-width:600px){.gd-sticky-media{display:none}.gd-sticky-title{font-size:13px}.gd-sticky-btn{padding:12px 20px!important;flex:0 0 auto}.gd-sticky-inner{gap:12px}}

/* AJAX add-to-cart: button loading state + inline error */
.single_add_to_cart_button.loading,.gd-sticky-btn.loading{opacity:.75;pointer-events:none;cursor:progress}
.single_add_to_cart_button.loading::after{content:"";display:inline-block;width:14px;height:14px;margin-left:9px;vertical-align:-2px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:gd-spin .6s linear infinite}
@keyframes gd-spin{to{transform:rotate(360deg)}}
.gd-atc-error{background:#fdecea;border:1px solid #f3c3bf;color:#b00020;padding:10px 14px;border-radius:8px;font-size:13.5px;margin:0 0 14px}

/* Product FAQ accordion */
.gd-faq{max-width:820px;margin:36px 0}
.gd-faq-title{font-family:Oswald;text-transform:uppercase;font-size:24px;letter-spacing:.02em;margin:0 0 16px}
.gd-faq-item{border:1px solid var(--line);border-radius:var(--radius);margin:0 0 10px;background:var(--paper-2);overflow:hidden}
.gd-faq-item summary{list-style:none;cursor:pointer;padding:16px 20px;font-family:Inter;font-weight:600;font-size:15px;color:var(--ink);display:flex;align-items:center;justify-content:space-between;gap:14px}
.gd-faq-item summary::-webkit-details-marker{display:none}
.gd-faq-item summary::after{content:"+";font-family:Oswald;font-weight:700;font-size:22px;color:var(--fire-deep);line-height:1;flex:0 0 auto;transition:transform .2s}
.gd-faq-item[open] summary::after{content:"–"}
.gd-faq-a{padding:0 20px 18px;font-size:14.5px;line-height:1.6;color:#3a352f}
.gd-faq-a p{margin:0 0 8px}
.gd-faq-a p:last-child{margin-bottom:0}
@media(max-width:900px){.gd-cart-recs-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:480px){.gd-cart-recs-grid{grid-template-columns:1fr 1fr;gap:12px}}

/* Recently viewed + Frequently bought together strips */
.gd-recent,.gd-fbt{max-width:1240px;margin:0 auto;padding:8px var(--gd-edge) 56px;clear:both}
.gd-recent-title,.gd-fbt-title{font-family:Oswald;text-transform:uppercase;font-size:24px;letter-spacing:.02em;margin:0 0 20px}
.gd-recent-grid{list-style:none!important;margin:0!important;padding:0!important;display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.gd-recent-grid>li{margin:0!important}
@media(max-width:900px){.gd-recent-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.gd-recent-grid{grid-template-columns:1fr 1fr;gap:14px}}
/* Frequently bought together — same card style/scale as cart recs */
.gd-fbt-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
@media(max-width:900px){.gd-fbt-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:480px){.gd-fbt-grid{grid-template-columns:1fr 1fr;gap:14px}}

/* ===================== My Account ===================== */
/* Give the account content the same centered gutter as the page title
   (it had none, so it went edge-to-edge on mobile). */
.woocommerce-account .entry-content{max-width:1240px;margin:0 auto;padding-left:var(--gd-edge)!important;padding-right:var(--gd-edge)!important}
.woocommerce-account .woocommerce:has(.woocommerce-MyAccount-navigation){display:flex;gap:34px;align-items:flex-start}
.woocommerce-account .woocommerce-MyAccount-navigation{flex:0 0 240px}
.woocommerce-account .woocommerce-MyAccount-content{flex:1;min-width:0;font-size:15px;line-height:1.65;color:#3a352f}
.woocommerce-MyAccount-navigation ul{list-style:none!important;margin:0!important;padding:0!important;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:#fff}
.woocommerce-MyAccount-navigation li{margin:0!important;list-style:none;border-bottom:1px solid var(--line)}
.woocommerce-MyAccount-navigation li:last-child{border-bottom:0}
.woocommerce-MyAccount-navigation li a{display:block;padding:13px 18px;font-family:Oswald;font-weight:600;text-transform:uppercase;font-size:13.5px;letter-spacing:.03em;color:var(--ink);text-decoration:none;transition:.12s}
.woocommerce-MyAccount-navigation li a:hover{background:var(--paper-2)}
.woocommerce-MyAccount-navigation li.is-active a{background:var(--brown);color:var(--fire)}
.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--customer-logout a{color:var(--muted)}
.woocommerce-MyAccount-content h2,.woocommerce-MyAccount-content h3{font-family:Oswald;text-transform:uppercase;margin:0 0 14px;font-size:22px}
.woocommerce-MyAccount-content>p:first-child{margin-top:0}
.woocommerce-MyAccount-content a:not(.button){color:var(--fire-deep)}
/* Tables (orders / downloads) */
.woocommerce-account table.shop_table,.woocommerce-account table.woocommerce-orders-table,.woocommerce-account table.account-orders-table,.woocommerce-account table.woocommerce-MyAccount-downloads{width:100%;border-collapse:collapse;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:#fff;margin:0 0 18px}
.woocommerce-account table.shop_table th{background:var(--paper-2);text-align:left;padding:12px 14px;font-family:Oswald;text-transform:uppercase;font-size:12px;letter-spacing:.04em;border-bottom:1px solid var(--line)}
.woocommerce-account table.shop_table td{padding:12px 14px;border-bottom:1px solid var(--line);font-size:14px;vertical-align:middle}
.woocommerce-account table.shop_table tr:last-child td{border-bottom:0}
/* Buttons */
.woocommerce-account .button,.woocommerce-account .woocommerce-Button,.woocommerce-account button[type=submit],.woocommerce-account input[type=submit]{background:var(--fire)!important;color:var(--ink)!important;border:0;border-radius:10px;padding:12px 22px;font-family:Oswald;font-weight:700;text-transform:uppercase;font-size:14px;letter-spacing:.03em;cursor:pointer;text-decoration:none;display:inline-block;width:auto;transition:.15s}
.woocommerce-account .button:hover,.woocommerce-account button[type=submit]:hover,.woocommerce-account input[type=submit]:hover{background:var(--fire-deep)!important}
.woocommerce-account .button.view{padding:8px 14px;font-size:12px}
/* Inputs */
.woocommerce-account input:not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button]),.woocommerce-account select,.woocommerce-account textarea{width:100%;border:1.5px solid var(--line);border-radius:10px;padding:12px 14px;font-size:15px;font-family:inherit;background:#fff;box-sizing:border-box}
.woocommerce-account input:focus,.woocommerce-account select:focus,.woocommerce-account textarea:focus{outline:none;border-color:var(--fire-deep)}
.woocommerce-account form label{display:block;font-weight:600;font-size:14px;margin-bottom:5px}
.woocommerce-account .woocommerce-form-row{margin-bottom:16px}
/* Login / Register (logged out) */
.woocommerce-account .u-columns{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:start;width:100%}
.woocommerce-account .woocommerce-form-login,.woocommerce-account .woocommerce-form-register,.woocommerce-account form.login,.woocommerce-account form.register{border:1px solid var(--line);border-radius:var(--radius);padding:28px;background:#fff}
/* Addresses */
.woocommerce-account .woocommerce-Addresses{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:12px}
.woocommerce-account .woocommerce-Address{border:1px solid var(--line);border-radius:var(--radius);padding:22px;background:#fff}
.woocommerce-account address{font-style:normal;line-height:1.7}
/* Order-view address columns (side by side + carded) */
.woocommerce-account .woocommerce-columns--addresses,.woocommerce-view-order .woocommerce-columns--addresses{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:18px}
.woocommerce-account .woocommerce-columns--addresses .col-1,.woocommerce-account .woocommerce-columns--addresses .col-2{width:auto!important;float:none!important;margin:0!important;min-width:0}
.woocommerce-account .woocommerce-column__title{font-family:Oswald;text-transform:uppercase;font-size:18px;margin:0 0 10px}
.woocommerce-account .woocommerce-columns--addresses address{border:1px solid var(--line);border-radius:var(--radius);padding:18px;background:#fff;margin:0}
/* Order-actions column: uniform buttons with spacing */
.woocommerce-account .woocommerce-orders-table__cell-order-actions{display:flex;flex-wrap:wrap;gap:8px}
.woocommerce-account .woocommerce-orders-table__cell-order-actions .button{margin:0!important;padding:9px 15px!important;font-size:12px!important}
/* Replace the default yellow <mark> highlight (order no./date/status) with on-brand emphasis */
.woocommerce-account mark,.woocommerce-view-order mark,.woocommerce-order mark,.woocommerce mark{background:transparent;color:var(--fire-deep);font-weight:700}
/* Notices */
.woocommerce-account .woocommerce-message,.woocommerce-account .woocommerce-info,.woocommerce-account .woocommerce-error,.woocommerce-account .woocommerce-notice{border-radius:10px;padding:14px 16px;border-left:3px solid var(--fire);background:var(--paper-2);list-style:none;margin:0 0 18px}
@media(max-width:900px){
  .woocommerce-account .woocommerce:has(.woocommerce-MyAccount-navigation){flex-direction:column}
  .woocommerce-account .woocommerce-MyAccount-navigation{flex-basis:auto;width:100%}
  .woocommerce-account .u-columns,.woocommerce-account .woocommerce-Addresses{grid-template-columns:1fr}
}
/* Orders table → stacked, spaced cards on mobile (was running together) */
@media(max-width:768px){
  .woocommerce-account table.woocommerce-orders-table,
  .woocommerce-account table.account-orders-table{border:0;background:transparent;border-radius:0;overflow:visible;margin:0}
  .woocommerce-account table.woocommerce-orders-table thead{display:none}
  .woocommerce-account table.woocommerce-orders-table tbody tr{
    display:block;border:1px solid var(--line);border-radius:var(--radius);background:#fff;
    margin:0 0 16px;padding:2px 0;box-shadow:0 1px 3px rgba(0,0,0,.05)
  }
  .woocommerce-account table.woocommerce-orders-table tbody td{
    display:flex;justify-content:space-between;align-items:center;gap:14px;width:auto;
    padding:11px 15px;border-bottom:1px solid var(--line);font-size:14px;text-align:right
  }
  .woocommerce-account table.woocommerce-orders-table tbody td::before{
    content:attr(data-title);font-family:Oswald;text-transform:uppercase;font-size:11px;
    letter-spacing:.04em;color:var(--muted);font-weight:700;text-align:left;flex:0 0 auto
  }
  .woocommerce-account table.woocommerce-orders-table tbody td:last-child{border-bottom:0}
  .woocommerce-account .woocommerce-orders-table__cell-order-actions{display:block;text-align:right;padding-top:12px}
  .woocommerce-account .woocommerce-orders-table__cell-order-actions::before{display:block;margin-bottom:8px;text-align:left}
  .woocommerce-account .woocommerce-orders-table__cell-order-actions .button{display:block;width:100%;margin:0 0 8px!important;text-align:center}
  .woocommerce-account .woocommerce-orders-table__cell-order-actions .button:last-child{margin-bottom:0!important}
}
.gd-cart-pay{margin-top:16px;display:flex;flex-wrap:wrap;gap:7px}
.gd-cart-pay b{background:var(--paper-2);padding:5px 9px;border-radius:5px;font-size:10px;color:#4a443c;font-family:Oswald;letter-spacing:.03em;font-weight:600}
/* Cross-sells */
.woocommerce-cart .cross-sells{margin-top:50px;clear:both}
.woocommerce-cart .cross-sells>h2{font-size:28px;text-transform:uppercase;margin-bottom:22px;text-align:center}
@media(max-width:900px){
	.gd-cart-grid{grid-template-columns:1fr;gap:24px}
	.gd-cart-aside{position:static}
	.woocommerce-cart table.cart td.actions .coupon{float:none;flex-wrap:wrap}
	.woocommerce-cart table.cart td.actions button[name="update_cart"]{float:none;margin-top:10px}
}

/* ---------- Favorites page ---------- */
.gd-favorites{margin-top:6px}
.gd-fav-empty{text-align:center;padding:50px 20px;color:var(--muted);font-size:16px}
.gd-fav-empty p{margin:0 0 4px}
.wish.gd-pop{animation:gd-pop .3s ease}
@keyframes gd-pop{0%{transform:scale(1)}45%{transform:scale(1.28)}100%{transform:scale(1)}}

/* ---------- Default page (existing content pages) ---------- */
.gd-page{max-width:860px;margin:0 auto;padding:50px 22px 70px}
.gd-page-wide{max-width:1200px;margin:0 auto;padding:50px 22px 70px}
.gd-page h1.entry-title{font-size:clamp(30px,4vw,44px);text-transform:uppercase;margin-bottom:24px}
.gd-page .entry-content{font-size:16px;line-height:1.7;color:#3a352f}
.gd-page .entry-content h2{margin:28px 0 12px;font-size:26px;text-transform:uppercase}
.gd-page .entry-content a{color:var(--fire-deep);text-decoration:underline}

/* ---------- Full Width page template (Template Name: Full Width) ---------- */
.gd-page-full{width:100%;padding:50px clamp(24px,6vw,90px) 70px}
.gd-page-full>article{max-width:none}
.gd-page-full h1.entry-title{font-size:clamp(30px,4vw,44px);text-transform:uppercase;margin:0 0 28px}
.gd-page-full .entry-content{font-size:16px;line-height:1.7;color:#3a352f}
.gd-page-full .entry-content h2{margin:34px 0 14px;font-size:28px;text-transform:uppercase}
.gd-page-full .entry-content h3{margin:26px 0 10px;font-size:21px}
.gd-page-full .entry-content a{color:var(--fire-deep);text-decoration:underline}
.gd-page-full .entry-content img{max-width:100%;height:auto}
/* Wrap any section in a .wrap div to re-center it at 1240px when you don't want full-bleed. */
.gd-page-full .entry-content > .wrap{padding-left:0;padding-right:0}

/* ---------- Responsive ---------- */
@media(max-width:1000px){
  .cat-grid,.prod-grid,.why-grid{grid-template-columns:repeat(2,1fr)}
  .split,.rev-grid{grid-template-columns:1fr}
  .shop-layout{grid-template-columns:1fr}
  .filters{display:none;background:#fff;border:1px solid var(--line);border-radius:14px;padding:20px;margin-bottom:20px}
  .filters.show{display:block}
  .mobile-filter-btn{display:flex}
  .pdp{grid-template-columns:1fr;gap:28px}
  .rev-summary{grid-template-columns:1fr;gap:24px}
  .foot-grid{grid-template-columns:1fr 1fr;gap:30px}
  .foot-brand{grid-column:1/-1}
  .foot-perks .wrap{grid-template-columns:1fr 1fr}
  .mainnav{display:none}
  .hamb{display:flex}
}
@media(max-width:560px){
  .cat-grid,.prod-grid{grid-template-columns:1fr 1fr;gap:12px}
  .hero{min-height:540px}
  .news{padding:30px}
  .foot-grid{grid-template-columns:1fr}
  .foot-perks .wrap{grid-template-columns:1fr}
  .foot-bottom{flex-direction:column;text-align:center;gap:12px}
}
