:root{
  --ink-deep:#08201a;
  --ink:#0d3226;
  --ink-soft:#123a2d;
  --sage:#4d7462;
  --gold:#c9a24a;
  --gold-bright:#e7c877;
  --gold-dim:#8a723a;
  --cream:#f3ead9;
  --cream-dim:#cdbfa0;
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  background:var(--ink-deep);
  color:var(--cream);
  font-family:'Vazirmatn',sans-serif;
  overflow-x:hidden;
  position:relative;
}
body::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:0;
  background-image:
    radial-gradient(circle at 15% 10%, rgba(201,162,74,0.06), transparent 40%),
    radial-gradient(circle at 85% 80%, rgba(201,162,74,0.05), transparent 45%);
}
.wrap{max-width:1180px;margin:0 auto;padding:0 32px;position:relative;z-index:1;}

/* girih pattern strip */
.girih-divider{
  width:100%;
  height:14px;
  background-image: repeating-linear-gradient(135deg, transparent 0 8px, rgba(201,162,74,0.35) 8px 9px, transparent 9px 18px),
                     repeating-linear-gradient(45deg, transparent 0 8px, rgba(201,162,74,0.35) 8px 9px, transparent 9px 18px);
  opacity:.5;
}

/* HEADER */
header{
  position:sticky; top:0; z-index:50;
  background:rgba(8,32,26,0.9);
  backdrop-filter:blur(12px);
  box-shadow:0 8px 24px rgba(0,0,0,0.25);
}
header::after{
  content:"";
  display:block; height:1px; width:100%;
  background:linear-gradient(90deg, transparent, rgba(201,162,74,0.45) 20%, rgba(201,162,74,0.45) 80%, transparent);
}
.nav{
  display:flex; align-items:center; justify-content:space-between;
  padding:13px 0;
}
.brand{display:flex; align-items:center; gap:12px; text-decoration:none;}
.brand img{
  height:56px; width:auto; display:block;
  filter:drop-shadow(0 4px 10px rgba(0,0,0,0.4));
  transition:filter .25s, transform .25s;
}
.brand:hover img{transform:translateY(-1px); filter:drop-shadow(0 6px 14px rgba(0,0,0,0.5));}
.brand-text{display:flex; flex-direction:column; line-height:1.15;}
.brand-text .en{font-family:'Amiri',serif; font-size:22px; letter-spacing:1px; color:var(--gold-bright);}
.brand-text .fa{font-size:11px; color:var(--cream-dim); letter-spacing:2px;}
nav ul{display:flex; gap:34px; list-style:none;}
nav a{
  position:relative;
  color:var(--cream-dim); text-decoration:none; font-size:15px; font-weight:500;
  padding-bottom:4px; transition:color .25s;
}
nav a::after{
  content:""; position:absolute; right:0; bottom:0; height:1px; width:0;
  background:var(--gold-bright); transition:width .25s ease;
}
nav a:hover{color:var(--gold-bright);}
nav a:hover::after{width:100%;}
.nav-cta{
  position:relative; overflow:hidden;
  border:1px solid var(--gold-dim); color:var(--gold-bright);
  padding:10px 22px; border-radius:3px; font-size:14px; font-weight:600; text-decoration:none;
  letter-spacing:.3px;
  transition:all .25s;
}
.nav-cta:hover{
  background:var(--gold-bright); color:var(--ink-deep); border-color:var(--gold-bright);
  box-shadow:0 6px 16px rgba(201,162,74,0.3); transform:translateY(-1px);
}

/* Mobile nav toggle */
.nav-toggle{display:none; background:none; border:1px solid var(--gold-dim); color:var(--gold-bright); font-size:20px; padding:6px 12px; border-radius:2px; cursor:pointer; transition:border-color .2s;}
.nav-toggle:hover{border-color:var(--gold-bright);}

/* HERO */
.hero{
  padding:96px 0 80px;
}
.hero-inner{
  display:grid;
  grid-template-columns:1.1fr 0.9fr;
  gap:60px;
  align-items:center;
}
.eyebrow{
  display:inline-flex; align-items:center; gap:10px;
  color:var(--gold); font-size:13px; letter-spacing:3px; margin-bottom:26px;
}
.eyebrow::before{content:"";width:28px;height:1px;background:var(--gold);}
h1{
  font-family:'Amiri',serif;
  font-size:56px;
  line-height:1.35;
  color:var(--cream);
  margin-bottom:26px;
  font-weight:700;
}
h1 span{color:var(--gold-bright);}
.hero p.lead{
  font-size:17px; line-height:2; color:var(--cream-dim); max-width:520px; margin-bottom:38px;
}
.cta-row{display:flex; gap:16px; flex-wrap:wrap;}
.btn{
  padding:15px 32px; border-radius:2px; font-size:15px; font-weight:600;
  text-decoration:none; display:inline-block; transition:all .25s;
  border:1px solid transparent; cursor:pointer;
}
.btn-primary{background:var(--gold-bright); color:var(--ink-deep);}
.btn-primary:hover{background:var(--gold); transform:translateY(-2px);}
.btn-ghost{border-color:var(--gold-dim); color:var(--cream);}
.btn-ghost:hover{border-color:var(--gold-bright); color:var(--gold-bright);}
#a123{
    background:var(--gold-bright); color:var(--ink-deep);

}
.hero-emblem{
  position:relative;
  display:flex; align-items:center; justify-content:center;
}
.hero-emblem img{
  width:100%; max-width:420px;
  filter:drop-shadow(0 30px 60px rgba(0,0,0,0.55));
}

.stat-row{
  display:flex; gap:0; margin-top:20px; border-top:1px solid rgba(201,162,74,0.2); padding-top:28px;
}
.stat{flex:1; padding-left:28px; border-left:1px solid rgba(201,162,74,0.18); text-align:center;}
.stat:first-child{padding-left:0;}
.stat .num{font-family:'Amiri',serif; font-size:30px; color:var(--gold-bright);}
.stat .lbl{font-size:12.5px; color:var(--cream-dim); margin-top:4px;}

/* SECTION HEADS */
.section{padding:90px 0;}
.section-alt{background:var(--ink-soft); border-top:1px solid rgba(201,162,74,0.15); border-bottom:1px solid rgba(201,162,74,0.15);}
.section-head{max-width:640px; margin:0 auto 56px; text-align:center;}
.section-head .eyebrow{justify-content:center;}
.section-head h2{
  font-family:'Amiri',serif; font-size:38px; color:var(--cream); margin-bottom:16px; font-weight:700;
}
.section-head p{color:var(--cream-dim); font-size:15.5px; line-height:1.9;}

/* PRODUCT CARDS */
.grid-3{display:grid; grid-template-columns:repeat(3,1fr); gap:28px;}
.card{
  background:linear-gradient(160deg, var(--ink-soft), var(--ink));
  border:1px solid rgba(201,162,74,0.18);
  border-radius:4px;
  padding:36px 30px;
  position:relative;
  transition:transform .3s, border-color .3s;
}
.card:hover{transform:translateY(-6px); border-color:rgba(201,162,74,0.5);}
.card .icon{
  width:56px;height:56px; margin-bottom:22px;
  border:1px solid var(--gold-dim); border-radius:50%;
  display:flex; align-items:center; justify-content:center;
}
.card .icon svg{width:26px;height:26px; stroke:var(--gold-bright); fill:none;}
.card h3{font-size:19px; color:var(--cream); margin-bottom:12px; font-weight:600;}
.card p{font-size:14.5px; color:var(--cream-dim); line-height:1.9;}
.card a.more{display:inline-block; margin-top:18px; color:var(--gold-bright); font-size:13.5px; text-decoration:none; border-bottom:1px solid var(--gold-dim);}

