:root{ --red:#ef232d }

html{ scroll-behavior:smooth }

body{
  background:#050505;
  color:#fafafa;
  overflow-x:hidden;
  background-image:
    radial-gradient(60rem 40rem at 85% -10%, rgba(239,35,45,.16), transparent 60%),
    radial-gradient(50rem 34rem at -5% 24%, rgba(239,35,45,.08), transparent 62%);
  background-attachment:fixed;
}

section{ scroll-margin-top:110px }
select option{ color:#0a0a0a }
::selection{ background:var(--red); color:#fff }

::-webkit-scrollbar{ width:10px }
::-webkit-scrollbar-track{ background:#0a0a0a }
::-webkit-scrollbar-thumb{
  background:linear-gradient(#ef232d,#4a0509);
  border-radius:99px;
  border:2px solid #0a0a0a;
}

/* ══════════════ Liquid Glass ══════════════ */
.glass{
  position:relative;
  isolation:isolate;
  background:linear-gradient(155deg, rgba(255,255,255,.10) 0%, rgba(255,255,255,.035) 42%, rgba(255,255,255,.012) 100%);
  -webkit-backdrop-filter:blur(28px) saturate(180%);
  backdrop-filter:blur(28px) saturate(180%);
  border:1px solid rgba(255,255,255,.10);
  box-shadow:
    inset 0 1px 0 0 rgba(255,255,255,.18),
    inset 0 -1px 0 0 rgba(255,255,255,.04),
    0 24px 64px -24px rgba(0,0,0,.9);
}

.glass::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  padding:1px;
  pointer-events:none;
  z-index:3;
  background:linear-gradient(180deg, rgba(255,255,255,.38), rgba(255,255,255,0) 38%);
  -webkit-mask:linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;
  mask-composite:exclude;
}

.glass2{
  position:relative;
  isolation:isolate;
  background: linear-gradient(155deg, rgba(0, 0, 0, 0.82) 0%, rgba(0, 0, 0, 0.88) 42%, rgba(0, 0, 0, 0.85) 100%);
  -webkit-backdrop-filter:blur(28px) saturate(180%);
  backdrop-filter:blur(28px) saturate(180%);
  border:1px solid rgba(0,0,0,.1);
  box-shadow:
    inset 0 1px 0 0 rgba(0,0,0,.18),
    inset 0 -1px 0 0 rgba(0,0,0,.04),
    0 24px 64px -24px rgba(0,0,0,.9);
}

.glass2::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  padding:1px;
  pointer-events:none;
  z-index:3;
  background:linear-gradient(180deg, rgba(0,0,0,.38), rgba(0,0,0,0) 38%);
  -webkit-mask:linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;
  mask-composite:exclude;
}

.glass-red::after{
  content:"";
  position:absolute;
  inset:-32% -12% auto -12%;
  height:72%;
  border-radius:inherit;
  background:radial-gradient(60% 60% at 70% 0%, rgba(239,35,45,.30), transparent 70%);
  filter:blur(20px);
  opacity:0;
  transition:opacity .55s ease;
  pointer-events:none;
  z-index:0;
}

.group:hover .glass-red::after,
.glass-red:hover::after{ opacity:1 }

.spot > .spotlight{
  position:absolute;
  inset:0;
  z-index:2;
  border-radius:inherit;
  pointer-events:none;
  opacity:0;
  transition:opacity .5s ease;
  background:radial-gradient(240px circle at var(--mx,50%) var(--my,0%), rgba(255,255,255,.13), transparent 65%);
}

.spot:hover > .spotlight{ opacity:1 }

.hair-red{
  background:linear-gradient(90deg, transparent, rgba(239,35,45,.9), transparent);
}

.t-grad{
  background:linear-gradient(100deg,#fff 0%,#ffd7d9 42%,#ef232d 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}

.num{ font-variant-numeric:tabular-nums }

/* ══════════════ Liquid Metal ══════════════ */
.metal{
  position:absolute;
  inset:0;
  overflow:hidden;
  z-index:0;
  background:#070707;
}

.metal .blob{
  position:absolute;
  inset:-25%;
  filter:blur(64px) contrast(160%);
  mix-blend-mode:screen;
  will-change:transform;
}

.metal .b1{
  background:conic-gradient(from 0deg,#000,#6b0d12,#ef232d,#2a2a2e,#b3b3bb,#000,#ef232d,#000);
}

.metal .b2{
  background:
    radial-gradient(circle at 30% 30%,#ffffff22,transparent 45%),
    conic-gradient(from 140deg,#000,#1c1c20,#ff5b62,#000,#8f9099,#000);
}

.metal .lines{
  position:absolute;
  inset:0;
  opacity:.10;
  background-image:repeating-linear-gradient(115deg, rgba(255,255,255,.35) 0 1px, transparent 1px 9px);
  -webkit-mask-image:radial-gradient(60% 60% at 50% 40%,#000,transparent 75%);
  mask-image:radial-gradient(60% 60% at 50% 40%,#000,transparent 75%);
}

.metal .grain{
  position:absolute;
  inset:0;
  opacity:.15;
  mix-blend-mode:overlay;
  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='.8' numOctaves='3'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E");
}

.metal .vig{
  position:absolute;
  inset:0;
  background:radial-gradient(95% 75% at 50% 40%, transparent 22%, rgba(5,5,5,.7) 70%, #050505 100%);
}

.gew-metal{
  position:absolute;
  inset:0;
  overflow:hidden;
  z-index:0;
  background:#070707;
  border-radius:inherit;
  pointer-events:none;
}

.gew-metal .gew-blob{
  position:absolute;
  inset:-25%;
  filter:blur(64px) contrast(160%);
  mix-blend-mode:screen;
  will-change:transform;
}

.gew-metal .gew-b1{
  background:conic-gradient(from 0deg,#000,#6b0d12,#ef232d,#2a2a2e,#b3b3bb,#000,#ef232d,#000);
  animation:gew-spin-slow 18s linear infinite;
}

.gew-metal .gew-b2{
  background:
    radial-gradient(circle at 30% 30%,#ffffff22,transparent 45%),
    conic-gradient(from 140deg,#000,#1c1c20,#ff5b62,#000,#8f9099,#000);
  animation:gew-float-blob 12s ease-in-out infinite alternate;
}

.gew-metal .gew-lines{
  position:absolute;
  inset:0;
  opacity:.10;
  background-image:repeating-linear-gradient(115deg, rgba(255,255,255,.35) 0 1px, transparent 1px 9px);
  -webkit-mask-image:radial-gradient(60% 60% at 50% 40%,#000,transparent 75%);
  mask-image:radial-gradient(60% 60% at 50% 40%,#000,transparent 75%);
}

.gew-metal .gew-grain{
  position:absolute;
  inset:0;
  opacity:.15;
  mix-blend-mode:overlay;
  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='.8' numOctaves='3'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E");
}

.gew-metal .gew-vig{
  position:absolute;
  inset:0;
  background:radial-gradient(95% 75% at 50% 40%, transparent 22%, rgba(5,5,5,.7) 70%, #050505 100%);
}

@keyframes gew-spin-slow{
  to{ transform:rotate(360deg); }
}

@keyframes gew-float-blob{
  0%{ transform:translate(-3%, -2%) scale(1); }
  100%{ transform:translate(3%, 2%) scale(1.08); }
}

/* ══════════════ Images ══════════════ */
.ph{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(120% 100% at 50% 0%, rgba(239,35,45,.16), transparent 60%),
    linear-gradient(160deg,#141416,#08080a);
}

.ph img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transition:transform .8s cubic-bezier(.22,1,.36,1), opacity .5s ease;
}

.group:hover .ph img{ transform:scale(1.07) }

.ph::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(to top, rgba(5,5,5,.72), rgba(5,5,5,.05) 55%, transparent);
  pointer-events:none;
}

.ph.plain::after{ display:none }

.ph .fallback{
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  opacity:0;
  transition:opacity .4s;
  color:rgba(255,255,255,.25);
}

.ph.is-err img{ opacity:0 }
.ph.is-err .fallback{ opacity:1 }

/* ══════════════ Reveal ══════════════ */
.reveal{
  opacity:0;
  transform:translateY(28px);
  transition:
    opacity .75s cubic-bezier(.22,1,.36,1),
    transform .75s cubic-bezier(.22,1,.36,1);
}

.reveal.in{
  opacity:1;
  transform:none;
}

/* ══════════════ Category Cards ══════════════ */
.cat-card{
  display:block;
  overflow:hidden;
  border-radius:28px;
  padding:10px;
  transition:transform .35s ease;
}

.cat-card:hover{ transform:translateY(-6px) }

/* ══════════════ Product Cards ══════════════ */
.product-card{
  position:relative;
  display:flex;
  flex-direction:column;
  overflow:hidden;
  border-radius:28px;
  padding:10px;
  animation:pop .4s cubic-bezier(.22,1,.36,1) both;
}

.product-body{
  position:relative;
  z-index:10;
  display:flex;
  flex:1;
  flex-direction:column;
  padding:1rem;
}

.product-body h3{
  margin-top:.5rem;
  font-size:15px;
  font-weight:900;
  line-height:1.7;
}

.product-body p{
  margin-top:.25rem;
  font-size:11px;
  color:rgba(255,255,255,.45);
}

.stars{
  display:flex;
  align-items:center;
  gap:.35rem;
  font-size:12px;
  color:#fbbf24;
  letter-spacing:.02em;
}

.stars span{
  margin-right:.25rem;
  font-size:10px;
  color:rgba(255,255,255,.4);
}

.product-foot{
  margin-top:auto;
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:.5rem;
  border-top:1px solid rgba(255,255,255,.10);
  padding-top:1rem;
}

.old{
  margin-bottom:.1rem;
  font-size:12px;
  color:rgba(255,255,255,.32) !important;
  text-decoration:line-through;
}

.price{
  font-size:18px !important;
  font-weight:900;
  color:#fff !important;
}

.price span{
  font-size:10px;
  font-weight:700;
  color:rgba(255,255,255,.5);
}

.add-btn{
  display:grid;
  width:44px;
  height:44px;
  flex-shrink:0;
  place-items:center;
  border-radius:18px;
  background:#ef232d;
  color:white;
  font-size:24px;
  font-weight:600;
  line-height:1;
  box-shadow:0 14px 34px -12px rgba(239,35,45,.65);
  transition:transform .25s ease, background .25s ease;
}

.add-btn:hover{
  transform:scale(1.1);
  background:#c8121b;
}

.add-btn:active{ transform:scale(.92) }

.badge{
  position:absolute;
  top:.75rem;
  right:.75rem;
  z-index:12;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.15);
  background:rgba(0,0,0,.55);
  padding:.25rem .75rem;
  font-size:10px;
  font-weight:800;
  color:white;
  -webkit-backdrop-filter:blur(14px);
  backdrop-filter:blur(14px);
}

/* ══════════════ Why / Contact ══════════════ */
.why-card{
  position:relative;
  overflow:hidden;
  border-radius:28px;
  padding:1.4rem;
}

.why-card i{
  position:relative;
  z-index:10;
  display:grid;
  width:48px;
  height:48px;
  place-items:center;
  border-radius:18px;
  background:linear-gradient(135deg, rgba(239,35,45,.24), rgba(255,255,255,.04));
  border:1px solid rgba(239,35,45,.28);
  color:#ff5b62;
  font-style:normal;
  font-weight:900;
}

.why-card h3{
  position:relative;
  z-index:10;
  margin-top:1rem;
  font-size:15px;
  font-weight:900;
}

.why-card p{
  position:relative;
  z-index:10;
  margin-top:.5rem;
  font-size:13px;
  line-height:1.9;
  color:rgba(255,255,255,.55);
}

.contact-card{
  position:relative;
  display:flex;
  align-items:center;
  gap:1rem;
  overflow:hidden;
  border-radius:24px;
  padding:1rem;
  transition:transform .3s ease;
}

.contact-card:hover{ transform:translateY(-4px) }

.contact-card i{
  position:relative;
  z-index:10;
  display:grid;
  width:48px;
  height:48px;
  flex-shrink:0;
  place-items:center;
  border-radius:18px;
  background:linear-gradient(135deg, rgba(239,35,45,.25), rgba(255,255,255,.04));
  border:1px solid rgba(239,35,45,.3);
  color:#ef232d;
  font-style:normal;
}

.contact-card span{
  position:relative;
  z-index:10;
}

.contact-card b{
  display:block;
  font-size:14px;
}

.contact-card small{
  display:block;
  margin-top:.25rem;
  font-size:13px;
  color:rgba(255,255,255,.55);
}

/* ══════════════ Gallery ══════════════ */
.zoom-ico{
  position:absolute;
  inset:0;
  z-index:12;
  display:grid;
  place-items:center;
  background:rgba(239,35,45,0);
  opacity:0;
  font-size:42px;
  color:white;
  transition:.3s ease;
}

.ph:hover .zoom-ico{
  opacity:1;
  background:rgba(239,35,45,.15);
}

/* ══════════════ Filter Chips ══════════════ */
.chip{ transition:all .3s ease }

.chip.active{
  background:#ef232d !important;
  color:#fff !important;
  border-color:transparent !important;
  box-shadow:0 14px 34px -12px rgba(239,35,45,.65);
}

/* ══════════════ FAQ ══════════════ */
details.faq summary{
  cursor:pointer;
  list-style:none;
}

details.faq summary::-webkit-details-marker{ display:none }

.fa-ico{
  display:grid;
  width:32px;
  height:32px;
  flex-shrink:0;
  place-items:center;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.15);
  background:rgba(255,255,255,.05);
  color:rgba(255,255,255,.7);
  transition:.3s ease;
}

details.faq[open] .fa-ico{
  transform:rotate(45deg);
  background:#ef232d;
  color:#fff;
  border-color:transparent;
}

details.faq .fa-body{
  display:grid;
  grid-template-rows:0fr;
  transition:grid-template-rows .4s ease;
}

details.faq .fa-body > div{ overflow:hidden }

details.faq[open] .fa-body{ grid-template-rows:1fr }

/* ══════════════ Toast ══════════════ */
#toast{
  position:fixed;
  bottom:24px;
  left:50%;
  transform:translate(-50%,20px);
  opacity:0;
  pointer-events:none;
  transition:all .4s cubic-bezier(.22,1,.36,1);
  z-index:90;
}

#toast.show{
  opacity:1;
  transform:translate(-50%,0);
}

/* ══════════════ Drawers ══════════════ */
#cartDrawer,
#wishDrawer,
#overlay{
  transition:all .5s cubic-bezier(.22,1,.36,1);
}

/* ══════════════ Desktop Navigation + Dropdown ══════════════ */
.desktop-nav{
  position:relative;
}

.desktop-nav .nav-item{
  position:relative;
}

.nav-link,
.nav-simple{
  display:inline-flex;
  align-items:center;
  gap:.4rem;
  border-radius:999px;
  padding:.55rem 1rem;
  font-weight:800;
  color:rgba(255,255,255,.72);
  transition:
    background .25s ease,
    color .25s ease,
    transform .25s ease;
}

.nav-link:hover,
.nav-simple:hover,
.nav-item:hover > .nav-link{
  background:rgba(255,255,255,.09);
  color:#fff;
}

.nav-arrow{
  width:14px;
  height:14px;
  opacity:.55;
  transition:transform .25s ease, opacity .25s ease;
}

.nav-item:hover .nav-arrow{
  transform:rotate(180deg);
  opacity:1;
}

/* Dropdown معمولی */
.nav-dropdown{
  position:absolute;
  top:calc(100% + 14px);
  right:0;
  width:260px;
  overflow:hidden;
  border-radius:24px;
  padding:.55rem;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:translateY(10px) scale(.98);
  transition:
    opacity .3s ease,
    visibility .3s ease,
    transform .3s cubic-bezier(.22,1,.36,1);
  margin-top: -12px;
}

.has-dropdown:hover .nav-dropdown,
.has-dropdown:focus-within .nav-dropdown{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transform:translateY(0) scale(1);
}

.dropdown-link{
  position:relative;
  z-index:10;
  display:flex;
  align-items:center;
  gap:.75rem;
  border-radius:18px;
  padding:.8rem .85rem;
  color:rgba(255,255,255,.68);
  transition:
    background .25s ease,
    color .25s ease,
    transform .25s ease;
}

.dropdown-link:hover{
  background:rgba(255,255,255,.08);
  color:#fff;
  transform:translateX(-4px);
}

.dropdown-link svg{
  width:20px;
  height:20px;
  flex-shrink:0;
  color:#ef232d;
}

.dropdown-link span{
  font-size:13px;
  font-weight:850;
}

/* ══════════════ Product Mega Menu (Fixed, no overflow issue) ══════════════ */
.nav-products{
  position:static !important;
}

.nav-products::after{
  content:"";
  position:fixed;
  top:62px;
  left:0;
  right:0;
  height:36px;
  z-index:58;
  display:none;
}

.nav-products:hover::after{
  display:block;
}

.products-mega{
  position:fixed;
  top:82px;
  right:max(20px, calc((100vw - 1320px) / 2 + 20px));
  left:max(20px, calc((100vw - 1320px) / 2 + 20px));
  z-index:59;

  width:auto;
  height:auto;
  max-height:none;

  overflow:hidden; /* بدون اسکرول داخلی */

  border-radius:34px;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:translateY(14px) scale(.985);
  transform-origin:top center;
  transition:
    opacity .35s ease,
    visibility .35s ease,
    transform .35s cubic-bezier(.22,1,.36,1);
}

.nav-products:hover .products-mega,
.nav-products:focus-within .products-mega{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transform:translateY(0) scale(1);
}

.products-mega-inner{
  position:relative;
  z-index:10;
  display:grid;
  grid-template-columns:290px minmax(0, 1fr);
  align-items:start;
  gap:1.25rem;
  padding:1.15rem;
}

/* باکس توضیحات */
.products-info-box{
  position:relative;
  height:max-content;
  overflow:hidden;
  border-radius:28px;
  padding:1.25rem;
  background:
    radial-gradient(90% 80% at 20% 0%, rgba(239,35,45,.3), transparent 62%),
    linear-gradient(145deg, rgba(239,35,45,.16), rgba(255,255,255,.045));
  border:1px solid rgba(239,35,45,.24);
}

.products-info-box::after{
  content:"";
  position:absolute;
  left:-45%;
  bottom:-38%;
  width:260px;
  height:260px;
  border-radius:999px;
  background:rgba(239,35,45,.18);
  filter:blur(42px);
  pointer-events:none;
}

.products-info-icon{
  position:relative;
  z-index:10;
  display:grid;
  width:54px;
  height:54px;
  place-items:center;
  margin-bottom:1rem;
  border-radius:20px;
  background:rgba(239,35,45,.18);
  border:1px solid rgba(239,35,45,.32);
  color:#fff;
  box-shadow:0 18px 40px -18px rgba(239,35,45,.7);
}

.products-info-icon svg{
  width:28px;
  height:28px;
}

.products-info-label{
  position:relative;
  z-index:10;
  font-size:12px;
  font-weight:900;
  color:#ffb3b7;
}

.products-info-box h3{
  position:relative;
  z-index:10;
  margin-top:.55rem;
  font-size:19px;
  line-height:1.8;
  font-weight:950;
  color:#fff;
}

.products-info-box p:not(.products-info-label){
  position:relative;
  z-index:10;
  margin-top:.75rem;
  font-size:13px;
  line-height:2;
  color:rgba(255,255,255,.56);
}

.products-info-btn{
  position:relative;
  z-index:10;
  display:inline-flex;
  align-items:center;
  gap:.5rem;
  margin-top:1.15rem;
  border-radius:999px;
  background:#ef232d;
  padding:.72rem 1.1rem;
  font-size:12px;
  font-weight:900;
  color:#fff;
  box-shadow:0 14px 34px -12px rgba(239,35,45,.65);
  transition:.25s ease;
}

.products-info-btn:hover{
  background:#c8121b;
  transform:translateY(-2px);
}

/* لیست دسته‌ها */
.products-menu-list{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  align-items:start;
  gap:.95rem 1.25rem;
  padding:.2rem;
}

.mega-cat{
  min-width:0;
  padding-bottom:.8rem;
  border-bottom:1px solid rgba(255,255,255,.075);
}

.mega-cat-head{
  display:flex;
  align-items:center;
  gap:.75rem;
  margin-bottom:.65rem;
}

.mega-cat-icon{
  display:grid;
  width:40px;
  height:40px;
  flex-shrink:0;
  place-items:center;
  border-radius:16px;
  background:
    radial-gradient(circle at 30% 20%, rgba(255,255,255,.18), transparent 38%),
    linear-gradient(135deg, rgba(239,35,45,.22), rgba(255,255,255,.04));
  border:1px solid rgba(239,35,45,.25);
  color:#ff5b62;
}

.mega-cat-icon svg{
  width:21px;
  height:21px;
}

.mega-cat-head b{
  display:block;
  font-size:13.5px;
  font-weight:950;
  color:#fff;
}

.mega-cat-head small{
  display:block;
  margin-top:.12rem;
  font-size:11px;
  line-height:1.6;
  color:rgba(255,255,255,.42);
}

.mega-sub-list{
  display:grid;
  gap:.1rem;
  padding-right:3.25rem;
}

.mega-sub-list a{
  position:relative;
  display:flex;
  align-items:center;
  min-height:26px;
  border-radius:12px;
  padding:.22rem .65rem;
  font-size:12px;
  font-weight:700;
  color:rgba(255,255,255,.56);
  transition:
    color .22s ease,
    background .22s ease,
    transform .22s ease;
}

.mega-sub-list a::before{
  content:"";
  width:5px;
  height:5px;
  margin-left:.55rem;
  border-radius:999px;
  background:rgba(239,35,45,.7);
  box-shadow:0 0 0 4px rgba(239,35,45,.08);
  transition:.22s ease;
}

.mega-sub-list a:hover{
  color:#fff;
  background:rgba(255,255,255,.055);
  transform:translateX(-4px);
}

.mega-sub-list a:hover::before{
  background:#fff;
  box-shadow:0 0 0 4px rgba(239,35,45,.18);
}

/* ریسپانسیو دسکتاپ کوچک */
@media (max-width:1180px){
  .products-mega{
    right:16px;
    left:16px;
  }

  .products-mega-inner{
    grid-template-columns:260px minmax(0, 1fr);
  }

  .products-menu-list{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}

/* ══════════════ Mobile Drawer Menu ══════════════ */
.mobile-panel{
  display:none;
  animation:mobilePanel .32s cubic-bezier(.22,1,.36,1) both;
}

.mobile-panel.active{ display:block }

@keyframes mobilePanel{
  from{ opacity:0; transform:translateX(-16px) }
  to{ opacity:1; transform:translateX(0) }
}

.mobile-row{
  display:flex;
  width:100%;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  border-radius:22px;
  padding:1rem;
  font-size:14px;
  font-weight:800;
  color:rgba(255,255,255,.72);
  transition:.3s ease;
}

.mobile-row:hover{
  background:rgba(255,255,255,.08);
  color:#fff;
}

.mobile-back{
  display:inline-flex;
  align-items:center;
  gap:.5rem;
  margin-bottom:.75rem;
  border-radius:999px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.10);
  padding:.65rem 1rem;
  font-size:12px;
  font-weight:800;
  color:rgba(255,255,255,.7);
}

.mobile-sub{
  display:block;
  border-radius:22px;
  padding:1rem;
  margin-bottom:.5rem;
  background:rgba(255,255,255,.045);
  border:1px solid rgba(255,255,255,.07);
  transition:.3s ease;
  width: 100%;
  text-align: right;
}

.mobile-sub:hover{
  background:rgba(239,35,45,.12);
  border-color:rgba(239,35,45,.28);
}

.mobile-sub b{
  display:block;
  font-size:13px;
  color:#fff;
}

.mobile-sub small{
  display:block;
  margin-top:.35rem;
  font-size:11px;
  color:rgba(255,255,255,.45);
}

.mobile-bottom-btn{
  display:grid;
  min-height:42px;
  place-items:center;
  border-radius:16px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.055);
  font-size:11px;
  font-weight:900;
  color:rgba(255,255,255,.7);
  transition:.3s ease;
}

.mobile-bottom-btn:hover{
  background:rgba(239,35,45,.14);
  color:#fff;
  border-color:rgba(239,35,45,.35);
}

/* ══════════════ Wishlist ══════════════ */
.wish-toggle{
  position:absolute;
  top:.75rem;
  left:.75rem;
  z-index:25;
  display:grid;
  width:38px;
  height:38px;
  place-items:center;
  border-radius:16px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(0,0,0,.45);
  color:rgba(255,255,255,.78);
  -webkit-backdrop-filter:blur(14px);
  backdrop-filter:blur(14px);
  transition:.3s ease;
}

.wish-toggle:hover{
  transform:scale(1.08);
  color:#fff;
  border-color:rgba(239,35,45,.45);
}

.wish-toggle.active{
  background:#ef232d;
  color:#fff;
  border-color:transparent;
  box-shadow:0 14px 34px -12px rgba(239,35,45,.65);
}

@media (prefers-reduced-motion: reduce){
  *{
    animation:none !important;
    transition:none !important;
  }
}

/* ══════════════ Footer ══════════════ */
.footer-wrap{
  background:
    radial-gradient(55rem 24rem at 90% -20%, rgba(239,35,45,.10), transparent 60%),
    radial-gradient(40rem 20rem at -10% 10%, rgba(239,35,45,.06), transparent 62%);
}

.footer-main{
  position:relative;
}

.footer-title{
  margin-bottom:.8rem;
  font-size:.78rem;
  font-weight:900;
  color:rgba(255,255,255,.88);
}

.footer-list{
  display:grid;
  gap:.5rem;
}

.footer-list a{
  font-size:.82rem;
  color:rgba(255,255,255,.52);
  transition:.25s ease;
}

.footer-list a:hover{
  color:#fff;
  transform:translateX(-3px);
}

.licenses-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:.5rem;
}

.license-card{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:.35rem;
  min-height:78px;
  border-radius:16px;
  border:1px solid rgba(255,255,255,.1);
  background:rgba(255,255,255,.04);
  color:rgba(255,255,255,.65);
  transition:.25s ease;
}

.license-card:hover{
  color:#fff;
  border-color:rgba(239,35,45,.36);
  background:rgba(239,35,45,.12);
  transform:translateY(-2px);
}

.license-icon{
  display:grid;
  width:30px;
  height:30px;
  place-items:center;
  border-radius:10px;
  border:1px solid rgba(239,35,45,.28);
  background:rgba(239,35,45,.12);
  color:#ff5b62;
}

.license-icon svg{
  width:17px;
  height:17px;
}

.license-card span:last-child{
  font-size:11px;
  font-weight:800;
}

.footer-sep{
  height:1px;
  background:linear-gradient(90deg, transparent, rgba(255,255,255,.16), transparent);
}

.footer-dev-link{
  color:#ff7f86;
  font-weight:800;
  transition:.2s ease;
}

.footer-dev-link:hover{
  color:#fff;
  text-decoration:underline;
  text-underline-offset:4px;
}

.ltr{
  direction:ltr;
  unicode-bidi:bidi-override;
  display:inline-block;
}

@media (max-width:640px){
  .licenses-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }

  .license-card{
    min-height:72px;
    border-radius:14px;
  }
  .gewads{padding: 0px !important;}
}

/* ══════════════════════════════════
   Shop Archive — هم‌تراز #featured
══════════════════════════════════ */
#shop-archive ul.products,
#shop-archive .products {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* اگر جایی ووکامرس li گذاشت */
#shop-archive li.product {
  width: auto !important;
  margin: 0 !important;
  float: none !important;
  list-style: none !important;
}

/* صفحه‌بندی */
#shop-archive .page-numbers {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
  list-style: none;
  margin: 0;
  padding: 0;
}
#shop-archive .page-numbers a,
#shop-archive .page-numbers span {
  display: grid;
  place-items: center;
  min-width: 42px;
  height: 42px;
  padding: 0 12px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.1);
  background: rgba(255,255,255,.04);
  color: rgba(255,255,255,.75);
  font-size: 13px;
  font-weight: 800;
  text-decoration: none;
  transition: .2s ease;
}
#shop-archive .page-numbers a:hover {
  border-color: rgba(239,35,45,.4);
  background: rgba(239,35,45,.12);
  color: #fff;
}
#shop-archive .page-numbers .current {
  background: #ef232d;
  border-color: #ef232d;
  color: #fff;
}

#shop-archive select {
  color-scheme: dark;
}

.scrollbar-thin {
  scrollbar-width: thin;
  scrollbar-color: rgba(239,35,45,.45) transparent;
}
.scrollbar-thin::-webkit-scrollbar { height: 6px; }
.scrollbar-thin::-webkit-scrollbar-thumb {
  background: rgba(239,35,45,.45);
  border-radius: 999px;
}

/* لینک عنوان کارت */
.product-card .product-body h3 a {
  color: inherit;
  text-decoration: none;
}
.product-card .product-body h3 a:hover {
  color: #ef232d;
}

/* دکمه مشاهده وقتی ناموجود است */
.product-card .add-btn svg {
  display: block;
}
/* ════════════════════════════════
   Archive Hero — Tehran Ghate
════════════════════════════════ */
.archive-hero{
  min-height:auto;
  box-shadow:
    inset 0 1px 0 0 rgba(255,255,255,.18),
    inset 0 -1px 0 0 rgba(255,255,255,.04),
    0 28px 80px -28px rgba(0,0,0,.95);
}

.archive-hero .metal{
  border-radius:inherit;
  opacity:.85;
}

.archive-hero .metal .vig{
  background:radial-gradient(95% 75% at 50% 40%, transparent 18%, rgba(5,5,5,.55) 68%, rgba(5,5,5,.82) 100%);
}

.archive-live-dot{
  width:7px;
  height:7px;
  border-radius:999px;
  background:#ef232d;
  box-shadow:0 0 0 4px rgba(239,35,45,.22);
  animation:archivePulse 1.8s ease-in-out infinite;
}

.archive-stock-dot{
  width:7px;
  height:7px;
  border-radius:999px;
  background:#4ade80;
  box-shadow:0 0 0 3px rgba(74,222,128,.18);
}

@keyframes archivePulse{
  0%,100%{ transform:scale(1); opacity:1 }
  50%{ transform:scale(.82); opacity:.65 }
}

.archive-toolbar{
  box-shadow:
    inset 0 1px 0 0 rgba(255,255,255,.14),
    0 18px 50px -24px rgba(0,0,0,.85);
}

.archive-search input{
  -webkit-appearance:none;
  appearance:none;
}

.archive-toolbar select option{
  color:#fff;
  background:#121214;
}

/* spotlight روی هیرو آرشیو */
.archive-hero.spot > .spotlight,
.archive-toolbar.spot > .spotlight{
  border-radius:inherit;
}

/* موبایل */
@media (max-width:640px){
  .archive-hero{
    border-radius:24px;
  }
  .archive-toolbar{
    border-radius:24px;
  }
}

/* =========================================================
   ARCHIVE PAGINATION — Tehran Ghate
   HTML: ul.page-numbers > li > a.page-numbers | span.current | span.dots
   ========================================================= */

#shop-archive .mt-12.flex.justify-center,
.woocommerce nav.woocommerce-pagination,
.woocommerce .woocommerce-pagination {
  margin-top: 3rem;
  display: flex;
  justify-content: center;
  width: 100%;
}

/* خود لیست */
ul.page-numbers,
.woocommerce-pagination ul.page-numbers {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 0.4rem;
  list-style: none !important;
  margin: 0 !important;
  padding: 0.45rem !important;
  border-radius: 9999px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.06), rgba(255, 255, 255, 0.02)),
    rgba(0, 0, 0, 0.45);
  backdrop-filter: blur(18px) saturate(160%);
  -webkit-backdrop-filter: blur(18px) saturate(160%);
  box-shadow:
    0 18px 40px -22px rgba(0, 0, 0, 0.75),
    inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

