/* Aakaara Main Stylesheet */

/* Variables */
:root{
  --cream:#F4EEE2; --sand:#E7DAC6; --linen:#FBF7EF; --taupe:#9C8569;
  --ink:#2C251F;   --ink-soft:#5C5246; --gold:#A6845C; --gold-deep:#8A6B45;
  --display:"Fraunces",Georgia,serif;
  --body:"Hanken Grotesk",system-ui,sans-serif;
  --ease:cubic-bezier(.22,.61,.36,1);
}

/* Reset */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{
  font-family:var(--body);color:var(--ink);line-height:1.6;
  -webkit-font-smoothing:antialiased;
  background:linear-gradient(150deg,#A6906F 0%,#8C7659 45%,#6F5C45 100%);
  padding:clamp(8px,1.4vw,20px);
  /* Do not use overflow-x:hidden on body — it clips position:fixed header controls on mobile */
  overflow-x:visible;
  min-height:100vh;
}
img{max-width:100%;height:auto;display:block;}
a{color:inherit;text-decoration:none;}
ul{list-style:none;}
button{cursor:pointer;border:none;background:none;font-family:inherit;}

/* WP accessibility utility theme reset strips bundled WP styles */
.screen-reader-text{
  border:0;clip:rect(1px,1px,1px,1px)!important;clip-path:inset(50%)!important;
  height:1px!important;margin:-1px!important;overflow:hidden!important;padding:0!important;
  position:absolute!important;width:1px!important;white-space:nowrap!important;word-wrap:normal!important;
}

/* Page Card */
.page{
  border-radius:clamp(18px,2vw,30px);
  position:relative;
  box-shadow:0 50px 90px -40px rgba(40,32,24,.6);
  overflow-x:visible;
  max-width:100%;
}
/* Page banner title bar for inner pages (my-account, cart, etc.) */
.page-banner{
  background:var(--sand);
  padding:clamp(32px,4vw,52px) clamp(20px,4vw,56px) clamp(24px,3vw,40px);
  border-bottom:1px solid var(--sand);
}
.page-banner .eyebrow{
  display:block;font-family:var(--body);font-size:11px;font-weight:600;
  letter-spacing:.34em;text-transform:uppercase;color:var(--gold);
  margin-bottom:10px;
}
.page-banner h1{
  font-family:var(--display);font-weight:360;
  font-size:clamp(28px,3.8vw,50px);color:var(--ink);
  letter-spacing:-.01em;margin:0;
}
/* div.page is the linen card that sits on the brown body gradient */
div.page{background:var(--linen);}
/* overflow on body.page: keep vertical scroll, clip horizontal only on the card */
body.page{overflow-x:clip;overflow-y:auto;}
html{overflow-x:clip;}

/* Grain Overlay */
.grain{
  position:fixed;inset:0;z-index:9998;pointer-events:none;opacity:.035;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}

/* Custom Cursor */
.cursor,.cursor-d{position:fixed;top:0;left:0;border-radius:50%;pointer-events:none;z-index:10000;mix-blend-mode:difference;}
.cursor{width:8px;height:8px;background:#fff;transform:translate(-50%,-50%);}
.cursor-d{width:38px;height:38px;border:1px solid rgba(255,255,255,.6);transform:translate(-50%,-50%);transition:width .3s,height .3s,background .3s;}
.cursor-d.grow{width:70px;height:70px;background:rgba(255,255,255,.12);}
@media(hover:none){.cursor,.cursor-d{display:none;}}

/* Typography */
.wrap{max-width:1200px;margin:0 auto;padding:0 clamp(20px,4vw,56px);}
.eyebrow{font-size:11px;font-weight:600;letter-spacing:.34em;text-transform:uppercase;color:var(--gold);}
h1,h2,h3{font-family:var(--display);font-weight:380;line-height:1.04;letter-spacing:-.01em;color:var(--ink);}
h2{font-size:clamp(30px,4.2vw,54px);}
h3{font-size:clamp(20px,2.2vw,28px);}
.italic{font-style:italic;color:var(--gold-deep);}
p{color:var(--ink-soft);font-weight:300;font-size:16.5px;}

/* Buttons */
.btn{
  display:inline-flex;align-items:center;gap:12px;
  font-size:12px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;
  color:var(--linen);background:var(--gold);border:none;border-radius:40px;
  padding:15px 30px;cursor:pointer;transition:background .4s;text-decoration:none;
  font-family:var(--body);
}
.btn:hover{background:var(--gold-deep);}
.btn-outline{background:transparent;color:var(--ink);border:1.5px solid var(--ink);}
.btn-outline:hover{background:var(--ink);color:var(--linen);}
.btn-ghost{background:rgba(255,255,255,.12);color:var(--linen);border:1px solid rgba(255,255,255,.28);}
.btn-ghost:hover{background:rgba(255,255,255,.22);}

/* Reveal Animation */
.reveal{opacity:0;transform:translateY(40px);transition:opacity .9s var(--ease),transform .9s var(--ease);}
.reveal.in{opacity:1 !important;transform:none !important;}
.d1{transition-delay:.1s}.d2{transition-delay:.2s}.d3{transition-delay:.3s}.d4{transition-delay:.4s}

/* Nav */
.nav{display:flex;align-items:center;justify-content:space-between;padding:26px clamp(20px,4vw,56px);position:relative;z-index:30;}
.nav ul{display:flex;gap:34px;list-style:none;margin:0;padding:0;}
.nav a{font-size:12px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--ink);text-decoration:none;position:relative;}
.nav a::after{content:"";position:absolute;left:0;bottom:-5px;width:0;height:1px;background:var(--gold);transition:width .4s var(--ease);}
.nav a:hover::after,.nav a.active::after{width:100%;}
.nav .logo,.nav .logo-link{display:block;text-decoration:none;line-height:0;flex-shrink:0;}
.nav .logo img,.nav .logo-link img{display:block;width:auto;height:auto;max-width:clamp(200px,26vw,340px);max-height:clamp(52px,6.5vw,82px);}
.nav .logo::after,.nav .logo-link::after{display:none;}
.nav .pill,.nav .nav-menu-cta{border:1px solid var(--ink);border-radius:40px;padding:10px 22px;font-size:12px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;}
.nav .pill::after,.nav-menu-cta::after{display:none !important;}

/* Mobile nav */
.nav-menu{display:contents;}
.nav-menu ul{display:flex;gap:34px;list-style:none;margin:0;padding:0;}
.nav-toggle{display:none;flex-direction:column;justify-content:center;align-items:center;gap:6px;width:44px;height:44px;padding:10px;background:transparent;border:none;cursor:pointer;flex-shrink:0;position:relative;z-index:10001;}
.nav-toggle-bar{display:block;width:24px;height:1.5px;background:var(--ink);transition:transform .4s var(--ease),opacity .3s;}
.nav.is-open .nav-toggle-bar:nth-child(1){transform:translateY(7.5px) rotate(45deg);}
.nav.is-open .nav-toggle-bar:nth-child(2){opacity:0;}
.nav.is-open .nav-toggle-bar:nth-child(3){transform:translateY(-7.5px) rotate(-45deg);}

@media(max-width:880px){
  .nav .logo img,.nav .logo-link img{max-width:clamp(180px,38vw,300px);max-height:clamp(48px,9vw,70px);}
  .nav-toggle{display:flex;}
  .nav-menu{
    display:flex;position:fixed;inset:0;z-index:10000;
    flex-direction:column;justify-content:center;align-items:center;
    gap:0;padding:clamp(80px,14vw,120px) clamp(24px,6vw,48px);
    background:var(--cream);opacity:0;visibility:hidden;pointer-events:none;
    transition:opacity .45s var(--ease),visibility .45s;
  }
  .nav.is-open .nav-menu{opacity:1;visibility:visible;pointer-events:auto;}
  .nav-menu ul{flex-direction:column;gap:0;width:100%;max-width:320px;text-align:center;}
  .nav-menu ul li{width:100%;}
  .nav-menu ul a{display:block;padding:18px 24px;font-size:13px;letter-spacing:.2em;}
  .nav-menu ul a::after{display:none;}
  .nav-menu-cta{margin-top:36px;}
}

/* Page Hero (inner pages) */
.page-hero{background:var(--ink);padding:clamp(80px,10vw,140px) 0 clamp(60px,8vw,100px);position:relative;overflow:hidden;}
.page-hero::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 65% 50%,rgba(166,132,92,.14) 0%,transparent 68%);}
.hero-dec{position:absolute;right:0;top:0;bottom:0;width:42%;opacity:.06;background:repeating-linear-gradient(60deg,var(--gold) 0,var(--gold) 1px,transparent 0,transparent 28px);}
.page-hero .eyebrow{display:block;margin-bottom:16px;}
.page-hero h1{font-family:var(--display);font-weight:360;font-size:clamp(54px,9vw,130px);line-height:.94;color:var(--linen);}
.page-hero .sub{color:rgba(231,218,198,.62);font-size:17px;font-weight:300;margin-top:22px;max-width:460px;}

/* Legal pages */
.legal-hero{
  padding:clamp(68px,8vw,108px) 0 clamp(56px,7vw,84px);
}
.legal-hero h1{
  max-width:900px;
  font-size:clamp(48px,7vw,94px);
}
.legal-hero .sub{max-width:520px;}
.legal-page{
  position:relative;
  background:var(--cream);
  padding:clamp(54px,7vw,96px) 0 clamp(70px,9vw,120px);
}
.legal-page::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.36;
  background:
    radial-gradient(circle at 8% 10%,rgba(166,132,92,.12),transparent 28%),
    radial-gradient(circle at 92% 88%,rgba(156,133,105,.12),transparent 30%);
}
.legal-page__wrap{
  position:relative;
  max-width:980px;
}
.legal-content{
  background:var(--linen);
  border:1px solid var(--sand);
  border-radius:clamp(18px,2.2vw,28px);
  box-shadow:0 26px 70px -48px rgba(44,37,31,.48);
  padding:clamp(30px,5vw,68px) clamp(24px,6vw,76px);
}
.legal-content > :first-child{margin-top:0;}
.legal-content > :last-child{margin-bottom:0;}
.legal-content p,
.legal-content li{
  color:var(--ink-soft);
  font-family:var(--body);
  font-size:clamp(15.5px,1.2vw,17px);
  font-weight:300;
  line-height:1.78;
}
.legal-content p{margin:0 0 18px;}
.legal-content > p:first-child{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  margin-bottom:26px;
  padding:7px 14px;
  border:1px solid var(--sand);
  border-radius:30px;
  color:var(--taupe);
  font-size:11px;
  font-weight:600;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.legal-content > p:first-child em{font-style:normal;}
.legal-content h2{
  position:relative;
  margin:clamp(34px,5vw,52px) 0 15px;
  padding-top:17px;
  color:var(--ink);
  font-size:clamp(25px,3vw,36px);
  font-weight:380;
  line-height:1.12;
}
.legal-content h2::before{
  content:"";
  position:absolute;
  top:0;
  left:0;
  width:42px;
  height:2px;
  background:var(--gold);
}
.legal-content ul,
.legal-content ol{
  display:grid;
  gap:9px;
  margin:4px 0 22px;
  padding-left:1.35rem;
}
.legal-content ul{list-style:disc;}
.legal-content ol{list-style:decimal;}
.legal-content li{padding-left:6px;}
.legal-content li::marker{color:var(--gold);}
.legal-content strong{
  color:var(--ink);
  font-weight:600;
}
.legal-content a{
  color:var(--gold-deep);
  text-decoration:underline;
  text-decoration-color:rgba(138,107,69,.35);
  text-underline-offset:3px;
  transition:color .25s var(--ease),text-decoration-color .25s var(--ease);
}
.legal-content a:hover{
  color:var(--ink);
  text-decoration-color:var(--gold);
}
@media(max-width:599px){
  .legal-hero{padding:58px 0 50px;}
  .legal-hero h1{font-size:clamp(42px,13vw,62px);}
  .legal-hero .sub{font-size:15px;line-height:1.65;}
  .legal-page{padding:32px 0 54px;}
  .legal-content{border-radius:16px;padding:28px 20px 38px;}
  .legal-content h2{margin-top:34px;}
}

/* Marquee */
.marquee{background:var(--ink);color:var(--sand);padding:26px 0;overflow:hidden;white-space:nowrap;}
.marquee-track{display:inline-block;animation:marquee-scroll 26s linear infinite;}
.marquee span{font-family:var(--display);font-style:italic;font-size:clamp(26px,3.2vw,42px);padding:0 30px;}
.marquee .dot{color:var(--gold);font-style:normal;}
@keyframes marquee-scroll{to{transform:translateX(-50%)}}

/* Footer UAE/Elementor controls all styling */
footer{overflow:hidden;}
#colophon{overflow:hidden;}

/* HOME: Hero */
.hero{text-align:center;padding:30px 0 0;position:relative;}
.hero-title,.aa-hero-title{font-family:var(--display);font-weight:360;font-size:clamp(72px,17vw,250px);line-height:.9;letter-spacing:.02em;color:var(--ink);position:relative;z-index:5;overflow:visible;}
/* Also tighten homepage hero title so it doesn't force page overflow */
@media(max-width:767px){
  .hero-title,.aa-hero-title{
    font-size:clamp(40px,11vw,64px);
    max-width:100%;
    padding:0 12px;
    box-sizing:border-box;
    overflow-wrap:anywhere;
  }
  .elementor .elementor-heading-title{
    max-width:100%;
    overflow-wrap:anywhere;
  }
  /* Homepage big brand title */
  .elementor-element-0d0a834 .elementor-heading-title{
    font-size:clamp(42px,14vw,72px) !important;
    line-height:1 !important;
    padding:0 16px !important;
    box-sizing:border-box !important;
    word-break:break-word !important;
  }
  .elementor-element-f2d72e2{
    padding-left:16px !important;padding-right:16px !important;
    box-sizing:border-box !important;
  }
}
.hero-title .ltr,.aa-hero-title .ltr{display:inline-block;transform:translateY(115%) rotate(8deg);opacity:0;transition:transform 1s var(--ease),opacity 1s var(--ease);}
.loaded .hero-title .ltr,body.loaded .aa-hero-title .ltr{transform:none;opacity:1;}
.hero-sub,.aa-fade-in{opacity:0;transform:translateY(20px);transition:opacity .9s var(--ease) .6s,transform .9s var(--ease) .6s;}
.loaded .hero-sub,body.loaded .aa-fade-in{opacity:1;transform:none;}
.hero-sub{margin:14px auto 0;max-width:440px;font-size:17px;color:var(--ink-soft);}
.hero-media{position:relative;margin:-26px auto 0;max-width:1120px;height:clamp(340px,58vw,640px);border-radius:26px;overflow:hidden;}
.hero-media .hero-ph{position:absolute;inset:-8%;background-size:cover;background-position:center;transition:transform .2s ease-out;}
.hero-pill{
  position:absolute;top:42px;left:50%;transform:translateX(-50%);z-index:6;
  background:rgba(44,37,31,.86);backdrop-filter:blur(8px);color:var(--linen);
  border-radius:44px;padding:15px 30px;font-size:12px;font-weight:600;
  letter-spacing:.16em;text-transform:uppercase;display:inline-flex;gap:12px;
  align-items:center;cursor:pointer;border:none;font-family:var(--body);
  text-decoration:none;
}
.hero-pill .ar{transition:transform .4s var(--ease);}
.hero-pill:hover .ar{transform:translateX(6px);}

/* HOME: Statement */
.statement{display:grid;grid-template-columns:1.3fr 1fr;gap:50px;align-items:end;padding:clamp(70px,9vw,130px) 0 clamp(40px,5vw,70px);}
.statement h2{font-size:clamp(32px,4.6vw,62px);}
.statement .right p{font-size:16px;}
.statement .right .eyebrow{display:block;margin-bottom:14px;}

/* HOME: Mosaic */
.mosaic{display:grid;grid-template-columns:repeat(5,1fr);gap:18px;align-items:start;padding-bottom:clamp(50px,7vw,100px);}
.tile{border-radius:20px;overflow:hidden;position:relative;cursor:pointer;}
.tile .tile-ph{position:absolute;inset:0;background-size:cover;background-position:center;transition:transform 1.1s var(--ease);}
.tile:hover .tile-ph{transform:scale(1.08);}
.tile::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(40,32,24,.4));opacity:0;transition:.5s;}
.tile:hover::after{opacity:1;}
.tile .cap{position:absolute;left:16px;bottom:14px;z-index:2;color:var(--linen);font-size:13px;letter-spacing:.1em;text-transform:uppercase;opacity:0;transform:translateY(8px);transition:.5s var(--ease);}
.tile:hover .cap{opacity:1;transform:none;}
.t1{height:300px;margin-top:40px}.t2{height:380px}.t3{height:440px;margin-top:20px}.t4{height:360px}.t5{height:300px;margin-top:50px}

/* HOME: Arch Cards */
.arches{background:var(--sand);padding:clamp(70px,9vw,120px) 0;}
.arch-head{text-align:center;margin-bottom:56px;}
.arch-head .eyebrow{display:block;margin-bottom:14px;}
.arch-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;}
.arch{background:var(--linen);border-radius:200px 200px 20px 20px;padding:14px 14px 34px;text-align:center;transition:transform .6s var(--ease),box-shadow .6s var(--ease);cursor:pointer;}
.arch:hover{transform:translateY(-12px);box-shadow:0 40px 60px -34px rgba(40,32,24,.5);}
.arch-img{height:280px;border-radius:190px 190px 14px 14px;overflow:hidden;margin-bottom:24px;position:relative;}
.arch-img img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;}
.arch h3{margin-bottom:10px;}
.arch p{font-size:14.5px;padding:0 24px;margin-bottom:18px;}
.arch .more{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-deep);border-bottom:1px solid var(--gold);padding-bottom:3px;display:inline-block;text-decoration:none;}

/* HOME: Split */
.split{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:60px;padding:clamp(70px,9vw,120px) 0;}
.split .eyebrow{display:block;margin-bottom:14px;}
.split h2{margin-bottom:22px;}
.split p{margin-bottom:28px;}
.split-img{height:440px;border-radius:0 0 220px 220px;overflow:hidden;}
.split-img img,.split-img .split-ph{width:100%;height:100%;object-fit:cover;object-position:center;background-size:cover;background-position:center;}

/* HOME: Popular Products */
.popular{background:var(--linen);padding:clamp(70px,9vw,120px) 0;}
.pop-head{text-align:center;margin-bottom:50px;}
.pop-head .eyebrow{display:block;margin-bottom:14px;}
.pop-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;}
.card{background:var(--cream);border-radius:16px;overflow:hidden;transition:transform .5s var(--ease);cursor:pointer;}
.card:hover{transform:translateY(-8px);}
.card-img{height:240px;overflow:hidden;}
.card-img img{width:100%;height:100%;object-fit:cover;object-position:center;transition:transform 1s var(--ease);}
.card:hover .card-img img{transform:scale(1.07);}
.card-body{padding:18px 20px;display:flex;justify-content:space-between;align-items:center;}
.card-body .nm{font-family:var(--display);font-size:18px;}
.card-body .pr{font-size:13px;color:var(--gold-deep);letter-spacing:.04em;}
.like{display:flex;align-items:center;gap:7px;cursor:pointer;font-size:13px;color:var(--ink-soft);user-select:none;flex-shrink:0;}
.like svg{width:18px;height:18px;fill:none;stroke:var(--ink-soft);stroke-width:1.5;transition:transform .3s var(--ease);}
.like.liked svg{fill:#C0563E!important;stroke:#C0563E!important;}
.like.pop svg{transform:scale(1.4)!important;}

/* HOME: CTA */
.cta{text-align:center;padding:clamp(80px,10vw,130px) 0;background:var(--sand);}
.cta .eyebrow{display:block;margin-bottom:16px;}
.cta h2{max-width:740px;margin:0 auto 20px;}
.cta p{max-width:500px;margin:0 auto 34px;}

/* COLLECTIONS PAGE */
.coll-intro{padding:clamp(60px,8vw,100px) 0;text-align:center;}
.coll-intro p{max-width:600px;margin:16px auto 0;}
.arch-section{background:var(--sand);padding:clamp(60px,8vw,100px) 0;}
.feat{padding:clamp(70px,9vw,120px) 0;}
.feat.sand{background:var(--sand);}
.feat-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,6vw,80px);align-items:start;}
.feat-text .eyebrow{display:block;margin-bottom:14px;}
.feat-text h2{margin-top:12px;margin-bottom:20px;}
.feat-text>p{margin-bottom:28px;}
.feat-img{height:500px;border-radius:0 0 250px 250px;overflow:hidden;position:relative;}
.feat-img.sq{border-radius:20px;}
.feat-img img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;}
.feat-prods{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:32px;}
.mc{background:var(--sand);border-radius:12px;overflow:hidden;cursor:pointer;transition:transform .4s var(--ease);}
.mc.on-sand{background:var(--cream);}
.mc:hover{transform:translateY(-6px);}
.mc-img{height:148px;position:relative;}
.mc-img img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;}
.mc-body{padding:12px 14px;}
.mc-body .nm{font-family:var(--display);font-size:15px;color:var(--ink);}
.mc-body .pr{font-size:12px;color:var(--gold-deep);letter-spacing:.04em;margin-top:2px;}
.custom-cta{background:var(--ink);padding:clamp(80px,10vw,130px) 0;text-align:center;position:relative;overflow:hidden;}
.custom-cta::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 50% 60%,rgba(166,132,92,.16) 0%,transparent 65%);}
.custom-cta .eyebrow{display:block;margin-bottom:16px;}
.custom-cta h2{color:var(--linen);max-width:680px;margin:0 auto 20px;}
.custom-cta p{color:rgba(231,218,198,.65);max-width:500px;margin:0 auto 36px;}
.custom-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;max-width:1000px;margin:0 auto 40px;}
.custom-gallery img{width:100%;height:clamp(180px,22vw,280px);object-fit:cover;object-position:center;display:block;border-radius:16px;box-shadow:0 24px 48px -24px rgba(0,0,0,.4);}

/* OUR STORY PAGE */
.opening{background:var(--sand);padding:clamp(80px,10vw,130px) 0;text-align:center;}
.opening blockquote{font-family:var(--display);font-style:italic;font-size:clamp(24px,3.6vw,50px);font-weight:360;line-height:1.18;color:var(--ink);max-width:860px;margin:0 auto 24px;}
.opening cite{font-size:11px;letter-spacing:.32em;text-transform:uppercase;color:var(--gold);font-style:normal;}
.origin{padding:clamp(70px,9vw,120px) 0;}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:clamp(50px,7vw,90px);align-items:center;}
.col-text .eyebrow{display:block;margin-bottom:14px;}
.col-text h2{margin-top:12px;margin-bottom:22px;}
.col-text p+p{margin-top:16px;}
.arch-img-story{height:540px;border-radius:20px 20px 200px 20px;overflow:hidden;position:relative;}
.arch-img-story img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;}
.artist-section{background:var(--ink);padding:clamp(70px,9vw,120px) 0;}
.artist-photo{height:580px;border-radius:200px 20px 20px 20px;overflow:hidden;position:relative;}
.artist-photo img{width:100%;height:100%;object-fit:cover;object-position:center 20%;}
.artist-text .eyebrow{display:block;margin-bottom:14px;}
.artist-text h2{color:var(--linen);margin-top:12px;margin-bottom:22px;}
.artist-text p{color:rgba(231,218,198,.72);}
.artist-text p+p{margin-top:16px;}
.artist-name{font-family:var(--display);font-style:italic;font-size:26px;color:var(--gold);margin-top:30px;display:block;}
.craft{background:var(--linen);padding:clamp(70px,9vw,120px) 0;}
.craft-head{text-align:center;margin-bottom:60px;}
.craft-head .eyebrow{display:block;margin-bottom:14px;}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;}
.step{padding:36px 32px;background:var(--cream);border-radius:20px;position:relative;}
.step-num{font-family:var(--display);font-size:68px;font-weight:360;line-height:1;color:var(--sand);position:absolute;top:22px;right:24px;letter-spacing:-.02em;}
.step-img{height:190px;border-radius:14px;overflow:hidden;margin-bottom:22px;position:relative;}
.step-img img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;}
.step h3{margin-bottom:12px;font-size:21px;position:relative;}
.step p{font-size:15px;position:relative;}
.values-section{padding:clamp(70px,9vw,120px) 0;}
.values-head{text-align:center;margin-bottom:56px;}
.values-head .eyebrow{display:block;margin-bottom:14px;}
.val-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--sand);border-radius:20px;overflow:hidden;}
.val{padding:48px 40px;background:var(--cream);}
.val-img{height:170px;border-radius:14px;overflow:hidden;margin-bottom:22px;}
.val-img img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;}
.val-word{font-family:var(--display);font-style:italic;font-size:42px;color:var(--gold);display:block;margin-bottom:18px;line-height:1;}
.val h3{margin-bottom:12px;font-size:20px;}
.val p{font-size:15px;}
.story-gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;max-width:960px;margin:0 auto 40px;}
.story-gallery img{width:100%;height:clamp(120px,14vw,180px);object-fit:cover;object-position:center;display:block;border-radius:14px;box-shadow:0 20px 40px -24px rgba(40,32,24,.35);}
.story-cta{background:var(--sand);padding:clamp(80px,10vw,120px) 0;text-align:center;}
.story-cta .eyebrow{display:block;margin-bottom:16px;}
.story-cta h2{max-width:680px;margin:0 auto 20px;}
.story-cta p{max-width:500px;margin:0 auto 34px;}
.btn-row{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;}

/* SHOP PAGE */
.shop-header{background:var(--sand);padding:clamp(40px,6vw,80px) 0 clamp(28px,4vw,48px);}
.shop-header .wrap{container-type:inline-size;}
.shop-header .eyebrow{display:block;margin-bottom:12px;}
.shop-header h1{
  display:flex;flex-wrap:nowrap;align-items:baseline;gap:.22em;
  max-width:100%;white-space:nowrap;
  font-family:var(--display);font-weight:360;
  font-size:clamp(22px,min(5.5vw,8cqi),56px);
  line-height:1;letter-spacing:-.01em;color:var(--ink);
}
.shop-header h1 em{font-style:italic;color:var(--gold);}
.shop-header p{margin-top:14px;max-width:480px;}