/* PROCESS - real sequence, numbered */
.process{
  display:grid; grid-template-columns:repeat(4,1fr); gap:0; position:relative;
}
.process::before{
  content:""; position:absolute; top:26px; right:12%; left:12%; height:1px;
  background:repeating-linear-gradient(90deg, var(--gold-dim) 0 8px, transparent 8px 14px);
}
.proc-step{text-align:center; padding:0 16px; position:relative;}
.proc-step .n{
  width:54px;height:54px; border-radius:50%; background:var(--ink-deep);
  border:1px solid var(--gold-bright); color:var(--gold-bright);
  font-family:'Amiri',serif; font-size:20px;
  display:flex; align-items:center; justify-content:center; margin:0 auto 22px;
  position:relative; z-index:2;
}
.proc-step h4{font-size:16px; margin-bottom:10px; color:var(--cream);}
.proc-step p{font-size:13.5px; color:var(--cream-dim); line-height:1.8;}

/* GALLERY */
.gallery-grid{display:grid; grid-template-columns:repeat(4,1fr); grid-auto-rows:150px; gap:14px;}
.g-item{
  border-radius:3px; position:relative; overflow:hidden;
  border:1px solid rgba(201,162,74,0.2);
  display:flex; flex-direction:column; justify-content:flex-end; padding:16px;
  font-size:13px; color:var(--cream-dim);
  cursor:pointer;
}
.g-item span{position:relative; z-index:2; font-weight:600; color:var(--cream);}
.g-item .icon-big{
  position:absolute; top:50%; left:50%;
  transform:translate(-50%,-50%);
  width:76px; height:76px;
  stroke:var(--gold-bright); fill:none; opacity:.3;
  transition:opacity .3s, transform .3s;
}
.g-item:hover .icon-big{opacity:.5; transform:translate(-50%,-50%) scale(1.08);}
.g-item.tall{grid-row:span 2;}
.g1{background:linear-gradient(145deg,#1c4a36,#0c2a20);}
.g2{background:linear-gradient(145deg,#2b5940,#123a2a);}
.g3{background:linear-gradient(145deg,#0f3527,#173f2d);}
.g4{background:linear-gradient(145deg,#204a35,#0a2018);}
.g5{background:linear-gradient(145deg,#173d2c,#265c42);}
.g6{background:linear-gradient(145deg,#0c2a20,#1f4c38);}
.g7{background:linear-gradient(145deg,#265c42,#0f3527);}
.g8{background:linear-gradient(145deg,#123a2a,#2b5940);}

/* QUOTE / CTA STRIP */
.cta-strip{
  background:linear-gradient(120deg, var(--ink-soft), var(--ink));
  border-top:1px solid rgba(201,162,74,0.25);
  border-bottom:1px solid rgba(201,162,74,0.25);
  padding:70px 0;
  text-align:center;
}
.cta-strip h2{font-family:'Amiri',serif; font-size:32px; margin-bottom:16px;}
.cta-strip p{color:var(--cream-dim); margin-bottom:32px; font-size:15px;}

/* QUOTE FORM MODAL */
.modal-overlay{
  display:none;
  position:fixed; inset:0; z-index:100;
  background:rgba(4,16,13,0.75);
  align-items:center; justify-content:center;
  padding:20px;
}
.modal-overlay.open{display:flex;}
.modal{
  background:var(--ink-soft);
  border:1px solid rgba(201,162,74,0.35);
  border-radius:6px;
  padding:40px;
  max-width:460px; width:100%;
  position:relative;
}
.modal h3{font-family:'Amiri',serif; font-size:24px; margin-bottom:8px; color:var(--gold-bright);}
.modal p.sub{color:var(--cream-dim); font-size:13.5px; margin-bottom:24px;}
.modal-close{
  position:absolute; top:16px; left:16px;
  background:none; border:none; color:var(--cream-dim); font-size:22px; cursor:pointer; line-height:1;
}
.modal-close:hover{color:var(--gold-bright);}
.form-group{margin-bottom:16px;}
.form-group label{display:block; font-size:13px; color:var(--cream-dim); margin-bottom:6px;}
.form-group input, .form-group textarea{
  width:100%; padding:11px 14px; background:var(--ink-deep);
  border:1px solid rgba(201,162,74,0.3); border-radius:3px; color:var(--cream);
  font-family:'Vazirmatn',sans-serif; font-size:14px;
}
.form-group input:focus, .form-group textarea:focus{
  outline:none; border-color:var(--gold-bright);
}
.form-group textarea{resize:vertical; min-height:80px;}
.form-msg{font-size:13.5px; margin-top:14px; color:var(--gold-bright); display:none;}
.form-msg.show{display:block;}

/* FOOTER */
footer{padding:70px 0 34px;}
.foot-grid{display:grid; grid-template-columns:1.4fr 1fr 1fr 1fr; gap:40px; margin-bottom:50px;}
.foot-brand .brand-text .en{font-size:26px;}
.foot-brand p{color:var(--cream-dim); font-size:13.5px; line-height:1.9; margin-top:16px; max-width:280px;}
.foot-col h5{color:var(--gold-bright); font-size:14px; margin-bottom:18px; letter-spacing:1px;}
.foot-col ul{list-style:none;}
.foot-col li{margin-bottom:11px;}
.foot-col a{color:var(--cream-dim); text-decoration:none; font-size:14px;}
.foot-col a:hover{color:var(--gold-bright);}
.foot-bottom{
  display:flex; justify-content:space-between; align-items:center;
  padding-top:26px; border-top:1px solid rgba(201,162,74,0.15);
  font-size:12.5px; color:var(--cream-dim);
}
.designer-credit-link{color:var(--gold-dim); text-decoration:none; border-bottom:1px dotted var(--gold-dim); transition:color .2s, border-color .2s;}
.designer-credit-link:hover{color:var(--gold-bright); border-color:var(--gold-bright);}

/* scroll reveal */
.reveal{opacity:0; transform:translateY(24px); transition:opacity .7s ease, transform .7s ease;}
.reveal.visible{opacity:1; transform:translateY(0);}

@media(max-width:920px){
  .hero-inner{grid-template-columns:1fr; text-align:center;}
  .hero-emblem{order:-1; margin-bottom:12px;}
  .hero-emblem img{max-width:220px;}
  .hero p.lead{margin:0 auto 38px;}
  .cta-row{justify-content:center;}
  .stat-row{justify-content:center; flex-wrap:wrap;}
  .stat{flex:1 1 45%; margin-bottom:16px;}

  /* --- هدر موبایل: همبرگری راست / لوگو وسط / درخواست قیمت چپ --- */
  .nav{
    display:grid;
    grid-template-columns:auto 1fr auto;
    grid-template-rows:auto;
    align-items:center;
    column-gap:10px;
  }
  .nav > nav{ display:contents; }
  .nav-toggle{
    grid-column:1; grid-row:1; justify-self:start;
    display:block;
  }
  .brand{
    grid-column:2; grid-row:1; justify-self:center;
    text-align:center;
  }
  .brand-text{align-items:center;}
  .nav-cta{
    grid-column:3; grid-row:1; justify-self:end;
    white-space:nowrap; font-size:12.5px; padding:8px 14px;
  }

  nav ul{
    position:absolute; top:100%; right:0; left:0;
    background:var(--ink-deep); flex-direction:column; gap:0;
    border-bottom:1px solid rgba(201,162,74,0.25);
    display:none;
  }
  nav ul.open{display:flex;}
  nav ul li{width:100%; text-align:center; padding:14px 0; border-top:1px solid rgba(201,162,74,0.1);}
  .grid-3{grid-template-columns:1fr;}
  .process{grid-template-columns:1fr 1fr; row-gap:40px;}
  .process::before{display:none;}
  .gallery-grid{grid-template-columns:1fr 1fr;}
  .foot-grid{grid-template-columns:1fr 1fr; row-gap:36px;}
  h1{font-size:38px;}
}

@media(max-width:420px){
  .brand-text .fa{display:none;}
  .brand img{height:40px;}
}

@media(prefers-reduced-motion: reduce){
  html{scroll-behavior:auto;}
  .reveal{transition:none; opacity:1; transform:none;}
}

/* ---------- PAGE HEADER (about / products) ---------- */
.page-header{
  padding:64px 0 50px;
  text-align:center;
  border-bottom:1px solid rgba(201,162,74,0.15);
}
.breadcrumb{
  font-size:13px; color:var(--cream-dim); margin-bottom:18px;
}
.breadcrumb a{color:var(--gold-bright); text-decoration:none;}
.breadcrumb a:hover{text-decoration:underline;}
.page-header h1{font-size:42px; margin-bottom:14px;}
.page-header p{color:var(--cream-dim); font-size:15.5px; max-width:560px; margin:0 auto; line-height:1.9;}

/* ---------- TIMELINE (about page) ---------- */
.timeline{
  position:relative;
  max-width:820px; margin:0 auto;
  padding-right:2px;
}
.timeline::before{
  content:"";
  position:absolute; top:0; bottom:0; right:29px;
  width:1px;
  background:repeating-linear-gradient(180deg, var(--gold-dim) 0 8px, transparent 8px 14px);
}
.timeline-item{
  position:relative;
  padding-right:76px;
  padding-bottom:44px;
}
.timeline-item:last-child{padding-bottom:0;}
.timeline-item .dot{
  position:absolute; right:12px; top:2px;
  width:36px; height:36px; border-radius:50%;
  background:var(--ink-deep); border:1px solid var(--gold-bright);
  color:var(--gold-bright); font-family:'Amiri',serif; font-size:13px;
  display:flex; align-items:center; justify-content:center;
  z-index:2;
}
.timeline-item h4{font-size:18px; color:var(--cream); margin-bottom:8px;}
.timeline-item p{font-size:14.5px; color:var(--cream-dim); line-height:1.9;}

/* ---------- VALUES / CERT BADGES ---------- */
.badge-row{display:flex; flex-wrap:wrap; gap:16px; justify-content:center;}
.badge{
  display:flex; align-items:center; gap:10px;
  border:1px solid rgba(201,162,74,0.3); border-radius:30px;
  padding:12px 22px; font-size:14px; color:var(--cream-dim);
}
.badge svg{width:18px;height:18px; stroke:var(--gold-bright); fill:none; flex-shrink:0;}

/* ---------- FILTER TABS → اسلایدر انتخاب دسته (عکس + عنوان) ---------- */
.filter-slider-viewport{
  overflow-x:auto; overflow-y:hidden;
  cursor:grab; user-select:none;
  scroll-snap-type:x proximity;
  scrollbar-width:none; -ms-overflow-style:none;
  margin-bottom:44px;
  -webkit-mask-image:linear-gradient(90deg, transparent 0, #000 3%, #000 97%, transparent 100%);
  mask-image:linear-gradient(90deg, transparent 0, #000 3%, #000 97%, transparent 100%);
}
.filter-slider-viewport::-webkit-scrollbar{display:none;}
.filter-slider-viewport.dragging{cursor:grabbing;}
.filter-tabs{
  display:flex; gap:20px; width:max-content;
  padding:6px 4px 10px;
}
.filter-tab{
  scroll-snap-align:start;
  display:flex; flex-direction:column; align-items:center; gap:11px;
  border:none; background:transparent; color:var(--cream-dim);
  padding:0; width:92px; flex-shrink:0;
  font-family:'Vazirmatn',sans-serif; cursor:pointer;
  pointer-events:auto;
}
.tab-photo{
  width:90px; height:90px; border-radius:18px; flex-shrink:0;
  display:flex; align-items:center; justify-content:center;
  border:1.5px solid rgba(201,162,74,0.3);
  position:relative; overflow:hidden;
  transition:border-color .2s, transform .2s, box-shadow .2s;
}
.tab-photo::after{
  content:""; position:absolute; inset:0;
  background:linear-gradient(150deg, rgba(255,255,255,0.08), transparent 50%);
  pointer-events:none;
}
.tab-photo svg{
  position:relative; z-index:1;
  width:36px; height:36px; stroke:var(--gold-bright); fill:none;
  stroke-width:1.4; opacity:.95;
}
.tab-label{font-size:12.5px; line-height:1.4; text-align:center; transition:color .2s;}
.filter-tab:hover .tab-photo{border-color:var(--gold-bright); transform:translateY(-3px);}
.filter-tab:hover .tab-label{color:var(--cream);}
.filter-tab.active .tab-photo{
  border-color:var(--gold-bright);
  box-shadow:0 0 0 3px rgba(201,162,74,0.18), 0 10px 20px rgba(0,0,0,0.4);
  transform:translateY(-3px);
}
.filter-tab.active .tab-photo svg{opacity:1;}
.filter-tab.active .tab-label{color:var(--gold-bright); font-weight:700;}

@media(max-width:600px){
  .filter-slider-viewport{margin:0 -18px 32px; padding:0 18px;}
  .tab-photo{width:76px; height:76px; border-radius:15px;}
  .tab-photo svg{width:30px; height:30px;}
  .filter-tab{width:80px;}
  .tab-label{font-size:11.5px;}
}

/* ---------- PRODUCT DETAIL CARD ---------- */
.product-card{
  background:linear-gradient(160deg, var(--ink-soft), var(--ink));
  border:1px solid rgba(201,162,74,0.18);
  border-radius:5px;
  overflow:hidden;
  transition:transform .3s, border-color .3s;
}
.product-card:hover{transform:translateY(-6px); border-color:rgba(201,162,74,0.5);}
.product-card .thumb{
  height:170px;
  display:flex; align-items:center; justify-content:center;
  position:relative;
}
.product-card .thumb svg{width:64px;height:64px; stroke:var(--gold-bright); fill:none; opacity:.85;}
.product-card .tag{
  position:absolute; top:14px; left:14px;
  font-size:11.5px; letter-spacing:1px; color:var(--gold-bright);
  border:1px solid var(--gold-dim); border-radius:20px; padding:4px 12px;
  background:rgba(8,32,26,0.6);
}
.product-card .body{padding:26px 26px 30px;}
.product-card h3{font-size:19px; color:var(--cream); margin-bottom:10px;}
.product-card p.desc{font-size:14px; color:var(--cream-dim); line-height:1.85; margin-bottom:18px;}
.spec-list{list-style:none; margin-bottom:20px;}
.spec-list li{
  display:flex; justify-content:space-between;
  font-size:13px; color:var(--cream-dim);
  padding:8px 0; border-top:1px solid rgba(201,162,74,0.12);
}
.spec-list li span:first-child{color:var(--gold-bright);}
.product-card .card-cta{
  display:block; text-align:center;
  border:1px solid var(--gold-dim); border-radius:2px;
  padding:11px; font-size:14px; color:var(--cream);
  text-decoration:none; transition:all .2s;
  cursor:pointer;
}
.product-card .card-cta:hover{background:var(--gold-bright); color:var(--ink-deep); border-color:var(--gold-bright);}

.products-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:28px;}
.product-card.hidden{display:none;}

@media(max-width:920px){
  .products-grid{grid-template-columns:1fr;}
  .timeline-item{padding-right:64px;}
}

/* ---------- CARD DUAL BUTTONS (products page) ---------- */
.card-cta-row{display:flex; gap:10px;}
.card-cta-row .card-cta{flex:1;}
.card-cta-outline{
  border:1px solid var(--gold-dim);
  color:var(--gold-bright);
  background:transparent;
}
.card-cta-outline:hover{background:rgba(201,162,74,0.12); border-color:var(--gold-bright);}

/* ---------- PRODUCT DETAIL MODAL ---------- */
.detail-modal .modal{
  max-width:720px;
  max-height:88vh;
  overflow-y:auto;
}
.detail-modal .modal::-webkit-scrollbar{width:6px;}
.detail-modal .modal::-webkit-scrollbar-thumb{background:rgba(201,162,74,0.35); border-radius:6px;}
.detail-header{display:flex; align-items:flex-start; gap:16px; margin-bottom:22px;}
.detail-header .thumb-mini{
  width:64px; height:64px; border-radius:6px; flex-shrink:0;
  display:flex; align-items:center; justify-content:center;
  border:1px solid rgba(201,162,74,0.25);
}
.detail-header .thumb-mini svg{width:30px;height:30px; stroke:var(--gold-bright); fill:none;}
.detail-header h3{font-family:'Amiri',serif; font-size:22px; color:var(--gold-bright); margin-bottom:4px;}
.detail-header p{font-size:13.5px; color:var(--cream-dim); line-height:1.8;}

.size-select-label{font-size:13px; color:var(--cream-dim); margin-bottom:10px; display:block;}
.size-options{display:flex; flex-wrap:wrap; gap:10px; margin-bottom:24px;}
.size-option{
  border:1px solid var(--gold-dim); background:transparent; color:var(--cream);
  padding:9px 18px; border-radius:6px; font-size:13.5px; cursor:pointer;
  font-family:'Vazirmatn',sans-serif; transition:all .2s;
}
.size-option:hover{border-color:var(--gold-bright);}
.size-option.active{background:var(--gold-bright); color:var(--ink-deep); border-color:var(--gold-bright); font-weight:600;}

.size-summary{
  display:grid; grid-template-columns:repeat(4,1fr); gap:12px;
  background:var(--ink-deep); border:1px solid rgba(201,162,74,0.2); border-radius:6px;
  padding:18px; margin-bottom:26px;
}
.size-summary .stat-box{text-align:center;}
.size-summary .stat-box .val{font-family:'Amiri',serif; font-size:20px; color:var(--gold-bright); margin-bottom:4px;}
.size-summary .stat-box .lbl{font-size:11.5px; color:var(--cream-dim);}

.specs-table-wrap{overflow-x:auto; margin-bottom:22px; border:1px solid rgba(201,162,74,0.2); border-radius:6px;}
table.specs-table{width:100%; border-collapse:collapse; font-size:13px; white-space:nowrap;}
table.specs-table th{
  background:var(--ink-deep); color:var(--gold-bright); font-weight:600;
  padding:12px 14px; text-align:center; border-bottom:1px solid rgba(201,162,74,0.25);
}
table.specs-table td{
  padding:11px 14px; text-align:center; color:var(--cream-dim);
  border-bottom:1px solid rgba(201,162,74,0.1);
}
table.specs-table tr:last-child td{border-bottom:none;}
table.specs-table tr.row-active td{background:rgba(201,162,74,0.1); color:var(--cream); font-weight:600;}
table.specs-table tr{cursor:pointer; transition:background .15s;}
table.specs-table tr:hover td{background:rgba(201,162,74,0.06);}

.detail-note{font-size:12.5px; color:var(--cream-dim); line-height:1.8; margin-bottom:22px; opacity:.85;}

@media(max-width:600px){
  .size-summary{grid-template-columns:1fr 1fr;}
  table.specs-table{font-size:12px;}
}

/* ---------- DEDICATED PRODUCT PAGE ---------- */
.product-hero{
  display:grid; grid-template-columns:260px 1fr; gap:44px; align-items:center;
}
.product-hero-visual{
  width:260px; height:260px; border-radius:8px;
  background:linear-gradient(160deg, var(--ink-soft), var(--ink-deep));
  border:1px solid rgba(201,162,74,0.25);
  display:flex; align-items:center; justify-content:center;
}
.product-hero-visual svg{width:110px; height:110px; stroke:var(--gold-bright); fill:none;}
.product-hero-tag{display:inline-block; margin-bottom:16px;}
.product-hero-info h1{font-size:34px; margin-bottom:16px;}
.product-hero-desc{color:var(--cream-dim); font-size:15.5px; line-height:1.9; max-width:560px; margin-bottom:28px;}

@media(max-width:780px){
  .product-hero{grid-template-columns:1fr; text-align:center;}
  .product-hero-visual{margin:0 auto;}
  .product-hero-desc{margin-left:auto; margin-right:auto;}
  .product-hero .cta-row{justify-content:center;}
}

/* ================================================================
   صفحه محصول (طرح جدید مشابه فروشگاه‌های تخصصی) — دو ستونه:
   ستون راست: عنوان/قیمت/جدول مشخصات/تصویر — ستون چپ: پیکربندی سفارش
   ================================================================ */
.product-layout{
  display:grid;
  grid-template-columns:1fr 320px;
  gap:28px;
  align-items:start;
}

/* ---------- ستون سمت راست: اطلاعات محصول ---------- */
.product-main-title{font-size:30px; margin-bottom:18px;}
.product-price-row{
  display:flex; align-items:baseline; gap:10px;
  margin-bottom:26px; padding-bottom:22px;
  border-bottom:1px solid rgba(201,162,74,0.15);
}
.product-price-row .lbl{font-size:14px; color:var(--cream-dim);}
.product-price-row .val{font-family:'Amiri',serif; font-size:28px; color:var(--gold-bright);}
.product-price-row .unit{font-size:13px; color:var(--cream-dim);}

.product-info-row{
  display:grid;
  grid-template-columns:220px 1fr;
  gap:30px;
  align-items:start;
}
.product-image-panel{
  border-radius:8px;
  border:1px solid rgba(201,162,74,0.2);
  background:linear-gradient(160deg, var(--ink-soft), var(--ink-deep));
  min-height:220px;
  display:flex; align-items:center; justify-content:center;
  padding:20px;
}
.product-image-panel svg{width:100%; height:auto; filter:drop-shadow(0 18px 26px rgba(0,0,0,0.5));}

/* ---------- گالری تصویر محصول: تصویر اصلی بزرگ + اسلایدر تامبنیل ---------- */
.product-gallery{margin-bottom:8px;}
.product-image-panel--main{
  min-height:460px;
  padding:36px;
  transition:opacity .18s;
}
.product-image-panel--main svg{max-width:340px; margin:0 auto;}
.product-image-panel--main.fading{opacity:.35;}
.gallery-slide{display:none; width:100%;}
.gallery-slide.active{display:block;}

.gallery-thumbs-viewport{
  margin-top:16px;
  overflow-x:auto;
  scrollbar-width:none; -ms-overflow-style:none;
}
.gallery-thumbs-viewport::-webkit-scrollbar{display:none;}
.gallery-thumbs{
  display:flex; gap:14px; padding:2px;
}
.gallery-thumb{
  flex-shrink:0;
  width:96px; height:96px;
  border-radius:8px;
  border:1.5px solid rgba(201,162,74,0.25);
  background:linear-gradient(160deg, var(--ink-soft), var(--ink-deep));
  display:flex; align-items:center; justify-content:center;
  padding:12px;
  cursor:pointer;
  transition:border-color .2s, transform .2s, background .2s;
}
.gallery-thumb svg{width:100%; height:100%;}
.gallery-thumb:hover{border-color:var(--gold-dim); transform:translateY(-2px);}
.gallery-thumb.active{border-color:var(--gold-bright); background:linear-gradient(160deg, var(--ink), var(--ink-soft));}
.gallery-thumb .thumb-cap{display:none;}

.detail-block-head{margin:36px 0 18px;}
.detail-block-head .eyebrow{font-size:12px; letter-spacing:1.5px; color:var(--gold-bright); margin-bottom:6px;}
.detail-block-head h3{font-size:19px; color:var(--cream);}

table.detail-specs-table{width:100%; border-collapse:collapse; font-size:13.5px;}
table.detail-specs-table td{
  padding:13px 16px; border-bottom:1px solid rgba(201,162,74,0.12);
  color:var(--cream-dim);
}
table.detail-specs-table tr:nth-child(odd) td{background:rgba(201,162,74,0.045);}
table.detail-specs-table tr:last-child td{border-bottom:none;}
table.detail-specs-table td.label-cell{
  color:var(--gold-bright); font-weight:600; width:34%; text-align:right;
}
table.detail-specs-table td.value-cell{color:var(--cream); text-align:right;}

/* ---------- ستون سمت چپ: جعبه پیکربندی سفارش ---------- */
.order-box{
  position:sticky; top:100px;
  background:linear-gradient(160deg, var(--ink-soft), var(--ink));
  border:1px solid rgba(201,162,74,0.22);
  border-radius:8px;
  padding:28px 24px;
}
.order-box .field-label{font-size:13.5px; color:var(--cream); margin-bottom:14px; display:block; font-weight:600;}
.order-box .field-block{margin-bottom:26px;}

.height-chips{display:flex; flex-wrap:wrap; gap:10px;}
.height-chip{
  display:flex; flex-direction:column; align-items:center; gap:6px;
  border:1.5px solid var(--gold-dim); border-radius:6px;
  padding:10px 14px; cursor:pointer; background:transparent;
  font-family:'Vazirmatn',sans-serif; transition:all .2s;
}
.height-chip .h-val{font-size:13px; color:var(--gold-bright); font-weight:700;}
.height-chip .h-lbl{font-size:11px; color:var(--cream-dim);}
.height-chip:hover{border-color:var(--gold-bright);}
.height-chip.active{background:rgba(201,162,74,0.15); border-color:var(--gold-bright);}
.height-chip.active .h-val{color:var(--cream);}

.carton-box{
  display:inline-flex; flex-direction:column; align-items:center; gap:8px;
  border:1.5px solid var(--gold-dim); border-radius:6px; padding:14px 22px;
}
.carton-box svg{width:34px; height:34px; stroke:var(--gold-bright); fill:none;}
.carton-box .c-lbl{font-size:12.5px; color:var(--cream-dim);}

.qty-row{display:flex; align-items:center; gap:14px; margin-bottom:8px;}
.qty-stepper{
  display:flex; align-items:center; border:1px solid var(--gold-dim); border-radius:6px; overflow:hidden;
}
.qty-stepper button{
  width:34px; height:34px; background:transparent; border:none; color:var(--gold-bright);
  font-size:18px; cursor:pointer; transition:background .2s;
}
.qty-stepper button:hover{background:rgba(201,162,74,0.15);}
.qty-stepper input{
  width:44px; text-align:center; border:none; background:transparent; color:var(--cream);
  font-family:'Vazirmatn',sans-serif; font-size:14px;
}
.qty-total-line{font-size:13px; color:var(--cream-dim);}
.qty-total-line b{color:var(--gold-bright); font-weight:700;}

.order-total-row{
  display:flex; justify-content:space-between; align-items:baseline;
  padding:16px 0; margin-bottom:18px; border-top:1px solid rgba(201,162,74,0.15);
}
.order-total-row .lbl{font-size:13.5px; color:var(--cream-dim);}
.order-total-row .val{font-family:'Amiri',serif; font-size:22px; color:var(--gold-bright);}

.add-cart-btn{
  display:block; width:100%; text-align:center;
  background:var(--gold-bright); color:var(--ink-deep);
  padding:15px; border-radius:6px; font-size:15px; font-weight:700;
  text-decoration:none; border:none; cursor:pointer; transition:background .2s;
}
.add-cart-btn:hover{background:var(--gold);}

@media(max-width:980px){
  .product-layout{grid-template-columns:1fr;}
  .order-box{position:static;}
}
@media(max-width:700px){
  .product-image-panel--main{min-height:320px; padding:20px;}
  .gallery-thumb{width:76px; height:76px;}
}

/* ---------- PRODUCT DETAIL LAYOUT (arad-can style) ---------- */
.product-detail-layout{
  display:grid;
  grid-template-columns:1fr 340px;
  gap:28px;
  align-items:start;
}
.product-info-card{
  background:linear-gradient(160deg, var(--ink-soft), var(--ink));
  border:1px solid rgba(201,162,74,0.18);
  border-radius:8px;
  padding:32px;
  display:flex;
  gap:32px;
  align-items:flex-start;
}
.product-photo-box{
  width:220px; height:220px; flex-shrink:0;
  border-radius:8px;
  display:flex; align-items:center; justify-content:center;
  background:linear-gradient(160deg, var(--ink-deep), var(--ink-soft));
  border:1px solid rgba(201,162,74,0.2);
}
.product-photo-box svg{width:100px; height:100px; stroke:var(--gold-bright); fill:none;}
.product-textblock{flex:1; min-width:0;}
.product-textblock h1{font-size:26px; margin:14px 0 6px;}

.price-row{display:flex; align-items:baseline; gap:8px; margin:6px 0 22px;}
.price-label{font-size:14px; color:var(--cream-dim);}
.price-value{font-family:'Amiri',serif; font-size:27px; color:var(--gold-bright);}

table.detail-kv-table{width:100%; border-collapse:collapse; font-size:13.5px;}
table.detail-kv-table td{padding:13px 16px; text-align:right; color:var(--cream-dim); border-bottom:1px solid rgba(201,162,74,0.1);}
table.detail-kv-table tr:last-child td{border-bottom:none;}
table.detail-kv-table tr:nth-child(even) td{background:rgba(201,162,74,0.05);}
table.detail-kv-table td:first-child{color:var(--gold-bright); font-weight:600; width:34%; white-space:nowrap;}

.purchase-panel{
  background:linear-gradient(160deg, var(--ink-soft), var(--ink));
  border:1px solid rgba(201,162,74,0.18);
  border-radius:8px;
  padding:26px;
  position:sticky;
  top:90px;
}
.purchase-block{margin-bottom:22px;}
.purchase-label{display:block; font-size:13.5px; color:var(--cream-dim); margin-bottom:10px; font-weight:600;}

.size-icon-row{display:flex; gap:12px; flex-wrap:wrap;}
.size-icon-box{
  min-width:78px; padding:10px 12px;
  border:1.5px solid var(--gold-dim); border-radius:8px;
  display:flex; align-items:center; justify-content:center;
  cursor:pointer; background:var(--ink-deep);
  font-size:13px; color:var(--cream); font-weight:600;
  transition:all .2s; text-align:center;
}
.size-icon-box:hover{border-color:var(--gold-bright);}
.size-icon-box.active{border-color:var(--gold-bright); background:rgba(201,162,74,0.14); color:var(--gold-bright);}

.carton-box{
  display:flex; align-items:center; gap:10px;
  border:1px solid rgba(201,162,74,0.3); border-radius:8px;
  padding:13px 18px; width:fit-content; background:var(--ink-deep);
}
.carton-box svg{width:24px; height:24px; stroke:var(--gold-bright); fill:none; flex-shrink:0;}
.carton-box span{font-size:13.5px; color:var(--cream);}

.qty-stepper{
  display:flex; align-items:center;
  border:1px solid rgba(201,162,74,0.3); border-radius:8px;
  overflow:hidden; width:fit-content;
}
.qty-btn{
  width:40px; height:40px; background:var(--ink-deep); border:none;
  color:var(--gold-bright); font-size:20px; cursor:pointer; line-height:1;
}
.qty-btn:hover{background:rgba(201,162,74,0.15);}
#qty-input{
  width:56px; height:40px; text-align:center; border:none;
  border-right:1px solid rgba(201,162,74,0.25);
  border-left:1px solid rgba(201,162,74,0.25);
  background:var(--ink-soft); color:var(--cream);
  font-family:'Vazirmatn',sans-serif; font-size:15px;
}
#qty-input:focus{outline:none;}

.purchase-totals{
  background:var(--ink-deep); border:1px solid rgba(201,162,74,0.2);
  border-radius:8px; padding:16px 18px; margin-bottom:20px;
}
.total-row{display:flex; justify-content:space-between; font-size:13.5px; color:var(--cream-dim); padding:5px 0;}
.total-row-price{
  color:var(--gold-bright); font-size:18px; font-weight:700;
  border-top:1px solid rgba(201,162,74,0.15); margin-top:6px; padding-top:12px;
}

.btn-add-cart{width:100%; text-align:center; display:block;}
.btn-add-cart.added{background:#5c9a6f; border-color:#5c9a6f;}

@media(max-width:900px){
  .product-detail-layout{grid-template-columns:1fr;}
  .purchase-panel{position:static;}
}
@media(max-width:700px){
  .product-info-card{flex-direction:column; align-items:center; text-align:center;}
  .product-photo-box{margin:0 auto;}
  table.detail-kv-table td:first-child{width:44%;}
}

/* ---------- CART ICON (header, all pages) ---------- */
.cart-link{
  position:relative;
  display:flex; align-items:center; justify-content:center;
  width:38px; height:38px;
  border:1px solid var(--gold-dim); border-radius:50%;
  color:var(--gold-bright);
  text-decoration:none;
  transition:border-color .2s;
}
.cart-link:hover{border-color:var(--gold-bright);}
.cart-link svg{width:18px; height:18px; stroke:var(--gold-bright); fill:none;}
.cart-count{
  position:absolute; top:-6px; left:-6px;
  min-width:18px; height:18px; padding:0 4px;
  background:var(--gold-bright); color:var(--ink-deep);
  border-radius:10px; font-size:10.5px; font-weight:700;
  display:flex; align-items:center; justify-content:center;
}
.cart-count.hidden{display:none;}

/* ---------- PROCESS PAGE (detailed) ---------- */
.process-detail{display:flex; flex-direction:column; gap:0;}
.process-row{
  display:grid; grid-template-columns:90px 1fr; gap:28px;
  padding:36px 0; border-top:1px solid rgba(201,162,74,0.15);
}
.process-row:last-child{border-bottom:1px solid rgba(201,162,74,0.15);}
.process-row .n-big{
  font-family:'Amiri',serif; font-size:44px; color:var(--gold-dim);
  line-height:1;
}
.process-row h4{font-size:20px; color:var(--cream); margin-bottom:10px;}
.process-row p{font-size:14.5px; color:var(--cream-dim); line-height:1.9; max-width:640px;}
.process-row .duration{
  display:inline-block; margin-top:14px; font-size:12.5px; color:var(--gold-bright);
  border:1px solid var(--gold-dim); border-radius:20px; padding:5px 14px;
}

.faq-item{
  border-top:1px solid rgba(201,162,74,0.15);
  padding:22px 0;
}
.faq-item:last-child{border-bottom:1px solid rgba(201,162,74,0.15);}
.faq-q{
  display:flex; justify-content:space-between; align-items:center;
  cursor:pointer; font-size:16px; color:var(--cream);
}
.faq-q .plus{color:var(--gold-bright); font-size:20px; transition:transform .25s;}
.faq-item.open .plus{transform:rotate(45deg);}
.faq-a{
  max-height:0; overflow:hidden; transition:max-height .3s ease;
  font-size:14.5px; color:var(--cream-dim); line-height:1.9;
}
.faq-item.open .faq-a{max-height:200px; padding-top:14px;}

/* ---------- PORTFOLIO PAGE ---------- */
.portfolio-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:22px;}
.portfolio-card{
  border-radius:5px; overflow:hidden;
  border:1px solid rgba(201,162,74,0.18);
  transition:transform .3s, border-color .3s;
  cursor:pointer;
}
.portfolio-card:hover{transform:translateY(-6px); border-color:rgba(201,162,74,0.5);}
.portfolio-card.hidden{display:none;}
.portfolio-thumb{
  aspect-ratio:1/1; width:100%; height:auto; position:relative;
  display:flex; align-items:flex-end; padding:18px;
  overflow:hidden;
}
.portfolio-thumb img{
  position:absolute; inset:0; width:100%; height:100%;
  object-fit:cover; z-index:1;
}
.portfolio-thumb .tag{
  font-size:11px; letter-spacing:1px; color:var(--gold-bright);
  border:1px solid var(--gold-dim); border-radius:20px; padding:4px 12px;
  background:rgba(8,32,26,0.55); position:absolute; top:16px; left:16px;
}
.portfolio-body{padding:20px 22px 24px; background:linear-gradient(160deg, var(--ink-soft), var(--ink));}
.portfolio-body h3{font-size:17px; color:var(--cream); margin-bottom:6px;}
.portfolio-body p{font-size:13.5px; color:var(--cream-dim); line-height:1.8;}

/* ---------- CONTACT PAGE ---------- */
.contact-layout{
  display:grid; grid-template-columns:1fr 1fr; gap:56px; align-items:start;
}
.contact-info-list{list-style:none; margin-top:26px;}
.contact-info-list li{
  display:flex; gap:16px; align-items:flex-start;
  padding:18px 0; border-top:1px solid rgba(201,162,74,0.15);
}
.contact-info-list li:first-child{border-top:none;}
.contact-info-list .ico{
  width:40px; height:40px; border-radius:50%; flex-shrink:0;
  border:1px solid var(--gold-dim); display:flex; align-items:center; justify-content:center;
}
.contact-info-list svg{width:18px; height:18px; stroke:var(--gold-bright); fill:none;}
.contact-info-list h5{font-size:14.5px; color:var(--cream); margin-bottom:4px;}
.contact-info-list p, .contact-info-list a{font-size:13.5px; color:var(--cream-dim); text-decoration:none;}
.contact-info-list a:hover{color:var(--gold-bright);}

.social-links-block{margin-top:30px;}
.social-links-title{font-size:14px; color:var(--cream); margin-bottom:14px;}
.social-links{display:flex; flex-wrap:wrap; gap:12px;}
.social-btn{
  width:48px; height:48px; border-radius:50%; flex-shrink:0;
  border:1px solid var(--gold-dim); display:flex; align-items:center; justify-content:center;
  background:linear-gradient(160deg, var(--ink-soft), var(--ink));
  transition:transform .2s, border-color .2s, background .2s;
}
.social-btn svg{width:22px; height:22px; stroke:var(--gold-bright); fill:none;}
.social-btn:hover{transform:translateY(-3px); border-color:var(--gold-bright); background:linear-gradient(160deg, var(--ink), var(--ink-soft));}
.map-frame{
  margin-top:30px; border-radius:5px; overflow:hidden;
  border:1px solid rgba(201,162,74,0.25);
  filter:grayscale(0.3) sepia(0.15);
}
.map-frame iframe{display:block; width:100%; height:220px; border:0;}
.contact-form-box{
  background:linear-gradient(160deg, var(--ink-soft), var(--ink));
  border:1px solid rgba(201,162,74,0.18);
  border-radius:6px; padding:38px;
}
.contact-form-box h3{font-family:'Amiri',serif; font-size:24px; margin-bottom:8px; color:var(--gold-bright);}
.contact-form-box p.sub{color:var(--cream-dim); font-size:13.5px; margin-bottom:26px;}
.form-row-2{display:grid; grid-template-columns:1fr 1fr; gap:16px;}

@media(max-width:920px){
  .process-row{grid-template-columns:1fr;}
  .portfolio-grid{grid-template-columns:1fr 1fr;}
  .contact-layout{grid-template-columns:1fr;}
  .form-row-2{grid-template-columns:1fr;}
}
@media(max-width:600px){
  .portfolio-grid{grid-template-columns:1fr;}
}

/* ---------- BRANDS MARQUEE (homepage) ---------- */
.brands-section{
  padding:70px 0;
  border-top:1px solid rgba(201,162,74,0.15);
  border-bottom:1px solid rgba(201,162,74,0.15);
  overflow:hidden;
}
.brands-section .section-head{margin-bottom:44px;}

.marquee-viewport{
  position:relative;
  overflow-x:auto;
  overflow-y:hidden;
  cursor:grab;
  user-select:none;
  -webkit-mask-image:linear-gradient(90deg, transparent 0, #000 6%, #000 94%, transparent 100%);
  mask-image:linear-gradient(90deg, transparent 0, #000 6%, #000 94%, transparent 100%);
  scrollbar-width:none;
  -ms-overflow-style:none;
}
.marquee-viewport::-webkit-scrollbar{display:none;}
.marquee-viewport.dragging{cursor:grabbing;}
.marquee-track{
  display:flex;
  align-items:center;
  gap:76px;
  width:max-content;
  padding:0 32px;
}
.brand-chip{
  display:flex; flex-direction:column; align-items:center; gap:14px;
  flex-shrink:0;
  opacity:.78;
  transition:opacity .25s;
  pointer-events:none; /* avoid image/text drag interfering with slider drag */
}
.brand-chip .mark{
  width:92px; height:92px; border-radius:50%;
  border:1px solid var(--gold-dim);
  display:flex; align-items:center; justify-content:center;
  font-family:'Amiri',serif; font-size:32px; color:var(--gold-bright);
  background:linear-gradient(160deg, var(--ink-soft), var(--ink));
}
.brand-chip .name{font-size:16px; color:var(--cream-dim); white-space:nowrap;}

/* manual scrollbar strip below the slider */
.marquee-scrollbar{
  max-width:340px; margin:32px auto 0; padding:0 32px;
}
.marquee-scrollbar-track{
  position:relative;
  height:4px;
  background:rgba(201,162,74,0.18);
  border-radius:4px;
  cursor:pointer;
}
.marquee-scrollbar-thumb{
  position:absolute; top:50%; left:0;
  transform:translateY(-50%);
  height:8px;
  background:var(--gold-bright);
  border-radius:4px;
  cursor:grab;
  transition:background .2s;
}
.marquee-scrollbar-thumb:hover, .marquee-scrollbar-thumb.dragging{background:var(--cream);}
.marquee-hint{
  text-align:center; margin-top:14px;
  font-size:12px; color:var(--cream-dim); opacity:.7;
}

@media(prefers-reduced-motion: reduce){
  .marquee-viewport{scroll-behavior:auto;}
}

/* ---------- WORKSHOP ILLUSTRATION BANNER (homepage) ---------- */
.workshop-banner{
  display:grid; grid-template-columns:1fr 1fr; gap:56px; align-items:center;
}
.workshop-visual{
  background:linear-gradient(155deg, var(--ink-soft), var(--ink-deep));
  border:1px solid rgba(201,162,74,0.22);
  border-radius:6px;
  padding:30px;
  position:relative;
  min-height:340px;
  display:flex; align-items:center; justify-content:center;
}
.workshop-visual svg{width:100%; height:auto; max-width:420px;}
.workshop-text h2{margin-bottom:18px;}
.workshop-text .badge-mini-row{display:flex; gap:14px; margin-top:28px; flex-wrap:wrap;}
.badge-mini{
  border:1px solid var(--gold-dim); border-radius:4px;
  padding:14px 18px; font-size:13px; color:var(--cream-dim);
  display:flex; align-items:center; gap:8px;
}
.badge-mini svg{width:16px;height:16px; stroke:var(--gold-bright); fill:none;}

@media(max-width:920px){
  .workshop-banner{grid-template-columns:1fr;}
}

/* ---------- PRODUCTS SLIDER (homepage) ---------- */
.product-slider-viewport{
  overflow-x:auto;
  overflow-y:hidden;
  cursor:grab;
  user-select:none;
  scroll-snap-type:x proximity;
  scrollbar-width:none;
  -ms-overflow-style:none;
  padding:38px 0 12px;
}
.product-slider-viewport::-webkit-scrollbar{display:none;}
.product-slider-viewport.dragging{cursor:grabbing;}
.product-slider-track{
  display:flex;
  gap:24px;
  width:max-content;
  padding:0 32px;
}
.product-slide{
  scroll-snap-align:start;
  flex-shrink:0;
  width:280px;
  background:linear-gradient(160deg, var(--ink-soft), var(--ink));
  border:1px solid rgba(201,162,74,0.18);
  border-radius:5px;
  overflow:hidden;
  pointer-events:none; /* prevent inner drag issues while dragging the slider */
  transition:border-color .3s;
}
.product-slide .thumb{
  height:150px; display:flex; align-items:center; justify-content:center; position:relative;
}
.product-slide .thumb svg{width:52px;height:52px; stroke:var(--gold-bright); fill:none; opacity:.85;}
.product-slide .thumb .tag{
  position:absolute; top:12px; left:12px;
  font-size:11px; letter-spacing:1px; color:var(--gold-bright);
  border:1px solid var(--gold-dim); border-radius:20px; padding:3px 11px;
  background:rgba(8,32,26,0.6);
}
.product-slide .body{padding:20px 22px 24px;}
.product-slide h3{font-size:16.5px; color:var(--cream); margin-bottom:8px;}
.product-slide .desc{font-size:13.5px; color:var(--cream-dim); line-height:1.8; margin-bottom:16px;}
.product-slide .card-cta{
  display:block; text-align:center; pointer-events:auto;
  border:1px solid var(--gold-dim); border-radius:2px;
  padding:10px; font-size:13.5px; color:var(--cream);
  text-decoration:none; transition:all .2s;
}
.product-slide .card-cta:hover{background:var(--gold-bright); color:var(--ink-deep); border-color:var(--gold-bright);}

/* ---------- SLIDER ARROWS (desktop only) ---------- */
.product-slider-wrap{position:relative;}
.slider-arrow{
  position:absolute; top:50%; transform:translateY(-50%);
  width:46px; height:46px; border-radius:50%; z-index:5;
  background:var(--ink-deep); border:1px solid var(--gold-dim);
  display:flex; align-items:center; justify-content:center;
  cursor:pointer; transition:all .2s;
}
.slider-arrow svg{width:20px; height:20px; stroke:var(--gold-bright); fill:none;}
.slider-arrow:hover{background:var(--gold-bright); border-color:var(--gold-bright);}
.slider-arrow:hover svg{stroke:var(--ink-deep);}
.slider-arrow-prev{right:8px;}
.slider-arrow-next{left:8px;}
.slider-arrow:disabled{opacity:.3; cursor:default; pointer-events:none;}

@media(max-width:980px){
  .slider-arrow{display:none;}
}

/* ---------- WIDER, CLEARER SCROLLBAR FOR PRODUCT SLIDER ---------- */
.products-scrollbar{max-width:100%; margin-top:6px;}
.products-scrollbar .marquee-scrollbar-track{height:6px;}
.products-scrollbar .marquee-scrollbar-thumb{height:10px; min-width:60px;}

/* ---------- BRAND MARQUEE (homepage) ---------- */
.brand-marquee-section{
  padding:70px 0;
  border-top:1px solid rgba(201,162,74,0.15);
  border-bottom:1px solid rgba(201,162,74,0.15);
  overflow:hidden;
}
.brand-marquee-wrap{
  position:relative;
  overflow:hidden;
  -webkit-mask-image:linear-gradient(90deg, transparent 0, #000 8%, #000 92%, transparent 100%);
  mask-image:linear-gradient(90deg, transparent 0, #000 8%, #000 92%, transparent 100%);
}
.brand-marquee-track{
  display:flex;
  align-items:center;
  gap:0;
  width:max-content;
  animation:brand-scroll 42s linear infinite;
}
.brand-pill{
  display:flex; align-items:center; gap:12px;
  padding:0 44px;
  white-space:nowrap;
  font-family:'Amiri',serif;
  font-size:22px;
  color:var(--cream-dim);
  border-left:1px solid rgba(201,162,74,0.2);
  transition:color .3s;
}
.brand-pill .dot{width:5px; height:5px; border-radius:50%; background:var(--gold-dim); flex-shrink:0;}
.brand-marquee-wrap:hover .brand-marquee-track{animation-play-state:paused;}

@keyframes brand-scroll{
  from{transform:translateX(0);}
  to{transform:translateX(-50%);}
}

@media(prefers-reduced-motion: reduce){
  .brand-marquee-track{animation:none;}
  .brand-marquee-wrap{overflow-x:auto;}
}

@media(max-width:600px){
  .brand-pill{font-size:17px; padding:0 28px;}
}

/* ================================================================
   بهینه‌سازی ریسپانسیو موبایل — کوچک‌تر و مرتب‌تر شدن تمام بخش‌ها
   روی صفحه‌نمایش‌های کوچک تا اندازه‌ها و فاصله‌ها گنده و نامرتب نباشند
   ================================================================ */
@media(max-width:600px){
  /* فاصله کناری کانتینر و پدینگ بخش‌ها */
  .wrap{padding:0 18px;}
  .section{padding:54px 0;}
  .hero{padding:44px 0 44px;}
  .cta-strip{padding:44px 0;}
  .brands-section, .brand-marquee-section{padding:44px 0;}
  footer{padding:44px 0 24px;}
  .page-header{padding:40px 0 30px;}

  /* تیترها و متن‌ها */
  h1{font-size:28px; line-height:1.4;}
  .page-header h1{font-size:26px;}
  .page-header p{font-size:13.5px;}
  .section-head{margin-bottom:32px;}
  .section-head h2{font-size:24px;}
  .section-head p{font-size:14px;}
  .hero p.lead{font-size:14.5px; line-height:1.9;}
  .cta-strip h2{font-size:22px;}
  .cta-strip p{font-size:14px;}
  .eyebrow{font-size:12px; margin-bottom:18px;}

  /* دکمه‌ها زیر هم و تمام‌عرض تا از خط خارج نشوند */
  .cta-row{flex-direction:column; align-items:stretch;}
  .cta-row .btn{text-align:center; width:100%;}
  .btn{padding:13px 22px; font-size:14px;}

  /* کارت‌های محصول/خدمات */
  .card{padding:26px 22px;}
  .card h3{font-size:17px;}

  /* آمار هدر: دوتا دوتا کنار هم، مینیمال */
  .stat-row{
    display:grid; grid-template-columns:1fr 1fr; gap:16px;
    border-top:none; padding-top:6px;
  }
  .stat{
    flex:none; padding:16px 0 0; margin-bottom:0;
    border-left:none; border-top:1px solid rgba(201,162,74,0.18);
    text-align:center;
  }
  .stat:first-child{padding-top:16px;}

  /* گالری و نمونه‌کارها: دوتا دوتا کنار هم */
  .gallery-grid{grid-template-columns:1fr 1fr; grid-auto-rows:120px; gap:10px;}
  .g-item{padding:12px; font-size:12px;}
  .g-item .icon-big{width:54px; height:54px;}
  .portfolio-grid{grid-template-columns:1fr 1fr; gap:14px;}
  .portfolio-thumb{padding:12px;}
  .portfolio-body{padding:14px 14px 16px;}
  .portfolio-body h3{font-size:14.5px;}
  .portfolio-body p{font-size:12px;}

  /* فرآیند: دوتا دوتا کنار هم */
  .process{grid-template-columns:1fr 1fr; row-gap:34px; column-gap:10px;}

  /* فوتر: مینیمال، دوتا دوتا کنار هم */
  .foot-grid{grid-template-columns:1fr 1fr; gap:28px 18px; text-align:right;}
  .foot-brand{grid-column:1 / -1; text-align:right;}
  .foot-brand p{margin-top:14px; max-width:none;}
  .foot-bottom{flex-direction:column; gap:10px; text-align:center;}

  /* مودال‌ها و فرم‌ها */
  .modal{padding:26px 20px;}
  .contact-form-box{padding:26px 20px;}
  .contact-form-box h3{font-size:20px;}

  /* صفحه محصول (هدر معرفی) */
  .product-hero-visual{width:180px; height:180px;}
  .product-hero-visual svg{width:80px; height:80px;}
  .product-hero-info h1{font-size:25px;}
  .product-hero-desc{font-size:14px;}

  /* صفحه محصول (طرح دو ستونه جدید) */
  .product-main-title{font-size:23px;}
  .product-price-row .val{font-size:22px;}
  .product-image-panel--main{min-height:260px; padding:16px;}
  .gallery-thumb{width:64px; height:64px;}
  .order-box{padding:22px 18px;}

  /* صفحه محصول (طرح arad-can) */
  .product-info-card{padding:22px 18px; gap:20px;}
  .product-photo-box{width:150px; height:150px;}
  .product-photo-box svg{width:70px; height:70px;}
  .product-textblock h1{font-size:20px;}
  .purchase-panel{padding:20px 16px;}

  /* جزئیات/سایز در مودال محصول */
  .detail-header .thumb-mini{width:52px; height:52px;}
  .detail-header h3{font-size:19px;}
  .size-summary{grid-template-columns:1fr 1fr; gap:8px; padding:14px;}

  /* تایم‌لاین درباره ما */
  .timeline-item{padding-right:56px; padding-bottom:30px;}
  .timeline::before{right:21px;}
  .timeline-item .dot{width:28px; height:28px; right:8px; font-size:10.5px;}
  .timeline-item h4{font-size:16px;}

  /* اسلایدر برندها/محصولات */
  .brand-chip .mark{width:72px; height:72px; font-size:24px;}
  .brand-chip .name{font-size:14px;}
  .product-slide{width:230px;}
  .product-slide .thumb{height:130px;}

  /* جداول مشخصات فنی: خوانا و بدون سرریز */
  table.specs-table, table.detail-specs-table, table.detail-kv-table{font-size:12px;}
  table.specs-table th, table.specs-table td{padding:9px 10px;}
}

@media(max-width:380px){
  h1{font-size:24px;}
  .section-head h2{font-size:21px;}
  .brand-text .en{font-size:18px;}
  .nav-cta{padding:7px 10px; font-size:11.5px;}
  .btn{font-size:13.5px;}
}

/* ---------- کلاس‌های کمکی عمومی (جایگزین استایل‌های inline) ---------- */
.text-center{text-align:center;}
.mt-10{margin-top:10px;}
.mt-18{margin-top:18px;}
.mt-34{margin-top:34px;}
.narrow-wrap{max-width:760px; margin:0 auto;}
.textarea-tall{min-height:120px;}

/* دکمه تمام‌عرض (فرم‌های درخواست قیمت/تماس) */
.btn-block{width:100%;}

/* لینک «مشاهده کامل / بیشتر» زیر متن معرفی بخش‌ها */
.link-more{
  color:var(--gold-bright);
  font-size:14px;
  border-bottom:1px solid var(--gold-dim);
  text-decoration:none;
}

/* متن راهنمای بخش (پاراگراف‌های توضیحی زیر عنوان) */
.section-lead-text{color:var(--cream-dim); font-size:15px; line-height:2;}

/* بخش تماس با ما: عنوان و توضیح کوچک ستون اطلاعات */
.contact-info-title{font-family:'Amiri',serif; font-size:28px; margin-bottom:6px;}
.contact-info-sub{color:var(--cream-dim); font-size:14.5px;}

/* صفحه محصول: هدر فشرده و راست‌چین (فقط ناوبری breadcrumb) */
.page-header--compact{text-align:right; padding:26px 0;}

/* صفحه محصول: فاصله کمتر بالای بخش اصلی، چون بعد از هدر فشرده می‌آید */
.section--tight-top{padding-top:20px;}

/* صفحه محصول: توضیحات محصول و توضیح قیمت */
.product-desc-text{color:var(--cream-dim); font-size:14px; line-height:1.9; margin-top:26px;}
.price-disclaimer{font-size:11.5px; color:var(--cream-dim); text-align:center; margin-top:12px; line-height:1.8;}

/* صفحه محصول: حالت «محصول پیدا نشد» */
.product-not-found{grid-column:1/-1; text-align:center; padding:40px 0;}
.product-not-found p{color:var(--cream-dim); margin-bottom:20px;}

/* انیمیشن قوطی سوهان (صفحه loading): چرخش و تأخیر هر دانه سوهان */
.candy-0{--i:0; --rot:-14deg;}
.candy-1{--i:1; --rot:10deg;}
.candy-2{--i:2; --rot:-6deg;}
.candy-3{--i:3; --rot:16deg;}
.candy-4{--i:4; --rot:-11deg;}
.candy-5{--i:5; --rot:8deg;}
.candy-6{--i:6; --rot:-18deg;}
.candy-7{--i:7; --rot:5deg;}
.candy-8{--i:8; --rot:-9deg;}
.candy-9{--i:9; --rot:13deg;}
.candy-10{--i:10; --rot:-7deg;}
.candy-11{--i:11; --rot:4deg;}

.workshop-visual svg {
width: 100%;
height: auto;
max-width: 420px;
}
