:root{
  --font-display:'Noto Naskh Arabic', serif;
  --bg-dark:#171109;
  --bg-dark-2:#211808;
  --ivory:#F7F1E4;
  --ivory-2:#EFE6D2;
  --gold:#C69B4C;
  --gold-light:#E7CD93;
  --gold-deep:#9C7830;
  --emerald:#5A2E20;
  --text-dark:#241B0E;
  --text-soft:#6B5E45;
  --line:#E2D6B8;
  --radius:9px;
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  font-family:'Vazirmatn',sans-serif;
  background:var(--ivory);
  color:var(--text-dark);
  line-height:1.7;
}
a{text-decoration:none;color:inherit;}
ul{list-style:none;}
img,svg{display:block;max-width:100%;}
.wrap{max-width:1240px;margin:0 auto;padding:0 28px;}

/* ---------- flourish divider ---------- */
.flourish{display:flex;align-items:center;justify-content:center;gap:14px;margin:0 auto;}
.flourish .ln{height:1px;width:64px;background:linear-gradient(90deg,transparent,var(--gold),transparent);}
.flourish svg{flex-shrink:0;}

/* ---------- top bar ---------- */
.topbar{background:var(--bg-dark);color:var(--ivory-2);font-size:12.5px;letter-spacing:.03em;}
.topbar .wrap{display:flex;justify-content:space-between;align-items:center;height:38px;}
.topbar .left{display:flex;gap:22px;opacity:.85;}
.topbar .right{display:flex;gap:16px;opacity:.85;}