ul.page-numbers::before {
  content: none !important;
}

/* آیتم‌ها */
ul.page-numbers > li {
  display: flex !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  float: none !important;
  border: 0 !important;
  background: none !important;
}

/* لینک‌ها + current + dots */
ul.page-numbers a.page-numbers,
ul.page-numbers span.page-numbers {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  min-width: 2.55rem;
  height: 2.55rem;
  padding: 0 0.85rem !important;
  border-radius: 9999px !important;
  border: 1px solid transparent !important;
  background: transparent !important;
  color: rgba(255, 255, 255, 0.62) !important;
  font-size: 0.8125rem !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  letter-spacing: 0;
  box-shadow: none !important;
  transition:
    color 0.2s ease,
    background 0.2s ease,
    border-color 0.2s ease,
    transform 0.2s ease,
    box-shadow 0.2s ease;
}

/* هاور لینک‌ها */
ul.page-numbers a.page-numbers:hover {
  color: #fff !important;
  border-color: rgba(255, 255, 255, 0.14) !important;
  background: rgba(255, 255, 255, 0.08) !important;
  transform: translateY(-1px);
}

ul.page-numbers a.page-numbers:active {
  transform: translateY(0);
}

/* صفحه فعال */
ul.page-numbers span.page-numbers.current,
ul.page-numbers a.page-numbers.current {
  color: #fff !important;
  border-color: rgba(239, 35, 45, 0.45) !important;
  background:
    linear-gradient(180deg, rgba(239, 35, 45, 0.95), rgba(200, 18, 27, 0.92)) !important;
  box-shadow:
    0 12px 28px -10px rgba(239, 35, 45, 0.7),
    inset 0 1px 0 rgba(255, 255, 255, 0.22) !important;
}