/* Filter bar */
.filter-bar{background:var(--cream);border-top:1px solid var(--sand);border-bottom:1px solid var(--sand);position:sticky;top:0;z-index:20;}
.filter-inner{max-width:1200px;margin:0 auto;padding:12px clamp(20px,4vw,56px);display:flex;align-items:center;justify-content:space-between;gap:16px;}
.filters{display:flex;gap:4px;align-items:center;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-shrink:1;min-width:0;}
.filters::-webkit-scrollbar{display:none;}
.fbtn{font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;white-space:nowrap;color:var(--ink-soft);background:transparent;border:1.5px solid transparent;border-radius:30px;padding:7px 18px;cursor:pointer;transition:all .2s;font-family:var(--body);text-decoration:none;display:inline-block;flex-shrink:0;}
.fbtn:hover{color:var(--ink);}
.fbtn.on{color:var(--ink);border-color:var(--ink);}
.sort-wrap{display:flex;align-items:center;gap:8px;flex-shrink:0;}
.sort-label{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--taupe);white-space:nowrap;}
.sort-wrap .woocommerce-ordering{margin:0;}
.sort-wrap .woocommerce-ordering select{font-family:var(--body);font-size:12px;border:1.5px solid var(--sand);border-radius:20px;padding:6px 30px 6px 12px;background:var(--cream);color:var(--ink);outline:none;cursor:pointer;-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%239C8569' stroke-width='1.4' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;}

/* Grid section */
.grid-section{padding:clamp(40px,6vw,80px) 0;background:var(--cream);}

/* Shop page products grouped by subcategory */
.shop-grouped .shop-subcat-section{margin-bottom:clamp(48px,7vw,80px);}
.shop-grouped .shop-subcat-section:last-child{margin-bottom:0;}
.shop-grouped .shop-subcat-title{
  font-family:var(--body);font-size:11px;font-weight:600;
  letter-spacing:.34em;text-transform:uppercase;color:var(--gold);
  margin:0 0 clamp(20px,3vw,28px);text-align:left;
}

/* WooCommerce product grid */
/* Override WC plugin's float-based legacy layout */
.woocommerce ul.products,
.woocommerce-page ul.products{
  display:grid !important;
  grid-template-columns:repeat(4,1fr) !important;
  gap:24px !important;
  list-style:none !important;
  margin:0 !important;
  padding:0 !important;
  float:none !important;
}
/* WC float-clear pseudo-elements become grid items remove them */
.woocommerce ul.products::before,
.woocommerce ul.products::after,
.woocommerce-page ul.products::before,
.woocommerce-page ul.products::after{
  content:none !important;
  display:none !important;
}

/* Product card */
/* WC renders: li > a.link(img + sc-tag + h2 + price) + a.button + butto... */
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product{
  width:auto !important;
  margin:0 !important;
  float:none !important;
  clear:none !important;
  display:flex;
  flex-direction:column;
  background:var(--linen);
  border-radius:16px;
  overflow:hidden;
  position:relative;
  transition:transform .5s var(--ease);
}
.woocommerce ul.products li.product:hover,
.woocommerce-page ul.products li.product:hover{transform:translateY(-6px);}

/* Product link (wraps image + text) grows to fill card */
.woocommerce ul.products li.product .woocommerce-LoopProduct-link{
  flex:1;
  display:flex;
  flex-direction:column;
  text-decoration:none;
  color:inherit;
}

/* Product image */
.woocommerce ul.products li.product .woocommerce-LoopProduct-link img{
  width:100%;
  height:240px;
  object-fit:cover;
  object-position:center;
  display:block;
  flex-shrink:0;
  transition:transform .8s var(--ease);
}
.woocommerce ul.products li.product:hover .woocommerce-LoopProduct-link img{transform:scale(1.05);}

/* Category tag */
.woocommerce ul.products li.product .sc-tag{
  font-size:10px;letter-spacing:.2em;text-transform:uppercase;
  color:var(--taupe);padding:14px 16px 0;display:block;
}

/* Product title */
.woocommerce ul.products li.product .woocommerce-loop-product__title{
  font-family:var(--display);font-size:17px;font-weight:380;line-height:1.2;
  color:var(--ink);padding:5px 16px 3px;margin:0;
}

/* Price */
.woocommerce ul.products li.product .price{
  display:block;font-size:13px;color:var(--ink-soft);
  padding:3px 16px 14px;margin:0;
}
.woocommerce ul.products li.product .price ins{text-decoration:none;}
.woocommerce ul.products li.product .price bdi{font-weight:400;}

/* Add to cart button leaves 52px on right for the heart */
.woocommerce ul.products li.product .button{
  display:block;
  margin:0 16px 16px;
  margin-top:auto;
  width:calc(100% - 32px - 44px) !important;
  padding:10px 14px;
  background:var(--ink) !important;
  color:var(--linen) !important;
  font-family:var(--body);font-size:10px;font-weight:600;
  letter-spacing:.16em;text-transform:uppercase;
  border-radius:24px;text-align:center;
  transition:background .3s;text-decoration:none;
  border:none;cursor:pointer;
  position:relative;
}
.woocommerce ul.products li.product .button:hover{background:var(--ink-soft) !important;}

/* Add-to-cart: spinner */
@keyframes atc-spin{to{transform:rotate(360deg);}}

/* Hide button text; keep button size so layout doesn't shift */
.woocommerce ul.products li.product .button.loading{
  color:transparent !important;
  pointer-events:none;
}

/* Override WooCommerce's own ::after icon-font spinner with a centred C... */
.woocommerce ul.products li.product .button.loading::after{
  content:'' !important;
  font-family:inherit !important;
  font-size:0 !important;
  vertical-align:initial !important;
  margin:0 !important;
  position:absolute !important;
  left:50% !important;
  top:50% !important;
  transform:translate(-50%,-50%) !important;
  width:14px !important;
  height:14px !important;
  border:2px solid rgba(251,247,239,.28) !important;
  border-top-color:var(--linen) !important;
  border-radius:50% !important;
  animation:atc-spin .65s linear infinite !important;
  background:none !important;
}

/* View cart link WooCommerce appends to li.product */
/* Needs !important woocommerce.css is loaded after theme CSS */
.woocommerce ul.products li.product .added_to_cart.wc-forward{
  display:block !important;
  text-align:center !important;
  margin:0 16px 16px !important;
  padding:0 !important;
  font-size:11px !important;
  font-weight:500 !important;
  letter-spacing:.08em !important;
  text-transform:uppercase !important;
  color:var(--gold-deep) !important;
  text-decoration:none !important;
  background:none !important;
  border:none !important;
  width:calc(100% - 32px - 44px) !important;
  transition:color .2s;
}
.woocommerce ul.products li.product .added_to_cart.wc-forward:hover{color:var(--ink) !important;}

/* Screen-reader-only text must not affect card layout (variable products) */
.woocommerce ul.products li.product .screen-reader-text,
.woocommerce-page ul.products li.product .screen-reader-text{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip-path:inset(50%)!important;
  white-space:nowrap!important;
  border:0!important;
}

/* Heart button absolute, aligned with the button row */
.woocommerce ul.products li.product .like-btn{
  position:absolute;bottom:16px;right:16px;
  display:flex;align-items:center;justify-content:center;
  width:36px;height:36px;border-radius:50%;
  border:1.5px solid var(--sand);background:var(--linen);
  cursor:pointer;transition:border-color .3s;flex-shrink:0;
}
.woocommerce ul.products li.product .like-btn:hover{border-color:var(--taupe);}
.woocommerce ul.products li.product .like-btn svg{
  width:14px;height:14px;fill:none;stroke:var(--ink-soft);stroke-width:1.8;pointer-events:none;
}
.woocommerce ul.products li.product .like-btn.liked svg{fill:#C0563E;stroke:#C0563E;}

/* Pagination */
.woocommerce nav.woocommerce-pagination ul{display:flex;gap:8px;justify-content:center;list-style:none;margin-top:3rem;padding:0;}
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:1.5px solid var(--sand);border-radius:50%;font-size:.85rem;color:var(--ink);transition:all .3s;}
.woocommerce nav.woocommerce-pagination ul li a:hover,
.woocommerce nav.woocommerce-pagination ul li span.current{background:var(--gold);border-color:var(--gold);color:var(--linen);}

/* Responsive */
@media(max-width:1024px){
  .woocommerce ul.products,
  .woocommerce-page ul.products{grid-template-columns:repeat(3,1fr) !important;}
}
@media(max-width:768px){
  .woocommerce ul.products,
  .woocommerce-page ul.products{grid-template-columns:repeat(2,1fr) !important;gap:16px !important;}
  .filter-inner{gap:10px;}
  .sort-label{display:none;}
}
@media(max-width:480px){
  .woocommerce ul.products,
  .woocommerce-page ul.products{gap:12px !important;}
  .woocommerce ul.products li.product .woocommerce-LoopProduct-link img{height:180px;}
  .woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:15px;padding:10px 12px 2px;}
  .woocommerce ul.products li.product .price{padding:2px 12px 10px;}
  .woocommerce ul.products li.product .button{margin:0 12px 12px;margin-top:auto;width:calc(100% - 24px - 40px) !important;padding:8px 10px;}
  .woocommerce ul.products li.product .like-btn{bottom:12px;right:12px;width:32px;height:32px;}
  .woocommerce ul.products li.product .sc-tag{padding:10px 12px 0;}
}
@media(max-width:560px){.filter-inner{flex-direction:column;align-items:stretch;}.filters{width:100%;max-width:100%;}.sort-wrap{width:100%;}}

/* Cart page */

/* Shared sand heroes: cart + wishlist (gradient right) */
.cart-hero,.wishlist-hero{
  background:var(--sand);
  padding:clamp(40px,5.5vw,72px) 0 clamp(28px,3.5vw,48px);
  position:relative;overflow:hidden;
}
.cart-hero::before,.wishlist-hero::before{
  content:"";position:absolute;inset:0;
  background:radial-gradient(ellipse at 80% 50%,rgba(166,132,92,.1) 0%,transparent 65%);
}
/* Shared sand heroes: checkout + account (gradient left) */
.checkout-hero,.account-hero{
  background:var(--sand);
  padding:clamp(40px,5.5vw,72px) 0 clamp(28px,3.5vw,48px);
  position:relative;overflow:hidden;
}
.checkout-hero::before,.account-hero::before{
  content:"";position:absolute;inset:0;
  background:radial-gradient(ellipse at 20% 50%,rgba(166,132,92,.10) 0%,transparent 65%);
}
.cart-hero .eyebrow,.checkout-hero .eyebrow,.account-hero .eyebrow,.wishlist-hero .eyebrow{display:block;margin-bottom:10px;}
.cart-hero h1,.checkout-hero h1,.account-hero h1,.wishlist-hero h1{
  font-family:var(--display);font-weight:360;
  font-size:clamp(36px,5.5vw,76px);line-height:.96;
  letter-spacing:-.01em;color:var(--ink);
}
.checkout-hero h1 em,.account-hero h1 em,.wishlist-hero h1 em{font-style:italic;color:var(--gold-deep);}
.cart-body,.checkout-body,.account-body,.wishlist-body{
  background:var(--cream);
  padding:clamp(48px,7vw,88px) 0;
}

/* WC block cart root */
.wp-block-woocommerce-cart{
  max-width:none !important;
  padding:0 !important;
}

/* Sidebar layout */
.wc-block-components-sidebar-layout{
  display:flex !important;
  gap:clamp(36px,5vw,60px) !important;
  align-items:flex-start !important;
}
.wc-block-cart__main{
  flex:1 1 0 !important;
  min-width:0 !important;
}

/* Totals sidebar card (cart + checkout) */
.wc-block-cart__sidebar,
.wc-block-checkout__sidebar{
  flex:0 0 clamp(280px,28vw,360px) !important;
  background:var(--linen) !important;
  border-radius:20px !important;
  padding:clamp(24px,3vw,36px) !important;
  border:1px solid var(--sand) !important;
}
.wc-block-checkout__sidebar{
  position:sticky !important;
  top:28px !important;
}

/* Cart items table */
.wc-block-cart-items{
  width:100% !important;
  border-collapse:collapse !important;
  border:none !important;
}
.wc-block-cart-items__header th{
  font-family:var(--body) !important;
  font-size:10px !important;font-weight:600 !important;
  letter-spacing:.28em !important;text-transform:uppercase !important;
  color:var(--taupe) !important;
  padding:0 0 14px !important;
  border-bottom:1px solid var(--sand) !important;
  border-top:none !important;background:none !important;
}
.wc-block-cart-items__header-image{width:96px !important;}
.wc-block-cart-items__header-total{text-align:right !important;}

/* Row */
.wc-block-cart-items__row td{
  padding:22px 0 !important;
  vertical-align:middle !important;
  border-bottom:1px solid var(--sand) !important;
  border-top:none !important;background:none !important;
}

/* Product image cell */
.wc-block-cart-item__image{
  width:96px !important;
  padding-right:20px !important;
}
.wc-block-cart-item__image img{
  width:76px !important;height:76px !important;
  object-fit:cover !important;border-radius:12px !important;
  display:block !important;
}

/* Product name */
.wc-block-components-product-name{
  font-family:var(--display) !important;
  font-size:18px !important;font-weight:380 !important;
  color:var(--ink) !important;text-decoration:none !important;
  line-height:1.2 !important;display:block !important;
  margin-bottom:5px !important;
}
.wc-block-components-product-name:hover{color:var(--gold-deep) !important;}

/* Item price (below name) */
.wc-block-cart-item__prices .wc-block-components-product-price,
.wc-block-cart-item__prices .wc-block-formatted-money-amount{
  font-size:13px !important;color:var(--gold-deep) !important;
}

/* Hide truncated product description */
.wc-block-components-product-metadata{display:none !important;}

/* Quantity + remove row */
.wc-block-cart-item__quantity{
  display:flex !important;align-items:center !important;
  gap:14px !important;margin-top:14px !important;
}

/* Quantity stepper */
.wc-block-components-quantity-selector{
  display:flex !important;align-items:center !important;
  border:1.5px solid var(--sand) !important;
  border-radius:40px !important;
  background:var(--linen) !important;
  overflow:hidden !important;width:fit-content !important;
}
.wc-block-components-quantity-selector__input{
  width:44px !important;text-align:center !important;
  border:none !important;background:none !important;
  outline:none !important;box-shadow:none !important;
  font-family:var(--body) !important;font-size:14px !important;
  font-weight:500 !important;color:var(--ink) !important;
  -moz-appearance:textfield !important;padding:0 !important;
}
.wc-block-components-quantity-selector__input:focus{
  outline:none !important;box-shadow:none !important;
}
.wc-block-components-quantity-selector__button{
  width:38px !important;height:38px !important;
  border:none !important;background:none !important;
  outline:none !important;box-shadow:none !important;
  border-radius:0 !important;
  cursor:pointer !important;font-size:18px !important;
  color:var(--ink-soft) !important;
  display:flex !important;align-items:center !important;
  justify-content:center !important;padding:0 !important;
  transition:color .2s !important;line-height:1 !important;
}
.wc-block-components-quantity-selector__button:hover{color:var(--ink) !important;}
.wc-block-components-quantity-selector__button:focus,
.wc-block-components-quantity-selector__button:focus-visible{
  outline:none !important;box-shadow:none !important;
}
.wc-block-components-quantity-selector__button:disabled{opacity:.35 !important;cursor:default !important;}

/* Remove button */
.wc-block-cart-item__remove-link{
  background:none !important;border:none !important;
  cursor:pointer !important;color:var(--taupe) !important;
  transition:color .25s !important;
  padding:4px !important;display:flex !important;align-items:center !important;
}
.wc-block-cart-item__remove-link:hover{color:#b05555 !important;}
.wc-block-cart-item__remove-link svg{
  width:16px !important;height:16px !important;
  fill:currentColor !important;
}

/* Line total */
.wc-block-cart-item__total{text-align:right !important;}
.wc-block-cart-item__total .wc-block-formatted-money-amount{
  font-family:var(--display) !important;
  font-size:clamp(17px,1.8vw,22px) !important;
  font-weight:420 !important;color:var(--ink) !important;
}

/* Totals sidebar */
.wc-block-cart__totals-title,
.wc-block-checkout__sidebar .wc-block-order-summary__title,
.wc-block-checkout__sidebar .wc-block-components-checkout-order-summary__title-text,
.wc-block-checkout__sidebar .wc-block-components-title.wc-block-components-checkout-order-summary-title,
.wc-block-checkout .checkout-order-summary-block-fill .wc-block-order-summary__title,
.wc-block-checkout .checkout-order-summary-block-fill .wc-block-components-checkout-order-summary__title-text,
.wc-block-checkout .checkout-order-summary-block-fill .wc-block-components-title.wc-block-components-checkout-order-summary-title{
  font-family:var(--display) !important;
  font-size:clamp(20px,2.2vw,26px) !important;
  font-weight:380 !important;color:var(--ink) !important;
  margin:0 0 16px !important;padding:0 0 16px !important;
  border-bottom:1px solid var(--sand) !important;
}

/* Coupon accordion toggle */
.wc-block-components-totals-wrapper{border:none !important;}
.wc-block-components-totals-coupon{border:none !important;}
.wc-block-components-panel__button{
  font-family:var(--body) !important;
  font-size:10px !important;font-weight:600 !important;
  letter-spacing:.22em !important;text-transform:uppercase !important;
  color:var(--taupe) !important;
  background:none !important;border:none !important;
  padding:0 0 14px !important;cursor:pointer !important;
  display:flex !important;align-items:center !important;
  justify-content:space-between !important;
  width:100% !important;
}
.wc-block-components-panel__button:hover{color:var(--gold-deep) !important;}
.wc-block-components-totals-coupon .wc-block-components-panel__button{
  min-height:28px !important;
  padding:7px 0 !important;
  line-height:14px !important;
  box-sizing:border-box !important;
}
.wc-block-components-panel__button-icon{
  width:14px !important;height:14px !important;
  fill:currentColor !important;flex-shrink:0 !important;
}

/* Coupon form stacked so input gets full width */
.wc-block-components-totals-coupon__form{
  padding:0 0 16px !important;
  display:flex !important;
  flex-direction:column !important;
  gap:8px !important;
}
/* WC sets flex:3 1 120px on this (flex-basis overrides height in column... */
.wc-block-components-totals-coupon__form .wc-block-components-totals-coupon__input,
.wc-block-components-totals-coupon__input{
  flex:0 0 46px !important;
  width:100% !important;
}

/* WC floating-label input scoped to coupon form, covering .is-active ex... */
.wc-block-components-totals-coupon__form .wc-block-components-text-input,
.wc-block-components-totals-coupon__form .wc-block-components-text-input.is-active{
  display:flex !important;align-items:center !important;
  height:46px !important;overflow:hidden !important;
  border:1.5px solid var(--sand) !important;
  border-radius:10px !important;
  background:var(--cream) !important;
  transition:border-color .3s !important;
  box-shadow:none !important;
  padding:0 !important;margin-top:0 !important;
  position:relative !important;
}
.wc-block-components-totals-coupon__form .wc-block-components-text-input:focus-within,
.wc-block-components-totals-coupon__form .wc-block-components-text-input.is-active:focus-within{
  border-color:var(--gold) !important;
}
.wc-block-components-totals-coupon__form .wc-block-components-text-input input,
.wc-block-components-totals-coupon__form .wc-block-components-text-input.is-active input,
.wc-block-components-totals-coupon__form .wc-block-components-text-input.is-active input[type="text"]{
  height:100% !important;
  padding:0 14px !important;
  border:none !important;background:transparent !important;
  outline:none !important;box-shadow:none !important;
  font-family:var(--body) !important;font-size:14px !important;
  font-weight:300 !important;color:var(--ink) !important;
  width:100% !important;
}
.wc-block-components-totals-coupon__form .wc-block-components-text-input input::placeholder{
  color:var(--taupe) !important;font-weight:300 !important;
}
/* Hide the floating label placeholder attribute handles hint text */
.wc-block-components-totals-coupon__form .wc-block-components-text-input label{
  display:none !important;
}

/* Apply button full width pill */
.wc-block-components-totals-coupon__button{
  width:100% !important;
  font-family:var(--body) !important;
  font-size:11px !important;font-weight:600 !important;
  letter-spacing:.18em !important;text-transform:uppercase !important;
  background:var(--ink) !important;color:var(--linen) !important;
  border:none !important;border-radius:40px !important;
  padding:13px 20px !important;cursor:pointer !important;
  transition:background .3s !important;text-align:center !important;
}
.wc-block-components-totals-coupon__button:hover{background:var(--gold-deep) !important;}

/* Separator before totals rows */
.wp-block-woocommerce-cart-order-summary-totals-block,
.wp-block-woocommerce-checkout-order-summary-totals-block{
  border-top:1px solid var(--sand) !important;
  padding-top:4px !important;
  padding-bottom:0 !important;
  margin-top:0 !important;
}

/* Remove any extra borders the checkout button area inherits */
.wc-block-cart__submit,.wc-block-cart__payment-options{border-top:none !important;}

/* Subtotal / totals rows */
.wc-block-components-totals-item{
  display:flex !important;justify-content:space-between !important;
  align-items:center !important;
  padding:11px 0 !important;
  border-bottom:1px solid var(--sand) !important;
}
.wc-block-components-totals-item__label{
  font-family:var(--body) !important;
  font-size:10px !important;font-weight:600 !important;
  letter-spacing:.22em !important;text-transform:uppercase !important;
  color:var(--taupe) !important;
}
.wc-block-components-totals-item__value .wc-block-formatted-money-amount,
.wc-block-components-totals-item__value{
  font-size:14px !important;color:var(--ink) !important;font-weight:400 !important;
}

/* Grand total row */
.wc-block-components-totals-footer-item{
  padding:14px 0 8px !important;border-bottom:none !important;
}
.wc-block-components-totals-footer-item .wc-block-components-totals-item__label{
  font-size:10px !important;letter-spacing:.22em !important;color:var(--taupe) !important;
}
.wc-block-components-totals-footer-item .wc-block-formatted-money-amount{
  font-family:var(--display) !important;
  font-size:clamp(20px,2.2vw,26px) !important;
  color:var(--gold-deep) !important;font-weight:420 !important;
}

/* Checkout button */
.wc-block-cart__submit-container{margin-top:18px !important;}
.wc-block-cart__submit-button,
.wc-block-components-button.wc-block-cart__submit-button,
.wp-block-woocommerce-proceed-to-checkout-block .wc-block-components-button{
  display:block !important;width:100% !important;
  font-family:var(--body) !important;
  font-size:12px !important;font-weight:600 !important;
  letter-spacing:.2em !important;text-transform:uppercase !important;
  color:var(--linen) !important;background:var(--gold) !important;
  border:none !important;border-radius:40px !important;
  padding:16px 28px !important;cursor:pointer !important;
  transition:background .4s !important;
  text-align:center !important;text-decoration:none !important;
}
.wc-block-cart__submit-button:hover,
.wp-block-woocommerce-proceed-to-checkout-block .wc-block-components-button:hover{
  background:var(--gold-deep) !important;color:var(--linen) !important;
}

/* Empty cart state */
.wp-block-woocommerce-empty-cart-block{
  text-align:center !important;
  padding:clamp(40px,6vw,72px) 0 !important;
}
.wc-block-cart__empty-cart__title{
  font-family:var(--display) !important;
  font-size:clamp(24px,3.2vw,40px) !important;
  font-weight:380 !important;color:var(--ink) !important;
  margin:0 0 16px !important;
}
.wp-block-woocommerce-empty-cart-block .wp-block-heading{
  font-family:var(--display) !important;
  font-size:clamp(18px,2.2vw,28px) !important;
  font-weight:380 !important;color:var(--ink) !important;
  margin:28px 0 20px !important;
}
.wp-block-woocommerce-empty-cart-block .wp-block-separator{
  border-color:var(--sand) !important;margin:24px auto !important;max-width:120px !important;
}

/* New in store grid */
.wp-block-woocommerce-empty-cart-block .wc-block-grid{
  width:100% !important;
  overflow:visible !important;
}
.wc-block-grid__products{
  display:grid !important;
  grid-template-columns:repeat(4,1fr) !important;
  gap:24px !important;list-style:none !important;
  padding:0 !important;margin:0 !important;
  width:100% !important;
}
.wc-block-grid__product{
  background:var(--linen) !important;border-radius:16px !important;
  overflow:hidden !important;
  display:flex !important;flex-direction:column !important;
  position:relative !important;
  transition:transform .5s var(--ease) !important;
  max-width:100% !important;width:100% !important;
}
.wc-block-grid__product:hover{transform:translateY(-6px) !important;}
.wc-block-grid__product-image{overflow:hidden !important;flex-shrink:0 !important;}
.wc-block-grid__product-image img{
  width:100% !important;height:240px !important;
  object-fit:cover !important;object-position:center !important;display:block !important;
  transition:transform .8s var(--ease) !important;
}
.wc-block-grid__product:hover .wc-block-grid__product-image img{transform:scale(1.05) !important;}
.wc-block-grid__product-link{text-decoration:none !important;color:inherit !important;}
.wc-block-grid__product-title{
  font-family:var(--display) !important;
  font-size:17px !important;font-weight:380 !important;line-height:1.2 !important;color:var(--ink) !important;
  padding:5px 16px 3px !important;display:block !important;margin:0 !important;
}
.wc-block-grid__product-price{
  font-size:13px !important;color:var(--ink-soft) !important;
  padding:3px 16px 14px !important;display:block !important;margin:0 !important;
}
.wc-block-grid__product-rating{display:none !important;}
.wc-block-grid__product-add-to-cart{padding:0 16px 16px !important;margin-top:auto !important;}
.wc-block-grid__product-add-to-cart .wp-block-button__link{
  display:block !important;
  font-family:var(--body) !important;font-size:10px !important;
  font-weight:600 !important;letter-spacing:.16em !important;
  text-transform:uppercase !important;
  color:var(--linen) !important;background:var(--ink) !important;
  border-radius:24px !important;padding:10px 14px !important;
  text-align:center !important;text-decoration:none !important;
  transition:background .3s !important;border:none !important;cursor:pointer !important;
}
.wc-block-grid__product-add-to-cart .wp-block-button__link:hover{
  background:var(--ink-soft) !important;
}

/* Cart responsive */
@media(max-width:1024px){
  .wc-block-grid__products{grid-template-columns:repeat(3,1fr) !important;}
}
@media(max-width:900px){
  .wc-block-components-sidebar-layout{flex-direction:column !important;}
  .wc-block-cart__sidebar,
  .wc-block-checkout__sidebar{flex:none !important;width:100% !important;}
}
@media(max-width:768px){
  .wc-block-grid__products{grid-template-columns:repeat(2,1fr) !important;gap:16px !important;}
  .wc-block-grid__product-image img{height:180px !important;}
  .wc-block-grid__product-title{font-size:15px !important;padding:10px 12px 2px !important;}
  .wc-block-grid__product-price{padding:2px 12px 10px !important;}
  .wc-block-grid__product-add-to-cart{padding:0 12px 12px !important;}
}
@media(max-width:560px){
  .wc-block-cart-items__header-total,
  .wc-block-cart-item__total{display:none !important;}
  .wc-block-grid__products{grid-template-columns:1fr 1fr !important;}
}

/* CONTACT PAGE */
.contact-page .e-con > .e-con-inner,
.contact-page .elementor-widget-html > .elementor-widget-container{
  padding:0;
  margin:0;
}
.contact-page .elementor-section,
.contact-page .e-con{
  max-width:none;
}
.contact-body{
  padding:clamp(70px,9vw,120px) 0;
  background:var(--sand);
}
.contact-grid{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:clamp(36px,5vw,64px);
  align-items:stretch;
}
.form-wrap{
  background:var(--linen);
  border:1px solid rgba(156,133,105,.22);
  border-radius:clamp(18px,2vw,24px);
  padding:clamp(28px,4vw,44px);
  box-shadow:0 28px 56px -36px rgba(40,32,24,.28);
}
.form-wrap .eyebrow{display:block;margin-bottom:14px;}
.form-wrap h2{margin-top:12px;margin-bottom:32px;}
.fg{margin-bottom:22px;}
.fg label{display:block;font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--taupe);margin-bottom:8px;}
.fg-optional{font-size:10px;letter-spacing:.12em;text-transform:none;color:var(--taupe);font-weight:400;}
.fg input,.fg textarea,.fg select{
  width:100%;font-family:var(--body);font-size:15px;font-weight:400;color:var(--ink);
  background:#fff;border:1.5px solid rgba(156,133,105,.35);border-radius:12px;
  padding:14px 18px;outline:none;
  transition:border-color .3s,box-shadow .3s;
  -webkit-appearance:none;appearance:none;
}
.fg input::placeholder,.fg textarea::placeholder{color:rgba(92,82,70,.45);}
.fg input:focus,.fg textarea:focus,.fg select:focus{
  border-color:var(--gold);
  box-shadow:0 0 0 3px rgba(166,132,92,.16);
}
.fg textarea{height:148px;resize:vertical;min-height:120px;}
.fg select{
  padding-right:42px;
  background-color:#fff;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%239C8569' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 16px center;
}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.submit-btn{width:100%;margin-top:8px;justify-content:center;font-size:13px;padding:18px 32px;}
.submit-btn:disabled{opacity:.88;cursor:default;}
.success-msg{
  display:none;margin-top:16px;padding:18px 22px;
  background:var(--cream);border:1px solid rgba(166,132,92,.28);
  border-radius:12px;font-size:14px;color:var(--ink-soft);
}
.info-panel{padding:0;display:flex;}
.info-card{
  flex:1;
  display:flex;flex-direction:column;
  background:var(--ink);
  border-radius:clamp(18px,2vw,26px);
  padding:clamp(28px,3.4vw,40px);
  box-shadow:0 34px 70px -40px rgba(40,32,24,.55);
  overflow:hidden;
}
.info-card .eyebrow{display:block;margin-bottom:14px;color:var(--gold);}
.info-card-title{
  font-family:var(--display);font-weight:360;line-height:1.06;
  font-size:clamp(26px,3vw,34px);color:var(--linen);margin:0 0 16px;
}
.info-card-title .italic{color:var(--gold);font-style:italic;}
.info-card-lead{
  font-size:14.5px;line-height:1.7;color:rgba(231,218,198,.68);margin:0 0 8px;
}
.info-rows{list-style:none;margin:24px 0 0;padding:0;}
.info-row{
  display:flex;flex-direction:column;gap:4px;
  padding:18px 0;border-top:1px solid rgba(231,218,198,.14);
}
.info-row:first-child{border-top:none;}
.info-row-label{
  font-size:10px;letter-spacing:.28em;text-transform:uppercase;color:var(--gold);
}
.info-row-value{
  font-size:16px;line-height:1.55;color:var(--linen);text-decoration:none;
  transition:color .3s var(--ease);
}
a.info-row-value:hover{color:var(--gold);}
.info-row-note{font-size:13px;color:rgba(231,218,198,.5);}
.info-social{
  display:flex;flex-wrap:wrap;gap:12px;
  margin-top:24px;padding-top:24px;border-top:1px solid rgba(231,218,198,.14);
}
.info-social-link{
  font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;
  color:var(--linen);text-decoration:none;padding:9px 18px;
  border:1px solid rgba(231,218,198,.28);border-radius:999px;
  transition:background .35s var(--ease),border-color .35s var(--ease),color .35s var(--ease);
}
.info-social-link:hover{background:var(--gold);border-color:var(--gold);color:var(--ink);}
.info-figure{
  flex:0 0 auto;margin-top:auto;padding-top:28px;
  border-radius:18px 18px 18px 90px;overflow:hidden;
  height:clamp(180px,20vw,230px);
}
.info-figure img{
  width:100%;height:100%;object-fit:cover;object-position:center 38%;display:block;
  transition:transform .6s var(--ease);
}
.info-figure:hover img{transform:scale(1.05);}
/* legacy contact info classes (other templates) */
.info-block{margin-bottom:28px;}
.info-block h4{font-size:11px;letter-spacing:.28em;text-transform:uppercase;color:var(--taupe);margin-bottom:10px;}
.info-block a,.info-block p{font-size:15px;color:var(--ink-soft);text-decoration:none;display:block;line-height:1.7;}
.info-block a:hover{color:var(--gold-deep);}
.info-block .note{font-size:13px;color:var(--taupe);margin-top:4px;display:block;}
.social-row{display:flex;flex-wrap:wrap;gap:18px;margin-top:8px;}
.soc{font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ink);text-decoration:none;border-bottom:1px solid var(--gold);padding-bottom:3px;}
.soc:hover{color:var(--gold-deep);}
.pull-quote{
  margin-top:12px;padding:28px 32px;
  background:var(--linen);border:1px solid rgba(156,133,105,.18);
  border-radius:20px;
}
.pull-quote p{font-family:var(--display);font-style:italic;font-size:19px;color:var(--ink);line-height:1.46;margin:0;}
.quote-strip{background:var(--ink);padding:clamp(38px,5vw,58px) 0;text-align:center;}
.quote-strip p{font-family:var(--display);font-style:italic;font-size:clamp(18px,2.8vw,34px);color:rgba(231,218,198,.84);font-weight:360;max-width:780px;margin:0 auto;}
.custom-section{background:var(--sand);padding:clamp(70px,9vw,120px) 0;}
.custom-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(50px,7vw,90px);align-items:center;}
.custom-text .eyebrow{display:block;margin-bottom:14px;}
.custom-text h2{margin-top:12px;margin-bottom:20px;}
.custom-text>p{margin-bottom:28px;}
.custom-order-btn{margin-top:36px;display:inline-flex;}
.process-steps{display:flex;flex-direction:column;gap:26px;}
.ps{display:flex;gap:20px;align-items:flex-start;}
.ps-num{font-family:var(--display);font-size:38px;font-weight:360;color:var(--gold);line-height:1;flex-shrink:0;width:52px;}
.ps-text h4{font-size:14px;font-weight:600;letter-spacing:.06em;color:var(--ink);margin-bottom:5px;}
.ps-text p{font-size:14px;margin:0;}
.custom-img{height:480px;border-radius:20px 200px 20px 200px;overflow:hidden;box-shadow:0 32px 64px -36px rgba(40,32,24,.35);}
.custom-img img{width:100%;height:100%;object-fit:cover;object-position:center;}
.contact-gallery{padding:clamp(60px,8vw,100px) 0;background:var(--linen);}
.contact-gallery-head{text-align:center;margin-bottom:44px;}
.contact-gallery-head .eyebrow{display:block;margin-bottom:14px;}
.contact-gallery-head h2{margin-top:14px;}
.contact-gallery-grid{
  display:grid;grid-template-columns:repeat(4,1fr);gap:16px;
  max-width:1040px;margin:0 auto;
}
.contact-gallery-item{margin:0;overflow:hidden;border-radius:14px;box-shadow:0 20px 40px -24px rgba(40,32,24,.3);}
.contact-gallery-item img{
  width:100%;height:clamp(120px,14vw,180px);object-fit:cover;object-position:center;
  display:block;border-radius:14px;
  transition:transform .55s var(--ease);
}
.form-wrap h2,.custom-text h2,.contact-gallery-head h2{color:var(--ink);}
.form-wrap .eyebrow,.info-body .eyebrow,.custom-text .eyebrow,.contact-gallery-head .eyebrow{color:var(--gold);}
@media(prefers-reduced-motion:reduce){
  .reveal{opacity:1!important;transform:none!important;}
  .contact-gallery-item img{transition:none;}
}

