:root { --charcoal: #2E3338; --panel: #E8E6E1; --orange: #F05A1A; --ink: #141414; }
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--panel); color: var(--ink); font-family: 'Inter', sans-serif; font-size: 16px; line-height: 1.55; }
a { color: inherit; }
.status-bar { min-height: 42px; display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 6px max(20px, calc((100% - 1240px) / 2)); background: var(--charcoal); color: var(--panel); border-bottom: 3px dashed var(--orange); overflow: hidden; }
.status-repeat { font-family: 'Oswald', sans-serif; font-size: 13px; letter-spacing: 1.5px; white-space: nowrap; }
.status-stamps { display: flex; gap: 7px; flex-shrink: 0; }
.stamp { display: inline-block; background: var(--orange); color: var(--ink); padding: 3px 7px; font: 700 12px/1 'Oswald', sans-serif; letter-spacing: 1px; transform: rotate(-1deg); }
.stamp:nth-child(2) { transform: rotate(1deg); }
.mini { font-size: 10px; padding: 3px 5px; vertical-align: middle; }
.site-header { max-width: 1240px; margin: auto; padding: 22px 20px; display: flex; justify-content: space-between; align-items: center; gap: 24px; border-bottom: 2px solid var(--ink); }
.brand { display: flex; align-items: center; gap: 10px; text-decoration: none; font: 600 25px/1 'Oswald', sans-serif; text-transform: uppercase; letter-spacing: .3px; }
.brand small { display: block; margin-top: 4px; font: 700 10px/1 'Inter', sans-serif; letter-spacing: 1.3px; }
.brand-mark { display: grid; place-items: center; width: 43px; height: 43px; background: var(--ink); color: var(--orange); font: 700 16px/1 'Oswald', sans-serif; border: 2px solid var(--orange); }
.small-mark { display: inline-grid; width: 24px; height: 24px; font-size: 10px; vertical-align: middle; }
nav { display: flex; gap: 20px; }
nav a, .social-links a, .site-footer a { font: 600 12px/1 'Oswald', sans-serif; letter-spacing: 1px; text-decoration: none; }
nav a:hover, .social-links a:hover, .site-footer a:hover, .contact-details a:hover { color: var(--orange); }
.hero, .section { max-width: 1240px; margin: auto; padding-left: 20px; padding-right: 20px; }
.hero { min-height: 560px; display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(300px, .7fr); gap: 70px; align-items: center; padding-top: 76px; padding-bottom: 76px; }
.eyebrow, .kicker { margin: 0 0 14px; font: 600 13px/1.2 'Oswald', sans-serif; letter-spacing: 1.4px; }
h1, h2, h3 { margin: 0; font-family: 'Oswald', sans-serif; line-height: .95; text-transform: uppercase; }
h1 { max-width: 760px; font-size: clamp(55px, 8vw, 108px); letter-spacing: -1.4px; }
h1 span { color: var(--orange); }
.scope { max-width: 640px; margin: 25px 0 30px; font-size: 18px; }
.button { display: inline-flex; justify-content: space-between; align-items: center; min-width: 220px; gap: 25px; border: 2px solid var(--ink); background: var(--orange); color: var(--ink); padding: 14px 17px; font: 700 15px/1 'Oswald', sans-serif; letter-spacing: 1px; text-decoration: none; cursor: pointer; transition: transform .15s ease, background .15s ease; }
.button:hover { transform: translate(-3px, -3px); background: var(--panel); box-shadow: 4px 4px 0 var(--ink); }
.spec-sheet { border: 2px dashed var(--ink); background: var(--charcoal); color: var(--panel); padding: 20px; transform: rotate(1.2deg); }
.spec-heading, .form-title { display: flex; justify-content: space-between; align-items: center; gap: 10px; border-bottom: 2px solid var(--orange); padding-bottom: 12px; font: 600 19px/1 'Oswald', sans-serif; letter-spacing: 1px; }
dl { margin: 14px 0 0; } dl div { display: flex; justify-content: space-between; gap: 12px; padding: 10px 0; border-bottom: 1px dashed var(--panel); } dt { font: 600 12px/1.2 'Oswald', sans-serif; letter-spacing: 1px; } dd { margin: 0; text-align: right; font-size: 13px; }
.section { padding-top: 94px; padding-bottom: 94px; }
.services { border-top: 2px solid var(--ink); }
.section-intro { display: grid; grid-template-columns: .8fr 1.2fr 1fr; gap: 28px; align-items: end; margin-bottom: 38px; }.section-intro .kicker { align-self: start; }.section-intro h2, .coverage h2, .contact h2 { font-size: clamp(39px, 5vw, 65px); }.section-intro p:not(.kicker), .coverage-copy > p:last-child, .contact-heading > p:not(.kicker) { margin: 0; }
.checklist { list-style: none; padding: 0; margin: 0; border-top: 2px dashed var(--ink); }.checklist li { display: grid; grid-template-columns: 82px 1fr auto; gap: 20px; align-items: start; padding: 22px 16px; border: 2px dashed var(--ink); border-top: 0; }.check-code { color: var(--orange); font: 700 27px/1 'Oswald', sans-serif; }.checklist strong { font: 600 21px/1 'Oswald', sans-serif; letter-spacing: .5px; }.checklist p { margin: 8px 0 0; font-size: 14px; }.item-status { align-self: center; border: 2px solid var(--orange); padding: 4px 7px; color: var(--orange); font: 600 12px/1 'Oswald', sans-serif; letter-spacing: 1px; }
.process { max-width: none; background: var(--charcoal); color: var(--panel); }.process > * { max-width: 1200px; margin-left: auto; margin-right: auto; }.dark-intro { grid-template-columns: .8fr 2.2fr; }.dark-intro .kicker { color: var(--orange); }.process-grid { display: grid; grid-template-columns: repeat(4, 1fr); border-top: 4px solid var(--orange); border-bottom: 1px solid var(--panel); }.process-grid article { min-height: 255px; padding: 18px; border-right: 1px solid var(--panel); }.process-grid article:first-child { border-left: 1px solid var(--panel); }.process-grid span { display: block; color: var(--orange); font: 700 57px/.85 'Oswald', sans-serif; }.process-grid h3 { margin-top: 50px; font-size: 28px; }.process-grid p { font-size: 13px; }
.coverage { display: grid; grid-template-columns: 1fr 1fr; gap: 80px; align-items: center; }.route-board { border: 3px solid var(--ink); padding: 25px; background: var(--panel); }.route-label { display: inline-block; margin: 0 0 18px; background: var(--orange); padding: 3px 6px; font: 600 13px/1 'Oswald', sans-serif; letter-spacing: 1px; }.route-board > p:nth-child(2) { margin: 0; font: 600 clamp(27px, 4vw, 48px)/1 'Oswald', sans-serif; text-transform: uppercase; }.route-footer { display: flex; justify-content: space-between; align-items: center; gap: 15px; margin-top: 28px; padding-top: 13px; border-top: 2px dashed var(--ink); font-size: 12px; }
.contact { display: grid; grid-template-columns: 1fr 1fr; gap: 70px; border-top: 2px solid var(--ink); }.contact-details { margin-top: 38px; border-top: 2px dashed var(--ink); }.contact-details p { margin: 0; padding: 13px 0; border-bottom: 1px dashed var(--ink); font-size: 14px; }.contact-details strong { font: 600 12px/1 'Oswald', sans-serif; letter-spacing: 1px; }.work-form { border: 3px solid var(--ink); background: var(--charcoal); color: var(--panel); padding: 24px; }.work-form label { display: block; margin-top: 17px; font: 600 12px/1 'Oswald', sans-serif; letter-spacing: 1px; }.work-form input, .work-form textarea { width: 100%; margin-top: 6px; border: 1px solid var(--panel); background: var(--charcoal); color: var(--panel); border-radius: 0; padding: 10px; font: 14px 'Inter', sans-serif; }.work-form input:focus, .work-form textarea:focus { outline: 2px solid var(--orange); outline-offset: 2px; }.work-form textarea::placeholder { color: var(--panel); opacity: .75; }.work-form .button { width: 100%; margin-top: 21px; }.form-note, .form-message { font-size: 12px; }.form-note a { color: var(--orange); }.form-message { min-height: 18px; margin-bottom: 0; color: var(--orange); font-weight: 700; }
.site-footer { display: flex; justify-content: space-between; gap: 24px; align-items: center; padding: 25px max(20px, calc((100% - 1240px) / 2)); background: var(--ink); color: var(--panel); font: 600 11px/1.4 'Oswald', sans-serif; letter-spacing: .8px; }.social-links { display: flex; gap: 15px; }.site-footer a:hover { color: var(--orange); }
.privacy-page { max-width: 900px; margin: auto; padding: 80px 20px; }.privacy-page h1 { font-size: clamp(53px, 8vw, 90px); }.privacy-lead { border-bottom: 2px dashed var(--ink); padding-bottom: 25px; }.privacy-content { margin: 42px 0; }.privacy-content section { padding: 22px 0; border-bottom: 2px dashed var(--ink); }.privacy-content h2 { font-size: 29px; }.privacy-content p { margin-bottom: 0; }
@media (max-width: 760px) { .status-repeat { display: none; }.status-bar { justify-content: center; }.site-header { padding-top: 16px; padding-bottom: 16px; }.brand { font-size: 20px; }.brand-mark { width: 38px; height: 38px; } nav { gap: 12px; } nav a { font-size: 11px; }.hero { grid-template-columns: 1fr; gap: 45px; min-height: auto; padding-top: 58px; padding-bottom: 58px; }.spec-sheet { transform: none; }.section { padding-top: 65px; padding-bottom: 65px; }.section-intro, .dark-intro, .coverage, .contact { grid-template-columns: 1fr; gap: 20px; }.checklist li { grid-template-columns: 53px 1fr; gap: 12px; padding: 17px 12px; }.item-status { display: none; }.check-code { font-size: 21px; }.process-grid { grid-template-columns: 1fr 1fr; }.process-grid article:nth-child(3) { border-left: 1px solid var(--panel); }.process-grid article { min-height: 220px; }.process-grid h3 { margin-top: 35px; }.coverage { gap: 38px; }.contact { gap: 40px; }.site-footer { flex-direction: column; align-items: flex-start; }.social-links { flex-wrap: wrap; }.route-footer { align-items: flex-start; flex-direction: column; } }
@media (max-width: 430px) { .site-header nav a:nth-child(-n+2) { display: none; }.process-grid { grid-template-columns: 1fr; }.process-grid article, .process-grid article:nth-child(3) { min-height: auto; border-left: 1px solid var(--panel); }.process-grid h3 { margin-top: 22px; }.process-grid span { font-size: 46px; } }