/* ---------- header ---------- */
header.site{background:radial-gradient(120% 200% at 50% -60%, #2B1E10 0%, var(--bg-dark) 60%);border-bottom:1px solid rgba(230,190,120,.12);position:sticky;top:0;z-index:50;}
.header-in{display:flex;align-items:center;justify-content:space-between;height:92px;}
.logo{display:flex;align-items:center;}
.logo img{height:66px;width:auto;}
nav.main ul{display:flex;gap:34px;font-size:14.5px;font-weight:500;}
nav.main a{position:relative;padding:6px 0;color:var(--ivory-2);}
nav.main a::after{content:"";position:absolute;bottom:0;right:0;width:0;height:1px;background:var(--gold);transition:width .25s ease;}
nav.main a:hover::after{width:100%;}
.header-icons{display:flex;align-items:center;gap:22px;}
.header-icons .ic{width:20px;height:20px;cursor:pointer;}
.menu-toggle{display:none;}
.cart-count{font-size:10px;background:var(--gold-deep);color:#fff;border-radius:50%;width:16px;height:16px;display:flex;align-items:center;justify-content:center;margin-right:-10px;margin-top:-14px;}
.cart-count[hidden]{display:none;}

/* ---------- hero ---------- */
.hero{background:radial-gradient(80% 120% at 78% 15%, #3A2712 0%, var(--bg-dark) 55%), radial-gradient(60% 90% at 10% 100%, #2E1F10 0%, var(--bg-dark) 60%);color:var(--ivory);position:relative;overflow:hidden;}
.hero .wrap{display:grid;grid-template-columns:1fr 1fr;align-items:center;min-height:560px;gap:40px;}
.hero-text .eyebrow{color:var(--gold-light);font-size:13px;letter-spacing:.3em;font-weight:600;margin-bottom:22px;display:block;}
.hero-text h1{font-family:var(--font-display);font-size:52px;font-weight:700;line-height:1.35;margin-bottom:22px;}
.hero-text h1 em{font-style:normal;color:var(--gold-light);}
.hero-text p{color:#CBBFA0;font-size:15.5px;max-width:420px;margin-bottom:32px;}
.btn{display:inline-flex;align-items:center;gap:10px;background:var(--gold);color:var(--bg-dark);font-weight:700;font-size:14px;padding:15px 32px;border-radius:var(--radius);letter-spacing:.02em;transition:background .2s ease, transform .2s ease;}
.btn:hover{background:var(--gold-light);transform:translateY(-2px);}
.btn.outline{background:transparent;border:1px solid var(--gold);color:var(--gold-light);}
.hero-art{position:relative;display:flex;align-items:center;justify-content:center;height:460px;}

/* ---------- categories ---------- */
.cats{padding:78px 0 68px;background:var(--ivory);}
.section-head{text-align:center;margin-bottom:52px;}
.section-head .eyebrow{color:var(--gold-deep);font-size:12.5px;letter-spacing:.3em;font-weight:700;display:block;margin-bottom:12px;}
.section-head h2{font-family:var(--font-display);font-size:32px;font-weight:700;margin-bottom:18px;}
.cat-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:26px;}
.cat-card{text-align:center;cursor:pointer;}
.cat-circle{width:118px;height:118px;border-radius:50%;background:radial-gradient(120% 120% at 35% 25%,#3C2A15 0%,var(--bg-dark-2) 65%);margin:0 auto 16px;display:flex;align-items:center;justify-content:center;border:1px solid var(--line);box-shadow:0 8px 22px rgba(120,85,30,.10);transition:border-color .25s ease, transform .25s ease, box-shadow .25s ease;}
.cat-card:hover .cat-circle{border-color:var(--gold);transform:translateY(-4px);}
.cat-circle svg{width:44px;height:44px;stroke:var(--gold-light);}
.cat-card h3{font-size:14.5px;font-weight:600;}
.cat-card span{font-size:12px;color:var(--text-soft);}

/* ---------- products ---------- */
.products{padding:70px 0 90px;background:var(--ivory-2);}
.prod-tabs{display:flex;justify-content:center;gap:30px;margin-bottom:48px;font-size:14px;font-weight:600;color:var(--text-soft);}
.prod-tabs .active{color:var(--text-dark);border-bottom:2px solid var(--gold);padding-bottom:8px;}
.prod-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;}
.prod-card{background:var(--ivory);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;position:relative;transition:box-shadow .25s ease, transform .25s ease;}
.prod-card:hover{box-shadow:0 20px 40px rgba(120,80,30,.18);transform:translateY(-5px);}
.prod-media{height:210px;background:radial-gradient(120% 140% at 50% 30%, #4A3218 0%, #2A1B0D 55%, #1C1209 100%);position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;}
.prod-media::after{content:"";position:absolute;top:-30%;left:20%;width:60%;height:60%;background:radial-gradient(circle,rgba(231,205,147,.35) 0%,transparent 70%);}
.prod-media svg{width:78px;height:78px;stroke:var(--gold-light);opacity:.9;position:relative;z-index:1;filter:drop-shadow(0 0 18px rgba(231,205,147,.35));}
.badge{position:absolute;top:12px;right:12px;font-size:11px;font-weight:700;padding:4px 10px;border-radius:var(--radius);}
.badge.sale{background:#7C3B2E;color:#fff;}
.badge.new{background:var(--gold);color:var(--bg-dark);}
.prod-body{padding:18px 16px 20px;}
.prod-body .cat{font-size:11px;color:var(--gold-deep);letter-spacing:.1em;margin-bottom:6px;display:block;}
.prod-body h4{font-size:15px;font-weight:600;margin-bottom:10px;}
.meta-row{display:flex;gap:10px;font-size:11.5px;color:var(--text-soft);margin-bottom:14px;}
.meta-row span{background:var(--ivory-2);border:1px solid var(--line);padding:2px 8px;border-radius:var(--radius);}
.price-row{display:flex;align-items:baseline;justify-content:space-between;}
.price{font-size:16.5px;font-weight:800;color:var(--text-dark);}
.price small{font-size:11px;font-weight:400;color:var(--text-soft);}
.old-price{font-size:12.5px;color:#9B8F71;text-decoration:line-through;margin-right:6px;}
.add-ic{width:34px;height:34px;border-radius:50%;background:var(--bg-dark);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s ease;}
.add-ic:hover{background:var(--gold-deep);}
.add-ic svg{width:16px;height:16px;stroke:var(--ivory);}

/* ---------- banner ---------- */
.banner{background:var(--emerald);color:var(--ivory);padding:80px 0;}
.banner .wrap{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:40px;}
.banner h2{font-family:var(--font-display);font-size:34px;font-weight:700;margin-bottom:16px;line-height:1.5;}
.banner p{color:#CFE0D6;margin-bottom:28px;max-width:420px;}
.banner-visual{display:flex;justify-content:center;}
.banner-visual svg{width:220px;height:220px;stroke:var(--gold-light);opacity:.9;}

/* ---------- craftsmanship ---------- */
.craft{padding:90px 0;background:var(--ivory);}
.craft-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;text-align:center;}
.craft-item svg{width:50px;height:50px;stroke:var(--gold-deep);margin:0 auto 20px;}
.craft-item h3{font-size:17px;font-weight:700;margin-bottom:10px;}
.craft-item p{font-size:13.5px;color:var(--text-soft);max-width:280px;margin:0 auto;}

/* ---------- testimonial ---------- */
.testi{background:radial-gradient(70% 140% at 50% 0%, #33220F 0%, var(--bg-dark) 60%);color:var(--ivory);padding:90px 0;text-align:center;}
.testi blockquote{font-size:22px;font-weight:500;max-width:680px;margin:0 auto 26px;line-height:1.9;color:var(--ivory-2);}
.testi .who{color:var(--gold-light);font-size:13.5px;letter-spacing:.05em;}

/* ---------- newsletter ---------- */
.news{padding:70px 0;background:var(--ivory-2);}
.news .wrap{display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap;}
.news h3{font-size:22px;font-weight:800;margin-bottom:6px;}
.news p{color:var(--text-soft);font-size:13.5px;}
.news form{display:flex;gap:0;border:1px solid var(--line);background:var(--ivory);min-width:380px;border-radius:var(--radius);overflow:hidden;}
.news input{flex:1;border:none;background:transparent;padding:15px 18px;font-family:inherit;font-size:13.5px;outline:none;}
.news button{background:var(--gold);color:var(--bg-dark);border:none;padding:0 26px;font-weight:700;font-size:13.5px;cursor:pointer;}

/* ---------- footer ---------- */
footer{background:radial-gradient(90% 160% at 50% 0%, #2A1C0E 0%, var(--bg-dark) 55%);color:#B9AD8E;padding:70px 0 26px;font-size:13.5px;}
.foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:40px;padding-bottom:50px;border-bottom:1px solid rgba(255,255,255,.08);}
.foot-grid h4{color:var(--ivory);font-size:14.5px;font-weight:700;margin-bottom:20px;}
.foot-grid li{margin-bottom:11px;opacity:.85;}
.foot-logo{font-size:22px;font-weight:800;color:var(--gold-light);margin-bottom:14px;}
.foot-grid p{opacity:.75;max-width:280px;margin-bottom:16px;}
.bottom-bar{display:flex;justify-content:space-between;align-items:center;padding-top:24px;font-size:12px;opacity:.6;flex-wrap:wrap;gap:10px;}

@media (max-width:980px){
  .hero .wrap{grid-template-columns:1fr;text-align:center;}
  .hero-text p{margin:0 auto 32px;}
  .cat-grid{grid-template-columns:repeat(3,1fr);}
  .prod-grid{grid-template-columns:repeat(2,1fr);}
  .banner .wrap{grid-template-columns:1fr;text-align:center;}
  .foot-grid{grid-template-columns:1fr 1fr;}

  .menu-toggle{display:flex;}
  nav.main{
    position:fixed;top:0;right:0;height:100vh;width:80%;max-width:320px;
    background:var(--bg-dark-2);box-shadow:-24px 0 60px rgba(0,0,0,.35);
    transform:translateX(100%);transition:transform .35s cubic-bezier(.16,.8,.3,1);
    z-index:70;overflow-y:auto;padding:96px 0 40px;
  }
  nav.main.is-open{transform:translateX(0);}
  nav.main ul{flex-direction:column;gap:0;font-size:15.5px;}
  nav.main li{width:100%;border-bottom:1px solid rgba(230,190,120,.12);}
  nav.main a{display:block;padding:18px 30px;}
  nav.main a::after{display:none;}
}

/* ---------- motion: scroll reveal ---------- */
.reveal{opacity:0;transform:translateY(28px);transition:opacity .8s cubic-bezier(.16,.8,.3,1), transform .8s cubic-bezier(.16,.8,.3,1);}
.reveal.in-view{opacity:1;transform:translateY(0);}
.reveal-stagger > *{opacity:0;transform:translateY(24px);transition:opacity .7s cubic-bezier(.16,.8,.3,1), transform .7s cubic-bezier(.16,.8,.3,1);}
.reveal-stagger.in-view > *{opacity:1;transform:translateY(0);}
.reveal-stagger.in-view > *:nth-child(1){transition-delay:.05s;}
.reveal-stagger.in-view > *:nth-child(2){transition-delay:.13s;}
.reveal-stagger.in-view > *:nth-child(3){transition-delay:.21s;}
.reveal-stagger.in-view > *:nth-child(4){transition-delay:.29s;}
.reveal-stagger.in-view > *:nth-child(5){transition-delay:.37s;}
@media (prefers-reduced-motion: reduce){
  .reveal,.reveal-stagger > *{opacity:1 !important;transform:none !important;transition:none !important;}
}

/* ---------- motion: hero entrance ---------- */
@keyframes heroUp{from{opacity:0;transform:translateY(22px);}to{opacity:1;transform:translateY(0);}}
.hero-text .eyebrow{animation:heroUp .7s .1s cubic-bezier(.16,.8,.3,1) both;}
.hero-text h1{animation:heroUp .8s .22s cubic-bezier(.16,.8,.3,1) both;}
.hero-text p{animation:heroUp .8s .34s cubic-bezier(.16,.8,.3,1) both;}
.hero-text > div{animation:heroUp .8s .46s cubic-bezier(.16,.8,.3,1) both;}
.hero-art{animation:heroUp 1s .2s cubic-bezier(.16,.8,.3,1) both;}

/* ---------- motion: gold shimmer sweep on buttons ---------- */
.btn{position:relative;overflow:hidden;}
.btn::before{content:"";position:absolute;top:0;left:-120%;width:60%;height:100%;background:linear-gradient(115deg,transparent,rgba(255,255,255,.55),transparent);transform:skewX(-18deg);transition:left .65s ease;}
.btn:hover::before{left:130%;}

/* ---------- motion: sparkles ---------- */
.sparkle-layer{position:absolute;inset:0;pointer-events:none;overflow:hidden;}
.sparkle{position:absolute;width:3px;height:3px;border-radius:50%;background:var(--gold-light);opacity:0;box-shadow:0 0 6px 1px rgba(231,205,147,.8);animation:twinkle 3.6s ease-in-out infinite;}
@keyframes twinkle{0%,100%{opacity:0;transform:scale(.4);}50%{opacity:1;transform:scale(1.3);}}

/* ---------- motion: product hover shine ---------- */
.prod-media{isolation:isolate;}
.prod-media::before{content:"";position:absolute;top:0;left:-140%;width:60%;height:100%;background:linear-gradient(110deg,transparent,rgba(255,255,255,.16),transparent);transform:skewX(-15deg);transition:left .7s ease;z-index:2;}
.prod-card:hover .prod-media::before{left:140%;}

/* ---------- stats strip ---------- */
.stats{background:var(--bg-dark-2);padding:0;}
.stats .wrap{display:grid;grid-template-columns:repeat(4,1fr);}
.stat-item{text-align:center;padding:38px 10px;border-inline-start:1px solid rgba(230,190,120,.14);}
.stat-item:first-child{border-inline-start:none;}
.stat-num{font-size:32px;font-weight:800;color:var(--gold-light);display:flex;align-items:baseline;justify-content:center;gap:4px;}
.stat-label{font-size:12.5px;color:#B9AD8E;margin-top:8px;letter-spacing:.04em;}

/* ---------- cat icon float ---------- */
.cat-circle svg{transition:transform .35s ease;}
.cat-card:hover .cat-circle svg{transform:scale(1.12) rotate(-4deg);}

/* ---------- hero icon float + sparkle layer ---------- */
.hero-icon-float{animation:iconFloat 5.5s ease-in-out infinite;filter:drop-shadow(0 25px 45px rgba(0,0,0,.5)) drop-shadow(0 0 30px rgba(231,205,147,.25));}
@keyframes iconFloat{0%,100%{transform:translateY(0) rotate(0deg);}50%{transform:translateY(-14px) rotate(1.2deg);}}

/* ---------- testimonial carousel ---------- */
.testi-track{position:relative;max-width:680px;margin:0 auto;min-height:150px;}
.testi-slide{position:absolute;inset:0;opacity:0;transform:translateY(10px);transition:opacity .6s ease, transform .6s ease;pointer-events:none;}
.testi-slide.is-active{opacity:1;transform:translateY(0);position:relative;pointer-events:auto;}
.testi-slide blockquote{font-family:var(--font-display);font-size:23px;font-weight:600;line-height:1.9;color:var(--ivory-2);margin-bottom:26px;}
.testi-slide .who{color:var(--gold-light);font-size:13.5px;letter-spacing:.05em;}
.testi-dots{display:flex;justify-content:center;gap:10px;margin-top:36px;}
.t-dot{width:8px;height:8px;border-radius:50%;background:rgba(230,190,120,.3);cursor:pointer;transition:background .25s ease, transform .25s ease;}
.t-dot.is-active{background:var(--gold);transform:scale(1.3);}

/* ---------- stat count-up ---------- */
.stat-item{transition:transform .3s ease;}
.stat-item:hover{transform:translateY(-4px);}

/* ---------- focus states ---------- */
a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid var(--gold-light);outline-offset:3px;border-radius:4px;}

/* ---------- header: scroll state ---------- */
header.site{transition:background .3s ease, box-shadow .3s ease;}
.header-in{transition:height .3s ease;}
header.site.is-scrolled{background:var(--bg-dark);box-shadow:0 10px 30px rgba(0,0,0,.35);}
header.site.is-scrolled .header-in{height:72px;}

/* ---------- hamburger menu toggle ---------- */
.menu-toggle{flex-direction:column;justify-content:center;gap:5px;width:26px;height:26px;background:none;border:none;cursor:pointer;padding:0;}
.menu-toggle span{display:block;width:100%;height:1.6px;background:var(--ivory-2);transition:transform .3s ease, opacity .3s ease;}
.menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(6.6px) rotate(45deg);}
.menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0;}
.menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-6.6px) rotate(-45deg);}
.nav-backdrop{position:fixed;inset:0;background:rgba(10,7,3,.55);opacity:0;pointer-events:none;transition:opacity .35s ease;z-index:60;}
.nav-backdrop.is-show{opacity:1;pointer-events:auto;}
body.nav-open{overflow:hidden;}

/* ---------- category photo circles ---------- */
.cat-circle{overflow:hidden;background:var(--bg-dark-2);}
.cat-circle img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease;}
.cat-card:hover .cat-circle img{transform:scale(1.14);}

/* ---------- product photography ---------- */
.prod-media img{width:100%;height:100%;object-fit:cover;position:relative;z-index:0;transition:transform .6s cubic-bezier(.16,.8,.3,1);}
.prod-card:hover .prod-media img{transform:scale(1.08);}
.prod-media::after{mix-blend-mode:overlay;z-index:1;}
.wish-ic{position:absolute;top:12px;left:12px;z-index:3;width:32px;height:32px;border-radius:50%;background:rgba(23,17,9,.55);backdrop-filter:blur(2px);border:none;padding:0;font:inherit;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s ease, transform .2s ease;}
.wish-ic svg{width:16px;height:16px;stroke:var(--ivory);opacity:1;filter:none;transition:stroke .2s ease, fill .2s ease, transform .2s ease;}
.wish-ic:hover{transform:scale(1.08);}
.wish-ic.is-active svg{fill:#C8483A;stroke:#C8483A;transform:scale(1.12);}
.add-ic{border:none;padding:0;font:inherit;}
.add-ic.is-added{background:#3E7E58;}
.prod-tabs span{cursor:pointer;transition:color .2s ease;}
.prod-grid.is-filtering .prod-card{transition:opacity .3s ease, transform .3s ease;}
.prod-card.is-hidden{display:none;}
.prod-empty{text-align:center;color:var(--text-soft);padding:40px 0 0;font-size:14px;}

/* ---------- banner with photo background ---------- */
.banner{position:relative;overflow:hidden;}
.banner-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;}
.banner::before{content:"";position:absolute;inset:0;background:linear-gradient(100deg, var(--emerald) 40%, rgba(43,26,20,.78) 62%, rgba(43,26,20,.35) 100%);z-index:1;}
.banner .wrap{position:relative;z-index:2;}
.banner-visual{display:flex;justify-content:center;}
.banner-visual img{width:100%;max-width:420px;aspect-ratio:3/2;object-fit:cover;border-radius:var(--radius);box-shadow:0 30px 60px rgba(0,0,0,.45);border:1px solid rgba(230,190,120,.35);}

/* ---------- craft: image collage layout ---------- */
.craft-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:64px;align-items:center;}
.craft-visual{position:relative;width:100%;height:460px;}
.craft-visual .cv-a{position:absolute;top:0;right:0;width:72%;height:88%;object-fit:cover;border-radius:var(--radius);box-shadow:0 30px 60px rgba(0,0,0,.18);}
.craft-visual .cv-b{position:absolute;bottom:0;left:0;width:52%;height:52%;object-fit:cover;border-radius:var(--radius);border:6px solid var(--ivory);box-shadow:0 20px 40px rgba(0,0,0,.22);}
.craft-list{display:flex;flex-direction:column;gap:30px;}
.craft-item{display:flex;align-items:flex-start;gap:20px;text-align:right;}
.craft-item svg{width:38px;height:38px;stroke:var(--gold-deep);flex-shrink:0;margin:2px 0 0;}
.craft-item h3{font-size:16.5px;font-weight:700;margin-bottom:6px;}
.craft-item p{font-size:13.5px;color:var(--text-soft);max-width:420px;margin:0;}

/* ---------- back to top ---------- */
.to-top{position:fixed;bottom:26px;left:26px;width:46px;height:46px;border-radius:50%;background:var(--gold);color:var(--bg-dark);border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 12px 26px rgba(0,0,0,.3);opacity:0;transform:translateY(14px);pointer-events:none;transition:opacity .3s ease, transform .3s ease, background .2s ease;z-index:55;}
.to-top svg{width:20px;height:20px;}
.to-top.is-show{opacity:1;transform:translateY(0);pointer-events:auto;}
.to-top:hover{background:var(--gold-light);}

/* ---------- toast ---------- */
.toast{position:fixed;bottom:26px;right:50%;transform:translate(50%,18px);background:var(--bg-dark);color:var(--ivory);font-size:13.5px;font-weight:600;padding:14px 24px;border-radius:var(--radius);border:1px solid rgba(230,190,120,.25);box-shadow:0 16px 34px rgba(0,0,0,.35);opacity:0;pointer-events:none;transition:opacity .3s ease, transform .3s ease;z-index:80;}
.toast.is-show{opacity:1;transform:translate(50%,0);}

@media (max-width:980px){
  .craft-layout{grid-template-columns:1fr;gap:44px;}
  .craft-visual{height:340px;max-width:420px;margin:0 auto;}
  .craft-content .section-head{text-align:center !important;}
  .craft-list{text-align:center;}
  .craft-item{flex-direction:column;align-items:center;text-align:center;}
  .craft-item p{margin:0 auto;}
  .to-top{left:16px;bottom:16px;}
}
@media (max-width:560px){
  .cat-grid{grid-template-columns:repeat(2,1fr);}
  .prod-grid{grid-template-columns:1fr 1fr;gap:14px;}
  .prod-tabs{gap:16px;flex-wrap:wrap;font-size:12.5px;}
}

/* ---------- topbar: gold price ticker ---------- */
.topbar .wrap{gap:14px;}
.topbar .center{display:flex;align-items:center;gap:8px;font-weight:600;color:var(--gold-light);white-space:nowrap;}
.price-dot{width:6px;height:6px;border-radius:50%;background:#7BD98C;box-shadow:0 0 0 0 rgba(123,217,140,.6);animation:dotPulse 1.8s ease-in-out infinite;flex-shrink:0;}
@keyframes dotPulse{0%{box-shadow:0 0 0 0 rgba(123,217,140,.55);}70%{box-shadow:0 0 0 6px rgba(123,217,140,0);}100%{box-shadow:0 0 0 0 rgba(123,217,140,0);}}
.topbar .insta-link{display:flex;align-items:center;gap:6px;}
.topbar .insta-link svg{width:14px;height:14px;stroke:var(--ivory-2);}
@media (max-width:760px){
  .topbar .left{display:none;}
  .topbar .center{font-size:11.5px;}
}
@media (max-width:560px){
  .topbar .center span:last-child{display:none;}
}

/* ---------- header: extra icon buttons ---------- */
.ic-btn{background:none;border:none;padding:0;cursor:pointer;display:flex;}

/* ---------- trust bar ---------- */
.trustbar{background:var(--ivory);padding:26px 0;border-bottom:1px solid var(--line);}
.trustbar-grid{display:flex;justify-content:center;flex-wrap:wrap;gap:18px 40px;}
.trust-item{display:flex;align-items:center;gap:10px;font-size:13px;font-weight:600;color:var(--text-soft);flex:1;min-width:180px;justify-content:center;text-align:center;}
.trust-item svg{width:24px;height:24px;stroke:var(--gold-deep);flex-shrink:0;}

/* ---------- quick shop: budget chips ---------- */
.quickshop{padding:56px 0;background:var(--ivory-2);}
.qs-row{display:flex;flex-wrap:wrap;justify-content:center;gap:14px;margin-bottom:38px;}
.qs-row:last-child{margin-bottom:0;}
.chip{background:var(--ivory);border:1px solid var(--line);border-radius:999px;padding:10px 22px;font-size:13.5px;font-weight:600;color:var(--text-dark);cursor:pointer;transition:background .2s ease,border-color .2s ease,color .2s ease;}
.chip:hover{border-color:var(--gold);}
.chip.is-active{background:var(--bg-dark);color:var(--ivory);border-color:var(--bg-dark);}
.qs-label{text-align:center;font-size:12.5px;letter-spacing:.2em;font-weight:700;color:var(--gold-deep);margin-bottom:16px;}

/* ---------- product card: swatches / installment / ready badge / quick view ---------- */
.badge.ready{background:var(--emerald);color:var(--ivory);}
.swatch-row{display:flex;align-items:center;gap:8px;margin-bottom:12px;}
.swatch{width:16px;height:16px;border-radius:50%;border:1.5px solid rgba(0,0,0,.12);cursor:pointer;padding:0;transition:transform .15s ease,box-shadow .15s ease;}
.swatch.gold{background:#D8B36A;}
.swatch.white{background:#E7E4DC;}
.swatch.rose{background:#E4B6A6;}
.swatch.is-active{box-shadow:0 0 0 2px var(--ivory),0 0 0 3.5px var(--gold-deep);transform:scale(1.08);}
.installment{font-size:11px;color:var(--gold-deep);font-weight:600;margin-top:6px;}
.qv-btn{position:absolute;bottom:14px;left:50%;transform:translateX(-50%) translateY(10px);opacity:0;background:rgba(23,17,9,.85);color:var(--ivory);font-size:11.5px;font-weight:700;padding:8px 18px;border-radius:999px;border:none;cursor:pointer;transition:opacity .25s ease,transform .25s ease;z-index:3;white-space:nowrap;}
.prod-card:hover .qv-btn{opacity:1;transform:translateX(-50%) translateY(0);}

/* ---------- modal (calculator + quick view) ---------- */
.modal-backdrop{position:fixed;inset:0;background:rgba(10,7,3,.6);opacity:0;pointer-events:none;transition:opacity .3s ease;z-index:90;}
.modal-backdrop.is-show{opacity:1;pointer-events:auto;}
.modal{position:fixed;top:50%;right:50%;transform:translate(50%,-46%);width:92%;max-width:440px;max-height:86vh;overflow-y:auto;background:var(--ivory);border-radius:var(--radius);padding:34px 30px;box-shadow:0 30px 70px rgba(0,0,0,.4);z-index:91;opacity:0;pointer-events:none;transition:opacity .3s ease,transform .3s ease;}
.modal.is-show{opacity:1;pointer-events:auto;transform:translate(50%,-50%);}
.modal h3{font-size:20px;font-weight:800;margin-bottom:8px;}
.modal-sub{font-size:13px;color:var(--text-soft);margin-bottom:22px;}
.modal-close{position:absolute;top:16px;left:16px;width:32px;height:32px;border-radius:50%;background:var(--ivory-2);border:none;font-size:18px;line-height:1;cursor:pointer;color:var(--text-dark);}
.modal label{display:block;font-size:12.5px;font-weight:600;color:var(--text-soft);margin-bottom:14px;}
.modal input,.modal select{width:100%;margin-top:6px;padding:11px 14px;border:1px solid var(--line);border-radius:var(--radius);font-family:inherit;font-size:13.5px;background:var(--ivory);outline:none;}
.modal input:focus,.modal select:focus{border-color:var(--gold);}
.modal .btn{width:100%;justify-content:center;margin-top:6px;}
.calc-result{margin-top:22px;padding-top:18px;border-top:1px dashed var(--line);}
.calc-row{display:flex;justify-content:space-between;font-size:13px;color:var(--text-soft);margin-bottom:8px;}
.calc-row.calc-total{color:var(--text-dark);font-weight:800;font-size:15.5px;border-top:1px solid var(--line);padding-top:10px;margin-top:6px;}
.calc-note{font-size:11px;color:var(--text-soft);margin-top:18px;line-height:1.8;}
.qv-media{height:220px;border-radius:var(--radius);overflow:hidden;margin-bottom:18px;background:var(--bg-dark-2);cursor:zoom-in;transition:height .35s ease;}
.qv-media img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease;}
.qv-media.is-zoomed{height:420px;cursor:zoom-out;}
.qv-media.is-zoomed img{object-fit:contain;}
.qv-cat{font-size:11px;color:var(--gold-deep);letter-spacing:.1em;}
.qv-meta{display:flex;gap:10px;font-size:11.5px;color:var(--text-soft);margin:10px 0 16px;}
.qv-meta span{background:var(--ivory-2);border:1px solid var(--line);padding:2px 8px;border-radius:var(--radius);}
.qv-fee{font-size:12px;color:var(--text-soft);margin-bottom:10px;}
.qv-price{font-size:19px;font-weight:800;margin-bottom:18px;}
.qv-note{font-size:11.5px;color:var(--text-soft);margin-top:16px;line-height:1.8;}
.qv-note a{color:var(--gold-deep);text-decoration:underline;}

/* ---------- FAQ ---------- */
.faq{padding:90px 0;background:var(--ivory);}
.faq-list{max-width:760px;margin:0 auto;}
.faq-item{border-bottom:1px solid var(--line);}
.faq-q{width:100%;text-align:right;background:none;border:none;padding:20px 0;font-family:inherit;font-size:15px;font-weight:700;color:var(--text-dark);cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;}
.faq-q::after{content:"+";font-size:20px;font-weight:400;color:var(--gold-deep);flex-shrink:0;transition:transform .25s ease;}
.faq-q[aria-expanded="true"]::after{transform:rotate(45deg);}
.faq-a{max-height:0;overflow:hidden;transition:max-height .3s ease;}
.faq-a p{padding:0 0 20px;font-size:13.5px;color:var(--text-soft);max-width:640px;}
.faq-a a{color:var(--gold-deep);text-decoration:underline;}

/* ---------- magazine / blog teaser ---------- */
.mag{padding:90px 0;background:var(--ivory-2);}
.mag-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;}
.mag-card{background:var(--ivory);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;transition:box-shadow .25s ease,transform .25s ease;}
.mag-card:hover{box-shadow:0 20px 40px rgba(120,80,30,.16);transform:translateY(-4px);}
.mag-media{height:170px;overflow:hidden;}
.mag-media img{width:100%;height:100%;object-fit:cover;}
.mag-body{padding:20px;}
.mag-body span{font-size:11px;color:var(--gold-deep);letter-spacing:.08em;}
.mag-body h4{font-size:15.5px;font-weight:700;margin:8px 0 10px;}
.mag-body p{font-size:13px;color:var(--text-soft);margin-bottom:14px;}
.mag-body a{font-size:12.5px;font-weight:700;color:var(--text-dark);border-bottom:1px solid var(--gold);}

/* ---------- instagram CTA strip ---------- */
.insta-cta{background:var(--bg-dark);padding:34px 0;}
.insta-cta .wrap{display:flex;justify-content:center;align-items:center;gap:12px;flex-wrap:wrap;text-align:center;}
.insta-cta svg{width:22px;height:22px;stroke:var(--gold-light);flex-shrink:0;}
.insta-cta a{color:var(--ivory);font-size:14px;font-weight:600;}
.insta-cta a b{color:var(--gold-light);}

/* ---------- whatsapp floating button ---------- */
.tg-fab{position:fixed;bottom:26px;right:26px;width:52px;height:52px;border-radius:50%;background:#229ED9;display:flex;align-items:center;justify-content:center;box-shadow:0 12px 26px rgba(0,0,0,.3);z-index:55;transition:transform .2s ease;}
.tg-fab:hover{transform:translateY(-3px);}
.tg-fab svg{width:28px;height:28px;fill:#fff;}
@media (max-width:760px){.tg-fab{right:16px;bottom:16px;width:48px;height:48px;}}

@media (max-width:980px){
  .mag-grid{grid-template-columns:1fr;}
}

/* ---------- generic inner page hero (sub-pages) ---------- */
.page-hero{background:radial-gradient(80% 160% at 50% -40%, #2B1E10 0%, var(--bg-dark) 60%);color:var(--ivory);padding:56px 0;text-align:center;}
.page-hero .eyebrow{color:var(--gold-light);font-size:12.5px;letter-spacing:.3em;font-weight:600;display:block;margin-bottom:14px;}
.page-hero h1{font-family:var(--font-display);font-size:30px;font-weight:700;}
.page-hero .crumbs{margin-top:14px;font-size:12.5px;color:#CBBFA0;}
.page-hero .crumbs a{color:#CBBFA0;text-decoration:underline;}

/* ---------- generic content page ---------- */
.page-content{padding:70px 0 90px;background:var(--ivory);}
.page-content .inner{max-width:760px;margin:0 auto;}
.page-content h2{font-family:var(--font-display);font-size:22px;font-weight:700;margin:36px 0 14px;}
.page-content h2:first-child{margin-top:0;}
.page-content p{font-size:14.5px;color:var(--text-soft);margin-bottom:16px;}
.page-content ul.plain{margin:0 0 16px;padding-inline-start:22px;list-style:disc;}
.page-content ul.plain li{font-size:14.5px;color:var(--text-soft);margin-bottom:8px;}
.page-content table{width:100%;border-collapse:collapse;margin:16px 0 26px;font-size:13.5px;}
.page-content table th,.page-content table td{border:1px solid var(--line);padding:10px 12px;text-align:center;}
.page-content table th{background:var(--ivory-2);font-weight:700;}
.page-content .note-box{background:var(--ivory-2);border:1px solid var(--line);border-radius:var(--radius);padding:18px 20px;font-size:13.5px;color:var(--text-soft);margin:20px 0;}
.page-content .note-box b{color:var(--text-dark);}
.page-content form.simple-form{display:flex;flex-direction:column;gap:16px;max-width:480px;margin-top:24px;}
.page-content form.simple-form label{font-size:13px;font-weight:600;color:var(--text-dark);}
.page-content form.simple-form input,.page-content form.simple-form textarea,.page-content form.simple-form select{margin-top:6px;width:100%;padding:12px 14px;border:1px solid var(--line);border-radius:var(--radius);font-family:inherit;font-size:13.5px;background:var(--ivory-2);outline:none;}
.page-content form.simple-form input:focus,.page-content form.simple-form textarea:focus{border-color:var(--gold);}
.page-content .form-msg{font-size:13px;color:var(--gold-deep);margin-top:4px;display:none;}
.page-content .form-msg.is-show{display:block;}

/* ---------- article page ---------- */
.article-body{max-width:720px;margin:0 auto;}
.article-body h2{font-family:var(--font-display);font-size:20px;font-weight:700;margin:32px 0 12px;}
.article-body p{font-size:14.5px;color:var(--text-soft);margin-bottom:16px;line-height:1.9;}
.article-cover{width:100%;aspect-ratio:16/8;object-fit:cover;border-radius:var(--radius);margin-bottom:30px;}
.article-meta{font-size:12px;color:var(--gold-deep);letter-spacing:.08em;margin-bottom:10px;}

/* ---------- blog index ---------- */
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;}
@media (max-width:980px){.blog-grid{grid-template-columns:1fr;}}

/* ---------- order tracking ---------- */
.track-result{margin-top:24px;padding:18px 20px;border-radius:var(--radius);border:1px solid var(--line);background:var(--ivory-2);font-size:13.5px;color:var(--text-soft);display:none;}
.track-result.is-show{display:block;}