/* Responsive */
@media(max-width:1024px){
  .pop-grid{grid-template-columns:repeat(2,1fr);}
}
@media(max-width:880px){
  .statement,.split,.foot,.feat-grid,.two-col,.custom-grid,.contact-grid{grid-template-columns:1fr;gap:34px;}
  .mosaic{grid-template-columns:1fr 1fr;}
  .t1,.t2,.t3,.t4,.t5{height:240px;margin-top:0;}
  .arch-grid{grid-template-columns:1fr 1fr;}
  .split-img{height:340px;}
  .feat-img{height:360px;border-radius:0 0 180px 180px;}
  .arch-img-story{height:360px;border-radius:20px;}
  .artist-photo{height:420px;border-radius:20px;}
  .steps{grid-template-columns:1fr;}
  .val-grid{grid-template-columns:1fr;}
  .custom-gallery{grid-template-columns:1fr 1fr;max-width:640px;}
  .row2{grid-template-columns:1fr;}
  .custom-img{height:340px;border-radius:20px;}
  .contact-gallery-grid{grid-template-columns:repeat(2,1fr);max-width:560px;}
  .form-wrap,.info-card{max-width:640px;margin-inline:auto;}
  .info-card{position:static;}
  .story-gallery{grid-template-columns:repeat(2,1fr);max-width:520px;}
}
@media(max-width:560px){
  .arch-grid,.woocommerce ul.products,.pop-grid{grid-template-columns:1fr;}
  .feat-prods{grid-template-columns:1fr;}
  .custom-gallery{grid-template-columns:1fr;}
  .contact-gallery-grid{grid-template-columns:1fr;max-width:320px;}
}

/* Elementor Canvas Overrides */
/* Nav: logo column auto-width, nav links flex to fill right */
.elementor-element-a1d98e0{width:auto!important;flex:0 0 auto!important;}
.elementor-element-8aa9cfa{flex:1 1 auto!important;}
/* Nav: logo image constrained to nav height */
.elementor-element-6b294fc img{
  max-width:clamp(120px,14vw,200px)!important;
  max-height:68px!important;
  width:auto!important;height:auto!important;
  object-fit:initial!important;
}
/* Image widgets inside Elementor containers fill their container (tiles... */
.e-con .elementor-widget-image img{
  width:100%!important;height:100%!important;object-fit:cover!important;
}
/* But not the nav logo or footer logo */
.elementor-element-a1d98e0 .elementor-widget-image img,
.elementor-element-bab29d8 .elementor-widget-image img,
.elementor-element-9834407 img,
.elementor-element-5d02cb4 img{
  width:auto!important;height:auto!important;object-fit:contain!important;
}
/* HFE Elementor header logo */
#masthead .elementor-element-9834407 img,
#masthead .elementor-element-bab29d8 img{
  max-width:clamp(160px,18vw,240px)!important;
  max-height:72px!important;
}
/* Footer logo size */
.elementor-element-5d02cb4 img{
  max-width:clamp(180px,22vw,300px)!important;
  max-height:64px!important;
}

/* Mosaic tile: overlay gradient + hover caption */
.aa-tile{position:relative;overflow:hidden;cursor:pointer;}
.aa-tile img{display:block;width:100%;height:100%;object-fit:cover;}
.aa-tile-overlay{
  position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(180deg,transparent 55%,rgba(40,32,24,.42));
  opacity:0;transition:opacity .5s;z-index:1;
}
.aa-tile:hover .aa-tile-overlay{opacity:1;}
.aa-tile-cap{
  position:absolute;left:16px;bottom:14px;z-index:2;
  color:#FBF7EF;font-size:13px;letter-spacing:.1em;
  text-transform:uppercase;font-family:'Hanken Grotesk',sans-serif;
  font-weight:500;opacity:0;transform:translateY(8px);
  pointer-events:none;
  transition:opacity .5s var(--ease),transform .5s var(--ease);
}
.aa-tile:hover .aa-tile-cap{opacity:1;transform:none;}

/* Arch card hover: lift + image parallax */
.elementor-element-310bf24,
.elementor-element-ea85ba3,
.elementor-element-7565e27{
  cursor:pointer;
  transition:transform .6s var(--ease),box-shadow .6s var(--ease),background-position .4s ease!important;
}
.elementor-element-310bf24:hover,
.elementor-element-ea85ba3:hover,
.elementor-element-7565e27:hover{
  transform:translateY(-12px)!important;
  box-shadow:0 40px 60px -34px rgba(40,32,24,.5)!important;
}

/* Homepage popular — linen section (≠ cream above, ≠ sand below); cream cards per .popular mockup */
.elementor-element-847a843{background:var(--linen)!important;}
.home-popular-products li.product{background:var(--cream)!important;}
.home-popular-products li.product .like-btn{background:var(--cream)!important;}

/* Homepage popular products layout fixes only (cards match shop) */
.elementor-element-858a698{
  width:100%!important;
  max-width:1200px;
  padding:0!important;
}
.home-popular-products{width:100%;}
/* WC float-clear pseudo-elements become grid items remove them */
.home-popular-products ul.products::before,
.home-popular-products ul.products::after{
  content:none!important;
  display:none!important;
}
.home-popular-products ul.products{width:100%!important;}

/* Hero image zoom on hover */
.elementor-element-b3d48a8{
  overflow:hidden!important;
  transition:background-size 1.1s var(--ease)!important;
}
.elementor-element-b3d48a8:hover{
  background-size:108%!important;
}

/* Product info accordion sections */
.pi-section{margin-bottom:1.25rem;}
.pi-heading{margin-bottom:.5rem;font-weight:700;font-size:15px;color:var(--ink);}
.pi-accordion{border-top:1px solid var(--sand);padding:.9rem 0;}
.pi-accordion:last-child{border-bottom:1px solid var(--sand);}
.pi-accordion summary{
  list-style:none;cursor:pointer;font-weight:600;font-size:14px;
  color:var(--ink);text-decoration:underline;text-underline-offset:3px;
}
.pi-accordion summary::-webkit-details-marker{display:none;}
.pi-accordion-body{padding:.75rem 0 .25rem;font-size:14px;color:var(--ink-soft);line-height:1.7;}

/* WooCommerce native toolbar (result count + sort) */
.woocommerce-result-count{font-size:13px;color:var(--ink-soft);}
.woocommerce-ordering select{
  border:1px solid var(--sand);background:var(--linen);color:var(--ink);
  padding:6px 12px;border-radius:6px;font-size:13px;
}
.woocommerce-products-header{display:none;}

/* Mobile nav on canvas homepage */
@media(max-width:880px){
  .aa-home-nav-menu{
    display:none;position:absolute;top:100%;right:16px;
    background:var(--cream);padding:24px 28px;
    border-radius:16px;flex-direction:column;gap:20px;
    box-shadow:0 20px 40px rgba(40,32,24,.15);z-index:100;
  }
  .aa-home-nav-menu.is-open{display:flex;}
  .elementor-element-fe22f21{position:relative;}
}

/* ── HFE Elementor header (masthead) — mobile & tablet ─────────── */
#masthead{position:relative;z-index:100;}
#masthead .elementor-element-586d9b0{min-height:0;}
#masthead .aakaara-menu{
  padding:18px 0 !important;background:transparent !important;
  flex:1 1 auto;min-width:0;
}
#masthead .elementor-element-5bf11b0{justify-content:flex-end;}
#masthead .nav-toggle{display:none;order:10;margin-left:2px;}

/* Desktop: Elementor’s --width:71% on the icons column starves the
   nav+CTA and they spill over the account/wishlist/cart icons. */
@media(min-width:1025px){
  #masthead .elementor-element-586d9b0{
    --flex-wrap:nowrap !important;
    flex-wrap:nowrap !important;
    align-items:center !important;
    gap:16px !important;
    position:relative !important;
  }
  #masthead .elementor-element-bab29d8{
    --width:auto !important;
    width:auto !important;
    flex:0 0 auto !important;
    max-width:min(240px,22vw) !important;
    position:relative;z-index:2;
  }
  #masthead .elementor-element-9834407 img,
  #masthead .elementor-element-bab29d8 img{
    max-width:100% !important;
    max-height:72px !important;
    width:auto !important;
    height:auto !important;
    object-fit:contain !important;
  }
  /* Right cluster = icons only; menu is absolutely centered on the bar */
  #masthead .elementor-element-5bf11b0{
    --width:auto !important;
    width:auto !important;
    max-width:none !important;
    flex:1 1 auto !important;
    min-width:0 !important;
    flex-wrap:nowrap !important;
    --flex-wrap:nowrap !important;
    justify-content:flex-end !important;
    align-items:center !important;
    gap:10px !important;
    --gap:10px !important;
    --column-gap:10px !important;
    /* Keep menu's absolute center relative to the full header row */
    position:static !important;
  }
  #masthead .elementor-element-b548541{
    --width:auto !important;
    width:auto !important;
    flex:0 0 auto !important;
    min-width:0 !important;
    max-width:none !important;
    position:absolute !important;
    left:50% !important;
    top:50% !important;
    transform:translate(-50%,-50%) !important;
    z-index:20;
    margin:0 !important;
    overflow:visible !important;
  }
  #masthead .aakaara-menu{
    display:flex !important;
    flex-wrap:nowrap !important;
    align-items:center !important;
    justify-content:center !important;
    gap:clamp(14px,1.8vw,28px) !important;
    width:auto !important;
    max-width:none !important;
    box-sizing:border-box !important;
    overflow:visible !important;
  }
  #masthead .aakaara-menu__links{
    flex:0 1 auto !important;
    flex-wrap:nowrap !important;
    min-width:0 !important;
    overflow:visible !important;
  }
  #masthead .aakaara-menu__item--has-sub{
    position:relative;
  }
  #masthead .aakaara-menu__sub{
    z-index:100;
    background:var(--linen) !important;
    border:1px solid var(--sand) !important;
    border-radius:16px !important;
    box-shadow:0 20px 40px rgba(40,32,24,.15) !important;
  }
  #masthead .aakaara-menu__sub a{
    color:var(--ink-soft) !important;
    font-size:12px !important;
    font-weight:500 !important;
    letter-spacing:.14em !important;
    text-transform:uppercase !important;
  }
  #masthead .aakaara-menu__sub a:hover,
  #masthead .aakaara-menu__sub a:focus{
    color:var(--gold-deep) !important;
    background:var(--cream) !important;
  }
  #masthead .aakaara-menu__cta{
    flex:0 0 auto !important;
    margin:0 !important;
  }
  #masthead .elementor-element-168d42b,
  #masthead .elementor-element-6dd0f05,
  #masthead .elementor-element-ecde0eb{
    --width:auto !important;
    width:auto !important;
    flex:0 0 auto !important;
    flex-shrink:0 !important;
    position:relative;
    z-index:2;
  }
}

@media(max-width:1024px){
  #masthead.is-open{z-index:10080;}
  #masthead .elementor-element-586d9b0{
    --padding-left:14px !important;--padding-right:10px !important;
    --padding-top:10px !important;--padding-bottom:10px !important;
    padding:10px 10px 10px 14px !important;
    --flex-wrap:nowrap !important;--flex-wrap-mobile:nowrap !important;
    --justify-content:space-between !important;
    --align-items:center !important;
    flex-wrap:nowrap !important;
    justify-content:space-between !important;
    align-items:center !important;
    gap:8px !important;min-height:72px;position:relative;z-index:2;
    overflow:visible !important;
  }
  /* Logo: left-aligned, crop transparent padding so mark reads larger */
  #masthead .elementor-element-bab29d8{
    width:auto !important;--width:auto !important;
    --flex-wrap-mobile:nowrap !important;
    --align-items:flex-start !important;
    flex:1 1 auto !important;
    min-width:0 !important;
    max-width:calc(100% - 180px) !important; /* leave room for 4×40 icons */
    align-items:flex-start !important;
    justify-content:center !important;
    overflow:hidden !important;
  }
  #masthead .elementor-element-9834407{
    text-align:left !important;
    width:auto !important;max-width:100% !important;
    height:auto !important;overflow:hidden !important;
    display:block !important;
  }
  #masthead .elementor-element-9834407 .elementor-widget-container,
  #masthead .elementor-element-9834407 a{
    display:block !important;
    width:clamp(100px,18vw,148px) !important;
    height:clamp(54px,8vw,68px) !important;
    max-width:100% !important;
    line-height:0 !important;
    overflow:hidden !important;
  }
  #masthead .elementor-element-9834407 img,
  #masthead .elementor-element-bab29d8 img{
    width:100% !important;
    height:100% !important;
    max-width:none !important;
    max-height:none !important;
    object-fit:cover !important;
    object-position:50% 48% !important;
    margin-left:0 !important;
  }
  /* Icons row — pinned right, never shrinks away */
  #masthead .elementor-element-5bf11b0{
    width:auto !important;--width:auto !important;
    --flex-wrap-mobile:nowrap !important;
    --container-widget-flex-grow:0 !important;
    flex:0 0 auto !important;flex-wrap:nowrap !important;
    justify-content:flex-end !important;align-items:center !important;
    gap:0 !important;--gap:0 !important;--column-gap:0 !important;
    margin-left:auto !important;
    min-width:0;flex-shrink:0 !important;
  }
  #masthead .elementor-element-5bf11b0 > .elementor-element:not(.elementor-element-b548541){
    width:40px !important;min-width:40px !important;max-width:40px !important;
    --width:40px !important;flex:0 0 40px !important;
    margin:0 !important;
  }
  #masthead .elementor-element-b548541{
    position:static !important;width:0 !important;min-width:0 !important;
    max-width:0 !important;height:0 !important;margin:0 !important;
    padding:0 !important;overflow:visible !important;flex:0 0 0 !important;
    --width:0 !important;
  }
  #masthead .aakaara-menu{
    display:none !important;position:fixed !important;inset:0;z-index:1;
    flex-direction:column !important;justify-content:center !important;
    align-items:center !important;gap:0 !important;
    width:100% !important;max-width:none !important;height:100% !important;
    margin:0 !important;
    padding:clamp(80px,14vw,120px) clamp(24px,6vw,48px) !important;
    background:var(--cream) !important;box-sizing:border-box !important;
  }
  #masthead.is-open .aakaara-menu{display:flex !important;}
  #masthead .aakaara-menu__links{
    flex-direction:column !important;flex-wrap:nowrap !important;
    gap:0 !important;width:100%;max-width:320px;text-align:center;
  }
  #masthead .aakaara-menu__links li{width:100%;}
  #masthead .aakaara-menu__links > li > a,
  #masthead .aakaara-menu__shop-row > a{
    display:block;padding:18px 24px;font-size:13px;letter-spacing:.2em;
  }
  #masthead .aakaara-menu__links > li > a::after,
  #masthead .aakaara-menu__shop-row > a::after{display:none;}
  #masthead .aakaara-menu__shop-row{
    display:flex !important;align-items:center;justify-content:center;
    width:100%;gap:2px;
  }
  #masthead .aakaara-menu__shop-row > a{padding-right:8px;}
  #masthead .aakaara-menu__sub-toggle{
    display:inline-flex !important;align-items:center;justify-content:center;
    width:40px;height:40px;margin:0;padding:0;border:none;background:transparent;
    color:var(--ink);cursor:pointer;flex-shrink:0;
  }
  #masthead .aakaara-menu__sub-toggle-icon{
    display:block;width:10px;height:10px;
    border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;
    transform:rotate(45deg) translate(-1px,-1px);
    transition:transform .3s var(--ease);
  }
  #masthead .aakaara-menu__item--has-sub.is-sub-open .aakaara-menu__sub-toggle-icon{
    transform:rotate(225deg) translate(-1px,-1px);
  }
  /* Collapsed by default — only open via arrow toggle */
  #masthead .aakaara-menu__sub{
    display:none !important;position:static !important;transform:none !important;
    opacity:1 !important;visibility:visible !important;pointer-events:auto !important;
    background:transparent !important;border:none !important;box-shadow:none !important;
    padding:4px 0 8px !important;min-width:0 !important;border-radius:0 !important;
  }
  #masthead .aakaara-menu__item--has-sub.is-sub-open > .aakaara-menu__sub{
    display:block !important;
  }
  #masthead .aakaara-menu__item--has-sub:hover > .aakaara-menu__sub,
  #masthead .aakaara-menu__item--has-sub:focus-within > .aakaara-menu__sub{
    display:none !important;
  }
  #masthead .aakaara-menu__item--has-sub.is-sub-open:hover > .aakaara-menu__sub,
  #masthead .aakaara-menu__item--has-sub.is-sub-open:focus-within > .aakaara-menu__sub{
    display:block !important;
  }
  #masthead .aakaara-menu__sub a{
    display:block;padding:10px 24px;font-size:12px;letter-spacing:.14em;
    text-transform:uppercase;color:var(--ink-soft) !important;text-align:center;
  }
  #masthead .aakaara-menu__cta{margin-top:36px;}
  /* Uniform icon sizing (account / wishlist / cart) */
  #masthead .elementor-element-168d42b,
  #masthead .elementor-element-6dd0f05,
  #masthead .elementor-element-ecde0eb{
    display:flex !important;align-items:center !important;justify-content:center !important;
    position:relative;z-index:3;margin:0 !important;
  }
  #masthead .elementor-element-168d42b .elementor-widget-container,
  #masthead .elementor-element-6dd0f05 .elementor-widget-container,
  #masthead .elementor-element-ecde0eb .elementor-widget-container{
    width:100% !important;display:flex !important;
    align-items:center !important;justify-content:center !important;
  }
  #masthead .elementor-element-168d42b .elementor-icon-wrapper,
  #masthead .elementor-element-6dd0f05 .elementor-icon-wrapper{
    display:flex !important;align-items:center !important;justify-content:center !important;
  }
  #masthead .elementor-element-168d42b .elementor-icon,
  #masthead .elementor-element-6dd0f05 .elementor-icon{
    font-size:20px !important;width:20px !important;height:20px !important;
    display:inline-flex !important;align-items:center !important;justify-content:center !important;
  }
  #masthead .elementor-element-168d42b .elementor-icon svg,
  #masthead .elementor-element-6dd0f05 .elementor-icon svg{
    width:20px !important;height:20px !important;
  }
  #masthead .elementor-element-ecde0eb .hfe-menu-cart__toggle .elementor-button{
    width:40px !important;min-width:40px !important;height:40px !important;
    padding:0 !important;margin:0 !important;
    display:inline-flex !important;align-items:center !important;justify-content:center !important;
    background:transparent !important;border:none !important;
    letter-spacing:0 !important;font-size:0 !important;
  }
  #masthead .elementor-element-ecde0eb .hfe-menu-cart__toggle .elementor-button-icon{
    font-size:20px !important;width:20px !important;height:20px !important;
    display:inline-flex !important;align-items:center !important;justify-content:center !important;
  }
  #masthead .elementor-element-ecde0eb .elementor-button-text{display:none !important;}
  /* Hamburger matches icon box size */
  #masthead .nav-toggle{
    display:flex !important;position:relative !important;z-index:3;
    flex:0 0 40px !important;width:40px !important;height:40px !important;
    min-width:40px !important;max-width:40px !important;
    margin:0 !important;padding:0 !important;
    top:auto !important;right:auto !important;left:auto !important;
    transform:none !important;
    align-items:center !important;justify-content:center !important;
    gap:5px !important;
  }
  #masthead .nav-toggle-bar{width:18px;height:1.5px;background:var(--ink);}
  #masthead.is-open .nav-toggle-bar:nth-child(1){transform:translateY(6.5px) rotate(45deg);}
  #masthead.is-open .nav-toggle-bar:nth-child(2){opacity:0;}
  #masthead.is-open .nav-toggle-bar:nth-child(3){transform:translateY(-6.5px) rotate(-45deg);}
  #masthead.is-open .elementor-element-168d42b,
  #masthead.is-open .elementor-element-6dd0f05,
  #masthead.is-open .elementor-element-ecde0eb{
    visibility:hidden !important;pointer-events:none !important;
  }
  body.aa-nav-open .cursor,
  body.aa-nav-open .cursor-d,
  html.aa-nav-open .cursor,
  html.aa-nav-open .cursor-d,
  body.aa-nav-open .e-floating-bars,
  body.aa-nav-open .e-floating-button,
  body.aa-nav-open [class*="floating-button"],
  body.aa-nav-open .elementor-location-floating_buttons,
  body.aa-nav-open .woocommerce-product-gallery__trigger{
    display:none !important;opacity:0 !important;
    visibility:hidden !important;pointer-events:none !important;
  }
}

/*
 * Elementor ≤767px forces every .e-con.e-flex to --width:100% and
 * --flex-wrap:wrap. That makes logo + icons each claim a full row and
 * clips the icon rail on ~390px phones. Kill that here.
 */
