:root { --cc-navy:#111827; --cc-navy-soft:#193554; --cc-orange:#f37021; --cc-orange-dark:#c45100; --cc-green:#12823a; --cc-blue:#004c8c; --cc-white:#fff; --cc-paper:#f4f7fb; --cc-ink:#172033; --cc-muted:#5b6678; --cc-line:#dce4ee; --cc-shadow:0 14px 35px rgba(17,24,39,.12); --cc-width:1160px; }
* { box-sizing:border-box; } html { scroll-behavior:smooth; } body { margin:0; background:var(--cc-paper); color:var(--cc-ink); font:16px/1.6 Arial,Helvetica,sans-serif; } .wrap { width:min(var(--cc-width),92%); margin:auto; } .skip { position:absolute; left:-999px; top:auto; } .skip:focus { background:#fff; color:var(--cc-navy); left:1rem; top:1rem; padding:.7rem; z-index:10; }
.site-header { background:var(--cc-white); border-bottom:1px solid var(--cc-line); } .utility { background:var(--cc-navy); color:#fff; font-size:.9rem; } .utility .wrap { display:flex; justify-content:flex-end; padding:.38rem 0; } .utility a { color:#fff; font-weight:700; text-decoration:none; } .brand-row { align-items:center; display:flex; justify-content:space-between; min-height:108px; padding:13px 0; } .brand-row img { display:block; height:78px; max-width:230px; object-fit:contain; } .brand-note { color:var(--cc-muted); font-size:.95rem; letter-spacing:.01em; text-align:right; } .nav { background:var(--cc-navy); box-shadow:0 4px 11px rgba(17,24,39,.16); position:relative; z-index:2; } .nav ul { display:flex; flex-wrap:wrap; list-style:none; margin:0; padding:0; } .nav a { border-bottom:3px solid transparent; color:#fff; display:block; font-size:.89rem; font-weight:700; padding:14px 16px 11px; text-decoration:none; transition:background .18s ease,border-color .18s ease; } .nav a:hover,.nav a:focus { background:rgba(255,255,255,.08); border-bottom-color:var(--cc-orange); }
.hero { background:radial-gradient(circle at 83% 18%,rgba(243,112,33,.22),transparent 28%),linear-gradient(120deg,var(--cc-navy),var(--cc-navy-soft)); color:#fff; overflow:hidden; padding:72px 0; } .eyebrow { color:#ffd7bd; font-size:.78rem; font-weight:700; letter-spacing:.12em; margin:0 0 .5rem; text-transform:uppercase; } .hero h1,.page-hero h1,.section-title { font-size:clamp(2.15rem,5vw,4.25rem); letter-spacing:-.025em; line-height:1.04; margin:0 0 1rem; } .hero-copy { font-size:1.14rem; max-width:720px; } .choice-grid { align-items:stretch; display:grid; gap:20px; grid-template-columns:1fr 1fr; margin-top:30px; max-width:1000px; } .hero-choice { border-radius:10px; box-shadow:var(--cc-shadow); display:flex; flex-direction:column; justify-content:center; min-height:268px; padding:31px; text-decoration:none; } .hero-choice--search { background:#fff; color:var(--cc-ink); } .hero-choice--call { background:linear-gradient(145deg,#fb7d27,var(--cc-orange)); color:#fff; } .hero-choice strong { display:block; font-size:clamp(1.65rem,3vw,2.3rem); line-height:1.08; margin:.38rem 0; } .hero-choice form { margin-top:15px; } .hero-choice label { display:block; font-weight:700; margin-bottom:6px; } .search-row { display:flex; gap:8px; } .search-row input { border:1px solid #b8c2cf; border-radius:5px; flex:1; min-width:0; padding:13px; } .button { background:var(--cc-orange); border:2px solid var(--cc-orange); border-radius:5px; color:#fff; cursor:pointer; display:inline-block; font-weight:700; padding:12px 17px; text-align:center; text-decoration:none; transition:background .18s ease,border-color .18s ease,transform .18s ease; } .button:hover,.button:focus { background:var(--cc-orange-dark); border-color:var(--cc-orange-dark); transform:translateY(-1px); } .hero-choice--call .button { background:var(--cc-navy); border-color:var(--cc-navy); margin-top:3px; } .hero-choice--call .button:hover,.hero-choice--call .button:focus { background:#090f1b; border-color:#090f1b; } .hero-choice small { font-size:.9rem; margin-top:12px; }
main { padding:0; } main > .wrap { padding:64px 0; } .intro { max-width:780px; } .section-title { font-size:clamp(1.85rem,3vw,2.65rem); } .cards { display:grid; gap:22px; grid-template-columns:repeat(3,1fr); margin:34px 0; } .card { background:#fff; border:1px solid var(--cc-line); border-radius:9px; border-top:5px solid var(--cc-orange); box-shadow:0 7px 20px rgba(17,24,39,.05); padding:27px; } .card:nth-child(2) { border-top-color:var(--cc-green); } .card:nth-child(3) { border-top-color:var(--cc-blue); } .card h2,.card h3 { font-size:1.36rem; line-height:1.2; margin:0 0 .7rem; } .card a,.content-grid a { color:var(--cc-blue); font-weight:700; } .band { background:#fff; border-left:6px solid var(--cc-green); box-shadow:0 5px 17px rgba(17,24,39,.04); margin:46px 0; padding:32px; } .page-hero { background:radial-gradient(circle at 84% 0,rgba(243,112,33,.19),transparent 25%),var(--cc-navy); color:#fff; padding:58px 0; } .page-hero p { font-size:1.1rem; max-width:720px; } .content-grid { display:grid; gap:36px; grid-template-columns:1.5fr 1fr; } .content-grid aside { background:#fff; border:1px solid var(--cc-line); border-radius:9px; box-shadow:0 7px 20px rgba(17,24,39,.05); height:max-content; padding:27px; } .content-grid h2 { font-size:1.52rem; line-height:1.2; margin-top:0; } .checklist { padding-left:20px; } .route-list { display:grid; gap:12px; list-style:none; padding:0; } .route-list a { color:var(--cc-blue); font-weight:700; }
.site-footer { background:var(--cc-navy); color:#e6e9ee; padding:44px 0; } .footer-grid { display:grid; gap:28px; grid-template-columns:2fr 1fr 1fr; } .site-footer h2 { color:#fff; font-size:1.05rem; margin:0 0 .7rem; } .site-footer a { color:#fff; } .site-footer p { margin:0; } .site-footer ul { list-style:none; margin:0; padding:0; } .site-footer li { margin:.42rem 0; } a:focus-visible,button:focus-visible,input:focus-visible { outline:3px solid var(--cc-green); outline-offset:3px; }
@media(max-width:800px) { .utility .wrap { justify-content:center; } .brand-row { align-items:flex-start; min-height:0; padding:16px 0 18px; } .brand-row img { height:70px; } .brand-note { margin-top:9px; text-align:left; } .choice-grid,.cards,.content-grid,.footer-grid { grid-template-columns:1fr; } .hero { padding:50px 0; } .hero-choice { min-height:0; padding:26px; } main > .wrap { padding:48px 0; } .page-hero { padding:48px 0; } .search-row { flex-direction:column; } .nav a { padding:12px 10px 9px; } } @media(max-width:460px) { .wrap { width:min(var(--cc-width),90%); } .nav ul { display:grid; grid-template-columns:repeat(2,1fr); } .nav a { font-size:.84rem; } .hero h1,.page-hero h1 { font-size:2.2rem; } }
.site-header { background:var(--cc-navy); border-bottom-color:#334155; }
.brand-phone { display:flex; align-items:center; gap:12px; color:var(--cc-orange); text-decoration:none; flex-shrink:0; }
.brand-phone strong { display:block; font-size:1.25rem; line-height:1.25; white-space:nowrap; }
.brand-phone small { display:block; color:#fff; font-size:.85rem; line-height:1.4; }
.phone-icon { display:grid; place-items:center; width:40px; height:40px; border-radius:8px; background:var(--cc-green); color:#fff; font-size:24px; }
.brand-phone:hover strong { text-decoration:underline; }
@media(max-width:460px) { .brand-phone { gap:8px; } .brand-phone strong { font-size:1.05rem; } .phone-icon { width:34px; height:34px; } }
