.rn-v281-header-shell{--deep:#0B4F5C;--teal:#087B87;--orange:#CC3F0A;--graphite:#30363B;--light:#F7FAFA;--line:#dce7e9;--shadow:0 16px 36px rgba(11,79,92,.16)}
.rn-v281-header-shell *{box-sizing:border-box}
.rn-v281-header-shell,.rn-v281-header-shell{margin:0;background:#fff;color:var(--graphite);font-family:"Source Sans 3","Segoe UI",Arial,sans-serif}
.rn-v281-header-shell a{color:inherit}
.rn-v281-header-shell button{font:inherit}
.rn-v281-header-shell .wrap{width:min(1280px,calc(100% - 64px));max-width:1280px;margin:auto}
.rn-v281-header-shell .utility-bar{background:var(--deep);color:#fff;font-size:12px}
.rn-v281-header-shell .utility-inner{min-height:32px;display:flex;align-items:center;justify-content:center;text-align:center;padding:6px 28px}
.rn-v281-header-shell .utility-message{line-height:1.25}
.rn-v281-header-shell .site-header{background:#fff;border-bottom:1px solid var(--line);position:relative;z-index:30}
.rn-v281-header-shell .nav-row{height:76px;display:flex;align-items:center;gap:18px;padding:0 28px}
.rn-v281-header-shell .header-brand-stack{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;flex:0 0 auto;align-self:stretch;padding:6px 0 5px}
.rn-v281-header-shell .brand{display:flex;align-items:center;text-decoration:none;color:var(--deep);font-weight:800;white-space:nowrap;line-height:1}
.rn-v281-header-shell .brand-mark{width:44px;height:31px;object-fit:contain;display:block}
.rn-v281-header-shell .divider{height:30px;width:1px;background:#b9c9cc;margin:0 12px}
.rn-v281-header-shell .approved-wordmark{font-size:19px;font-weight:800;letter-spacing:-.55px;color:var(--deep)}
.rn-v281-header-shell .approved-wordmark b{color:var(--orange);margin-left:3px}
.rn-v281-header-shell .header-brand-phone{display:flex;align-items:center;margin:4px 0 0 57px;color:var(--deep);text-decoration:none;white-space:nowrap;font-size:12px;line-height:1;font-weight:800;letter-spacing:.01em}
.rn-v281-header-shell .header-brand-phone strong{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px}
.rn-v281-header-shell .desktop-nav{display:flex;align-items:stretch;justify-content:center;gap:15px;flex:1;height:100%}
.rn-v281-header-shell .mega-item{position:relative;display:flex;align-items:center;height:100%}
.rn-v281-header-shell .mega-trigger{border:0;background:transparent;color:var(--deep);font-weight:750;font-size:12px;padding:0 2px;height:100%;display:flex;align-items:center;gap:5px;cursor:pointer;white-space:nowrap;text-decoration:none}
.rn-v281-header-shell .mega-trigger::after{content:"";width:6px;height:6px;border-right:1.5px solid var(--orange);border-bottom:1.5px solid var(--orange);transform:rotate(45deg) translateY(-2px);transform-origin:center}
.rn-v281-header-shell .mega-trigger[aria-expanded="true"]::after{transform:rotate(225deg) translate(-1px,-1px)}
.rn-v281-header-shell .mega-panel{display:none;position:absolute;top:68px;left:50%;transform:translateX(-50%);width:760px;background:#fff;border:1px solid var(--line);border-top:3px solid var(--orange);box-shadow:var(--shadow);padding:0;z-index:80}
.rn-v281-header-shell .mega-item.open .mega-panel{display:block}
.rn-v281-header-shell .mega-panel.two{width:560px}
.rn-v281-header-shell .mega-head{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:15px 20px 13px;background:#fbfdfd;border-bottom:1px solid var(--line)}
.rn-v281-header-shell .mega-head-copy{min-width:0}
.rn-v281-header-shell .mega-head strong{display:block;color:var(--deep);font-size:15px;line-height:1.2;margin-bottom:2px}
.rn-v281-header-shell .mega-head span{display:block;color:#5b747b;font-size:11.5px;line-height:1.35}
.rn-v281-header-shell .mega-head a{flex:0 0 auto;color:var(--deep);font-weight:800;font-size:11.5px;text-decoration:none;white-space:nowrap}
.rn-v281-header-shell .mega-head a:hover,.rn-v281-header-shell .mega-head a:focus{color:var(--orange);text-decoration:underline;text-underline-offset:2px}
.rn-v281-header-shell .mega-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;padding:16px 20px 18px}
.rn-v281-header-shell .mega-panel.two .mega-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.rn-v281-header-shell .mega-col{min-width:0;padding:0 18px}
.rn-v281-header-shell .mega-col:first-child{padding-left:0}
.rn-v281-header-shell .mega-col:last-child{padding-right:0}
.rn-v281-header-shell .mega-col+.mega-col{border-left:1px solid #e5edef}
.rn-v281-header-shell .mega-col h3{margin:0 0 8px;color:var(--deep);font-size:12.5px;line-height:1.2}
.rn-v281-header-shell .mega-col a{display:block;text-decoration:none;color:#315f69;font-size:12px;font-weight:650;padding:6px 0;line-height:1.25}
.rn-v281-header-shell .mega-col a:hover,.rn-v281-header-shell .mega-col a:focus{color:var(--orange);text-decoration:underline;text-underline-offset:2px}
.rn-v281-header-shell .nav-direct{display:flex;align-items:center;color:var(--deep);font-size:12px;font-weight:750;text-decoration:none;white-space:nowrap;padding:0 2px}
.rn-v281-header-shell .nav-direct:hover{color:var(--orange)}
.rn-v281-header-shell .search-btn{border:0;background:transparent;color:var(--orange);padding:8px;cursor:pointer;display:grid;place-items:center}
.rn-v281-header-shell .search-btn svg{width:25px;height:25px;stroke:currentColor;fill:none;stroke-width:2}
.rn-v281-header-shell .menu-btn{display:none;margin-left:auto;border:1px solid #c9dadd;background:#fff;color:var(--deep);border-radius:4px;font-weight:800;padding:8px 11px;cursor:pointer}
.rn-v281-header-shell .mobile-drawer{display:none;position:absolute;left:0;right:0;top:100%;background:#fff;border-bottom:1px solid var(--line);box-shadow:var(--shadow);z-index:90;padding:14px 16px 18px;max-height:calc(100vh - 108px);overflow:auto}
.rn-v281-header-shell .mobile-drawer.open{display:block}
.rn-v281-header-shell .mobile-accordion{border-top:1px solid #e6eef0}
.rn-v281-header-shell .mobile-accordion:first-child{border-top:0}
.rn-v281-header-shell .mobile-accordion>button{width:100%;border:0;background:#fff;color:var(--deep);font-weight:800;font-size:14px;padding:13px 2px;display:flex;justify-content:space-between;align-items:center;cursor:pointer}
.rn-v281-header-shell .mobile-accordion>button span:last-child{color:var(--orange)}
.rn-v281-header-shell .mobile-accordion-panel{display:none;padding:0 0 10px}
.rn-v281-header-shell .mobile-accordion.open .mobile-accordion-panel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 22px}
.rn-v281-header-shell .mobile-group h3{font-size:12px;color:#42656f;margin:0 0 4px}
.rn-v281-header-shell .mobile-group a{display:block;text-decoration:none;color:#315f69;font-size:12px;font-weight:650;padding:5px 0}
.rn-v281-header-shell .mobile-direct{display:block;border-top:1px solid #e6eef0;padding:13px 2px;text-decoration:none;font-size:14px;font-weight:800;color:var(--deep)}
@media (max-width:1250px){.rn-v281-header-shell .desktop-nav{gap:9px}
.rn-v281-header-shell .mega-trigger,.rn-v281-header-shell .nav-direct,.rn-v281-header-shell .search-btn{font-size:11px}
.rn-v281-header-shell .approved-wordmark{font-size:17px}
.rn-v281-header-shell .nav-row{gap:12px}
.rn-v281-header-shell .mega-panel{width:700px}
.rn-v281-header-shell .mega-panel.two{width:540px}}
@media (max-width:980px){.rn-v281-header-shell .wrap{width:min(1280px,calc(100% - 48px));max-width:1280px}
.rn-v281-header-shell .nav-row{height:70px;padding:0}
.rn-v281-header-shell .desktop-nav{display:none}
.rn-v281-header-shell .menu-btn{display:block}
.rn-v281-header-shell .header-brand-phone{margin-left:52px;font-size:11px}
.rn-v281-header-shell .search-btn{margin-left:0}
.rn-v281-header-shell .mobile-drawer{padding-left:24px;padding-right:24px}}
@media (max-width:620px){.rn-v281-header-shell .wrap{width:min(1280px,calc(100% - 32px));max-width:1280px}
.rn-v281-header-shell .utility-inner{padding:7px 12px}
.rn-v281-header-shell .utility-message{font-size:10px}
.rn-v281-header-shell .nav-row{height:66px;gap:8px}
.rn-v281-header-shell .brand-mark{width:39px;height:28px}
.rn-v281-header-shell .divider{height:27px;margin:0 9px}
.rn-v281-header-shell .approved-wordmark{font-size:15px}
.rn-v281-header-shell .header-brand-phone{margin-left:43px;font-size:10.5px}
.rn-v281-header-shell .search-btn{padding:6px}
.rn-v281-header-shell .search-btn svg{width:22px;height:22px}
.rn-v281-header-shell .menu-btn{font-size:12px;padding:7px 9px}
.rn-v281-header-shell .mobile-drawer{padding:10px 14px 16px;max-height:calc(100vh - 105px)}
.rn-v281-header-shell .mobile-accordion.open .mobile-accordion-panel{grid-template-columns:1fr;gap:8px}
.rn-v281-header-shell .mobile-accordion>button,.rn-v281-header-shell .mobile-direct{font-size:13px}}
/* V281 production integration: preserve the approved sticky-header behavior. */
.rn-v281-header-shell{position:sticky;top:0;z-index:100;background:#fff}
.rn-v281-header-shell .site-header{position:relative;z-index:30}
.rn-v281-header-shell .brand-mark{content:none}
.rn-v281-header-shell .header-brand-phone strong{text-decoration:underline;text-underline-offset:2px}
.rn-v281-header-shell .nav-direct.desktop-email{order:90}

/* V281 APPROVED DESKTOP HEADER / MENU LOCK
   Preserve the approved 1280px header container and all existing header content.
   Desktop order remains: brand | primary menu | Email RN | Search.
   Primary menu uses the available responsive width instead of clustering in the center. */
@media (min-width:981px){
  .rn-v281-header-shell .nav-row{
    display:grid;
    grid-template-columns:auto minmax(0,1fr) auto auto;
    align-items:center;
    column-gap:clamp(14px,1.45vw,28px);
  }
  .rn-v281-header-shell .desktop-nav{
    width:100%;
    min-width:0;
    display:flex;
    align-items:stretch;
    justify-content:space-between;
    gap:clamp(8px,1.05vw,22px);
  }
  .rn-v281-header-shell .desktop-nav .mega-item{
    flex:0 0 auto;
  }
  .rn-v281-header-shell .nav-direct.desktop-email{
    order:initial;
    margin:0;
    justify-self:start;
  }
  .rn-v281-header-shell .search-btn{
    margin:0;
    justify-self:end;
  }
}
@media (min-width:981px) and (max-width:1250px){
  .rn-v281-header-shell .nav-row{column-gap:clamp(9px,1vw,14px)}
  .rn-v281-header-shell .desktop-nav{gap:clamp(5px,.65vw,9px)}
}


/* V281 RELIABILITY HARDENING — reliability over novelty. */
/* Desktop menu remains usable without JavaScript. */
@media (min-width:981px){
  .rn-v281-header-shell .mega-item:hover .mega-panel,
  .rn-v281-header-shell .mega-item:focus-within .mega-panel{display:block}
}
/* Mobile navigation uses native HTML details/summary; no JavaScript required. */
.rn-v281-header-shell .mobile-nav-native{display:none;margin-left:auto;position:static}
.rn-v281-header-shell .mobile-nav-native>summary{list-style:none}
.rn-v281-header-shell .mobile-nav-native>summary::-webkit-details-marker{display:none}
.rn-v281-header-shell .mobile-accordion-native{border-top:1px solid #e6eef0}
.rn-v281-header-shell .mobile-accordion-native:first-child{border-top:0}
.rn-v281-header-shell .mobile-accordion-native>summary{list-style:none;width:100%;background:#fff;color:var(--deep);font-weight:800;font-size:14px;padding:13px 2px;display:flex;justify-content:space-between;align-items:center;cursor:pointer}
.rn-v281-header-shell .mobile-accordion-native>summary::-webkit-details-marker{display:none}
.rn-v281-header-shell .mobile-marker::before{content:"+";color:var(--orange)}
.rn-v281-header-shell .mobile-accordion-native[open] .mobile-marker::before{content:"−"}
.rn-v281-header-shell .mobile-accordion-native .mobile-accordion-panel{display:none;padding:0 0 10px}
.rn-v281-header-shell .mobile-accordion-native[open] .mobile-accordion-panel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 22px}
@media (max-width:980px){
  .rn-v281-header-shell .nav-direct.desktop-email{display:none}
  .rn-v281-header-shell .mobile-nav-native{display:block}
  .rn-v281-header-shell .mobile-nav-native>.menu-btn{display:block}
  .rn-v281-header-shell .mobile-nav-native>.mobile-drawer{display:none}
  .rn-v281-header-shell .mobile-nav-native[open]>.mobile-drawer{display:block}
}
@media (max-width:620px){
  .rn-v281-header-shell .mobile-accordion-native[open] .mobile-accordion-panel{grid-template-columns:1fr;gap:8px}
  .rn-v281-header-shell .mobile-accordion-native>summary{font-size:13px}
}

/* Desktop menu hardening. Mega menus anchor to the full header so panels stay inside the viewport. */
@media (min-width:981px){
  .rn-v281-header-shell .site-header{position:relative}
  .rn-v281-header-shell .mega-item{position:static}
  .rn-v281-header-shell .mega-panel,
  .rn-v281-header-shell .mega-panel.two{
    left:50%;right:auto;transform:translateX(-50%);
    width:min(760px,calc(100vw - 32px));max-width:calc(100vw - 32px);
  }
  .rn-v281-header-shell .mega-panel.two{width:min(560px,calc(100vw - 32px))}
}

/* V281 surgical alignment correction: phone begins directly beneath the RepairNowUSA wordmark. */
.rn-v281-header-shell .header-brand-phone{margin-left:69px!important}
@media(max-width:980px){.rn-v281-header-shell .header-brand-phone{margin-left:69px!important}}
@media(max-width:620px){.rn-v281-header-shell .header-brand-phone{margin-left:58px!important}}

/* V281 visual production correction: equal desktop navigation rhythm. */
@media (min-width:981px){
  .rn-v281-header-shell .desktop-nav{
    display:grid;
    grid-template-columns:repeat(6,minmax(0,1fr));
    align-items:stretch;
    gap:0;
  }
  .rn-v281-header-shell .desktop-nav>.mega-item{
    width:100%;
    min-width:0;
    justify-content:center;
  }
  .rn-v281-header-shell .mega-trigger{
    width:100%;
    justify-content:center;
    padding:0 8px;
    text-align:center;
  }
}

/* V281 Gemini reconciliation: narrow-mobile resilience and accessible tap/focus targets. */
.rn-v281-header-shell a:focus-visible,
.rn-v281-header-shell button:focus-visible,
.rn-v281-header-shell summary:focus-visible{outline:3px solid rgba(204,63,10,.38);outline-offset:3px;border-radius:4px}
@media(max-width:980px){
.rn-v281-header-shell .mobile-accordion>button,.rn-v281-header-shell .mobile-direct,
.rn-v281-header-shell .mobile-group a,.rn-v281-header-shell .mobile-accordion-native summary{min-height:44px}
.rn-v281-header-shell .mobile-group a{display:flex;align-items:center;padding:9px 0}
}
@media(max-width:360px){
.rn-v281-header-shell .wrap{width:calc(100% - 24px)}
.rn-v281-header-shell .nav-row{gap:5px;height:64px}
.rn-v281-header-shell .brand-mark{width:34px;height:24px}
.rn-v281-header-shell .divider{height:24px;margin:0 6px}
.rn-v281-header-shell .approved-wordmark{font-size:13px;letter-spacing:-.35px}
.rn-v281-header-shell .header-brand-phone{margin-left:40px!important;font-size:9.5px}
.rn-v281-header-shell .search-btn{padding:0 2px;font-size:12px}
.rn-v281-header-shell .menu-btn{font-size:11px;padding:7px;min-height:40px}
.rn-v281-header-shell .utility-message{font-size:9.5px;line-height:1.25}
}
@media (min-width:981px){
  .rn-v281-header-shell .header-brand-phone{background:#CC3F0A;color:#fff!important;border-radius:5px;padding:7px 10px;font-size:13px}
  .rn-v281-header-shell .header-brand-phone strong,
  .rn-v281-header-shell .header-brand-phone span{color:#fff!important;text-decoration-color:#fff}
}
@media (max-width:980px){
  .rn-v281-header-shell .site-header{padding-bottom:58px}
  .rn-v281-header-shell .header-brand-phone{
    position:absolute;left:0;right:0;bottom:0;z-index:6;
    display:flex;align-items:center;justify-content:center;
    margin:0!important;width:auto;min-height:54px;
    background:#0B4F5C;color:#fff!important;
    font-size:34px!important;font-weight:800;letter-spacing:.04em;line-height:1
  }
  .rn-v281-header-shell .header-brand-phone strong{
    color:#fff!important;text-decoration:none;font-size:34px!important;font-weight:800;letter-spacing:.04em
  }
}


/* V281 desktop mega-menu restoration */
@media (min-width:981px){
  .rn-v281-header-shell .nav-row{position:relative}
  .rn-v281-header-shell .desktop-nav{position:static}
  .rn-v281-header-shell .mega-item{position:static}
  .rn-v281-header-shell .mega-panel,
  .rn-v281-header-shell .mega-panel.two{
    top:100%;
    left:50%;
    right:auto;
    transform:translateX(-50%);
    width:min(1080px,calc(100vw - 40px))!important;
    max-width:min(1080px,calc(100vw - 40px))!important;
    border-radius:0 0 10px 10px;
    overflow:hidden;
    box-shadow:0 18px 44px rgba(4,64,79,.18);
  }
  .rn-v281-header-shell .mega-head{padding:18px 24px 15px}
  .rn-v281-header-shell .mega-head strong{font-size:16px}
  .rn-v281-header-shell .mega-head span{font-size:12.5px;max-width:620px}
  .rn-v281-header-shell .mega-head a{font-size:12.5px}
  .rn-v281-header-shell .mega-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
    padding:20px 24px 22px;
  }
  .rn-v281-header-shell .mega-grid-services{
    grid-template-columns:repeat(4,minmax(0,1fr));
    padding:20px 24px 18px;
  }
  .rn-v281-header-shell .mega-col{padding:0 20px}
  .rn-v281-header-shell .mega-col h3{
    margin-bottom:10px;
    font-size:13px;
    text-transform:uppercase;
    letter-spacing:.04em;
  }
  .rn-v281-header-shell .mega-col a{
    font-size:12.75px;
    padding:6px 0;
    line-height:1.28;
  }
  .rn-v281-header-shell .mega-service-footer{
    display:flex;
    align-items:center;
    gap:18px;
    padding:12px 24px;
    border-top:1px solid #e5edef;
    background:#f7fafa;
  }
  .rn-v281-header-shell .mega-service-footer a{
    color:#315f69;
    text-decoration:none;
    font-size:12.5px;
    font-weight:750;
  }
  .rn-v281-header-shell .mega-service-footer .mega-service-call{
    margin-left:auto;
    color:#fff;
    background:var(--orange);
    padding:8px 12px;
    border-radius:6px;
  }
}

/* V281 Search is a menu text link in the same place as the old search icon. */
.rn-v281-header-shell .search-btn{
  border:0;
  background:transparent;
  color:var(--deep);
  padding:0 2px;
  margin:0;
  cursor:pointer;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-family:inherit;
  font-size:12px;
  font-weight:750;
  line-height:1;
  letter-spacing:0;
  text-decoration:none;
  white-space:nowrap;
  min-width:0;
}
.rn-v281-header-shell .search-btn:hover,
.rn-v281-header-shell .search-btn:focus,
.rn-v281-header-shell .search-btn:active{
  color:var(--orange);
  text-decoration:none;
}

/* V281: phone pill stays the number only. Mobile CSS reveals the label and email. */
.rn-v281-header-shell .header-call{color:inherit;text-decoration:none}
.rn-v281-header-shell .header-call-label,
.rn-v281-header-shell .header-email{display:none}

/* V21: durable dual navigation — every category remains a real link; dropdowns are native HTML. */
.rn-v281-header-shell .rn-v21-desktop{display:flex;align-items:center;gap:clamp(5px,0.75vw,14px);justify-content:flex-end;min-width:0}
.rn-v281-header-shell .rn-v21-nav-pair{position:relative;display:flex;align-items:center;flex:0 0 auto;gap:2px;height:100%}
.rn-v281-header-shell .rn-v21-direct{display:inline-flex;align-items:center;color:#0B4F5C;font-size:clamp(10px,0.79vw,12px);font-weight:750;text-decoration:none;white-space:nowrap;line-height:1.2}
.rn-v281-header-shell .rn-v21-direct:hover,.rn-v281-header-shell .rn-v21-direct:focus{color:#CC3F0A;text-decoration:underline}
.rn-v281-header-shell .rn-v21-dropdown summary{color:#CC3F0A;list-style:none;cursor:pointer;padding:13px 3px;line-height:1;font-size:13px;user-select:none}
.rn-v281-header-shell .rn-v21-dropdown summary::-webkit-details-marker{display:none}
.rn-v281-header-shell .rn-v21-panel{position:absolute;top:calc(100% - 4px);left:0;width:220px;padding:14px 16px;background:#fff;border:1px solid #dce7e9;border-top:3px solid #CC3F0A;box-shadow:0 14px 30px rgba(11,79,92,.18);z-index:500}
.rn-v281-header-shell .rn-v21-nav-pair:nth-of-type(n+5) .rn-v21-panel{left:auto;right:0}
.rn-v281-header-shell .rn-v21-panel strong{display:block;margin-bottom:6px;color:#0B4F5C}
.rn-v281-header-shell .rn-v21-panel a{display:block;padding:7px 0;text-decoration:none;font-size:12px;color:#315f69;line-height:1.25}
.rn-v281-header-shell .rn-v21-panel a:hover{text-decoration:underline;color:#CC3F0A}
@media(max-width:980px){.rn-v281-header-shell .rn-v21-desktop{display:none}}