/* سه نقطه */
ul.page-numbers span.page-numbers.dots {
  min-width: 1.75rem;
  padding: 0 0.35rem !important;
  color: rgba(255, 255, 255, 0.28) !important;
  background: transparent !important;
  border-color: transparent !important;
  box-shadow: none !important;
  cursor: default;
  letter-spacing: 0.08em;
}

/* prev / next */
ul.page-numbers a.prev.page-numbers,
ul.page-numbers a.next.page-numbers {
  min-width: 2.75rem;
  color: rgba(255, 255, 255, 0.78) !important;
  border-color: rgba(255, 255, 255, 0.1) !important;
  background: rgba(255, 255, 255, 0.04) !important;
  font-size: 0.95rem !important;
}

ul.page-numbers a.prev.page-numbers:hover,
ul.page-numbers a.next.page-numbers:hover {
  color: #fff !important;
  border-color: rgba(239, 35, 45, 0.4) !important;
  background: rgba(239, 35, 45, 0.18) !important;
  box-shadow: 0 10px 24px -12px rgba(239, 35, 45, 0.55);
}

/* فوکوس دسترسی‌پذیری */
ul.page-numbers a.page-numbers:focus-visible {
  outline: none !important;
  box-shadow:
    0 0 0 3px rgba(239, 35, 45, 0.28),
    0 0 0 1px rgba(239, 35, 45, 0.55) !important;
}

