
/* =========================================================
   Asareh / Tochal placement layer
   Purpose: keep TochalFire template intact and only place Tochal content
   Font stack: IranSans / Peyda / Vazir from assets/Fonts
   ========================================================= */

@font-face{
  font-family:"AsarehIranSans";
  src:url("../../Fonts/IranSans/IRANSANSWEB.TTF") format("truetype");
  font-weight:400;
  font-style:normal;
  font-display:swap;
}
@font-face{
  font-family:"AsarehIranSans";
  src:url("../../Fonts/IranSans/IRANSANSWEB_MEDIUM.TTF") format("truetype");
  font-weight:500 700;
  font-style:normal;
  font-display:swap;
}
@font-face{
  font-family:"AsarehIranSans";
  src:url("../../Fonts/IranSans/IRANSANSWEB_BOLD.TTF") format("truetype");
  font-weight:800 950;
  font-style:normal;
  font-display:swap;
}
@font-face{
  font-family:"AsarehPeyda";
  src:url("../../Fonts/peyda/Peyda-Regular.ttf") format("truetype");
  font-weight:400;
  font-style:normal;
  font-display:swap;
}
@font-face{
  font-family:"AsarehPeyda";
  src:url("../../Fonts/peyda/Peyda-Medium.ttf") format("truetype");
  font-weight:500 700;
  font-style:normal;
  font-display:swap;
}
@font-face{
  font-family:"AsarehPeyda";
  src:url("../../Fonts/peyda/Peyda-Bold.ttf") format("truetype");
  font-weight:800;
  font-style:normal;
  font-display:swap;
}
@font-face{
  font-family:"AsarehPeyda";
  src:url("../../Fonts/peyda/Peyda-ExtraBold.ttf") format("truetype");
  font-weight:900;
  font-style:normal;
  font-display:swap;
}
@font-face{
  font-family:"AsarehVazir";
  src:url("../../Fonts/vazir/Vazir-Regular-FD.woff2") format("woff2");
  font-weight:400;
  font-style:normal;
  font-display:swap;
}
@font-face{
  font-family:"AsarehVazir";
  src:url("../../Fonts/vazir/Vazir-Medium-FD.woff2") format("woff2");
  font-weight:500 700;
  font-style:normal;
  font-display:swap;
}
@font-face{
  font-family:"AsarehVazir";
  src:url("../../Fonts/vazir/Vazir-Bold-FD.woff2") format("woff2");
  font-weight:800 950;
  font-style:normal;
  font-display:swap;
}

:root{
  --asareh-red:#b82024;
  --asareh-gold:#d9a842;
  --asareh-ink:#18130f;
  --asareh-muted:#6b5d4d;
  --asareh-line:rgba(0,0,0,.13);
}

html,body{
  font-family:"AsarehPeyda","AsarehIranSans","AsarehVazir",Tahoma,Arial,sans-serif;
}

.primary-nav a,
.inner-menu a,
.kd-footer,
.panel-info-card,
.asareh-header-cta,
.asareh-panel-link,
.asareh-hero-actions a{
  font-family:"AsarehVazir","AsarehPeyda","AsarehIranSans",Tahoma,Arial,sans-serif;
}

.header-logo-img{
  width:150px !important;
  max-height:88px !important;
  object-fit:contain !important;
}

.header-contact.asareh-header-cta-wrap{
  direction:rtl;
  text-align:right;
  left:95px;
  top:30px;
}

.asareh-header-cta{
  min-height:42px;
  padding:0 20px;
  border-radius:999px;
  background:rgba(217,168,66,.92);
  color:#111;
  display:inline-flex;
  align-items:center;
  gap:8px;
  text-decoration:none;
  font-size:12px;
  font-weight:900;
  box-shadow:0 14px 34px rgba(0,0,0,.18);
}

.asareh-header-cta:hover{
  background:#fff;
}

.menu-trigger.asareh-inner-menu-trigger{
  position:static;
  width:30px;
  height:22px;
  flex:0 0 auto;
}

.inner-top-nav{
  align-items:center;
}

.inner-top-nav .inner-menu{
  flex:1;
}

.asareh-hero-text h1{
  font-size:30px !important;
  font-weight:850 !important;
  line-height:1.7 !important;
  margin-bottom:10px !important;
}

.asareh-hero-text span{
  display:block;
  margin:0 0 12px !important;
  font-size:15px;
  font-weight:900;
  color:#d9a842;
}

.asareh-hero-text p{
  margin:0;
  max-width:460px;
  color:rgba(255,255,255,.88);
  font-size:13px;
  line-height:2.2;
}

.asareh-hero-actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top:22px;
}

.asareh-hero-actions a{
  min-height:44px;
  padding:0 22px;
  border-radius:999px;
  background:#d9a842;
  color:#111;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
  font-size:12px;
  font-weight:900;
}

.asareh-hero-actions a:nth-child(2){
  background:rgba(255,255,255,.92);
}

.about-section{
  color:#111;
}

.about-body p{
  text-align:justify;
}

.asareh-team-visual{
  position:relative;
  min-height:560px;
  margin-top:0 !important;
  margin-right:0 !important;
  border-radius:0;
  overflow:hidden;
  box-shadow:none;
  background:#f7f2e8;
}

.asareh-team-visual img{
  width:100%;
  height:100%;
  min-height:560px;
  object-fit:cover;
  display:block;
  filter:grayscale(100%);
  transition:filter .5s ease, transform .8s cubic-bezier(.16,1,.3,1);
}

.asareh-team-visual:hover img{
  filter:grayscale(0);
  transform:scale(1.025);
}

.asareh-team-caption{
  position:absolute;
  right:26px;
  bottom:24px;
  color:#fff;
  text-shadow:0 14px 36px rgba(0,0,0,.7);
}

.asareh-team-caption strong{
  display:block;
  font-size:22px;
  font-weight:950;
}

.asareh-team-caption span{
  font-size:12px;
  color:rgba(255,255,255,.8);
}

.asareh-clients-section{
  width:100%;
  overflow:hidden;
  padding:26px 0;
  background:#fff;
  border-block:1px dotted rgba(0,0,0,.14);
}

.asareh-clients-track{
  display:flex;
  width:max-content;
  gap:18px;
  animation:asarehClientsMove 30s linear infinite;
  padding:0 max(50px,calc((100vw - 1320px) / 2));
}

.asareh-clients-section:hover .asareh-clients-track{
  animation-play-state:paused;
}

.asareh-client-logo{
  width:178px;
  height:78px;
  flex:0 0 auto;
  display:grid;
  place-items:center;
  color:#1e1e1e;
  background:#faf8f1;
  border:1px dotted rgba(0,0,0,.16);
  font-size:13px;
  font-weight:950;
  filter:grayscale(100%);
  opacity:.75;
  transition:.25s ease;
}

.asareh-client-logo:hover{
  filter:grayscale(0);
  opacity:1;
  color:#b82024;
  transform:translateY(-4px);
}

@keyframes asarehClientsMove{
  from{transform:translateX(0)}
  to{transform:translateX(50%)}
}

.asareh-tochal-gallery .gallery-track{
  overflow-x:auto;
}

.asareh-gallery-track-reverse{
  padding-right:max(180px,calc((100vw - 1320px) / 2 + 180px)) !important;
}

.asareh-tochal-gallery .gallery-card img{
  filter:grayscale(100%) contrast(1.05);
}

.asareh-tochal-gallery .gallery-card:hover img{
  filter:grayscale(0) contrast(1.05);
}

.asareh-product-cards{
  grid-auto-rows:260px;
}

.asareh-product-cards .asareh-tochal-card{
  grid-column:span 4;
}

.asareh-product-cards .asareh-tochal-card:nth-child(1){
  grid-column:span 8;
}

.asareh-tochal-card-content a{
  display:inline-flex;
  margin-top:12px;
  min-height:38px;
  padding:0 18px;
  border-radius:999px;
  background:#d9a842;
  color:#111;
  align-items:center;
  text-decoration:none;
  font-size:12px;
  font-weight:900;
}

.asareh-standards-section,
.asareh-blog-section{
  background:#fff;
  color:#111;
  padding:88px 0;
}

.asareh-standards-section{
  background:linear-gradient(180deg,#fff,#fbf8f0);
}

.asareh-standards-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
  margin-top:32px;
}

.asareh-standard-item{
  min-height:118px;
  padding:22px;
  border:1px dotted rgba(0,0,0,.18);
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:12px;
  background:#fff;
}

.asareh-standard-item i{
  color:#b82024;
  font-size:25px;
}

.asareh-standard-item span{
  font-weight:900;
  font-size:13px;
  line-height:1.9;
}

.asareh-blog-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:22px;
  margin-top:32px;
}

.asareh-blog-card{
  min-height:260px;
  padding:26px;
  color:#111;
  background:#fff;
  border-top:1px dotted rgba(0,0,0,.18);
  border-bottom:1px dotted rgba(0,0,0,.18);
}

.asareh-blog-card small{
  color:#a27631;
  font-weight:900;
  letter-spacing:1px;
}

.asareh-blog-card h3{
  margin:14px 0;
  font-size:20px;
  line-height:1.8;
}

.asareh-blog-card p{
  color:#5d5146;
  font-size:13.5px;
  line-height:2.15;
  text-align:justify;
}

.asareh-blog-card a,
.asareh-center a{
  color:#b82024;
  font-weight:900;
  text-decoration:none;
}

.asareh-center{
  text-align:center;
  margin-top:30px;
}

.asareh-center a{
  min-height:46px;
  padding:0 26px;
  border:1px dotted rgba(0,0,0,.26);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
}

.asareh-panel-links-card{
  display:grid;
  gap:2px;
}

.asareh-panel-link{
  min-height:38px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:8px 0;
  color:#1a1511;
  border-bottom:1px dotted rgba(0,0,0,.13);
  text-decoration:none;
  font-size:13px;
  font-weight:850;
}

.asareh-panel-link i{
  color:#a27631;
  font-size:12px;
}

.inner-hero-content p{
  max-width:760px;
  line-height:2.2;
  color:rgba(255,255,255,.84);
}

.asareh-tochal-bridge-card p{
  margin:0 0 16px;
  color:rgba(255,255,255,.86);
  line-height:2;
}

.asareh-tochal-bridge-card strong{
  color:#d9a842;
}

.kd-footer{
  margin-top:0;
}

@media(max-width:1000px){
  .asareh-team-visual,
  .asareh-team-visual img{
    min-height:360px;
  }
  .asareh-standards-grid,
  .asareh-blog-grid{
    grid-template-columns:1fr 1fr;
  }
  .asareh-product-cards .asareh-tochal-card,
  .asareh-product-cards .asareh-tochal-card:nth-child(1){
    grid-column:span 12;
  }
}

@media(max-width:640px){
  .header-contact.asareh-header-cta-wrap{
    display:none;
  }
  .asareh-standards-grid,
  .asareh-blog-grid{
    grid-template-columns:1fr;
  }
  .asareh-client-logo{
    width:145px;
  }
  .asareh-gallery-track-reverse{
    padding-right:80px !important;
  }
}


/* =========================================================
   V2: Content placement + certificates carousel/modal
   ========================================================= */
.about-body{
  max-width:680px;
}

.about-body p,
.ceo-message-text p,
.asareh-tochal-bridge-text p{
  text-align:justify;
}

.asareh-ceo-message-section{
  background:#fff;
  color:#111;
  padding:96px 0 88px;
}

.asareh-ceo-message-wrap{
  width:min(1320px,calc(100% - 120px));
  margin:0 auto;
  display:grid;
  grid-template-columns:.92fr 1.08fr;
  gap:70px;
  align-items:stretch;
}

.asareh-ceo-message-image{
  margin:0;
  min-height:650px;
  overflow:hidden;
  position:relative;
  background:#f7f2e8;
}

.asareh-ceo-message-image img{
  width:100%;
  height:100%;
  min-height:650px;
  object-fit:cover;
  filter:grayscale(100%);
  transition:filter .55s ease, transform .9s cubic-bezier(.16,1,.3,1);
}

.asareh-ceo-message-image:hover img{
  filter:grayscale(0);
  transform:scale(1.025);
}

.asareh-ceo-message-card{
  align-self:center;
  background:transparent;
  padding:0;
  box-shadow:none;
  border:none;
}

.asareh-ceo-message-card .section-kicker{
  display:block;
}

.asareh-ceo-message-card .ceo-message-title{
  margin:0 0 24px;
  font-size:34px;
  font-weight:500;
  line-height:1.65;
}

.asareh-ceo-message-card .ceo-message-title::after{
  content:"";
  display:block;
  width:150px;
  height:1px;
  margin-top:16px;
  border-bottom:1px dotted rgba(0,0,0,.28);
}

.asareh-ceo-message-card .ceo-message-text{
  font-size:13.8px;
  line-height:2.22;
  color:#231d16;
  font-weight:700;
}

.asareh-ceo-message-card .ceo-message-text p{
  margin:0 0 12px;
}

.ceo-message-signature{
  margin-top:22px;
  padding-top:20px;
  border-top:1px dotted rgba(0,0,0,.22);
}

.ceo-message-signature strong,
.ceo-message-signature span{
  display:block;
}

.ceo-message-signature strong{
  font-weight:950;
  color:#b82024;
}

.ceo-message-signature span{
  margin-top:7px;
  color:#6b5d4d;
  font-size:12px;
}

.asareh-certificates-section{
  position:relative;
  overflow:hidden;
  background:linear-gradient(180deg,#fff 0%,#fbf7ef 100%);
  padding:82px 0 86px;
  border-block:1px dotted rgba(0,0,0,.13);
}

.asareh-certificates-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:44px;
  margin-bottom:36px;
}

.asareh-certificates-head p{
  max-width:520px;
  margin:0;
  color:#695d4a;
  font-size:13px;
  line-height:2.15;
  text-align:justify;
  font-weight:700;
}

.asareh-certificates-viewport{
  width:100%;
  overflow:hidden;
}

.asareh-certificates-track{
  display:flex;
  gap:18px;
  width:max-content;
  padding:8px max(60px,calc((100vw - 1320px) / 2)) 18px;
  animation:asarehCertificatesMove 38s linear infinite;
}

.asareh-certificates-section:hover .asareh-certificates-track{
  animation-play-state:paused;
}

.asareh-certificate-card{
  width:250px;
  min-height:300px;
  flex:0 0 auto;
  cursor:pointer;
  border:1px dotted rgba(0,0,0,.22);
  background:#fff;
  padding:16px 16px 18px;
  text-align:right;
  color:#1c1711;
  display:flex;
  flex-direction:column;
  gap:12px;
  transition:transform .28s ease, box-shadow .28s ease, border-color .28s ease;
}

.asareh-certificate-card:hover{
  transform:translateY(-7px);
  box-shadow:0 18px 48px rgba(50,38,18,.12);
  border-color:rgba(184,32,36,.42);
}

.asareh-certificate-image{
  display:block;
  height:156px;
  overflow:hidden;
  background:#f7f2e8;
}

.asareh-certificate-image img{
  width:100%;
  height:100%;
  object-fit:cover;
  filter:grayscale(100%);
  transition:filter .3s ease, transform .4s ease;
}

.asareh-certificate-card:hover img{
  filter:grayscale(0);
  transform:scale(1.035);
}

.asareh-certificate-card strong{
  font-size:14px;
  font-weight:950;
  line-height:1.9;
}

.asareh-certificate-card small{
  color:#6b5d4d;
  font-size:12px;
  line-height:1.9;
  font-weight:700;
}

@keyframes asarehCertificatesMove{
  from{transform:translateX(0)}
  to{transform:translateX(50%)}
}

.asareh-certificate-modal{
  position:fixed;
  inset:0;
  z-index:9999;
  display:none;
  align-items:center;
  justify-content:center;
  padding:28px;
}

.asareh-certificate-modal.is-open{
  display:flex;
}

.asareh-certificate-modal-backdrop{
  position:absolute;
  inset:0;
  background:rgba(17,13,8,.62);
  backdrop-filter:blur(4px);
}

.asareh-certificate-modal-box{
  position:relative;
  z-index:1;
  width:min(980px,100%);
  max-height:92vh;
  overflow:auto;
  background:#fffaf1;
  box-shadow:0 34px 90px rgba(0,0,0,.28);
  padding:22px;
  border:1px dotted rgba(0,0,0,.22);
}

.asareh-certificate-modal-close{
  position:absolute;
  top:16px;
  left:16px;
  width:42px;
  height:42px;
  border-radius:50%;
  border:1px dotted rgba(0,0,0,.28);
  background:#fff;
  color:#111;
  font-size:26px;
  line-height:1;
  cursor:pointer;
  z-index:3;
}

.asareh-certificate-modal-figure{
  margin:0;
  background:#fff;
  border:1px dotted rgba(0,0,0,.14);
}

.asareh-certificate-modal-figure img{
  width:100%;
  max-height:68vh;
  object-fit:contain;
  display:block;
}

.asareh-certificate-modal-content{
  padding:18px 4px 4px;
}

.asareh-certificate-modal-content h3{
  margin:0 0 8px;
  font-size:24px;
  line-height:1.7;
  color:#b82024;
}

.asareh-certificate-modal-content p{
  margin:0;
  color:#5d5146;
  font-size:13px;
  line-height:2;
  font-weight:700;
}

@media(max-width:1000px){
  .asareh-ceo-message-wrap,
  .asareh-certificates-head{
    grid-template-columns:1fr;
    display:grid;
    width:min(100% - 40px,1320px);
  }
  .asareh-ceo-message-image,
  .asareh-ceo-message-image img{
    min-height:420px;
  }
}

@media(max-width:640px){
  .asareh-ceo-message-section{
    padding:70px 0;
  }
  .asareh-ceo-message-wrap{
    gap:34px;
  }
  .asareh-ceo-message-card .ceo-message-title{
    font-size:26px;
  }
  .asareh-certificate-card{
    width:210px;
    min-height:270px;
  }
  .asareh-certificate-image{
    height:130px;
  }
}


/* =========================================================
   V3: Final visual fixes requested by Mehdi
   - real TochalFire waiting screen
   - higher side panel content
   - aligned team image
   - two-by-two staggered visual rows
   - blog images
   - full bottom product banner
   ========================================================= */

.hero{
  background:#160b08 url("../../images/hero-poster.jpg") center center/cover no-repeat !important;
}

.kd-preloader{
  font-family:"AsarehPeyda","AsarehIranSans","AsarehVazir",Tahoma,Arial,sans-serif;
}

.side-panel{
  padding:18px 38px 30px !important;
}

.side-panel .panel-logo-wrap{
  margin:18px 0 18px !important;
}

.side-panel .panel-logo-image-box{
  width:118px !important;
  height:92px !important;
  margin:0 auto 8px !important;
  border-radius:0 !important;
}

.side-panel .panel-logo-img{
  width:116px !important;
  max-width:116px !important;
  max-height:82px !important;
}

.side-panel .panel-title{
  font-size:24px !important;
  line-height:1.5 !important;
}

.side-panel .panel-subtitle{
  font-size:13px !important;
  line-height:1.8 !important;
}

.side-panel .panel-separator{
  margin:15px 0 18px !important;
}

.side-panel .panel-info-title{
  margin:0 0 14px !important;
  font-size:18px !important;
}

.side-panel .asareh-panel-link{
  min-height:33px !important;
  padding:6px 0 !important;
  font-size:12.5px !important;
}

.side-panel .info-row{
  padding:13px 0 !important;
}

.about-wrap{
  align-items:start !important;
}

.asareh-team-visual{
  margin-top:72px !important;
  min-height:500px !important;
}

.asareh-team-visual img{
  min-height:500px !important;
  object-position:center center !important;
}

.asareh-tochal-gallery{
  padding-top:88px !important;
  padding-bottom:96px !important;
}

.asareh-tochal-gallery .gallery-rows-head{
  margin-bottom:40px !important;
}

.asareh-tochal-gallery .gallery-row{
  margin:22px 0 34px !important;
}

.asareh-tochal-gallery .gallery-row-header{
  margin-bottom:12px !important;
}

.asareh-tochal-gallery .gallery-viewport{
  overflow:visible !important;
}

.asareh-tochal-gallery .gallery-track{
  width:min(820px,calc(100% - 120px)) !important;
  padding:0 !important;
  overflow:visible !important;
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:22px !important;
  margin:0 auto !important;
  direction:rtl !important;
}

.asareh-tochal-gallery .gallery-card{
  flex:none !important;
  width:100% !important;
  height:clamp(190px,20vw,260px) !important;
  border-radius:26px !important;
}

.asareh-tochal-gallery .asareh-gallery-pair-right .gallery-track{
  margin-right:max(60px,calc((100vw - 1320px) / 2)) !important;
  margin-left:auto !important;
  transform:translateX(0) !important;
}

.asareh-tochal-gallery .asareh-gallery-pair-left .gallery-track{
  margin-left:max(60px,calc((100vw - 1320px) / 2)) !important;
  margin-right:auto !important;
  transform:translateX(0) !important;
}

.asareh-tochal-gallery .asareh-gallery-pair-left .gallery-row-header{
  justify-content:flex-start !important;
}

.asareh-tochal-gallery .asareh-gallery-pair-left .gallery-row-title{
  margin-right:auto !important;
  margin-left:max(60px,calc((100vw - 1320px) / 2)) !important;
}

.asareh-tochal-gallery .asareh-gallery-pair-right .gallery-row-title{
  margin-right:max(60px,calc((100vw - 1320px) / 2)) !important;
}

.asareh-blog-card{
  padding:0 0 24px !important;
  overflow:hidden;
}

.asareh-blog-image{
  margin:0 0 22px;
  height:170px;
  overflow:hidden;
  background:#f7f2e8;
}

.asareh-blog-image img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  filter:grayscale(100%) contrast(1.05);
  transition:filter .35s ease, transform .55s cubic-bezier(.16,1,.3,1);
}

.asareh-blog-card:hover .asareh-blog-image img{
  filter:grayscale(0) contrast(1.05);
  transform:scale(1.045);
}

.asareh-blog-card small,
.asareh-blog-card h3,
.asareh-blog-card p,
.asareh-blog-card a{
  display:block;
  margin-left:24px;
  margin-right:24px;
}

.asareh-home-product-banner{
  position:relative !important;
  min-height:620px !important;
  height:72vh !important;
  overflow:hidden !important;
  background:#efe8dc !important;
  display:flex !important;
  align-items:flex-end !important;
  justify-content:center !important;
}

.asareh-home-product-banner img{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center center !important;
  display:block !important;
  filter:grayscale(20%) contrast(1.05) brightness(.76) !important;
}

.asareh-home-product-banner::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(to top,rgba(0,0,0,.58),rgba(0,0,0,.04) 55%,rgba(255,255,255,.08));
  pointer-events:none;
}

.asareh-home-product-content{
  position:relative !important;
  z-index:2 !important;
  width:min(1320px,calc(100% - 120px)) !important;
  margin:0 auto !important;
  padding:0 0 74px !important;
  color:#fff !important;
  text-align:right !important;
}

.asareh-home-product-content h2{
  max-width:620px;
  margin:0 0 20px !important;
  font-size:34px !important;
  line-height:1.6 !important;
  font-weight:800 !important;
  text-shadow:0 14px 42px rgba(0,0,0,.55);
}

.asareh-home-product-content a{
  min-height:46px;
  padding:0 24px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:#111 !important;
  background:#d9a842;
  text-decoration:none;
  font-weight:950;
  font-size:12.5px;
}

@media(max-width:1000px){
  .asareh-team-visual{
    margin-top:0 !important;
  }
  .asareh-tochal-gallery .gallery-track{
    width:min(760px,calc(100% - 44px)) !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }
  .asareh-tochal-gallery .asareh-gallery-pair-left .gallery-row-title,
  .asareh-tochal-gallery .asareh-gallery-pair-right .gallery-row-title{
    margin-left:0 !important;
    margin-right:0 !important;
  }
}

@media(max-width:640px){
  .asareh-tochal-gallery .gallery-track{
    grid-template-columns:1fr !important;
  }
  .asareh-home-product-banner{
    min-height:460px !important;
  }
  .asareh-home-product-content{
    width:calc(100% - 40px) !important;
    padding-bottom:48px !important;
  }
  .asareh-home-product-content h2{
    font-size:25px !important;
  }
}


/* =========================================================
   V4: Final gallery + side panel + dotted frame polish
   ========================================================= */

/* Side panel: compact, no horizontal scroll, only vertical */
.side-panel{
  overflow-x:hidden !important;
  overflow-y:auto !important;
  padding:14px 30px 26px !important;
  scrollbar-gutter:stable;
}

.side-panel *{
  max-width:100%;
  box-sizing:border-box;
}

.side-panel .panel-logo-wrap{
  margin:10px 0 12px !important;
}

.side-panel .panel-logo-image-box{
  width:96px !important;
  height:70px !important;
  margin:0 auto 6px !important;
}

.side-panel .panel-logo-img{
  width:94px !important;
  max-width:94px !important;
  max-height:68px !important;
}

.side-panel .panel-title{
  font-size:20px !important;
  line-height:1.45 !important;
}

.side-panel .panel-subtitle{
  font-size:11px !important;
  line-height:1.65 !important;
  max-width:270px;
  margin-inline:auto !important;
}

.side-panel .panel-separator{
  margin:10px 0 12px !important;
  background:none !important;
  border-bottom:1px dotted rgba(0,0,0,.20) !important;
}

.side-panel .panel-info-title{
  margin:0 0 10px !important;
  font-size:15px !important;
  line-height:1.7 !important;
}

.side-panel .asareh-panel-links-card{
  gap:0 !important;
}

.side-panel .asareh-panel-link{
  min-height:28px !important;
  padding:4px 0 !important;
  font-size:11.2px !important;
  line-height:1.65 !important;
  gap:8px !important;
  border-bottom:1px dotted rgba(0,0,0,.18) !important;
}

.side-panel .asareh-panel-link span{
  min-width:0;
  overflow-wrap:anywhere;
  white-space:normal;
}

.side-panel .asareh-panel-link i{
  flex:0 0 auto;
  font-size:10px !important;
}

.side-panel .info-row{
  grid-template-columns:24px 52px minmax(0,1fr) !important;
  gap:8px !important;
  padding:9px 0 !important;
  border-bottom:1px dotted rgba(0,0,0,.18) !important;
}

.side-panel .info-row i{
  font-size:17px !important;
}

.side-panel .info-label,
.side-panel .info-value{
  font-size:11px !important;
  line-height:1.7 !important;
}

.side-panel .info-value{
  direction:rtl !important;
  text-align:right !important;
  white-space:normal !important;
  overflow-wrap:anywhere !important;
}

