#nav .theme-switch-row {
  display:flex;
  flex:0 0 auto;
  order:3;
  direction:ltr;
  margin-right:16px
}
#nav .theme-switch {
  display:inline-flex;
  align-items:center;
  gap:4px;
  padding:4px;
  border-radius:50px;
  background:#edf2f8;
  border:1px solid #ced8e6;
  box-shadow:0 2px 8px #00000012
}
#nav .theme-switch button {
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  cursor:pointer;
  border:0;
  border-radius:50%;
  background:transparent;
  color:#6b798e;
  transition:background .2s,color .2s;
   padding:6px
}
#nav .theme-switch button[aria-pressed="true"] {
  background:#fff;
  color:#168aff;
  box-shadow:0 2px 7px #00000020
}
#nav .theme-switch button:focus-visible {
  outline:2px solid #168aff;
  outline-offset:3px
}
#nav .theme-switch svg {
  width:22px;
  height:22px;
  display:block
}
html[data-site-theme="dark"] #nav .theme-switch {
  background:#090b0f;
  border-color:#303640
}
html[data-site-theme="dark"] #nav .theme-switch button {
  color:#828996
}
html[data-site-theme="dark"] #nav .theme-switch button[aria-pressed="true"] {
  background:#262b33;
  color:#fff;
  box-shadow:0 2px 8px #0008
}
/* Keep the theme control on the left, inside the existing navbar row. */
#nav>.container {
  flex-wrap:wrap
}
#nav .navbar-brand {
  order:0;
  flex-shrink:0
}
#nav .navbar-collapse {
  order:2;
  min-width:0
}
#nav .navbar-toggler {
  order:1;
  margin-right:auto
}
@media(min-width:992px) {
  #nav>.container {
    flex-wrap:nowrap
  }
  #nav .navbar-collapse {
    flex:1
  }
  #nav .theme-switch-row {
    margin-right:12px
  }
}
@media(max-width:991px) {
  #nav .navbar-collapse {
    order:4;
    width:100%;
    flex-basis:100%
  }
  #nav .theme-switch-row {
    margin-right:8px
  }
  #nav .theme-switch button {
    width:30px;
    height:30px
  }
  #nav .theme-switch {
    padding:3px;
    gap:2px
  }
}
/* Identical title geometry in both themes; theme styles still control colors. */
html body #hero .col-lg-5 {
  width:58%;
  flex:0 0 58%
}
html body #hero .htitle {
  font-size:clamp(58px,6.5vw,98px);
  line-height:1.3;
  width:100%;
  margin-bottom:28px
}
html body #hero .htitle .hero-company-line {
  display:block;
  font-size:.86em;
  line-height:1.45
}
html body #hero .htitle .hero-company-name {
  display:inline-block;
  font-size:1.43em;
  line-height:1.3;
  margin-top:10px;
  padding:0 .04em
}
html body #hero .hero-title-break {
  display:none
}
@media(max-width:991px) {
  html body #hero .col-lg-5 {
    width:70%;
    flex-basis:70%
  }
  html body #hero .htitle {
    font-size:clamp(48px,7vw,74px)
  }
}
@media(max-width:767px) {
  html body #hero .col-lg-5 {
    width:100%;
    flex-basis:100%
  }
  html body #hero .htitle {
    font-size:clamp(36px,8vw,58px)
  }
  html body #hero .htitle .hero-company-name {
    font-size:1.32em
  }
}
/* Shared banner geometry: changing theme only changes color and opacity. */
html body :is(.catalog-hero,.board-hero,.branch-hero,.faq-hero,.coop-hero,.news-hero,.contact-intro) {
  min-height:340px!important;
  padding-top:65px!important;
  padding-bottom:65px!important;
  display:flex!important;
  align-items:center!important
}
html body :is(.catalog-hero,.board-hero,.branch-hero,.faq-hero,.coop-hero,.news-hero,.contact-intro) :is(h1,p) {
  max-width:49%!important
}
html body :is(.catalog-hero,.board-hero,.branch-hero,.faq-hero,.coop-hero,.news-hero,.contact-intro)>.page-banner-art {
  inset:0 auto 0 7%!important;
  width:80%!important;
  height:100%!important;
  background-position:center!important;
  background-size:cover!important
}
html body .about-hero .hero-img {
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  overflow:visible
}
html body .about-hero .hero-img>img {
  position:relative;
  left:25px;
  mask-image:linear-gradient(to right,transparent,#000 18%,#000 82%,transparent);
  -webkit-mask-image:linear-gradient(to right,transparent,#000 18%,#000 82%,transparent)
}
@media(max-width:991px) {
  html body :is(.catalog-hero,.board-hero,.branch-hero,.faq-hero,.coop-hero,.news-hero,.contact-intro)>.page-banner-art {
    left:3%!important;
    width:94%!important
  }
  html body :is(.catalog-hero,.board-hero,.branch-hero,.faq-hero,.coop-hero,.news-hero,.contact-intro) :is(h1,p) {
    max-width:60%!important
  }
}
@media(max-width:767px) {
  html body :is(.catalog-hero,.board-hero,.branch-hero,.faq-hero,.coop-hero,.news-hero,.contact-intro) {
    min-height:280px!important;
    padding-top:44px!important;
    padding-bottom:44px!important
  }
  html body :is(.catalog-hero,.board-hero,.branch-hero,.faq-hero,.coop-hero,.news-hero,.contact-intro)>.page-banner-art {
    left:-12%!important;
    width:135%!important
  }
  html body :is(.catalog-hero,.board-hero,.branch-hero,.faq-hero,.coop-hero,.news-hero,.contact-intro) :is(h1,p) {
    max-width:100%!important
  }
  html body .about-hero .hero-img>img {
    left:0
  }
}
/* Match dropdown button typography and alignment to adjacent header links. */
html body #nav .navbar-nav>.nav-item>.nav-link {
  font-family:IRanSansX,sans-serif!important;
  font-size:.87rem!important;
  font-weight:500!important;
  line-height:1.5!important;
  padding:26px 13px!important;
  box-sizing:border-box;
  white-space:nowrap
}
html body #nav .navbar-nav>.nav-item>button.artamehr-menu-toggle {
  margin:0;
  border:0;
  vertical-align:middle;
  border-radius:0;
  appearance:none
}
@media(min-width:992px) {
  html body #nav .navbar-nav {
    align-items:center
  }
  html body #nav .navbar-nav>.nav-item>.nav-link {
    display:flex;
    align-items:center
  }
}