/* اعداد فارسی اگر کلاس num داری */
ul.page-numbers a.page-numbers,
ul.page-numbers span.page-numbers.current {
  font-variant-numeric: tabular-nums;
}

/* موبایل */
@media (max-width: 640px) {
  ul.page-numbers,
  .woocommerce-pagination ul.page-numbers {
    gap: 0.28rem;
    padding: 0.35rem !important;
    max-width: 100%;
  }

  ul.page-numbers a.page-numbers,
  ul.page-numbers span.page-numbers {
    min-width: 2.25rem;
    height: 2.25rem;
    padding: 0 0.6rem !important;
    font-size: 0.75rem !important;
  }

  ul.page-numbers a.prev.page-numbers,
  ul.page-numbers a.next.page-numbers {
    min-width: 2.4rem;
  }
}

/* اگر ووکامرس wrapper اضافه کرد */
.woocommerce nav.woocommerce-pagination ul {
  border: 0 !important;
  background: transparent !important;
}

.woocommerce nav.woocommerce-pagination ul li {
  border: 0 !important;
  overflow: visible !important;
}

.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
  float: none !important;
  padding: 0 !important;
}

.product-card .stars {
  display: flex;
  align-items: center;
  gap: 0.35rem;
  flex-wrap: wrap;
  font-size: 12px;
  line-height: 1;
  margin-bottom: 0.35rem;
}