/* Visual story: two colorful horizontal rows, ten images per row */
.asareh-tochal-gallery{
  padding-top:84px !important;
  padding-bottom:92px !important;
  background:
    radial-gradient(circle at 15% 10%, rgba(217,168,66,.11), transparent 32%),
    linear-gradient(180deg,#fff 0%,#fbf8f1 100%) !important;
}

.asareh-tochal-gallery::before,
.asareh-tochal-gallery::after{
  content:"";
  position:absolute;
  right:0;
  left:0;
  height:1px;
  border-top:1px dotted rgba(0,0,0,.18);
  pointer-events:none;
}

.asareh-tochal-gallery::before{top:34px;}
.asareh-tochal-gallery::after{bottom:34px;}

.asareh-tochal-gallery .gallery-rows-head{
  margin-bottom:34px !important;
  padding-bottom:20px;
  border-bottom:1px dotted rgba(0,0,0,.18);
}

.asareh-tochal-gallery .gallery-rows-desc{
  max-width:540px;
  text-align:justify;
}

.asareh-tochal-gallery .gallery-row{
  margin:24px 0 44px !important;
}

.asareh-tochal-gallery .gallery-row:last-child{
  margin-bottom:0 !important;
}

.asareh-tochal-gallery .gallery-row-header{
  width:min(1320px,calc(100% - 120px)) !important;
  margin:0 auto 14px !important;
  padding-inline:12px;
}

.asareh-tochal-gallery .gallery-row-title{
  position:relative;
  font-size:17px !important;
}

.asareh-tochal-gallery .gallery-row-title::after{
  content:"";
  display:block;
  width:120px;
  height:1px;
  margin-top:8px;
  border-bottom:1px dotted rgba(0,0,0,.22);
}

.asareh-tochal-gallery .gallery-row-hint{
  font-size:11px !important;
  color:#a27631 !important;
}

.asareh-tochal-gallery .gallery-viewport{
  overflow:hidden !important;
  width:100% !important;
}

.asareh-tochal-gallery .gallery-track{
  width:auto !important;
  padding:8px max(60px,calc((100vw - 1320px) / 2)) 22px !important;
  overflow-x:auto !important;
  overflow-y:hidden !important;
  display:flex !important;
  flex-wrap:nowrap !important;
  grid-template-columns:none !important;
  gap:22px !important;
  margin:0 !important;
  direction:ltr !important;
  scrollbar-width:none !important;
  scroll-snap-type:x proximity;
}

.asareh-tochal-gallery .gallery-track::-webkit-scrollbar{
  display:none !important;
}

.asareh-tochal-gallery .asareh-gallery-line-left .gallery-track{
  flex-direction:row-reverse !important;
  padding-left:max(120px,calc((100vw - 1320px) / 2 + 120px)) !important;
  padding-right:max(60px,calc((100vw - 1320px) / 2)) !important;
}

.asareh-tochal-gallery .asareh-gallery-line-left .gallery-row-header{
  direction:ltr;
}

.asareh-tochal-gallery .asareh-gallery-line-left .gallery-row-title,
.asareh-tochal-gallery .asareh-gallery-line-left .gallery-row-hint{
  direction:rtl;
}

.asareh-tochal-gallery .gallery-card{
  flex:0 0 clamp(250px,24vw,355px) !important;
  width:auto !important;
  height:clamp(182px,18.5vw,245px) !important;
  border-radius:24px !important;
  box-shadow:none !important;
  border:1px dotted rgba(0,0,0,.20) !important;
  outline:1px dotted rgba(255,255,255,.42);
  outline-offset:-9px;
  scroll-snap-align:start;
}

.asareh-tochal-gallery .gallery-card img,
.asareh-tochal-gallery .gallery-card:hover img{
  filter:saturate(1.06) contrast(1.03) brightness(.94) !important;
}

.asareh-tochal-gallery .gallery-card:hover img{
  transform:scale(1.045) !important;
}

.asareh-tochal-gallery .gallery-card::after{
  background:linear-gradient(to top, rgba(0,0,0,.52), rgba(0,0,0,.03) 62%, rgba(255,255,255,.10)) !important;
  opacity:.86 !important;
}

.asareh-tochal-gallery .gallery-card-label strong{
  font-size:14px !important;
}

.asareh-tochal-gallery .gallery-card-label small{
  direction:rtl !important;
}

/* Make forced frames feel like TochalFire dotted UI, not heavy cards */
.asareh-blog-card,
.asareh-standard-item,
.asareh-certificate-card,
.asareh-client-logo,
.asareh-tochal-card,
.contact-side-card,
.contact-side-box,
.contact-info-panel{
  box-shadow:none !important;
  border:1px dotted rgba(0,0,0,.20) !important;
  background:#fffdf8 !important;
}

.asareh-blog-card{
  border-left:none !important;
  border-right:none !important;
  border-top:1px dotted rgba(0,0,0,.20) !important;
  border-bottom:1px dotted rgba(0,0,0,.20) !important;
}

.asareh-blog-card::before,
.asareh-certificate-card::before,
.asareh-standard-item::before{
  content:"";
  display:block;
  width:58px;
  height:1px;
  margin-bottom:12px;
  border-bottom:1px dotted rgba(184,32,36,.42);
}

.asareh-certificate-card:hover,
.asareh-client-logo:hover,
.asareh-standard-item:hover{
  box-shadow:none !important;
  border-color:rgba(184,32,36,.48) !important;
}

@media(max-width:1000px){
  .asareh-tochal-gallery .gallery-row-header,
  .asareh-tochal-gallery .gallery-rows-head{
    width:min(100% - 40px,1320px) !important;
  }
  .asareh-tochal-gallery .gallery-track,
  .asareh-tochal-gallery .asareh-gallery-line-left .gallery-track{
    padding-inline:20px !important;
  }
}

@media(max-width:640px){
  .side-panel{
    padding:12px 22px 24px !important;
  }
  .side-panel .panel-title{
    font-size:18px !important;
  }
  .side-panel .info-row{
    grid-template-columns:22px minmax(0,1fr) !important;
  }
  .side-panel .info-label{
    display:none !important;
  }
  .asareh-tochal-gallery .gallery-card{
    flex-basis:240px !important;
  }
}

/* V5 FIX: mouse-wheel horizontal movement for Tochal visual rows */
.asareh-tochal-gallery .gallery-viewport{
  overflow-x:auto !important;
  overflow-y:hidden !important;
  cursor:grab !important;
  scrollbar-width:none !important;
  overscroll-behavior-x:contain !important;
  overscroll-behavior-y:contain !important;
}

.asareh-tochal-gallery .gallery-viewport::-webkit-scrollbar{
  display:none !important;
}

.asareh-tochal-gallery .gallery-viewport.is-dragging{
  cursor:grabbing !important;
  user-select:none !important;
}

.asareh-tochal-gallery .gallery-track,
.asareh-tochal-gallery .asareh-gallery-line-left .gallery-track{
  width:max-content !important;
  min-width:max-content !important;
  max-width:none !important;
  overflow:visible !important;
  display:flex !important;
  flex-wrap:nowrap !important;
  grid-template-columns:none !important;
  scroll-snap-type:x proximity !important;
}

.asareh-tochal-gallery .gallery-card{
  flex:0 0 clamp(250px,24vw,355px) !important;
}


/* V6 FINAL LOCK: align about image/text and stagger visual-story rows from opposite sides */
.about-wrap{
  align-items:center !important;
}
.about-text{
  align-self:center !important;
}
.asareh-team-visual{
  align-self:center !important;
  margin-top:0 !important;
  min-height:520px !important;
}
.asareh-team-visual img{
  min-height:520px !important;
  object-position:center center !important;
}

.asareh-tochal-gallery .gallery-viewport{
  direction:ltr !important;
}
.asareh-tochal-gallery .asareh-gallery-line-right .gallery-track,
.asareh-tochal-gallery .asareh-gallery-line-left .gallery-track{
  flex-direction:row !important;
  transform:none !important;
}
.asareh-tochal-gallery .asareh-gallery-line-right .gallery-track{
  padding-left:max(80px,calc((100vw - 1320px) / 2 + 90px)) !important;
  padding-right:max(180px,calc((100vw - 1320px) / 2 + 180px)) !important;
}
.asareh-tochal-gallery .asareh-gallery-line-left .gallery-track{
  padding-left:max(180px,calc((100vw - 1320px) / 2 + 180px)) !important;
  padding-right:max(80px,calc((100vw - 1320px) / 2 + 90px)) !important;
}
.asareh-tochal-gallery .asareh-gallery-line-right .gallery-row-header{
  direction:rtl !important;
}
.asareh-tochal-gallery .asareh-gallery-line-left .gallery-row-header{
  direction:ltr !important;
}
.asareh-tochal-gallery .asareh-gallery-line-left .gallery-row-title,
.asareh-tochal-gallery .asareh-gallery-line-left .gallery-row-hint{
  direction:rtl !important;
}
.asareh-tochal-gallery .asareh-gallery-line-left .gallery-row-title::after{
  margin-right:auto !important;
}

@media(max-width:1000px){
  .about-wrap{align-items:start !important;}
  .asareh-team-visual{min-height:390px !important;}
  .asareh-team-visual img{min-height:390px !important;}
  .asareh-tochal-gallery .asareh-gallery-line-right .gallery-track,
  .asareh-tochal-gallery .asareh-gallery-line-left .gallery-track{
    padding-inline:20px !important;
  }
}

/* Instagram page - TochalFire HTML-first */
.asareh-instagram-page .asareh-instagram-intro{
  background:linear-gradient(180deg,#fff 0%,#faf7ef 100%);
}

.asareh-instagram-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:24px;
}

.asareh-instagram-primary,
.asareh-instagram-secondary{
  min-height:46px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:0 22px;
  border-radius:999px;
  font-family:"AsarehVazir",Tahoma,sans-serif;
  font-size:12px;
  font-weight:900;
  transition:.22s ease;
}

.asareh-instagram-primary{
  background:#1d1510;
  color:#fff;
}

.asareh-instagram-secondary{
  background:#fff;
  color:#1d1510;
  border:1px dashed rgba(157,117,51,.34);
}

.asareh-instagram-primary:hover,
.asareh-instagram-secondary:hover{
  transform:translateY(-3px);
  box-shadow:0 16px 34px rgba(63,43,18,.12);
}

.asareh-instagram-profile-card{
  border-style:dashed !important;
}

.asareh-instagram-feed-section{
  padding:86px 0 74px;
  background:#fff;
}

.asareh-instagram-head{
  width:min(100%,760px);
  margin:0 auto 38px;
  text-align:center;
}

.asareh-instagram-head p{
  margin:0 0 8px;
  font-family:"AsarehVazir",Tahoma,sans-serif;
  font-size:10px;
  font-weight:900;
  letter-spacing:4px;
  color:#a2742c;
  direction:ltr;
}

.asareh-instagram-head h2{
  margin:0 0 10px;
  font-size:clamp(28px,3vw,44px);
  font-weight:900;
  letter-spacing:-1px;
}

.asareh-instagram-head h2 span{
  color:#a2742c;
}

.asareh-instagram-head small{
  display:block;
  color:#77695d;
  font-weight:700;
}

.asareh-instagram-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:22px;
}

.asareh-instagram-card{
  position:relative;
  background:#fff;
  border:1px dashed rgba(29,21,16,.15);
  border-radius:28px;
  overflow:hidden;
  box-shadow:0 22px 54px rgba(61,43,20,.06);
  transition:.24s ease;
}

.asareh-instagram-card:hover{
  transform:translateY(-6px);
  border-color:rgba(157,117,51,.42);
  box-shadow:0 28px 70px rgba(61,43,20,.10);
}

.asareh-instagram-media{
  position:relative;
  display:block;
  aspect-ratio:1/1;
  overflow:hidden;
  background:#f6f0e6;
}

.asareh-instagram-media img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:.45s ease;
}

.asareh-instagram-card:hover .asareh-instagram-media img{
  transform:scale(1.055);
}

.asareh-instagram-overlay{
  position:absolute;
  inset:16px;
  display:flex;
  align-items:flex-start;
  justify-content:flex-end;
  color:#fff;
  font-size:22px;
  text-shadow:0 10px 24px rgba(0,0,0,.28);
  opacity:.92;
}

.asareh-instagram-card-body{
  padding:20px 20px 22px;
}

.asareh-instagram-tag{
  display:inline-flex;
  margin-bottom:8px;
  padding:4px 10px;
  border-radius:999px;
  background:#faf4e8;
  color:#a2742c;
  font-family:"AsarehVazir",Tahoma,sans-serif;
  font-size:10px;
  font-weight:900;
}

.asareh-instagram-card h3{
  margin:0 0 8px;
  font-size:18px;
  line-height:1.55;
  font-weight:900;
}

.asareh-instagram-card p{
  min-height:68px;
  margin:0 0 14px;
  color:#5f5147;
  font-size:13px;
  font-weight:700;
  line-height:2;
  text-align:justify;
}

.asareh-instagram-link{
  display:inline-flex;
  align-items:center;
  gap:4px;
  color:#1d1510;
  font-family:"AsarehVazir",Tahoma,sans-serif;
  font-size:12px;
  font-weight:900;
}

.asareh-instagram-embed-section{
  padding:78px 0;
  background:linear-gradient(180deg,#fff,#fbf7ef);
}

.asareh-instagram-embed-grid{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(320px,1.1fr);
  gap:34px;
  align-items:center;
}

.asareh-instagram-embed-copy h2{
  margin:0 0 14px;
  font-size:clamp(26px,2.7vw,40px);
  font-weight:900;
}

.asareh-instagram-embed-copy p{
  margin:0;
  color:#4f4439;
  font-weight:700;
  line-height:2.15;
  text-align:justify;
}

.asareh-instagram-embed-placeholder{
  min-height:360px;
  display:grid;
  place-items:center;
  text-align:center;
  padding:36px;
  border-radius:34px;
  background:#fff;
  border:1px dashed rgba(29,21,16,.18);
  box-shadow:0 24px 64px rgba(61,43,20,.08);
}

.asareh-instagram-embed-placeholder i{
  font-size:58px;
  color:#a2742c;
}

.asareh-instagram-embed-placeholder h3{
  margin:16px 0 8px;
  direction:ltr;
  font-size:25px;
  font-weight:900;
}

.asareh-instagram-embed-placeholder p{
  margin:0;
  color:#6d5f54;
  font-weight:700;
}

@media(max-width:1000px){
  .asareh-instagram-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .asareh-instagram-embed-grid{
    grid-template-columns:1fr;
  }
}

@media(max-width:640px){
  .asareh-instagram-grid{
    grid-template-columns:1fr;
  }
  .asareh-instagram-card p{
    min-height:auto;
  }
  .asareh-instagram-actions{
    flex-direction:column;
  }
  .asareh-instagram-primary,
  .asareh-instagram-secondary{
    width:100%;
  }
}

/* =========================================================
   Representation page - TochalFire interactive 3D Iran map
   ========================================================= */
.asareh-representation-page{
  background:#fffdf8;
  color:#18130f;
  overflow:hidden;
}

.asareh-rep-intro,
.asareh-rep-map-section,
.asareh-rep-process,
.asareh-rep-request{
  font-family:"AsarehPeyda","AsarehIranSans","AsarehVazir",Tahoma,Arial,sans-serif;
}

.asareh-rep-intro{
  padding:84px 0 66px;
  background:
    radial-gradient(circle at 12% 10%, rgba(217,168,66,.12), transparent 32%),
    linear-gradient(180deg,#fff 0%,#fbf7ef 100%);
  border-bottom:1px dotted rgba(0,0,0,.14);
}

.asareh-rep-intro-grid{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);
  gap:48px;
  align-items:center;
}

.asareh-rep-intro-copy h2,
.asareh-rep-process-copy h2,
.asareh-rep-request-copy h2,
.asareh-rep-map-head h2{
  margin:0 0 18px;
  color:#18130f;
  font-size:clamp(27px,3vw,44px);
  font-weight:900;
  line-height:1.65;
}

.asareh-rep-intro-copy p:not(.inner-kicker),
.asareh-rep-process-copy p:not(.inner-kicker),
.asareh-rep-request-copy p:not(.inner-kicker),
.asareh-rep-map-head > p{
  margin:0 0 12px;
  color:#4f4439;
  font-size:14px;
  font-weight:700;
  line-height:2.18;
  text-align:justify;
}

.asareh-rep-intro-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:26px;
}

.asareh-rep-intro-actions a,
.asareh-rep-request a,
.asareh-rep-form button,
.asareh-dealer-actions a,
.asareh-dealer-actions button,
.asareh-dealer-modal-actions a{
  min-height:44px;
  padding:0 22px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  border:0;
  text-decoration:none;
  font-family:"AsarehVazir",Tahoma,sans-serif;
  font-size:12px;
  font-weight:950;
  cursor:pointer;
  transition:transform .22s ease, background .22s ease, border-color .22s ease;
}

.asareh-rep-intro-actions a:first-child,
.asareh-rep-request a,
.asareh-rep-form button,
.asareh-dealer-actions a:first-child,
.asareh-dealer-modal-actions a:first-child{
  background:#d9a842;
  color:#111;
}

.asareh-rep-intro-actions a:last-child,
.asareh-dealer-actions a,
.asareh-dealer-actions button,
.asareh-dealer-modal-actions a{
  background:#fff;
  color:#18130f;
  border:1px dotted rgba(0,0,0,.22);
}

.asareh-rep-intro-actions a:hover,
.asareh-rep-request a:hover,
.asareh-rep-form button:hover,
.asareh-dealer-actions a:hover,
.asareh-dealer-actions button:hover,
.asareh-dealer-modal-actions a:hover{
  transform:translateY(-3px);
}

.asareh-rep-intro-stats{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}

.asareh-rep-intro-stats div{
  min-height:142px;
  padding:24px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:8px;
  background:#fff;
  border:1px dotted rgba(0,0,0,.18);
  border-radius:28px;
  box-shadow:0 24px 70px rgba(61,43,20,.07);
}

.asareh-rep-intro-stats strong{
  color:#b82024;
  font-size:34px;
  font-weight:950;
  line-height:1;
}

.asareh-rep-intro-stats span{
  color:#5f5147;
  font-size:13px;
  font-weight:850;
}

.asareh-rep-map-section{
  position:relative;
  padding:88px 0 76px;
  background:
    radial-gradient(circle at 82% 18%, rgba(184,32,36,.08), transparent 34%),
    linear-gradient(180deg,#fffdf8 0%,#f7efe2 100%);
}

.asareh-rep-map-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:42px;
  margin-bottom:30px;
  padding-bottom:22px;
  border-bottom:1px dotted rgba(0,0,0,.16);
}

.asareh-rep-map-head > p{
  max-width:560px;
  margin:0;
}

.asareh-rep-toolbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin-bottom:28px;
}

.asareh-rep-search{
  min-height:48px;
  width:min(420px,100%);
  display:flex;
  align-items:center;
  gap:10px;
  padding:0 18px;
  background:#fff;
  border:1px dotted rgba(0,0,0,.20);
  border-radius:999px;
}

.asareh-rep-search i{color:#a2742c;}
.asareh-rep-search input{
  width:100%;
  border:0;
  outline:0;
  background:transparent;
  color:#18130f;
  font-family:"AsarehVazir",Tahoma,sans-serif;
  font-size:12px;
  font-weight:800;
}

.asareh-rep-filter{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  justify-content:flex-end;
}

.asareh-rep-filter button{
  min-height:38px;
  padding:0 15px;
  border-radius:999px;
  border:1px dotted rgba(0,0,0,.20);
  background:#fff;
  color:#3a2e23;
  font-family:"AsarehVazir",Tahoma,sans-serif;
  font-size:11px;
  font-weight:900;
  cursor:pointer;
  transition:.22s ease;
}

.asareh-rep-filter button:hover,
.asareh-rep-filter button.is-active{
  background:#18130f;
  color:#fff;
  border-color:#18130f;
}

.asareh-rep-map-layout{
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);
  gap:30px;
  align-items:stretch;
}

.asareh-iran-map-stage{
  min-height:640px;
  display:grid;
  place-items:center;
  padding:26px;
  perspective:1200px;
  background:
    linear-gradient(145deg,rgba(255,255,255,.78),rgba(248,239,224,.92));
  border:1px dotted rgba(0,0,0,.16);
  border-radius:38px;
  box-shadow:0 34px 90px rgba(67,44,18,.09);
}

.asareh-iran-map-canvas{
  width:min(100%,880px);
  position:relative;
  padding:18px;
  border-radius:34px;
  background:linear-gradient(180deg,rgba(255,255,255,.88),rgba(248,243,234,.96));
  border:1px solid rgba(186,153,88,.18);
  box-shadow:0 28px 60px rgba(76,43,18,.11);
  transform:rotateX(3deg) rotateY(-4deg);
  transform-style:preserve-3d;
  transition:transform .45s cubic-bezier(.16,1,.3,1), box-shadow .45s ease;
}

.asareh-iran-map-canvas:hover{
  transform:rotateX(0deg) rotateY(0deg) translateY(-4px);
  box-shadow:0 40px 90px rgba(76,43,18,.16);
}

.asareh-iran-map-canvas::before{
  content:"";
  position:absolute;
  inset:30px;
  border-radius:30px;
  background:radial-gradient(circle at 50% 48%,rgba(217,168,66,.18),transparent 58%);
  transform:translateZ(-24px);
  filter:blur(20px);
  pointer-events:none;
}

.asareh-iran-map-image{
  width:100%;
  display:block;
  border-radius:24px;
  object-fit:contain;
  user-select:none;
  -webkit-user-drag:none;
  filter:drop-shadow(0 20px 28px rgba(69,43,15,.12)) contrast(1.02);
}

