/* Red Line v3.8 mobile-only command interface.
   Desktop rules are intentionally untouched. */
.rl38-mobile-command,
.rl38-mobile-bottom-bar,
.rl38-mobile-backdrop{display:none}

@media (max-width:900px){
  html{scroll-padding-top:12px}
  body{padding-bottom:74px!important}
  body.rl38-mobile-menu-open{overflow:hidden!important;touch-action:none}

  /* Preserve the approved desktop system while replacing only its phone presentation. */
  .rl33-command-header,
  .rl36-compact-header,
  .rl28-header#redline-site-header{display:none!important}
  .rl33-command-mobile,
  .rl33-mobile-drawer,
  .rl33-mobile-backdrop,
  .rl28-mobile-drawer,
  .rl28-drawer-backdrop,
  .rl28-mobile-service-bar,
  .rl32-mobile-service-bar{display:none!important}

  .rl38-mobile-command{display:block;position:relative;z-index:100030;color:#fff;background:#05070a;border-bottom:1px solid rgba(255,91,36,.42);font-family:Manrope,Arial,sans-serif;box-shadow:0 14px 40px rgba(0,0,0,.34)}
  .rl38-mobile-command *{box-sizing:border-box}
  .rl38-mobile-topbar{display:grid;grid-template-columns:minmax(135px,1fr) auto 44px;align-items:center;gap:10px;min-height:68px;padding:10px 14px;background:linear-gradient(180deg,#090b0f,#05070a);border-bottom:1px solid rgba(255,255,255,.08)}
  .rl38-mobile-brand{display:block;min-width:0;text-decoration:none}
  .rl38-mobile-brand img{display:block;width:min(205px,52vw);height:auto;max-height:45px;object-fit:contain;object-position:left center}
  .rl38-mobile-live{display:inline-flex;align-items:center;gap:7px;white-space:nowrap;color:#dfe5ec;font-size:8px;font-weight:900;letter-spacing:.11em;text-transform:uppercase}
  .rl38-mobile-live i{display:block;width:8px;height:8px;border-radius:50%;background:#27e281;box-shadow:0 0 0 4px rgba(39,226,129,.12),0 0 16px rgba(39,226,129,.85);animation:rl38Pulse 1.45s ease-in-out infinite}
  .rl38-mobile-menu-toggle{display:grid;place-content:center;gap:4px;width:44px;height:44px;margin:0;padding:0;border:1px solid rgba(255,91,36,.52);border-radius:10px;background:linear-gradient(145deg,rgba(213,31,43,.18),rgba(255,91,36,.08));box-shadow:inset 0 0 18px rgba(255,91,36,.04)}
  .rl38-mobile-menu-toggle span{display:block;width:20px;height:2px;border-radius:2px;background:#fff}

  .rl38-mobile-hero{position:relative;overflow:hidden;padding:25px 16px 17px;background:linear-gradient(90deg,rgba(4,5,7,.96) 0%,rgba(4,5,7,.85) 50%,rgba(4,5,7,.5) 100%),url(230ac2ee7_generated_7b0b96ab.png) 58% 52%/cover no-repeat}
  .rl38-mobile-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,transparent 35%,rgba(229,29,42,.18) 75%,rgba(255,91,36,.22));pointer-events:none}
  .rl38-mobile-hero:after{content:"";position:absolute;left:16px;right:16px;bottom:0;height:1px;background:linear-gradient(90deg,#d51f2b,#ff5b24,transparent)}
  .rl38-mobile-hero-copy{position:relative;z-index:1;max-width:620px}
  .rl38-mobile-kicker{display:flex;align-items:center;gap:8px;margin:0 0 9px;color:#ff6f3b;font-size:9px;font-weight:900;letter-spacing:.17em;text-transform:uppercase}
  .rl38-mobile-kicker:before{content:"";display:block;width:24px;height:2px;background:linear-gradient(90deg,#d51f2b,#ff5b24)}
  .rl38-mobile-hero h2{margin:0;max-width:510px;color:#fff;font:800 clamp(31px,9.5vw,52px)/.92 Sora,Manrope,Arial,sans-serif;letter-spacing:-.055em;text-transform:uppercase;text-shadow:0 8px 30px rgba(0,0,0,.55)}
  .rl38-mobile-hero h2 span{display:block;color:#ff5b24}
  .rl38-mobile-hero p{margin:12px 0 0;max-width:520px;color:#b9c2cc;font-size:12px;line-height:1.55}
  .rl38-mobile-primary-actions{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:17px}
  .rl38-mobile-primary-actions a{display:flex;align-items:center;justify-content:center;min-height:48px;padding:0 12px;border-radius:8px;color:#fff!important;text-decoration:none!important;font-size:10px;font-weight:900;letter-spacing:.045em;text-transform:uppercase}
  .rl38-mobile-call{border:1px solid rgba(255,255,255,.2);background:rgba(9,12,17,.86)}
  .rl38-mobile-request{border:1px solid #ff7441;background:linear-gradient(135deg,#d51f2b,#ff5b24);box-shadow:0 12px 28px rgba(213,31,43,.24)}
  .rl38-mobile-track{position:relative;z-index:1;display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:10px;min-height:58px;margin-top:8px;padding:8px 12px;border:1px solid rgba(255,91,36,.52);border-radius:9px;background:linear-gradient(90deg,rgba(17,22,30,.95),rgba(9,12,17,.94));color:#fff!important;text-decoration:none!important}
  .rl38-mobile-track-icon{display:grid;place-items:center;width:38px;height:38px;border:1px solid rgba(255,91,36,.45);border-radius:8px;color:#ff6a35;font-size:18px;background:rgba(255,91,36,.07)}
  .rl38-mobile-track span{display:block;color:#fff;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.045em}
  .rl38-mobile-track small{display:block;margin-top:3px;color:#8995a2;font-size:8px;letter-spacing:.04em}
  .rl38-mobile-track b{color:#ff5b24;font-size:18px}

  .rl38-mobile-quick{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:rgba(255,255,255,.08)}
  .rl38-mobile-quick a{display:flex;align-items:center;justify-content:center;min-height:47px;padding:7px 5px;background:#090c11;color:#c7d0da!important;text-align:center;text-decoration:none!important;font-size:8px;font-weight:850;letter-spacing:.025em;text-transform:uppercase}
  .rl38-mobile-quick a:active{background:rgba(255,91,36,.12);color:#fff!important}

  .rl38-mobile-drawer{display:block;position:fixed;z-index:100030;inset:0 0 0 auto;width:min(91vw,410px);height:100dvh;padding:0;background:#07090d;color:#fff;overflow:auto;overscroll-behavior:contain;box-shadow:-32px 0 90px rgba(0,0,0,.72)}
  .rl38-mobile-drawer[hidden]{display:none!important}
  .rl38-mobile-drawer-head{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;min-height:68px;padding:11px 16px;background:rgba(7,9,13,.96);border-bottom:1px solid rgba(255,255,255,.09);backdrop-filter:blur(14px)}
  .rl38-mobile-drawer-head img{display:block;width:178px;height:auto}
  .rl38-mobile-drawer-head button{display:grid;place-items:center;width:40px;height:40px;border:1px solid rgba(255,91,36,.5);border-radius:50%;background:#11161e;color:#fff;font-size:24px;line-height:1}
  .rl38-mobile-drawer-status{display:flex;align-items:center;gap:9px;margin:16px;padding:12px;border:1px solid rgba(39,226,129,.2);border-radius:9px;background:rgba(39,226,129,.045);color:#dce7e1;font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.08em}
  .rl38-mobile-drawer-status i{width:8px;height:8px;border-radius:50%;background:#27e281;box-shadow:0 0 13px rgba(39,226,129,.8)}
  .rl38-mobile-nav{padding:0 16px 18px}
  .rl38-mobile-nav>a,.rl38-mobile-nav summary{display:flex;align-items:center;justify-content:space-between;min-height:52px;padding:12px 2px;border-bottom:1px solid rgba(255,255,255,.085);color:#fff!important;text-decoration:none!important;list-style:none;font-size:12px;font-weight:850}
  .rl38-mobile-nav summary::-webkit-details-marker{display:none}
  .rl38-mobile-nav summary span{color:#ff5b24;font-size:18px}
  .rl38-mobile-nav details[open] summary span{transform:rotate(45deg)}
  .rl38-mobile-nav details>div{display:grid;grid-template-columns:1fr 1fr;gap:7px;padding:10px 0 14px}
  .rl38-mobile-nav details>div a{display:flex;align-items:center;min-height:46px;padding:10px;border:1px solid rgba(255,255,255,.075);border-radius:7px;background:#0d1219;color:#aeb9c5!important;text-decoration:none!important;font-size:9px;font-weight:750;line-height:1.3}
  .rl38-mobile-nav details>div a:last-child{border-color:rgba(255,91,36,.25)}
  .rl38-mobile-drawer-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:0 16px 22px}
  .rl38-mobile-drawer-actions a{display:flex;align-items:center;justify-content:center;min-height:50px;border-radius:8px;color:#fff!important;text-decoration:none!important;font-size:10px;font-weight:900;text-transform:uppercase}
  .rl38-mobile-drawer-actions a:first-child{border:1px solid rgba(255,255,255,.18);background:#11161e}
  .rl38-mobile-drawer-actions a:last-child{border:1px solid #ff7441;background:linear-gradient(135deg,#d51f2b,#ff5b24)}
  .rl38-mobile-backdrop{display:block;position:fixed;z-index:100020;inset:0;background:rgba(0,0,0,.78);backdrop-filter:blur(3px)}
  .rl38-mobile-backdrop[hidden]{display:none!important}

  .rl38-mobile-bottom-bar{display:grid;position:fixed;z-index:100010;left:0;right:0;bottom:0;grid-template-columns:1fr 1.18fr 1fr;gap:6px;min-height:66px;padding:7px max(8px,env(safe-area-inset-right)) calc(7px + env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));background:rgba(5,7,10,.97);border-top:1px solid rgba(255,91,36,.45);box-shadow:0 -18px 44px rgba(0,0,0,.48);backdrop-filter:blur(16px)}
  .rl38-mobile-bottom-bar a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:50px;border:1px solid rgba(255,255,255,.1);border-radius:8px;background:#0d1117;color:#fff!important;text-decoration:none!important;font-size:8px;font-weight:900;letter-spacing:.05em;text-transform:uppercase}
  .rl38-mobile-bottom-bar a:nth-child(2){border-color:#ff7542;background:linear-gradient(135deg,#d51f2b,#ff5b24);box-shadow:0 8px 20px rgba(213,31,43,.25)}
  .rl38-mobile-bottom-bar a b{font-size:13px;line-height:1}
  .rl38-mobile-bottom-bar a span{font-size:7px;color:#aeb8c3}
  .rl38-mobile-bottom-bar a:nth-child(2) span{color:#ffe3d9}

  /* Internal pages: reduce the mobile header footprint so the real content arrives quickly. */
  .rl38-mobile-command:not([data-context="home"]) .rl38-mobile-hero{padding-top:17px;padding-bottom:13px;background-position:62% 58%}
  .rl38-mobile-command:not([data-context="home"]) .rl38-mobile-hero h2{font-size:clamp(27px,8.2vw,40px)}
  .rl38-mobile-command:not([data-context="home"]) .rl38-mobile-hero p{display:none}
  .rl38-mobile-command:not([data-context="home"]) .rl38-mobile-primary-actions{margin-top:13px}
  .rl38-mobile-command:not([data-context="home"]) .rl38-mobile-track{min-height:52px}

  /* Service pages: keep the description and solutions near the top on phones. */
  .redline-service-page .rl35-service-exitbar{min-height:42px;padding:0 12px}
  .redline-service-page .rl35-service-exitbar a,.redline-service-page .rl35-service-exitbar button{font-size:9px}
  .redline-service-page .rl33-service-intro{padding:34px 0 24px!important}
  .redline-service-page .rl33-service-intro-grid{display:block!important}
  .redline-service-page .rl33-intro-breadcrumbs{margin-bottom:12px!important}
  .redline-service-page .rl33-service-code{margin-bottom:10px!important}
  .redline-service-page .rl33-service-intro h1{font-size:clamp(34px,10.4vw,51px)!important;line-height:.98!important;letter-spacing:-.052em!important}
  .redline-service-page .rl33-service-intro-copy>p{font-size:14px!important;line-height:1.65!important}
  .redline-service-page .rl33-intro-points{gap:7px!important;margin-top:16px!important}
  .redline-service-page .rl33-intro-points span{font-size:9px!important}
  .redline-service-page .rl33-intro-actions{grid-template-columns:1fr!important;gap:8px!important;margin-top:18px!important}
  .redline-service-page .rl33-intro-actions a{min-height:48px!important}
  .redline-service-page .rl33-intro-visual{margin-top:18px!important}
  .redline-service-page .rl33-intro-photo{height:190px!important;min-height:190px!important}
  .redline-service-page .rl33-intro-profile{display:none!important}
  .redline-service-page .rl32-page-nav,.redline-service-page .rl32-stat-deck{display:none!important}
  .redline-service-page .rl32-section{padding-top:48px!important;padding-bottom:48px!important}
  .redline-service-page .rl32-section-head h2{font-size:clamp(31px,9vw,44px)!important}
  .redline-service-page .rl32-section-head>div{font-size:13px!important}
  .redline-service-page .rl32-solution-grid,.redline-service-page .rl32-directory-grid{gap:10px!important}
  .redline-service-page .rl32-solution-card{min-height:0!important;padding:22px!important}
  .redline-service-page .rl32-directory-card{min-height:255px!important}
  .redline-service-page .rl32-dispatch-section{padding:50px 0!important}
  .redline-service-page .rl32-dispatch-copy h2{font-size:clamp(32px,9vw,45px)!important}
  .redline-service-page .rl32-form-panel{margin-top:22px!important}

  /* Forms and content pages: comfortable phone spacing without changing desktop. */
  .redline-form-page-body .redline-page-hero,.redline-request-service-page .redline-page-hero{padding-top:42px!important;padding-bottom:34px!important}
  .redline-form-page-body .redline-page-content,.redline-request-service-page .redline-page-content{padding-top:34px!important;padding-bottom:50px!important}
  .rl28-footer{padding-bottom:92px!important}
}

@media (max-width:520px){
  .rl38-mobile-topbar{grid-template-columns:minmax(120px,1fr) auto 42px;padding-inline:11px}
  .rl38-mobile-brand img{width:min(178px,49vw)}
  .rl38-mobile-live{font-size:7px;letter-spacing:.07em}
  .rl38-mobile-hero{padding-left:12px;padding-right:12px}
  .rl38-mobile-primary-actions{grid-template-columns:1fr 1fr}
  .rl38-mobile-primary-actions a{padding-inline:7px;font-size:8px}
  .rl38-mobile-track{grid-template-columns:38px 1fr auto;padding-inline:9px}
  .rl38-mobile-quick a{font-size:7px}
  .rl38-mobile-nav details>div{grid-template-columns:1fr}
  .rl38-mobile-bottom-bar{gap:4px;padding-inline:5px}
  .rl38-mobile-bottom-bar a{font-size:7px}
}

@keyframes rl38Pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.48;transform:scale(.78)}}
@media (prefers-reduced-motion:reduce){.rl38-mobile-live i{animation:none}.rl38-mobile-command *{scroll-behavior:auto!important}}