.product-card .stars-icons {
  display: inline-flex;
  gap: 1px;
  letter-spacing: 0;
}

.product-card .star-full {
  color: #f5c542;
}

.product-card .star-half {
  color: #f5c542;
  opacity: 0.7;
}

.product-card .star-empty {
  color: rgba(255, 255, 255, 0.25);
}

.product-card .stars-value {
  color: rgba(255, 255, 255, 0.7);
  font-weight: 700;
}

.product-card .stars-count {
  font-size: 11px;
}

.product-card h3 a {
  color: inherit;
  text-decoration: none;
}

.product-card .ph {
  overflow: hidden;
}

/* ═══════════════════════════════════════════════════════════════
   GRAVITY FORMS — Tehran Ghate Dark Theme
   نسخه کامل جایگزین استایل قبلی
═══════════════════════════════════════════════════════════════ */

/* متغیرهای اصلی فرم */
.gform_wrapper{
  --gf-red:#ef232d;
  --gf-red-dark:#c8121b;
  --gf-white:#fafafa;
  --gf-green:#4ade80;
  --gf-field-height:54px;
  --gf-radius:16px;
  --gf-border:rgba(255,255,255,.12);
  --gf-border-hover:rgba(255,255,255,.22);
  --gf-field-bg:rgba(255,255,255,.04);
  --gf-field-bg-hover:rgba(255,255,255,.06);
  --gf-muted:rgba(255,255,255,.55);

  width:100% !important;
  max-width:100% !important;
  direction:rtl !important;
  text-align:right !important;
  color:#fafafa !important;
  font-family:inherit !important;
  color-scheme:dark;
}

/* جلوگیری از محاسبه اشتباه عرض فیلدها */
.gform_wrapper *,
.gform_wrapper *::before,
.gform_wrapper *::after{
  box-sizing:border-box;
}

/* فرم */
.gform_wrapper form{
  width:100%;
  margin:0;
  padding:0;
  direction:rtl;
}

/* حذف پس‌زمینه‌های پیش‌فرض نسخه Orbital */
.gform_wrapper.gform-theme--orbital,
.gform_wrapper.gform-theme,
.gform_wrapper .gform-body,
.gform_wrapper .gform_footer,
.gform_wrapper .gform_page_footer{
  background:transparent !important;
  color:#fafafa !important;
}

/* ساختار اصلی فیلدها */
.gform_wrapper .gform_fields{
  display:grid;
  width:100%;
  gap:22px 16px !important;
}

.gform_wrapper .gfield{
  min-width:0;
  margin:0 !important;
  padding:0 !important;
}

/* فاصله فیلدهای ترکیبی */
.gform_wrapper .ginput_complex{
  gap:14px !important;
}

.gform_wrapper .ginput_container{
  position:relative;
  width:100%;
  min-width:0;
}

/* ══════════════════════════════════
   عنوان فرم
══════════════════════════════════ */

.gform_wrapper .gform_title{
  margin:0 0 .75rem !important;
  color:#fff !important;
  font-size:24px !important;
  font-weight:950 !important;
  line-height:1.6 !important;
}

.gform_wrapper .gform_description{
  display:block;
  margin:0 0 1.5rem !important;
  color:rgba(255,255,255,.58) !important;
  font-size:13px !important;
  line-height:2 !important;
}

/* ══════════════════════════════════
   لیبل‌ها
══════════════════════════════════ */

.gform_wrapper .gfield_label,
.gform_wrapper .gfield_label.gfield_label_before_complex,
.gform_wrapper legend.gfield_label{
  display:block !important;
  margin:0 0 8px !important;
  padding:0 !important;
  color:#fafafa !important;
  font-size:14px !important;
  font-weight:850 !important;
  line-height:1.7 !important;
  text-align:right !important;
}

/* ستاره فیلد الزامی */
.gform_wrapper .gfield_required,
.gform_wrapper .gfield_required_text,
.gform_wrapper .gfield_required_asterisk{
  color:#ff5b62 !important;
  font-size:12px !important;
  font-weight:900 !important;
}

/* لیبل زیر فیلدهای نام، آدرس و... */
.gform_wrapper .ginput_complex label,
.gform_wrapper .gfield_time_hour label,
.gform_wrapper .gfield_time_minute label,
.gform_wrapper .gfield_time_ampm label{
  display:block !important;
  margin:6px 2px 0 !important;
  color:rgba(255,255,255,.48) !important;
  font-size:11px !important;
  line-height:1.6 !important;
  text-align:right !important;
}

/* توضیحات فیلد */
.gform_wrapper .gfield_description,
.gform_wrapper .ginput_counter{
  margin:7px 2px 0 !important;
  padding:0 !important;
  color:rgba(255,255,255,.5) !important;
  font-size:12px !important;
  line-height:1.8 !important;
  text-align:right !important;
}

/* ══════════════════════════════════
   فیلدهای متنی
══════════════════════════════════ */

.gform_wrapper input[type="text"],
.gform_wrapper input[type="email"],
.gform_wrapper input[type="tel"],
.gform_wrapper input[type="number"],
.gform_wrapper input[type="url"],
.gform_wrapper input[type="password"],
.gform_wrapper input[type="search"],
.gform_wrapper input[type="date"],
.gform_wrapper input[type="time"],
.gform_wrapper input[type="month"],
.gform_wrapper input[type="week"],
.gform_wrapper input[type="datetime-local"],
.gform_wrapper textarea{
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  margin:0 !important;
  border:1px solid var(--gf-border) !important;
  border-radius:var(--gf-radius) !important;
  outline:none !important;
  background:var(--gf-field-bg) !important;
  background-color:var(--gf-field-bg) !important;
  color:#fafafa !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.035),
    0 8px 24px -18px rgba(0,0,0,.85) !important;
  font-family:inherit !important;
  font-size:15px !important;
  font-weight:500 !important;
  line-height:1.5 !important;
  text-align:right !important;
  direction:rtl !important;
  transition:
    border-color .25s ease,
    background-color .25s ease,
    box-shadow .25s ease,
    transform .25s ease !important;
	border-radius: 16px !important;
}

