/* ICR brand system: navy and white foundation, orange identity, red emergencies. */
:root{
  --icr-orange:#ff5a00;
  --icr-orange-dark:#b43b00;
  --icr-navy:#102b43;
  --icr-ink:#102b43;
  --icr-black:#090b0d;
  --icr-paper:#ffffff;
  --icr-mist:#eef3f6;
  --icr-line:#cbd7df;
  --icr-emergency:#c51635;
}

body{background:var(--icr-paper);color:var(--icr-ink)}
#main-content :where(h1,h2){font-family:'Barlow Condensed','Arial Narrow',Inter,Arial,sans-serif;letter-spacing:-.02em}
#main-content :where(h1,h2,h3){color:var(--icr-ink);text-wrap:balance}
#main-content .eyebrow{color:var(--icr-orange);font-weight:800;letter-spacing:.13em}

.site-header{background:#fff;border-bottom:3px solid var(--icr-orange);box-shadow:0 8px 24px #0b263915}
.header-inner{min-height:94px}
.brand{gap:13px}
.brand-logo{display:block;width:70px;height:70px;object-fit:contain;flex:0 0 auto}
.brand-words{font-weight:800;color:var(--icr-navy);letter-spacing:.02em}
.brand-words>span{color:#536a7b;letter-spacing:.045em}
.header-inner nav a{font-weight:700;text-underline-offset:8px}
.header-inner nav a[aria-current]{color:var(--icr-orange-dark);text-decoration-color:var(--icr-orange)}
.header-call{background:var(--icr-navy);border-bottom:3px solid var(--icr-orange)}
.header-call:hover{background:#173d5b}
.menu-toggle{border:1px solid #bfccd5;border-bottom:3px solid var(--icr-orange);border-radius:2px}

#main-content .button:not(.emergency-button){background:var(--icr-navy);border-bottom:3px solid var(--icr-orange);border-radius:2px}
#main-content .button:not(.emergency-button):hover{background:#173e5d}
#main-content .emergency-button{background:var(--icr-emergency);border-bottom:3px solid #8f0e25}
#main-content :where(.text-link,.minor-link,.equipment-call,.hero-secondary,.sx-secondary,.sx-call-link,.lx-text-link,.core-secondary){color:var(--icr-orange-dark)}

.crew-alert{background:var(--icr-emergency)}
.crew-hero{border-bottom:6px solid var(--icr-orange)}
.crew-hero-copy{position:relative;background:linear-gradient(145deg,#fff 20%,#eef3f6)}
.crew-hero-copy:before{content:"";width:72px;height:6px;background:var(--icr-orange);margin-bottom:24px}
.crew-hero-copy h1{color:var(--icr-navy)}
.crew-hero-main:after{content:"";position:absolute;inset:0;border:1px solid #ffffff55;pointer-events:none}
.crew-hero-inset{border:5px solid #fff;box-shadow:12px 12px 0 var(--icr-orange)}

#main-content :where(.section-heading,.sx-heading,.core-heading):before{
  content:"";display:block;width:54px;height:5px;background:var(--icr-orange);margin:0 auto 20px;
}

.home-crew .precision-directory{padding-top:86px}
body.home-crew #main-content .precision-directory .repair-entry:nth-child(n){border:1px solid var(--icr-line);border-top:5px solid var(--icr-orange)}
body.home-crew #main-content .precision-directory .repair-entry:nth-child(n):hover{transform:translateY(-3px);box-shadow:0 14px 28px #0e2b4117}
.home-crew .system-links{border-color:var(--icr-orange)}
.home-crew .system-links:before{color:var(--icr-orange-dark)}
.home-crew .precision-hose-feature{background:var(--icr-navy);border-top:6px solid var(--icr-orange)}
.home-crew .hose-feature-copy h2,.home-crew .hose-feature-copy p{color:#fff}
.home-crew .hose-feature-copy:before{background:var(--icr-orange)}
.home-crew .repair-next-steps li{border-color:#d1dce3}
.home-crew .repair-next-steps li:before{color:var(--icr-orange)}
.home-crew .precision-local{background:linear-gradient(135deg,#edf3f6,#fff);border-block:1px solid var(--icr-line)}
.home-crew .community-links a{border-bottom-color:var(--icr-orange)}
.home-crew .questions-band{background:#fff}

/* Shared inner-page silhouette. */
#main-content :where(.page-intro,.core-opening,.sx-hero,.lx-hero,.contact-opening,.emergency-opening){
  background:linear-gradient(145deg,#fff 15%,#edf3f6);border-bottom:6px solid var(--icr-orange);border-radius:0;
}
#main-content :where(.page-intro,.core-opening,.sx-hero,.lx-hero,.contact-opening,.emergency-opening) h1{color:var(--icr-navy)}
#main-content :where(.surface-dark,.contact-opening,.emergency-opening,.local-opening) :where(h1,h2,h3,p,address,.lead){color:var(--icr-navy)}
#main-content :where(.breadcrumbs,.breadcrumbs a){color:#536a7b}

.service-experience.sx .sx-hero{background:linear-gradient(145deg,#fff,#edf3f6)}
.service-experience.sx .sx-photo,
.local-experience.lx-page .lx-photo,
.core-experience .core-photo{border-radius:2px!important}
.service-experience.sx .sx-hero-photo,
.local-experience.lx-page .lx-hero-photo,
.core-experience .core-featured .core-photo{box-shadow:12px 12px 0 var(--icr-orange)!important}
.service-experience.sx .sx-shop-line,
.local-experience.lx-page .lx-shop-line{background:var(--icr-navy);color:#fff;border-bottom:4px solid var(--icr-orange)}
.service-experience.sx .sx-shop-line :where(a,address,span),
.local-experience.lx-page .lx-shop-line :where(a,address,span){color:#fff}

#main-content :where(.service-card,.area-cards>a,.sx-problems article,.sx-options-grid article,
  .lx-service-list article,.lx-focus-notes article,.decision-grid article,.symptom-grid article,
  .core-service-link,.core-call-note,.call-prep,.contact-card){
  border-radius:2px!important;border-color:var(--icr-line);background:#fff;
}
#main-content :where(.service-card,.area-cards>a,.sx-problems article,.sx-options-grid article,
  .lx-service-list article,.lx-focus-notes article,.decision-grid article,.symptom-grid article){
  border-top:4px solid var(--icr-orange)!important;
}

#main-content :where(.sx-options,.sx-focus,.lx-repairs,.lx-planning,.core-systems,.core-nearby-band,
  .core-about-shop,.core-guide-next,.contact-map-band,.service-arrange,.local-services){
  background:linear-gradient(145deg,#eef3f6,#fff);border-radius:2px!important;border-top:6px solid var(--icr-orange);
}

#main-content :where(.sx-number,.lx-number,.core-editorial-number,.service-number,.index){color:var(--icr-orange-dark)}
#main-content :where(.sx-jump,.core-topic-nav,.core-guide-nav){border-color:var(--icr-line)}
#main-content :where(.sx-jump a,.core-topic-nav a){border-bottom:2px solid var(--icr-orange)}

.questions-band,.service-experience.sx .sx-faq,.local-experience.lx-page .lx-questions{
  background:#fff;border-radius:0!important;border-top:1px solid var(--icr-line);
}
.faq-list details{border-color:var(--icr-line)}
.faq-list summary>span:last-child{color:var(--icr-orange-dark)}

.callout-banner,.closing,.core-end{
  background:var(--icr-navy)!important;border-radius:0!important;border-top:7px solid var(--icr-orange)!important;
}
.callout-banner :where(h2,p,.eyebrow,.text-link,.call-caption),
.closing :where(h2,p,.eyebrow,.call-caption),.core-end :where(h2,p,.eyebrow,.core-secondary){color:#fff!important}
.callout-banner .button,.closing .button,.core-end .button{background:var(--icr-emergency)!important;border-bottom-color:#8f0e25!important}

.site-footer{background:var(--icr-black)!important;color:#e8edf0!important;border-top:7px solid var(--icr-orange)!important}
.site-footer .brand{color:#fff}
.site-footer .brand-logo{width:132px;height:132px;margin:0 auto 18px}
.site-footer .brand-words{display:none}
.site-footer h2{color:#fff!important;border-bottom:2px solid var(--icr-orange);width:fit-content;margin-inline:auto;padding-bottom:8px}
.site-footer :where(p,address,a,span,dt,dd){color:#d4dde3!important}
.site-footer .footer-phone{color:#fff!important;background:#161b20;border-bottom:3px solid var(--icr-orange);padding:13px 18px!important;width:fit-content;margin-inline:auto}
.site-footer .footer-social{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin:18px auto 8px}.site-footer .footer-social a{display:inline-flex;align-items:center;min-height:42px;padding:8px 12px;border:1px solid #ffffff42;border-bottom:3px solid var(--icr-orange);color:#fff!important;font-weight:700;text-decoration:none}.site-footer .footer-social a:hover{background:#ffffff12}
.site-footer .footer-bottom{border-color:#343b40}

@media(max-width:850px){
  .header-inner{min-height:84px}.brand-logo{width:62px;height:62px}
  .header-inner nav.open{border-bottom:4px solid var(--icr-orange)}
}

@media(max-width:600px){
  .site-header{border-bottom-width:3px}.header-inner{min-height:78px}.brand-logo{width:54px;height:54px}
  .brand-words{font-size:11px}.brand-words>span{font-size:8px}
  .crew-hero-copy:before{width:52px;height:5px;margin-bottom:19px}
  .crew-hero-inset{box-shadow:7px 7px 0 var(--icr-orange)}
  .service-experience.sx .sx-hero-photo,.local-experience.lx-page .lx-hero-photo,
  .core-experience .core-featured .core-photo{box-shadow:7px 7px 0 var(--icr-orange)!important}
  .site-footer .brand-logo{width:118px;height:118px}
}

@media(forced-colors:active){
  .site-header,#main-content :where(.page-intro,.core-opening,.sx-hero,.lx-hero){border-color:ButtonText}
}