@media(max-width:767px){
  .page,#masthead,#masthead .elementor-68{
    max-width:100% !important;
    box-sizing:border-box !important;
  }
  #masthead .e-con.e-flex{
    --flex-wrap:nowrap !important;
    --flex-wrap-mobile:nowrap !important;
  }
  #masthead .elementor-element-586d9b0.e-con.e-flex{
    --display:flex !important;
    display:flex !important;
    --width:100% !important;
    width:100% !important;
    max-width:100% !important;
    --flex-direction:row !important;
    flex-direction:row !important;
    --flex-wrap:nowrap !important;
    --flex-wrap-mobile:nowrap !important;
    flex-wrap:nowrap !important;
    --justify-content:space-between !important;
    justify-content:space-between !important;
    --align-items:center !important;
    align-items:center !important;
    gap:8px !important;
    --gap:8px !important;
    --padding-left:12px !important;--padding-right:8px !important;
    padding:10px 8px 10px 12px !important;
    min-height:64px;
    box-sizing:border-box !important;
  }
  /* Logo column: shrink into remaining space */
  #masthead .elementor-element-bab29d8.e-con.e-flex{
    --width:auto !important;
    width:auto !important;
    max-width:none !important;
    --flex-grow:1 !important;
    --flex-shrink:1 !important;
    --flex-basis:0% !important;
    flex:1 1 0% !important;
    min-width:0 !important;
    --align-items:flex-start !important;
    align-items:flex-start !important;
    justify-content:center !important;
    overflow:hidden !important;
  }
  #masthead .elementor-element-9834407{
    text-align:left !important;
    width:auto !important;max-width:100% !important;
  }
  #masthead .elementor-element-9834407 .elementor-widget-container,
  #masthead .elementor-element-9834407 a{
    display:block !important;
    width:clamp(96px,28vw,128px) !important;
    height:56px !important;
    max-width:100% !important;
    line-height:0 !important;
    overflow:hidden !important;
  }
  #masthead .elementor-element-9834407 img,
  #masthead .elementor-element-bab29d8 img{
    width:100% !important;
    height:100% !important;
    max-width:none !important;
    max-height:none !important;
    margin:0 !important;
    object-fit:cover !important;
    object-position:50% 48% !important;
  }
  /* Icons rail: intrinsic width only — never 100% */
  #masthead .elementor-element-5bf11b0.e-con.e-flex{
    --width:auto !important;
    width:auto !important;
    max-width:none !important;
    --flex-grow:0 !important;
    --flex-shrink:0 !important;
    --flex-basis:auto !important;
    flex:0 0 auto !important;
    --flex-wrap:nowrap !important;
    --flex-wrap-mobile:nowrap !important;
    flex-wrap:nowrap !important;
    --flex-direction:row !important;
    flex-direction:row !important;
    justify-content:flex-end !important;
    align-items:center !important;
    gap:0 !important;--gap:0 !important;--column-gap:0 !important;
    margin-left:auto !important;
  }
  #masthead .elementor-element-6dd0f05{display:flex !important;}
  #masthead .elementor-element-5bf11b0 > .elementor-element:not(.elementor-element-b548541),
  #masthead .nav-toggle{
    width:34px !important;min-width:34px !important;max-width:34px !important;
    flex:0 0 34px !important;height:34px !important;
  }
  #masthead .elementor-element-168d42b .elementor-icon,
  #masthead .elementor-element-6dd0f05 .elementor-icon,
  #masthead .elementor-element-ecde0eb .hfe-menu-cart__toggle .elementor-button-icon{
    font-size:18px !important;width:18px !important;height:18px !important;
  }
  #masthead .elementor-element-168d42b .elementor-icon svg,
  #masthead .elementor-element-6dd0f05 .elementor-icon svg{
    width:18px !important;height:18px !important;
  }
  #masthead .elementor-element-ecde0eb .hfe-menu-cart__toggle .elementor-button{
    width:34px !important;min-width:34px !important;height:34px !important;
  }
  #masthead .nav-toggle{padding:0 !important;gap:4.5px !important;}
  #masthead .nav-toggle-bar{width:16px;height:1.5px;}
}

@media(max-width:560px){
  #masthead .elementor-element-9834407 .elementor-widget-container,
  #masthead .elementor-element-9834407 a{
    width:88px !important;
    height:50px !important;
  }
  #masthead .elementor-element-5bf11b0 > .elementor-element:not(.elementor-element-b548541),
  #masthead .nav-toggle{
    width:32px !important;min-width:32px !important;max-width:32px !important;
    flex:0 0 32px !important;height:32px !important;
  }
  #masthead .elementor-element-ecde0eb .hfe-menu-cart__toggle .elementor-button{
    width:32px !important;min-width:32px !important;height:32px !important;
  }
}

/* ── HFE Elementor footer (colophon) — mobile & tablet ─────────── */
#colophon .footer-width-fixer,
#colophon .elementor-121{width:100%;box-sizing:border-box;}

@media(max-width:1024px){
  #colophon .elementor-element-e1a85f7{
    --padding-left:clamp(20px,5vw,40px) !important;
    --padding-right:clamp(20px,5vw,40px) !important;
    --padding-top:clamp(28px,6vw,40px) !important;
    --padding-bottom:clamp(24px,5vw,36px) !important;
    padding:clamp(28px,6vw,40px) clamp(20px,5vw,40px) clamp(24px,5vw,36px) !important;
    border-radius:0 0 clamp(24px,5vw,40px) clamp(24px,5vw,40px) !important;
  }
  #colophon .elementor-element-d10e574{
    --flex-direction:column !important;
    --flex-wrap-mobile:wrap !important;
    flex-direction:column !important;
    --gap:0 !important;
    --row-gap:0 !important;
    --column-gap:0 !important;
    gap:0 !important;
    width:100% !important;
    --content-width:100% !important;
    max-width:100% !important;
  }
  #colophon .elementor-element-d10e574 > .e-con-inner{
    display:flex !important;
    flex-wrap:wrap !important;
    width:100% !important;
    max-width:100% !important;
    gap:clamp(24px,4vw,32px) clamp(20px,4vw,32px) !important;
    box-sizing:border-box !important;
  }
  #colophon .elementor-element-2c75948,
  #colophon .elementor-element-0fd5295,
  #colophon .elementor-element-74fb8be{
    --width:100% !important;
    width:100% !important;
    flex:1 1 100% !important;
    min-width:0 !important;
    align-items:flex-start !important;
    --align-items:flex-start !important;
  }
  #colophon .elementor-element-bb290a4 img{
    max-width:clamp(148px,34vw,220px) !important;
    width:auto !important;
    height:auto !important;
    object-fit:contain !important;
  }
  #colophon .elementor-element-a86ac5d{
    padding:0 !important;
    margin-top:10px !important;
    width:100% !important;
  }
  #colophon .elementor-element-a86ac5d p{
    max-width:36ch !important;
    font-size:clamp(13px,3.4vw,14px) !important;
    line-height:1.65 !important;
  }
  #colophon .elementor-element-0a04930 > .elementor-widget-container > div{
    margin-top:clamp(28px,6vw,40px) !important;
    padding-top:clamp(18px,4vw,24px) !important;
    font-size:clamp(10px,2.6vw,12px) !important;
    line-height:1.55 !important;
  }
}

@media(min-width:600px) and (max-width:1024px){
  #colophon .elementor-element-d10e574 > .e-con-inner{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    align-items:start !important;
    gap:clamp(24px,4vw,36px) clamp(28px,5vw,40px) !important;
  }
  #colophon .elementor-element-2c75948{
    grid-column:1 / -1 !important;
    display:grid !important;
    grid-template-columns:minmax(140px,200px) minmax(0,1fr) !important;
    align-items:center !important;
    gap:clamp(20px,4vw,32px) !important;
    --width:100% !important;
    width:100% !important;
  }
  #colophon .elementor-element-2c75948 .elementor-element-a86ac5d{
    margin-top:0 !important;
  }
  #colophon .elementor-element-2c75948 .elementor-element-a86ac5d p{
    max-width:none !important;
  }
  #colophon .elementor-element-0fd5295,
  #colophon .elementor-element-74fb8be{
    --width:auto !important;
    width:auto !important;
    flex:initial !important;
  }
}

@media(max-width:599px){
  #colophon .elementor-element-e1a85f7{
    --padding-left:20px !important;
    --padding-right:20px !important;
    padding-left:20px !important;
    padding-right:20px !important;
  }
  #colophon .elementor-element-d10e574 > .e-con-inner{
    flex-direction:column !important;
    align-items:center !important;
    gap:28px !important;
  }
  #colophon .elementor-element-2c75948,
  #colophon .elementor-element-0fd5295,
  #colophon .elementor-element-74fb8be{
    align-items:center !important;
    --align-items:center !important;
    text-align:center !important;
  }
  #colophon .elementor-element-bb290a4{text-align:center !important;}
  #colophon .elementor-element-a86ac5d p{
    margin-inline:auto !important;
    max-width:28ch !important;
  }
  #colophon .elementor-element-6ae5ed2 > div,
  #colophon .elementor-element-d69cc84 > div{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
  }
}

/* GLOBAL WOOCOMMERCE NOTICES (add-to-cart, shop, product, etc.) */
.woocommerce-notices-wrapper{
  max-width:1280px;
  margin:0 auto clamp(16px,2vw,22px);
  padding:0 clamp(20px,4vw,56px);
  width:100%;
  box-sizing:border-box;
}
.woocommerce-notices-wrapper:empty{display:none;}

.woocommerce-notices-wrapper .woocommerce-message,
.woocommerce-notices-wrapper .woocommerce-info,
.woocommerce-notices-wrapper .woocommerce-error,
.woocommerce-notices-wrapper ul.woocommerce-error,
main > .woocommerce-notices-wrapper > .woocommerce-message,
main > .woocommerce-notices-wrapper > .woocommerce-info,
main > .woocommerce-notices-wrapper > .woocommerce-error{
  background:var(--linen) !important;
  border:1.5px solid var(--sand) !important;
  border-top:1.5px solid var(--sand) !important;
  border-radius:12px !important;
  padding:14px 18px !important;
  font-family:var(--body) !important;
  font-size:14px !important;
  font-weight:300 !important;
  color:var(--ink-soft) !important;
  margin:0 !important;
  list-style:none !important;
  outline:none !important;
  box-shadow:none !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:14px !important;
  flex-wrap:wrap !important;
  line-height:1.55 !important;
}
.woocommerce-notices-wrapper .woocommerce-message,
main > .woocommerce-notices-wrapper > .woocommerce-message{
  border-color:color-mix(in srgb, var(--gold) 35%, var(--sand)) !important;
  border-top-color:color-mix(in srgb, var(--gold) 35%, var(--sand)) !important;
}
.woocommerce-notices-wrapper .woocommerce-info,
main > .woocommerce-notices-wrapper > .woocommerce-info{
  border-color:var(--sand) !important;
  border-top-color:var(--sand) !important;
}
.woocommerce-notices-wrapper .woocommerce-error,
.woocommerce-notices-wrapper ul.woocommerce-error,
main > .woocommerce-notices-wrapper > .woocommerce-error{
  border-color:#e8b4b4 !important;
  border-top-color:#e8b4b4 !important;
  background:#fdf8f6 !important;
  color:#8b4545 !important;
}
.woocommerce-notices-wrapper .woocommerce-error li,
.woocommerce-notices-wrapper ul.woocommerce-error li{
  list-style:none !important;
  margin:0 !important;
  padding:0 !important;
  border:none !important;
}
.woocommerce-notices-wrapper .woocommerce-message::before,
.woocommerce-notices-wrapper .woocommerce-info::before,
.woocommerce-notices-wrapper .woocommerce-error::before,
.woocommerce-notices-wrapper .woocommerce-message::after,
.woocommerce-notices-wrapper .woocommerce-info::after,
.woocommerce-notices-wrapper .woocommerce-error::after,
main > .woocommerce-notices-wrapper > .woocommerce-message::before,
main > .woocommerce-notices-wrapper > .woocommerce-info::before,
main > .woocommerce-notices-wrapper > .woocommerce-error::before{
  display:none !important;
  content:none !important;
}
.woocommerce-notices-wrapper .woocommerce-message .button,
.woocommerce-notices-wrapper .woocommerce-info .button,
.woocommerce-notices-wrapper a.button.wc-forward,
main > .woocommerce-notices-wrapper .woocommerce-message .button,
main > .woocommerce-notices-wrapper a.button.wc-forward{
  background:var(--gold) !important;
  color:var(--linen) !important;
  border:none !important;
  border-radius:22px !important;
  padding:8px 20px !important;
  font-family:var(--body) !important;
  font-size:11px !important;
  font-weight:600 !important;
  letter-spacing:.14em !important;
  text-transform:uppercase !important;
  text-decoration:none !important;
  flex-shrink:0 !important;
  margin:0 !important;
  transition:background .2s var(--ease) !important;
}
.woocommerce-notices-wrapper .woocommerce-message .button:hover,
.woocommerce-notices-wrapper a.button.wc-forward:hover,
main > .woocommerce-notices-wrapper a.button.wc-forward:hover{
  background:var(--gold-deep) !important;
  color:var(--linen) !important;
}

.single-product .woo-main > .woocommerce-notices-wrapper{
  margin-top:clamp(16px,2.5vw,24px);
  margin-bottom:0;
}

/* SINGLE PRODUCT PAGE */
.single-product .woo-main{background:var(--linen);}

/* Breadcrumb full-width border, inner content aligns with page grid */
.woocommerce-breadcrumb{border-bottom:1px solid var(--sand);}
.bc-inner{
  max-width:1280px;margin:0 auto;
  padding:14px clamp(20px,4vw,56px);
  display:flex;align-items:center;gap:10px;flex-wrap:wrap;
}
.woocommerce-breadcrumb a,.woocommerce-breadcrumb span{
  font-size:11px;font-weight:500;letter-spacing:.12em;
  text-transform:uppercase;color:var(--taupe);text-decoration:none;
}
.woocommerce-breadcrumb a:hover{color:var(--gold-deep);}
.bc-sep{color:var(--sand);font-size:10px;}
.bc-current{color:var(--ink-soft);}

/* Two-column grid self-contained max-width + padding */
.woocommerce-product-wrap{
  max-width:1280px;margin:0 auto;
  padding:clamp(36px,5vw,72px) clamp(20px,4vw,56px);
  display:grid;grid-template-columns:1.08fr 0.92fr;
  gap:clamp(36px,5.5vw,86px);align-items:start;
}

/* Gallery override WC float + width, then make sticky */
.single-product .woocommerce-product-gallery{
  position:sticky;top:28px;
  float:none !important;width:100% !important;
  margin:0 !important;min-width:0;
}

/* Main image — square crop on the img so FlexSlider height matches (no bottom gap) */
.single-product .woocommerce-product-gallery .flex-viewport{
  border-radius:22px;overflow:hidden;background:var(--sand);
}
.single-product .woocommerce-product-gallery__image{
  position:relative;border-radius:22px;overflow:hidden;
  background:var(--sand);cursor:zoom-in;
}
.single-product .woocommerce-product-gallery__image > a{
  display:block;line-height:0;
}
.single-product .woocommerce-product-gallery__image img:not(.zoomImg){
  width:100% !important;height:auto !important;
  aspect-ratio:1;object-fit:cover;object-position:center;
  display:block;transition:transform .7s var(--ease);
}
.single-product .woocommerce-product-gallery__image:hover img:not(.zoomImg){transform:scale(1.04);}

/* Zoom trigger */
.single-product .woocommerce-product-gallery__trigger{
  position:absolute;top:16px;right:16px;z-index:10;
  width:40px;height:40px;border-radius:50%;
  background:rgba(251,247,239,.88);backdrop-filter:blur(8px);
  border:1px solid rgba(166,132,92,.2);
  display:flex;align-items:center;justify-content:center;
  cursor:pointer;transition:background .25s;
}
.single-product .woocommerce-product-gallery__trigger:hover{background:var(--linen);}
.single-product .woocommerce-product-gallery__trigger img{
  width:17px !important;height:17px !important;
  object-fit:contain !important;aspect-ratio:auto !important;
}

/* Thumbnails — beat WC `.woocommerce div.product div.images .flex-control-thumbs{margin:0}` */
.woocommerce div.product div.images ol.flex-control-thumbs,
.single-product ol.flex-control-thumbs{
  display:flex;gap:10px;margin:16px 0 0;list-style:none;padding:0;
}
.woocommerce div.product div.images ol.flex-control-thumbs li,
.single-product ol.flex-control-thumbs li{flex:1;}
.woocommerce div.product div.images ol.flex-control-thumbs li img,
.single-product ol.flex-control-thumbs li img{
  width:100%;aspect-ratio:1;object-fit:cover;object-position:center;display:block;
  border-radius:12px;cursor:pointer;
  border:2px solid transparent;opacity:.72;
  transition:border-color .3s,opacity .3s;
}
.woocommerce div.product div.images ol.flex-control-thumbs li.flex-active img,
.woocommerce div.product div.images ol.flex-control-thumbs li img:hover,
.single-product ol.flex-control-thumbs li.flex-active img,
.single-product ol.flex-control-thumbs li img:hover{border-color:var(--gold);opacity:1;}

/* Summary column override WC's float:right + width:48% */
.single-product .summary.entry-summary{
  float:none !important;width:100% !important;
  padding-top:4px;min-width:0;
}

.product-collection-eyebrow{
  display:block;margin-bottom:14px;
  font-size:11px;font-weight:600;letter-spacing:.34em;
  text-transform:uppercase;color:var(--gold);
}

/* Title */
.single-product .product_title{
  font-family:var(--display);font-weight:360;
  font-size:clamp(30px,3.8vw,50px);line-height:1.02;
  letter-spacing:-.015em;color:var(--ink);margin:0 0 14px !important;
}
.single-product .product_title em{font-style:italic;color:var(--gold-deep);}

/* Rating */
.single-product .woocommerce-product-rating{
  display:flex !important;align-items:center;margin-bottom:22px;
  margin-left:0 !important;padding-left:0 !important;
}
.single-product .woocommerce-review-link{margin-left:10px;}
.single-product .star-rating{
  font-size:14px;overflow:hidden;position:relative;
  line-height:1;vertical-align:middle;
  float:none !important;margin:0 !important;padding:0 !important;
}
/* empty stars */
.single-product .star-rating::before{color:var(--sand) !important;}
/* filled stars */
.single-product .star-rating span::before{color:var(--gold) !important;}
.single-product .woocommerce-review-link{
  font-size:12px;font-weight:500;letter-spacing:.04em;
  color:var(--taupe);text-decoration:none;
  line-height:1;vertical-align:middle;
}
.single-product .woocommerce-review-link:hover{color:var(--gold-deep);}

/* Price display font, large */
.single-product .price{
  font-family:var(--display);
  font-size:clamp(26px,3vw,38px);font-weight:420;
  color:var(--gold-deep);letter-spacing:-.01em;
  line-height:1;display:block;margin:0 0 24px !important;
}
.single-product .price ins{text-decoration:none;}
.single-product .price del{font-size:.72em;color:var(--taupe);margin-right:8px;}

/* Divider */
hr.product-divider{border:none;border-top:1px solid var(--sand);margin:24px 0;}

/* Short description */
.single-product .woocommerce-product-details__short-description{
  font-size:15.5px;font-weight:300;color:var(--ink-soft);
  line-height:1.75;margin-bottom:0;
}
.single-product .woocommerce-product-details__short-description p{margin:0;}

