/* AZ company website proposal. Shared palette only; platform unchanged. */
:root {
  --ink: #10293d;
  --navy-deep: #0a1c2b;
  --accent: #c7dc59;
  --accent-hover: #d9ea83;
  --orange: var(--accent);
  --cream: #f5f7f8;
  --line: #dce4e8;
  --muted: #526675;
}
body { line-height: 1.7; -webkit-font-smoothing: antialiased; }
button, a { -webkit-tap-highlight-color: transparent; }
a:focus-visible, button:focus-visible { outline: 3px solid #739300; outline-offset: 5px; }
section[id], main[id] { scroll-margin-top: 145px; }
.skip-link { position:fixed; top:-100px; inset-inline-start:20px; z-index:20; background:var(--accent); color:var(--ink); padding:12px 20px; border-radius:8px; }
.skip-link:focus { top:10px; }
.site-header { min-height:114px; padding:14px max(24px, calc((100vw - 1240px)/2)); gap:28px; box-shadow:0 3px 20px #10293d05; }
:root .wordmark { width:108px; min-height:88px; border-radius:14px; padding:9px 8px; gap:4px; background:var(--ink); color:var(--accent); box-shadow:inset 0 0 0 1px #ffffff12; }
.wordmark strong { font-size:32px; color:var(--accent); letter-spacing:-2px; }
.wordmark > span > span { font-size:13px; letter-spacing:.4px; }
.wordmark small { font-size:11px; letter-spacing:.35px; color:#eff4f6; }
nav { gap:38px; }
nav a { font-size:14px; padding:8px 0; border-bottom:2px solid transparent; transition:border-color .2s; }
nav a:hover { border-bottom-color:var(--accent); }
.language { padding:10px 18px; border:1px solid var(--line); border-radius:10px; font-family:Manrope,Alexandria,sans-serif; font-size:14px; font-weight:700; }
.language:hover { background:var(--cream); }
.hero { min-height:540px; padding:82px max(24px, calc((100vw - 1240px)/2)); gap:35px; background:linear-gradient(120deg, var(--navy-deep), var(--ink) 70%); }
.hero-copy { max-width:690px; }
.eyebrow { font-size:13px; letter-spacing:0; line-height:1.9; margin-bottom:20px; }
.hero .eyebrow { color:var(--accent); }
h1 { font-size:clamp(36px,4.4vw,62px); line-height:1.4; letter-spacing:-1.4px; margin-bottom:24px; }
.intro { font-size:16px; line-height:2; color:#c4d1da; max-width:550px; }
.primary-button { background:var(--accent); color:var(--ink); border-radius:10px; font-size:14px; padding:16px 24px; min-height:54px; box-shadow:0 4px 15px #0000000c; }
.primary-button:hover { background:var(--accent-hover); transform:translateY(-2px); }
.hero-visual { height:320px; }
.hero-visual p { color:#ffffff08; letter-spacing:-8px; font-size:170px; left:12%; bottom:-70px; margin:0; }
.route { border-color:#c7dc5942; }
.route-dot { background:var(--accent); box-shadow:0 0 0 7px #c7dc5910; }
.truck { background:#edf3f5; box-shadow:0 22px 45px #0005; }
.truck span { background:var(--accent); }
.truck em { border-color:var(--accent); }
.truck i, .truck b { background:var(--navy-deep); }
.coverage { padding:28px max(24px, calc((100vw - 1240px)/2)); gap:40px; }
.coverage p { font-size:14px; }
.coverage div { gap:16px; }
.coverage span { font-size:15px; }
.coverage span:not(:last-child)::after { margin:0 20px; color:#80983a; }
.section { padding:88px max(24px, calc((100vw - 1240px)/2)); }
.section-heading { max-width:730px; margin-bottom:38px; }
.section-heading .eyebrow, .contact .eyebrow { color:#4f651c; }
h2 { font-size:clamp(28px,3vw,42px); line-height:1.5; letter-spacing:-.7px; }
.service-grid { border:0; gap:20px; }
.service-grid article { border:1px solid var(--line); border-radius:16px; background:#fff; min-height:245px; padding:28px; transition:border-color .2s, transform .2s, box-shadow .2s; }
.service-grid article:hover { transform:translateY(-3px); border-color:#a7b9c4; box-shadow:0 14px 28px #10293d08; }
.service-grid article > span { display:inline-flex; justify-content:center; align-items:center; width:37px; height:37px; background:#f0f5d9; border-radius:10px; color:#435711; font-size:13px; }
.service-grid h3 { margin:22px 0 12px; font-size:17px; line-height:1.8; }
.service-grid p { font-size:14px; line-height:1.95; }
.about { padding:68px max(24px, calc((100vw - 1120px)/2)); background:var(--ink); color:#fff; gap:70px; align-items:center; border-top:4px solid var(--accent); }
.about .eyebrow { color:var(--accent); }
.about > p { color:#c4d1da; font-size:16px; line-height:2.15; }
.contact { margin:80px auto; width:calc(100% - 48px); max-width:1240px; padding:48px; border-radius:20px; gap:40px; box-shadow:0 10px 40px #10293d04; }
.contact p { font-size:15px; line-height:2; }
.contact-actions { min-width:235px; }
.contact-actions .primary-button { justify-content:center; width:100%; }
.email { font-size:14px; direction:ltr; text-underline-offset:5px; }
footer { padding:28px max(24px, calc((100vw - 1240px)/2)); gap:24px; }
footer .wordmark { transform:scale(.88); transform-origin:center; }
footer p { font-size:13px; direction:ltr; }
.english h1 { line-height:1.16; }
.english h2 { line-height:1.3; }
@media (max-width:1000px) {
  .service-grid { grid-template-columns:repeat(2,1fr); }
  .hero { gap:20px; }
  .about { gap:40px; }
}
@media (max-width:780px) {
  .site-header { min-height:96px; padding:10px 20px; flex-wrap:wrap; gap:12px; }
  :root .site-header .wordmark { width:96px; min-height:82px; }
  .site-header nav { display:flex; order:3; width:100%; justify-content:center; gap:28px; border-top:1px solid var(--line); padding-top:5px; }
  nav a { font-size:13px; }
  .hero { padding:52px 24px 35px; min-height:0; gap:0; grid-template-columns:1fr; }
  h1 { font-size:38px; letter-spacing:-.8px; }
  .hero-visual { height:190px; margin-top:16px; }
  .hero-visual p { font-size:130px; bottom:-40px; left:20%; }
  .route-one { width:410px; right:-45px; }
  .route-two { width:280px; right:30px; }
  .truck { bottom:38px; right:28%; }
  .coverage { padding:24px; }
  .coverage div { margin-top:12px; gap:10px; }
  .coverage span { font-size:14px; }
  .coverage span:not(:last-child)::after { margin:0 10px; }
  .section { padding:58px 24px; }
  .about { grid-template-columns:1fr; padding:46px 24px; gap:24px; }
  .contact { margin:48px 24px; padding:28px; display:block; }
  .contact-actions { margin-top:24px; align-items:stretch; min-width:0; }
  footer { padding:20px 24px; }
}
@media (max-width:520px) {
  .service-grid { grid-template-columns:1fr; gap:14px; }
  .service-grid article { min-height:0; padding:24px; }
  .hero .eyebrow { font-size:12px; }
  footer { flex-wrap:wrap; }
}
@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  *, *::before, *::after { transition:none !important; }
}