/* Footer logo uses one image, never an absolutely positioned duplicate. */
html body footer .footer-brand-link{position:static!important;display:inline-flex!important;align-items:center;max-width:100%;transform:none!important;}
html body footer img.footer-brand-image{position:static!important;display:block!important;width:180px!important;height:auto!important;max-width:100%!important;object-fit:contain;filter:brightness(0) invert(1)!important;transform:none!important;margin:0!important;clip-path:none!important;}
html body footer .row>.col-lg-4:first-child{position:relative;}
@media(max-width:767px){
 html body footer .row>.col-lg-4:first-child{display:flex;flex-direction:column;align-items:center;text-align:center;}
 html body footer .footer-brand-link{align-self:center;margin:0 0 12px;}
 html body footer .fdesc{width:100%;margin-top:8px;}
 html body footer .fsoc{display:flex;justify-content:center;flex-wrap:wrap;}
}

/* Footer navigation adjustment applies only on phones. */
@media(max-width:767px){
 html body footer .row>.footer-nav-column{text-align:center!important;position:relative;left:-10px;min-width:0;}
 html body footer .footer-nav-column .flinks{padding:0!important;margin-right:0!important;margin-left:0!important;}
 html body footer .footer-nav-column .ftit{margin-left:auto;margin-right:auto;}
}

@media(max-width:767px){
 html body footer>.container>.row{display:flex!important;flex-wrap:wrap!important;}
 html body footer>.container>.row>.footer-nav-column{flex:0 0 50%!important;width:50%!important;max-width:50%!important;text-align:center!important;left:-10px!important;}
 html body footer>.container>.row>.col-lg-4{flex:0 0 100%!important;width:100%!important;max-width:100%!important;}
}

/* Homepage contact form inherited absolute positioning from hero floating cards. */
@media(max-width:991px){
 html body #contact-section .fcard{position:relative!important;inset:auto!important;display:block!important;width:100%!important;height:auto!important;transform:none!important;animation:none!important;box-sizing:border-box;}
 html body #contact-section .fcard>.row{width:auto;}
}

/* Three photograph slideshow; consistent layout in both themes. */
html body #hero{background-image:none!important;isolation:isolate;}
html body #hero>.hero-slideshow{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden;}
html body #hero .hero-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;opacity:0;transition:opacity 1.2s ease;}
html body #hero .hero-slide.is-active{opacity:1;}
html body #hero>.hero-video-shade{position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(to left,rgba(255,255,255,.93),rgba(255,255,255,.72) 35%,rgba(255,255,255,.06) 75%);}
html[data-site-theme="dark"] body #hero>.hero-video-shade{background:linear-gradient(to left,rgba(16,17,18,.94),rgba(16,17,18,.76) 35%,rgba(16,17,18,.15) 75%);}
html body #hero>.container{position:relative;z-index:2;}
@media(prefers-reduced-motion:reduce){html body #hero .hero-slide{transition:none;}}

/* Lift the province itself instead of drawing a rectangular focus outline. */
html body .branch-map path[data-province] {
  outline:none!important;
  transform-box:fill-box;
  transform-origin:center;
  transition:fill .2s,transform .25s ease,filter .25s ease;
}
html body .branch-map path[data-province][aria-pressed="true"] {
  transform:translateY(-5px) scale(1.08);
  stroke:#fff!important;
  stroke-width:2.5;
  filter:drop-shadow(0 5px 4px rgba(0,0,0,.35));
}
html body .branch-map path[data-province]:focus-visible {
  outline:none!important;
  stroke:#168aff!important;
  stroke-width:3.5;
}
@media (prefers-reduced-motion:reduce) {
  html body .branch-map path[data-province] { transition:none; }
}