/* Stock */
.single-product .stock{
  display:inline-flex;align-items:center;gap:8px;
  font-size:11px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;
  margin-bottom:24px;
}
.single-product .in-stock{color:#5C8A5A;}
.single-product .out-of-stock{color:#b05555;}
.stock-dot{width:7px;height:7px;border-radius:50%;background:#5C8A5A;flex-shrink:0;}

/* Variations */
.single-product .variations{width:auto;border:none;margin:20px 0 16px;border-collapse:collapse;}
.single-product .variations th.label,
.single-product .variations td.value{border:none;padding:0;vertical-align:middle;}
.single-product .variations th.label{white-space:nowrap;padding-right:20px;}
.single-product .variations .label label{
  font-size:13px;font-weight:700;letter-spacing:.18em;
  text-transform:uppercase;color:var(--ink-soft);
  text-align:left;display:block;
}
.single-product .variations select{
  font-family:var(--body);font-size:14px;font-weight:400;color:var(--ink);
  background:var(--linen);border:1.5px solid var(--sand);
  border-radius:40px;padding:13px 42px 13px 20px;
  -webkit-appearance:none;appearance:none;cursor:pointer;outline:none;
  transition:border-color .3s;min-width:180px;max-width:280px;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='7' viewBox='0 0 12 7'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%239C8569' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 16px center;
}
.single-product .variations select:focus{border-color:var(--gold);}
.single-product .reset_variations{
  font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;
  color:var(--taupe);text-decoration:none;white-space:nowrap;transition:color .3s;flex-shrink:0;
}
.single-product .reset_variations:hover{color:var(--gold-deep);}
.single-product .reset_variations[style*="visibility: hidden"]{display:none;}

/* Variation availability */
.single-product .woocommerce-variation{margin-bottom:14px;}
.single-product .woocommerce-variation-price .price{margin-bottom:8px !important;}
.single-product .woocommerce-variation-availability .stock{margin-bottom:20px;}

/* Simple product qty + button are direct flex children */
.single-product form.cart:not(.variations_form){
  display:flex;align-items:center;gap:14px;margin-bottom:20px;flex-wrap:wrap;
}
/* Variable product block so the variations table stacks above qty+button */
.single-product form.cart.variations_form{
  display:block;margin-bottom:20px;
}
/* Variable product qty+button row */
.single-product .woocommerce-variation-add-to-cart{
  display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:14px;
}

/*Single product Button spacing*/

.woocommerce div.product form.cart {
    margin-top: 2em;
    margin-left: -14px;
}

/* Quantity stepper */
.single-product .quantity{
  display:flex;align-items:center;
  border:1.5px solid var(--sand);border-radius:40px;
  overflow:hidden;background:var(--linen);flex-shrink:0;
}
.single-product .qty-btn{
  width:42px;height:48px;border:none;background:none;
  cursor:pointer;color:var(--ink-soft);
  display:flex;align-items:center;justify-content:center;transition:color .2s;
}
.single-product .qty-btn:hover{color:var(--ink);}
.single-product .quantity input.qty{
  width:44px;text-align:center;border:none;background:none;outline:none;
  font-family:var(--body);font-size:15px;font-weight:500;color:var(--ink);
  -moz-appearance:textfield;
}
.single-product .quantity input.qty::-webkit-inner-spin-button,
.single-product .quantity input.qty::-webkit-outer-spin-button{-webkit-appearance:none;}

/* Add to bag */
.single-product .single_add_to_cart_button{
  flex:1;height:48px;
  display:flex !important;align-items:center !important;justify-content:center !important;gap:12px;
  font-family:var(--body) !important;font-size:12px !important;font-weight:600 !important;
  letter-spacing:.2em !important;text-transform:uppercase;
  color:var(--linen) !important;background:var(--ink) !important;
  border:none !important;border-radius:40px !important;
  padding:14px 28px;cursor:pointer;
  transition:background .4s var(--ease) !important;
}
.single-product .single_add_to_cart_button:hover{background:var(--gold-deep) !important;}
.single-product .single_add_to_cart_button.loading{opacity:.7;}

/* Trust badges 2Ã 2 grid */
.product-trust{display:grid;grid-template-columns:repeat(2,1fr);gap:12px 18px;padding-top:4px;}
.trust-item{display:flex;align-items:center;gap:9px;font-size:11.5px;color:var(--ink-soft);}
.trust-icon{
  width:34px;height:34px;border-radius:50%;background:var(--sand);
  display:flex;align-items:center;justify-content:center;flex-shrink:0;
}

/* Shipping info */
.product-shipping{
  display:flex;align-items:center;gap:10px;
  font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;
  color:var(--ink-soft);padding:14px 0;
}

/* Meta */
.single-product .product_meta{
  margin-top:4px;padding-top:20px;border-top:1px solid var(--sand);
  font-size:12px;color:var(--taupe);letter-spacing:.07em;line-height:2;
}
.single-product .product_meta span{display:block;}
.single-product .product_meta a{color:var(--taupe);text-decoration:underline;text-underline-offset:3px;}
.single-product .product_meta a:hover{color:var(--gold-deep);}

/* Tabs full-width linen section */
.single-product .woocommerce-tabs{
  background:var(--linen);border-top:1px solid var(--sand);
  border-bottom:1px solid var(--sand);
  padding:clamp(52px,6.5vw,88px) clamp(20px,4vw,56px);
}
.single-product .woocommerce-tabs ul.tabs,
.single-product .woocommerce-tabs .panel{
  max-width:1280px;margin-left:auto;margin-right:auto;
}
.single-product .woocommerce-tabs ul.tabs{
  display:flex;gap:0;list-style:none;
  border-bottom:1px solid var(--sand);margin-bottom:44px;
}
.single-product .woocommerce-tabs ul.tabs li{
  background:none !important;border:none !important;
  border-radius:0 !important;padding:0 !important;
}
.single-product .woocommerce-tabs ul.tabs li::before,
.single-product .woocommerce-tabs ul.tabs li::after{display:none !important;}
.single-product .woocommerce-tabs ul.tabs li a{
  display:block !important;padding:14px 24px !important;
  font-size:11px !important;font-weight:600;letter-spacing:.24em;text-transform:uppercase;
  color:var(--taupe);text-decoration:none;
  border-bottom:2px solid transparent;margin-bottom:-1px;
  transition:color .3s,border-color .3s;
}
.single-product .woocommerce-tabs ul.tabs li.active a{color:var(--ink);border-bottom-color:var(--gold);}
.single-product .woocommerce-tabs ul.tabs li a:hover{color:var(--ink-soft);}
.single-product .woocommerce-tabs .panel h2{display:none;}
.single-product .woocommerce-tabs .panel p{
  font-size:15.5px;line-height:1.82;color:var(--ink-soft);
  font-weight:300;margin-bottom:20px;
}
.single-product .shop_attributes{width:100%;max-width:600px;border-collapse:collapse;}
.single-product .shop_attributes tr{border-bottom:1px solid var(--sand);}
.single-product .shop_attributes td,.single-product .shop_attributes th{
  padding:14px 0;font-size:14.5px;text-align:left;vertical-align:middle;
}
.single-product .shop_attributes th{
  font-size:10.5px;font-weight:600;letter-spacing:.2em;
  text-transform:uppercase;color:var(--taupe);width:130px;
}
.single-product .shop_attributes td{color:var(--ink-soft);}
.single-product .woocommerce-tabs .shop_attributes td p{margin:0;font-size:14.5px;line-height:1.5;}

/* Reviews tab */
#reviews{max-width:760px;}
#reviews h3{display:block !important;font-family:var(--display);font-size:clamp(20px,2.2vw,28px);font-weight:380;color:var(--ink);margin-bottom:28px;}
/* Existing review list */
.woocommerce-Reviews .commentlist{list-style:none;margin:0 0 48px;padding:0;display:flex;flex-direction:column;gap:20px;}
.woocommerce-Reviews .commentlist li{display:flex;gap:18px;align-items:flex-start;}
.woocommerce-Reviews .commentlist li .avatar{width:44px;height:44px;border-radius:50%;object-fit:cover;flex-shrink:0;border:2px solid var(--sand);}
.woocommerce-Reviews .comment-text{flex:1;background:var(--linen);border:1px solid var(--sand);border-radius:12px;padding:20px 24px;}
.woocommerce-Reviews .star-rating{margin-bottom:6px;}
.woocommerce-Reviews .woocommerce-review__author{font-size:13px;font-weight:600;color:var(--ink);letter-spacing:.04em;}
.woocommerce-Reviews .woocommerce-review__dash{color:var(--sand);margin:0 6px;}
.woocommerce-Reviews .woocommerce-review__published-date{font-size:12px;color:var(--taupe);}
.woocommerce-Reviews .description p{margin:10px 0 0;font-size:14.5px;line-height:1.72;color:var(--ink-soft);font-weight:300;}
/* Add a review form */
.woocommerce-Reviews #review_form_wrapper{border-top:1px solid var(--sand);padding-top:40px;}
.woocommerce-Reviews #review_form_wrapper h3{font-size:clamp(18px,1.8vw,24px);margin-bottom:6px;}
.woocommerce-Reviews .comment-notes{font-size:13px;color:var(--taupe);margin-bottom:24px;}
.woocommerce-Reviews .comment-form-rating label,
.woocommerce-Reviews .comment-form-comment label,
.woocommerce-Reviews .comment-form-author label,
.woocommerce-Reviews .comment-form-email label{
  display:block;font-size:10.5px;font-weight:600;letter-spacing:.2em;
  text-transform:uppercase;color:var(--taupe);margin-bottom:8px;
}
.woocommerce-Reviews .comment-form-rating{margin-bottom:20px;}
.woocommerce-Reviews .stars a{font-size:20px;color:var(--sand);transition:color .2s;}
.woocommerce-Reviews .stars a:hover,.woocommerce-Reviews .stars a.active{color:var(--gold);}
.woocommerce-Reviews .comment-form-comment{margin-bottom:20px;}
.woocommerce-Reviews textarea#comment{
  width:100%;min-height:130px;padding:14px 16px;
  border:1px solid var(--sand);border-radius:10px;
  background:var(--linen);color:var(--ink);
  font-family:var(--body);font-size:14.5px;font-weight:300;
  resize:vertical;outline:none;transition:border-color .2s;box-sizing:border-box;
}
.woocommerce-Reviews textarea#comment:focus{border-color:var(--gold);}
.woocommerce-Reviews .comment-form-author,
.woocommerce-Reviews .comment-form-email{margin-bottom:16px;}
.woocommerce-Reviews .comment-form-author input,
.woocommerce-Reviews .comment-form-email input{
  width:280px;max-width:100%;padding:11px 14px;
  border:1px solid var(--sand);border-radius:8px;
  background:var(--linen);color:var(--ink);
  font-family:var(--body);font-size:14px;font-weight:300;
  outline:none;transition:border-color .2s;
}
.woocommerce-Reviews .comment-form-author input:focus,
.woocommerce-Reviews .comment-form-email input:focus{border-color:var(--gold);}
.woocommerce-Reviews .comment-form-cookies-consent{display:flex;align-items:center;gap:10px;margin-bottom:24px;font-size:13px;color:var(--taupe);}
.woocommerce-Reviews .form-submit input[type="submit"]{
  display:inline-block;padding:13px 36px;
  background:var(--gold);color:var(--linen);
  font-family:var(--body);font-size:12px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;
  border:none;border-radius:40px;cursor:pointer;transition:background .25s;
}
.woocommerce-Reviews .form-submit input[type="submit"]:hover{background:var(--gold-deep);}

/* Related products */
.sp-related{background:var(--linen);padding:clamp(52px,6.5vw,88px) clamp(20px,4vw,56px);}
.sp-related-inner{max-width:1280px;margin:0 auto;}
.section-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:38px;}
.section-head h3{
  font-family:var(--display);font-weight:360;
  font-size:clamp(26px,3.2vw,40px);color:var(--ink);
}
.view-all{
  font-size:11.5px;font-weight:600;letter-spacing:.18em;
  text-transform:uppercase;color:var(--gold-deep);text-decoration:none;
}
.view-all:hover{color:var(--ink);}
.sp-related ul.products{grid-template-columns:repeat(4,1fr) !important;}

/* Responsive */
@media(max-width:900px){
  .woocommerce-product-wrap{grid-template-columns:1fr;gap:28px;}
  .single-product .woocommerce-product-gallery{position:static;}
  .sp-related ul.products{grid-template-columns:repeat(2,1fr) !important;}
}
@media(max-width:560px){
  .single-product form.cart,
  .single-product .woocommerce-variation-add-to-cart{flex-direction:column;align-items:stretch;}
  .single-product .quantity{width:100%;justify-content:space-between;}
  .single-product .single_add_to_cart_button{width:100%;flex:none;}
}

/* Checkout page */

/* Block root */
.wp-block-woocommerce-checkout{
  max-width:none !important;
  padding:0 !important;
}

/* Two-column layout (reuses sidebar-layout from cart) */
.wc-block-checkout .wc-block-components-sidebar-layout{
  gap:clamp(36px,5vw,60px) !important;
  align-items:flex-start !important;
}
.wc-block-checkout__main{
  flex:1 1 0 !important;min-width:0 !important;
}

/* Step sections */
.wc-block-components-checkout-step{
  background:var(--linen) !important;
  border:1px solid var(--sand) !important;
  border-radius:20px !important;
  padding:clamp(24px,3vw,36px) !important;
  margin-bottom:16px !important;
}
/* Heading row: [gold circle] [title] side by side */
.wc-block-components-checkout-step__heading-container{
  display:flex !important;
  flex-direction:row !important;
  align-items:center !important;
  gap:14px !important;
  margin-bottom:20px !important;
  padding-bottom:18px !important;
  border-bottom:1px solid var(--sand) !important;
}
/* Remove any ::before counter we may have added */
.wc-block-components-checkout-step__heading-container::before{
  content:none !important;
  display:none !important;
}
/* Gold circle style the real WC DOM element */
.wc-block-components-checkout-step__index{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-width:32px !important;width:32px !important;height:32px !important;
  border-radius:50% !important;
  background:var(--gold) !important;
  color:var(--linen) !important;
  font-family:var(--body) !important;
  font-size:11px !important;font-weight:600 !important;
  flex-shrink:0 !important;
  order:-1 !important;
}
.wc-block-components-checkout-step__title{
  font-family:var(--display) !important;
  font-size:clamp(18px,2vw,24px) !important;
  font-weight:380 !important;
  color:var(--ink) !important;
  margin:0 !important;
  line-height:1.1 !important;
  text-align:left !important;
}
/* Hide the screen-reader legend so it doesn't show as a bullet */
.wc-block-components-checkout-step > legend.screen-reader-text{
  position:absolute !important;
  width:1px !important;height:1px !important;
  overflow:hidden !important;clip:rect(0,0,0,0) !important;
  white-space:nowrap !important;border:0 !important;
}
.wc-block-components-checkout-step__description{
  font-size:13px !important;color:var(--taupe) !important;
  margin:0 !important;padding-top:0 !important;
}
/* Logged-in / returning customer: contact step shows pre-filled email a... */
.wc-block-components-checkout-step .wc-block-components-text-input input[type="email"][value]:read-only,
.wc-block-components-checkout-step .wc-block-components-text-input input[type="email"]:disabled{
  color:var(--ink-soft) !important;
  background:var(--sand) !important;
  cursor:default !important;
}
/* Guest checkout notice same height as email input (52px) */
.wc-block-checkout__guest-checkout-notice{
  font-family:var(--body) !important;
  font-size:12px !important;
  color:var(--taupe) !important;
  margin:0 !important;
  padding:0 14px !important;
  background:var(--cream) !important;
  border-radius:12px !important;
  border:1.5px solid var(--sand) !important;
  height:52px !important;
  display:flex !important;
  align-items:center !important;
  box-sizing:border-box !important;
}

/* Floating-label text inputs */
.wc-block-components-text-input,
.wc-block-components-select-input,
.wc-block-components-country-input .wc-block-components-select-input{
  position:relative !important;
  height:52px !important;
  border:1.5px solid var(--sand) !important;
  border-radius:12px !important;
  background:var(--cream) !important;
  transition:border-color .3s !important;
  box-shadow:none !important;
  margin-top:0 !important;
  overflow:visible !important;
}
/* When there's a validation error, the container needs to stay 52px for... */
.wc-block-components-validation-error{
  position:absolute !important;
  top:calc(100% + 4px) !important;
  left:0 !important;
  font-family:var(--body) !important;
  font-size:11px !important;
  font-weight:500 !important;
  color:#c0392b !important;
  background:transparent !important;
  margin:0 !important;
  padding:0 2px !important;
  white-space:nowrap !important;
  z-index:10 !important;
}
/* Red border on invalid fields */
.wc-block-components-text-input:has(.wc-block-components-validation-error),
.wc-blocks-components-select:has(.wc-block-components-validation-error){
  border-color:#e07070 !important;
}
.wc-block-components-text-input:focus-within,
.wc-block-components-select-input:focus-within{
  border-color:var(--gold) !important;
}
/* Floating label */
.wc-block-components-text-input label,
.wc-block-components-select-input label{
  position:absolute !important;
  top:50% !important;left:16px !important;
  transform:translateY(-50%) !important;
  font-family:var(--body) !important;
  font-size:14px !important;font-weight:300 !important;
  color:var(--taupe) !important;
  pointer-events:none !important;
  transition:all .2s !important;
  background:transparent !important;
  padding:0 !important;margin:0 !important;
}
.wc-block-components-text-input.is-active label,
.wc-block-components-text-input:focus-within label,
.wc-block-components-select-input.is-active label,
.wc-block-components-select-input:focus-within label{
  top:10px !important;
  transform:none !important;
  font-size:10px !important;
  font-weight:600 !important;
  letter-spacing:.18em !important;
  text-transform:uppercase !important;
  color:var(--taupe) !important;
}
/* Input inside floating wrapper */
.wc-block-components-text-input input,
.wc-block-components-text-input.is-active input{
  position:absolute !important;
  bottom:0 !important;left:0 !important;right:0 !important;
  height:30px !important;
  padding:0 16px !important;
  border:none !important;background:transparent !important;
  outline:none !important;box-shadow:none !important;
  font-family:var(--body) !important;
  font-size:14px !important;font-weight:400 !important;
  color:var(--ink) !important;
  width:100% !important;
}

/* Select inside floating wrapper */
.wc-block-components-select-input select{
  position:absolute !important;
  bottom:0 !important;left:0 !important;right:0 !important;
  height:30px !important;
  padding:0 36px 0 16px !important;
  border:none !important;background:transparent !important;
  outline:none !important;
  font-family:var(--body) !important;
  font-size:14px !important;font-weight:400 !important;
  color:var(--ink) !important;
  width:100% !important;
  -webkit-appearance:none;appearance:none;
  cursor:pointer;
}
/* Custom arrow for select */
.wc-block-components-select-input::after{
  content:"" !important;
  position:absolute !important;
  right:14px !important;top:50% !important;
  transform:translateY(-50%) !important;
  width:10px !important;height:6px !important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%239C8569' stroke-width='1.4' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") !important;
  background-repeat:no-repeat !important;
  pointer-events:none !important;
}

/* Kill any WC-added arrow on the outer wrapper so only our container ar... */
/* Hide WC's built-in SVG expand icon theme uses ::after chevron on the... */
.wc-blocks-components-select__expand{ display:none !important; }

/* Country / State — same floating-label shell as other checkout fields */
.wc-blocks-components-select{
  position:relative !important;
  background:var(--cream) !important;
  border:1.5px solid var(--sand) !important;
  border-radius:12px !important;
  height:52px !important;
  min-height:52px !important;
  max-height:52px !important;
  box-shadow:none !important;
  transition:border-color .3s !important;
  overflow:hidden !important;
  box-sizing:border-box !important;
}
/* WC checkout.css adds margin-top:12px on state select — misaligns city/state row */
.wc-block-checkout__form .wc-block-components-address-form > .wc-block-components-text-input,
.wc-block-checkout__form .wc-block-components-address-form > .wc-block-components-state-input,
.wc-block-checkout__form .wc-block-components-address-form > .wc-block-components-country-input,
.wc-block-checkout__form .wc-block-components-address-form .wc-blocks-components-select,
.wc-block-checkout__form .wc-block-components-address-form .wc-block-components-state-input{
  margin-top:0 !important;
  margin-bottom:0 !important;
}
.wc-block-checkout__form .wc-block-components-address-form .wc-block-components-state-input,
.wc-block-checkout__form .wc-block-components-address-form .wc-block-components-country-input{
  display:block !important;
  padding:0 !important;
  height:52px !important;
  min-height:52px !important;
  max-height:52px !important;
  overflow:hidden !important;
  box-sizing:border-box !important;
}
.wc-block-checkout__form .wc-block-components-address-form .wc-blocks-components-select{
  height:52px !important;
  min-height:52px !important;
  max-height:52px !important;
}
.wc-blocks-components-select:focus-within{
  border-color:var(--gold) !important;
}
.wc-blocks-components-select__container{
  position:relative !important;
  height:52px !important;
  max-height:52px !important;
  display:block !important;
  background:transparent !important;
  overflow:hidden !important;
}
/* Match .wc-block-components-text-input label behaviour */
.wc-blocks-components-select__label{
  position:absolute !important;
  top:50% !important;left:16px !important;
  transform:translateY(-50%) !important;
  font-family:var(--body) !important;
  font-size:14px !important;font-weight:300 !important;
  letter-spacing:normal !important;text-transform:none !important;
  color:var(--taupe) !important;
  pointer-events:none !important;
  transition:all .2s !important;
  z-index:1 !important;
}
.wc-blocks-components-select.is-active .wc-blocks-components-select__label,
.wc-blocks-components-select:focus-within .wc-blocks-components-select__label{
  top:10px !important;
  transform:none !important;
  font-size:10px !important;
  font-weight:600 !important;
  letter-spacing:.18em !important;
  text-transform:uppercase !important;
}
.wc-blocks-components-select__select{
  appearance:none !important;-webkit-appearance:none !important;
  background:transparent !important;
  background-image:none !important;
  border:none !important;box-shadow:none !important;outline:none !important;
  font-family:var(--body) !important;
  font-size:14px !important;font-weight:400 !important;
  color:var(--ink) !important;
  padding:0 36px 0 16px !important;
  width:100% !important;
  cursor:pointer !important;
  position:absolute !important;
  bottom:0 !important;left:0 !important;right:0 !important;
  height:30px !important;
  z-index:2 !important;
}
/* Same chevron as .wc-block-components-select-input */
.wc-blocks-components-select__container::after{
  content:"" !important;
  position:absolute !important;
  right:14px !important;top:50% !important;
  transform:translateY(-50%) !important;
  width:10px !important;height:6px !important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%239C8569' stroke-width='1.4' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") !important;
  background-repeat:no-repeat !important;
  pointer-events:none !important;
  z-index:3 !important;
}
/* SelectWoo sits inside the floating field shell on checkout */
.wc-block-checkout .wc-blocks-components-select .select2-container,
.wc-block-checkout .wc-block-components-select-input .select2-container{
  width:100% !important;
  display:block !important;
  margin:0 !important;
  position:absolute !important;
  bottom:0 !important;left:0 !important;right:0 !important;
  height:30px !important;
  z-index:2 !important;
}
.wc-block-checkout .wc-blocks-components-select:has(.select2-hidden-accessible) .wc-blocks-components-select__container::after,
.wc-block-checkout .wc-block-components-select-input:has(.select2-hidden-accessible)::after{
  display:none !important;
}
.wc-block-checkout .select2-container .select2-selection--single{
  margin:0 !important;
  height:100% !important;
}
.wc-block-checkout .select2-container--default .select2-selection--single{
  background:transparent !important;
  border:none !important;
  border-radius:0 !important;
}
.wc-block-checkout .select2-container--default .select2-selection--single .select2-selection__rendered{
  color:var(--ink) !important;
  line-height:30px !important;
  padding:0 36px 0 16px !important;
  font-family:var(--body) !important;
  font-size:14px !important;
  font-weight:400 !important;
}
.wc-block-checkout .select2-container--default .select2-selection--single .select2-selection__arrow{
  height:100% !important;
  top:0 !important;
  right:14px !important;
  width:20px !important;
}
.wc-block-checkout .select2-container--default .select2-selection--single .select2-selection__arrow b{
  border:none !important;
  width:10px !important;
  height:6px !important;
  margin:0 !important;
  left:50% !important;
  top:50% !important;
  transform:translate(-50%,-50%) !important;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%239C8569' stroke-width='1.4' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") center / contain no-repeat !important;
}
.wc-block-checkout .select2-container--default.select2-container--focus .select2-selection--single,
.wc-block-checkout .select2-container--default.select2-container--open .select2-selection--single{
  outline:none !important;
}
.wc-block-checkout .wc-blocks-components-select:has(.select2-hidden-accessible):focus-within,
.wc-block-checkout .wc-block-components-select-input:has(.select2-hidden-accessible):focus-within{
  border-color:var(--gold) !important;
}

/* Apartment toggle styled to look like an empty text field placeholder */
.wc-block-components-address-form__address_2-toggle{
  display:flex !important;
  align-items:center !important;
  width:100% !important;
  height:52px !important;
  padding:0 16px !important;
  background:var(--cream) !important;
  border:1.5px solid var(--sand) !important;
  border-radius:12px !important;
  font-family:var(--body) !important;
  font-size:14px !important;font-weight:300 !important;
  color:var(--taupe) !important;
  cursor:text !important;
  box-sizing:border-box !important;
  transition:border-color .3s !important;
  text-decoration:none !important;
}
.wc-block-components-address-form__address_2-toggle:hover{
  border-color:var(--gold) !important;
}

/* Address form 2-col grid on wide screens */
.wc-block-components-address-form{
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  column-gap:14px !important;
  row-gap:30px !important;
  align-items:start !important;
}
/* Address card (saved address summary) hide when form is in edit mode */
.wc-block-components-address-address-wrapper.is-editing .wc-block-components-address-card-wrapper{
  display:none !important;
}
/* Address card (collapsed state) style the Edit button */
.wc-block-components-address-card{
  display:flex !important;align-items:center !important;justify-content:space-between !important;
  padding:14px 18px !important;
  background:var(--cream) !important;
  border:1px solid var(--sand) !important;
  border-radius:12px !important;
  margin-bottom:16px !important;
}
.wc-block-components-address-card address{
  font-family:var(--body) !important;font-size:13px !important;
  color:var(--ink-soft) !important;font-style:normal !important;
}
.wc-block-components-address-card__edit{
  font-family:var(--body) !important;font-size:12px !important;
  font-weight:600 !important;letter-spacing:.12em !important;text-transform:uppercase !important;
  color:var(--gold) !important;cursor:pointer !important;
  background:none !important;border:none !important;padding:0 !important;
  text-decoration:none !important;flex-shrink:0 !important;
}
.wc-block-components-address-card__edit:hover{ color:var(--gold-deep) !important; }
/* Full-width fields */
.wc-block-components-address-form .wc-block-components-address-form__address_1,
.wc-block-components-address-form .wc-block-components-address-form__address_2,
.wc-block-components-country-input,
.wc-block-components-address-form .wc-block-components-address-form__company,
.wc-block-components-address-form__address_2-toggle{
  grid-column:1 / -1 !important;
}
/* Explicit 2-col pairing for city/state and postcode/phone */
.wc-block-components-address-form .wc-block-components-address-form__city,
.wc-block-components-address-form .wc-block-components-state-input{
  grid-column:span 1 !important;
  align-self:start !important;
}
.wc-block-components-address-form .wc-block-components-address-form__postcode,
.wc-block-components-address-form .wc-block-components-address-form__phone{
  grid-column:span 1 !important;
}
/* Logged-in users: email is the only child center it */
.wc-block-components-address-form .wc-block-components-address-form__email:only-child{
  grid-column:1 / -1 !important;
  max-width:420px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  width:100% !important;
}

/* Checkbox */
.wc-block-components-checkbox{
  margin:14px 0 !important;
  cursor:pointer !important;
}
.wc-block-components-checkbox label{
  position:relative !important;
  display:inline-flex !important;
  align-items:flex-start !important;
  gap:12px !important;
}
.wc-block-components-checkbox__input{
  appearance:none !important;-webkit-appearance:none !important;
  width:18px !important;height:18px !important;
  min-width:18px !important;
  border:1.5px solid var(--sand) !important;
  border-radius:5px !important;
  background:var(--cream) !important;
  cursor:pointer !important;
  flex-shrink:0 !important;margin:2px 0 0 !important;
  transition:border-color .2s, background .2s !important;
  position:static !important;
  overflow:hidden !important;
}
.wc-block-components-checkbox__input:checked{
  background:var(--gold) !important;
  border-color:var(--gold) !important;
}
/* Kill WC empty ::before/::after — SVG .checkbox__mark is the real check */
.wc-block-components-checkbox__input::before,
.wc-block-components-checkbox__input::after{
  content:none !important;
  display:none !important;
}
/* Keep the SVG mark over the checkbox box, not mid-label (was left:50%) */
.wc-block-components-checkbox__mark{
  position:absolute !important;
  left:0 !important;
  top:2px !important;
  width:18px !important;
  height:18px !important;
  margin:0 !important;
  transform:none !important;
  fill:var(--linen) !important;
  stroke:none !important;
  pointer-events:none !important;
}
.wc-block-components-checkbox__label{
  font-size:13.5px !important;
  color:var(--ink-soft) !important;
  font-weight:300 !important;line-height:1.5 !important;
}

/* Additional fields section */
.wc-block-checkout__add-ons .wc-block-components-checkout-step__heading-container{margin-bottom:14px;}

/* Order notes textarea */
.wc-block-checkout__add-ons textarea,
.wc-block-components-textarea{
  width:100% !important;
  min-height:100px !important;
  padding:14px 16px !important;
  border:1.5px solid var(--sand) !important;
  border-radius:12px !important;
  background:var(--cream) !important;
  font-family:var(--body) !important;
  font-size:14px !important;font-weight:300 !important;
  color:var(--ink) !important;
  outline:none !important;resize:vertical !important;
  transition:border-color .3s !important;
}
.wc-block-checkout__add-ons textarea:focus,
.wc-block-components-textarea:focus{border-color:var(--gold) !important;}

/* Payment methods */
.wc-block-components-checkout-step--payment-method .wc-block-components-checkout-step__heading-container{margin-bottom:14px;}

/* Strip WC highlight-checked chrome (outer border, dividers, inset shadow) */
.wc-block-checkout .wc-block-components-radio-control--highlight-checked::after,
.wc-block-checkout .wc-block-components-radio-control--highlight-checked .wc-block-components-radio-control__option::after,
.wc-block-checkout .wc-block-components-radio-control--highlight-checked .wc-block-components-radio-control-accordion-option::after{
  display:none !important;
  content:none !important;
}
.wc-block-checkout label.wc-block-components-radio-control__option--checked-option-highlighted,
.wc-block-checkout .wc-block-components-radio-control-accordion-option--checked-option-highlighted{
  box-shadow:none !important;
  border-radius:14px !important;
}

/* Shipping rates list */
.wc-block-components-shipping-rates-control__package{
  display:flex !important;
  flex-direction:column !important;
  gap:8px !important;
  margin:0 !important;
}
.wc-block-checkout #shipping-option .wc-block-components-radio-control,
.wc-block-components-shipping-rates-control__package .wc-block-components-radio-control{
  display:flex !important;
  flex-direction:column !important;
  gap:8px !important;
  position:static !important;
}

/* Payment accordion wrapper card styling lives on the label */
.wc-block-components-radio-control-accordion{
  border:none !important;
  display:flex !important;
  flex-direction:column !important;
  gap:8px !important;
}
.wc-block-components-radio-control-accordion-option{
  border:none !important;
  border-radius:0 !important;
  overflow:visible !important;
  background:transparent !important;
}
.wc-block-components-radio-control-accordion-option:has(input:checked){
  border:none !important;
  background:transparent !important;
}

/* Option card (shipping + payment) */
.wc-block-checkout label.wc-block-components-radio-control__option{
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
  padding:16px 18px !important;
  margin:0 !important;
  background:var(--cream) !important;
  border:1.5px solid var(--sand) !important;
  border-radius:14px !important;
  cursor:pointer !important;
  transition:border-color .25s, background .25s !important;
  box-shadow:none !important;
  position:relative !important;
  font-family:var(--body) !important;
}
.wc-block-checkout label.wc-block-components-radio-control__option:hover{
  border-color:color-mix(in srgb, var(--gold) 50%, var(--sand)) !important;
}
.wc-block-checkout label.wc-block-components-radio-control__option-checked,
.wc-block-checkout label.wc-block-components-radio-control__option--checked-option-highlighted{
  border-color:var(--gold) !important;
  background:var(--linen) !important;
}

/* Custom radio dot */
.wc-block-checkout .wc-block-components-radio-control__input{
  appearance:none !important;
  -webkit-appearance:none !important;
  position:static !important;
  transform:none !important;
  top:auto !important;
  left:auto !important;
  width:18px !important;
  height:18px !important;
  min-width:18px !important;
  margin:0 !important;
  flex-shrink:0 !important;
  border:1.5px solid var(--sand) !important;
  border-radius:50% !important;
  background:var(--cream) !important;
  transition:border-color .2s, background .2s, border-width .2s !important;
  cursor:pointer !important;
}
.wc-block-checkout .wc-block-components-radio-control__input:checked{
  border-color:var(--gold) !important;
  border-width:5px !important;
  background:var(--gold) !important;
}
.wc-block-checkout .wc-block-components-radio-control__input:checked::before,
.wc-block-checkout .wc-block-components-radio-control__input::before{
  display:none !important;
  content:none !important;
}
.wc-block-checkout .wc-block-components-radio-control__input:focus{
  outline:none !important;
  box-shadow:0 0 0 2px color-mix(in srgb, var(--gold) 35%, transparent) !important;
}

/* Label + price row */
.wc-block-checkout .wc-block-components-radio-control__option-layout{
  flex:1 !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  min-width:0 !important;
  padding:0 !important;
  width:auto !important;
}
.wc-block-checkout .wc-block-components-radio-control__label-group{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:12px !important;
  width:100% !important;
}
.wc-block-checkout .wc-block-components-radio-control__label{
  font-family:var(--body) !important;
  font-size:14px !important;
  font-weight:500 !important;
  color:var(--ink) !important;
  flex:1 1 auto !important;
  text-align:left !important;
}
.wc-block-checkout .wc-block-components-radio-control__secondary-label{
  font-family:var(--body) !important;
  font-size:14px !important;
  font-weight:500 !important;
  color:var(--gold-deep) !important;
  flex:0 0 auto !important;
  text-align:right !important;
}
.wc-block-checkout .wc-block-components-radio-control__description,
.wc-block-checkout .wc-block-components-radio-control__secondary-description{
  font-size:12.5px !important;
  font-weight:300 !important;
  color:var(--taupe) !important;
  margin-top:2px !important;
  line-height:1.4 !important;
}

/* Payment method icon */
.wc-block-components-payment-method-icon,
.wc-block-checkout .wc-block-components-radio-control__label img{
  width:38px !important;
  height:24px !important;
  object-fit:contain !important;
  margin-left:auto !important;
  flex-shrink:0 !important;
}

/* Payment accordion expanded panel */
.wc-block-components-radio-control-accordion-content{
  padding:4px 18px 12px 48px !important;
  font-size:13.5px !important;
  color:var(--ink-soft) !important;
  font-weight:300 !important;
  line-height:1.55 !important;
  border:none !important;
  background:transparent !important;
}

/* Privacy / terms notice */
.wc-block-checkout__privacy-policy,
.wc-block-checkout__terms{
  font-size:12.5px !important;color:var(--taupe) !important;
  line-height:1.6 !important;margin-top:14px !important;
}
.wc-block-checkout__privacy-policy a,
.wc-block-checkout__terms a{
  color:var(--gold-deep) !important;text-decoration:underline !important;
  text-underline-offset:3px !important;
}

/* Place order button */
.wc-block-components-checkout-place-order-button,
.wc-block-components-checkout-place-order-button.wc-block-components-button{
  display:block !important;width:100% !important;
  font-family:var(--body) !important;
  font-size:12px !important;font-weight:600 !important;
  letter-spacing:.22em !important;text-transform:uppercase !important;
  color:var(--linen) !important;background:var(--gold) !important;
  border:none !important;border-radius:40px !important;
  padding:18px 28px !important;cursor:pointer !important;
  transition:background .4s !important;
  text-align:center !important;margin-top:6px !important;
}
.wc-block-components-checkout-place-order-button:hover{
  background:var(--gold-deep) !important;
}
.wc-block-components-checkout-place-order-button:disabled{
  opacity:.55 !important;cursor:default !important;
}

/* Mobile/tablet: order summary inline above Place Order */
.wc-block-checkout .checkout-order-summary-block-fill-wrapper{
  width:100% !important;
  max-width:100% !important;
  margin:0 0 18px !important;
  padding-bottom:0 !important;
  box-sizing:border-box !important;
}
.wc-block-checkout .checkout-order-summary-block-fill{
  background:var(--linen) !important;
  border:1px solid var(--sand) !important;
  border-radius:clamp(16px,3vw,20px) !important;
  padding:clamp(16px,4vw,28px) !important;
  box-sizing:border-box !important;
  font-size:inherit !important;
  line-height:inherit !important;
  overflow:hidden !important;
  width:100% !important;
}
.wc-block-checkout .checkout-order-summary-block-fill .wc-block-components-order-summary{
  padding:0 !important;
}
.wc-block-checkout .checkout-order-summary-block-fill .wc-block-components-panel,
.wc-block-checkout .checkout-order-summary-block-fill .wc-block-components-totals-coupon,
.wc-block-checkout .checkout-order-summary-block-fill .wc-block-components-totals-item,
.wc-block-checkout .checkout-order-summary-block-fill .wp-block-woocommerce-checkout-order-summary-totals-block .wc-block-components-totals-item{
  padding-left:0 !important;
  padding-right:0 !important;
}
.wc-block-checkout .checkout-order-summary-block-fill .wp-block-woocommerce-checkout-order-summary-totals-block{
  border-top:1px solid var(--sand) !important;
  padding-top:4px !important;
  padding-bottom:0 !important;
}
.wc-block-checkout .checkout-order-summary-block-fill .wc-block-components-checkout-order-summary__title{
  align-items:center !important;
  margin:0 0 16px !important;
  padding:0 0 16px !important;
  border-bottom:1px solid var(--sand) !important;
  border-top:none !important;
  cursor:default !important;
}
.wc-block-checkout .checkout-order-summary-block-fill .wc-block-components-checkout-order-summary__title-text{
  margin:0 !important;
  flex-grow:1 !important;
  padding:0 !important;
  border-bottom:none !important;
}

/* Sidebar: order summary card */
.wc-block-checkout__sidebar .wc-block-components-sidebar-layout__sidebar{
  background:transparent !important;
  border:none !important;
  border-radius:0 !important;
  overflow:visible !important;
  padding:0 !important;
}
.wc-block-checkout__sidebar .wp-block-woocommerce-checkout-order-summary-block,
.wc-block-checkout__sidebar .checkout-order-summary-block-fill{
  border:none !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  font-size:inherit !important;
  margin:0 !important;
}
.wc-block-checkout__sidebar .wc-block-order-summary,
.wc-block-checkout__sidebar .wc-block-components-order-summary{
  padding:0 !important;
}
.wc-block-checkout__sidebar .wp-block-woocommerce-checkout-order-summary-block .wc-block-components-panel,
.wc-block-checkout__sidebar .wp-block-woocommerce-checkout-order-summary-block .wc-block-components-totals-coupon,
.wc-block-checkout__sidebar .wp-block-woocommerce-checkout-order-summary-block .wc-block-components-totals-item,
.wc-block-checkout__sidebar .wp-block-woocommerce-checkout-order-summary-totals-block .wc-block-components-totals-item{
  padding-left:0 !important;
  padding-right:0 !important;
}
.wc-block-checkout__sidebar .wp-block-woocommerce-checkout-order-summary-totals-block{
  border-top:1px solid var(--sand) !important;
  padding-top:4px !important;
  padding-bottom:0 !important;
}
.wc-block-checkout__sidebar .wp-block-woocommerce-checkout-order-summary-totals-block .wc-block-components-totals-wrapper{
  border:none !important;
  padding-bottom:0 !important;
}

.wc-block-checkout__sidebar .wc-block-components-checkout-order-summary__title{
  align-items:center !important;
  margin:0 0 16px !important;
  padding:0 0 16px !important;
  border-bottom:1px solid var(--sand) !important;
  border-top:none !important;
  cursor:default !important;
}
.wc-block-checkout__sidebar .wc-block-components-checkout-order-summary__title-text{
  margin:0 !important;
  flex-grow:1 !important;
  padding:0 !important;
  border-bottom:none !important;
}

.wc-block-components-order-summary__button-text,
.wc-block-order-summary-toggle{
  font-family:var(--body) !important;
  font-size:10px !important;font-weight:600 !important;
  letter-spacing:.22em !important;text-transform:uppercase !important;
  color:var(--taupe) !important;
  background:none !important;border:none !important;
  cursor:pointer !important;
  display:flex !important;align-items:center !important;
  justify-content:space-between !important;
  width:100% !important;padding:0 0 16px !important;
  border-bottom:1px solid var(--sand) !important;
}

/* Order items match cart row typography */
:is(.wc-block-checkout__sidebar,.wc-block-checkout .checkout-order-summary-block-fill) .wc-block-order-summary-item,
:is(.wc-block-checkout__sidebar,.wc-block-checkout .checkout-order-summary-block-fill) .wc-block-components-order-summary-item{
  display:flex !important;
  align-items:center !important;
  gap:20px !important;
  padding:22px 0 !important;
  border-bottom:1px solid var(--sand) !important;
  width:100% !important;
}
:is(.wc-block-checkout__sidebar,.wc-block-checkout .checkout-order-summary-block-fill) .wc-block-order-summary-item__image,
:is(.wc-block-checkout__sidebar,.wc-block-checkout .checkout-order-summary-block-fill) .wc-block-components-order-summary-item__image{
  position:relative !important;
  flex-shrink:0 !important;
  width:76px !important;
  margin-top:0 !important;
  padding-bottom:0 !important;
}
:is(.wc-block-checkout__sidebar,.wc-block-checkout .checkout-order-summary-block-fill) .wc-block-order-summary-item__image img,
:is(.wc-block-checkout__sidebar,.wc-block-checkout .checkout-order-summary-block-fill) .wc-block-components-order-summary-item__image img{
  width:76px !important;
  height:76px !important;
  object-fit:cover !important;
  border-radius:12px !important;
  display:block !important;
  border:none !important;
  max-width:none !important;
}
:is(.wc-block-checkout__sidebar,.wc-block-checkout .checkout-order-summary-block-fill) .wc-block-order-summary-item__quantity,
:is(.wc-block-checkout__sidebar,.wc-block-checkout .checkout-order-summary-block-fill) .wc-block-components-order-summary-item__quantity{
  position:absolute !important;
  top:-6px !important;right:-6px !important;
  min-width:20px !important;
  min-height:20px !important;
  width:auto !important;height:auto !important;
  padding:0 5px !important;
  border-radius:20px !important;
  background:var(--ink) !important;
  color:var(--linen) !important;
  font-size:10px !important;font-weight:600 !important;
  display:flex !important;align-items:center !important;justify-content:center !important;
  line-height:1 !important;
  transform:none !important;
}
:is(.wc-block-checkout__sidebar,.wc-block-checkout .checkout-order-summary-block-fill) .wc-block-components-order-summary-item__quantity span{
  color:var(--linen) !important;
  padding:0 !important;
}
:is(.wc-block-checkout__sidebar,.wc-block-checkout .checkout-order-summary-block-fill) .wc-block-order-summary-item__description,
:is(.wc-block-checkout__sidebar,.wc-block-checkout .checkout-order-summary-block-fill) .wc-block-components-order-summary-item__description{
  flex:1 !important;
  min-width:0 !important;
  padding:0 !important;
  display:flex !important;
  flex-direction:column !important;
  gap:5px !important;
  align-items:flex-start !important;
}
:is(.wc-block-checkout__sidebar,.wc-block-checkout .checkout-order-summary-block-fill) .wc-block-order-summary-item__name,
:is(.wc-block-checkout__sidebar,.wc-block-checkout .checkout-order-summary-block-fill) .wc-block-components-order-summary-item__name,
:is(.wc-block-checkout__sidebar,.wc-block-checkout .checkout-order-summary-block-fill) .wc-block-components-product-name{
  font-family:var(--display) !important;
  font-size:18px !important;
  font-weight:380 !important;
  color:var(--ink) !important;
  display:block !important;
  margin:0 !important;
  line-height:1.2 !important;
  text-decoration:none !important;
  max-width:none !important;
}
:is(.wc-block-checkout__sidebar,.wc-block-checkout .checkout-order-summary-block-fill) .wc-block-components-product-name:hover{color:var(--gold-deep) !important;}
:is(.wc-block-checkout__sidebar,.wc-block-checkout .checkout-order-summary-block-fill) .wc-block-components-product-metadata{display:none !important;}
:is(.wc-block-checkout__sidebar,.wc-block-checkout .checkout-order-summary-block-fill) .wc-block-order-summary-item__variation,
:is(.wc-block-checkout__sidebar,.wc-block-checkout .checkout-order-summary-block-fill) .wc-block-components-order-summary-item__variation{
  font-size:12px !important;
  color:var(--taupe) !important;
  font-weight:300 !important;
}
:is(.wc-block-checkout__sidebar,.wc-block-checkout .checkout-order-summary-block-fill) .wc-block-order-summary-item__individual-prices,
:is(.wc-block-checkout__sidebar,.wc-block-checkout .checkout-order-summary-block-fill) .wc-block-components-order-summary-item__individual-prices,
:is(.wc-block-checkout__sidebar,.wc-block-checkout .checkout-order-summary-block-fill) .wc-block-cart-item__prices .wc-block-formatted-money-amount{
  font-size:13px !important;
  color:var(--gold-deep) !important;
  margin-top:0 !important;
}
:is(.wc-block-checkout__sidebar,.wc-block-checkout .checkout-order-summary-block-fill) .wc-block-order-summary-item__total-price,
:is(.wc-block-checkout__sidebar,.wc-block-checkout .checkout-order-summary-block-fill) .wc-block-components-order-summary-item__total-price{
  font-family:var(--display) !important;
  font-size:clamp(17px,1.8vw,22px) !important;
  font-weight:420 !important;
  color:var(--ink) !important;
  white-space:nowrap !important;
  margin-left:auto !important;
  padding-top:0 !important;
  text-align:right !important;
  align-self:center !important;
}
:is(.wc-block-checkout__sidebar,.wc-block-checkout .checkout-order-summary-block-fill) .screen-reader-text{
  position:absolute !important;
  width:1px !important;height:1px !important;
  padding:0 !important;margin:-1px !important;
  overflow:hidden !important;clip:rect(0,0,0,0) !important;
  white-space:nowrap !important;border:0 !important;
}
:is(.wc-block-checkout__sidebar,.wc-block-checkout .checkout-order-summary-block-fill) .wp-block-woocommerce-checkout-order-summary-cart-items-block{
  border:none !important;
  padding:0 !important;
  margin:0 !important;
}
.wc-block-checkout__main .wc-block-checkout__payment-method-icons{
  display:flex !important;align-items:center !important;gap:8px !important;
  flex-wrap:wrap !important;margin-top:14px !important;opacity:.6 !important;
  justify-content:center !important;
}

/* Validation error messages */
.wc-block-components-validation-error{
  font-size:12px !important;color:#b05555 !important;
  margin-top:4px !important;font-weight:400 !important;
}
.wc-block-components-validation-error p{margin:0 !important;}

/* Spinner / loading overlay */
.wc-block-components-loading-mask__mask{
  background:rgba(244,238,226,.7) !important;
  border-radius:12px !important;
}

/* Return to cart link */
.wc-block-checkout__return-to-cart-link,
a.wc-block-checkout__return-to-cart-link{
  display:inline-flex !important;align-items:center !important;gap:6px !important;
  font-size:11px !important;font-weight:600 !important;
  letter-spacing:.18em !important;text-transform:uppercase !important;
  color:var(--taupe) !important;text-decoration:none !important;
  margin-top:16px !important;transition:color .25s !important;
}
.wc-block-checkout__return-to-cart-link:hover{color:var(--gold-deep) !important;}

/* Order received (thank you) page */
.woocommerce-order{padding:clamp(48px,7vw,88px) 0;}
.wc-block-order-confirmation-status{
  text-align:center;padding:clamp(36px,5vw,60px) clamp(24px,4vw,48px);
  background:var(--linen);border-radius:24px;
  border:1px solid var(--sand);margin-bottom:24px;
}
.wc-block-order-confirmation-status__title{
  font-family:var(--display) !important;
  font-size:clamp(28px,3.5vw,44px) !important;
  font-weight:360 !important;color:var(--ink) !important;
  margin:0 0 14px !important;
}
.wc-block-order-confirmation-status__description{
  font-size:15px !important;color:var(--ink-soft) !important;
  font-weight:300 !important;line-height:1.7 !important;
  max-width:540px;margin:0 auto !important;
}
.wc-block-order-confirmation-totals,
.wc-block-order-confirmation-summary{
  background:var(--linen);border-radius:20px;
  border:1px solid var(--sand);
  padding:clamp(22px,3vw,36px);margin-bottom:20px;
}
.wc-block-order-confirmation-totals h2,
.wc-block-order-confirmation-summary h2{
  font-family:var(--display) !important;
  font-size:clamp(18px,2vw,24px) !important;
  font-weight:380 !important;color:var(--ink) !important;
  margin:0 0 18px !important;
  padding-bottom:16px !important;border-bottom:1px solid var(--sand) !important;
}

/* Classic order received / pay receipt (shortcode checkout) */
.checkout-body .woocommerce{
  width:100%;
  max-width:100%;
}
.checkout-body .woocommerce:has(ul.order_details),
.checkout-body .woocommerce:has(.woocommerce-order-details){
  max-width:1080px;
  margin:0 auto;
  display:flex;
  flex-direction:column;
  gap:clamp(14px,2vw,20px);
}
.checkout-body .woocommerce-order{
  display:flex;
  flex-direction:column;
  gap:16px;
  padding:0;
  margin:0;
}

/* Ordered products on pay / thank-you */
.checkout-body .woocommerce-order-details{
  background:var(--linen) !important;
  border:1px solid var(--sand) !important;
  border-radius:clamp(16px,3vw,20px) !important;
  padding:clamp(20px,3vw,32px) !important;
  margin:0 !important;
}
.checkout-body .woocommerce-order-details__title{
  font-family:var(--display) !important;
  font-size:clamp(20px,2.4vw,26px) !important;
  font-weight:380 !important;
  color:var(--ink) !important;
  margin:0 0 18px !important;
  padding:0 0 14px !important;
  border-bottom:1px solid var(--sand) !important;
}
.checkout-body .woocommerce-table--order-details,
.checkout-body table.shop_table.order_details{
  width:100% !important;
  border:none !important;
  border-collapse:collapse !important;
  margin:0 !important;
  background:transparent !important;
}
.checkout-body .woocommerce-table--order-details thead th,
.checkout-body table.shop_table.order_details thead th{
  font-family:var(--body) !important;
  font-size:10px !important;
  font-weight:600 !important;
  letter-spacing:.22em !important;
  text-transform:uppercase !important;
  color:var(--taupe) !important;
  padding:0 0 12px !important;
  border:none !important;
  border-bottom:1px solid var(--sand) !important;
  background:none !important;
}
.checkout-body .woocommerce-table--order-details thead th.product-total,
.checkout-body table.shop_table.order_details thead th.product-total{
  text-align:right !important;
}
.checkout-body .woocommerce-table--order-details tbody tr,
.checkout-body table.shop_table.order_details tbody tr{
  border:none !important;
}
.checkout-body .woocommerce-table--order-details tbody td,
.checkout-body table.shop_table.order_details tbody td{
  padding:16px 0 !important;
  border:none !important;
  border-bottom:1px solid var(--sand) !important;
  vertical-align:middle !important;
  background:none !important;
}
.checkout-body .woocommerce-table--order-details .product-name,
.checkout-body table.shop_table.order_details .product-name{
  font-family:var(--display) !important;
  font-size:clamp(16px,2vw,18px) !important;
  font-weight:380 !important;
  color:var(--ink) !important;
  line-height:1.25 !important;
}
.checkout-body .woocommerce-table--order-details .product-name a,
.checkout-body table.shop_table.order_details .product-name a{
  color:var(--ink) !important;
  text-decoration:none !important;
}
.checkout-body .woocommerce-table--order-details .product-name a:hover,
.checkout-body table.shop_table.order_details .product-name a:hover{
  color:var(--gold-deep) !important;
}
.checkout-body .woocommerce-table--order-details .product-name .product-quantity,
.checkout-body table.shop_table.order_details .product-name .product-quantity{
  font-family:var(--body) !important;
  font-size:13px !important;
  font-weight:500 !important;
  color:var(--taupe) !important;
  letter-spacing:0 !important;
}
.checkout-body .woocommerce-table--order-details .aakaara-order-item{
  display:flex !important;
  align-items:center !important;
  gap:14px !important;
}
.checkout-body .woocommerce-table--order-details .aakaara-order-item__image{
  flex-shrink:0 !important;
  width:64px !important;
  height:64px !important;
  border-radius:12px !important;
  overflow:hidden !important;
  background:var(--cream) !important;
}
.checkout-body .woocommerce-table--order-details .aakaara-order-item__image img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  display:block !important;
}
.checkout-body .woocommerce-table--order-details .aakaara-order-item__meta{
  min-width:0 !important;
  display:flex !important;
  flex-direction:column !important;
  gap:4px !important;
}
.checkout-body .woocommerce-table--order-details .product-total,
.checkout-body table.shop_table.order_details .product-total{
  text-align:right !important;
  font-family:var(--display) !important;
  font-size:clamp(16px,2vw,20px) !important;
  font-weight:420 !important;
  color:var(--ink) !important;
  white-space:nowrap !important;
}
.checkout-body .woocommerce-table--order-details tfoot th,
.checkout-body .woocommerce-table--order-details tfoot td,
.checkout-body table.shop_table.order_details tfoot th,
.checkout-body table.shop_table.order_details tfoot td{
  padding:11px 0 !important;
  border:none !important;
  border-top:1px solid var(--sand) !important;
  background:none !important;
  font-family:var(--body) !important;
  font-size:10px !important;
  font-weight:600 !important;
  letter-spacing:.18em !important;
  text-transform:uppercase !important;
  color:var(--taupe) !important;
}
.checkout-body .woocommerce-table--order-details tfoot td,
.checkout-body table.shop_table.order_details tfoot td{
  text-align:right !important;
  font-size:14px !important;
  font-weight:400 !important;
  letter-spacing:0 !important;
  text-transform:none !important;
  color:var(--ink) !important;
}
.checkout-body .woocommerce-table--order-details tfoot tr:first-child th,
.checkout-body .woocommerce-table--order-details tfoot tr:first-child td,
.checkout-body table.shop_table.order_details tfoot tr:first-child th,
.checkout-body table.shop_table.order_details tfoot tr:first-child td{
  border-top:none !important;
  padding-top:16px !important;
}
.checkout-body .woocommerce-table--order-details tfoot tr:last-child th,
.checkout-body .woocommerce-table--order-details tfoot tr:last-child td,
.checkout-body table.shop_table.order_details tfoot tr:last-child th,
.checkout-body table.shop_table.order_details tfoot tr:last-child td{
  color:var(--gold-deep) !important;
  font-family:var(--display) !important;
  font-size:clamp(18px,2.2vw,22px) !important;
  font-weight:420 !important;
  letter-spacing:0 !important;
  text-transform:none !important;
  padding-top:14px !important;
}
.checkout-body .woocommerce-customer-details{
  display:none !important;
}
.checkout-body .woocommerce-thankyou-order-received,
.checkout-body .woocommerce-notice--success{
  background:var(--linen) !important;
  border:1px solid color-mix(in srgb, var(--gold) 35%, var(--sand)) !important;
  border-radius:clamp(16px,3vw,20px) !important;
  padding:clamp(20px,4vw,32px) !important;
  font-family:var(--body) !important;
  font-size:15px !important;
  font-weight:300 !important;
  line-height:1.65 !important;
  color:var(--ink-soft) !important;
  margin:0 !important;
}
.checkout-body .woocommerce-order-overview,
.checkout-body ul.order_details{
  list-style:none !important;
  margin:0 0 clamp(16px,2vw,22px) !important;
  padding:clamp(22px,3vw,32px) !important;
  background:var(--linen) !important;
  border:1px solid var(--sand) !important;
  border-radius:clamp(16px,3vw,20px) !important;
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:0 !important;
  overflow:hidden !important;
}
.checkout-body .woocommerce-order-overview::before,
.checkout-body .woocommerce-order-overview::after,
.checkout-body ul.order_details::before,
.checkout-body ul.order_details::after{
  display:none !important;
  content:none !important;
}
.checkout-body .woocommerce-order-overview li,
.checkout-body ul.order_details li{
  display:flex !important;
  flex-direction:column !important;
  gap:6px !important;
  float:none !important;
  width:auto !important;
  min-width:0 !important;
  padding:4px clamp(16px,2.4vw,28px) !important;
  margin:0 !important;
  border:0 !important;
  border-right:1px solid var(--sand) !important;
  font-family:var(--body) !important;
  font-size:10px !important;
  font-weight:600 !important;
  letter-spacing:.22em !important;
  text-transform:uppercase !important;
  color:var(--taupe) !important;
  line-height:1.35 !important;
}
.checkout-body .woocommerce-order-overview li:first-child,
.checkout-body ul.order_details li:first-child{
  padding-left:0 !important;
}
.checkout-body .woocommerce-order-overview li:last-child,
.checkout-body ul.order_details li:last-child{
  padding-right:0 !important;
  border-right:0 !important;
}
.checkout-body .woocommerce-order-overview li strong,
.checkout-body ul.order_details li strong{
  font-family:var(--display) !important;
  font-size:clamp(16px,3.8vw,20px) !important;
  font-weight:380 !important;
  letter-spacing:0 !important;
  text-transform:none !important;
  color:var(--ink) !important;
  line-height:1.2 !important;
  word-break:break-word !important;
}
.checkout-body .woocommerce-order-overview li.total strong,
.checkout-body ul.order_details li.total strong{
  color:var(--gold-deep) !important;
  font-size:clamp(18px,4.5vw,24px) !important;
  font-weight:420 !important;
}
.checkout-body .woocommerce-notice--error,
.checkout-body .woocommerce-error,
.checkout-body .aakaara-payment-error{
  background:#fdf8f6 !important;
  border:1.5px solid #e8b4b4 !important;
  border-radius:clamp(14px,3vw,18px) !important;
  padding:clamp(16px,4vw,22px) !important;
  font-family:var(--body) !important;
  font-size:14px !important;
  font-weight:400 !important;
  line-height:1.6 !important;
  color:#8b4545 !important;
  margin:0 !important;
  overflow-wrap:anywhere !important;
}
.checkout-body .woocommerce-notice--error::before,
.checkout-body .woocommerce-error::before,
.checkout-body .aakaara-payment-error::before{
  display:none !important;
  content:none !important;
}
.checkout-body .woocommerce-thankyou-order-failed-actions{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:12px !important;
  margin:0 !important;
}
.checkout-body .woocommerce-thankyou-order-failed-actions .button,
.checkout-body .aakaara-payment-form .button,
.checkout-body #place_order{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  font-family:var(--body) !important;
  font-size:11px !important;
  font-weight:600 !important;
  letter-spacing:.18em !important;
  text-transform:uppercase !important;
  color:var(--linen) !important;
  background:var(--gold) !important;
  border:none !important;
  border-radius:40px !important;
  padding:14px 24px !important;
  text-decoration:none !important;
  cursor:pointer !important;
  transition:background .3s !important;
  line-height:1.2 !important;
}
.checkout-body .woocommerce-thankyou-order-failed-actions .button:hover,
.checkout-body .aakaara-payment-form .button:hover,
.checkout-body #place_order:hover{
  background:var(--gold-deep) !important;
  color:var(--linen) !important;
}
.checkout-body .aakaara-payment-form{
  background:var(--linen) !important;
  border:1px solid var(--sand) !important;
  border-radius:clamp(16px,3vw,20px) !important;
  padding:clamp(18px,4vw,28px) !important;
  font-family:var(--body) !important;
  font-size:14px !important;
  font-weight:300 !important;
  line-height:1.6 !important;
  color:var(--ink-soft) !important;
}
.checkout-body .aakaara-payment-form p{
  margin:0 0 16px !important;
  color:var(--ink-soft) !important;
}
.checkout-body #order_review.shop_table,
.checkout-body form#order_review .shop_table{
  width:100% !important;
  border-collapse:collapse !important;
  background:var(--linen) !important;
  border:1px solid var(--sand) !important;
  border-radius:clamp(16px,3vw,20px) !important;
  overflow:hidden !important;
  margin:0 0 16px !important;
}

