:root { --ink:#132634; --navy:#073f6f; --blue:#0c8bd1; --sky:#dceefa; --paper:#f6f8f9; --line:#d8e0e5; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:#fff; color:var(--ink); font-family:Arial, Helvetica, sans-serif; }
a { color:inherit; text-decoration:none; }
.site-header { height:96px; max-width:1280px; margin:auto; padding:14px 40px; display:flex; align-items:center; justify-content:space-between; gap:32px; border-bottom:1px solid var(--line); }
.brand img { width:156px; height:68px; object-fit:contain; }
nav { display:flex; gap:34px; font-size:14px; font-weight:700; }
nav a:hover, footer a:hover { color:var(--blue); }
.button { display:inline-flex; align-items:center; justify-content:center; padding:16px 23px; background:var(--blue); color:#fff; font-size:14px; font-weight:800; border-radius:4px; box-shadow:0 8px 22px #0c8bd12a; transition:.2s ease; }
.button:hover { background:var(--navy); transform:translateY(-2px); }
.button-small { padding:13px 18px; }
.hero { min-height:650px; max-width:1280px; margin:auto; padding:90px 64px 76px; display:grid; grid-template-columns:1.05fr .95fr; overflow:hidden; }
.eyebrow { margin:0 0 22px; color:var(--blue); text-transform:uppercase; letter-spacing:.16em; font-size:12px; font-weight:900; }
h1 { margin:0; font-size:clamp(60px,7vw,100px); line-height:.9; letter-spacing:-.065em; font-weight:900; }
h1 span { color:var(--blue); }
.hero-heading { font-size:clamp(52px,5.5vw,76px); line-height:.95; }
.hero-heading .line { display:block; white-space:nowrap; color:var(--ink); }
.hero-heading .accent { color:var(--blue); }
.hero-intro { max-width:570px; margin:35px 0 31px; font-size:19px; line-height:1.6; color:#54646d; }
.hero-actions { display:flex; align-items:center; gap:26px; flex-wrap:wrap; }
.text-link { font-size:14px; font-weight:800; }
.text-link span { color:var(--blue); margin-left:8px; }
.hero-photo { min-height:470px; margin:0 0 0 55px; align-self:center; position:relative; box-shadow:18px 18px 0 var(--sky); overflow:visible; background:var(--ink); }
.hero-photo::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,transparent 55%,#071b28a6 100%); pointer-events:none; }
.hero-photo>img { display:block; width:100%; height:470px; object-fit:cover; object-position:48% center; }
.hero-photo figcaption { position:absolute; left:-24px; bottom:24px; z-index:2; display:flex; align-items:flex-start; gap:4px; padding:16px 20px; background:white; border-left:4px solid var(--blue); color:#6a777f; font-size:11px; line-height:1.5; box-shadow:0 14px 38px #0a21313b; }
.hero-photo figcaption .pulse { margin-top:5px; }
.hero-photo figcaption strong { color:var(--ink); font-size:15px; }
.pulse { display:inline-block; width:8px; height:8px; background:#27a967; border-radius:50%; margin-right:8px; }
.trust-strip { background:var(--ink); color:white; display:grid; grid-template-columns:repeat(3,1fr); padding:25px max(6vw,40px); }
.trust-strip div { padding:5px 8%; border-right:1px solid #ffffff2a; }
.trust-strip div:last-child { border:0; }
.trust-strip strong, .trust-strip span { display:block; }
.trust-strip strong { font-size:15px; margin-bottom:6px; }
.trust-strip span { color:#adbec8; font-size:13px; }
.section { padding:110px max(6vw,40px); }
.section-heading { max-width:1160px; margin:0 auto 55px; display:grid; grid-template-columns:1.5fr 1fr; align-items:end; gap:60px; }
.section-heading h2, .booking-section h2 { margin:0; font-size:clamp(42px,5vw,66px); line-height:.98; letter-spacing:-.05em; }
.section-heading>p { margin:0; color:#61717a; font-size:17px; line-height:1.65; }
.package-grid { max-width:1160px; margin:auto; display:grid; grid-template-columns:repeat(6,1fr); gap:16px; }
.package-card { position:relative; grid-column:span 2; min-height:270px; padding:30px; background:var(--paper); border:1px solid #e2e8ec; display:flex; flex-direction:column; }
.package-card:nth-child(4), .package-card:nth-child(5) { grid-column:span 3; }
.package-card.featured { color:white; background:var(--navy); border-color:var(--navy); }
.package-number { color:#92a0a8; font-size:12px; font-weight:800; letter-spacing:.12em; }
.popular { position:absolute; right:20px; top:20px; padding:7px 9px; border-radius:2px; background:var(--blue); color:#fff; font-size:10px; font-weight:900; text-transform:uppercase; letter-spacing:.08em; }
.package-card h3 { margin:38px 0 12px; font-size:23px; letter-spacing:-.03em; }
.package-card p { margin:0; color:#63737c; line-height:1.55; font-size:14px; }
.featured p { color:#c1d4df; }
.price { margin-top:auto; padding-top:24px; font-size:26px; color:var(--blue); }
.price-note { max-width:1160px; margin:20px auto 0; color:#7b878e; font-size:12px; }
.repair-section { background:var(--ink); color:#fff; }
.light>p { color:#aec0ca; }
.repair-grid { max-width:1160px; margin:auto; display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.repair-card { background:#1a3343; border-top:3px solid var(--blue); padding:30px; }
.repair-title { display:flex; align-items:center; gap:14px; margin-bottom:28px; }
.repair-title h3 { margin:0; font-size:26px; }
.mini-wheel { width:28px; height:28px; border:6px solid var(--blue); border-radius:50%; }
.repair-card ul { list-style:none; padding:0; margin:0; }
.repair-card li { display:flex; justify-content:space-between; gap:20px; padding:12px 0; border-bottom:1px solid #ffffff18; color:#c4d1d8; font-size:13px; }
.repair-card li strong { color:white; white-space:nowrap; }
.process-section { background:#f7f9fa; }
.steps { max-width:1160px; margin:auto; display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--line); }
.steps article { padding:42px 40px 10px 0; }
.steps article+article { border-left:1px solid var(--line); padding-left:40px; }
.steps span { display:inline-grid; place-items:center; width:34px; height:34px; background:var(--blue); color:white; border-radius:50%; font-size:12px; font-weight:900; }
.steps h3 { margin:25px 0 12px; font-size:23px; }
.steps p { color:#62727b; line-height:1.6; font-size:14px; }
.booking-section { padding:90px max(8vw,60px); background:var(--blue); color:#fff; display:grid; grid-template-columns:1.2fr 1fr; gap:80px; align-items:center; }
.booking-section .eyebrow { color:#bce4fb; }
.booking-details { display:flex; flex-direction:column; align-items:flex-start; gap:14px; }
.booking-details p { max-width:520px; margin:0 0 12px; font-size:17px; line-height:1.55; color:#e2f4ff; }
.button-light { background:#fff; color:var(--navy); box-shadow:none; }
.booking-details>a:not(.button) { font-size:15px; font-weight:800; border-bottom:1px solid #ffffff88; }
footer { max-width:1280px; margin:auto; padding:65px 50px 35px; display:grid; grid-template-columns:1fr 1.3fr 1fr; gap:45px; align-items:start; }
footer img { width:150px; height:90px; object-fit:contain; }
footer p { color:#6b7980; font-size:14px; line-height:1.6; }
.footer-links { display:flex; justify-content:flex-end; gap:16px 22px; flex-wrap:wrap; font-size:13px; font-weight:800; }
footer small { grid-column:1/-1; border-top:1px solid var(--line); padding-top:20px; color:#89949a; }

@media (max-width:900px) {
  nav { display:none; }
  .hero { grid-template-columns:1fr; padding:70px 40px 50px; }
  .hero-photo { min-height:390px; margin:55px 0 0; }
  .hero-photo>img { height:390px; }
  .package-card, .package-card:nth-child(4), .package-card:nth-child(5) { grid-column:span 3; }
  .repair-grid { grid-template-columns:1fr; }
  .booking-section { grid-template-columns:1fr; gap:38px; }
}
@media (max-width:620px) {
  .site-header { height:82px; padding:10px 20px; }
  .brand img { width:120px; height:58px; }
  .button-small { font-size:12px; padding:12px; }
  .hero { min-height:auto; padding:60px 24px 36px; }
  h1 { font-size:57px; }
  .hero-heading { font-size:clamp(37px,12.5vw,46px); }
  .hero-intro { font-size:17px; }
  .hero-actions { align-items:flex-start; flex-direction:column; }
  .hero-photo { min-height:330px; margin-top:45px; box-shadow:10px 10px 0 var(--sky); }
  .hero-photo>img { height:330px; }
  .hero-photo figcaption { left:14px; bottom:14px; }
  .trust-strip { grid-template-columns:1fr; padding:18px 24px; }
  .trust-strip div { padding:12px 0; border-right:0; border-bottom:1px solid #ffffff22; }
  .section { padding:75px 24px; }
  .section-heading { grid-template-columns:1fr; gap:25px; margin-bottom:38px; }
  .package-grid { grid-template-columns:1fr; }
  .package-card, .package-card:nth-child(4), .package-card:nth-child(5) { grid-column:auto; }
  .steps { grid-template-columns:1fr; }
  .steps article, .steps article+article { padding:30px 0; border-left:0; border-bottom:1px solid var(--line); }
  .booking-section { padding:70px 24px; }
  footer { padding:50px 24px 28px; grid-template-columns:1fr; gap:20px; }
  .footer-links { justify-content:flex-start; }
  footer small { grid-column:auto; }
}
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } .button { transition:none; } }
