/* A1 Representatives page — visual match to the approved reference screens. */
.representatives-body{--rep-shell:1280px;--rep-page:#eef2f6;--rep-surface:#fff;--rep-soft:#f4f7fb;--rep-line:#dce4ef;--rep-ink:#071b54;--rep-muted:#60708c;--rep-navy:#000257;--rep-orange:#f37024;background:var(--rep-page);color:var(--rep-ink);font-family:Peyda,Tahoma,sans-serif;}

/* Keep the existing site header, but use the same compact proportions as the reference page. */
body:has(.representatives-body) .site-header{height:75px;padding-inline:max(24px,calc((100% - var(--rep-shell))/2));}
body:has(.representatives-body) .header-cta{display:none!important;}
body:has(.representatives-body) .header-actions{margin-left:0;gap:10px;}
body:has(.representatives-body) .desktop-nav{gap:22px;}

.representatives-body .shell{width:min(var(--rep-shell),calc(100% - 32px));}
.representatives-body .representatives-hero{height:155px;}
.representatives-body .representatives-hero .hero-inner{width:min(var(--rep-shell),calc(100% - 32px));margin-inline:auto;align-items:flex-start;justify-content:center;text-align:right;direction:rtl;}
.representatives-body .representatives-hero .hero-inner>*{align-self:flex-start;width:auto;}
.representatives-body .representatives-hero .crumbs{font-size:.78rem;color:#dce5f0;margin-bottom:3px;}
.representatives-body .representatives-hero h1{margin:2px 0 5px;font-size:1.75rem;line-height:1.35;}
.representatives-body .representatives-hero p{margin:0;font-size:.82rem;color:#dbe4ef;}
.representatives-body .representatives-hero .representative-search{width:430px;height:38px;margin-top:9px;padding:0 13px;border:1px solid #435777;background:#111d32;border-radius:6px;box-shadow:none;}
.representatives-body .representatives-hero .representative-search-input{font-size:.78rem;color:#f4f7ff;}
.representatives-body .representatives-hero .representative-search-input::placeholder{color:#b8c5d7;}
.representatives-body .representatives-hero .search-icon{width:15px;height:15px;border-width:1.7px;margin-right:6px;}
.representatives-body .representatives-hero .search-icon:after{width:6px;height:1.7px;left:-4px;bottom:-2px;background:currentColor;}

.representatives-body .representatives-page{padding:21px 0 42px;background:var(--rep-page);}
.representatives-body .representatives-shell{width:min(var(--rep-shell),calc(100% - 32px));padding:28px 28px 30px;border:1px solid var(--rep-line);border-radius:10px;background:var(--rep-surface);}
.representatives-body .representatives-intro{margin-bottom:18px;gap:18px;align-items:center;}
.representatives-body .representatives-intro h2{font-size:1.35rem;line-height:1.45;}
.representatives-body .representatives-intro p{max-width:610px;margin-top:4px;font-size:.72rem;line-height:1.8;}
.representatives-body .network-count{min-height:30px;padding:0 10px;border-radius:6px;font-size:.66rem;}
.representatives-body .network-count b{font-size:1rem;}

.representatives-body .locator-card{direction:ltr;grid-template-columns:minmax(0,1fr) 270px;gap:14px;padding:12px;border-radius:9px;background:var(--rep-soft);}
.representatives-body .map-panel{order:1;height:430px;padding:9px 11px 8px;border-radius:8px;background:var(--rep-surface);}
.representatives-body .province-control{order:2;direction:rtl;display:flex;flex-direction:row;align-items:flex-start;gap:10px;padding:14px;border-radius:8px;background:var(--rep-surface);}
.representatives-body .control-icon{order:1;width:42px;height:42px;flex:0 0 42px;border-radius:8px;transition:border-color .2s ease,background .2s ease,color .2s ease,box-shadow .2s ease;}
.representatives-body .province-select-wrap{order:2;flex:1;min-width:0;}
.representatives-body .province-select-wrap select{width:100%;height:42px;padding:0 12px;font-size:.82rem;border-radius:7px;cursor:pointer;transition:border-color .2s ease,background .2s ease,box-shadow .2s ease,color .2s ease;}
.representatives-body .province-select-wrap select:hover,.representatives-body .province-select-wrap select:focus{border-color:var(--rep-orange);box-shadow:0 0 0 3px rgba(243,112,36,.12);outline:none;}
.representatives-body .province-control:has(select:hover) .control-icon,.representatives-body .province-control:has(select:focus) .control-icon{border-color:var(--rep-orange);color:var(--rep-orange);background:#fff8f3;}
.representatives-body #iran-map{height:390px;}
.representatives-body .map-legend{gap:16px;padding-top:4px;font-size:.58rem;}
.representatives-body .map-legend i{width:9px;height:9px;}

.representatives-body .province-directory{margin-top:18px;padding-top:17px;}
.representatives-body .province-directory-head{margin-bottom:10px;}
.representatives-body .province-directory-head h2{font-size:1.08rem;}
.representatives-body .province-directory-head p{font-size:.66rem;margin-top:2px;}
.representatives-body .province-accordion-row{gap:6px;}
.representatives-body .province-accordion-item{border-radius:6px;}
.representatives-body .province-toggle{min-height:32px;padding:5px 8px;font-size:.68rem;}
.representatives-body .province-toggle .province-chevron{width:20px;height:20px;flex-basis:20px;border-radius:5px;}
.representatives-body .province-toggle .province-chevron svg{width:11px;height:11px;}
.representatives-body .province-panel{padding:9px;border-radius:7px;}
.representatives-body .dealer-entry{border-radius:6px;}
.representatives-body .dealer-field{padding:9px 10px;gap:7px;}
.representatives-body .dealer-field svg{width:16px;height:16px;flex-basis:16px;}
.representatives-body .dealer-field b{font-size:.7rem;}
.representatives-body .dealer-field small{font-size:.6rem;}

.representatives-body .agency-cta{grid-template-columns:42px 1fr auto;gap:12px;margin-top:21px;padding:14px;border-radius:7px;}
.representatives-body .agency-icon{width:42px;height:42px;border-radius:7px;}
.representatives-body .agency-icon svg{width:21px;height:21px;}
.representatives-body .agency-cta h2{font-size:.98rem;}
.representatives-body .agency-cta p{font-size:.65rem;margin-top:2px;}
.representatives-body .agency-button{min-height:34px;padding:0 16px;border-radius:6px;font-size:.68rem;}

[data-theme=dark] .representatives-body{--rep-page:#07101f;--rep-surface:#111c30;--rep-soft:#1a2941;--rep-line:#465875;--rep-ink:#f3f6ff;--rep-muted:#bcc8dc;--rep-navy:#a8b9ff;}
[data-theme=dark] .representatives-body .representatives-shell{box-shadow:none;}
[data-theme=dark] .representatives-body .map-panel,[data-theme=dark] .representatives-body .province-control{background:#111c30;}
[data-theme=dark] .representatives-body .locator-card{background:#1a2941;}
[data-theme=dark] .representatives-body .province-select-wrap select{background:#111c30;color:#f3f6ff;border-color:#536784;}
[data-theme=dark] .representatives-body .province-toggle{color:#f3f6ff;}
[data-theme=dark] .representatives-body .province-toggle:hover,[data-theme=dark] .representatives-body .province-toggle:focus-visible{background:#16243a;color:#c7d2ff;}
[data-theme=dark] .representatives-body .agency-cta{background:#111c30;}

@media(max-width:980px){
  body:has(.representatives-body) .site-header{padding-inline:20px;}
  .representatives-body .representatives-shell{padding:24px;}
  .representatives-body .locator-card{grid-template-columns:minmax(0,1fr) 240px;}
}
@media(max-width:820px){
  .representatives-body .representatives-hero{height:190px;}
  .representatives-body .representatives-hero .representative-search{width:min(430px,100%);}
  .representatives-body .representatives-shell{width:calc(100% - 20px);padding:20px 16px 24px;}
  .representatives-body .locator-card{grid-template-columns:1fr;direction:rtl;}
  .representatives-body .province-control{order:1;}
  .representatives-body .map-panel{order:2;height:340px;}
  .representatives-body #iran-map{height:305px;}
  .representatives-body .province-accordion-row{grid-template-columns:repeat(2,minmax(0,1fr));}
  .representatives-body .agency-cta{grid-template-columns:42px 1fr;}
  .representatives-body .agency-button{grid-column:1/-1;}
}
@media(max-width:560px){
  .representatives-body .representatives-hero{height:205px;}
  .representatives-body .representatives-hero .hero-inner{width:calc(100% - 24px);}
  .representatives-body .representatives-hero .crumbs{display:none;}
  .representatives-body .representatives-hero h1{font-size:1.45rem;}
  .representatives-body .representatives-hero p{font-size:.72rem;}
  .representatives-body .representatives-shell{width:calc(100% - 14px);padding:18px 12px 22px;}
  .representatives-body .representatives-intro{align-items:flex-start;flex-direction:column;}
  .representatives-body .network-count{width:100%;justify-content:center;}
  .representatives-body .map-panel{height:300px;}
  .representatives-body #iran-map{height:265px;}
  .representatives-body .province-accordion-row{grid-template-columns:1fr;}
}

/* Province interaction refinement: text-only hover + orange active/open state */
.representatives-body .province-toggle:hover,
.representatives-body .province-toggle:focus-visible{
  background:transparent;
  color:var(--ink);
  outline:none;
}

.representatives-body .province-toggle > span:first-child{
  transition:color .18s ease;
}

.representatives-body .province-toggle > span:first-child:hover{
  color:#f36b21;
}

.representatives-body .province-accordion-item.is-open{
  border-color:#f36b21;
  box-shadow:0 8px 22px rgba(243,107,33,.10);
}

.representatives-body .province-accordion-item.is-open .province-toggle{
  background:transparent;
  color:#f36b21;
}

.representatives-body .province-accordion-item.is-open .province-chevron{
  border-color:#f36b21;
  color:#f36b21;
}

[data-theme=dark] .representatives-body .province-toggle:hover,
[data-theme=dark] .representatives-body .province-toggle:focus-visible{
  background:transparent;
  color:#f3f6ff;
}

[data-theme=dark] .representatives-body .province-toggle > span:first-child:hover,
[data-theme=dark] .representatives-body .province-accordion-item.is-open .province-toggle,
[data-theme=dark] .representatives-body .province-accordion-item.is-open .province-chevron{
  color:#ff8a3d;
}

[data-theme=dark] .representatives-body .province-accordion-item.is-open{
  border-color:#ff8a3d;
  box-shadow:0 8px 22px rgba(255,138,61,.12);
}

/* Dealer information: text-only orange hover. Keep dealer cards/fields unchanged. */
.representatives-body .dealer-field b,
.representatives-body .dealer-field small,
.representatives-body .dealer-field a,
.representatives-body .dealer-field strong,
.representatives-body .dealer-field span {
  transition: color .18s ease;
}

.representatives-body .dealer-field b:hover,
.representatives-body .dealer-field small:hover,
.representatives-body .dealer-field a:hover,
.representatives-body .dealer-field strong:hover,
.representatives-body .dealer-field span:hover {
  color: #f36b21 !important;
}

/* Keep the card itself and its background/border unchanged on hover. */
.representatives-body .dealer-entry:hover,
.representatives-body .dealer-field:hover {
  background: inherit;
  border-color: inherit;
  box-shadow: none;
}

[data-theme=dark] .representatives-body .dealer-field b:hover,
[data-theme=dark] .representatives-body .dealer-field small:hover,
[data-theme=dark] .representatives-body .dealer-field a:hover,
[data-theme=dark] .representatives-body .dealer-field strong:hover,
[data-theme=dark] .representatives-body .dealer-field span:hover {
  color: #ff8a3d !important;
}