/* Checkout responsive */
@media(max-width:900px){
  .wc-block-checkout .wc-block-components-sidebar-layout{flex-direction:column !important;}
  .wc-block-checkout__sidebar{
    flex:none !important;width:100% !important;position:static !important;
    padding:clamp(20px,4vw,32px) !important;
  }
  .wc-block-checkout__sidebar .wc-block-components-sidebar-layout__sidebar{margin-top:0 !important;}
  .checkout-body{padding:clamp(36px,6vw,64px) 0;}
  .checkout-body .woocommerce-order-overview,
  .checkout-body ul.order_details{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
  .checkout-body .woocommerce-order-overview li,
  .checkout-body ul.order_details li{
    padding:14px clamp(16px,3vw,24px) !important;
    border-right:1px solid var(--sand) !important;
    border-bottom:1px solid var(--sand) !important;
  }
  .checkout-body .woocommerce-order-overview li:nth-child(odd),
  .checkout-body ul.order_details li:nth-child(odd){
    padding-left:0 !important;
  }
  .checkout-body .woocommerce-order-overview li:nth-child(even),
  .checkout-body ul.order_details li:nth-child(even){
    padding-right:0 !important;
    border-right:0 !important;
  }
  .checkout-body .woocommerce-order-overview li:nth-last-child(-n+2),
  .checkout-body ul.order_details li:nth-last-child(-n+2){
    border-bottom:0 !important;
  }
}
@media(max-width:768px){
  .wc-block-components-address-form{grid-template-columns:1fr !important;}
  /* Mobile: WC duplicates summary in sidebar + actions — keep inline card only */
  .wc-block-checkout.is-mobile .wc-block-checkout__sidebar{display:none !important;}
  .wc-block-checkout__actions{margin-bottom:20px !important;}
  .wc-block-checkout .checkout-order-summary-block-fill-wrapper{margin-bottom:14px !important;}
  .wc-block-checkout .checkout-order-summary-block-fill{
    padding:18px 16px !important;
    border-radius:16px !important;
  }
  :is(.wc-block-checkout__sidebar,.wc-block-checkout .checkout-order-summary-block-fill) .wc-block-order-summary-item,
  :is(.wc-block-checkout__sidebar,.wc-block-checkout .checkout-order-summary-block-fill) .wc-block-components-order-summary-item{
    gap:14px !important;
    padding:16px 0 !important;
    align-items:flex-start !important;
  }
  :is(.wc-block-checkout__sidebar,.wc-block-checkout .checkout-order-summary-block-fill) .wc-block-order-summary-item__image,
  :is(.wc-block-checkout__sidebar,.wc-block-checkout .checkout-order-summary-block-fill) .wc-block-components-order-summary-item__image{
    width:64px !important;
  }
  :is(.wc-block-checkout__sidebar,.wc-block-checkout .checkout-order-summary-block-fill) .wc-block-order-summary-item__image img,
  :is(.wc-block-checkout__sidebar,.wc-block-checkout .checkout-order-summary-block-fill) .wc-block-components-order-summary-item__image img{
    width:64px !important;
    height:64px !important;
  }
  :is(.wc-block-checkout__sidebar,.wc-block-checkout .checkout-order-summary-block-fill) .wc-block-order-summary-item__name,
  :is(.wc-block-checkout__sidebar,.wc-block-checkout .checkout-order-summary-block-fill) .wc-block-components-order-summary-item__name,
  :is(.wc-block-checkout__sidebar,.wc-block-checkout .checkout-order-summary-block-fill) .wc-block-components-product-name{
    font-size:16px !important;
  }
  :is(.wc-block-checkout__sidebar,.wc-block-checkout .checkout-order-summary-block-fill) .wc-block-order-summary-item__total-price,
  :is(.wc-block-checkout__sidebar,.wc-block-checkout .checkout-order-summary-block-fill) .wc-block-components-order-summary-item__total-price{
    font-size:17px !important;
    align-self:flex-start !important;
    padding-top:2px !important;
  }
  .wc-block-components-totals-item{padding:10px 0 !important;}
  .wc-block-components-totals-footer-item{padding:12px 0 4px !important;}
  .wc-block-components-totals-footer-item .wc-block-formatted-money-amount{
    font-size:clamp(18px,5vw,22px) !important;
  }
}
@media(max-width:620px){
  .wc-block-components-checkout-step{padding:18px !important;}
  .wc-block-components-checkout-step__heading-container{gap:10px !important;}
  .wc-block-components-checkout-step__index{
    min-width:28px !important;width:28px !important;height:28px !important;
    font-size:10px !important;
  }
  .wc-block-components-checkout-step__title{font-size:18px !important;}
  .checkout-body .wrap{padding-inline:clamp(16px,4vw,28px);}
  .wc-block-checkout .checkout-order-summary-block-fill{padding:16px 14px !important;}
  :is(.wc-block-checkout__sidebar,.wc-block-checkout .checkout-order-summary-block-fill) .wc-block-order-summary-item,
  :is(.wc-block-checkout__sidebar,.wc-block-checkout .checkout-order-summary-block-fill) .wc-block-components-order-summary-item{
    flex-wrap:wrap !important;
    gap:12px !important;
    padding:14px 0 !important;
  }
  :is(.wc-block-checkout__sidebar,.wc-block-checkout .checkout-order-summary-block-fill) .wc-block-order-summary-item__description,
  :is(.wc-block-checkout__sidebar,.wc-block-checkout .checkout-order-summary-block-fill) .wc-block-components-order-summary-item__description{
    flex:1 1 calc(100% - 76px) !important;
    min-width:0 !important;
  }
  :is(.wc-block-checkout__sidebar,.wc-block-checkout .checkout-order-summary-block-fill) .wc-block-order-summary-item__total-price,
  :is(.wc-block-checkout__sidebar,.wc-block-checkout .checkout-order-summary-block-fill) .wc-block-components-order-summary-item__total-price{
    flex:1 1 100% !important;
    margin-left:0 !important;
    text-align:left !important;
    padding-top:4px !important;
    border-top:1px solid color-mix(in srgb, var(--sand) 65%, transparent) !important;
    margin-top:2px !important;
  }
  .wc-block-components-checkout-place-order-button{padding:16px 20px !important;}
  .checkout-body .woocommerce-order-overview,
  .checkout-body ul.order_details{
    grid-template-columns:1fr !important;
    gap:0 !important;
    padding:8px 16px !important;
    margin-bottom:14px !important;
  }
  .checkout-body .woocommerce-order-overview li,
  .checkout-body ul.order_details li{
    padding:13px 0 !important;
    border-right:0 !important;
    border-bottom:1px solid var(--sand) !important;
  }
  .checkout-body .woocommerce-order-overview li:nth-child(n),
  .checkout-body ul.order_details li:nth-child(n){
    padding-left:0 !important;
    padding-right:0 !important;
  }
  .checkout-body .woocommerce-order-overview li:last-child,
  .checkout-body ul.order_details li:last-child{
    border-bottom:none !important;
  }
  .checkout-body .woocommerce-thankyou-order-received,
  .checkout-body .woocommerce-notice--error,
  .checkout-body .aakaara-payment-error,
  .checkout-body .aakaara-payment-form{
    padding:16px 14px !important;
    border-radius:16px !important;
  }
  .checkout-body .woocommerce-thankyou-order-failed-actions .button,
  .checkout-body .aakaara-payment-form .button,
  .checkout-body #place_order{
    width:100% !important;
  }
  .checkout-body .woocommerce-order-details{
    padding:16px 14px !important;
  }
  .checkout-body .woocommerce-table--order-details thead{
    display:none !important;
  }
  .checkout-body .woocommerce-table--order-details tbody td,
  .checkout-body table.shop_table.order_details tbody td{
    display:block !important;
    width:100% !important;
    text-align:left !important;
    padding:12px 0 !important;
  }
  .checkout-body .woocommerce-table--order-details .product-total,
  .checkout-body table.shop_table.order_details .product-total{
    text-align:left !important;
    padding-top:0 !important;
    border-bottom:1px solid var(--sand) !important;
  }
  .checkout-body .woocommerce-table--order-details .product-name,
  .checkout-body table.shop_table.order_details .product-name{
    border-bottom:none !important;
    padding-bottom:6px !important;
  }
  .checkout-body .woocommerce-table--order-details .aakaara-order-item__image{
    width:56px !important;
    height:56px !important;
  }
  .checkout-body .woocommerce-table--order-details tfoot th,
  .checkout-body .woocommerce-table--order-details tfoot td,
  .checkout-body table.shop_table.order_details tfoot th,
  .checkout-body table.shop_table.order_details tfoot td{
    display:block !important;
    width:100% !important;
    text-align:left !important;
  }
  .checkout-body .woocommerce-table--order-details tfoot td,
  .checkout-body table.shop_table.order_details tfoot td{
    text-align:left !important;
    padding-top:4px !important;
    border-top:none !important;
  }
}