.asareh-map-pin{
  --pin-size:22px;
  position:absolute;
  left:var(--x);
  top:var(--y);
  width:var(--pin-size);
  height:var(--pin-size);
  border:0;
  border-radius:50% 50% 50% 10%;
  background:linear-gradient(145deg,#e5b64c,#b82024);
  box-shadow:0 12px 26px rgba(184,32,36,.30), inset 0 1px 0 rgba(255,255,255,.42);
  transform:translate(-50%,-50%) rotate(-45deg) translateZ(34px);
  transform-style:preserve-3d;
  cursor:pointer;
  z-index:3;
  transition:transform .24s ease, box-shadow .24s ease, filter .24s ease, opacity .2s ease;
}

.asareh-map-pin::before{
  content:"";
  position:absolute;
  inset:6px;
  border-radius:50%;
  background:#fff7e8;
  box-shadow:inset 0 0 0 2px rgba(255,255,255,.18);
}

.asareh-map-pin::after{
  content:"";
  position:absolute;
  width:54px;
  height:54px;
  right:50%;
  bottom:50%;
  transform:translate(50%,50%);
  border-radius:50%;
  background:radial-gradient(circle,rgba(184,32,36,.26),rgba(217,168,66,.16) 42%,transparent 68%);
  opacity:.52;
  z-index:-1;
  animation:asarehMapPulse 2.4s ease-in-out infinite;
}

.asareh-map-pin span{
  position:absolute;
  right:22px;
  bottom:20px;
  transform:rotate(45deg) translateY(-4px);
  min-width:max-content;
  padding:6px 10px;
  border-radius:999px;
  background:rgba(24,19,15,.88);
  color:#fff;
  font-family:"AsarehVazir",Tahoma,sans-serif;
  font-size:10.5px;
  font-weight:950;
  line-height:1;
  opacity:0;
  pointer-events:none;
  box-shadow:0 10px 24px rgba(0,0,0,.18);
  transition:.22s ease;
}

.asareh-map-pin:hover,
.asareh-map-pin.is-active{
  transform:translate(-50%,-50%) rotate(-45deg) translateZ(74px) scale(1.28);
  box-shadow:0 26px 42px rgba(184,32,36,.42), inset 0 1px 0 rgba(255,255,255,.52);
  filter:saturate(1.18);
  z-index:10;
}

.asareh-map-pin:hover span,
.asareh-map-pin.is-active span{
  opacity:1;
  transform:rotate(45deg) translateY(-9px);
}

@keyframes asarehMapPulse{
  0%,100%{transform:translate(50%,50%) scale(.76);opacity:.34}
  50%{transform:translate(50%,50%) scale(1.15);opacity:.72}
}

.asareh-dealer-card{
  min-height:100%;
  padding:30px;
  border-radius:34px;
  background:#fff;
  border:1px dotted rgba(0,0,0,.18);
  box-shadow:0 30px 80px rgba(61,43,20,.08);
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.asareh-dealer-card-kicker{
  margin:0 0 12px;
  color:#a2742c;
  font-size:11px;
  font-weight:950;
}

.asareh-dealer-card h3{
  margin:0 0 12px;
  color:#18130f;
  font-size:26px;
  font-weight:950;
  line-height:1.55;
}

.asareh-dealer-badges{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-bottom:18px;
}

.asareh-dealer-badges span{
  padding:6px 10px;
  border-radius:999px;
  background:#faf4e8;
  color:#a2742c;
  font-size:11px;
  font-weight:900;
}

.asareh-dealer-card > p:not(.asareh-dealer-card-kicker){
  margin:0 0 18px;
  color:#4f4439;
  font-size:13.5px;
  font-weight:750;
  line-height:2.1;
  text-align:justify;
}

.asareh-dealer-info{
  display:grid;
  gap:10px;
  margin:8px 0 22px;
}

.asareh-dealer-info div{
  display:grid;
  grid-template-columns:26px auto minmax(0,1fr);
  gap:8px;
  align-items:center;
  padding:10px 0;
  border-bottom:1px dotted rgba(0,0,0,.14);
}

.asareh-dealer-info i{color:#b82024;font-size:18px;}
.asareh-dealer-info strong{font-size:12px;color:#18130f;font-weight:950;}
.asareh-dealer-info span{font-size:12px;color:#5f5147;font-weight:800;line-height:1.9;}

.asareh-dealer-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}

.asareh-dealer-list{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  margin-top:24px;
}

.asareh-dealer-list button,
.asareh-dealer-empty{
  min-height:74px;
  padding:14px 16px;
  text-align:right;
  border-radius:22px;
  background:#fff;
  border:1px dotted rgba(0,0,0,.18);
  cursor:pointer;
  transition:.22s ease;
}

.asareh-dealer-list button strong,
.asareh-dealer-list button span{
  display:block;
}

.asareh-dealer-list button strong{
  color:#18130f;
  font-size:13px;
  font-weight:950;
  margin-bottom:4px;
}

.asareh-dealer-list button span{
  color:#6d5f54;
  font-size:11px;
  font-weight:750;
  line-height:1.8;
}

.asareh-dealer-list button:hover,
.asareh-dealer-list button.is-active{
  transform:translateY(-3px);
  border-color:rgba(184,32,36,.44);
  background:#fffaf0;
}

.asareh-rep-process{
  padding:76px 0;
  background:#fff;
}

.asareh-rep-process-grid{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
  gap:44px;
  align-items:start;
}

.asareh-rep-process-steps{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}

.asareh-rep-process-steps div{
  min-height:156px;
  padding:22px;
  border-radius:28px;
  border:1px dotted rgba(0,0,0,.18);
  background:#fffdf8;
}

.asareh-rep-process-steps span{
  display:inline-flex;
  margin-bottom:14px;
  color:#b82024;
  font-weight:950;
}

.asareh-rep-process-steps strong{
  display:block;
  margin-bottom:8px;
  color:#18130f;
  font-size:15px;
  font-weight:950;
}

.asareh-rep-process-steps small{
  display:block;
  color:#5f5147;
  font-size:12px;
  font-weight:750;
  line-height:2;
}

.asareh-rep-request{
  padding:78px 0;
  background:linear-gradient(180deg,#fbf7ef 0%,#fff 100%);
}

.asareh-rep-request-grid{
  display:grid;
  grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);
  gap:36px;
  align-items:start;
}

.asareh-rep-form{
  padding:28px;
  border-radius:34px;
  background:#fff;
  border:1px dotted rgba(0,0,0,.18);
  box-shadow:0 22px 64px rgba(61,43,20,.07);
}

.asareh-form-row{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}

.asareh-rep-form label{
  display:grid;
  gap:8px;
  margin-bottom:14px;
  color:#18130f;
  font-size:12px;
  font-weight:950;
}

.asareh-rep-form input,
.asareh-rep-form select,
.asareh-rep-form textarea{
  min-height:48px;
  width:100%;
  border:1px dotted rgba(0,0,0,.22);
  border-radius:18px;
  padding:0 14px;
  background:#fffdf8;
  color:#18130f;
  outline:0;
  font-family:"AsarehVazir",Tahoma,sans-serif;
  font-size:12px;
  font-weight:700;
}

.asareh-rep-form textarea{
  min-height:120px;
  resize:vertical;
  padding-top:14px;
}

.asareh-dealer-modal{
  position:fixed;
  inset:0;
  display:none;
  align-items:center;
  justify-content:center;
  padding:26px;
  z-index:9999;
}

.asareh-dealer-modal.is-open{display:flex;}
.asareh-dealer-modal-backdrop{
  position:absolute;
  inset:0;
  background:rgba(16,11,8,.62);
  backdrop-filter:blur(5px);
}

.asareh-dealer-modal-box{
  position:relative;
  z-index:1;
  width:min(720px,100%);
  max-height:88vh;
  overflow:auto;
  padding:30px;
  border-radius:30px;
  background:#fffdf8;
  border:1px dotted rgba(0,0,0,.20);
  box-shadow:0 34px 90px rgba(0,0,0,.28);
}

.asareh-dealer-modal-close{
  position:absolute;
  left:16px;
  top:16px;
  width:40px;
  height:40px;
  border-radius:50%;
  border:1px dotted rgba(0,0,0,.24);
  background:#fff;
  cursor:pointer;
  font-size:24px;
}

.asareh-dealer-modal-box h3{
  margin:0 0 14px;
  color:#18130f;
  font-size:25px;
  font-weight:950;
}

.asareh-dealer-modal-body p,
.asareh-dealer-modal-body li{
  color:#4f4439;
  font-size:13px;
  font-weight:750;
  line-height:2;
}

.asareh-dealer-modal-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:18px;
}

@media(max-width:1100px){
  .asareh-rep-intro-grid,
  .asareh-rep-map-layout,
  .asareh-rep-process-grid,
  .asareh-rep-request-grid{
    grid-template-columns:1fr;
  }
  .asareh-rep-toolbar,
  .asareh-rep-map-head{
    display:grid;
    align-items:start;
  }
  .asareh-dealer-list{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .asareh-iran-map-stage{
    min-height:auto;
  }
}

@media(max-width:640px){
  .asareh-rep-intro,
  .asareh-rep-map-section,
  .asareh-rep-process,
  .asareh-rep-request{
    padding:58px 0;
  }
  .asareh-rep-intro-stats,
  .asareh-rep-process-steps,
  .asareh-form-row,
  .asareh-dealer-list{
    grid-template-columns:1fr;
  }
  .asareh-rep-filter{
    justify-content:flex-start;
  }
  .asareh-iran-map-stage{
    padding:12px;
    border-radius:24px;
    overflow:auto;
  }
  .asareh-iran-map-canvas{
    min-width:680px;
    padding:12px;
    transform:none;
  }
  .asareh-map-pin span{
    display:none;
  }
  .asareh-dealer-card,
  .asareh-rep-form{
    padding:22px;
    border-radius:26px;
  }
}

/* ===================================
   نقشه تعاملی با افکت رنگی/سیاه‌وسفید
   =================================== */

.asareh-iran-map-canvas {
  position: relative;
  width: 100%;
  height: 100%;
}

.asareh-iran-map-image {
  width: 100%;
  height: auto;
  display: block;
  transition: filter 0.6s cubic-bezier(0.4, 0, 0.2, 1);
  filter: saturate(1) brightness(1);
}

/* حالت سیاه‌وسفید وقتی پین انتخاب میشه */
.asareh-iran-map-canvas.map-dimmed .asareh-iran-map-image {
  filter: grayscale(1) brightness(0.7) contrast(0.9);
}

/* استایل پین‌ها */
.asareh-map-pin {
  position: absolute;
  left: var(--x);
  top: var(--y);
  transform: translate(-50%, -50%);
  width: 40px;
  height: 40px;
  background: linear-gradient(135deg,
      0%,
      100%);
  border: 3px solid #fff;
  border-radius: 50%;
  cursor: pointer;
  transition: all 0.3s ease;
  box-shadow: 0 4px 12px rgba(238, 90, 111, 0.4);
  z-index: 10;
}

.asareh-map-pin:hover {
  transform: translate(-50%, -50%) scale(1.15);
  box-shadow: 0 6px 20px rgba(238, 90, 111, 0.6);
}

.asareh-map-pin.is-active {
  background: linear-gradient(135deg,
      0%,
      100%);
  box-shadow: 0 6px 24px rgba(255, 107, 0, 0.7);
  transform: translate(-50%, -50%) scale(1.2);
  z-index: 20;
  animation: pulse-pin 2s ease-in-out infinite;
}

@keyframes pulse-pin {

  0%,
  100% {
    box-shadow: 0 6px 24px rgba(255, 107, 0, 0.7);
  }

  50% {
    box-shadow: 0 8px 32px rgba(255, 107, 0, 0.9);
  }
}

.asareh-map-pin span {
  position: absolute;
  bottom: 100%;
  left: 50%;
  transform: translateX(-50%);
  background: rgba(0, 0, 0, 0.85);
  color: #fff;
  padding: 6px 12px;
  border-radius: 6px;
  font-size: 13px;
  font-weight: 600;
  white-space: nowrap;
  opacity: 0;
  pointer-events: none;
  transition: all 0.3s ease;
  margin-bottom: 8px;
}

.asareh-map-pin:hover span,
.asareh-map-pin.is-active span {
  opacity: 1;
}

/* افکت spotlight برای منطقه انتخاب‌شده */
.asareh-map-pin.is-active::before {
  content: '';
  position: absolute;
  width: 200%;
  height: 200%;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: radial-gradient(circle, rgba(255, 165, 0, 0.3) 0%, transparent 70%);
  pointer-events: none;
  z-index: -1;
  animation: spotlight-glow 3s ease-in-out infinite;
}

@keyframes spotlight-glow {

  0%,
  100% {
    opacity: 0.6;
    transform: translate(-50%, -50%) scale(1);
  }

  50% {
    opacity: 0.9;
    transform: translate(-50%, -50%) scale(1.1);
  }
}

/* ریسپانسیو */
@media (max-width: 768px) {
  .asareh-map-pin {
    width: 32px;
    height: 32px;
  }

  .asareh-map-pin span {
    font-size: 11px;
    padding: 4px 8px;
  }
}

/* =========================================================
   FINAL FIX - Tochal representation page clean lock
   هدف: نشستن صحیح نقشه رنگی ایران، پین‌های سه‌بعدی و کارت نمایندگی
   ========================================================= */
.asareh-representation-page{
  background:linear-gradient(180deg,#fff 0%,#fbf7ef 100%) !important;
  overflow-x:hidden !important;
}
.asareh-rep-intro,
.asareh-rep-map-section,
.asareh-rep-process,
.asareh-rep-request{
  position:relative !important;
  isolation:isolate !important;
}
.asareh-rep-map-section{
  padding:86px 0 78px !important;
  background:
    radial-gradient(circle at 18% 0%,rgba(217,168,66,.16),transparent 30%),
    radial-gradient(circle at 88% 20%,rgba(184,32,36,.07),transparent 26%),
    linear-gradient(180deg,#fffaf2 0%,#fbf7ef 100%) !important;
}
.asareh-rep-map-head{
  display:flex !important;
  justify-content:space-between !important;
  align-items:flex-end !important;
  gap:36px !important;
  margin-bottom:26px !important;
}
.asareh-rep-map-head h2{
  margin:0 !important;
  color:#18130f !important;
  font-size:clamp(28px,3vw,44px) !important;
  font-weight:950 !important;
  line-height:1.55 !important;
}
.asareh-rep-map-head>p{
  max-width:560px !important;
  margin:0 !important;
  color:#695d4a !important;
  font-size:13.5px !important;
  font-weight:750 !important;
  line-height:2.15 !important;
  text-align:justify !important;
}
.asareh-rep-toolbar{
  display:flex !important;
  justify-content:space-between !important;
  align-items:center !important;
  gap:18px !important;
  margin:0 0 28px !important;
}
.asareh-rep-search{
  min-width:min(360px,100%) !important;
  height:50px !important;
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  padding:0 18px !important;
  background:#fff !important;
  border:1px dotted rgba(0,0,0,.18) !important;
  border-radius:999px !important;
  box-shadow:0 12px 36px rgba(61,43,20,.05) !important;
}
.asareh-rep-search input{
  width:100% !important;
  border:0 !important;
  outline:0 !important;
  background:transparent !important;
  color:#18130f !important;
  font-family:"AsarehVazir",Tahoma,sans-serif !important;
  font-size:12px !important;
  font-weight:800 !important;
}
.asareh-rep-filter{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:8px !important;
}
.asareh-rep-filter button{
  min-height:36px !important;
  padding:0 14px !important;
  border-radius:999px !important;
  border:1px dotted rgba(0,0,0,.18) !important;
  background:#fff !important;
  color:#18130f !important;
  font-family:"AsarehVazir",Tahoma,sans-serif !important;
  font-size:11.5px !important;
  font-weight:950 !important;
  cursor:pointer !important;
  transition:.22s ease !important;
}
.asareh-rep-filter button:hover,
.asareh-rep-filter button.is-active{
  background:#d9a842 !important;
  color:#111 !important;
  border-color:rgba(217,168,66,.66) !important;
  transform:translateY(-2px) !important;
}
.asareh-rep-map-layout{
  display:grid !important;
  grid-template-columns:minmax(0,1.45fr) minmax(320px,.72fr) !important;
  gap:32px !important;
  align-items:stretch !important;
}
.asareh-iran-map-stage{
  min-height:620px !important;
  padding:28px !important;
  display:grid !important;
  place-items:center !important;
  border-radius:42px !important;
  background:
    linear-gradient(145deg,rgba(255,255,255,.88),rgba(248,239,220,.94)),
    radial-gradient(circle at 70% 78%,rgba(217,168,66,.22),transparent 28%) !important;
  border:1px dotted rgba(0,0,0,.16) !important;
  box-shadow:0 34px 90px rgba(61,43,20,.12), inset 0 1px 0 rgba(255,255,255,.74) !important;
  perspective:1200px !important;
  overflow:visible !important;
}
.asareh-iran-map-canvas{
  position:relative !important;
  width:min(100%,900px) !important;
  aspect-ratio:16/9 !important;
  height:auto !important;
  padding:0 !important;
  border-radius:32px !important;
  background:linear-gradient(180deg,#fff,#f6efe4) !important;
  border:1px solid rgba(255,255,255,.72) !important;
  box-shadow:0 34px 74px rgba(34,24,16,.16) !important;
  transform:rotateX(7deg) rotateZ(-1.2deg) translateZ(0) !important;
  transform-style:preserve-3d !important;
  transition:transform .45s ease, box-shadow .45s ease !important;
  overflow:visible !important;
}
.asareh-iran-map-canvas:hover{
  transform:rotateX(4deg) rotateZ(0deg) translateY(-4px) !important;
  box-shadow:0 44px 100px rgba(34,24,16,.20) !important;
}
.asareh-iran-map-canvas::before{
  content:"" !important;
  position:absolute !important;
  inset:16px !important;
  border-radius:28px !important;
  border:1px dotted rgba(255,255,255,.52) !important;
  pointer-events:none !important;
  z-index:2 !important;
}
.asareh-iran-map-image{
  width:100% !important;
  height:100% !important;
  display:block !important;
  object-fit:cover !important;
  border-radius:32px !important;
  filter:saturate(1.06) contrast(1.04) brightness(.98) !important;
  transform:translateZ(10px) !important;
  transition:filter .45s ease, transform .45s ease !important;
  user-select:none !important;
  -webkit-user-drag:none !important;
}
.asareh-iran-map-canvas.map-dimmed .asareh-iran-map-image{
  filter:grayscale(.35) saturate(.85) contrast(1.02) brightness(.92) !important;
}
.asareh-map-pin{
  --pin-size:34px;
  position:absolute !important;
  left:var(--x) !important;
  top:var(--y) !important;
  width:var(--pin-size) !important;
  height:var(--pin-size) !important;
  padding:0 !important;
  border:0 !important;
  border-radius:50% 50% 50% 9px !important;
  background:linear-gradient(145deg,#ffe0a2 0%,#d9a842 42%,#b82024 100%) !important;
  transform:translate(-50%,-50%) rotate(-45deg) translateZ(44px) !important;
  transform-style:preserve-3d !important;
  cursor:pointer !important;
  z-index:8 !important;
  box-shadow:0 14px 28px rgba(184,32,36,.32), inset 0 1px 0 rgba(255,255,255,.62) !important;
  transition:transform .25s ease, box-shadow .25s ease, filter .25s ease, opacity .2s ease !important;
}
.asareh-map-pin::before{
  content:"" !important;
  position:absolute !important;
  inset:7px !important;
  border-radius:50% !important;
  background:#fff8ea !important;
  box-shadow:inset 0 0 0 2px rgba(184,32,36,.12) !important;
}
.asareh-map-pin::after{
  content:"" !important;
  position:absolute !important;
  width:58px !important;
  height:58px !important;
  right:50% !important;
  bottom:50% !important;
  transform:translate(50%,50%) !important;
  border-radius:50% !important;
  background:radial-gradient(circle,rgba(184,32,36,.28),rgba(217,168,66,.16) 44%,transparent 70%) !important;
  opacity:.58 !important;
  z-index:-1 !important;
  animation:asarehMapPulseFinal 2.2s ease-in-out infinite !important;
}
.asareh-map-pin span{
  position:absolute !important;
  right:20px !important;
  bottom:18px !important;
  min-width:max-content !important;
  padding:7px 11px !important;
  border-radius:999px !important;
  background:rgba(24,19,15,.92) !important;
  color:#fff !important;
  font-family:"AsarehVazir",Tahoma,sans-serif !important;
  font-size:10.5px !important;
  font-weight:950 !important;
  line-height:1 !important;
  opacity:0 !important;
  pointer-events:none !important;
  box-shadow:0 12px 26px rgba(0,0,0,.22) !important;
  transform:rotate(45deg) translateY(-3px) !important;
  transition:.22s ease !important;
}
.asareh-map-pin:hover,
.asareh-map-pin.is-hovered,
.asareh-map-pin.is-active{
  transform:translate(-50%,-50%) rotate(-45deg) translateZ(92px) scale(1.28) !important;
  box-shadow:0 28px 52px rgba(184,32,36,.44), inset 0 1px 0 rgba(255,255,255,.74) !important;
  filter:saturate(1.18) !important;
  z-index:40 !important;
}
.asareh-map-pin:hover span,
.asareh-map-pin.is-hovered span,
.asareh-map-pin.is-active span{
  opacity:1 !important;
  transform:rotate(45deg) translateY(-10px) !important;
}
@keyframes asarehMapPulseFinal{
  0%,100%{transform:translate(50%,50%) scale(.72);opacity:.32}
  50%{transform:translate(50%,50%) scale(1.16);opacity:.76}
}
.asareh-dealer-card{
  min-height:100% !important;
  padding:32px !important;
  border-radius:36px !important;
  background:rgba(255,255,255,.92) !important;
  border:1px dotted rgba(0,0,0,.18) !important;
  box-shadow:0 30px 90px rgba(61,43,20,.09) !important;
  backdrop-filter:blur(10px) !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
}
.asareh-dealer-actions a,
.asareh-dealer-actions button,
.asareh-rep-intro-actions a,
.asareh-rep-form button,
.asareh-dealer-modal-actions a{
  min-height:44px !important;
  padding:0 20px !important;
  border:0 !important;
  border-radius:999px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:8px !important;
  background:#d9a842 !important;
  color:#111 !important;
  text-decoration:none !important;
  font-family:"AsarehVazir",Tahoma,sans-serif !important;
  font-size:12px !important;
  font-weight:950 !important;
  cursor:pointer !important;
}
.asareh-dealer-actions a:nth-child(2),
.asareh-dealer-actions button,
.asareh-rep-intro-actions a:nth-child(2){
  background:#fff !important;
  border:1px dotted rgba(0,0,0,.22) !important;
}
.asareh-dealer-list{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:12px !important;
  margin-top:24px !important;
}
.asareh-dealer-list button,
.asareh-dealer-empty{
  min-height:76px !important;
  padding:14px 16px !important;
  text-align:right !important;
  border-radius:22px !important;
  background:#fff !important;
  border:1px dotted rgba(0,0,0,.18) !important;
  cursor:pointer !important;
  transition:.22s ease !important;
}
.asareh-dealer-list button:hover,
.asareh-dealer-list button.is-active{
  transform:translateY(-3px) !important;
  border-color:rgba(184,32,36,.44) !important;
  background:#fffaf0 !important;
}
@media(max-width:1100px){
  .asareh-rep-map-head,
  .asareh-rep-toolbar{display:grid !important;align-items:start !important;}
  .asareh-rep-map-layout{grid-template-columns:1fr !important;}
  .asareh-iran-map-stage{min-height:auto !important;}
  .asareh-dealer-list{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
}
@media(max-width:640px){
  .asareh-rep-map-section{padding:56px 0 !important;}
  .asareh-iran-map-stage{padding:14px !important;border-radius:26px !important;overflow:auto !important;}
  .asareh-iran-map-canvas{min-width:720px !important;transform:none !important;}
  .asareh-map-pin span{display:none !important;}
  .asareh-dealer-list{grid-template-columns:1fr !important;}
}

/* =========================================================
   FINAL MAP SIZE/PIN ALIGNMENT - Mehdi request
   فقط برای صفحه نمایندگی: بزرگ‌تر شدن نقشه رنگی، کوچک‌تر شدن نقاط، نشستن دقیق‌تر پین‌ها
   ========================================================= */
.asareh-representation-page .asareh-rep-map-layout{
  grid-template-columns:minmax(0,1.62fr) minmax(300px,.68fr) !important;
  gap:28px !important;
  align-items:stretch !important;
}
.asareh-representation-page .asareh-iran-map-stage{
  min-height:590px !important;
  padding:18px !important;
  overflow:hidden !important;
  border-radius:40px !important;
}
.asareh-representation-page .asareh-iran-map-canvas{
  width:min(100%,1040px) !important;
  aspect-ratio:16/8.65 !important;
  overflow:hidden !important;
  border-radius:30px !important;
  transform:rotateX(5deg) rotateZ(-.7deg) translateZ(0) !important;
}
.asareh-representation-page .asareh-iran-map-canvas:hover{
  transform:rotateX(3deg) rotateZ(0deg) translateY(-3px) !important;
}
.asareh-representation-page .asareh-iran-map-image{
  object-fit:cover !important;
  object-position:center center !important;
  transform:translateZ(10px) scale(1.12) !important;
  transform-origin:center center !important;
  border-radius:30px !important;
}
.asareh-representation-page .asareh-map-pin{
  --pin-size:22px !important;
  border-radius:50% !important;
  background:linear-gradient(145deg,#fff8df 0%,#e0a83b 42%,#c75527 100%) !important;
  transform:translate(-50%,-50%) translateZ(44px) !important;
  box-shadow:0 7px 16px rgba(184,32,36,.30), inset 0 1px 0 rgba(255,255,255,.82) !important;
}
.asareh-representation-page .asareh-map-pin::before{
  inset:5px !important;
  background:#fffdf1 !important;
  box-shadow:inset 0 0 0 1px rgba(184,32,36,.20) !important;
}
.asareh-representation-page .asareh-map-pin::after{
  width:34px !important;
  height:34px !important;
  opacity:.38 !important;
}
.asareh-representation-page .asareh-map-pin span{
  right:18px !important;
  bottom:18px !important;
  padding:6px 9px !important;
  font-size:9.5px !important;
  transform:translateY(-2px) !important;
}
.asareh-representation-page .asareh-map-pin:hover,
.asareh-representation-page .asareh-map-pin.is-hovered,
.asareh-representation-page .asareh-map-pin.is-active{
  transform:translate(-50%,-50%) translateZ(82px) scale(1.14) !important;
  box-shadow:0 12px 26px rgba(184,32,36,.38), inset 0 1px 0 rgba(255,255,255,.88) !important;
  z-index:40 !important;
}
.asareh-representation-page .asareh-map-pin:hover span,
.asareh-representation-page .asareh-map-pin.is-hovered span,
.asareh-representation-page .asareh-map-pin.is-active span{
  transform:translateY(-8px) !important;
}
@media(max-width:1000px){
  .asareh-representation-page .asareh-rep-map-layout{
    grid-template-columns:1fr !important;
  }
  .asareh-representation-page .asareh-iran-map-stage{
    min-height:auto !important;
    padding:14px !important;
  }
  .asareh-representation-page .asareh-iran-map-canvas{
    width:100% !important;
    min-width:0 !important;
  }
}
@media(max-width:640px){
  .asareh-representation-page .asareh-iran-map-stage{
    overflow:auto !important;
  }
  .asareh-representation-page .asareh-iran-map-canvas{
    min-width:680px !important;
  }
  .asareh-representation-page .asareh-map-pin{
    --pin-size:18px !important;
  }
  .asareh-representation-page .asareh-map-pin span{
    display:none !important;
  }
}


/* V8 FIX: representation dealer list typography lock */
.asareh-representation-page .asareh-dealer-list,
.asareh-representation-page .asareh-dealer-list *,
.asareh-representation-page .asareh-dealer-empty,
.asareh-representation-page .asareh-dealer-card,
.asareh-representation-page .asareh-dealer-card *{
  font-family:"AsarehVazir","AsarehPeyda","AsarehIranSans",Tahoma,Arial,sans-serif !important;
  box-sizing:border-box !important;
}

.asareh-representation-page .asareh-dealer-list{
  direction:rtl !important;
  text-align:right !important;
  align-items:stretch !important;
}

.asareh-representation-page .asareh-dealer-list button,
.asareh-representation-page .asareh-dealer-empty{
  direction:rtl !important;
  text-align:right !important;
  line-height:1.8 !important;
  letter-spacing:0 !important;
  color:#18130f !important;
}

.asareh-representation-page .asareh-dealer-list button strong{
  display:block !important;
  margin:0 0 6px !important;
  font-family:"AsarehPeyda","AsarehVazir","AsarehIranSans",Tahoma,Arial,sans-serif !important;
  font-size:13px !important;
  font-weight:900 !important;
  line-height:1.8 !important;
  color:#18130f !important;
}

.asareh-representation-page .asareh-dealer-list button span,
.asareh-representation-page .asareh-dealer-empty{
  display:block !important;
  font-family:"AsarehVazir","AsarehPeyda","AsarehIranSans",Tahoma,Arial,sans-serif !important;
  font-size:11.5px !important;
  font-weight:700 !important;
  line-height:1.9 !important;
  color:#6b5d4d !important;
}

.asareh-representation-page .asareh-dealer-list button.is-active strong,
.asareh-representation-page .asareh-dealer-list button:hover strong{
  color:#b82024 !important;
}

.asareh-representation-page .asareh-dealer-card-kicker,
.asareh-representation-page .asareh-dealer-badges span,
.asareh-representation-page .asareh-dealer-info strong,
.asareh-representation-page .asareh-dealer-info span,
.asareh-representation-page .asareh-dealer-actions a,
.asareh-representation-page .asareh-dealer-actions button{
  font-family:"AsarehVazir","AsarehPeyda","AsarehIranSans",Tahoma,Arial,sans-serif !important;
}

/* =========================================================
   V9 PROFESSIONAL MAP BALANCE - larger focused Iran map + smaller labeled pins
   Scope: representation page only
   ========================================================= */
.asareh-representation-page .asareh-rep-map-layout{
  grid-template-columns:minmax(0,1.88fr) minmax(270px,.52fr) !important;
  gap:22px !important;
  align-items:stretch !important;
}

.asareh-representation-page .asareh-iran-map-stage{
  min-height:650px !important;
  padding:12px !important;
  border-radius:42px !important;
  perspective:1550px !important;
  background:
    radial-gradient(circle at 50% 58%, rgba(217,168,66,.20), transparent 55%),
    linear-gradient(145deg,rgba(255,255,255,.86),rgba(248,239,224,.95)) !important;
  box-shadow:0 38px 96px rgba(67,44,18,.10) !important;
}

.asareh-representation-page .asareh-iran-map-canvas{
  width:min(100%,1180px) !important;
  aspect-ratio:16/9.12 !important;
  padding:0 !important;
  border-radius:34px !important;
  overflow:hidden !important;
  background:#e8e8e6 !important;
  transform:rotateX(8deg) rotateY(-5deg) rotateZ(-.6deg) translateZ(0) !important;
  transform-style:preserve-3d !important;
  box-shadow:
    0 32px 70px rgba(70,45,18,.16),
    0 74px 110px rgba(70,45,18,.10),
    inset 0 1px 0 rgba(255,255,255,.75) !important;
}

.asareh-representation-page .asareh-iran-map-canvas:hover{
  transform:rotateX(5deg) rotateY(-2deg) rotateZ(0deg) translateY(-4px) !important;
  box-shadow:
    0 42px 90px rgba(70,45,18,.18),
    0 88px 130px rgba(70,45,18,.12),
    inset 0 1px 0 rgba(255,255,255,.82) !important;
}

.asareh-representation-page .asareh-iran-map-canvas::before{
  inset:8% 10% 5% 12% !important;
  background:radial-gradient(circle at 52% 60%,rgba(217,168,66,.24),transparent 58%) !important;
  transform:translateZ(-42px) !important;
  filter:blur(25px) !important;
}

.asareh-representation-page .asareh-iran-map-image{
  width:100% !important;
  height:100% !important;
  display:block !important;
  object-fit:cover !important;
  object-position:center center !important;
  border-radius:34px !important;
  transform:none !important;
  filter:drop-shadow(0 25px 32px rgba(48,31,14,.20)) contrast(1.04) saturate(1.05) !important;
}

.asareh-representation-page .asareh-map-pin{
  --pin-size:12px !important;
  position:absolute !important;
  left:var(--x) !important;
  top:var(--y) !important;
  width:var(--pin-size) !important;
  height:var(--pin-size) !important;
  padding:0 !important;
  border:0 !important;
  border-radius:50% !important;
  background:transparent !important;
  box-shadow:none !important;
  transform:translate(-50%,-50%) translateZ(54px) !important;
  transform-style:preserve-3d !important;
  cursor:pointer !important;
  z-index:20 !important;
  overflow:visible !important;
}

.asareh-representation-page .asareh-map-pin::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  width:var(--pin-size) !important;
  height:var(--pin-size) !important;
  border-radius:50% !important;
  background:radial-gradient(circle at 35% 32%,#fffef8 0 22%,#f3c155 23% 52%,#d87523 53% 74%,#b82024 75% 100%) !important;
  border:1px solid rgba(255,255,255,.92) !important;
  box-shadow:
    0 3px 7px rgba(109,56,17,.34),
    0 0 0 3px rgba(217,168,66,.16),
    inset 0 1px 0 rgba(255,255,255,.85) !important;
}

.asareh-representation-page .asareh-map-pin::after{
  content:"" !important;
  position:absolute !important;
  width:24px !important;
  height:24px !important;
  right:50% !important;
  bottom:50% !important;
  transform:translate(50%,50%) !important;
  border-radius:50% !important;
  background:radial-gradient(circle,rgba(184,32,36,.18),rgba(217,168,66,.11) 44%,transparent 70%) !important;
  opacity:.36 !important;
  z-index:-1 !important;
  animation:asarehMapPulseProfessional 2.8s ease-in-out infinite !important;
}

.asareh-representation-page .asareh-map-pin span{
  position:absolute !important;
  right:calc(100% + 7px) !important;
  top:50% !important;
  bottom:auto !important;
  min-width:max-content !important;
  padding:4px 7px !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.92) !important;
  border:1px solid rgba(0,0,0,.08) !important;
  color:#211810 !important;
  font-family:"AsarehVazir","AsarehPeyda",Tahoma,sans-serif !important;
  font-size:9px !important;
  font-weight:950 !important;
  line-height:1.2 !important;
  letter-spacing:0 !important;
  opacity:1 !important;
  pointer-events:none !important;
  transform:translateY(-50%) translateZ(20px) !important;
  box-shadow:0 7px 16px rgba(0,0,0,.10) !important;
  text-shadow:none !important;
}

.asareh-representation-page .asareh-map-pin[data-dealer="mashhad"] span,
.asareh-representation-page .asareh-map-pin[data-dealer="bandar"] span,
.asareh-representation-page .asareh-map-pin[data-dealer="qeshm"] span,
.asareh-representation-page .asareh-map-pin[data-dealer="zahedan"] span{
  right:auto !important;
  left:calc(100% + 7px) !important;
}

.asareh-representation-page .asareh-map-pin:hover,
.asareh-representation-page .asareh-map-pin.is-hovered,
.asareh-representation-page .asareh-map-pin.is-active{
  transform:translate(-50%,-50%) translateZ(92px) scale(1.32) !important;
  z-index:60 !important;
}

.asareh-representation-page .asareh-map-pin:hover::before,
.asareh-representation-page .asareh-map-pin.is-hovered::before,
.asareh-representation-page .asareh-map-pin.is-active::before{
  box-shadow:
    0 8px 18px rgba(184,32,36,.42),
    0 0 0 6px rgba(217,168,66,.16),
    inset 0 1px 0 rgba(255,255,255,.92) !important;
}

.asareh-representation-page .asareh-map-pin:hover span,
.asareh-representation-page .asareh-map-pin.is-hovered span,
.asareh-representation-page .asareh-map-pin.is-active span{
  background:#18130f !important;
  color:#fff !important;
  border-color:#18130f !important;
  transform:translateY(-50%) translateZ(34px) scale(1.02) !important;
}

@keyframes asarehMapPulseProfessional{
  0%,100%{transform:translate(50%,50%) scale(.72);opacity:.20}
  50%{transform:translate(50%,50%) scale(1.28);opacity:.42}
}

@media(max-width:1100px){
  .asareh-representation-page .asareh-rep-map-layout{
    grid-template-columns:1fr !important;
  }
  .asareh-representation-page .asareh-iran-map-stage{
    min-height:auto !important;
  }
  .asareh-representation-page .asareh-iran-map-canvas{
    width:100% !important;
  }
}

@media(max-width:640px){
  .asareh-representation-page .asareh-iran-map-stage{
    overflow:auto !important;
  }
  .asareh-representation-page .asareh-iran-map-canvas{
    min-width:760px !important;
  }
  .asareh-representation-page .asareh-map-pin span{
    font-size:8px !important;
    padding:3px 6px !important;
  }
}


/* =========================================================
   V10 MAP PRO CLEANUP: flat professional 3D, larger map, tiny accurate pins
   Scope: representation page only
   ========================================================= */
.asareh-representation-page .asareh-rep-map-section .container{
  width:min(1580px,calc(100% - 48px)) !important;
  max-width:none !important;
}

.asareh-representation-page .asareh-rep-map-layout{
  grid-template-columns:minmax(0,2.65fr) minmax(248px,.58fr) !important;
  gap:18px !important;
  align-items:stretch !important;
}

.asareh-representation-page .asareh-iran-map-stage{
  min-height:700px !important;
  padding:8px !important;
  border-radius:42px !important;
  perspective:none !important;
  background:
    radial-gradient(circle at 58% 68%, rgba(217,168,66,.22), transparent 54%),
    linear-gradient(145deg,rgba(255,255,255,.90),rgba(248,239,224,.98)) !important;
  box-shadow:
    0 34px 78px rgba(67,44,18,.11),
    inset 0 1px 0 rgba(255,255,255,.86) !important;
}

.asareh-representation-page .asareh-iran-map-canvas{
  width:100% !important;
  max-width:1260px !important;
  aspect-ratio:16/8.25 !important;
  padding:0 !important;
  border-radius:36px !important;
  overflow:visible !important;
  background:linear-gradient(145deg,#f6f6f2,#e2e3df) !important;
  transform:none !important;
  transform-style:flat !important;
  box-shadow:
    0 30px 55px rgba(56,37,16,.13),
    0 72px 110px rgba(56,37,16,.11),
    inset 0 1px 0 rgba(255,255,255,.94),
    inset 0 -36px 70px rgba(120,95,52,.10) !important;
  transition:box-shadow .32s ease, transform .32s ease !important;
}

.asareh-representation-page .asareh-iran-map-canvas:hover{
  transform:translateY(-3px) !important;
  box-shadow:
    0 40px 75px rgba(56,37,16,.15),
    0 90px 135px rgba(56,37,16,.12),
    inset 0 1px 0 rgba(255,255,255,.96),
    inset 0 -42px 78px rgba(120,95,52,.12) !important;
}

.asareh-representation-page .asareh-iran-map-canvas::before{
  content:"" !important;
  position:absolute !important;
  inset:7% 8% -4% 8% !important;
  border-radius:50% !important;
  background:radial-gradient(ellipse at center,rgba(68,44,18,.25),rgba(217,168,66,.15) 34%,transparent 67%) !important;
  transform:none !important;
  filter:blur(30px) !important;
  pointer-events:none !important;
  z-index:0 !important;
}

.asareh-representation-page .asareh-iran-map-canvas::after{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  border-radius:36px !important;
  pointer-events:none !important;
  background:
    linear-gradient(135deg,rgba(255,255,255,.36),transparent 32%),
    radial-gradient(circle at 60% 78%,rgba(217,168,66,.13),transparent 42%) !important;
  z-index:4 !important;
}

.asareh-representation-page .asareh-iran-map-image{
  position:relative !important;
  z-index:1 !important;
  width:100% !important;
  height:100% !important;
  display:block !important;
  object-fit:cover !important;
  object-position:center center !important;
  border-radius:36px !important;
  transform:none !important;
  filter:drop-shadow(0 27px 22px rgba(48,31,14,.22)) contrast(1.06) saturate(1.09) !important;
}

.asareh-representation-page .asareh-map-pin{
  --pin-size:7px !important;
  position:absolute !important;
  left:var(--x) !important;
  top:var(--y) !important;
  width:var(--pin-size) !important;
  height:var(--pin-size) !important;
  padding:0 !important;
  border:0 !important;
  border-radius:50% !important;
  background:transparent !important;
  box-shadow:none !important;
  transform:translate(-50%,-50%) !important;
  cursor:pointer !important;
  z-index:30 !important;
  overflow:visible !important;
}

.asareh-representation-page .asareh-map-pin::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  width:var(--pin-size) !important;
  height:var(--pin-size) !important;
  border-radius:50% !important;
  background:radial-gradient(circle at 35% 32%,#fffaf1 0 25%,#f4c45b 26% 56%,#d87523 57% 78%,#b82024 79% 100%) !important;
  border:1px solid rgba(255,255,255,.95) !important;
  box-shadow:
    0 2px 4px rgba(109,56,17,.28),
    0 0 0 2px rgba(217,168,66,.14),
    inset 0 1px 0 rgba(255,255,255,.92) !important;
}

.asareh-representation-page .asareh-map-pin::after{
  content:"" !important;
  position:absolute !important;
  width:15px !important;
  height:15px !important;
  right:50% !important;
  bottom:50% !important;
  transform:translate(50%,50%) !important;
  border-radius:50% !important;
  background:radial-gradient(circle,rgba(184,32,36,.15),rgba(217,168,66,.10) 48%,transparent 72%) !important;
  opacity:.24 !important;
  z-index:-1 !important;
  animation:asarehMapPulseProfessional 3.2s ease-in-out infinite !important;
}

.asareh-representation-page .asareh-map-pin span{
  position:absolute !important;
  right:calc(100% + 5px) !important;
  top:50% !important;
  bottom:auto !important;
  min-width:max-content !important;
  padding:3px 6px !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.94) !important;
  border:1px solid rgba(0,0,0,.07) !important;
  color:#211810 !important;
  font-family:"AsarehVazir","AsarehPeyda",Tahoma,sans-serif !important;
  font-size:7.8px !important;
  font-weight:950 !important;
  line-height:1.15 !important;
  opacity:1 !important;
  pointer-events:none !important;
  transform:translateY(-50%) !important;
  box-shadow:0 5px 12px rgba(0,0,0,.10) !important;
  text-shadow:none !important;
  white-space:nowrap !important;
}

.asareh-representation-page .asareh-map-pin:hover,
.asareh-representation-page .asareh-map-pin.is-hovered,
.asareh-representation-page .asareh-map-pin.is-active{
  transform:translate(-50%,-50%) scale(1.28) !important;
  z-index:80 !important;
}

.asareh-representation-page .asareh-map-pin:hover::before,
.asareh-representation-page .asareh-map-pin.is-hovered::before,
.asareh-representation-page .asareh-map-pin.is-active::before{
  box-shadow:
    0 6px 14px rgba(184,32,36,.42),
    0 0 0 4px rgba(217,168,66,.15),
    inset 0 1px 0 rgba(255,255,255,.95) !important;
}

.asareh-representation-page .asareh-map-pin:hover span,
.asareh-representation-page .asareh-map-pin.is-hovered span,
.asareh-representation-page .asareh-map-pin.is-active span{
  background:#18130f !important;
  color:#fff !important;
  border-color:#18130f !important;
  transform:translateY(-50%) scale(1.03) !important;
}

/* label directions tuned to prevent overlap on the enlarged map */
.asareh-representation-page .asareh-map-pin[data-dealer="mashhad"] span,
.asareh-representation-page .asareh-map-pin[data-dealer="zahedan"] span,
.asareh-representation-page .asareh-map-pin[data-dealer="bandar"] span,
.asareh-representation-page .asareh-map-pin[data-dealer="qeshm"] span{
  right:auto !important;
  left:calc(100% + 5px) !important;
}

.asareh-representation-page .asareh-map-pin[data-dealer="tehran"] span{right:auto !important;left:calc(100% + 5px) !important;top:35% !important;}
.asareh-representation-page .asareh-map-pin[data-dealer="isfahan"] span{right:calc(100% + 5px) !important;top:40% !important;}
.asareh-representation-page .asareh-map-pin[data-dealer="shahrekord"] span{right:calc(100% + 5px) !important;top:62% !important;}
.asareh-representation-page .asareh-map-pin[data-dealer="ahvaz"] span{right:calc(100% + 5px) !important;top:62% !important;}
.asareh-representation-page .asareh-map-pin[data-dealer="shiraz"] span{right:calc(100% + 5px) !important;top:62% !important;}
.asareh-representation-page .asareh-map-pin[data-dealer="bushehr"] span{right:calc(100% + 5px) !important;top:40% !important;}
.asareh-representation-page .asareh-map-pin[data-dealer="kangan"] span{right:calc(100% + 5px) !important;top:28% !important;}
.asareh-representation-page .asareh-map-pin[data-dealer="asaluyeh"] span{right:auto !important;left:calc(100% + 5px) !important;top:72% !important;}
.asareh-representation-page .asareh-map-pin[data-dealer="kish"] span{right:calc(100% + 5px) !important;top:76% !important;}

@keyframes asarehMapPulseProfessional{
  0%,100%{transform:translate(50%,50%) scale(.72);opacity:.16}
  50%{transform:translate(50%,50%) scale(1.30);opacity:.34}
}

@media(max-width:1100px){
  .asareh-representation-page .asareh-rep-map-section .container{width:min(100% - 32px,1320px) !important;}
  .asareh-representation-page .asareh-rep-map-layout{grid-template-columns:1fr !important;}
  .asareh-representation-page .asareh-iran-map-stage{min-height:auto !important;}
}

@media(max-width:640px){
  .asareh-representation-page .asareh-iran-map-stage{overflow:auto !important;padding:8px !important;}
  .asareh-representation-page .asareh-iran-map-canvas{min-width:900px !important;}
  .asareh-representation-page .asareh-map-pin span{font-size:7.2px !important;padding:3px 5px !important;}
}


/* =========================================================
   V11 FINAL REPRESENTATION MAP: accurate city placement + soft dealer list
   Scope: representation page only
   ========================================================= */
.asareh-representation-page .asareh-rep-map-layout{
  grid-template-columns:minmax(0,2.85fr) minmax(240px,.55fr) !important;
  gap:18px !important;
  align-items:stretch !important;
}

.asareh-representation-page .asareh-iran-map-stage{
  min-height:760px !important;
  padding:10px !important;
  overflow:visible !important;
}

.asareh-representation-page .asareh-iran-map-canvas{
  width:100% !important;
  max-width:1440px !important;
  aspect-ratio:1600/912 !important;
  min-height:0 !important;
  border-radius:34px !important;
  overflow:visible !important;
  background:
    radial-gradient(circle at 52% 64%, rgba(217,168,66,.14), transparent 48%),
    linear-gradient(145deg,#f6f7f4,#e5e6e2) !important;
  transform:none !important;
  box-shadow:
    0 30px 58px rgba(49,34,16,.16),
    0 82px 130px rgba(58,39,18,.10),
    inset 0 1px 0 rgba(255,255,255,.96),
    inset 0 -30px 60px rgba(122,94,48,.10) !important;
}

.asareh-representation-page .asareh-iran-map-canvas:hover{
  transform:translateY(-2px) !important;
}

.asareh-representation-page .asareh-iran-map-image{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  object-position:center center !important;
  border-radius:34px !important;
  filter:
    drop-shadow(0 20px 18px rgba(45,31,18,.22))
    drop-shadow(0 42px 34px rgba(69,42,19,.10))
    contrast(1.07)
    saturate(1.10) !important;
}

.asareh-representation-page .asareh-map-pin{
  --pin-size:5.5px !important;
  z-index:35 !important;
}

.asareh-representation-page .asareh-map-pin::before{
  border:1px solid rgba(255,255,255,.96) !important;
  box-shadow:
    0 2px 4px rgba(109,56,17,.24),
    0 0 0 1px rgba(217,168,66,.18),
    inset 0 1px 0 rgba(255,255,255,.95) !important;
}

.asareh-representation-page .asareh-map-pin::after{
  width:11px !important;
  height:11px !important;
  opacity:.16 !important;
}

.asareh-representation-page .asareh-map-pin span{
  padding:2px 5px !important;
  font-size:7px !important;
  line-height:1.12 !important;
  border-color:rgba(0,0,0,.055) !important;
  box-shadow:0 4px 9px rgba(0,0,0,.085) !important;
}

.asareh-representation-page .asareh-map-pin:hover,
.asareh-representation-page .asareh-map-pin.is-hovered,
.asareh-representation-page .asareh-map-pin.is-active{
  transform:translate(-50%,-50%) scale(1.18) !important;
}

/* label micro-positioning after accurate city coordinates */
.asareh-representation-page .asareh-map-pin[data-dealer="tehran"] span{
  right:auto !important; left:calc(100% + 5px) !important; top:44% !important;
}
.asareh-representation-page .asareh-map-pin[data-dealer="mashhad"] span{
  right:auto !important; left:calc(100% + 5px) !important; top:50% !important;
}
.asareh-representation-page .asareh-map-pin[data-dealer="isfahan"] span{
  right:calc(100% + 5px) !important; left:auto !important; top:44% !important;
}
.asareh-representation-page .asareh-map-pin[data-dealer="shahrekord"] span{
  right:calc(100% + 5px) !important; left:auto !important; top:44% !important;
}
.asareh-representation-page .asareh-map-pin[data-dealer="ahvaz"] span{
  right:calc(100% + 5px) !important; left:auto !important; top:50% !important;
}
.asareh-representation-page .asareh-map-pin[data-dealer="shiraz"] span{
  right:calc(100% + 5px) !important; left:auto !important; top:52% !important;
}
.asareh-representation-page .asareh-map-pin[data-dealer="bushehr"] span{
  right:calc(100% + 5px) !important; left:auto !important; top:42% !important;
}
.asareh-representation-page .asareh-map-pin[data-dealer="kangan"] span{
  right:calc(100% + 5px) !important; left:auto !important; top:30% !important;
}
.asareh-representation-page .asareh-map-pin[data-dealer="asaluyeh"] span{
  right:auto !important; left:calc(100% + 5px) !important; top:70% !important;
}
.asareh-representation-page .asareh-map-pin[data-dealer="kish"] span{
  right:calc(100% + 5px) !important; left:auto !important; top:78% !important;
}
.asareh-representation-page .asareh-map-pin[data-dealer="qeshm"] span,
.asareh-representation-page .asareh-map-pin[data-dealer="bandar"] span,
.asareh-representation-page .asareh-map-pin[data-dealer="zahedan"] span{
  right:auto !important; left:calc(100% + 5px) !important; top:50% !important;
}

/* Softer dealer list: fade normal items, delicate active item */
.asareh-representation-page .asareh-dealer-list{
  gap:12px !important;
  margin-top:24px !important;
}

.asareh-representation-page .asareh-dealer-list button{
  min-height:62px !important;
  border:1px solid rgba(0,0,0,.035) !important;
  background:rgba(255,255,255,.34) !important;
  box-shadow:none !important;
  opacity:.58 !important;
  filter:saturate(.82) !important;
  border-radius:18px !important;
  transition:
    opacity .22s ease,
    background .22s ease,
    border-color .22s ease,
    transform .22s ease,
    filter .22s ease !important;
}

.asareh-representation-page .asareh-dealer-list button strong{
  font-family:"AsarehVazir","AsarehPeyda",Tahoma,sans-serif !important;
  font-weight:750 !important;
  color:rgba(24,19,15,.74) !important;
}

.asareh-representation-page .asareh-dealer-list button span{
  font-family:"AsarehVazir","AsarehPeyda",Tahoma,sans-serif !important;
  color:rgba(93,81,70,.62) !important;
}

.asareh-representation-page .asareh-dealer-list button:hover{
  opacity:.86 !important;
  filter:saturate(.95) !important;
  background:rgba(255,255,255,.58) !important;
  border-color:rgba(217,168,66,.20) !important;
  transform:translateY(-2px) !important;
}

.asareh-representation-page .asareh-dealer-list button.is-active{
  opacity:1 !important;
  filter:saturate(1) !important;
  background:rgba(255,255,255,.82) !important;
  border:1px solid rgba(184,32,36,.20) !important;
  outline:1px solid rgba(217,168,66,.16) !important;
  outline-offset:3px !important;
  transform:translateY(-2px) !important;
}

.asareh-representation-page .asareh-dealer-list button.is-active strong{
  font-weight:950 !important;
  color:#b82024 !important;
}

.asareh-representation-page .asareh-dealer-list button.is-active span{
  color:#2b2118 !important;
  font-weight:800 !important;
}

@media(max-width:1100px){
  .asareh-representation-page .asareh-iran-map-stage{
    min-height:auto !important;
  }
  .asareh-representation-page .asareh-iran-map-canvas{
    max-width:100% !important;
  }
}

@media(max-width:640px){
  .asareh-representation-page .asareh-iran-map-canvas{
    min-width:980px !important;
  }
}


/* ===== Representation controlled fix v13 - minimal safe correction ===== */
.asareh-rep-map-layout{
  grid-template-columns:minmax(300px,.82fr) minmax(0,1.18fr) !important;
  gap:24px !important;
  align-items:start !important;
}

.asareh-iran-map-stage{
  min-height:620px !important;
  padding:22px !important;
}

.asareh-iran-map-canvas{
  width:min(100%,900px) !important;
  max-width:900px !important;
  margin-inline:auto !important;
  transform:none !important;
}

.asareh-iran-map-canvas:hover{
  transform:translateY(-3px) !important;
}

.asareh-iran-map-image{
  width:100% !important;
  height:auto !important;
  object-fit:contain !important;
  filter:drop-shadow(0 24px 36px rgba(41,28,16,.16)) saturate(1.04) contrast(1.02) !important;
}

.asareh-map-pin{
  --pin-size:10px !important;
  width:var(--pin-size) !important;
  height:var(--pin-size) !important;
  border-radius:50% !important;
  transform:translate(-50%,-50%) !important;
  box-shadow:0 0 0 2px rgba(255,255,255,.90),0 5px 12px rgba(144,52,18,.32) !important;
}

.asareh-map-pin::before{
  inset:3px !important;
}

.asareh-map-pin::after{
  width:18px !important;
  height:18px !important;
  opacity:.34 !important;
}

.asareh-map-pin span{
  opacity:1 !important;
  right:auto !important;
  left:14px !important;
  bottom:50% !important;
  transform:translateY(50%) !important;
  padding:3px 7px !important;
  border-radius:9px !important;
  background:rgba(255,255,255,.96) !important;
  color:#302821 !important;
  font-size:9px !important;
  line-height:1.5 !important;
  box-shadow:0 6px 14px rgba(0,0,0,.10) !important;
  border:1px solid rgba(193,157,84,.25) !important;
}

.asareh-map-pin:hover,
.asareh-map-pin.is-active{
  transform:translate(-50%,-50%) scale(1.18) !important;
  box-shadow:0 0 0 2px rgba(255,255,255,.94),0 10px 20px rgba(144,52,18,.34) !important;
  z-index:12 !important;
}

.asareh-map-pin:hover span,
.asareh-map-pin.is-active span{
  background:rgba(31,25,21,.96) !important;
  color:#fff !important;
  transform:translateY(50%) !important;
}

.asareh-map-pin[data-dealer="mashhad"] span,
.asareh-map-pin[data-dealer="zahedan"] span,
.asareh-map-pin[data-dealer="kish"] span,
.asareh-map-pin[data-dealer="qeshm"] span{
  left:auto !important;
  right:14px !important;
}

.asareh-map-pin[data-dealer="kish"] span,
.asareh-map-pin[data-dealer="qeshm"] span,
.asareh-map-pin[data-dealer="bandar"] span,
.asareh-map-pin[data-dealer="asaluyeh"] span,
.asareh-map-pin[data-dealer="kangan"] span{
  bottom:auto !important;
  top:50% !important;
  transform:translateY(-50%) !important;
}

.asareh-dealer-card{
  align-self:start !important;
  justify-content:flex-start !important;
  min-height:auto !important;
  padding:28px 26px 24px !important;
}

.asareh-dealer-info div{
  grid-template-columns:24px minmax(0,1fr) !important;
  grid-template-rows:auto auto !important;
  align-items:start !important;
  gap:3px 10px !important;
  padding:10px 0 !important;
}

.asareh-dealer-info i{
  grid-column:1 !important;
  grid-row:1 / span 2 !important;
  margin-top:4px !important;
}

.asareh-dealer-info strong{
  grid-column:2 !important;
  grid-row:1 !important;
  display:block !important;
  line-height:1.6 !important;
}

.asareh-dealer-info span{
  grid-column:2 !important;
  grid-row:2 !important;
  display:block !important;
  line-height:1.95 !important;
}

.asareh-dealer-list{
  gap:10px !important;
  margin-top:18px !important;
}

.asareh-dealer-list button,
.asareh-dealer-empty{
  border:1px solid rgba(0,0,0,.055) !important;
  background:rgba(255,255,255,.42) !important;
  box-shadow:none !important;
  border-radius:18px !important;
}

.asareh-dealer-list button strong{
  font-weight:800 !important;
}

.asareh-dealer-list button.is-active{
  background:rgba(255,250,238,.74) !important;
  border-color:rgba(179,130,40,.28) !important;
  box-shadow:inset 0 0 0 1px rgba(179,130,40,.10) !important;
}

.asareh-dealer-list button.is-active strong{
  font-weight:950 !important;
  color:#111 !important;
}

@media(max-width:1180px){
  .asareh-rep-map-layout{
    grid-template-columns:1fr !important;
  }
  .asareh-iran-map-canvas{
    width:min(100%,940px) !important;
  }
}


/* ===== Representation all-city remap v19 ===== */
.asareh-map-pin{
  --pin-size: 15px !important;
  width: var(--pin-size) !important;
  height: var(--pin-size) !important;
}

.asareh-map-pin::before{
  inset: 4px !important;
}

.asareh-map-pin::after{
  width: 30px !important;
  height: 30px !important;
  opacity: .34 !important;
}

.asareh-map-pin span{
  opacity: 1 !important;
  pointer-events: none !important;
  padding: 5px 10px !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  border-radius: 11px !important;
  background: rgba(255,255,255,.96) !important;
  color: #2e261f !important;
  border: 1px solid rgba(191,151,74,.32) !important;
  box-shadow: 0 7px 16px rgba(0,0,0,.10) !important;
}

.asareh-map-pin:hover span,
.asareh-map-pin.is-active span{
  background: rgba(33,26,21,.96) !important;
  color: #fff !important;
}

/* north and center */
.asareh-map-pin[data-dealer="tehran"] span{ left:18px !important; right:auto !important; bottom:50% !important; top:auto !important; transform:translateY(50%) !important; }
.asareh-map-pin[data-dealer="isfahan"] span{ left:18px !important; right:auto !important; bottom:50% !important; top:auto !important; transform:translateY(50%) !important; }
.asareh-map-pin[data-dealer="shahrekord"] span{ right:18px !important; left:auto !important; bottom:50% !important; top:auto !important; transform:translateY(50%) !important; }
.asareh-map-pin[data-dealer="mashhad"] span{ right:18px !important; left:auto !important; bottom:50% !important; top:auto !important; transform:translateY(50%) !important; }
.asareh-map-pin[data-dealer="zahedan"] span{ right:18px !important; left:auto !important; bottom:50% !important; top:auto !important; transform:translateY(50%) !important; }

/* southwest and south */
.asareh-map-pin[data-dealer="ahvaz"] span{ right:18px !important; left:auto !important; bottom:50% !important; top:auto !important; transform:translateY(50%) !important; }
.asareh-map-pin[data-dealer="bushehr"] span{ right:18px !important; left:auto !important; bottom:50% !important; top:auto !important; transform:translateY(50%) !important; }
.asareh-map-pin[data-dealer="shiraz"] span{ left:18px !important; right:auto !important; bottom:50% !important; top:auto !important; transform:translateY(50%) !important; }
.asareh-map-pin[data-dealer="kangan"] span{ right:18px !important; left:auto !important; top:50% !important; bottom:auto !important; transform:translateY(-50%) !important; }
.asareh-map-pin[data-dealer="asaluyeh"] span{ left:18px !important; right:auto !important; top:50% !important; bottom:auto !important; transform:translateY(-50%) !important; }
.asareh-map-pin[data-dealer="kish"] span{ right:18px !important; left:auto !important; top:50% !important; bottom:auto !important; transform:translateY(-50%) !important; }
.asareh-map-pin[data-dealer="qeshm"] span{ left:18px !important; right:auto !important; top:50% !important; bottom:auto !important; transform:translateY(-50%) !important; }
.asareh-map-pin[data-dealer="bandar"] span{ right:18px !important; left:auto !important; top:50% !important; bottom:auto !important; transform:translateY(-50%) !important; }

@media (max-width: 1180px){
  .asareh-map-pin{ --pin-size: 13px !important; }
  .asareh-map-pin span{ font-size: 11px !important; padding: 4px 8px !important; }
}

/* =========================================================
   ASAREH FINAL SAFE OVERRIDES V2 - CLEAN LOCK
   Scope:
   - index.html
   - products.html
   - internal pages typography
   هدف:
   1) فونت خوانا و یکدست برای پایین صفحه و صفحات داخلی
   2) سرعت بیشتر گواهینامه‌ها
   3) اصلاح نهایی بنر پایین ایندکس برای پر کردن کامل عرض
   4) حفظ اصلاحات قبلی بدون بهم‌ریختگی جدید
   ========================================================= */


/* =========================================================
   FINAL FONT FACE LOCK
   مسیر فایل CSS:
   assets/css/pages/asareh-tochal-placement.css

   مسیر فونت‌ها:
   assets/Fonts/
   ========================================================= */

@font-face {
  font-family: "AsarehPeydaFinal";
  src: url("../../Fonts/peyda/Peyda-Regular.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "AsarehPeydaFinal";
  src: url("../../Fonts/peyda/Peyda-Medium.ttf") format("truetype");
  font-weight: 500 700;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "AsarehPeydaFinal";
  src: url("../../Fonts/peyda/Peyda-Bold.ttf") format("truetype");
  font-weight: 800;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "AsarehPeydaFinal";
  src: url("../../Fonts/peyda/Peyda-ExtraBold.ttf") format("truetype");
  font-weight: 900 950;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "AsarehVazirFinal";
  src: url("../../Fonts/vazir/Vazir-Regular-FD.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "AsarehVazirFinal";
  src: url("../../Fonts/vazir/Vazir-Medium-FD.woff2") format("woff2");
  font-weight: 500 700;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "AsarehVazirFinal";
  src: url("../../Fonts/vazir/Vazir-Bold-FD.woff2") format("woff2");
  font-weight: 800 950;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "AsarehIranSansFinal";
  src: url("../../Fonts/IranSans/IRANSANSWEB.TTF") format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "AsarehIranSansFinal";
  src: url("../../Fonts/IranSans/IRANSANSWEB_MEDIUM.TTF") format("truetype");
  font-weight: 500 700;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "AsarehIranSansFinal";
  src: url("../../Fonts/IranSans/IRANSANSWEB_BOLD.TTF") format("truetype");
  font-weight: 800 950;
  font-style: normal;
  font-display: swap;
}


/* =========================================================
   GLOBAL TYPOGRAPHY FINAL LOCK
   مخصوصاً برای footer، bottom banner و صفحات داخلی
   ========================================================= */

html,
body,
button,
input,
textarea,
select {
  font-family:
    "AsarehPeydaFinal",
    "AsarehIranSansFinal",
    "AsarehVazirFinal",
    Tahoma,
    Arial,
    sans-serif !important;
  -webkit-font-smoothing: antialiased !important;
  -moz-osx-font-smoothing: grayscale !important;
}

body,
p,
li,
small,
span,
a,
strong,
label,
input,
textarea,
select,
button,
.kd-footer,
.kd-footer *,
.side-panel,
.side-panel *,
.inner-page,
.inner-page *,
.asareh-tochal-page,
.asareh-tochal-page *,
.asareh-products-page,
.asareh-products-page *,
.page-bottom-video-content,
.page-bottom-video-content *,
.asareh-home-product-content,
.asareh-home-product-content * {
  font-family:
    "AsarehVazirFinal",
    "AsarehPeydaFinal",
    "AsarehIranSansFinal",
    Tahoma,
    Arial,
    sans-serif !important;
}

h1,
h2,
h3,
h4,
h5,
h6,
.inner-hero-content h1,
.inner-hero-content h2,
.section-heading h2,
.gallery-rows-title,
.asareh-clients-title,
.asareh-certificates-title,
.asareh-blog-card h3,
.asareh-home-product-content h2,
.page-bottom-video-content h2,
.kd-footer-title {
  font-family:
    "AsarehPeydaFinal",
    "AsarehIranSansFinal",
    "AsarehVazirFinal",
    Tahoma,
    Arial,
    sans-serif !important;
  letter-spacing: -0.015em !important;
}

.primary-nav a,
.inner-menu a,
.asareh-header-cta,
.asareh-hero-actions a,
.asareh-tochal-card-content a,
.asareh-tochal-cta-card a,
.page-bottom-video-content a,
.asareh-home-product-content a,
.kd-footer a,
.asareh-panel-link {
  font-family:
    "AsarehVazirFinal",
    "AsarehPeydaFinal",
    "AsarehIranSansFinal",
    Tahoma,
    Arial,
    sans-serif !important;
  font-weight: 900 !important;
}


/* =========================================================
   INDEX | HERO TEXT FINAL POSITION
   متن Intro سمت راست پایین، سه‌خطی و خوانا
   ========================================================= */

.asareh-index-page .hero {
  position: relative !important;
}

.asareh-index-page .hero-overlay {
  background:
    radial-gradient(circle at 28% 52%, rgba(184, 32, 36, .14), transparent 30%),
    linear-gradient(90deg,
      rgba(0, 0, 0, .74) 0%,
      rgba(0, 0, 0, .58) 36%,
      rgba(0, 0, 0, .42) 66%,
      rgba(0, 0, 0, .34) 100%) !important;
}

.asareh-index-page .hero-content {
  position: absolute !important;
  inset: 0 !important;
  z-index: 3 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  padding: 0 !important;
  pointer-events: none !important;
}

.asareh-index-page .hero-text,
.asareh-index-page .asareh-hero-text {
  position: absolute !important;
  right: clamp(42px, 7vw, 118px) !important;
  left: auto !important;
  top: auto !important;
  bottom: clamp(64px, 10vh, 112px) !important;
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  color: #ffffff !important;
  text-align: right !important;
  direction: rtl !important;
  pointer-events: auto !important;
}

.asareh-index-page .asareh-hero-text h1 {
  display: block !important;
  margin: 0 0 6px !important;
  padding: 0 !important;
  font-family: "AsarehPeydaFinal", "AsarehIranSansFinal", Tahoma, Arial, sans-serif !important;
  font-size: clamp(30px, 3.05vw, 46px) !important;
  font-weight: 950 !important;
  line-height: 1.35 !important;
  color: #ffffff !important;
  white-space: nowrap !important;
  text-align: right !important;
  text-shadow:
    0 3px 12px rgba(0, 0, 0, .76),
    0 14px 36px rgba(0, 0, 0, .62) !important;
}

.asareh-index-page .asareh-hero-text span {
  display: block !important;
  margin: 0 0 6px !important;
  padding: 0 !important;
  font-family: "AsarehVazirFinal", "AsarehPeydaFinal", Tahoma, Arial, sans-serif !important;
  font-size: 15px !important;
  font-weight: 900 !important;
  line-height: 1.75 !important;
  color: #f3c85c !important;
  white-space: nowrap !important;
  text-align: right !important;
  text-shadow:
    0 2px 8px rgba(0, 0, 0, .72),
    0 10px 26px rgba(0, 0, 0, .52) !important;
}

.asareh-index-page .asareh-hero-text p {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  width: auto !important;
  max-width: none !important;
  font-family: "AsarehIranSansFinal", "AsarehPeydaFinal", Tahoma, Arial, sans-serif !important;
  font-size: 13.5px !important;
  font-weight: 600 !important;
  line-height: 1.9 !important;
  color: rgba(255, 255, 255, .94) !important;
  white-space: nowrap !important;
  text-align: right !important;
  text-shadow:
    0 2px 8px rgba(0, 0, 0, .74),
    0 12px 30px rgba(0, 0, 0, .58) !important;
}

.asareh-index-page .asareh-hero-actions {
  margin-top: 18px !important;
  justify-content: flex-start !important;
  pointer-events: auto !important;
}

.asareh-index-page .asareh-hero-social-links {
  display: none !important;
}


/* =========================================================
   INDEX | TEAM / CEO / BLOG IMAGE ACTION
   حالت عادی رنگی، روی Hover سیاه‌وسفید
   ========================================================= */

.asareh-index-page .about-section .asareh-team-visual,
.asareh-index-page .asareh-ceo-message-image,
.asareh-index-page .asareh-blog-section .asareh-blog-image {
  overflow: hidden !important;
}

.asareh-index-page .about-section .asareh-team-visual {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.asareh-index-page .about-section .asareh-team-visual::before,
.asareh-index-page .about-section .asareh-team-visual::after {
  display: none !important;
  content: none !important;
}

.asareh-index-page .about-section .asareh-team-visual img {
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  object-fit: contain !important;
  object-position: center center !important;
  display: block !important;
  filter: grayscale(0) !important;
  transform: none !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  transition:
    filter .45s ease,
    transform .65s cubic-bezier(.16, 1, .3, 1) !important;
}

.asareh-index-page .about-section .asareh-team-visual:hover img {
  filter: grayscale(100%) !important;
  transform: scale(1.015) !important;
}

.asareh-index-page .about-section .asareh-team-caption {
  display: none !important;
}

.asareh-index-page .asareh-ceo-message-image img {
  filter: grayscale(0) !important;
  transform: none !important;
  transition:
    filter .45s ease,
    transform .65s cubic-bezier(.16, 1, .3, 1) !important;
}

.asareh-index-page .asareh-ceo-message-image:hover img {
  filter: grayscale(100%) !important;
  transform: scale(1.015) !important;
}

.asareh-index-page .asareh-blog-section .asareh-blog-image img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  filter: grayscale(0) !important;
  transform: none !important;
  transition:
    filter .45s ease,
    transform .65s cubic-bezier(.16, 1, .3, 1) !important;
}

.asareh-index-page .asareh-blog-section .asareh-blog-card:hover .asareh-blog-image img,
.asareh-index-page .asareh-blog-section .asareh-blog-image:hover img {
  filter: grayscale(100%) !important;
  transform: scale(1.015) !important;
}


/* =========================================================
   INDEX | CLIENT LOGOS FINAL CLEAN LOCK
   ========================================================= */

.asareh-index-page .asareh-clients-section {
  position: relative !important;
  width: 100% !important;
  padding: 34px 0 36px !important;
  margin: 0 !important;
  overflow: hidden !important;
  color: #18130f !important;
  background:
    radial-gradient(circle at 15% 30%, rgba(184, 32, 36, .025), transparent 28%),
    linear-gradient(180deg, #ffffff 0%, #fbf8f0 100%) !important;
  border: 0 !important;
  box-shadow: none !important;
}

.asareh-index-page .asareh-clients-section::before,
.asareh-index-page .asareh-clients-section::after {
  display: none !important;
  content: none !important;
}

.asareh-index-page .asareh-clients-head {
  display: block !important;
  width: min(1320px, calc(100% - 120px)) !important;
  margin: 0 auto 16px !important;
  padding: 0 !important;
  text-align: right !important;
}

.asareh-index-page .asareh-clients-head .section-kicker {
  display: block !important;
  margin: 0 0 2px !important;
  padding: 0 !important;
  font-size: 10px !important;
  font-weight: 900 !important;
  line-height: 1.8 !important;
  letter-spacing: .13em !important;
  color: rgba(184, 32, 36, .55) !important;
  text-align: right !important;
}

.asareh-index-page .asareh-clients-title {
  margin: 0 !important;
  padding: 0 !important;
  font-size: 20px !important;
  font-weight: 950 !important;
  line-height: 1.65 !important;
  color: #18130f !important;
  text-align: right !important;
}

.asareh-index-page .asareh-clients-title span {
  color: #b82024 !important;
}

.asareh-index-page .asareh-clients-viewport {
  position: relative !important;
  width: 100% !important;
  overflow: hidden !important;
  padding: 6px 0 10px !important;
  margin: 0 !important;
}

.asareh-index-page .asareh-clients-track {
  display: flex !important;
  align-items: center !important;
  flex-wrap: nowrap !important;
  gap: 16px !important;
  width: max-content !important;
  min-width: max-content !important;
  margin: 0 !important;
  padding: 0 !important;
  will-change: transform !important;
  animation: asarehClientsMoveFinal 40s linear infinite !important;
}

.asareh-index-page .asareh-clients-viewport:hover .asareh-clients-track,
.asareh-index-page .asareh-clients-section:hover .asareh-clients-track {
  animation-play-state: paused !important;
}

.asareh-index-page .asareh-client-logo {
  width: 146px !important;
  height: 92px !important;
  flex: 0 0 146px !important;
  margin: 0 !important;
  padding: 13px 18px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible !important;
  filter: grayscale(100%) !important;
  opacity: .72 !important;
  transform-origin: center center !important;
  transition:
    filter .28s ease,
    opacity .28s ease,
    transform .28s cubic-bezier(.16, 1, .3, 1) !important;
}

.asareh-index-page .asareh-client-logo img {
  display: block !important;
  max-width: 100% !important;
  max-height: 64px !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
  object-position: center center !important;
  margin: 0 auto !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  transition:
    transform .28s cubic-bezier(.16, 1, .3, 1),
    filter .28s ease !important;
}

.asareh-index-page .asareh-client-logo:hover {
  filter: grayscale(0) !important;
  opacity: 1 !important;
  transform: translateY(-8px) scale(1.08) !important;
  z-index: 5 !important;
}

.asareh-index-page .asareh-client-logo:hover img {
  transform: scale(1.04) !important;
}

@keyframes asarehClientsMoveFinal {
  0% {
    transform: translateX(0);
  }

  100% {
    transform: translateX(50%);
  }
}


/* =========================================================
   INDEX | CERTIFICATES FINAL CLEAN LOCK
   سرعت بیشتر، مثل لوگوها، بدون قاب سنگین
   ========================================================= */

.asareh-index-page .asareh-certificates-section {
  position: relative !important;
  width: 100% !important;
  padding: 44px 0 46px !important;
  margin: 0 !important;
  overflow: hidden !important;
  color: #18130f !important;
  background:
    radial-gradient(circle at 85% 25%, rgba(184, 32, 36, .025), transparent 28%),
    linear-gradient(180deg, #fbf8f0 0%, #ffffff 100%) !important;
  border: 0 !important;
  box-shadow: none !important;
}

.asareh-index-page .asareh-certificates-head {
  display: block !important;
  width: min(1320px, calc(100% - 120px)) !important;
  margin: 0 auto 18px !important;
  padding: 0 !important;
  text-align: right !important;
}

.asareh-index-page .asareh-certificates-head .section-kicker {
  display: block !important;
  margin: 0 0 2px !important;
  padding: 0 !important;
  font-size: 10px !important;
  font-weight: 900 !important;
  line-height: 1.8 !important;
  letter-spacing: .13em !important;
  color: rgba(184, 32, 36, .58) !important;
  text-align: right !important;
}

.asareh-index-page .asareh-certificates-title {
  margin: 0 !important;
  padding: 0 !important;
  font-size: 22px !important;
  font-weight: 950 !important;
  line-height: 1.65 !important;
  color: #18130f !important;
  text-align: right !important;
}

.asareh-index-page .asareh-certificates-title span {
  color: #b82024 !important;
}

.asareh-index-page .asareh-certificates-head p {
  max-width: 620px !important;
  margin: 4px 0 0 !important;
  padding: 0 !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  line-height: 2 !important;
  color: rgba(24, 19, 15, .64) !important;
  text-align: right !important;
}

.asareh-index-page .asareh-certificates-viewport {
  position: relative !important;
  width: 100% !important;
  overflow: hidden !important;
  padding: 10px 0 16px !important;
  margin: 0 !important;
}

.asareh-index-page .asareh-certificates-track {
  display: flex !important;
  align-items: center !important;
  flex-wrap: nowrap !important;
  gap: 18px !important;
  width: max-content !important;
  min-width: max-content !important;
  margin: 0 !important;
  padding: 0 !important;
  will-change: transform !important;
  animation: asarehCertificatesMoveFinal 42s linear infinite !important;
}

.asareh-index-page .asareh-certificates-viewport:hover .asareh-certificates-track,
.asareh-index-page .asareh-certificates-section:hover .asareh-certificates-track {
  animation-play-state: paused !important;
}

.asareh-index-page .asareh-certificate-card {
  width: 230px !important;
  height: 188px !important;
  flex: 0 0 230px !important;
  margin: 0 !important;
  padding: 12px 12px 10px !important;
  border: 0 !important;
  border-radius: 0 !important;
  outline: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  cursor: pointer !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  overflow: visible !important;
  filter: grayscale(100%) !important;
  opacity: .74 !important;
  transition:
    filter .28s ease,
    opacity .28s ease,
    transform .28s cubic-bezier(.16, 1, .3, 1) !important;
}

.asareh-index-page .asareh-certificate-image {
  width: 100% !important;
  height: 132px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: visible !important;
}

.asareh-index-page .asareh-certificate-image img {
  display: block !important;
  max-width: 100% !important;
  max-height: 132px !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
  object-position: center center !important;
  margin: 0 auto !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  transition: transform .28s cubic-bezier(.16, 1, .3, 1) !important;
}

.asareh-index-page .asareh-certificate-card strong {
  display: block !important;
  margin: 0 !important;
  font-size: 11px !important;
  font-weight: 900 !important;
  line-height: 1.6 !important;
  color: rgba(24, 19, 15, .82) !important;
  text-align: center !important;
}

.asareh-index-page .asareh-certificate-card small {
  display: block !important;
  margin: 0 !important;
  font-size: 9.5px !important;
  font-weight: 600 !important;
  line-height: 1.6 !important;
  color: rgba(24, 19, 15, .52) !important;
  text-align: center !important;
}

.asareh-index-page .asareh-certificate-card:hover {
  filter: grayscale(0) !important;
  opacity: 1 !important;
  transform: translateY(-8px) scale(1.06) !important;
  z-index: 5 !important;
}

.asareh-index-page .asareh-certificate-card:hover img {
  transform: scale(1.035) !important;
}

@keyframes asarehCertificatesMoveFinal {
  0% {
    transform: translateX(0);
  }

  100% {
    transform: translateX(50%);
  }
}


/* =========================================================
   INDEX | BOTTOM PRODUCT BANNER FINAL FULL-WIDTH LOCK
   تصویر پایین بالای فوتر باید کل عرض را پر کند
   ========================================================= */

.asareh-index-page .asareh-home-product-banner {
  position: relative !important;
  display: block !important;
  width: 100vw !important;
  max-width: 100vw !important;
  min-height: clamp(520px, 52vw, 760px) !important;
  height: clamp(520px, 52vw, 760px) !important;
  max-height: none !important;
  margin-right: calc(50% - 50vw) !important;
  margin-left: calc(50% - 50vw) !important;
  padding: 0 !important;
  overflow: hidden !important;
  background: #11100e !important;
  isolation: isolate !important;
}

.asareh-index-page .asareh-home-product-banner>img,
.asareh-index-page .asareh-home-product-banner img[src*="product-banner"] {
  position: absolute !important;
  inset: 0 !important;
  z-index: 0 !important;
  display: block !important;
  width: 100% !important;
  min-width: 100% !important;
  max-width: none !important;
  height: 100% !important;
  min-height: 100% !important;
  max-height: none !important;
  object-fit: cover !important;
  object-position: center center !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  transform: scale(1.24) !important;
  transform-origin: center center !important;
  filter: grayscale(20%) contrast(1.05) brightness(.76) !important;
}

.asareh-index-page .asareh-home-product-banner::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  pointer-events: none !important;
  background:
    linear-gradient(to top,
      rgba(0, 0, 0, .60),
      rgba(0, 0, 0, .10) 55%,
      rgba(255, 255, 255, .04)) !important;
}

.asareh-index-page .asareh-home-product-content {
  position: absolute !important;
  z-index: 2 !important;
  right: 8vw !important;
  left: auto !important;
  top: 50% !important;
  width: min(520px, calc(100% - 120px)) !important;
  max-width: 520px !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #fff !important;
  text-align: right !important;
  transform: translateY(-50%) !important;
}

.asareh-index-page .asareh-home-product-content h2 {
  max-width: 620px !important;
  margin: 0 0 20px !important;
  font-size: 34px !important;
  line-height: 1.6 !important;
  font-weight: 900 !important;
  color: #fff !important;
  text-shadow: 0 14px 42px rgba(0, 0, 0, .55) !important;
}

.asareh-index-page .asareh-home-product-content a {
  min-height: 46px !important;
  padding: 0 24px !important;
  border-radius: 999px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #111 !important;
  background: #d9a842 !important;
  text-decoration: none !important;
  font-weight: 950 !important;
  font-size: 12.5px !important;
}


/* =========================================================
   PRODUCTS | BIG PICTURE SECTION
   فقط برای products.html
   ========================================================= */

.asareh-products-page .asareh-products-bigpic-section {
  padding: 54px 0 42px !important;
  margin: 0 !important;
  background:
    radial-gradient(circle at 80% 20%, rgba(184, 32, 36, .045), transparent 30%),
    linear-gradient(180deg, #ffffff 0%, #fbf8f0 100%) !important;
  border: 0 !important;
  box-shadow: none !important;
  overflow: hidden !important;
}

.asareh-products-page .asareh-products-bigpic-wrap {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
}

.asareh-products-page .asareh-products-bigpic-image {
  display: block !important;
  width: 100% !important;
  max-width: 1180px !important;
  height: auto !important;
  max-height: none !important;
  object-fit: contain !important;
  object-position: center center !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}


/* =========================================================
   INTERNAL PAGES | BOTTOM VIDEO TEXT READABILITY
   ========================================================= */

.page-bottom-video-content {
  font-family: "AsarehPeydaFinal", "AsarehIranSansFinal", "AsarehVazirFinal", Tahoma, Arial, sans-serif !important;
}

.page-bottom-video-content p {
  font-family: "AsarehVazirFinal", "AsarehPeydaFinal", Tahoma, Arial, sans-serif !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: .14em !important;
  color: #f3c85c !important;
}

.page-bottom-video-content h2 {
  font-family: "AsarehPeydaFinal", "AsarehIranSansFinal", Tahoma, Arial, sans-serif !important;
  font-size: clamp(28px, 3.2vw, 46px) !important;
  font-weight: 950 !important;
  line-height: 1.55 !important;
  color: #ffffff !important;
  text-shadow: 0 14px 42px rgba(0, 0, 0, .58) !important;
}

.page-bottom-video-content a {
  font-family: "AsarehVazirFinal", "AsarehPeydaFinal", Tahoma, Arial, sans-serif !important;
  font-size: 12.5px !important;
  font-weight: 950 !important;
}


/* =========================================================
   MOBILE SAFE
   ========================================================= */

@media (max-width: 768px) {

  .asareh-index-page .hero-text,
  .asareh-index-page .asareh-hero-text {
    right: 22px !important;
    bottom: 48px !important;
    max-width: calc(100% - 44px) !important;
  }

  .asareh-index-page .asareh-hero-text h1,
  .asareh-index-page .asareh-hero-text span,
  .asareh-index-page .asareh-hero-text p {
    white-space: normal !important;
  }

  .asareh-index-page .asareh-hero-text h1 {
    font-size: 27px !important;
  }

  .asareh-index-page .asareh-hero-text span {
    font-size: 13px !important;
  }

  .asareh-index-page .asareh-hero-text p {
    font-size: 12.5px !important;
  }

  .asareh-index-page .asareh-clients-head,
  .asareh-index-page .asareh-certificates-head {
    width: calc(100% - 40px) !important;
  }

  .asareh-index-page .asareh-clients-track {
    animation-duration: 34s !important;
  }

  .asareh-index-page .asareh-client-logo {
    width: 122px !important;
    height: 78px !important;
    flex-basis: 122px !important;
    padding: 11px 14px !important;
  }

  .asareh-index-page .asareh-client-logo img {
    max-height: 52px !important;
  }

  .asareh-index-page .asareh-certificates-track {
    gap: 14px !important;
    animation-duration: 34s !important;
  }

  .asareh-index-page .asareh-certificate-card {
    width: 178px !important;
    height: 152px !important;
    flex-basis: 178px !important;
    padding: 10px !important;
  }

  .asareh-index-page .asareh-certificate-image {
    height: 102px !important;
  }

  .asareh-index-page .asareh-certificate-image img {
    max-height: 102px !important;
  }

  .asareh-index-page .asareh-certificate-card strong {
    font-size: 10px !important;
  }

  .asareh-index-page .asareh-certificate-card small {
    font-size: 8.5px !important;
  }

  .asareh-index-page .asareh-home-product-banner {
    min-height: 420px !important;
    height: 420px !important;
  }

  .asareh-index-page .asareh-home-product-banner>img,
  .asareh-index-page .asareh-home-product-banner img[src*="product-banner"] {
    object-fit: cover !important;
    object-position: center center !important;
    transform: scale(1.30) !important;
  }

  .asareh-index-page .asareh-home-product-content {
    right: 22px !important;
    left: 22px !important;
    width: auto !important;
    max-width: none !important;
    text-align: center !important;
  }

  .asareh-index-page .asareh-home-product-content h2 {
    font-size: 25px !important;
  }

  .asareh-index-page .about-section .asareh-team-visual:hover img,
  .asareh-index-page .asareh-ceo-message-image:hover img,
  .asareh-index-page .asareh-blog-section .asareh-blog-card:hover .asareh-blog-image img,
  .asareh-index-page .asareh-blog-section .asareh-blog-image:hover img {
    transform: none !important;
  }

  .asareh-products-page .asareh-products-bigpic-section {
    padding: 34px 0 28px !important;
  }

  .asareh-products-page .asareh-products-bigpic-wrap {
    width: calc(100% - 28px) !important;
  }

  .asareh-products-page .asareh-products-bigpic-image {
    max-width: 100% !important;
  }
}

/* =========================================================
   Products Page Header - Soft Black Overlay
   هدف: گرفتن رنگ‌های خیلی جیغ هدر بدون تاریک شدن زیاد
   ========================================================= */

.asareh-products-page .inner-hero-header.asareh-inner-hero {
  position: relative !important;
  isolation: isolate !important;
  background: #120d0b !important;
}

.asareh-products-page .inner-hero-header .inner-hero-bg {
  filter:
    saturate(.78) contrast(.94) brightness(.92) !important;
}

.asareh-products-page .inner-hero-header .inner-hero-overlay {
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  pointer-events: none !important;

  background:
    linear-gradient(180deg,
      rgba(0, 0, 0, .34) 0%,
      rgba(0, 0, 0, .22) 42%,
      rgba(0, 0, 0, .30) 100%),
    radial-gradient(circle at 50% 40%,
      rgba(0, 0, 0, .08) 0%,
      rgba(0, 0, 0, .24) 68%,
      rgba(0, 0, 0, .34) 100%) !important;

  opacity: .82 !important;
}

.asareh-products-page .inner-hero-header .inner-top-nav,
.asareh-products-page .inner-hero-header .inner-hero-content {
  position: relative !important;
  z-index: 2 !important;
}

/* =========================================================
   Products Page - Program Section Background Fix
   سکشن: مسیر انتخاب محصول
   هدف: اضافه شدن تصویر هدر به پس‌زمینه سکشن و نمایش درست هنگام اسکرول
   مسیر تصویر از داخل همین CSS:
   assets/css/pages/asareh-tochal-placement.css
   به:
   assets/images/inner/ProductHero.webp
   ========================================================= */

.asareh-products-page .asareh-tochal-program {
  position: relative !important;
  isolation: isolate !important;
  overflow: hidden !important;

  min-height: 520px !important;
  padding: 96px 0 !important;

  background:
    linear-gradient(135deg,
      rgba(12, 9, 7, .78) 0%,
      rgba(24, 17, 13, .64) 44%,
      rgba(70, 46, 20, .48) 100%),
    url("../../images/inner/ProductHero.webp") center center / cover no-repeat !important;

  background-attachment: fixed !important;
  color: #ffffff !important;
}

.asareh-products-page .asareh-tochal-program::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: -2 !important;

  background:
    url("../../images/inner/ProductHero.webp") center center / cover no-repeat !important;

  filter:
    saturate(.78) contrast(.92) brightness(.74) !important;

  transform: scale(1.04) !important;
}

.asareh-products-page .asareh-tochal-program::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: -1 !important;
  pointer-events: none !important;

  background:
    radial-gradient(circle at 18% 30%, rgba(217, 168, 66, .18), transparent 30%),
    linear-gradient(90deg,
      rgba(0, 0, 0, .72) 0%,
      rgba(0, 0, 0, .52) 48%,
      rgba(0, 0, 0, .36) 100%) !important;
}

.asareh-products-page .asareh-tochal-program-grid {
  position: relative !important;
  z-index: 2 !important;
  align-items: center !important;
}

.asareh-products-page .asareh-tochal-program-text h2 {
  color: #ffffff !important;
  text-shadow: 0 14px 38px rgba(0, 0, 0, .52) !important;
}

.asareh-products-page .asareh-tochal-program-text p {
  color: rgba(255, 255, 255, .88) !important;
  text-shadow: 0 10px 30px rgba(0, 0, 0, .42) !important;
}

.asareh-products-page .asareh-tochal-program-list div {
  background: rgba(255, 255, 255, .12) !important;
  border: 1px solid rgba(255, 255, 255, .18) !important;
  color: #ffffff !important;
  box-shadow: none !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
}

.asareh-products-page .asareh-tochal-program-list div i {
  color: #f3c85c !important;
}

.asareh-products-page .asareh-tochal-program-list div span {
  color: #ffffff !important;
}


/* Mobile Safe */

@media (max-width: 768px) {
  .asareh-products-page .asareh-tochal-program {
    min-height: auto !important;
    padding: 68px 0 !important;
    background-attachment: scroll !important;
  }

  .asareh-products-page .asareh-tochal-program::before {
    background-position: center center !important;
    transform: scale(1.08) !important;
  }

  .asareh-products-page .asareh-tochal-program::after {
    background:
      linear-gradient(180deg,
        rgba(0, 0, 0, .76) 0%,
        rgba(0, 0, 0, .58) 52%,
        rgba(0, 0, 0, .68) 100%) !important;
  }
}
/* =========================================================
   Index Sections Spacing Tune
   هدف: نزدیک‌تر شدن سکشن‌های صفحه ایندکس
   مخصوصاً Hero و About
   ========================================================= */

.asareh-index-page .hero {
  min-height: 88vh !important;
  height: 88vh !important;
}

.asareh-index-page .about-section {
  padding-top: 56px !important;
  padding-bottom: 64px !important;
  margin-top: 0 !important;
}

.asareh-index-page .about-wrap {
  gap: 48px !important;
}

.asareh-index-page .asareh-clients-section {
  padding-top: 26px !important;
  padding-bottom: 28px !important;
}

.asareh-index-page .asareh-tochal-gallery {
  padding-top: 64px !important;
  padding-bottom: 70px !important;
}

.asareh-index-page .asareh-ceo-message-section {
  padding-top: 70px !important;
  padding-bottom: 70px !important;
}

.asareh-index-page .asareh-certificates-section {
  padding-top: 34px !important;
  padding-bottom: 38px !important;
}

.asareh-index-page .asareh-blog-section {
  padding-top: 64px !important;
  padding-bottom: 64px !important;
}


/* Mobile Safe */

@media (max-width: 768px) {
  .asareh-index-page .hero {
    min-height: 82vh !important;
    height: 82vh !important;
  }

  .asareh-index-page .about-section {
    padding-top: 42px !important;
    padding-bottom: 48px !important;
  }

  .asareh-index-page .about-wrap {
    gap: 34px !important;
  }

  .asareh-index-page .asareh-tochal-gallery,
  .asareh-index-page .asareh-ceo-message-section,
  .asareh-index-page .asareh-blog-section {
    padding-top: 52px !important;
    padding-bottom: 52px !important;
  }
}

/* =========================================================
   Page Bottom Image - Full Width / No Crop / No Black Sides
   تصویر 05.webp کل عرض صفحه را بگیرد، بدون کراپ و بدون حاشیه مشکی
   ========================================================= */

.page-bottom-video {
  position: relative !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  background: #ffffff !important;
}

.page-bottom-video img.page-bottom-video-media {
  position: relative !important;
  inset: auto !important;

  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;

  display: block !important;

  object-fit: contain !important;
  object-position: center center !important;

  background: #ffffff !important;
}

.page-bottom-video .page-bottom-video-overlay {
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  pointer-events: none !important;
}

.page-bottom-video .page-bottom-video-content {
  position: absolute !important;
  z-index: 2 !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) !important;
}

/* =========================================================
   Customers Page - Bridge Image + Client Logos Clean Fix
   Scope: customers.html only
   ========================================================= */

/* ---------- Bridge image instead of old stats card ---------- */

.asareh-customers-page .asareh-customer-bridge-visual {
  position: relative !important;
  width: 100% !important;
  min-height: 360px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;

  border-radius: 0 !important;
  background: #f6f3ee !important;
  border: 1px solid rgba(24, 19, 15, .08) !important;
  box-shadow: 0 28px 70px rgba(24, 19, 15, .10) !important;
}

.asareh-customers-page .asareh-customer-bridge-visual img {
  width: 100% !important;
  height: 100% !important;
  min-height: 360px !important;

  display: block !important;
  object-fit: cover !important;
  object-position: center center !important;

  filter: saturate(.92) contrast(.96) brightness(.98) !important;
  transform: scale(1.01) !important;
}


/* ---------- Customers logos section lock ---------- */

.asareh-customers-page .asareh-clients-section {
  position: relative !important;
  isolation: isolate !important;

  width: 100% !important;
  padding: 70px 0 74px !important;
  margin: 0 !important;
  overflow: hidden !important;

  background:
    radial-gradient(circle at 15% 15%, rgba(184, 32, 36, .035), transparent 34%),
    radial-gradient(circle at 82% 70%, rgba(217, 168, 66, .055), transparent 32%),
    #ffffff !important;
}

.asareh-customers-page .asareh-clients-head {
  position: relative !important;
  z-index: 2 !important;

  display: flex !important;
  align-items: flex-end !important;
  justify-content: space-between !important;
  gap: 28px !important;

  margin-bottom: 30px !important;
}

.asareh-customers-page .asareh-clients-title {
  margin: 0 !important;

  font-size: clamp(25px, 2.4vw, 38px) !important;
  font-weight: 950 !important;
  line-height: 1.5 !important;
  color: #18130f !important;
}

.asareh-customers-page .asareh-clients-title span {
  color: #b82024 !important;
}

.asareh-customers-page .asareh-clients-viewport {
  position: relative !important;
  z-index: 2 !important;

  width: 100% !important;
  overflow: hidden !important;

  padding: 18px 0 !important;
  margin: 0 !important;

  direction: ltr !important;
}

.asareh-customers-page .asareh-clients-viewport::before,
.asareh-customers-page .asareh-clients-viewport::after {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  bottom: 0 !important;
  z-index: 4 !important;

  width: min(120px, 16vw) !important;
  pointer-events: none !important;
}

.asareh-customers-page .asareh-clients-viewport::before {
  left: 0 !important;
  background: linear-gradient(90deg, #ffffff, rgba(255, 255, 255, 0)) !important;
}

.asareh-customers-page .asareh-clients-viewport::after {
  right: 0 !important;
  background: linear-gradient(270deg, #ffffff, rgba(255, 255, 255, 0)) !important;
}

.asareh-customers-page .asareh-clients-track {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 22px !important;

  width: max-content !important;
  min-width: max-content !important;

  margin: 0 !important;
  padding: 0 22px !important;

  list-style: none !important;

  animation: asarehCustomersLogoFlow 58s linear infinite !important;
  will-change: transform !important;
}

.asareh-customers-page .asareh-clients-track:hover {
  animation-play-state: paused !important;
}

.asareh-customers-page .asareh-client-logo {
  flex: 0 0 auto !important;

  width: 154px !important;
  height: 94px !important;

  display: grid !important;
  place-items: center !important;

  margin: 0 !important;
  padding: 18px 20px !important;

  overflow: hidden !important;

  border-radius: 0 !important;
  background: rgba(255, 255, 255, .94) !important;
  border: 1px solid rgba(24, 19, 15, .075) !important;
  box-shadow:
    0 18px 42px rgba(24, 19, 15, .055),
    inset 0 1px 0 rgba(255, 255, 255, .88) !important;

  color: transparent !important;
  text-indent: 0 !important;

  transition:
    transform .35s ease,
    border-color .35s ease,
    box-shadow .35s ease,
    background .35s ease !important;
}

.asareh-customers-page .asareh-client-logo:hover {
  transform: translateY(-4px) !important;
  background: #ffffff !important;
  border-color: rgba(184, 32, 36, .18) !important;
  box-shadow:
    0 22px 54px rgba(24, 19, 15, .09),
    inset 0 1px 0 rgba(255, 255, 255, .95) !important;
}

.asareh-customers-page .asareh-client-logo img {
  width: auto !important;
  height: auto !important;

  max-width: 100% !important;
  max-height: 58px !important;

  display: block !important;
  object-fit: contain !important;
  object-position: center center !important;

  margin: 0 !important;
  padding: 0 !important;

  border: 0 !important;
  outline: 0 !important;
  background: transparent !important;
  box-shadow: none !important;

  opacity: .76 !important;
  filter: grayscale(1) saturate(.55) contrast(.96) !important;

  transition:
    opacity .35s ease,
    filter .35s ease,
    transform .35s ease !important;
}

.asareh-customers-page .asareh-client-logo:hover img {
  opacity: 1 !important;
  filter: grayscale(0) saturate(1) contrast(1) !important;
  transform: scale(1.035) !important;
}

@keyframes asarehCustomersLogoFlow {
  0% {
    transform: translate3d(0, 0, 0);
  }

  100% {
    transform: translate3d(-50%, 0, 0);
  }
}


/* ---------- Mobile safe ---------- */

@media (max-width: 768px) {
  .asareh-customers-page .asareh-customer-bridge-visual {
    min-height: 260px !important;
  }

  .asareh-customers-page .asareh-customer-bridge-visual img {
    min-height: 260px !important;
  }

  .asareh-customers-page .asareh-clients-section {
    padding: 52px 0 58px !important;
  }

  .asareh-customers-page .asareh-clients-head {
    display: block !important;
    margin-bottom: 22px !important;
  }

  .asareh-customers-page .asareh-client-logo {
    width: 128px !important;
    height: 82px !important;
    padding: 15px 16px !important;
  }

  .asareh-customers-page .asareh-client-logo img {
    max-height: 48px !important;
  }

  .asareh-customers-page .asareh-clients-track {
    gap: 16px !important;
    animation-duration: 44s !important;
  }
}

/* =========================================================
   Contact Page - KianDezh Inspired Clean Flow
   Scope: contact.html only
   No frames / no heavy borders / no boxed template feeling
   ========================================================= */

.asareh-contact-page {
  background: #ffffff !important;
}

.asareh-contact-page .asareh-contact-hero {
  min-height: 78vh !important;
  overflow: hidden !important;
}

.asareh-contact-page .asareh-contact-hero .inner-hero-bg {
  background-size: cover !important;
  background-position: center 42% !important;
  filter: saturate(.88) contrast(.96) brightness(.82) !important;
  transform: scale(1.012) !important;
}

.asareh-contact-page .asareh-contact-hero .inner-hero-overlay {
  background:
    linear-gradient(90deg, rgba(0, 0, 0, .72) 0%, rgba(0, 0, 0, .42) 46%, rgba(0, 0, 0, .22) 100%),
    linear-gradient(180deg, rgba(0, 0, 0, .20) 0%, rgba(0, 0, 0, .30) 100%) !important;
}

.asareh-contact-page .asareh-contact-hero-content {
  width: min(820px, 86vw) !important;
  text-align: right !important;
  transform: translateY(18px) !important;
}

.asareh-contact-page .asareh-contact-hero-kicker {
  margin: 0 0 12px !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: .18em !important;
  color: rgba(255, 255, 255, .72) !important;
}

.asareh-contact-page .asareh-contact-hero-content h1 {
  max-width: 760px !important;
  margin: 0 0 16px !important;
  font-size: clamp(36px, 5vw, 76px) !important;
  font-weight: 950 !important;
  line-height: 1.28 !important;
  letter-spacing: -0.055em !important;
  color: #ffffff !important;
}

.asareh-contact-page .asareh-contact-hero-content p {
  max-width: 600px !important;
  margin: 0 !important;
  font-size: clamp(14px, 1.45vw, 18px) !important;
  font-weight: 700 !important;
  line-height: 2.05 !important;
  color: rgba(255, 255, 255, .82) !important;
}


/* ---------- Opening ---------- */

.asareh-contact-page .asareh-contact-opening {
  padding: 96px 0 74px !important;
  background:
    radial-gradient(circle at 16% 22%, rgba(184, 32, 36, .045), transparent 32%),
    radial-gradient(circle at 88% 80%, rgba(217, 168, 66, .07), transparent 30%),
    #ffffff !important;
}

.asareh-contact-page .asareh-contact-opening-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1.2fr) minmax(280px, .8fr) !important;
  gap: clamp(44px, 6vw, 96px) !important;
  align-items: start !important;
}

.asareh-contact-page .asareh-contact-opening-copy h2,
.asareh-contact-page .asareh-contact-form-copy h2,
.asareh-contact-page .asareh-contact-location-copy h2 {
  margin: 0 0 18px !important;
  font-size: clamp(28px, 3.5vw, 50px) !important;
  font-weight: 950 !important;
  line-height: 1.42 !important;
  letter-spacing: -0.045em !important;
  color: #18130f !important;
}

.asareh-contact-page .asareh-contact-opening-copy p,
.asareh-contact-page .asareh-contact-form-copy p,
.asareh-contact-page .asareh-contact-location-copy p,
.asareh-contact-page .asareh-contact-location-text p {
  margin: 0 0 14px !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  line-height: 2.25 !important;
  color: rgba(24, 19, 15, .68) !important;
}

.asareh-contact-page .asareh-contact-direct {
  display: grid !important;
  gap: 18px !important;
  padding-top: 8px !important;
}

.asareh-contact-page .asareh-contact-direct a {
  display: grid !important;
  grid-template-columns: 42px 1fr !important;
  grid-template-areas:
    "icon label"
    "icon value" !important;
  column-gap: 16px !important;
  align-items: center !important;

  padding: 6px 0 !important;
  text-decoration: none !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.asareh-contact-page .asareh-contact-direct i {
  grid-area: icon !important;
  width: 42px !important;
  height: 42px !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 50% !important;
  background: rgba(184, 32, 36, .07) !important;
  color: #b82024 !important;
  font-size: 18px !important;
}

.asareh-contact-page .asareh-contact-direct span {
  grid-area: label !important;
  font-size: 12px !important;
  font-weight: 850 !important;
  color: rgba(24, 19, 15, .48) !important;
}

.asareh-contact-page .asareh-contact-direct strong {
  grid-area: value !important;
  font-size: 18px !important;
  font-weight: 950 !important;
  color: #18130f !important;
}


/* ---------- Flow ---------- */

.asareh-contact-page .asareh-contact-flow {
  padding: 28px 0 84px !important;
  background: #ffffff !important;
}

.asareh-contact-page .asareh-contact-flow-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: clamp(24px, 3vw, 48px) !important;
}

.asareh-contact-page .asareh-contact-flow article {
  position: relative !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.asareh-contact-page .asareh-contact-flow article span {
  display: block !important;
  margin-bottom: 16px !important;
  font-size: 13px !important;
  font-weight: 950 !important;
  letter-spacing: .16em !important;
  color: #b82024 !important;
}

.asareh-contact-page .asareh-contact-flow article h3 {
  margin: 0 0 12px !important;
  font-size: 20px !important;
  font-weight: 950 !important;
  line-height: 1.55 !important;
  color: #18130f !important;
}

.asareh-contact-page .asareh-contact-flow article p {
  margin: 0 !important;
  font-size: 13.5px !important;
  font-weight: 600 !important;
  line-height: 2.15 !important;
  color: rgba(24, 19, 15, .60) !important;
}


/* ---------- Form ---------- */

.asareh-contact-page .asareh-contact-form-section {
  padding: 94px 0 !important;
  background:
    linear-gradient(135deg, #f8f5ef 0%, #ffffff 58%, #f7f3ea 100%) !important;
}

.asareh-contact-page .asareh-contact-form-grid {
  display: grid !important;
  grid-template-columns: minmax(280px, .72fr) minmax(0, 1.28fr) !important;
  gap: clamp(42px, 6vw, 90px) !important;
  align-items: start !important;
}

.asareh-contact-page .asareh-contact-note {
  margin-top: 36px !important;
  display: grid !important;
  gap: 8px !important;
}

.asareh-contact-page .asareh-contact-note strong {
  font-size: 13px !important;
  font-weight: 950 !important;
  color: #b82024 !important;
}

.asareh-contact-page .asareh-contact-note span {
  font-size: 14px !important;
  font-weight: 750 !important;
  line-height: 2 !important;
  color: rgba(24, 19, 15, .66) !important;
}

.asareh-contact-page .asareh-contact-form {
  display: grid !important;
  gap: 18px !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.asareh-contact-page .asareh-contact-form-row {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 18px !important;
}

.asareh-contact-page .asareh-contact-form label {
  display: grid !important;
  gap: 10px !important;

  font-size: 12px !important;
  font-weight: 950 !important;
  color: rgba(24, 19, 15, .66) !important;
}

.asareh-contact-page .asareh-contact-form input,
.asareh-contact-page .asareh-contact-form select,
.asareh-contact-page .asareh-contact-form textarea {
  width: 100% !important;

  padding: 17px 18px !important;

  font: inherit !important;
  font-size: 14px !important;
  font-weight: 650 !important;
  line-height: 1.8 !important;

  color: #18130f !important;
  background: rgba(255, 255, 255, .72) !important;

  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;

  border-radius: 18px !important;
}

.asareh-contact-page .asareh-contact-form textarea {
  min-height: 150px !important;
  resize: vertical !important;
}

.asareh-contact-page .asareh-contact-form input:focus,
.asareh-contact-page .asareh-contact-form select:focus,
.asareh-contact-page .asareh-contact-form textarea:focus {
  background: #ffffff !important;
  box-shadow: 0 18px 45px rgba(24, 19, 15, .07) !important;
}

.asareh-contact-page .asareh-contact-form button {
  justify-self: start !important;

  display: inline-flex !important;
  align-items: center !important;
  gap: 12px !important;

  padding: 15px 28px !important;
  margin-top: 4px !important;

  border: 0 !important;
  outline: 0 !important;
  border-radius: 999px !important;

  background: #b82024 !important;
  color: #ffffff !important;

  font-size: 14px !important;
  font-weight: 950 !important;
  line-height: 1 !important;

  cursor: pointer !important;
  box-shadow: none !important;
  transition:
    transform .3s ease,
    background .3s ease !important;
}

.asareh-contact-page .asareh-contact-form button:hover {
  transform: translateY(-2px) !important;
  background: #9f181d !important;
}


/* ---------- Location ---------- */

.asareh-contact-page .asareh-contact-location {
  padding: 88px 0 92px !important;
  background: #ffffff !important;
}

.asareh-contact-page .asareh-contact-location-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(280px, .78fr) !important;
  gap: clamp(40px, 6vw, 92px) !important;
  align-items: end !important;
}

.asareh-contact-page .asareh-contact-location-copy a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  margin-top: 18px !important;
  padding: 14px 25px !important;

  border-radius: 999px !important;
  border: 0 !important;

  background: rgba(184, 32, 36, .08) !important;
  color: #b82024 !important;

  text-decoration: none !important;
  font-size: 13px !important;
  font-weight: 950 !important;
}

.asareh-contact-page .asareh-contact-location-text {
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.asareh-contact-page .asareh-contact-location-text strong {
  display: block !important;
  margin-top: 18px !important;
  font-size: clamp(30px, 4.4vw, 58px) !important;
  font-weight: 950 !important;
  letter-spacing: -0.04em !important;
  color: #18130f !important;
  direction: ltr !important;
  text-align: right !important;
}


/* ---------- Bottom ---------- */

.asareh-contact-page .asareh-contact-bottom {
  min-height: 520px !important;
}

.asareh-contact-page .asareh-contact-bottom .page-bottom-video-media {
  object-fit: cover !important;
  object-position: center center !important;
}

.asareh-contact-page .asareh-contact-bottom .page-bottom-video-overlay {
  background:
    linear-gradient(90deg, rgba(0, 0, 0, .74), rgba(0, 0, 0, .34)),
    radial-gradient(circle at 78% 50%, rgba(184, 32, 36, .20), transparent 34%) !important;
}


/* ---------- Responsive ---------- */

@media (max-width: 980px) {

  .asareh-contact-page .asareh-contact-opening-grid,
  .asareh-contact-page .asareh-contact-form-grid,
  .asareh-contact-page .asareh-contact-location-grid {
    grid-template-columns: 1fr !important;
  }

  .asareh-contact-page .asareh-contact-flow-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 640px) {
  .asareh-contact-page .asareh-contact-hero {
    min-height: 72vh !important;
  }

  .asareh-contact-page .asareh-contact-hero .inner-hero-bg {
    background-position: center center !important;
  }

  .asareh-contact-page .asareh-contact-opening,
  .asareh-contact-page .asareh-contact-form-section,
  .asareh-contact-page .asareh-contact-location {
    padding: 62px 0 !important;
  }

  .asareh-contact-page .asareh-contact-flow {
    padding: 16px 0 62px !important;
  }

  .asareh-contact-page .asareh-contact-flow-grid,
  .asareh-contact-page .asareh-contact-form-row {
    grid-template-columns: 1fr !important;
  }

  .asareh-contact-page .asareh-contact-form button {
    width: 100% !important;
    justify-content: center !important;
  }
}

/* =========================================================
   Contact Hero Text Position Fix
   متن هدر پایین‌تر و سمت راست قرار بگیرد
   ========================================================= */

.asareh-contact-page .asareh-contact-hero {
  position: relative !important;
}

.asareh-contact-page .asareh-contact-hero .inner-top-nav {
  position: relative !important;
  z-index: 5 !important;
}

.asareh-contact-page .asareh-contact-hero-content {
  position: absolute !important;
  z-index: 4 !important;

  top: auto !important;
  left: auto !important;
  right: clamp(24px, 7vw, 96px) !important;
  bottom: clamp(76px, 11vh, 128px) !important;

  width: min(680px, calc(100vw - 48px)) !important;
  max-width: 680px !important;

  margin: 0 !important;
  padding: 0 !important;

  text-align: right !important;
  transform: none !important;
}

.asareh-contact-page .asareh-contact-hero-content h1 {
  margin: 0 0 14px !important;
}

.asareh-contact-page .asareh-contact-hero-content p {
  margin: 0 !important;
}

@media (max-width: 640px) {
  .asareh-contact-page .asareh-contact-hero-content {
    right: 22px !important;
    bottom: 58px !important;
    width: calc(100vw - 44px) !important;
  }
}
/* =========================================================
   Gallery Page - Clean Premium Visual Story
   Scope: gallery.html only
   ========================================================= */

.asareh-gallery-page {
  background: #ffffff !important;
}

.asareh-gallery-page .asareh-gallery-hero {
  min-height: 78vh !important;
  overflow: hidden !important;
}

.asareh-gallery-page .asareh-gallery-hero .inner-hero-bg {
  background-size: cover !important;
  background-position: center center !important;
  filter: saturate(.88) contrast(.95) brightness(.78) !important;
  transform: scale(1.018) !important;
}

.asareh-gallery-page .asareh-gallery-hero .inner-hero-overlay {
  background:
    linear-gradient(90deg, rgba(0, 0, 0, .76) 0%, rgba(0, 0, 0, .48) 48%, rgba(0, 0, 0, .20) 100%),
    radial-gradient(circle at 78% 42%, rgba(184, 32, 36, .20), transparent 34%) !important;
}

.asareh-gallery-page .asareh-gallery-hero-content {
  position: absolute !important;
  z-index: 4 !important;

  top: auto !important;
  left: auto !important;
  right: clamp(24px, 7vw, 96px) !important;
  bottom: clamp(74px, 10vh, 124px) !important;

  width: min(690px, calc(100vw - 48px)) !important;
  max-width: 690px !important;

  margin: 0 !important;
  padding: 0 !important;

  text-align: right !important;
  transform: none !important;
}

.asareh-gallery-page .asareh-gallery-hero-kicker {
  margin: 0 0 12px !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: .18em !important;
  color: rgba(255, 255, 255, .70) !important;
}

.asareh-gallery-page .asareh-gallery-hero-content h1 {
  max-width: 760px !important;
  margin: 0 0 14px !important;
  font-size: clamp(40px, 5.6vw, 82px) !important;
  font-weight: 950 !important;
  line-height: 1.2 !important;
  letter-spacing: -0.055em !important;
  color: #ffffff !important;
}

.asareh-gallery-page .asareh-gallery-hero-content p {
  max-width: 590px !important;
  margin: 0 !important;
  font-size: clamp(14px, 1.45vw, 18px) !important;
  font-weight: 700 !important;
  line-height: 2.05 !important;
  color: rgba(255, 255, 255, .82) !important;
}


/* Opening */

.asareh-gallery-page .asareh-gallery-opening {
  padding: 96px 0 74px !important;
  background:
    radial-gradient(circle at 14% 26%, rgba(184, 32, 36, .045), transparent 32%),
    radial-gradient(circle at 88% 80%, rgba(217, 168, 66, .07), transparent 30%),
    #ffffff !important;
}

.asareh-gallery-page .asareh-gallery-opening-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1.14fr) minmax(280px, .86fr) !important;
  gap: clamp(44px, 6vw, 96px) !important;
  align-items: start !important;
}

.asareh-gallery-page .asareh-gallery-opening-copy h2,
.asareh-gallery-page .asareh-gallery-story-head h2,
.asareh-gallery-page .asareh-gallery-network h2 {
  margin: 0 0 18px !important;
  font-size: clamp(28px, 3.5vw, 52px) !important;
  font-weight: 950 !important;
  line-height: 1.38 !important;
  letter-spacing: -0.045em !important;
  color: #18130f !important;
}

.asareh-gallery-page .asareh-gallery-opening-copy p,
.asareh-gallery-page .asareh-gallery-story-head p,
.asareh-gallery-page .asareh-gallery-network p {
  margin: 0 0 14px !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  line-height: 2.22 !important;
  color: rgba(24, 19, 15, .66) !important;
}

.asareh-gallery-page .asareh-gallery-opening-actions {
  display: grid !important;
  gap: 16px !important;
}

.asareh-gallery-page .asareh-gallery-opening-actions a {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;

  padding: 8px 0 !important;

  color: #18130f !important;
  text-decoration: none !important;
  font-size: 15px !important;
  font-weight: 950 !important;

  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.asareh-gallery-page .asareh-gallery-opening-actions i {
  width: 42px !important;
  height: 42px !important;

  display: grid !important;
  place-items: center !important;

  border-radius: 50% !important;
  background: rgba(184, 32, 36, .07) !important;
  color: #b82024 !important;
  font-size: 18px !important;
}


/* Featured Mosaic */

.asareh-gallery-page .asareh-gallery-featured {
  padding: 0 0 96px !important;
  background: #ffffff !important;
}

.asareh-gallery-page .asareh-gallery-featured-grid {
  display: grid !important;
  grid-template-columns: 1.35fr .8fr .8fr !important;
  grid-auto-rows: 230px !important;
  gap: 18px !important;
}

.asareh-gallery-page .asareh-gallery-featured figure,
.asareh-gallery-page .asareh-gallery-strip figure,
.asareh-gallery-page .asareh-gallery-mosaic figure {
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.asareh-gallery-page .asareh-gallery-featured-main {
  grid-row: span 2 !important;
}

.asareh-gallery-page .asareh-gallery-featured img,
.asareh-gallery-page .asareh-gallery-strip img,
.asareh-gallery-page .asareh-gallery-mosaic img {
  width: 100% !important;
  height: 100% !important;
  display: block !important;
  object-fit: cover !important;
  object-position: center center !important;
  filter: saturate(.92) contrast(.96) brightness(.98) !important;
  transition: transform .7s ease, filter .7s ease !important;
}

.asareh-gallery-page .asareh-gallery-featured figure:hover img,
.asareh-gallery-page .asareh-gallery-strip figure:hover img,
.asareh-gallery-page .asareh-gallery-mosaic figure:hover img {
  transform: scale(1.045) !important;
  filter: saturate(1.02) contrast(1) brightness(1) !important;
}


/* Story sections */

.asareh-gallery-page .asareh-gallery-story {
  padding: 94px 0 !important;
  background: #ffffff !important;
}

.asareh-gallery-page .asareh-gallery-story-soft {
  background:
    linear-gradient(135deg, #f8f5ef 0%, #ffffff 58%, #f7f3ea 100%) !important;
}

.asareh-gallery-page .asareh-gallery-story-head {
  max-width: 780px !important;
  margin-bottom: 42px !important;
}

.asareh-gallery-page .asareh-gallery-strip {
  display: grid !important;
  grid-template-columns: repeat(6, minmax(190px, 1fr)) !important;
  gap: 18px !important;
}

.asareh-gallery-page .asareh-gallery-strip figure {
  height: 280px !important;
  position: relative !important;
}

.asareh-gallery-page .asareh-gallery-strip figcaption {
  position: absolute !important;
  right: 18px !important;
  bottom: 16px !important;
  z-index: 2 !important;

  padding: 0 !important;
  margin: 0 !important;

  color: #ffffff !important;
  font-size: 13px !important;
  font-weight: 950 !important;
  text-shadow: 0 10px 28px rgba(0, 0, 0, .56) !important;
}

.asareh-gallery-page .asareh-gallery-strip figure::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(180deg, transparent 48%, rgba(0, 0, 0, .52) 100%) !important;
  pointer-events: none !important;
}

.asareh-gallery-page .asareh-gallery-mosaic {
  display: grid !important;
  grid-template-columns: 1fr 1fr 1.2fr !important;
  grid-auto-rows: 250px !important;
  gap: 18px !important;
}

.asareh-gallery-page .asareh-gallery-mosaic figure:nth-child(1) {
  grid-row: span 2 !important;
}

.asareh-gallery-page .asareh-gallery-mosaic figure:nth-child(5) {
  grid-column: span 2 !important;
}


/* Network CTA */

.asareh-gallery-page .asareh-gallery-network {
  padding: 92px 0 !important;
  background: #ffffff !important;
}

.asareh-gallery-page .asareh-gallery-network-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: clamp(34px, 5vw, 80px) !important;
  align-items: end !important;
}

.asareh-gallery-page .asareh-gallery-network-links {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
  justify-content: flex-start !important;
}

.asareh-gallery-page .asareh-gallery-network-links a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  padding: 14px 24px !important;
  border-radius: 999px !important;

  background: rgba(184, 32, 36, .08) !important;
  color: #b82024 !important;

  text-decoration: none !important;
  font-size: 13px !important;
  font-weight: 950 !important;
  border: 0 !important;
  box-shadow: none !important;
}


/* Bottom */

.asareh-gallery-page .asareh-gallery-bottom {
  min-height: 520px !important;
}

.asareh-gallery-page .asareh-gallery-bottom .page-bottom-video-overlay {
  background:
    linear-gradient(90deg, rgba(0, 0, 0, .74), rgba(0, 0, 0, .34)),
    radial-gradient(circle at 78% 50%, rgba(184, 32, 36, .20), transparent 34%) !important;
}


/* Responsive */

@media (max-width: 1100px) {

  .asareh-gallery-page .asareh-gallery-featured-grid,
  .asareh-gallery-page .asareh-gallery-mosaic {
    grid-template-columns: 1fr 1fr !important;
  }

  .asareh-gallery-page .asareh-gallery-strip {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 860px) {

  .asareh-gallery-page .asareh-gallery-opening-grid,
  .asareh-gallery-page .asareh-gallery-network-grid {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 640px) {
  .asareh-gallery-page .asareh-gallery-hero {
    min-height: 72vh !important;
  }

  .asareh-gallery-page .asareh-gallery-hero-content {
    right: 22px !important;
    bottom: 58px !important;
    width: calc(100vw - 44px) !important;
  }

  .asareh-gallery-page .asareh-gallery-opening,
  .asareh-gallery-page .asareh-gallery-story,
  .asareh-gallery-page .asareh-gallery-network {
    padding: 62px 0 !important;
  }

  .asareh-gallery-page .asareh-gallery-featured {
    padding-bottom: 62px !important;
  }

  .asareh-gallery-page .asareh-gallery-featured-grid,
  .asareh-gallery-page .asareh-gallery-mosaic,
  .asareh-gallery-page .asareh-gallery-strip {
    grid-template-columns: 1fr !important;
  }

  .asareh-gallery-page .asareh-gallery-featured figure,
  .asareh-gallery-page .asareh-gallery-mosaic figure,
  .asareh-gallery-page .asareh-gallery-strip figure {
    height: 260px !important;
    grid-column: auto !important;
    grid-row: auto !important;
  }
}

/* =========================================================
   Login Page - Clean Premium Member Access
   Scope: login.html only
   No heavy frames / no template-like boxed UI
   ========================================================= */

.asareh-login-page {
  background: #ffffff !important;
}

.asareh-login-page .asareh-login-hero {
  min-height: 78vh !important;
  overflow: hidden !important;
}

.asareh-login-page .asareh-login-hero .inner-hero-bg {
  background-size: cover !important;
  background-position: center center !important;
  filter: saturate(.82) contrast(.96) brightness(.72) !important;
  transform: scale(1.018) !important;
}

.asareh-login-page .asareh-login-hero .inner-hero-overlay {
  background:
    linear-gradient(90deg, rgba(0, 0, 0, .78) 0%, rgba(0, 0, 0, .48) 48%, rgba(0, 0, 0, .22) 100%),
    radial-gradient(circle at 76% 44%, rgba(184, 32, 36, .20), transparent 34%) !important;
}

.asareh-login-page .asareh-login-hero-content {
  position: absolute !important;
  z-index: 4 !important;

  top: auto !important;
  left: auto !important;
  right: clamp(24px, 7vw, 96px) !important;
  bottom: clamp(74px, 10vh, 124px) !important;

  width: min(700px, calc(100vw - 48px)) !important;
  max-width: 700px !important;

  margin: 0 !important;
  padding: 0 !important;

  text-align: right !important;
  transform: none !important;
}

.asareh-login-page .asareh-login-hero-kicker {
  margin: 0 0 12px !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: .18em !important;
  color: rgba(255, 255, 255, .70) !important;
}

.asareh-login-page .asareh-login-hero-content h1 {
  max-width: 760px !important;
  margin: 0 0 14px !important;
  font-size: clamp(40px, 5.6vw, 82px) !important;
  font-weight: 950 !important;
  line-height: 1.2 !important;
  letter-spacing: -0.055em !important;
  color: #ffffff !important;
}

.asareh-login-page .asareh-login-hero-content p {
  max-width: 590px !important;
  margin: 0 !important;
  font-size: clamp(14px, 1.45vw, 18px) !important;
  font-weight: 700 !important;
  line-height: 2.05 !important;
  color: rgba(255, 255, 255, .82) !important;
}


/* Opening */

.asareh-login-page .asareh-login-opening {
  padding: 96px 0 76px !important;
  background:
    radial-gradient(circle at 14% 24%, rgba(184, 32, 36, .045), transparent 32%),
    radial-gradient(circle at 88% 82%, rgba(217, 168, 66, .07), transparent 30%),
    #ffffff !important;
}

.asareh-login-page .asareh-login-opening-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1.14fr) minmax(280px, .86fr) !important;
  gap: clamp(44px, 6vw, 96px) !important;
  align-items: start !important;
}

.asareh-login-page .asareh-login-opening-copy h2,
.asareh-login-page .asareh-login-form-copy h2,
.asareh-login-page .asareh-login-help h2 {
  margin: 0 0 18px !important;
  font-size: clamp(28px, 3.5vw, 52px) !important;
  font-weight: 950 !important;
  line-height: 1.38 !important;
  letter-spacing: -0.045em !important;
  color: #18130f !important;
}

.asareh-login-page .asareh-login-opening-copy p,
.asareh-login-page .asareh-login-form-copy p,
.asareh-login-page .asareh-login-help p {
  margin: 0 0 14px !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  line-height: 2.22 !important;
  color: rgba(24, 19, 15, .66) !important;
}

.asareh-login-page .asareh-login-access-list {
  display: grid !important;
  gap: 16px !important;
}

.asareh-login-page .asareh-login-access-list div {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;

  padding: 8px 0 !important;

  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.asareh-login-page .asareh-login-access-list i {
  width: 42px !important;
  height: 42px !important;

  display: grid !important;
  place-items: center !important;

  border-radius: 50% !important;
  background: rgba(184, 32, 36, .07) !important;
  color: #b82024 !important;
  font-size: 18px !important;
}

.asareh-login-page .asareh-login-access-list span {
  font-size: 15px !important;
  font-weight: 950 !important;
  color: #18130f !important;
}


/* Login form section */

.asareh-login-page .asareh-login-section {
  padding: 94px 0 !important;
  background:
    linear-gradient(135deg, #f8f5ef 0%, #ffffff 58%, #f7f3ea 100%) !important;
}

.asareh-login-page .asareh-login-section-grid {
  display: grid !important;
  grid-template-columns: minmax(280px, .76fr) minmax(0, 1.24fr) !important;
  gap: clamp(42px, 6vw, 90px) !important;
  align-items: start !important;
}

.asareh-login-page .asareh-login-security-note {
  margin-top: 34px !important;
  display: grid !important;
  gap: 8px !important;

  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.asareh-login-page .asareh-login-security-note strong {
  font-size: 13px !important;
  font-weight: 950 !important;
  color: #b82024 !important;
}

.asareh-login-page .asareh-login-security-note span {
  font-size: 13.5px !important;
  font-weight: 650 !important;
  line-height: 2.1 !important;
  color: rgba(24, 19, 15, .62) !important;
}

.asareh-login-page .asareh-login-form {
  display: grid !important;
  gap: 18px !important;

  margin: 0 !important;
  padding: 0 !important;

  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.asareh-login-page .asareh-login-form label {
  display: grid !important;
  gap: 10px !important;

  font-size: 12px !important;
  font-weight: 950 !important;
  color: rgba(24, 19, 15, .66) !important;
}

.asareh-login-page .asareh-login-form input {
  width: 100% !important;

  padding: 17px 18px !important;

  font: inherit !important;
  font-size: 14px !important;
  font-weight: 650 !important;
  line-height: 1.8 !important;

  color: #18130f !important;
  background: rgba(255, 255, 255, .75) !important;

  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;

  border-radius: 18px !important;
}

.asareh-login-page .asareh-login-form input:focus {
  background: #ffffff !important;
  box-shadow: 0 18px 45px rgba(24, 19, 15, .07) !important;
}

.asareh-login-page .asareh-login-form-options {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
  margin-top: 2px !important;
}

.asareh-login-page .asareh-login-remember {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;

  font-size: 12px !important;
  font-weight: 850 !important;
  color: rgba(24, 19, 15, .62) !important;
}

.asareh-login-page .asareh-login-remember input {
  width: 16px !important;
  height: 16px !important;
  padding: 0 !important;
  border-radius: 4px !important;
  accent-color: #b82024 !important;
}

.asareh-login-page .asareh-login-form-options a {
  color: #b82024 !important;
  text-decoration: none !important;
  font-size: 12px !important;
  font-weight: 950 !important;
}

.asareh-login-page .asareh-login-form button {
  justify-self: start !important;

  display: inline-flex !important;
  align-items: center !important;
  gap: 12px !important;

  padding: 15px 30px !important;
  margin-top: 4px !important;

  border: 0 !important;
  outline: 0 !important;
  border-radius: 999px !important;

  background: #b82024 !important;
  color: #ffffff !important;

  font-size: 14px !important;
  font-weight: 950 !important;
  line-height: 1 !important;

  cursor: pointer !important;
  box-shadow: none !important;
  transition:
    transform .3s ease,
    background .3s ease !important;
}

.asareh-login-page .asareh-login-form button:hover {
  transform: translateY(-2px) !important;
  background: #9f181d !important;
}

.asareh-login-page .asareh-login-form-caption {
  max-width: 520px !important;
  margin: 4px 0 0 !important;
  font-size: 12.5px !important;
  font-weight: 650 !important;
  line-height: 2 !important;
  color: rgba(24, 19, 15, .54) !important;
}


/* Capabilities */

.asareh-login-page .asareh-login-capabilities {
  padding: 92px 0 !important;
  background: #ffffff !important;
}

.asareh-login-page .asareh-login-capabilities-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: clamp(24px, 3vw, 48px) !important;
}

.asareh-login-page .asareh-login-capabilities article {
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.asareh-login-page .asareh-login-capabilities article span {
  display: block !important;
  margin-bottom: 16px !important;
  font-size: 13px !important;
  font-weight: 950 !important;
  letter-spacing: .16em !important;
  color: #b82024 !important;
}

.asareh-login-page .asareh-login-capabilities article h3 {
  margin: 0 0 12px !important;
  font-size: 20px !important;
  font-weight: 950 !important;
  line-height: 1.55 !important;
  color: #18130f !important;
}

.asareh-login-page .asareh-login-capabilities article p {
  margin: 0 !important;
  font-size: 13.5px !important;
  font-weight: 600 !important;
  line-height: 2.15 !important;
  color: rgba(24, 19, 15, .60) !important;
}


/* Help */

.asareh-login-page .asareh-login-help {
  padding: 88px 0 92px !important;
  background:
    radial-gradient(circle at 14% 32%, rgba(184, 32, 36, .045), transparent 30%),
    #ffffff !important;
}

.asareh-login-page .asareh-login-help-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: clamp(34px, 5vw, 80px) !important;
  align-items: end !important;
}

.asareh-login-page .asareh-login-help-actions {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
}

.asareh-login-page .asareh-login-help-actions a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  padding: 14px 24px !important;
  border-radius: 999px !important;

  text-decoration: none !important;
  font-size: 13px !important;
  font-weight: 950 !important;

  border: 0 !important;
  box-shadow: none !important;
}

.asareh-login-page .asareh-login-help-actions a:first-child {
  background: #b82024 !important;
  color: #ffffff !important;
}

.asareh-login-page .asareh-login-help-actions a:last-child {
  background: rgba(184, 32, 36, .08) !important;
  color: #b82024 !important;
}


/* Bottom */

.asareh-login-page .asareh-login-bottom {
  min-height: 520px !important;
}

.asareh-login-page .asareh-login-bottom .page-bottom-video-overlay {
  background:
    linear-gradient(90deg, rgba(0, 0, 0, .76), rgba(0, 0, 0, .36)),
    radial-gradient(circle at 78% 50%, rgba(184, 32, 36, .20), transparent 34%) !important;
}


/* Responsive */

@media (max-width: 980px) {

  .asareh-login-page .asareh-login-opening-grid,
  .asareh-login-page .asareh-login-section-grid,
  .asareh-login-page .asareh-login-help-grid {
    grid-template-columns: 1fr !important;
  }

  .asareh-login-page .asareh-login-capabilities-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 640px) {
  .asareh-login-page .asareh-login-hero {
    min-height: 72vh !important;
  }

  .asareh-login-page .asareh-login-hero-content {
    right: 22px !important;
    bottom: 58px !important;
    width: calc(100vw - 44px) !important;
  }

  .asareh-login-page .asareh-login-opening,
  .asareh-login-page .asareh-login-section,
  .asareh-login-page .asareh-login-capabilities,
  .asareh-login-page .asareh-login-help {
    padding: 62px 0 !important;
  }

  .asareh-login-page .asareh-login-capabilities-grid {
    grid-template-columns: 1fr !important;
  }

  .asareh-login-page .asareh-login-form-options {
    display: grid !important;
    justify-content: stretch !important;
  }

  .asareh-login-page .asareh-login-form button,
  .asareh-login-page .asareh-login-help-actions a {
    width: 100% !important;
    justify-content: center !important;
  }
}

/* =========================================================
   Contact Page Final Rescue
   Map + Form + Buttons Fix
   Scope: contact.html only
   ========================================================= */

.asareh-contact-page .asareh-contact-form-section,
.asareh-contact-page .asareh-contact-map-section {
  position: relative !important;
  isolation: isolate !important;
  overflow: hidden !important;
}

/* ---------- Form final polish ---------- */

.asareh-contact-page .asareh-contact-form-section {
  padding: 92px 0 96px !important;
  background:
    radial-gradient(circle at 12% 18%, rgba(184, 32, 36, .045), transparent 30%),
    radial-gradient(circle at 88% 82%, rgba(217, 168, 66, .07), transparent 30%),
    linear-gradient(135deg, #ffffff 0%, #f8f5ef 52%, #ffffff 100%) !important;
}

.asareh-contact-page .asareh-contact-form-grid {
  display: grid !important;
  grid-template-columns: minmax(300px, .78fr) minmax(0, 1.22fr) !important;
  gap: clamp(44px, 6vw, 92px) !important;
  align-items: start !important;
}

.asareh-contact-page .asareh-contact-form-copy h2 {
  margin: 0 0 18px !important;
  font-size: clamp(30px, 3.6vw, 54px) !important;
  font-weight: 950 !important;
  line-height: 1.42 !important;
  letter-spacing: -0.045em !important;
  color: #18130f !important;
}

.asareh-contact-page .asareh-contact-form-copy p {
  margin: 0 0 18px !important;
  font-size: 15px !important;
  font-weight: 650 !important;
  line-height: 2.25 !important;
  color: rgba(24, 19, 15, .66) !important;
}

.asareh-contact-page .asareh-contact-note {
  margin-top: 30px !important;
  display: grid !important;
  gap: 8px !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.asareh-contact-page .asareh-contact-note strong {
  font-size: 13px !important;
  font-weight: 950 !important;
  color: #b82024 !important;
}

.asareh-contact-page .asareh-contact-note span {
  font-size: 14px !important;
  font-weight: 750 !important;
  line-height: 2 !important;
  color: rgba(24, 19, 15, .66) !important;
}

.asareh-contact-page .asareh-contact-form {
  display: grid !important;
  gap: 18px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.asareh-contact-page .asareh-contact-form-row {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 18px !important;
}

.asareh-contact-page .asareh-contact-form label {
  display: grid !important;
  gap: 10px !important;
  margin: 0 !important;
  font-size: 12px !important;
  font-weight: 950 !important;
  line-height: 1.8 !important;
  color: rgba(24, 19, 15, .66) !important;
}

.asareh-contact-page .asareh-contact-form input,
.asareh-contact-page .asareh-contact-form select,
.asareh-contact-page .asareh-contact-form textarea {
  width: 100% !important;
  min-height: 56px !important;

  padding: 16px 18px !important;

  font-size: 14px !important;
  font-weight: 650 !important;
  line-height: 1.9 !important;

  color: #18130f !important;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, .90), rgba(255, 255, 255, .62)) !important;

  border: 0 !important;
  outline: 0 !important;
  border-radius: 18px !important;

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, .72),
    0 14px 36px rgba(24, 19, 15, .045) !important;

  transition:
    background .28s ease,
    box-shadow .28s ease,
    transform .28s ease !important;
}

.asareh-contact-page .asareh-contact-form textarea {
  min-height: 154px !important;
  resize: vertical !important;
}

.asareh-contact-page .asareh-contact-form input:focus,
.asareh-contact-page .asareh-contact-form select:focus,
.asareh-contact-page .asareh-contact-form textarea:focus {
  background: #ffffff !important;
  transform: translateY(-1px) !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, .95),
    0 22px 55px rgba(184, 32, 36, .10) !important;
}

.asareh-contact-page .asareh-contact-form button {
  position: relative !important;
  isolation: isolate !important;
  overflow: hidden !important;

  justify-self: end !important;
  margin-inline-start: auto !important;
  margin-inline-end: 0 !important;

  min-width: 172px !important;
  min-height: 50px !important;
  padding: 0 30px !important;

  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 12px !important;

  border: 0 !important;
  outline: 0 !important;
  border-radius: 999px !important;

  background:
    radial-gradient(circle at 20% 18%, rgba(255, 255, 255, .38), transparent 30%),
    linear-gradient(135deg, rgba(184, 32, 36, .88), rgba(184, 32, 36, .48)) !important;

  color: #ffffff !important;

  font-size: 14px !important;
  font-weight: 950 !important;
  line-height: 1 !important;

  cursor: pointer !important;

  box-shadow:
    0 22px 58px rgba(184, 32, 36, .24),
    inset 0 1px 0 rgba(255, 255, 255, .34) !important;

  transition:
    transform .32s ease,
    box-shadow .32s ease,
    background .32s ease !important;
}

.asareh-contact-page .asareh-contact-form button::after,
.asareh-contact-page .asareh-contact-primary-action::after {
  content: "" !important;
  position: absolute !important;
  top: -60% !important;
  bottom: -60% !important;
  left: -70px !important;
  width: 42px !important;

  transform: rotate(18deg) !important;

  background: linear-gradient(90deg,
      transparent,
      rgba(255, 255, 255, .42),
      transparent) !important;

  opacity: 0 !important;
  transition:
    left .62s ease,
    opacity .25s ease !important;
}

.asareh-contact-page .asareh-contact-form button:hover,
.asareh-contact-page .asareh-contact-primary-action:hover {
  transform: translateY(-3px) !important;
  box-shadow:
    0 30px 74px rgba(184, 32, 36, .30),
    inset 0 1px 0 rgba(255, 255, 255, .42) !important;
}

.asareh-contact-page .asareh-contact-form button:hover::after,
.asareh-contact-page .asareh-contact-primary-action:hover::after {
  left: calc(100% + 70px) !important;
  opacity: 1 !important;
}

/* ---------- Map section final ---------- */

.asareh-contact-page .asareh-contact-map-section {
  padding: 96px 0 108px !important;
  background:
    radial-gradient(circle at 12% 24%, rgba(184, 32, 36, .052), transparent 31%),
    radial-gradient(circle at 88% 78%, rgba(217, 168, 66, .075), transparent 31%),
    linear-gradient(135deg, #ffffff 0%, #f8f5ef 48%, #ffffff 100%) !important;
}

.asareh-contact-page .asareh-contact-map-grid {
  display: grid !important;
  grid-template-columns: minmax(320px, .82fr) minmax(0, 1.18fr) !important;
  gap: clamp(42px, 6vw, 94px) !important;
  align-items: center !important;
}

.asareh-contact-page .asareh-contact-map-copy {
  min-width: 0 !important;
}

.asareh-contact-page .asareh-contact-map-copy h2 {
  margin: 0 0 18px !important;
  font-size: clamp(30px, 3.7vw, 54px) !important;
  font-weight: 950 !important;
  line-height: 1.42 !important;
  letter-spacing: -0.045em !important;
  color: #18130f !important;
}

.asareh-contact-page .asareh-contact-map-copy>p {
  max-width: 620px !important;
  margin: 0 0 24px !important;
  font-size: 15px !important;
  font-weight: 650 !important;
  line-height: 2.25 !important;
  color: rgba(24, 19, 15, .66) !important;
}

.asareh-contact-page .asareh-contact-address-line {
  display: flex !important;
  align-items: flex-start !important;
  gap: 12px !important;

  margin: 0 0 34px !important;
  padding: 0 !important;

  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.asareh-contact-page .asareh-contact-address-line i {
  width: 38px !important;
  height: 38px !important;
  min-width: 38px !important;

  display: grid !important;
  place-items: center !important;

  border-radius: 50% !important;
  background:
    linear-gradient(135deg, rgba(184, 32, 36, .12), rgba(184, 32, 36, .04)) !important;

  color: #b82024 !important;
  font-size: 17px !important;
}

.asareh-contact-page .asareh-contact-address-line span {
  padding-top: 3px !important;
  font-size: 15px !important;
  font-weight: 850 !important;
  line-height: 2 !important;
  color: rgba(24, 19, 15, .78) !important;
}

.asareh-contact-page .asareh-contact-direction-steps {
  display: grid !important;
  gap: 22px !important;
  margin: 0 0 34px !important;
  padding: 0 !important;
}

.asareh-contact-page .asareh-contact-direction-steps div {
  display: grid !important;
  grid-template-columns: 48px minmax(0, 1fr) !important;
  grid-template-areas:
    "num title"
    "num text" !important;
  column-gap: 16px !important;
  align-items: start !important;

  padding: 0 !important;
  margin: 0 !important;

  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.asareh-contact-page .asareh-contact-direction-steps span {
  grid-area: num !important;

  width: 48px !important;
  height: 48px !important;

  display: grid !important;
  place-items: center !important;

  border-radius: 50% !important;

  background:
    radial-gradient(circle at 30% 22%, rgba(255, 255, 255, .58), transparent 36%),
    linear-gradient(135deg, rgba(184, 32, 36, .82), rgba(184, 32, 36, .38)) !important;

  color: #ffffff !important;

  font-size: 12px !important;
  font-weight: 950 !important;
  letter-spacing: .08em !important;

  box-shadow:
    0 18px 42px rgba(184, 32, 36, .20),
    inset 0 1px 0 rgba(255, 255, 255, .32) !important;
}

.asareh-contact-page .asareh-contact-direction-steps strong {
  grid-area: title !important;

  margin: 0 0 4px !important;

  font-size: 16px !important;
  font-weight: 950 !important;
  line-height: 1.8 !important;

  color: #18130f !important;
}

.asareh-contact-page .asareh-contact-direction-steps p {
  grid-area: text !important;

  margin: 0 !important;

  font-size: 13.5px !important;
  font-weight: 650 !important;
  line-height: 2.05 !important;

  color: rgba(24, 19, 15, .58) !important;
}

.asareh-contact-page .asareh-contact-map-actions {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
  align-items: center !important;
}

.asareh-contact-page .asareh-contact-primary-action,
.asareh-contact-page .asareh-contact-secondary-action {
  min-height: 48px !important;

  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;

  padding: 0 24px !important;

  border: 0 !important;
  outline: 0 !important;
  border-radius: 999px !important;

  text-decoration: none !important;
  font-size: 13px !important;
  font-weight: 950 !important;

  transition:
    transform .3s ease,
    background .3s ease,
    box-shadow .3s ease !important;
}

.asareh-contact-page .asareh-contact-primary-action {
  position: relative !important;
  overflow: hidden !important;
  isolation: isolate !important;

  background:
    radial-gradient(circle at 20% 18%, rgba(255, 255, 255, .38), transparent 30%),
    linear-gradient(135deg, rgba(184, 32, 36, .88), rgba(184, 32, 36, .48)) !important;

  color: #ffffff !important;

  box-shadow:
    0 22px 58px rgba(184, 32, 36, .24),
    inset 0 1px 0 rgba(255, 255, 255, .34) !important;
}

.asareh-contact-page .asareh-contact-secondary-action {
  background:
    linear-gradient(135deg, rgba(184, 32, 36, .095), rgba(184, 32, 36, .045)) !important;

  color: #b82024 !important;
  box-shadow: none !important;
}

.asareh-contact-page .asareh-contact-secondary-action:hover {
  transform: translateY(-2px) !important;
  background:
    linear-gradient(135deg, rgba(184, 32, 36, .14), rgba(184, 32, 36, .065)) !important;
}

/* ---------- Map visual: این بخش خرابی نقشه را جمع می‌کند ---------- */

.asareh-contact-page .asareh-contact-map-panel {
  position: relative !important;

  width: 100% !important;
  min-width: 0 !important;
  height: clamp(430px, 48vw, 610px) !important;

  overflow: hidden !important;

  background: rgba(255, 255, 255, .62) !important;

  border: 0 !important;
  outline: 0 !important;
  border-radius: 34px !important;

  box-shadow:
    0 34px 110px rgba(24, 19, 15, .12),
    0 10px 34px rgba(184, 32, 36, .06) !important;

  backdrop-filter: blur(18px) !important;
  -webkit-backdrop-filter: blur(18px) !important;
}

.asareh-contact-page .asareh-contact-map-frame {
  position: absolute !important;
  inset: 12px !important;

  overflow: hidden !important;

  border: 0 !important;
  outline: 0 !important;
  border-radius: 26px !important;

  background: #f2eee7 !important;
}

.asareh-contact-page .asareh-contact-map-frame iframe {
  position: absolute !important;
  inset: 0 !important;

  width: 100% !important;
  height: 100% !important;

  display: block !important;

  border: 0 !important;
  outline: 0 !important;

  filter:
    saturate(.78) contrast(.94) brightness(1.02) !important;
}

.asareh-contact-page .asareh-contact-map-floating {
  position: absolute !important;
  right: 28px !important;
  bottom: 28px !important;
  z-index: 4 !important;

  max-width: min(390px, calc(100% - 56px)) !important;

  display: grid !important;
  gap: 4px !important;

  padding: 16px 18px !important;

  border: 0 !important;
  border-radius: 22px !important;

  background:
    linear-gradient(135deg, rgba(255, 255, 255, .88), rgba(255, 255, 255, .56)) !important;

  box-shadow:
    0 20px 55px rgba(24, 19, 15, .14),
    inset 0 1px 0 rgba(255, 255, 255, .72) !important;

  backdrop-filter: blur(16px) !important;
  -webkit-backdrop-filter: blur(16px) !important;
}

.asareh-contact-page .asareh-contact-map-floating strong {
  font-size: 14px !important;
  font-weight: 950 !important;
  line-height: 1.7 !important;
  color: #18130f !important;
}

.asareh-contact-page .asareh-contact-map-floating span {
  font-size: 12.5px !important;
  font-weight: 750 !important;
  line-height: 1.9 !important;
  color: rgba(24, 19, 15, .62) !important;
}

/* ---------- Mobile ---------- */

@media (max-width: 980px) {

  .asareh-contact-page .asareh-contact-form-grid,
  .asareh-contact-page .asareh-contact-map-grid {
    grid-template-columns: 1fr !important;
  }

  .asareh-contact-page .asareh-contact-map-panel {
    height: 470px !important;
  }
}

@media (max-width: 640px) {

  .asareh-contact-page .asareh-contact-form-section,
  .asareh-contact-page .asareh-contact-map-section {
    padding: 64px 0 72px !important;
  }

  .asareh-contact-page .asareh-contact-form-row {
    grid-template-columns: 1fr !important;
  }

  .asareh-contact-page .asareh-contact-form button {
    width: 100% !important;
    justify-self: stretch !important;
    margin-inline-start: 0 !important;
  }

  .asareh-contact-page .asareh-contact-direction-steps div {
    grid-template-columns: 42px minmax(0, 1fr) !important;
    column-gap: 13px !important;
  }

  .asareh-contact-page .asareh-contact-direction-steps span {
    width: 42px !important;
    height: 42px !important;
  }

  .asareh-contact-page .asareh-contact-map-actions a {
    width: 100% !important;
  }

  .asareh-contact-page .asareh-contact-map-panel {
    height: 390px !important;
    border-radius: 26px !important;
  }

  .asareh-contact-page .asareh-contact-map-frame {
    inset: 9px !important;
    border-radius: 20px !important;
  }

  .asareh-contact-page .asareh-contact-map-floating {
    right: 18px !important;
    bottom: 18px !important;
    max-width: calc(100% - 36px) !important;
  }
}

/* =========================================================
   TOCHAL GLOBAL PAGE POLISH | PHASE 01
   File:
   assets/css/pages/asareh-tochal-placement.css

   Scope:
   - تمام صفحات توچال که این فایل را دارند
   - عرض ۹۰٪
   - سفیدسازی سکشن‌های محتوایی
   - تراز متن و تصویر
   - تایپوگرافی بزرگ‌تر و خواناتر
   - کارت‌های سفید با حاشیه Fade
   - دکمه‌های شیشه‌ای مات
   - بدون تغییر در Witting / Header / Footer اصلی / Side Panel logic
   ========================================================= */

html,
body {
  background: #ffffff !important;
  overflow-x: hidden !important;
}

body {
  color: #17130f !important;
}

/* ------------------------------
   1) عرض استاندارد ۹۰٪ برای همه صفحات
   ------------------------------ */

body .container,
body .kd-footer .container,
body .kd-footer-shell,
body .inner-page>.container,
body main>section>.container,
body .asareh-tochal-page>section>.container,
body .asareh-static-main>.container,
body .asareh-training-main>.container,
body .asareh-product-main>.container {
  width: 90% !important;
  max-width: none !important;
  margin-right: auto !important;
  margin-left: auto !important;
}

/* ------------------------------
   2) سفیدسازی سکشن‌های محتوایی
   سکشن‌های تصویری مثل ویدئو پایین صفحه دست نمی‌خورند
   ------------------------------ */

body main,
body .inner-page,
body main section:not(.page-bottom-video),
body .asareh-static-main,
body .asareh-training-main,
body .asareh-product-main,
body .asareh-tochal-page {
  background: #ffffff !important;
  background-color: #ffffff !important;
  background-image: none !important;
  color: #17130f !important;
}

body main section:not(.page-bottom-video)::before,
body main section:not(.page-bottom-video)::after {
  box-shadow: none !important;
}

/* ------------------------------
   3) تراز عمومی متن و تصویر در Gridها
   ------------------------------ */

body .about-grid,
body .about-layout,
body .asareh-static-grid,
body .asareh-tochal-bridge-grid,
body .asareh-products-intro-grid,
body .asareh-product-intro-grid,
body .asareh-product-split-grid,
body .asareh-training-grid,
body .asareh-contact-form-grid,
body .asareh-contact-map-grid,
body .asareh-dealers-grid,
body .asareh-isfahan-grid,
body .asareh-employment-grid,
body .asareh-order-grid {
  width: 90% !important;
  max-width: none !important;
  margin-right: auto !important;
  margin-left: auto !important;

  display: grid !important;
  align-items: center !important;
  gap: clamp(28px, 4vw, 64px) !important;
}

body .about-grid>*,
body .about-layout>*,
body .asareh-static-grid>*,
body .asareh-tochal-bridge-grid>*,
body .asareh-products-intro-grid>*,
body .asareh-product-intro-grid>*,
body .asareh-product-split-grid>*,
body .asareh-training-grid>*,
body .asareh-contact-form-grid>*,
body .asareh-contact-map-grid>*,
body .asareh-dealers-grid>*,
body .asareh-isfahan-grid>*,
body .asareh-employment-grid>*,
body .asareh-order-grid>* {
  min-width: 0 !important;
  align-self: center !important;
}

/* ------------------------------
   4) تایپوگرافی بزرگ‌تر و هماهنگ‌تر
   ------------------------------ */

body main h1,
body main h2,
body main h3,
body .inner-page h1,
body .inner-page h2,
body .inner-page h3 {
  font-family:
    "AsarehPeyda",
    "AsarehIranSans",
    "AsarehVazir",
    Tahoma,
    Arial,
    sans-serif !important;

  color: #17130f !important;
  letter-spacing: -0.025em !important;
}

body main h2,
body .inner-page h2,
body .asareh-static-copy h2,
body .asareh-training-copy h2,
body .asareh-product-copy h2,
body .asareh-tochal-bridge-text h2,
body .asareh-products-intro-text h2 {
  font-size: clamp(32px, 3.15vw, 50px) !important;
  font-weight: 950 !important;
  line-height: 1.48 !important;
  margin-bottom: 14px !important;
}

body main h3,
body .inner-page h3,
body .asareh-product-card h3,
body .asareh-training-card h3,
body .asareh-static-card h3,
body .asareh-dealer-card h3 {
  font-size: clamp(20px, 1.65vw, 27px) !important;
  font-weight: 920 !important;
  line-height: 1.65 !important;
}

body main p,
body main li,
body .inner-page p,
body .inner-page li,
body .asareh-static-copy p,
body .asareh-training-copy p,
body .asareh-product-copy p,
body .asareh-tochal-bridge-text p,
body .asareh-products-intro-text p {
  font-family:
    "AsarehVazir",
    "AsarehIranSans",
    "AsarehPeyda",
    Tahoma,
    Arial,
    sans-serif !important;

  color: rgba(23, 19, 15, .72) !important;
  font-size: clamp(15.8px, 1.05vw, 17.2px) !important;
  font-weight: 650 !important;
  line-height: 2.15 !important;
}

body .inner-kicker,
body .section-kicker,
body .asareh-products-kicker,
body .asareh-static-kicker,
body .asareh-training-kicker,
body .asareh-product-hero-kicker {
  color: #d9a842 !important;
  font-family:
    "AsarehIranSans",
    "AsarehVazir",
    Tahoma,
    Arial,
    sans-serif !important;
  font-size: 12px !important;
  font-weight: 950 !important;
  letter-spacing: .11em !important;
}

/* ------------------------------
   5) تصاویر محتوایی بزرگ‌تر، تمیزتر و هم‌تراز
   لوگوها، آیکون‌ها و نقشه دست نمی‌خورند
   ------------------------------ */

body .asareh-static-visual,
body .asareh-products-intro-visual,
body .asareh-product-visual,
body .asareh-product-visual-main,
body .asareh-product-gallery-stack,
body .asareh-team-visual,
body .asareh-tochal-bridge-media,
body .asareh-training-visual {
  background: #ffffff !important;
  border-radius: 34px !important;
  border: 1px solid rgba(24, 19, 15, .045) !important;
  box-shadow: 0 18px 54px rgba(24, 19, 15, .05) !important;
  overflow: hidden !important;
}

body .asareh-static-visual img,
body .asareh-products-intro-visual img,
body .asareh-product-visual img,
body .asareh-product-visual-main img,
body .asareh-team-visual img,
body .asareh-tochal-bridge-media img,
body .asareh-training-visual img {
  width: 100% !important;
  min-height: clamp(360px, 34vw, 560px) !important;
  height: 100% !important;
  display: block !important;
  object-fit: cover !important;
  object-position: center center !important;
}

body .asareh-product-gallery-stack img,
body .asareh-product-card img,
body .asareh-product-image img {
  object-fit: contain !important;
  object-position: center center !important;
}

/* ------------------------------
   6) کارت‌ها و باکس‌ها سفید، Fade و نرم
   ------------------------------ */

body :where(.asareh-static-card,
  .asareh-training-card,
  .asareh-product-app-card,
  .asareh-product-note,
  .asareh-product-floating-card,
  .asareh-product-cta-card,
  .asareh-tochal-cta-card,
  .asareh-about-stat-card,
  .asareh-about-timeline-card,
  .asareh-dealer-card,
  .asareh-isfahan-card,
  .asareh-login-capability-card,
  .asareh-blog-card,
  .gallery-card,
  .panel-info-card,
  .kd-ig-highlight,
  .asareh-contact-map-floating,
  .asareh-products-filter-panel,
  .asareh-filter-accordion,
  .asareh-product-card) {
  background: #ffffff !important;
  background-color: #ffffff !important;
  background-image: none !important;

  border: 1px solid rgba(24, 19, 15, .045) !important;
  box-shadow: 0 18px 54px rgba(24, 19, 15, .045) !important;

  color: #17130f !important;
}

body :where(.asareh-static-card,
  .asareh-training-card,
  .asareh-product-app-card,
  .asareh-product-note,
  .asareh-product-floating-card,
  .asareh-product-cta-card,
  .asareh-tochal-cta-card,
  .asareh-about-stat-card,
  .asareh-about-timeline-card,
  .asareh-dealer-card,
  .asareh-isfahan-card,
  .asareh-login-capability-card,
  .asareh-blog-card,
  .gallery-card,
  .asareh-product-card):hover {
  transform: translateY(-5px) !important;
  border-color: rgba(217, 168, 66, .18) !important;
  box-shadow:
    0 26px 76px rgba(24, 19, 15, .07),
    0 14px 36px rgba(217, 168, 66, .045) !important;
}

/* جلوگیری از قاب‌های خیلی تیره یا رنگی داخل کارت‌ها */
body :where(.asareh-static-card,
  .asareh-training-card,
  .asareh-product-app-card,
  .asareh-product-note,
  .asareh-product-floating-card,
  .asareh-product-cta-card,
  .asareh-tochal-cta-card,
  .asareh-about-stat-card,
  .asareh-about-timeline-card,
  .asareh-dealer-card,
  .asareh-isfahan-card,
  .asareh-login-capability-card,
  .asareh-blog-card,
  .gallery-card,
  .asareh-product-card)::before,
body :where(.asareh-static-card,
  .asareh-training-card,
  .asareh-product-app-card,
  .asareh-product-note,
  .asareh-product-floating-card,
  .asareh-product-cta-card,
  .asareh-tochal-cta-card,
  .asareh-about-stat-card,
  .asareh-about-timeline-card,
  .asareh-dealer-card,
  .asareh-isfahan-card,
  .asareh-login-capability-card,
  .asareh-blog-card,
  .gallery-card,
  .asareh-product-card)::after {
  box-shadow: none !important;
}

/* ------------------------------
   7) دکمه‌های شیشه‌ای مات
   بدون قرمز
   اکشن‌های فعلی حفظ می‌شوند
   ------------------------------ */

body :where(.asareh-header-cta,
  .asareh-hero-actions a,
  .asareh-static-btn,
  .asareh-about-primary-btn,
  .asareh-product-glass-btn,
  .asareh-product-soft-btn,
  .asareh-product-actions a,
  .asareh-contact-secondary-action,
  .asareh-contact-map-actions a,
  .asareh-tochal-cta a,
  .asareh-static-cta a,
  .asareh-product-cta a,
  .page-bottom-video-content a,
  .kd-footer-social a,
  .asareh-products-reset,
  .asareh-panel-link) {
  color: rgba(23, 19, 15, .82) !important;

  background: rgba(255, 255, 255, .34) !important;
  background-image:
    linear-gradient(135deg, rgba(255, 255, 255, .56), rgba(255, 255, 255, .20)) !important;

  border: 1px solid rgba(255, 255, 255, .46) !important;
  border-radius: 999px !important;

  box-shadow:
    0 16px 38px rgba(24, 19, 15, .10),
    inset 0 1px 0 rgba(255, 255, 255, .62) !important;

  backdrop-filter: blur(16px) saturate(130%) !important;
  -webkit-backdrop-filter: blur(16px) saturate(130%) !important;

  transition:
    transform .22s ease,
    box-shadow .22s ease,
    border-color .22s ease,
    background .22s ease,
    color .22s ease !important;
}

body :where(.asareh-header-cta,
  .asareh-hero-actions a,
  .asareh-static-btn,
  .asareh-about-primary-btn,
  .asareh-product-glass-btn,
  .asareh-product-soft-btn,
  .asareh-product-actions a,
  .asareh-contact-secondary-action,
  .asareh-contact-map-actions a,
  .asareh-tochal-cta a,
  .asareh-static-cta a,
  .asareh-product-cta a,
  .page-bottom-video-content a,
  .kd-footer-social a,
  .asareh-products-reset,
  .asareh-panel-link):hover {
  transform: translateY(-2px) !important;
  border-color: rgba(217, 168, 66, .34) !important;
  box-shadow:
    0 22px 52px rgba(24, 19, 15, .14),
    inset 0 1px 0 rgba(255, 255, 255, .72) !important;
}

/* دکمه‌هایی که روی تصویر تیره هستند باید خوانا بمانند */
body :where(.page-bottom-video-content a,
  .inner-hero-content a,
  .asareh-hero-actions a) {
  color: rgba(255, 255, 255, .94) !important;
  background: rgba(255, 255, 255, .16) !important;
  border-color: rgba(255, 255, 255, .34) !important;
  text-shadow: 0 4px 18px rgba(0, 0, 0, .35) !important;
}

/* جلوگیری از قرمز شدن دکمه‌های صفحه محصولات که داخل خود صفحه استایل دارند */
html body.asareh-products-page.asareh-products-catalog-page main.inner-page.asareh-tochal-page .asareh-product-card .asareh-product-actions a,
html body.asareh-products-page.asareh-products-catalog-page main.inner-page.asareh-tochal-page .page-bottom-video-content a {
  color: rgba(23, 19, 15, .82) !important;

  background: rgba(255, 255, 255, .34) !important;
  background-image:
    linear-gradient(135deg, rgba(255, 255, 255, .56), rgba(255, 255, 255, .20)) !important;

  border: 1px solid rgba(255, 255, 255, .46) !important;

  box-shadow:
    0 16px 38px rgba(24, 19, 15, .10),
    inset 0 1px 0 rgba(255, 255, 255, .62) !important;

  backdrop-filter: blur(16px) saturate(130%) !important;
  -webkit-backdrop-filter: blur(16px) saturate(130%) !important;
}

html body.asareh-products-page.asareh-products-catalog-page main.inner-page.asareh-tochal-page .page-bottom-video-content a {
  color: rgba(255, 255, 255, .94) !important;
}

/* ------------------------------
   8) فرم‌ها، ورودی‌ها و فیلترها سفید و Fade
   ------------------------------ */

body :where(input,
  textarea,
  select,
  .asareh-employment-input-wrap,
  .asareh-order-input-wrap,
  .asareh-login-input-wrap,
  .asareh-filter-check,
  .asareh-products-search input) {
  background: rgba(255, 255, 255, .70) !important;
  border: 1px solid rgba(24, 19, 15, .075) !important;
  box-shadow:
    0 12px 30px rgba(24, 19, 15, .035),
    inset 0 1px 0 rgba(255, 255, 255, .88) !important;
  color: #17130f !important;
}

/* ------------------------------
   9) جلوگیری از تغییر عناصر حساس
   ------------------------------ */

body .menu-trigger,
body .menu-trigger *,
body .panel-close,
body .panel-close *,
body .backdrop,
body .side-panel,
body .side-panel *,
body .asareh-waiting,
body .asareh-waiting *,
body .asareh-map-pin,
body .asareh-map-pin *,
body .gallery-lightbox,
body .gallery-lightbox *,
body .asareh-gallery-lightbox-nav,
body .asareh-gallery-lightbox-nav * {
  /* این بخش‌ها از پولیش عمومی جدا هستند */
}

/* ------------------------------
   10) Responsive
   ------------------------------ */

@media (max-width: 980px) {

  body .about-grid,
  body .about-layout,
  body .asareh-static-grid,
  body .asareh-tochal-bridge-grid,
  body .asareh-products-intro-grid,
  body .asareh-product-intro-grid,
  body .asareh-product-split-grid,
  body .asareh-training-grid,
  body .asareh-contact-form-grid,
  body .asareh-contact-map-grid,
  body .asareh-dealers-grid,
  body .asareh-isfahan-grid,
  body .asareh-employment-grid,
  body .asareh-order-grid {
    width: 90% !important;
    grid-template-columns: 1fr !important;
    gap: 28px !important;
  }

  body main h2,
  body .inner-page h2,
  body .asareh-static-copy h2,
  body .asareh-training-copy h2,
  body .asareh-product-copy h2,
  body .asareh-tochal-bridge-text h2,
  body .asareh-products-intro-text h2 {
    font-size: clamp(28px, 7vw, 38px) !important;
  }

  body main p,
  body main li,
  body .inner-page p,
  body .inner-page li {
    font-size: 15.5px !important;
    line-height: 2.05 !important;
  }
}

@media (max-width: 640px) {

  body .container,
  body .kd-footer .container,
  body .kd-footer-shell,
  body .inner-page>.container,
  body main>section>.container {
    width: 90% !important;
  }

  body .asareh-static-visual img,
  body .asareh-products-intro-visual img,
  body .asareh-product-visual img,
  body .asareh-product-visual-main img,
  body .asareh-team-visual img,
  body .asareh-tochal-bridge-media img,
  body .asareh-training-visual img {
    min-height: 280px !important;
  }

  body :where(.asareh-header-cta,
    .asareh-hero-actions a,
    .asareh-static-btn,
    .asareh-about-primary-btn,
    .asareh-product-glass-btn,
    .asareh-product-soft-btn,
    .asareh-product-actions a,
    .asareh-contact-secondary-action,
    .asareh-contact-map-actions a,
    .asareh-tochal-cta a,
    .asareh-static-cta a,
    .asareh-product-cta a,
    .page-bottom-video-content a,
    .kd-footer-social a) {
    min-height: 44px !important;
    padding-right: 18px !important;
    padding-left: 18px !important;
    font-size: 12.5px !important;
  }
}

/* =========================================================
   TOCHAL INNER PAGES | UNIFIED HERO + BOTTOM MEDIA SIZE
   Scope: همه صفحات داخلی به‌جز index.html
   کار انجام‌شده:
   1) یکسان‌سازی ارتفاع هدر صفحات داخلی
   2) یکسان‌سازی ارتفاع تصویر/ویدئوی بالای فوتر
   نکته: این Patch فقط اندازه و ارتفاع را کنترل می‌کند.
   ========================================================= */

:root {
  --asareh-inner-hero-unified-height: 840px;
  --asareh-inner-hero-unified-height-tablet: 720px;
  --asareh-inner-hero-unified-height-mobile: 645px;

  --asareh-bottom-media-unified-height: clamp(520px, 46vw, 720px);
  --asareh-bottom-media-unified-height-mobile: 460px;
}

/* Header | همه صفحات داخلی، بجز صفحه ایندکس */
html body:not(.asareh-index-page) > header.inner-hero-header.inner-hero-header.inner-hero-tochal.inner-hero-tochal.asareh-inner-hero.asareh-inner-hero {
  position: relative !important;
  width: 100% !important;
  height: var(--asareh-inner-hero-unified-height) !important;
  min-height: var(--asareh-inner-hero-unified-height) !important;
  max-height: var(--asareh-inner-hero-unified-height) !important;
  overflow: hidden !important;
}

html body:not(.asareh-index-page) > header.inner-hero-header.inner-hero-header.inner-hero-tochal.inner-hero-tochal.asareh-inner-hero.asareh-inner-hero .inner-hero-bg {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 100% !important;
  max-height: none !important;
  background-size: cover !important;
  background-position: center center !important;
}

html body:not(.asareh-index-page) > header.inner-hero-header.inner-hero-header.inner-hero-tochal.inner-hero-tochal.asareh-inner-hero.asareh-inner-hero .inner-hero-bg img,
html body:not(.asareh-index-page) > header.inner-hero-header.inner-hero-header.inner-hero-tochal.inner-hero-tochal.asareh-inner-hero.asareh-inner-hero .inner-hero-bg video {
  width: 100% !important;
  height: 100% !important;
  min-height: 100% !important;
  max-height: none !important;
  object-fit: cover !important;
  object-position: center center !important;
}

/* Bottom visual | تصویر و ویدئوی بالای فوتر همه صفحات داخلی */
html body:not(.asareh-index-page) main.inner-page.inner-page section.page-bottom-video.page-bottom-video {
  position: relative !important;
  isolation: isolate !important;
  width: 100% !important;
  max-width: 100% !important;
  height: var(--asareh-bottom-media-unified-height) !important;
  min-height: var(--asareh-bottom-media-unified-height) !important;
  max-height: var(--asareh-bottom-media-unified-height) !important;
  display: block !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  background: #111111 !important;
}

html body:not(.asareh-index-page) main.inner-page.inner-page section.page-bottom-video.page-bottom-video > img.page-bottom-video-media.page-bottom-video-media,
html body:not(.asareh-index-page) main.inner-page.inner-page section.page-bottom-video.page-bottom-video > video.page-bottom-video-media.page-bottom-video-media,
html body:not(.asareh-index-page) main.inner-page.inner-page section.page-bottom-video.page-bottom-video .page-bottom-video-media.page-bottom-video-media {
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  width: 100% !important;
  max-width: none !important;
  height: 100% !important;
  min-height: 100% !important;
  max-height: none !important;
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  object-fit: cover !important;
  object-position: center center !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
}

html body:not(.asareh-index-page) main.inner-page.inner-page section.page-bottom-video.page-bottom-video .page-bottom-video-overlay.page-bottom-video-overlay {
  position: absolute !important;
  inset: 0 !important;
  z-index: 2 !important;
  width: 100% !important;
  height: 100% !important;
}

html body:not(.asareh-index-page) main.inner-page.inner-page section.page-bottom-video.page-bottom-video .page-bottom-video-content.page-bottom-video-content {
  position: absolute !important;
  inset: 0 !important;
  z-index: 3 !important;
  width: 100% !important;
  height: 100% !important;
}

@media (max-width: 980px) {
  html body:not(.asareh-index-page) > header.inner-hero-header.inner-hero-header.inner-hero-tochal.inner-hero-tochal.asareh-inner-hero.asareh-inner-hero {
    height: var(--asareh-inner-hero-unified-height-tablet) !important;
    min-height: var(--asareh-inner-hero-unified-height-tablet) !important;
    max-height: var(--asareh-inner-hero-unified-height-tablet) !important;
  }
}

@media (max-width: 640px) {
  html body:not(.asareh-index-page) > header.inner-hero-header.inner-hero-header.inner-hero-tochal.inner-hero-tochal.asareh-inner-hero.asareh-inner-hero {
    height: var(--asareh-inner-hero-unified-height-mobile) !important;
    min-height: var(--asareh-inner-hero-unified-height-mobile) !important;
    max-height: var(--asareh-inner-hero-unified-height-mobile) !important;
  }

  html body:not(.asareh-index-page) main.inner-page.inner-page section.page-bottom-video.page-bottom-video {
    height: var(--asareh-bottom-media-unified-height-mobile) !important;
    min-height: var(--asareh-bottom-media-unified-height-mobile) !important;
    max-height: var(--asareh-bottom-media-unified-height-mobile) !important;
  }
}