.gform_wrapper input[type="text"],
.gform_wrapper input[type="email"],
.gform_wrapper input[type="tel"],
.gform_wrapper input[type="number"],
.gform_wrapper input[type="url"],
.gform_wrapper input[type="password"],
.gform_wrapper input[type="search"],
.gform_wrapper input[type="date"],
.gform_wrapper input[type="time"],
.gform_wrapper input[type="month"],
.gform_wrapper input[type="week"],
.gform_wrapper input[type="datetime-local"]{
  height:var(--gf-field-height) !important;
  min-height:var(--gf-field-height) !important;
  padding:0 18px !important;
}

/* فیلدهایی که بهتر است چپ‌چین باشند */
.gform_wrapper input[type="email"],
.gform_wrapper input[type="url"]{
  direction:ltr !important;
  text-align:left !important;
}

/* شماره تلفن همچنان راست‌چین */
.gform_wrapper input[type="tel"]{
  direction:rtl !important;
  text-align:right !important;
}

/* فیلد چندخطی */
.gform_wrapper textarea{
  min-height:130px !important;
  padding:15px 18px !important;
  resize:vertical !important;
  line-height:1.9 !important;
}

/* Placeholder */
.gform_wrapper input::placeholder,
.gform_wrapper textarea::placeholder{
  color:#eee !important;
}

/* هاور */
.gform_wrapper input[type="text"]:hover,
.gform_wrapper input[type="email"]:hover,
.gform_wrapper input[type="tel"]:hover,
.gform_wrapper input[type="number"]:hover,
.gform_wrapper input[type="url"]:hover,
.gform_wrapper input[type="password"]:hover,
.gform_wrapper input[type="search"]:hover,
.gform_wrapper input[type="date"]:hover,
.gform_wrapper input[type="time"]:hover,
.gform_wrapper input[type="datetime-local"]:hover,
.gform_wrapper textarea:hover,
.gform_wrapper select:hover{
  border-color:var(--gf-border-hover) !important;
  background-color:var(--gf-field-bg-hover) !important;
}

/* فوکوس */
.gform_wrapper input[type="text"]:focus,
.gform_wrapper input[type="email"]:focus,
.gform_wrapper input[type="tel"]:focus,
.gform_wrapper input[type="number"]:focus,
.gform_wrapper input[type="url"]:focus,
.gform_wrapper input[type="password"]:focus,
.gform_wrapper input[type="search"]:focus,
.gform_wrapper input[type="date"]:focus,
.gform_wrapper input[type="time"]:focus,
.gform_wrapper input[type="month"]:focus,
.gform_wrapper input[type="week"]:focus,
.gform_wrapper input[type="datetime-local"]:focus,
.gform_wrapper textarea:focus,
.gform_wrapper select:focus{
  border-color:var(--gf-red) !important;
  background-color:rgba(255,255,255,.065) !important;
  box-shadow:
    0 0 0 4px rgba(239,35,45,.13),
    inset 0 1px 0 rgba(255,255,255,.06),
    0 14px 32px -22px rgba(239,35,45,.65) !important;
  outline:none !important;
}

/* فیلد غیرفعال */
.gform_wrapper input:disabled,
.gform_wrapper textarea:disabled,
.gform_wrapper select:disabled{
  cursor:not-allowed !important;
  opacity:.5 !important;
  background:rgba(255,255,255,.025) !important;
}

/* فیلد فقط‌خواندنی */
.gform_wrapper input[readonly],
.gform_wrapper textarea[readonly]{
  cursor:default;
  color:rgba(255,255,255,.65) !important;
  background:rgba(255,255,255,.025) !important;
}

/* Autofill مرورگر */
.gform_wrapper input:-webkit-autofill,
.gform_wrapper input:-webkit-autofill:hover,
.gform_wrapper input:-webkit-autofill:focus{
  -webkit-text-fill-color:#fafafa !important;
  caret-color:#fafafa !important;
  border-color:rgba(239,35,45,.45) !important;
  -webkit-box-shadow:
    0 0 0 1000px #171719 inset,
    0 0 0 4px rgba(239,35,45,.1) !important;
  transition:background-color 9999s ease-out 0s !important;
}

/* ══════════════════════════════════
   Select Box
══════════════════════════════════ */

/* والد سلکت */
.gform_wrapper .ginput_container_select{
  position:relative !important;
  display:block !important;
  width:100% !important;
  min-width:0 !important;
}

/* حذف فلش احتمالی پیش‌فرض Gravity Forms */
.gform_wrapper .ginput_container_select::after{
  display:none !important;
  content:none !important;
}

/* خود سلکت */
.gform_wrapper select,
.gform_wrapper select.gfield_select,
.gform_wrapper .ginput_container_select select{
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  border-radius: 16px !important;
  height:var(--gf-field-height) !important;
  min-height:var(--gf-field-height) !important;
  margin:0 !important;

  /* راست: فاصله متن / چپ: فضای فلش */
  padding:0 18px 0 52px !important;

  border:1px solid var(--gf-border) !important;
  border-radius:var(--gf-radius) !important;

  background-color:#171719 !important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='m6 9 6 6 6-6' stroke='%23fafafa' stroke-opacity='.72' stroke-width='2.3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
  background-repeat:no-repeat !important;
  background-position:left 18px center !important;
  background-size:18px 18px !important;

  color:#fafafa !important;
  color-scheme:dark !important;

  font-family:inherit !important;
  font-size:15px !important;
  font-weight:600 !important;
  line-height:normal !important;

  direction:rtl !important;
  text-align:right !important;
  text-align-last:right !important;
  vertical-align:middle !important;

  white-space:nowrap !important;
  text-overflow:ellipsis !important;

  cursor:pointer !important;
  outline:none !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.035),
    0 8px 24px -18px rgba(0,0,0,.85) !important;

  appearance:none !important;
  -webkit-appearance:none !important;
  -moz-appearance:none !important;

  transition:
    border-color .25s ease,
    background-color .25s ease,
    box-shadow .25s ease !important;
}

/* حذف فلش پیش‌فرض اینترنت اکسپلورر قدیمی */
.gform_wrapper select::-ms-expand{
  display:none;
}

/* گزینه‌های داخل لیست Select */
.gform_wrapper select option,
.gform_wrapper select.gfield_select option,
.gform_wrapper .ginput_container_select select option{
  min-height:42px !important;
  padding:12px 16px !important;
  background:#171719 !important;
  background-color:#171719 !important;
  color:#fafafa !important;
  font-family:inherit !important;
  font-size:15px !important;
  font-weight:500 !important;
  direction:rtl !important;
  text-align:right !important;
}

/* Placeholder مانند نوع خدمات */
.gform_wrapper select option.gf_placeholder,
.gform_wrapper select option[value=""],
.gform_wrapper select .gf_placeholder{
  background:#171719 !important;
  background-color:#171719 !important;
  color:rgba(255,255,255,.45) !important;
}