/* Login / guest account */

.account-main{
  background:var(--cream);
}
.account-body__inner{
  max-width:480px;
  margin:0 auto;
}
.account-body__inner:has(.account-login-grid){
  max-width:960px;
}
.account-main__inner{
  padding-block:clamp(32px,4vw,56px);
}

/* Guest account: no dashboard grid */
.woocommerce-account:not(.logged-in) .woocommerce{
  display:block !important;
  max-width:none !important;
  width:100% !important;
}
.woocommerce-account:not(.logged-in) .woocommerce-notices-wrapper{
  max-width:480px;
  margin:0 auto 20px;
  border:none !important;
  padding:0 !important;
  background:transparent !important;
}
.woocommerce-account:not(.logged-in) .woocommerce-error,
.woocommerce-account:not(.logged-in) .woocommerce-message,
.woocommerce-account:not(.logged-in) .woocommerce-info{
  background:var(--linen) !important;
  border:1.5px solid var(--sand) !important;
  border-top:1.5px solid var(--sand) !important;
  border-radius:12px !important;
  padding:14px 18px !important;
  font-size:14px !important;
  color:var(--ink-soft) !important;
  margin:0 0 20px !important;
  list-style:none !important;
  width:100% !important;
  outline:none !important;
  box-shadow:none !important;
}
.woocommerce-account:not(.logged-in) .woocommerce-error{
  border-color:#e8b4b4 !important;
  border-top-color:#e8b4b4 !important;
  background:#fdf8f6 !important;
  color:#8b4545 !important;
}
.woocommerce-account:not(.logged-in) .woocommerce-message{
  border-color:color-mix(in srgb, var(--gold) 35%, var(--sand)) !important;
  border-top-color:color-mix(in srgb, var(--gold) 35%, var(--sand)) !important;
}
.woocommerce-account:not(.logged-in) .woocommerce-info{
  border-color:var(--sand) !important;
  border-top-color:var(--sand) !important;
}
.woocommerce-account:not(.logged-in) .woocommerce-error li,
.woocommerce-account:not(.logged-in) .woocommerce-message li,
.woocommerce-account:not(.logged-in) .woocommerce-info li{
  list-style:none !important;
  margin:0 !important;
  padding:0 !important;
  border:none !important;
}
.woocommerce-account:not(.logged-in) .woocommerce-error::before,
.woocommerce-account:not(.logged-in) .woocommerce-message::before,
.woocommerce-account:not(.logged-in) .woocommerce-info::before,
.woocommerce-account:not(.logged-in) .woocommerce-error::after,
.woocommerce-account:not(.logged-in) .woocommerce-message::after,
.woocommerce-account:not(.logged-in) .woocommerce-info::after{
  display:none !important;
  content:none !important;
}

.account-login-shell{width:100%;}
.account-login-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:clamp(20px,3vw,32px);
}

.account-login-card{
  background:var(--linen);
  border:1px solid var(--sand);
  border-radius:20px;
  padding:clamp(24px,3vw,36px);
  box-shadow:none;
}
.account-login-card__head{
  margin-bottom:24px;
  padding-bottom:18px;
  border-bottom:1px solid var(--sand);
}
.account-login-card__title{
  font-family:var(--display);
  font-size:clamp(22px,2.4vw,30px);
  font-weight:380;
  color:var(--ink);
  margin:0 0 8px;
  letter-spacing:-.01em;
}
.account-login-card__lede,
.account-login-card__note{
  font-size:14.5px;
  font-weight:300;
  color:var(--ink-soft);
  line-height:1.6;
  margin:0;
}
.account-login-card__note{margin-bottom:18px;}

.account-login-card .form-row,
.account-login-card p.form-row{
  margin:0 0 18px !important;
  padding:0 !important;
  width:100% !important;
  float:none !important;
  clear:both !important;
}
.account-login-card label{
  font-family:var(--body) !important;
  font-size:10.5px !important;
  font-weight:600 !important;
  letter-spacing:.2em !important;
  text-transform:uppercase !important;
  color:var(--taupe) !important;
  display:block !important;
  margin-bottom:8px !important;
  line-height:1.4 !important;
}
.account-login-card .required{color:var(--gold-deep);}
.account-login-card input.input-text,
.account-login-card input[type="email"],
.account-login-card input[type="password"],
.account-login-card input[type="text"]{
  width:100% !important;
  font-family:var(--body) !important;
  font-size:15px !important;
  font-weight:300 !important;
  color:var(--ink) !important;
  background:var(--cream) !important;
  border:1.5px solid var(--sand) !important;
  border-radius:12px !important;
  padding:14px 18px !important;
  outline:none !important;
  box-shadow:none !important;
  transition:border-color .3s !important;
  margin:0 !important;
}
.account-login-card input.input-text:focus,
.account-login-card input[type="email"]:focus,
.account-login-card input[type="password"]:focus,
.account-login-card input[type="text"]:focus{
  border-color:var(--gold) !important;
}

.account-login-card__actions{
  display:flex;
  flex-direction:column;
  gap:16px;
  margin-top:8px;
}
.account-login-card .woocommerce-form-login__rememberme{
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  font-size:14px !important;
  font-weight:300 !important;
  color:var(--ink-soft) !important;
  text-transform:none !important;
  letter-spacing:0 !important;
  margin:0 !important;
  cursor:pointer;
}
.account-login-card .woocommerce-form-login__rememberme input[type="checkbox"]{
  width:16px !important;
  height:16px !important;
  min-width:16px !important;
  accent-color:var(--gold);
  margin:0 !important;
  padding:0 !important;
  border-radius:4px !important;
  background:var(--cream) !important;
}

.account-login-card .button,
.account-login-card .woocommerce-form-login__submit,
.account-login-card .woocommerce-form-register__submit{
  display:block !important;
  width:100% !important;
  font-family:var(--body) !important;
  font-size:12px !important;
  font-weight:600 !important;
  letter-spacing:.2em !important;
  text-transform:uppercase !important;
  color:var(--linen) !important;
  background:var(--gold) !important;
  border:none !important;
  border-radius:40px !important;
  padding:16px 28px !important;
  cursor:pointer !important;
  transition:background .4s !important;
  text-align:center !important;
  float:none !important;
  margin:0 !important;
}
.account-login-card .button:hover,
.account-login-card .woocommerce-form-login__submit:hover,
.account-login-card .woocommerce-form-register__submit:hover{
  background:var(--gold-deep) !important;
  color:var(--linen) !important;
}

.account-login-card__submit-row{margin-top:8px !important;}
.account-login-card .lost_password{
  margin:18px 0 0 !important;
  text-align:center;
}
.account-login-card .lost_password a{
  font-size:12px;
  font-weight:600;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--taupe);
  text-decoration:none;
  transition:color .25s;
}
.account-login-card .lost_password a:hover{color:var(--gold-deep);}

@media (max-width:767px){
  .account-login-grid{grid-template-columns:1fr;}
  .account-body__inner,
  .woocommerce-account:not(.logged-in) .woocommerce-notices-wrapper{max-width:100%;}
}

/* MY ACCOUNT revamp */

/* Widen the page for logged-in account pages */
.woocommerce-account.logged-in .wrap.account-main__inner,
.woocommerce-account.logged-in .container,
.woocommerce-account.logged-in .container--narrow {
  max-width: 1160px !important;
  padding-inline: clamp(20px,4vw,56px) !important;
}

/* Grid layout: one unified panel (nav + content) */
.woocommerce-account.logged-in .woocommerce {
  display: grid !important;
  grid-template-columns: minmax(200px, 220px) minmax(0, 1fr) !important;
  grid-template-rows: auto 1fr !important;
  gap: 0 !important;
  align-items: stretch !important;
  background: var(--linen) !important;
  border: 1px solid var(--sand) !important;
  border-radius: 20px !important;
  overflow: hidden !important;
  padding: clamp(18px, 2.4vw, 28px) !important;
}

/* Notices bar spans full width */
.woocommerce-account.logged-in .woocommerce > .woocommerce-notices-wrapper {
  grid-column: 1 / -1 !important;
  grid-row: 1 !important;
  margin-bottom: 16px !important;
}
.woocommerce-account.logged-in .woocommerce > .woocommerce-notices-wrapper .woocommerce-message,
.woocommerce-account.logged-in .woocommerce > .woocommerce-notices-wrapper .woocommerce-info,
.woocommerce-account.logged-in .woocommerce > .woocommerce-notices-wrapper .woocommerce-error {
  background: var(--cream) !important;
  border: 1.5px solid var(--sand) !important;
  border-radius: 12px !important;
  padding: 14px 18px !important;
  margin: 0 0 12px !important;
  list-style: none !important;
}
.woocommerce-account.logged-in .woocommerce > .woocommerce-notices-wrapper .woocommerce-error {
  border-color: #e8b4b4 !important;
  color: #8b4545 !important;
}
.woocommerce-account.logged-in .woocommerce > .woocommerce-notices-wrapper .woocommerce-message::before,
.woocommerce-account.logged-in .woocommerce > .woocommerce-notices-wrapper .woocommerce-info::before,
.woocommerce-account.logged-in .woocommerce > .woocommerce-notices-wrapper .woocommerce-error::before {
  display: none !important;
}

/* Nav in column 1, row 2 */
.woocommerce-account.logged-in nav.woocommerce-MyAccount-navigation {
  grid-column: 1 !important;
  grid-row: 2 !important;
  float: none !important;
  width: auto !important;
  border-right: 1px solid var(--sand) !important;
  padding-right: clamp(16px, 2vw, 24px) !important;
}

/* Content in column 2, row 2 */
.woocommerce-account.logged-in .woocommerce-MyAccount-content {
  grid-column: 2 !important;
  grid-row: 2 !important;
  float: none !important;
  width: auto !important;
}

.woocommerce-account.logged-in .account-main__inner article {
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* Sidebar tabs (inside unified panel) */
.woocommerce-MyAccount-navigation ul {
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  padding: 0 !important;
  display: flex;
  flex-direction: column;
  gap: 4px;
  list-style: none !important;
  margin: 0 !important;
}
.woocommerce-MyAccount-navigation ul li {
  border-radius: 11px;
  overflow: hidden;
  margin: 0 !important;
}
.woocommerce-MyAccount-navigation ul li a {
  display: block !important;
  font-family: var(--body) !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
  color: var(--ink-soft) !important;
  padding: 11px 14px !important;
  border-radius: 11px !important;
  text-decoration: none !important;
  transition: background .18s var(--ease), color .18s var(--ease);
  line-height: 1.35 !important;
  white-space: nowrap;
}
.woocommerce-MyAccount-navigation ul li a:hover {
  background: var(--cream) !important;
  color: var(--ink) !important;
}
.woocommerce-MyAccount-navigation ul li.is-active a,
.woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--active a {
  background: var(--gold) !important;
  color: var(--linen) !important;
}

/* Content area (no second outer box) */
.woocommerce-MyAccount-content {
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  padding: 0 0 0 clamp(20px, 2.8vw, 36px) !important;
  min-width: 0;
}
.woocommerce-MyAccount-content > p:first-child {
  font-size: 15px !important;
  color: var(--ink-soft) !important;
  font-weight: 300 !important;
  line-height: 1.75 !important;
  margin-bottom: 14px !important;
}
.woocommerce-MyAccount-content > p a {
  color: var(--gold-deep) !important;
  text-decoration: underline !important;
  text-underline-offset: 3px !important;
}
.woocommerce-MyAccount-content > p a:hover {
  color: var(--ink) !important;
}

/* Address cards inside tabs */
.woocommerce-account.logged-in .woocommerce-MyAccount-content > p:only-of-type,
.woocommerce-account.logged-in .woocommerce-MyAccount-content > p:first-of-type {
  margin: 0 0 20px !important;
}

.woocommerce-account.logged-in .woocommerce-MyAccount-content .woocommerce-Addresses,
.woocommerce-account.logged-in .woocommerce-MyAccount-content .woocommerce-Addresses.col2-set,
.woocommerce-account.logged-in .woocommerce-MyAccount-content .addresses.col2-set,
.woocommerce-account.logged-in .woocommerce-MyAccount-content .u-columns.woocommerce-Addresses {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  align-items: stretch !important;
  gap: 18px !important;
  width: 100% !important;
  float: none !important;
  clear: both !important;
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

/* Disable WC col2-set clearfix pseudo-elements (breaks grid) */
.woocommerce-account.logged-in .woocommerce-MyAccount-content .woocommerce-Addresses::before,
.woocommerce-account.logged-in .woocommerce-MyAccount-content .woocommerce-Addresses::after,
.woocommerce-account.logged-in .woocommerce-MyAccount-content .col2-set.addresses::before,
.woocommerce-account.logged-in .woocommerce-MyAccount-content .col2-set.addresses::after {
  display: none !important;
  content: none !important;
}

/* Kill WC float layout must beat .woocommerce .col2-set .col-1/.col-2 */
.woocommerce-account.logged-in .woocommerce .woocommerce-MyAccount-content .col2-set .col-1,
.woocommerce-account.logged-in .woocommerce .woocommerce-MyAccount-content .col2-set .col-2,
.woocommerce-account.logged-in .woocommerce .woocommerce-MyAccount-content .woocommerce-Addresses .woocommerce-Address,
.woocommerce-account.logged-in .woocommerce-MyAccount-content .woocommerce-Address,
.woocommerce-account.logged-in .woocommerce-MyAccount-content .u-column1,
.woocommerce-account.logged-in .woocommerce-MyAccount-content .u-column2,
.woocommerce-account.logged-in .woocommerce-MyAccount-content .col-1,
.woocommerce-account.logged-in .woocommerce-MyAccount-content .col-2 {
  float: none !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  clear: none !important;
  position: static !important;
  box-sizing: border-box !important;
}

.woocommerce-account.logged-in .woocommerce-MyAccount-content .woocommerce-Address {
  background: var(--cream) !important;
  border: 1px solid var(--sand) !important;
  border-radius: 14px !important;
  padding: 20px 22px !important;
  min-height: 100%;
  display: flex !important;
  flex-direction: column !important;
}
.woocommerce-account.logged-in .woocommerce-MyAccount-content .woocommerce-Address-title {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 12px !important;
  margin: 0 0 14px !important;
  padding-bottom: 14px !important;
  border-bottom: 1px solid var(--sand) !important;
}
.woocommerce-account.logged-in .woocommerce-MyAccount-content .woocommerce-Address-title::before,
.woocommerce-account.logged-in .woocommerce-MyAccount-content .woocommerce-Address-title::after {
  display: none !important;
  content: none !important;
}
.woocommerce-account.logged-in .woocommerce-MyAccount-content .woocommerce-Address-title h2,
.woocommerce-account.logged-in .woocommerce-MyAccount-content .woocommerce-Address-title h3 {
  float: none !important;
  margin: 0 !important;
  font-family: var(--display) !important;
  font-size: clamp(17px, 1.8vw, 20px) !important;
  font-weight: 380 !important;
  color: var(--ink) !important;
  border: none !important;
  padding: 0 !important;
  line-height: 1.25 !important;
  flex: 1 1 auto !important;
  min-width: 0 !important;
}
.woocommerce-account.logged-in .woocommerce-MyAccount-content .woocommerce-Address-title .edit {
  float: none !important;
  flex: 0 0 auto !important;
  font-size: 10px !important;
  font-weight: 600 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
  color: var(--gold-deep) !important;
  text-decoration: none !important;
  white-space: nowrap;
  margin-top: 2px !important;
}
.woocommerce-account.logged-in .woocommerce-MyAccount-content .woocommerce-Address-title .edit:hover {
  color: var(--ink) !important;
}
.woocommerce-account.logged-in .woocommerce-MyAccount-content .woocommerce-Address address {
  font-style: normal !important;
  font-size: 14px !important;
  font-weight: 300 !important;
  line-height: 1.75 !important;
  color: var(--ink-soft) !important;
  margin: 0 !important;
  flex: 1 1 auto !important;
}

/* Downloads table reuse orders styling */
.woocommerce-MyAccount-content .woocommerce-table--order-downloads {
  width: 100% !important;
  border-collapse: collapse !important;
  border: none !important;
  margin-top: 8px !important;
}

/* Section headings */
.woocommerce-MyAccount-content h2 {
  font-family: var(--display) !important;
  font-size: clamp(18px, 2.2vw, 26px) !important;
  font-weight: 380 !important;
  color: var(--ink) !important;
  border-bottom: 1px solid var(--sand) !important;
  padding-bottom: 14px !important;
  margin: 0 0 22px !important;
}

/* Orders table */
.woocommerce-orders-table,
.woocommerce-orders-table.shop_table,
.woocommerce-table--order-downloads {
  width: 100% !important;
  border-collapse: collapse !important;
  border: none !important;
  margin: 0 !important;
}

/* Header row */
.woocommerce-orders-table thead tr,
.woocommerce-table--order-downloads thead tr {
  background: var(--cream) !important;
}
.woocommerce-orders-table thead th,
.woocommerce-table--order-downloads thead th {
  font-family: var(--body) !important;
  font-size: 10.5px !important;
  font-weight: 600 !important;
  letter-spacing: .28em !important;
  text-transform: uppercase !important;
  color: var(--gold) !important;
  padding: 13px 16px !important;
  border: none !important;
  white-space: nowrap;
}
.woocommerce-orders-table thead th:first-child { border-radius: 10px 0 0 10px !important; }
.woocommerce-orders-table thead th:last-child  { border-radius: 0 10px 10px 0 !important; }

/* Body rows */
.woocommerce-orders-table tbody tr {
  border-bottom: 1px solid var(--sand) !important;
  transition: background .16s var(--ease);
}
.woocommerce-orders-table tbody tr:last-child { border-bottom: none !important; }
.woocommerce-orders-table tbody tr:hover { background: var(--cream) !important; }

.woocommerce-orders-table tbody td {
  padding: 16px 16px !important;
  font-size: 14px !important;
  font-weight: 300 !important;
  color: var(--ink-soft) !important;
  border: none !important;
  vertical-align: middle !important;
}

/* Order # */
.woocommerce-orders-table__cell-order-number a {
  font-weight: 600 !important;
  color: var(--ink) !important;
  font-size: 14px !important;
}
.woocommerce-orders-table__cell-order-number a:hover {
  color: var(--gold) !important;
}

/* Total */
.woocommerce-orders-table__cell-order-total {
  font-weight: 500 !important;
  color: var(--ink) !important;
}

/* Status pill */
.woocommerce-orders-table mark,
.woocommerce-orders-table .order-status,
.woocommerce-orders-table mark.order-status {
  display: inline-block !important;
  padding: 4px 12px !important;
  border-radius: 20px !important;
  font-size: 10.5px !important;
  font-weight: 600 !important;
  letter-spacing: .1em !important;
  text-transform: uppercase !important;
  background: var(--sand) !important;
  color: var(--taupe) !important;
  box-shadow: none !important;
}
/* Pending payment */
.woocommerce-orders-table mark.pending-payment { background: #FEF3C7 !important; color: #92400E !important; }
/* Processing */
.woocommerce-orders-table mark.processing,
.woocommerce-orders-table .status-processing   { background: #D1FAE5 !important; color: #065F46 !important; }
/* Completed */
.woocommerce-orders-table mark.completed,
.woocommerce-orders-table .status-completed    { background: #E0F2FE !important; color: #0369A1 !important; }
/* Cancelled */
.woocommerce-orders-table mark.cancelled,
.woocommerce-orders-table .status-cancelled    { background: #FEE2E2 !important; color: #991B1B !important; }
/* On hold */
.woocommerce-orders-table mark.on-hold,
.woocommerce-orders-table .status-on-hold      { background: #FDE68A !important; color: #78350F !important; }

/* Action buttons */
.woocommerce-orders-table__cell-order-actions { white-space: nowrap; }
.woocommerce-orders-table .woocommerce-button,
.woocommerce-orders-table .button {
  display: inline-block !important;
  padding: 7px 16px !important;
  border-radius: 22px !important;
  font-family: var(--body) !important;
  font-size: 10.5px !important;
  font-weight: 600 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  margin: 2px 3px 2px 0 !important;
  border: 1.5px solid transparent !important;
  cursor: pointer !important;
  transition: background .18s var(--ease), color .18s var(--ease), transform .18s var(--ease) !important;
  line-height: 1.4 !important;
}
/* View */
.woocommerce-orders-table .woocommerce-button.view,
.woocommerce-orders-table .button.view {
  background: transparent !important;
  border-color: var(--ink) !important;
  color: var(--ink) !important;
}
.woocommerce-orders-table .woocommerce-button.view:hover,
.woocommerce-orders-table .button.view:hover {
  background: var(--ink) !important;
  color: var(--linen) !important;
  transform: translateY(-2px);
}
/* Pay */
.woocommerce-orders-table .woocommerce-button.pay,
.woocommerce-orders-table .button.pay {
  background: var(--gold) !important;
  border-color: var(--gold) !important;
  color: var(--linen) !important;
}
.woocommerce-orders-table .woocommerce-button.pay:hover,
.woocommerce-orders-table .button.pay:hover {
  background: var(--gold-deep) !important;
  border-color: var(--gold-deep) !important;
  transform: translateY(-2px);
}
/* Cancel */
.woocommerce-orders-table .woocommerce-button.cancel,
.woocommerce-orders-table .button.cancel {
  background: transparent !important;
  border-color: #EF4444 !important;
  color: #EF4444 !important;
}
.woocommerce-orders-table .woocommerce-button.cancel:hover,
.woocommerce-orders-table .button.cancel:hover {
  background: #FEE2E2 !important;
  transform: translateY(-2px);
}

/* Notices / empty state */
.woocommerce-MyAccount-content .woocommerce-message,
.woocommerce-MyAccount-content .woocommerce-info,
.woocommerce-MyAccount-content .woocommerce-error {
  background: var(--cream) !important;
  border: 1.5px solid var(--sand) !important;
  border-top: 1.5px solid var(--sand) !important;
  border-radius: 12px !important;
  padding: 14px 18px !important;
  font-size: 14px !important;
  color: var(--ink-soft) !important;
  font-weight: 300 !important;
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  flex-wrap: wrap;
  margin-bottom: 16px !important;
}
.woocommerce-MyAccount-content .woocommerce-error {
  border-color: #e8b4b4 !important;
  border-top-color: #e8b4b4 !important;
  color: #8b4545 !important;
}
.woocommerce-MyAccount-content .woocommerce-message {
  border-color: color-mix(in srgb, var(--gold) 35%, var(--sand)) !important;
  border-top-color: color-mix(in srgb, var(--gold) 35%, var(--sand)) !important;
}
.woocommerce-MyAccount-content .woocommerce-message::before,
.woocommerce-MyAccount-content .woocommerce-info::before,
.woocommerce-MyAccount-content .woocommerce-error::before { display: none !important; }
.woocommerce-MyAccount-content .woocommerce-message .button {
  background: var(--gold) !important;
  color: var(--linen) !important;
  border-radius: 22px !important;
  padding: 8px 20px !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  flex-shrink: 0;
}
.woocommerce-MyAccount-content .woocommerce-message .button:hover {
  background: var(--gold-deep) !important;
}

/* Address / account-details forms */
.woocommerce-address-fields .form-row,
.woocommerce-EditAccountForm .form-row { margin-bottom: 16px !important; }
.woocommerce-address-fields label,
.woocommerce-EditAccountForm label {
  font-size: 10.5px !important; font-weight: 600 !important;
  letter-spacing: .2em !important; text-transform: uppercase !important;
  color: var(--taupe) !important; display: block; margin-bottom: 6px !important;
}
.woocommerce-address-fields input,
.woocommerce-address-fields select,
.woocommerce-EditAccountForm input,
.woocommerce-EditAccountForm select,
.woocommerce-EditAccountForm textarea {
  width: 100% !important; border: 1.5px solid var(--sand) !important;
  border-radius: 10px !important; padding: 10px 14px !important;
  font-size: 14px !important; font-weight: 300 !important;
  font-family: var(--body) !important; color: var(--ink) !important;
  background: var(--linen) !important; transition: border-color .2s !important;
  outline: none !important;
  box-sizing: border-box !important;
}
.woocommerce-address-fields select,
.woocommerce-EditAccountForm select {
  -webkit-appearance: none !important;
  appearance: none !important;
  padding-right: 36px !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%239C8569' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 14px center !important;
  cursor: pointer !important;
}
.woocommerce-address-fields input:focus,
.woocommerce-address-fields select:focus,
.woocommerce-EditAccountForm input:focus,
.woocommerce-EditAccountForm select:focus,
.woocommerce-EditAccountForm textarea:focus { border-color: var(--gold) !important; }

/* Country / State WooCommerce Select2 (replaces native select UI) */
.woocommerce-address-fields .select2-container,
.woocommerce-EditAccountForm .select2-container {
  width: 100% !important;
  display: block !important;
  margin: 0 !important;
}
.woocommerce-address-fields .select2-container .select2-selection--single,
.woocommerce-EditAccountForm .select2-container .select2-selection--single {
  margin: 0 !important;
  height: auto !important;
}
.woocommerce-address-fields .select2-container--default .select2-selection--single,
.woocommerce-EditAccountForm .select2-container--default .select2-selection--single {
  background: var(--linen) !important;
  border: 1.5px solid var(--sand) !important;
  border-radius: 10px !important;
  transition: border-color .2s !important;
}
.woocommerce-address-fields .select2-container--default .select2-selection--single .select2-selection__rendered,
.woocommerce-EditAccountForm .select2-container--default .select2-selection--single .select2-selection__rendered {
  color: var(--ink) !important;
  line-height: 1.4 !important;
  padding: 10px 36px 10px 14px !important;
  font-family: var(--body) !important;
  font-size: 14px !important;
  font-weight: 300 !important;
}
.woocommerce-address-fields .select2-container--default .select2-selection--single .select2-selection__placeholder,
.woocommerce-EditAccountForm .select2-container--default .select2-selection--single .select2-selection__placeholder {
  color: var(--ink-soft) !important;
}
.woocommerce-address-fields .select2-container--default .select2-selection--single .select2-selection__arrow,
.woocommerce-EditAccountForm .select2-container--default .select2-selection--single .select2-selection__arrow {
  height: 100% !important;
  top: 0 !important;
  right: 12px !important;
  width: 20px !important;
}
.woocommerce-address-fields .select2-container--default .select2-selection--single .select2-selection__arrow b,
.woocommerce-EditAccountForm .select2-container--default .select2-selection--single .select2-selection__arrow b {
  border: none !important;
  width: 12px !important;
  height: 8px !important;
  margin: 0 !important;
  left: 50% !important;
  top: 50% !important;
  transform: translate(-50%, -50%) !important;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%239C8569' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") center / contain no-repeat !important;
}
.woocommerce-address-fields .select2-container--default.select2-container--focus .select2-selection--single,
.woocommerce-address-fields .select2-container--default.select2-container--open .select2-selection--single,
.woocommerce-EditAccountForm .select2-container--default.select2-container--focus .select2-selection--single,
.woocommerce-EditAccountForm .select2-container--default.select2-container--open .select2-selection--single {
  border-color: var(--gold) !important;
  outline: none !important;
}
.woocommerce-address-fields .select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b,
.woocommerce-EditAccountForm .select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b {
  transform: translate(-50%, -50%) !important;
}

/* Select2 dropdown panel (appended to body) */
body.woocommerce-account .select2-dropdown,
body.woocommerce-checkout .select2-dropdown {
  background: var(--linen) !important;
  border: 1.5px solid var(--sand) !important;
  border-radius: 10px !important;
  overflow: hidden !important;
  box-shadow: 0 12px 32px rgba(44, 37, 31, .1) !important;
}
body.woocommerce-account .select2-container--default .select2-search--dropdown .select2-search__field,
body.woocommerce-checkout .select2-container--default .select2-search--dropdown .select2-search__field {
  border: 1.5px solid var(--sand) !important;
  border-radius: 8px !important;
  background: var(--cream) !important;
  color: var(--ink) !important;
  font-family: var(--body) !important;
  font-size: 14px !important;
  font-weight: 300 !important;
  padding: 8px 10px !important;
  outline: none !important;
  margin: 8px !important;
  width: calc(100% - 16px) !important;
  box-sizing: border-box !important;
}
body.woocommerce-account .select2-container--default .select2-search--dropdown .select2-search__field::placeholder,
body.woocommerce-checkout .select2-container--default .select2-search--dropdown .select2-search__field::placeholder {
  color: var(--taupe) !important;
  opacity: 1 !important;
}
body.woocommerce-account .select2-container--default .select2-search--dropdown .select2-search__field:focus,
body.woocommerce-checkout .select2-container--default .select2-search--dropdown .select2-search__field:focus {
  border-color: var(--gold) !important;
}
body.woocommerce-account .select2-container--default .select2-results__option,
body.woocommerce-checkout .select2-container--default .select2-results__option {
  font-family: var(--body) !important;
  font-size: 14px !important;
  font-weight: 300 !important;
  color: var(--ink-soft) !important;
  padding: 8px 12px !important;
}
body.woocommerce-account .select2-container--default .select2-results__option--highlighted[aria-selected],
body.woocommerce-account .select2-container--default .select2-results__option--highlighted[data-selected],
body.woocommerce-checkout .select2-container--default .select2-results__option--highlighted[aria-selected],
body.woocommerce-checkout .select2-container--default .select2-results__option--highlighted[data-selected] {
  background: var(--sand) !important;
  color: var(--ink) !important;
}
body.woocommerce-account .select2-container--default .select2-results__option[aria-selected=true],
body.woocommerce-account .select2-container--default .select2-results__option[data-selected=true],
body.woocommerce-checkout .select2-container--default .select2-results__option[aria-selected=true],
body.woocommerce-checkout .select2-container--default .select2-results__option[data-selected=true] {
  background: var(--cream) !important;
  color: var(--ink) !important;
}
.woocommerce-address-fields .button,
.woocommerce-EditAccountForm [type="submit"] {
  background: var(--gold) !important; color: var(--linen) !important;
  border-radius: 40px !important; padding: 11px 28px !important;
  font-size: 11.5px !important; font-weight: 600 !important;
  letter-spacing: .16em !important; text-transform: uppercase !important;
  border: none !important; cursor: pointer !important;
  font-family: var(--body) !important;
  transition: background .2s var(--ease), transform .2s var(--ease) !important;
}
.woocommerce-address-fields .button:hover,
.woocommerce-EditAccountForm [type="submit"]:hover {
  background: var(--gold-deep) !important;
  transform: translateY(-2px);
}

/* Edit account form layout */
.woocommerce-account.logged-in .woocommerce-EditAccountForm {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 0 18px !important;
  max-width: 760px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
}
.woocommerce-EditAccountForm .clear {
  display: none !important;
}
.woocommerce-account.logged-in .woocommerce .woocommerce-EditAccountForm .form-row,
.woocommerce-EditAccountForm .form-row {
  float: none !important;
  width: 100% !important;
  max-width: none !important;
  clear: none !important;
  margin: 0 0 16px !important;
  padding: 0 !important;
}
.woocommerce-EditAccountForm .form-row-first,
.woocommerce-EditAccountForm .form-row-last {
  min-width: 0 !important;
}
.woocommerce-EditAccountForm .form-row-wide,
.woocommerce-EditAccountForm fieldset,
.woocommerce-EditAccountForm > p {
  grid-column: 1 / -1 !important;
}
.woocommerce-EditAccountForm label .required {
  color: var(--gold-deep) !important;
  text-decoration: none !important;
}
.woocommerce-EditAccountForm #account_display_name_description,
.woocommerce-EditAccountForm #account_display_name_description em {
  display: block !important;
  margin: 8px 0 0 !important;
  font-size: 13px !important;
  font-style: normal !important;
  font-weight: 300 !important;
  line-height: 1.65 !important;
  color: var(--taupe) !important;
}
.woocommerce-EditAccountForm fieldset {
  border: 1px solid var(--sand) !important;
  border-radius: 14px !important;
  background: var(--cream) !important;
  padding: 0 22px 16px !important;
  margin: 4px 0 8px !important;
  min-width: 0 !important;
  overflow: hidden !important;
}
/* float keeps legend inside the fieldset border (display:block alone br... */
.woocommerce-EditAccountForm fieldset legend {
  float: left !important;
  width: 100% !important;
  display: block !important;
  margin: 0 0 16px !important;
  padding: 20px 0 14px !important;
  border: none !important;
  border-bottom: 1px solid var(--sand) !important;
  box-sizing: border-box !important;
  font-family: var(--display) !important;
  font-size: clamp(17px, 1.8vw, 20px) !important;
  font-weight: 380 !important;
  color: var(--ink) !important;
  line-height: 1.25 !important;
}
.woocommerce-EditAccountForm fieldset .form-row {
  clear: both !important;
  margin-bottom: 14px !important;
}
.woocommerce-EditAccountForm fieldset label {
  text-transform: none !important;
  letter-spacing: .06em !important;
  font-size: 11px !important;
  line-height: 1.45 !important;
}

/* Password fields WC wraps inputs in .password-input with show/hide toggle */
.woocommerce-address-fields .password-input,
.woocommerce-EditAccountForm .password-input,
.account-login-card .password-input {
  display: block !important;
  width: 100% !important;
  position: relative !important;
}
.woocommerce-address-fields .password-input input[type="password"],
.woocommerce-address-fields .password-input input[type="text"],
.woocommerce-EditAccountForm .password-input input[type="password"],
.woocommerce-EditAccountForm .password-input input[type="text"],
.account-login-card .password-input input[type="password"],
.account-login-card .password-input input[type="text"] {
  width: 100% !important;
  padding-right: 44px !important;
  color: var(--ink) !important;
  -webkit-text-fill-color: var(--ink) !important;
  caret-color: var(--ink) !important;
}
.woocommerce-address-fields .password-input input::-ms-reveal,
.woocommerce-EditAccountForm .password-input input::-ms-reveal,
.account-login-card .password-input input::-ms-reveal {
  display: none !important;
}
.woocommerce-address-fields .show-password-input,
.woocommerce-EditAccountForm .show-password-input,
.account-login-card .show-password-input {
  position: absolute !important;
  top: 50% !important;
  right: 12px !important;
  transform: translateY(-50%) !important;
  width: 20px !important;
  height: 20px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
  background: transparent !important;
  cursor: pointer !important;
  opacity: .72 !important;
  transition: opacity .2s var(--ease) !important;
}
.woocommerce-address-fields .show-password-input:hover,
.woocommerce-EditAccountForm .show-password-input:hover,
.account-login-card .show-password-input:hover {
  opacity: 1 !important;
}
.woocommerce-address-fields .show-password-input::before,
.woocommerce-EditAccountForm .show-password-input::before,
.account-login-card .show-password-input::before {
  content: "" !important;
  display: block !important;
  width: 20px !important;
  height: 20px !important;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='M1.5 10s3-5.5 8.5-5.5S18.5 10 18.5 10s-3 5.5-8.5 5.5S1.5 10 1.5 10z' stroke='%239C8569' stroke-width='1.4'/%3E%3Ccircle cx='10' cy='10' r='2.5' stroke='%239C8569' stroke-width='1.4'/%3E%3C/svg%3E") center / contain no-repeat !important;
}
.woocommerce-address-fields .show-password-input.display-password::before,
.woocommerce-EditAccountForm .show-password-input.display-password::before,
.account-login-card .show-password-input.display-password::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='M1.5 10s3-5.5 8.5-5.5S18.5 10 18.5 10s-3 5.5-8.5 5.5S1.5 10 1.5 10z' stroke='%239C8569' stroke-width='1.4'/%3E%3Ccircle cx='10' cy='10' r='2.5' stroke='%239C8569' stroke-width='1.4'/%3E%3Cpath d='M3 17L17 3' stroke='%239C8569' stroke-width='1.4' stroke-linecap='round'/%3E%3C/svg%3E") !important;
}

.woocommerce-EditAccountForm > p {
  margin: 8px 0 0 !important;
  padding-top: 4px !important;
}

/* Shared two-column field rows (address + account forms) */
.woocommerce-account.logged-in .woocommerce-address-fields__field-wrapper {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 0 18px !important;
}
.woocommerce-account.logged-in .woocommerce .woocommerce-address-fields__field-wrapper .form-row,
.woocommerce-account.logged-in .woocommerce-address-fields .form-row {
  float: none !important;
  width: 100% !important;
  max-width: none !important;
  clear: none !important;
  padding: 0 !important;
}
.woocommerce-address-fields__field-wrapper .form-row-wide,
.woocommerce-address-fields__field-wrapper #billing_company_field,
.woocommerce-address-fields__field-wrapper #shipping_company_field {
  grid-column: 1 / -1 !important;
}

/* Mobile: stack tabs above content */
@media (max-width: 767px) {
  .woocommerce-account.logged-in .woocommerce {
    grid-template-columns: 1fr !important;
    padding: 16px !important;
  }
  .woocommerce-account.logged-in nav.woocommerce-MyAccount-navigation {
    grid-column: 1 !important;
    grid-row: 2 !important;
    border-right: none !important;
    border-bottom: 1px solid var(--sand) !important;
    padding-right: 0 !important;
    padding-bottom: 14px !important;
    margin-bottom: 0 !important;
  }
  .woocommerce-account.logged-in .woocommerce-MyAccount-content {
    grid-column: 1 !important;
    grid-row: 3 !important;
    padding: 16px 0 0 !important;
  }
  .woocommerce-MyAccount-navigation ul {
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    gap: 6px !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }
  .woocommerce-MyAccount-navigation ul::-webkit-scrollbar { display: none; }
  .woocommerce-MyAccount-navigation ul li {
    flex: 0 0 auto;
  }
  .woocommerce-MyAccount-navigation ul li a {
    padding: 9px 12px !important;
    font-size: 9.5px !important;
    white-space: nowrap;
  }
  .woocommerce-account.logged-in .woocommerce-MyAccount-content .woocommerce-Addresses,
  .woocommerce-account.logged-in .woocommerce-MyAccount-content .woocommerce-Addresses.col2-set,
  .woocommerce-account.logged-in .woocommerce-MyAccount-content .addresses.col2-set,
  .woocommerce-account.logged-in .woocommerce-MyAccount-content .u-columns.woocommerce-Addresses {
    grid-template-columns: 1fr !important;
  }
  .woocommerce-account.logged-in .woocommerce-EditAccountForm,
  .woocommerce-account.logged-in .woocommerce-address-fields__field-wrapper {
    grid-template-columns: 1fr !important;
    gap: 0 !important;
    max-width: none !important;
  }
/* Responsive table */
  .woocommerce-orders-table thead { display: none !important; }
  .woocommerce-orders-table,
  .woocommerce-orders-table tbody,
  .woocommerce-orders-table tbody tr,
  .woocommerce-orders-table tbody td { display: block !important; }
  .woocommerce-orders-table tbody tr {
    background: var(--cream) !important;
    border-radius: 12px !important;
    border: 1px solid var(--sand) !important;
    margin-bottom: 12px !important;
    padding: 14px !important;
  }
  .woocommerce-orders-table tbody td {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    padding: 8px 0 !important;
    border-bottom: 1px solid var(--sand) !important;
  }
  .woocommerce-orders-table tbody td:last-child { border-bottom: none !important; }
  .woocommerce-orders-table tbody td::before {
    content: attr(data-title);
    font-size: 10px; font-weight: 600;
    letter-spacing: .2em; text-transform: uppercase;
    color: var(--gold); white-space: nowrap; margin-right: 10px;
    flex-shrink: 0;
  }
}

/* Wishlist page (YITH) */

.wishlist-body__inner{max-width:1160px;}

/* Hide duplicate YITH in-content title (hero has the heading) */
.wishlist-page .wishlist-title-container{display:none !important;}

/* Card shell */
.wishlist-page .yith-wcwl-form.wishlist-fragment{
  background:var(--linen) !important;
  border:1px solid var(--sand) !important;
  border-radius:20px !important;
  padding:clamp(18px,2.4vw,28px) !important;
  margin:0 !important;
  overflow:hidden;
}

/* Table */
.wishlist-page table.wishlist_table.shop_table{
  width:100% !important;
  border-collapse:collapse !important;
  border:none !important;
  margin:0 !important;
  background:transparent !important;
}
.wishlist-page table.wishlist_table thead tr{
  background:var(--cream) !important;
}
.wishlist-page table.wishlist_table thead th{
  font-family:var(--body) !important;
  font-size:10px !important;font-weight:600 !important;
  letter-spacing:.28em !important;text-transform:uppercase !important;
  color:var(--gold) !important;
  padding:13px 14px !important;
  border:none !important;
  white-space:nowrap;
  background:transparent !important;
}
.wishlist-page table.wishlist_table thead th:first-child{border-radius:10px 0 0 10px !important;}
.wishlist-page table.wishlist_table thead th:last-child{border-radius:0 10px 10px 0 !important;}
.wishlist-page table.wishlist_table tbody tr{
  border-bottom:1px solid var(--sand) !important;
  transition:background .16s var(--ease);
}
.wishlist-page table.wishlist_table tbody tr:last-child{border-bottom:none !important;}
.wishlist-page table.wishlist_table tbody tr:hover{background:var(--cream) !important;}
.wishlist-page table.wishlist_table tbody td{
  padding:18px 14px !important;
  vertical-align:middle !important;
  border:none !important;
  font-size:14px !important;
  font-weight:300 !important;
  color:var(--ink-soft) !important;
}

/* Remove column */
.wishlist-page .wishlist_table .product-remove{width:44px !important;text-align:center !important;}
.wishlist-page .wishlist_table .product-remove .remove,
.wishlist-page .wishlist_table .product-remove a.remove_from_wishlist{
  display:inline-flex !important;align-items:center !important;justify-content:center !important;
  width:30px !important;height:30px !important;
  border-radius:50% !important;
  border:1px solid var(--sand) !important;
  background:var(--linen) !important;
  color:var(--taupe) !important;
  font-size:18px !important;line-height:1 !important;
  text-decoration:none !important;
  transition:background .2s var(--ease),color .2s var(--ease),border-color .2s var(--ease);
}
.wishlist-page .wishlist_table .product-remove .remove:hover,
.wishlist-page .wishlist_table .product-remove a.remove_from_wishlist:hover{
  background:var(--sand) !important;color:var(--ink) !important;border-color:var(--taupe) !important;
}

/* Thumbnail */
.wishlist-page .wishlist_table .product-thumbnail{width:92px !important;}
.wishlist-page .wishlist_table .product-thumbnail a{display:block;border-radius:12px;overflow:hidden;}
.wishlist-page .wishlist_table .product-thumbnail img{
  width:76px !important;height:76px !important;
  object-fit:cover !important;border-radius:12px !important;
  border:1px solid var(--sand) !important;
}

/* Product name */
.wishlist-page .wishlist_table .product-name a{
  font-family:var(--display) !important;
  font-size:clamp(16px,1.6vw,19px) !important;
  font-weight:380 !important;
  color:var(--ink) !important;
  line-height:1.3 !important;
  text-decoration:none !important;
}
.wishlist-page .wishlist_table .product-name a:hover{color:var(--gold-deep) !important;}

/* Price */
.wishlist-page .wishlist_table .product-price,
.wishlist-page .wishlist_table .product-price .amount{
  font-weight:500 !important;
  color:var(--gold-deep) !important;
  font-size:15px !important;
}

/* Stock pills */
.wishlist-page .wishlist_table .wishlist-in-stock,
.wishlist-page .wishlist_table .wishlist-out-of-stock{
  display:inline-block !important;
  padding:4px 12px !important;
  border-radius:20px !important;
  font-size:10.5px !important;
  font-weight:600 !important;
  letter-spacing:.08em !important;
  text-transform:uppercase !important;
}
.wishlist-page .wishlist_table .wishlist-in-stock{
  background:rgba(166,132,92,.14) !important;
  color:var(--gold-deep) !important;
}
.wishlist-page .wishlist_table .wishlist-out-of-stock{
  background:rgba(139,69,69,.1) !important;
  color:#8b4545 !important;
}

/* Add to cart / actions */
.wishlist-page .wishlist_table .product-add-to-cart{
  text-align:right !important;
  min-width:140px !important;
}
.wishlist-page .wishlist_table .product-add-to-cart a.button,
.wishlist-page .wishlist_table .product-add-to-cart .add_to_cart_button{
  display:inline-block !important;
  background:var(--ink) !important;
  color:var(--linen) !important;
  border:none !important;
  border-radius:24px !important;
  padding:10px 20px !important;
  font-family:var(--body) !important;
  font-size:11px !important;
  font-weight:600 !important;
  letter-spacing:.14em !important;
  text-transform:uppercase !important;
  text-decoration:none !important;
  white-space:nowrap !important;
  transition:background .2s var(--ease),transform .2s var(--ease) !important;
}
.wishlist-page .wishlist_table .product-add-to-cart a.button:hover,
.wishlist-page .wishlist_table .product-add-to-cart .add_to_cart_button:hover{
  background:var(--ink-soft) !important;
  transform:translateY(-1px);
}
.wishlist-page .wishlist_table .product-add-to-cart .dateadded{
  display:block !important;
  margin-bottom:8px !important;
  font-size:12px !important;
  color:var(--taupe) !important;
}

/* Hide accessibility helper text that bleeds into layout */
.wishlist-page .screen-reader-text{
  position:absolute !important;
  width:1px !important;height:1px !important;
  padding:0 !important;margin:-1px !important;
  overflow:hidden !important;
  clip:rect(0,0,0,0) !important;
  white-space:nowrap !important;border:0 !important;
}

/* Empty state */
.wishlist-page .wishlist_table td.wishlist-empty{
  text-align:center !important;
  padding:48px 24px !important;
  font-size:16px !important;
  color:var(--ink-soft) !important;
}

/* Pagination */
.wishlist-page .wishlist-pagination td{
  padding-top:24px !important;
  text-align:center !important;
}
.wishlist-page .wishlist-pagination .page-numbers{
  display:inline-flex !important;gap:6px !important;align-items:center !important;
}
.wishlist-page .wishlist-pagination .page-numbers a,
.wishlist-page .wishlist-pagination .page-numbers span{
  display:inline-flex !important;align-items:center !important;justify-content:center !important;
  min-width:36px !important;height:36px !important;
  border-radius:50% !important;
  border:1px solid var(--sand) !important;
  background:var(--linen) !important;
  color:var(--ink-soft) !important;
  font-size:13px !important;text-decoration:none !important;
}
.wishlist-page .wishlist-pagination .page-numbers .current{
  background:var(--gold) !important;
  border-color:var(--gold) !important;
  color:var(--linen) !important;
}

@media (max-width: 900px) {
  .wishlist-page table.wishlist_table.responsive thead{display:none !important;}
  .wishlist-page table.wishlist_table.responsive,
  .wishlist-page table.wishlist_table.responsive tbody,
  .wishlist-page table.wishlist_table.responsive tr,
  .wishlist-page table.wishlist_table.responsive td{display:block !important;width:100% !important;}
  .wishlist-page table.wishlist_table.responsive tbody tr{
    background:var(--cream) !important;
    border:1px solid var(--sand) !important;
    border-radius:14px !important;
    margin-bottom:14px !important;
    padding:14px !important;
  }
  .wishlist-page table.wishlist_table.responsive tbody td{
    display:flex !important;
    justify-content:space-between !important;
    align-items:center !important;
    gap:12px !important;
    padding:10px 0 !important;
    border-bottom:1px solid var(--sand) !important;
    text-align:right !important;
  }
  .wishlist-page table.wishlist_table.responsive tbody td:last-child{border-bottom:none !important;}
  .wishlist-page table.wishlist_table.responsive tbody td::before{
    content:attr(data-title);
    font-size:10px;font-weight:600;
    letter-spacing:.2em;text-transform:uppercase;
    color:var(--gold);text-align:left;flex:1 1 auto;
  }
  .wishlist-page table.wishlist_table.responsive .product-remove::before,
  .wishlist-page table.wishlist_table.responsive .product-thumbnail::before{display:none !important;}
  .wishlist-page table.wishlist_table.responsive .product-thumbnail{
    justify-content:flex-start !important;border-bottom:none !important;
    padding-bottom:4px !important;
  }
  .wishlist-page table.wishlist_table.responsive .product-thumbnail img{width:88px !important;height:88px !important;}
  .wishlist-page table.wishlist_table.responsive .product-name{text-align:left !important;}
  .wishlist-page table.wishlist_table.responsive .product-add-to-cart{
    flex-direction:column !important;align-items:stretch !important;
  }
  .wishlist-page table.wishlist_table.responsive .product-add-to-cart::before{align-self:flex-start;}
  .wishlist-page table.wishlist_table.responsive .product-add-to-cart a.button{width:100% !important;text-align:center !important;}
}