/* گزینه انتخاب‌شده */
.gform_wrapper select option:checked{
  background:
    linear-gradient(#ef232d,#ef232d) !important;
  background-color:#ef232d !important;
  color:#fff !important;
}

/* هاور گزینه‌ها؛ در مرورگرهای پشتیبانی‌شده */
.gform_wrapper select option:hover,
.gform_wrapper select option:focus{
  background:
    linear-gradient(#29292d,#29292d) !important;
  background-color:#29292d !important;
  color:#fff !important;
}

/* گروه‌بندی گزینه‌ها */
.gform_wrapper select optgroup{
  background:#101012 !important;
  color:#ff7f86 !important;
  font-weight:900 !important;
}

/* Select چندانتخابی */
.gform_wrapper select[multiple],
.gform_wrapper select[size]:not([size="1"]){
  height:auto !important;
  min-height:150px !important;
  padding:8px !important;
  overflow:auto !important;
  background-image:none !important;
}

.gform_wrapper select[multiple] option,
.gform_wrapper select[size]:not([size="1"]) option{
  margin:2px 0 !important;
  padding:10px 12px !important;
  border-radius:10px !important;
}

/* وقتی گزینه Placeholder انتخاب است */
.gform_wrapper select:required:invalid{
  color:rgba(255,255,255,.45) !important;
}

/* ══════════════════════════════════
   Checkbox و Radio
══════════════════════════════════ */

.gform_wrapper .gfield_checkbox,
.gform_wrapper .gfield_radio{
  display:grid !important;
  gap:10px !important;
  margin:0 !important;
  padding:0 !important;
}

.gform_wrapper .gfield_checkbox .gchoice,
.gform_wrapper .gfield_radio .gchoice{
  display:flex !important;
  align-items:flex-start !important;
  gap:10px !important;
  margin:0 !important;
  padding:0 !important;
}

.gform_wrapper input[type="checkbox"],
.gform_wrapper input[type="radio"]{
  width:19px !important;
  height:19px !important;
  min-width:19px !important;
  margin:2px 0 0 !important;
  padding:0 !important;
  border:1px solid rgba(255,255,255,.2) !important;
  background:#171719 !important;
  accent-color:var(--gf-red) !important;
  cursor:pointer !important;
  box-shadow:none !important;
}

.gform_wrapper input[type="checkbox"]{
  border-radius:6px !important;
}

.gform_wrapper input[type="radio"]{
  border-radius:999px !important;
}

.gform_wrapper input[type="checkbox"]:focus-visible,
.gform_wrapper input[type="radio"]:focus-visible{
  outline:none !important;
  box-shadow:0 0 0 4px rgba(239,35,45,.18) !important;
}

.gform_wrapper .gfield-choice-label,
.gform_wrapper .gchoice label{
  margin:0 !important;
  color:rgba(255,255,255,.85) !important;
  font-size:14px !important;
  font-weight:600 !important;
  line-height:1.8 !important;
  cursor:pointer !important;
  text-align:right !important;
}

/* توضیح زیر گزینه */
.gform_wrapper .gchoice .gfield_description{
  width:100%;
}

/* ══════════════════════════════════
   Consent
══════════════════════════════════ */

.gform_wrapper .ginput_container_consent{
  display:flex !important;
  align-items:flex-start !important;
  gap:10px !important;
}

.gform_wrapper .ginput_container_consent label{
  color:rgba(255,255,255,.78) !important;
  font-size:13px !important;
  line-height:1.9 !important;
  cursor:pointer !important;
}

/* ══════════════════════════════════
   آپلود فایل
══════════════════════════════════ */

.gform_wrapper input[type="file"]{
  display:block !important;
  width:100% !important;
  min-height:54px !important;
  padding:8px !important;
  border:1px dashed rgba(255,255,255,.18) !important;
  border-radius:16px !important;
  background:rgba(255,255,255,.035) !important;
  color:rgba(255,255,255,.62) !important;
  font-family:inherit !important;
  font-size:13px !important;
  cursor:pointer !important;
  transition:.25s ease !important;
}

.gform_wrapper input[type="file"]:hover{
  border-color:rgba(239,35,45,.45) !important;
  background:rgba(239,35,45,.06) !important;
}

.gform_wrapper input[type="file"]::file-selector-button{
  height:36px;
  margin-left:12px;
  padding:0 16px;
  border:0;
  border-radius:11px;
  background:#ef232d;
  color:#fff;
  font-family:inherit;
  font-size:12px;
  font-weight:850;
  cursor:pointer;
  transition:.2s ease;
}

.gform_wrapper input[type="file"]::file-selector-button:hover{
  background:#c8121b;
}

/* Drag & Drop */
.gform_wrapper .gform_drop_area{
  padding:28px 20px !important;
  border:1px dashed rgba(255,255,255,.18) !important;
  border-radius:18px !important;
  background:rgba(255,255,255,.03) !important;
  color:rgba(255,255,255,.58) !important;
  text-align:center !important;
  transition:.25s ease !important;
}

.gform_wrapper .gform_drop_area:hover{
  border-color:rgba(239,35,45,.45) !important;
  background:rgba(239,35,45,.06) !important;
}

.gform_wrapper .gform_drop_instructions{
  color:rgba(255,255,255,.58) !important;
}

/* ══════════════════════════════════
   تاریخ و زمان
══════════════════════════════════ */

.gform_wrapper .ginput_container_date{
  position:relative;
}

.gform_wrapper .ginput_container_date img.ui-datepicker-trigger{
  position:absolute !important;
  top:50% !important;
  left:16px !important;
  width:20px !important;
  height:20px !important;
  margin:0 !important;
  transform:translateY(-50%) !important;
  filter:brightness(0) invert(1) !important;
  opacity:.65 !important;
  cursor:pointer !important;
}

.gform_wrapper .gfield_time_hour,
.gform_wrapper .gfield_time_minute,
.gform_wrapper .gfield_time_ampm{
  min-width:0 !important;
}

/* ══════════════════════════════════
   بخش‌بندی و HTML
══════════════════════════════════ */

.gform_wrapper .gsection{
  margin:8px 0 0 !important;
  padding:0 0 14px !important;
  border:0 !important;
  border-bottom:1px solid rgba(255,255,255,.09) !important;
}

.gform_wrapper .gsection_title{
  margin:0 !important;
  color:#fff !important;
  font-size:18px !important;
  font-weight:950 !important;
  line-height:1.7 !important;
}

.gform_wrapper .gsection_description{
  margin:6px 0 0 !important;
  color:rgba(255,255,255,.52) !important;
  font-size:13px !important;
  line-height:1.9 !important;
}

.gform_wrapper .gfield_html{
  color:rgba(255,255,255,.72) !important;
  font-size:14px !important;
  line-height:2 !important;
}

/* ══════════════════════════════════
   دکمه‌ها
══════════════════════════════════ */

.gform_wrapper .gform_footer,
.gform_wrapper .gform_page_footer{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  flex-wrap:wrap !important;
  gap:10px !important;
  margin:26px 0 0 !important;
  padding:0 !important;
  text-align:right !important;
}

/* دکمه ارسال و مرحله بعد */
.gform_wrapper input[type="submit"],
.gform_wrapper button[type="submit"],
.gform_wrapper .gform_button,
.gform_wrapper .gform_next_button{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:auto !important;
  min-width:150px !important;
  min-height:50px !important;
  margin:0 !important;
  padding:0 28px !important;
  border:1px solid rgba(255,255,255,.08) !important;
  border-radius:16px !important;
  background:
    linear-gradient(180deg, #f3343e 0%, #ef232d 52%, #d61720 100%) !important;
  color:#fff !important;
  font-family:inherit !important;
  font-size:14px !important;
  font-weight:900 !important;
  line-height:1 !important;
  text-align:center !important;
  cursor:pointer !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.22),
    0 16px 34px -14px rgba(239,35,45,.7) !important;
  transition:
    transform .22s ease,
    background .22s ease,
    box-shadow .22s ease !important;
}

.gform_wrapper input[type="submit"]:hover,
.gform_wrapper button[type="submit"]:hover,
.gform_wrapper .gform_button:hover,
.gform_wrapper .gform_next_button:hover{
  background:
    linear-gradient(180deg, #e5242e 0%, #c8121b 100%) !important;
  transform:translateY(-2px) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.18),
    0 20px 38px -14px rgba(239,35,45,.78) !important;
}

.gform_wrapper input[type="submit"]:active,
.gform_wrapper button[type="submit"]:active,
.gform_wrapper .gform_button:active,
.gform_wrapper .gform_next_button:active{
  transform:translateY(0) scale(.98) !important;
}

/* دکمه قبلی */
.gform_wrapper .gform_previous_button{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:auto !important;
  min-width:120px !important;
  min-height:50px !important;
  margin:0 !important;
  padding:0 24px !important;
  border:1px solid rgba(255,255,255,.12) !important;
  border-radius:16px !important;
  background:rgba(255,255,255,.06) !important;
  color:rgba(255,255,255,.85) !important;
  font-family:inherit !important;
  font-size:14px !important;
  font-weight:800 !important;
  cursor:pointer !important;
  box-shadow:none !important;
  transition:.22s ease !important;
}

.gform_wrapper .gform_previous_button:hover{
  border-color:rgba(255,255,255,.2) !important;
  background:rgba(255,255,255,.11) !important;
  color:#fff !important;
  transform:translateY(-2px) !important;
}

/* فوکوس دکمه‌ها */
.gform_wrapper input[type="submit"]:focus-visible,
.gform_wrapper button[type="submit"]:focus-visible,
.gform_wrapper .gform_button:focus-visible,
.gform_wrapper .gform_next_button:focus-visible,
.gform_wrapper .gform_previous_button:focus-visible{
  outline:none !important;
  box-shadow:
    0 0 0 4px rgba(239,35,45,.22),
    0 16px 34px -14px rgba(239,35,45,.7) !important;
}

/* حالت غیرفعال دکمه */
.gform_wrapper input[type="submit"]:disabled,
.gform_wrapper button[type="submit"]:disabled{
  cursor:not-allowed !important;
  opacity:.55 !important;
  transform:none !important;
}

/* Spinner گرویتی فرم */
.gform_wrapper .gform_ajax_spinner{
  width:24px !important;
  height:24px !important;
  margin:0 10px !important;
  filter:brightness(0) invert(1) !important;
}

/* ══════════════════════════════════
   Progress Bar فرم چندمرحله‌ای
══════════════════════════════════ */

.gform_wrapper .gf_progressbar_wrapper{
  margin:0 0 26px !important;
}

.gform_wrapper .gf_progressbar_title{
  margin:0 0 10px !important;
  color:rgba(255,255,255,.65) !important;
  font-size:12px !important;
  font-weight:800 !important;
}

.gform_wrapper .gf_progressbar{
  height:10px !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.07) !important;
  box-shadow:inset 0 1px 2px rgba(0,0,0,.35) !important;
  overflow:hidden !important;
}

.gform_wrapper .gf_progressbar_percentage{
  height:100% !important;
  border-radius:inherit !important;
  background:
    linear-gradient(90deg,#c8121b,#ef232d,#ff5b62) !important;
  color:#fff !important;
  box-shadow:0 0 18px rgba(239,35,45,.4) !important;
}

.gform_wrapper .gf_progressbar_percentage span{
  display:none !important;
}

/* مراحل */
.gform_wrapper .gf_page_steps{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:8px !important;
  margin:0 0 24px !important;
  padding:0 0 16px !important;
  border-bottom:1px solid rgba(255,255,255,.08) !important;
}

.gform_wrapper .gf_step{
  margin:0 !important;
  color:rgba(255,255,255,.42) !important;
}

.gform_wrapper .gf_step.gf_step_active{
  color:#fff !important;
}

.gform_wrapper .gf_step_number{
  border-color:rgba(255,255,255,.14) !important;
  background:rgba(255,255,255,.05) !important;
  color:inherit !important;
}

.gform_wrapper .gf_step_active .gf_step_number{
  border-color:#ef232d !important;
  background:#ef232d !important;
  color:#fff !important;
}

/* ══════════════════════════════════
   خطاها
══════════════════════════════════ */

/* خلاصه خطا در بالای فرم */
.gform_wrapper .gform_validation_errors{
  margin:0 0 24px !important;
  padding:16px 18px !important;
  border:1px solid rgba(239,35,45,.32) !important;
  border-radius:16px !important;
  background:
    linear-gradient(145deg,rgba(239,35,45,.14),rgba(239,35,45,.06)) !important;
  color:#ff9a9f !important;
  box-shadow:none !important;
}

.gform_wrapper .gform_validation_errors h2{
  margin:0 !important;
  color:#ff8a90 !important;
  font-family:inherit !important;
  font-size:14px !important;
  font-weight:850 !important;
  line-height:1.8 !important;
}

/* فیلد دارای خطا */
.gform_wrapper .gfield_error{
  border:0 !important;
  background:transparent !important;
}

.gform_wrapper .gfield_error .gfield_label{
  color:#ff8389 !important;
}

.gform_wrapper .gfield_error input:not([type="checkbox"]):not([type="radio"]),
.gform_wrapper .gfield_error textarea,
.gform_wrapper .gfield_error select{
  border-color:rgba(239,35,45,.82) !important;
  background-color:rgba(239,35,45,.055) !important;
  box-shadow:0 0 0 4px rgba(239,35,45,.1) !important;
}

/* پیام خطای زیر هر فیلد */
.gform_wrapper .gfield_validation_message,
.gform_wrapper .validation_message{
  margin:8px 0 0 !important;
  padding:9px 12px !important;
  border:1px solid rgba(239,35,45,.24) !important;
  border-radius:11px !important;
  background:rgba(239,35,45,.09) !important;
  color:#ff8389 !important;
  font-size:12px !important;
  font-weight:650 !important;
  line-height:1.7 !important;
  text-align:right !important;
}

/* ══════════════════════════════════
   پیام موفقیت
══════════════════════════════════ */

.gform_confirmation_wrapper{
  width:100%;
}

.gform_confirmation_message{
  width:100% !important;
  margin:0 !important;
  padding:22px !important;
  border:1px solid rgba(74,222,128,.26) !important;
  border-radius:18px !important;
  background:
    linear-gradient(145deg,rgba(74,222,128,.13),rgba(74,222,128,.055)) !important;
  color:#72e99c !important;
  font-size:14px !important;
  font-weight:700 !important;
  line-height:2 !important;
  text-align:center !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.06),
    0 18px 40px -28px rgba(74,222,128,.5) !important;
}

/* ══════════════════════════════════
   Datepicker
══════════════════════════════════ */

.ui-datepicker{
  padding:10px !important;
  border:1px solid rgba(255,255,255,.12) !important;
  border-radius:16px !important;
  background:#171719 !important;
  color:#fafafa !important;
  box-shadow:0 24px 60px rgba(0,0,0,.65) !important;
  font-family:inherit !important;
}

.ui-datepicker .ui-datepicker-header{
  border:0 !important;
  border-radius:12px !important;
  background:rgba(255,255,255,.06) !important;
  color:#fff !important;
}

.ui-datepicker th{
  color:rgba(255,255,255,.5) !important;
}

.ui-datepicker td a,
.ui-datepicker td span{
  border:0 !important;
  border-radius:9px !important;
  background:transparent !important;
  color:rgba(255,255,255,.78) !important;
  text-align:center !important;
}

.ui-datepicker td a:hover{
  background:rgba(255,255,255,.09) !important;
  color:#fff !important;
}

.ui-datepicker td.ui-datepicker-current-day a{
  background:#ef232d !important;
  color:#fff !important;
}

.ui-datepicker .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-next{
  cursor:pointer !important;
}

/* ══════════════════════════════════
   ریسپانسیو
══════════════════════════════════ */

@media (max-width:640px){

  .gform_wrapper{
    --gf-field-height:52px;
    --gf-radius:15px;
  }

  .gform_wrapper .gform_fields{
    gap:18px !important;
  }

  .gform_wrapper .gfield_label,
  .gform_wrapper legend.gfield_label{
    font-size:13px !important;
  }

  .gform_wrapper input[type="text"],
  .gform_wrapper input[type="email"],
  .gform_wrapper input[type="tel"],
  .gform_wrapper input[type="number"],
  .gform_wrapper input[type="url"],
  .gform_wrapper input[type="password"],
  .gform_wrapper input[type="search"],
  .gform_wrapper input[type="date"],
  .gform_wrapper input[type="time"],
  .gform_wrapper textarea{
    font-size:14px !important;
	border-radius: 16px !important;
  }

  .gform_wrapper select,
  .gform_wrapper select.gfield_select,
  .gform_wrapper .ginput_container_select select{
    padding-right:16px !important;
    padding-left:46px !important;
    background-position:left 15px center !important;
    font-size:14px !important;
  }

  .gform_wrapper textarea{
    min-height:115px !important;
    padding:14px 16px !important;
  }

  .gform_wrapper .gform_footer,
  .gform_wrapper .gform_page_footer{
    display:grid !important;
    grid-template-columns:1fr !important;
  }

  .gform_wrapper input[type="submit"],
  .gform_wrapper button[type="submit"],
  .gform_wrapper .gform_button,
  .gform_wrapper .gform_next_button,
  .gform_wrapper .gform_previous_button{
    width:100% !important;
    min-width:0 !important;
    min-height:52px !important;
  }

  .gform_wrapper .ginput_complex{
    gap:12px !important;
  }
}

/* حذف انیمیشن برای کاربرانی که آن را غیرفعال کرده‌اند */
@media (prefers-reduced-motion:reduce){
  .gform_wrapper *,
  .gform_wrapper *::before,
  .gform_wrapper *::after{
    transition:none !important;
    animation:none !important;
  }
}

.gform-theme--foundation .gfield .ginput_password.large, .gform-theme--foundation .gfield input.large, .gform-theme--foundation .gfield select.large {border-radius: 16px !important;}