/* ═══════════════════════════════════════════════════
   Exotic Buyer — Design System
   ═══════════════════════════════════════════════════ */
@font-face {
  font-family: 'Archivo';
  font-style: normal; font-weight: 400 900; font-stretch: 100%;
  font-display: swap;
  src: url("assets/f3557167-eed3-4bf0-80ce-f7927c607960.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Archivo';
  font-style: normal; font-weight: 400 900; font-stretch: 100%;
  font-display: swap;
  src: url("assets/f75e4a83-752f-4b1e-be28-d38eb63ebf49.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Archivo';
  font-style: normal; font-weight: 400 900; font-stretch: 100%;
  font-display: swap;
  src: url("assets/588d44f3-50c0-4125-ae20-c7fb1e203d6f.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}

:root {
  --color-bg: #f3f2f2;
  --color-surface: #eae9e9;
  --color-text: #201e1d;
  --color-accent: #ec3013;
  --color-accent-2: #e15b47;
  --color-neutral-300: #d7d3d3;
  --color-neutral-600: #7d7979;
  --color-neutral-700: #605d5d;
  --font-heading: "Archivo", system-ui, sans-serif;
}

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
body {
  background: var(--color-bg); color: var(--color-text);
  font-family: var(--font-heading), system-ui, sans-serif;
  font-size: 15px; line-height: 1.55; font-weight: 400;
  -webkit-font-smoothing: antialiased;
}
h1, h2 { font-family: var(--font-heading); font-weight: 800; line-height: 0.93; letter-spacing: -0.035em; }
a { color: var(--color-text); text-decoration: none; }

/* Layout */
.page { width: 100%; max-width: 1440px; margin: 0 auto; background: var(--color-bg); }

/* Top bar */
.topbar {
  display: flex; align-items: center; justify-content: space-between;
  padding: 9px 44px; background: var(--color-text); color: var(--color-bg);
  font-size: 12px; font-weight: 700; letter-spacing: 0.18em; text-transform: uppercase;
}
.topbar .dot { width: 8px; height: 8px; background: var(--color-accent); display: inline-block; }

/* Nav */
.nav {
  display: flex; align-items: center; justify-content: space-between;
  padding: 20px 44px; border-bottom: 2px solid var(--color-text);
  position: sticky; top: 0; background: var(--color-bg); z-index: 20;
}
.nav-brand { font-weight: 900; font-size: 18px; letter-spacing: 0.24em; }
.nav-links { display: flex; gap: 34px; font-size: 13px; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; }
.nav-links a { color: var(--color-neutral-700); }
.nav-links a:hover { color: var(--color-text); }
.nav-right { display: flex; align-items: center; gap: 18px; }
.nav-tel { font-size: 16px; font-weight: 800; letter-spacing: 0.03em; }

/* Buttons */
.btn {
  display: inline-flex; align-items: center; justify-content: center;
  cursor: pointer; font-family: var(--font-heading); font-weight: 800;
  font-size: 14px; border: none; transition: background 0.15s;
}
.btn-primary { background: var(--color-accent); color: var(--color-bg); }
.btn-primary:hover { background: #c9220a; }
.btn-secondary { background: transparent; color: var(--color-text); border: 1px solid var(--color-neutral-300); }
.btn-secondary:hover { background: rgba(32,30,29,0.07); }

/* Tag */
.tag {
  display: inline-flex; align-items: center; font-size: 11px;
  letter-spacing: 0.02em; padding: 3px 10px;
}
.tag-neutral { background: #f8f4f4; color: #444141; }

/* Section dividers */
.border-b { border-bottom: 2px solid var(--color-text); }
.border-r { border-right: 2px solid var(--color-text); }

/* Hero */
.hero-wrap { position: relative; overflow: hidden; border-bottom: 2px solid var(--color-text); }
.hero-grid {
  position: relative; display: grid;
  grid-template-columns: minmax(0,7fr) minmax(0,5fr);
}
.hero-left { padding: 46px 44px 40px; display: flex; flex-direction: column; gap: 28px; border-right: 2px solid var(--color-text); }
.hero-left h1 { font-size: 96px; line-height: 0.96; letter-spacing: -0.04em; margin: 0; }
.hero-left p { font-size: 19px; line-height: 1.5; color: var(--color-neutral-700); max-width: 50ch; }
.hero-left .vin-row { display: flex; gap: 0; border: 2px solid var(--color-text); }
.hero-left .vin-row input {
  flex: 1; min-width: 0; height: 74px; border: none; background: transparent;
  font-family: var(--font-heading), monospace; font-size: 20px; letter-spacing: 0.1em;
  padding: 0 20px; color: var(--color-text);
}
.hero-left .vin-row input:focus { outline: none; }
.hero-left .vin-row input::placeholder { color: var(--color-neutral-600); font-family: var(--font-heading), system-ui, sans-serif; font-size: 17px; letter-spacing: 0; }
.hero-left .vin-row button { height: 74px; padding: 0 34px; font-size: 18px; flex: 0 0 auto; }

.hero-right { padding: 46px 44px 40px; display: flex; flex-direction: column; gap: 22px; }
.hero-right .assurance { display: flex; gap: 16px; padding: 14px 0; border-top: 1px solid var(--color-neutral-300); }
.hero-right .assurance-num { font-size: 13px; font-weight: 900; color: var(--color-accent); letter-spacing: 0.06em; flex: 0 0 auto; padding-top: 4px; }
.hero-right .assurance-text { font-size: 17px; font-weight: 600; line-height: 1.4; }
.hero-right .call-blk { margin-top: auto; display: flex; flex-direction: column; gap: 8px; border-top: 2px solid var(--color-text); padding-top: 20px; }
.hero-right .call-blk h3 { font-size: 32px; font-weight: 800; letter-spacing: -0.02em; margin: 0; }

.hero-btm {
  position: relative; display: grid; grid-template-columns: repeat(4, minmax(0,1fr));
  border-top: 2px solid var(--color-text);
}
.hero-btm > div {
  padding: 20px 30px 22px; border-right: 1px solid var(--color-neutral-300);
  display: flex; gap: 14px;
}
.hero-btm > div:last-child { border-right: none; }
.hero-btm .num { font-size: 14px; font-weight: 900; color: var(--color-accent); letter-spacing: 0.06em; }
.hero-btm h4 { font-size: 18px; font-weight: 700; margin: 0; }
.hero-btm p { font-size: 14px; color: var(--color-neutral-600); margin: 0; }

/* Brands */
.brands-row { display: flex; flex-direction: column; gap: 22px; padding: 34px 44px 38px; border-bottom: 2px solid var(--color-text); }
.brands-logos {
  display: grid; grid-template-columns: repeat(9, minmax(0,1fr));
  align-items: center; justify-items: center; gap: 20px;
  filter: grayscale(1); opacity: 0.82;
}
.brands-logos img { max-height: 36px; max-width: 100%; object-fit: contain; }

/* Section header */
.sec-header { padding: 48px 44px 26px; display: flex; align-items: flex-end; justify-content: space-between; gap: 40px; }
.sec-header p { max-width: 36ch; font-size: 17px; line-height: 1.5; color: var(--color-neutral-700); margin: 0; }

/* Section label */
.sec-label { font-size: 12px; font-weight: 800; letter-spacing: 0.22em; text-transform: uppercase; color: var(--color-accent); }

/* Two-col blocks */
.two-col { display: grid; grid-template-columns: minmax(0,7fr) minmax(0,5fr); border-bottom: 2px solid var(--color-text); }
.two-col-right { padding: 48px 44px; display: flex; flex-direction: column; justify-content: space-between; gap: 32px; }
.two-col-right h2 { font-size: 46px; line-height: 0.98; letter-spacing: -0.03em; }
.two-col-right p { font-size: 18px; line-height: 1.55; color: var(--color-neutral-700); }
.two-col-right .vin-row { display: flex; gap: 0; border: 2px solid var(--color-text); }
.two-col-right .vin-row input {
  flex: 1; min-width: 0; height: 58px; border: none; background: transparent;
  font-size: 17px; letter-spacing: 0.06em; padding: 0 18px; color: var(--color-text);
}
.two-col-right .vin-row input:focus { outline: none; }
.two-col-right .vin-row button { height: 58px; padding: 0 24px; font-size: 16px; flex: 0 0 auto; }

/* Video placeholder */
.video-placeholder {
  position: relative; border-right: 2px solid var(--color-text);
  background: var(--color-text); aspect-ratio: 16/9;
  display: flex; flex-direction: column; align-items: center; justify-content: center;
  gap: 16px; color: rgba(243,242,242,0.6); text-align: center; padding: 40px;
}
.video-placeholder .play-btn {
  width: 0; height: 0;
  border-left: 26px solid rgba(243,242,242,0.5);
  border-top: 16px solid transparent; border-bottom: 16px solid transparent;
}

/* What we buy */
.buy-grid { display: grid; grid-template-columns: minmax(0,4fr) minmax(0,8fr); border-bottom: 2px solid var(--color-text); }
.buy-left { padding: 56px 44px; border-right: 2px solid var(--color-text); display: flex; flex-direction: column; justify-content: space-between; gap: 40px; }
.buy-left h2 { font-size: 54px; line-height: 0.95; letter-spacing: -0.035em; }
.buy-left p { font-size: 18px; line-height: 1.55; color: var(--color-neutral-700); }
.buy-left .tags { display: flex; gap: 10px; flex-wrap: wrap; }
.buy-left .not-us { display: flex; align-items: flex-start; gap: 12px; border-top: 2px solid var(--color-text); padding-top: 16px; }
.buy-left .not-us span:first-child { font-size: 13px; font-weight: 900; letter-spacing: 0.14em; text-transform: uppercase; color: var(--color-accent); flex: 0 0 auto; padding-top: 2px; }
.buy-left .not-us p { font-size: 16px; line-height: 1.5; color: var(--color-neutral-700); }

.buy-right .brand-item {
  display: grid; grid-template-columns: minmax(0,3fr) minmax(0,5fr) 160px;
  align-items: baseline; gap: 24px; padding: 20px 44px;
  border-bottom: 1px solid var(--color-neutral-300);
}
.buy-right .brand-name { font-size: 28px; font-weight: 700; letter-spacing: -0.02em; }
.buy-right .brand-models { font-size: 15px; color: var(--color-neutral-600); letter-spacing: 0.06em; }
.buy-right .brand-demand { font-size: 14px; font-weight: 800; letter-spacing: 0.14em; text-transform: uppercase; color: var(--color-accent); text-align: right; }
.buy-right .buy-footer {
  display: flex; align-items: center; justify-content: space-between; gap: 24px;
  padding: 22px 44px;
}
.buy-right .buy-footer span { font-size: 17px; color: var(--color-neutral-700); }

/* Gallery */
.gallery-grid { display: grid; grid-template-columns: repeat(5, minmax(0,1fr)); border-top: 2px solid var(--color-text); border-bottom: 2px solid var(--color-text); }
.gallery-item { position: relative; aspect-ratio: 4/3; border-right: 1px solid var(--color-neutral-300); overflow: hidden; }
.gallery-item:last-child { border-right: none; }
.gallery-item img { width: 100%; height: 100%; object-fit: cover; display: block; }
.gallery-item .label {
  position: absolute; left: 0; bottom: 0;
  background: var(--color-text); color: var(--color-bg);
  font-size: 11px; font-weight: 800; letter-spacing: 0.16em;
  text-transform: uppercase; padding: 6px 10px;
}

/* Process */
.process-steps { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); border-top: 2px solid var(--color-text); border-bottom: 2px solid var(--color-text); }
.process-step { padding: 36px 36px 44px; border-right: 1px solid var(--color-neutral-300); display: flex; flex-direction: column; gap: 14px; }
.process-step:last-child { border-right: none; }
.process-step .step-num { font-weight: 900; font-size: 56px; line-height: 1; color: var(--color-accent); }
.process-step h3 { font-weight: 700; font-size: 26px; letter-spacing: -0.015em; }
.process-step p { font-size: 16px; line-height: 1.55; color: var(--color-neutral-700); }

/* Parallax hero */
.parallax { position: relative; height: 520px; border-bottom: 2px solid var(--color-text); }
.parallax img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; display: block; }
.parallax .overlay {
  position: absolute; inset: 0; pointer-events: none;
  background: linear-gradient(90deg, rgba(32,30,29,0.86) 0%, rgba(32,30,29,0.35) 45%, rgba(32,30,29,0) 78%);
}
.parallax .content {
  position: absolute; left: 44px; bottom: 44px; max-width: 680px; z-index: 2;
  display: flex; flex-direction: column; gap: 18px;
}
.parallax .content .accent-bar { width: 72px; height: 4px; background: var(--color-accent); }
.parallax .content h2 { font-size: 72px; line-height: 0.9; letter-spacing: -0.04em; color: var(--color-bg); }
.parallax .content p { font-size: 19px; line-height: 1.45; color: rgba(243,242,242,0.85); max-width: 52ch; }

/* Comparison */
.comp-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); border-top: 2px solid var(--color-text); }
.comp-col { display: flex; flex-direction: column; }
.comp-col:first-child { border-right: 2px solid var(--color-text); }
.comp-header { padding: 18px 44px; font-size: 13px; font-weight: 800; letter-spacing: 0.2em; text-transform: uppercase; }
.comp-header.bad { background: #eae7e7; color: var(--color-neutral-700); }
.comp-header.good { background: var(--color-accent); color: #fff; }
.comp-row { padding: 15px 44px; border-bottom: 1px solid var(--color-neutral-300); display: flex; justify-content: space-between; font-size: 17px; color: var(--color-neutral-700); }
.comp-row.dark { border-bottom-color: rgba(243,242,242,0.25); }
.comp-row span:last-child { font-weight: 700; }
.comp-col.dark-bg { background: var(--color-text); color: var(--color-bg); }
.comp-col.dark-bg .comp-row { color: var(--color-bg); }
.comp-col.dark-bg .comp-row span:first-child { opacity: 0.75; }

/* Timeline */
.timeline { border-bottom: 2px solid var(--color-text); }
.tl-row { display: grid; grid-template-columns: 180px minmax(0,1fr); align-items: baseline; gap: 32px; padding: 20px 44px; border-top: 1px solid var(--color-neutral-300); }
.tl-row:first-child { border-top: 2px solid var(--color-text); }
.tl-row .when { font-size: 15px; font-weight: 900; letter-spacing: 0.14em; text-transform: uppercase; color: var(--color-accent); }
.tl-row h3 { font-size: 24px; font-weight: 700; letter-spacing: -0.015em; }
.tl-row p { font-size: 16px; line-height: 1.5; color: var(--color-neutral-700); }

/* Testimonial */
.testimonial { display: grid; grid-template-columns: 480px minmax(0,1fr); border-bottom: 2px solid var(--color-text); background: #f8f4f4; }
.testimonial .t-left { position: relative; border-right: 2px solid var(--color-text); min-height: 520px; }
.testimonial .t-left img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; display: block; }
.testimonial .t-right { padding: 48px 52px; display: flex; flex-direction: column; justify-content: space-between; gap: 36px; }
.testimonial blockquote { margin: 0; display: flex; flex-direction: column; gap: 24px; }
.testimonial blockquote span:first-child { font-weight: 800; font-size: 52px; line-height: 1.02; letter-spacing: -0.03em; }
.testimonial blockquote cite { font-size: 15px; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; color: var(--color-neutral-600); font-style: normal; }
.testimonial .t-cta { display: flex; align-items: center; gap: 28px; border-top: 2px solid var(--color-text); padding-top: 24px; }

/* Nationwide */
.nationwide { background: var(--color-text); color: var(--color-bg); border-bottom: 2px solid var(--color-text); }
.nationwide .nw-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); }
.nationwide .nw-left { padding: 56px 44px; display: flex; flex-direction: column; gap: 28px; border-right: 2px solid rgba(243,242,242,0.25); }
.nationwide .nw-left h2 { font-size: 66px; line-height: 0.92; letter-spacing: -0.04em; }
.nationwide .nw-left p { font-size: 18px; line-height: 1.5; color: rgba(243,242,242,0.75); max-width: 46ch; }
.nationwide .nw-left .vin-row { display: flex; gap: 0; border: 2px solid var(--color-bg); max-width: 480px; }
.nationwide .nw-left .vin-row input {
  flex: 1; min-width: 0; height: 58px; border: none; background: transparent;
  color: var(--color-bg); font-size: 17px; letter-spacing: 0.06em; padding: 0 18px;
}
.nationwide .nw-left .vin-row input:focus { outline: none; }
.nationwide .nw-left .vin-row input::placeholder { color: rgba(243,242,242,0.4); }
.nationwide .nw-left .vin-row button { height: 58px; padding: 0 24px; font-size: 16px; flex: 0 0 auto; }
.nationwide .nw-right { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); grid-auto-rows: 1fr; }
.nationwide .nw-right .nw-card {
  padding: 28px 26px; border-right: 1px solid rgba(243,242,242,0.22);
  border-bottom: 1px solid rgba(243,242,242,0.22);
  display: flex; flex-direction: column; gap: 8px;
}
.nationwide .nw-right .nw-card .nw-k { font-size: 13px; font-weight: 900; letter-spacing: 0.14em; color: var(--color-accent); }
.nationwide .nw-right .nw-card .nw-t { font-size: 20px; font-weight: 700; letter-spacing: -0.01em; }
.nationwide .nw-right .nw-card .nw-s { font-size: 15px; line-height: 1.5; color: rgba(243,242,242,0.7); }
.nationwide .nw-bottom {
  grid-column: 1/-1; padding: 22px 26px; background: var(--color-accent); color: #fff;
  display: flex; align-items: center; justify-content: space-between;
}
.nationwide .nw-bottom span { font-size: 15px; font-weight: 700; letter-spacing: 0.16em; text-transform: uppercase; }

/* FAQ */
.faq-grid { display: grid; grid-template-columns: minmax(0,4fr) minmax(0,8fr); border-bottom: 2px solid var(--color-text); }
.faq-left { padding: 56px 44px; border-right: 2px solid var(--color-text); }
.faq-left h2 { font-size: 48px; line-height: 0.95; letter-spacing: -0.035em; margin-top: 16px; }
.faq-item { border-bottom: 1px solid var(--color-neutral-300); }
.faq-q {
  all: unset; cursor: pointer; box-sizing: border-box; width: 100%;
  display: flex; align-items: center; justify-content: space-between; gap: 24px;
  padding: 22px 44px;
}
.faq-q span { font-size: 23px; font-weight: 700; letter-spacing: -0.015em; }
.faq-mark { font-size: 26px; font-weight: 800; color: var(--color-accent); flex: 0 0 auto; }
.faq-a { display: none; padding: 0 120px 26px 44px; font-size: 17px; line-height: 1.6; color: var(--color-neutral-700); }
.faq-item.open .faq-a { display: block; }
.faq-item.open .faq-mark { transform: rotate(45deg); }

/* CTA */
.cta-bar {
  background: var(--color-accent); color: #fff; padding: 72px 44px 64px;
  display: flex; flex-direction: column; gap: 36px;
}
.cta-bar h2 { font-weight: 900; font-size: 120px; line-height: 0.86; letter-spacing: -0.05em; max-width: 18ch; }
.cta-bar .cta-row { display: flex; align-items: flex-end; justify-content: space-between; gap: 48px; flex-wrap: wrap; }
.cta-bar .cta-row p { max-width: 40ch; font-size: 21px; line-height: 1.45; font-weight: 500; }
.cta-bar .cta-form { display: flex; flex-direction: column; gap: 12px; flex: 0 0 620px; }
.cta-bar .vin-row { display: flex; gap: 0; border: 2px solid #fff; background: rgba(255,255,255,0.08); }
.cta-bar .vin-row input {
  flex: 1; min-width: 0; height: 64px; border: none; background: transparent;
  color: #fff; font-size: 18px; letter-spacing: 0.06em; padding: 0 20px;
}
.cta-bar .vin-row input:focus { outline: none; }
.cta-bar .vin-row input::placeholder { color: rgba(255,255,255,0.5); }
.cta-bar .vin-row button { height: 64px; padding: 0 30px; font-size: 17px; flex: 0 0 auto; background: var(--color-text); color: #fff; }
.cta-bar .cta-note { font-size: 15px; letter-spacing: 0.04em; opacity: 0.85; }

/* Footer */
.footer {
  background: var(--color-text); color: var(--color-bg);
  padding: 48px 44px 36px; display: flex; flex-direction: column; gap: 40px;
}
.footer-grid { display: grid; grid-template-columns: minmax(0,2fr) repeat(3, minmax(0,1fr)); gap: 40px; }
.footer-brand { font-weight: 900; font-size: 18px; letter-spacing: 0.24em; }
.footer-grid p { font-size: 15px; line-height: 1.55; color: rgba(243,242,242,0.7); max-width: 34ch; }
.footer-col { display: flex; flex-direction: column; gap: 10px; font-size: 15px; color: rgba(243,242,242,0.7); }
.footer-col strong { font-size: 12px; font-weight: 800; letter-spacing: 0.18em; text-transform: uppercase; color: var(--color-bg); margin-bottom: 4px; }
.footer-col .big { font-size: 19px; font-weight: 800; color: var(--color-bg); }
.footer-bottom { display: flex; justify-content: space-between; gap: 24px; border-top: 1px solid rgba(243,242,242,0.25); padding-top: 20px; font-size: 13px; letter-spacing: 0.06em; color: rgba(243,242,242,0.55); }

/* Feedback message */
.vin-feedback {
  display: flex; align-items: center; gap: 16px;
  background: var(--color-accent); color: #fff; padding: 16px 20px;
  font-size: 12px; font-weight: 800; letter-spacing: 0.2em; text-transform: uppercase;
}
.vin-feedback span:last-child { font-size: 17px; line-height: 1.4; text-transform: none; letter-spacing: 0; }
.vin-feedback.hidden { display: none; }

/* Responsive */
@media (max-width: 1024px) {
  .hero-grid, .two-col, .buy-grid, .testimonial, .faq-grid { grid-template-columns: 1fr; }
  .hero-left h1 { font-size: 48px; }
  .parallax .content h2 { font-size: 36px; }
  .cta-bar h2 { font-size: 48px; }
  .nav-links { display: none; }
  .process-steps { grid-template-columns: 1fr; }
  .gallery-grid { grid-template-columns: repeat(2, 1fr); }
  .nationwide .nw-grid, .nw-grid .nw-right { grid-template-columns: 1fr; }
  .footer-grid { grid-template-columns: 1fr 1fr; }
  .cta-bar .cta-form { flex: 1 1 auto; }
  .hero-btm { grid-template-columns: repeat(2, 1fr); }
  .topbar { font-size: 10px; flex-wrap: wrap; gap: 4px; }
  .brand-item { grid-template-columns: 1fr; padding: 14px 24px; }
  .faq-q { padding: 18px 24px; }
  .faq-a { padding: 0 24px 20px 24px; }
  .buy-left, .buy-right .buy-footer, .sec-header, .faq-left, .nationwide .nw-left,
  .testimonial .t-right, .hero-left, .hero-right, .two-col-right { padding: 32px 24px; }
  .brands-row, .nav { padding-left: 24px; padding-right: 24px; }
}

@media (max-width: 640px) {
  .hero-left h1 { font-size: 36px; }
  .parallax .content h2 { font-size: 28px; }
  .cta-bar h2 { font-size: 36px; }
  .cta-bar .cta-form { flex: 1 1 100%; }
  .gallery-grid { grid-template-columns: 1fr; }
  .footer-grid { grid-template-columns: 1fr; }
  .brands-logos { grid-template-columns: repeat(4, 1fr); }
}

/* Page-specific overrides below */
@font-face {
  font-family: 'Archivo';
  font-style: normal; font-weight: 400 900; font-stretch: 100%;
  font-display: swap;
  src: url("assets/f3557167-eed3-4bf0-80ce-f7927c607960.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Archivo';
  font-style: normal; font-weight: 400 900; font-stretch: 100%;
  font-display: swap;
  src: url("assets/f75e4a83-752f-4b1e-be28-d38eb63ebf49.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Archivo';
  font-style: normal; font-weight: 400 900; font-stretch: 100%;
  font-display: swap;
  src: url("assets/588d44f3-50c0-4125-ae20-c7fb1e203d6f.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}

:root {
  --color-bg: #f3f2f2;
  --color-surface: #eae9e9;
  --color-text: #201e1d;
  --color-accent: #ec3013;
  --color-accent-2: #e15b47;
  --color-neutral-300: #d7d3d3;
  --color-neutral-600: #7d7979;
  --color-neutral-700: #605d5d;
  --font-heading: "Archivo", system-ui, sans-serif;
}

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
body {
  background: var(--color-bg); color: var(--color-text);
  font-family: var(--font-heading), system-ui, sans-serif;
  font-size: 15px; line-height: 1.55; font-weight: 400;
  -webkit-font-smoothing: antialiased;
}
h1, h2 { font-family: var(--font-heading); font-weight: 800; line-height: 0.93; letter-spacing: -0.035em; }
a { color: var(--color-text); text-decoration: none; }

/* Layout */
.page { width: 100%; max-width: 1440px; margin: 0 auto; background: var(--color-bg); }

/* Top bar */
.topbar {
  display: flex; align-items: center; justify-content: space-between;
  padding: 9px 44px; background: var(--color-text); color: var(--color-bg);
  font-size: 12px; font-weight: 700; letter-spacing: 0.18em; text-transform: uppercase;
}
.topbar .dot { width: 8px; height: 8px; background: var(--color-accent); display: inline-block; }

/* Nav */
.nav {
  display: flex; align-items: center; justify-content: space-between;
  padding: 20px 44px; border-bottom: 2px solid var(--color-text);
  position: sticky; top: 0; background: var(--color-bg); z-index: 20;
}
.nav-brand { font-weight: 900; font-size: 18px; letter-spacing: 0.24em; }
.nav-links { display: flex; gap: 34px; font-size: 13px; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; }
.nav-links a { color: var(--color-neutral-700); }
.nav-links a:hover { color: var(--color-text); }
.nav-right { display: flex; align-items: center; gap: 18px; }
.nav-tel { font-size: 16px; font-weight: 800; letter-spacing: 0.03em; }

/* Buttons */
.btn {
  display: inline-flex; align-items: center; justify-content: center;
  cursor: pointer; font-family: var(--font-heading); font-weight: 800;
  font-size: 14px; border: none; transition: background 0.15s;
}
.btn-primary { background: var(--color-accent); color: var(--color-bg); }
.btn-primary:hover { background: #c9220a; }
.btn-secondary { background: transparent; color: var(--color-text); border: 1px solid var(--color-neutral-300); }
.btn-secondary:hover { background: rgba(32,30,29,0.07); }

/* Tag */
.tag {
  display: inline-flex; align-items: center; font-size: 11px;
  letter-spacing: 0.02em; padding: 3px 10px;
}
.tag-neutral { background: #f8f4f4; color: #444141; }

/* Section dividers */
.border-b { border-bottom: 2px solid var(--color-text); }
.border-r { border-right: 2px solid var(--color-text); }

/* Hero */
.hero-wrap { position: relative; overflow: hidden; border-bottom: 2px solid var(--color-text); }
.hero-grid {
  position: relative; display: grid;
  grid-template-columns: minmax(0,7fr) minmax(0,5fr);
}
.hero-left { padding: 46px 44px 40px; display: flex; flex-direction: column; gap: 28px; border-right: 2px solid var(--color-text); }
.hero-left h1 { font-size: 96px; line-height: 0.96; letter-spacing: -0.04em; margin: 0; }
.hero-left p { font-size: 19px; line-height: 1.5; color: var(--color-neutral-700); max-width: 50ch; }
.hero-left .vin-row { display: flex; gap: 0; border: 2px solid var(--color-text); }
.hero-left .vin-row input {
  flex: 1; min-width: 0; height: 74px; border: none; background: transparent;
  font-family: var(--font-heading), monospace; font-size: 20px; letter-spacing: 0.1em;
  padding: 0 20px; color: var(--color-text);
}
.hero-left .vin-row input:focus { outline: none; }
.hero-left .vin-row input::placeholder { color: var(--color-neutral-600); font-family: var(--font-heading), system-ui, sans-serif; font-size: 17px; letter-spacing: 0; }
.hero-left .vin-row button { height: 74px; padding: 0 34px; font-size: 18px; flex: 0 0 auto; }

.hero-right { padding: 46px 44px 40px; display: flex; flex-direction: column; gap: 22px; }
.hero-right .assurance { display: flex; gap: 16px; padding: 14px 0; border-top: 1px solid var(--color-neutral-300); }
.hero-right .assurance-num { font-size: 13px; font-weight: 900; color: var(--color-accent); letter-spacing: 0.06em; flex: 0 0 auto; padding-top: 4px; }
.hero-right .assurance-text { font-size: 17px; font-weight: 600; line-height: 1.4; }
.hero-right .call-blk { margin-top: auto; display: flex; flex-direction: column; gap: 8px; border-top: 2px solid var(--color-text); padding-top: 20px; }
.hero-right .call-blk h3 { font-size: 32px; font-weight: 800; letter-spacing: -0.02em; margin: 0; }

.hero-btm {
  position: relative; display: grid; grid-template-columns: repeat(4, minmax(0,1fr));
  border-top: 2px solid var(--color-text);
}
.hero-btm > div {
  padding: 20px 30px 22px; border-right: 1px solid var(--color-neutral-300);
  display: flex; gap: 14px;
}
.hero-btm > div:last-child { border-right: none; }
.hero-btm .num { font-size: 14px; font-weight: 900; color: var(--color-accent); letter-spacing: 0.06em; }
.hero-btm h4 { font-size: 18px; font-weight: 700; margin: 0; }
.hero-btm p { font-size: 14px; color: var(--color-neutral-600); margin: 0; }

/* Brands */
.brands-row { display: flex; flex-direction: column; gap: 22px; padding: 34px 44px 38px; border-bottom: 2px solid var(--color-text); }
.brands-logos {
  display: grid; grid-template-columns: repeat(9, minmax(0,1fr));
  align-items: center; justify-items: center; gap: 20px;
  filter: grayscale(1); opacity: 0.82;
}
.brands-logos img { max-height: 36px; max-width: 100%; object-fit: contain; }

/* Section header */
.sec-header { padding: 48px 44px 26px; display: flex; align-items: flex-end; justify-content: space-between; gap: 40px; }
.sec-header p { max-width: 36ch; font-size: 17px; line-height: 1.5; color: var(--color-neutral-700); margin: 0; }

/* Section label */
.sec-label { font-size: 12px; font-weight: 800; letter-spacing: 0.22em; text-transform: uppercase; color: var(--color-accent); }

/* Two-col blocks */
.two-col { display: grid; grid-template-columns: minmax(0,7fr) minmax(0,5fr); border-bottom: 2px solid var(--color-text); }
.two-col-right { padding: 48px 44px; display: flex; flex-direction: column; justify-content: space-between; gap: 32px; }
.two-col-right h2 { font-size: 46px; line-height: 0.98; letter-spacing: -0.03em; }
.two-col-right p { font-size: 18px; line-height: 1.55; color: var(--color-neutral-700); }
.two-col-right .vin-row { display: flex; gap: 0; border: 2px solid var(--color-text); }
.two-col-right .vin-row input {
  flex: 1; min-width: 0; height: 58px; border: none; background: transparent;
  font-size: 17px; letter-spacing: 0.06em; padding: 0 18px; color: var(--color-text);
}
.two-col-right .vin-row input:focus { outline: none; }
.two-col-right .vin-row button { height: 58px; padding: 0 24px; font-size: 16px; flex: 0 0 auto; }

/* Video placeholder */
.video-placeholder {
  position: relative; border-right: 2px solid var(--color-text);
  background: var(--color-text); aspect-ratio: 16/9;
  display: flex; flex-direction: column; align-items: center; justify-content: center;
  gap: 16px; color: rgba(243,242,242,0.6); text-align: center; padding: 40px;
}
.video-placeholder .play-btn {
  width: 0; height: 0;
  border-left: 26px solid rgba(243,242,242,0.5);
  border-top: 16px solid transparent; border-bottom: 16px solid transparent;
}

/* What we buy */
.buy-grid { display: grid; grid-template-columns: minmax(0,4fr) minmax(0,8fr); border-bottom: 2px solid var(--color-text); }
.buy-left { padding: 56px 44px; border-right: 2px solid var(--color-text); display: flex; flex-direction: column; justify-content: space-between; gap: 40px; }
.buy-left h2 { font-size: 54px; line-height: 0.95; letter-spacing: -0.035em; }
.buy-left p { font-size: 18px; line-height: 1.55; color: var(--color-neutral-700); }
.buy-left .tags { display: flex; gap: 10px; flex-wrap: wrap; }
.buy-left .not-us { display: flex; align-items: flex-start; gap: 12px; border-top: 2px solid var(--color-text); padding-top: 16px; }
.buy-left .not-us span:first-child { font-size: 13px; font-weight: 900; letter-spacing: 0.14em; text-transform: uppercase; color: var(--color-accent); flex: 0 0 auto; padding-top: 2px; }
.buy-left .not-us p { font-size: 16px; line-height: 1.5; color: var(--color-neutral-700); }

.buy-right .brand-item {
  display: grid; grid-template-columns: minmax(0,3fr) minmax(0,5fr) 160px;
  align-items: baseline; gap: 24px; padding: 20px 44px;
  border-bottom: 1px solid var(--color-neutral-300);
}
.buy-right .brand-name { font-size: 28px; font-weight: 700; letter-spacing: -0.02em; }
.buy-right .brand-models { font-size: 15px; color: var(--color-neutral-600); letter-spacing: 0.06em; }
.buy-right .brand-demand { font-size: 14px; font-weight: 800; letter-spacing: 0.14em; text-transform: uppercase; color: var(--color-accent); text-align: right; }
.buy-right .buy-footer {
  display: flex; align-items: center; justify-content: space-between; gap: 24px;
  padding: 22px 44px;
}
.buy-right .buy-footer span { font-size: 17px; color: var(--color-neutral-700); }

/* Gallery */
.gallery-grid { display: grid; grid-template-columns: repeat(5, minmax(0,1fr)); border-top: 2px solid var(--color-text); border-bottom: 2px solid var(--color-text); }
.gallery-item { position: relative; aspect-ratio: 4/3; border-right: 1px solid var(--color-neutral-300); overflow: hidden; }
.gallery-item:last-child { border-right: none; }
.gallery-item img { width: 100%; height: 100%; object-fit: cover; display: block; }
.gallery-item .label {
  position: absolute; left: 0; bottom: 0;
  background: var(--color-text); color: var(--color-bg);
  font-size: 11px; font-weight: 800; letter-spacing: 0.16em;
  text-transform: uppercase; padding: 6px 10px;
}

/* Process */
.process-steps { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); border-top: 2px solid var(--color-text); border-bottom: 2px solid var(--color-text); }
.process-step { padding: 36px 36px 44px; border-right: 1px solid var(--color-neutral-300); display: flex; flex-direction: column; gap: 14px; }
.process-step:last-child { border-right: none; }
.process-step .step-num { font-weight: 900; font-size: 56px; line-height: 1; color: var(--color-accent); }
.process-step h3 { font-weight: 700; font-size: 26px; letter-spacing: -0.015em; }
.process-step p { font-size: 16px; line-height: 1.55; color: var(--color-neutral-700); }

/* Parallax hero */
.parallax { position: relative; height: 520px; border-bottom: 2px solid var(--color-text); }
.parallax img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; display: block; }
.parallax .overlay {
  position: absolute; inset: 0; pointer-events: none;
  background: linear-gradient(90deg, rgba(32,30,29,0.86) 0%, rgba(32,30,29,0.35) 45%, rgba(32,30,29,0) 78%);
}
.parallax .content {
  position: absolute; left: 44px; bottom: 44px; max-width: 680px; z-index: 2;
  display: flex; flex-direction: column; gap: 18px;
}
.parallax .content .accent-bar { width: 72px; height: 4px; background: var(--color-accent); }
.parallax .content h2 { font-size: 72px; line-height: 0.9; letter-spacing: -0.04em; color: var(--color-bg); }
.parallax .content p { font-size: 19px; line-height: 1.45; color: rgba(243,242,242,0.85); max-width: 52ch; }

/* Comparison */
.comp-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); border-top: 2px solid var(--color-text); }
.comp-col { display: flex; flex-direction: column; }
.comp-col:first-child { border-right: 2px solid var(--color-text); }
.comp-header { padding: 18px 44px; font-size: 13px; font-weight: 800; letter-spacing: 0.2em; text-transform: uppercase; }
.comp-header.bad { background: #eae7e7; color: var(--color-neutral-700); }
.comp-header.good { background: var(--color-accent); color: #fff; }
.comp-row { padding: 15px 44px; border-bottom: 1px solid var(--color-neutral-300); display: flex; justify-content: space-between; font-size: 17px; color: var(--color-neutral-700); }
.comp-row.dark { border-bottom-color: rgba(243,242,242,0.25); }
.comp-row span:last-child { font-weight: 700; }
.comp-col.dark-bg { background: var(--color-text); color: var(--color-bg); }
.comp-col.dark-bg .comp-row { color: var(--color-bg); }
.comp-col.dark-bg .comp-row span:first-child { opacity: 0.75; }

/* Timeline */
.timeline { border-bottom: 2px solid var(--color-text); }
.tl-row { display: grid; grid-template-columns: 180px minmax(0,1fr); align-items: baseline; gap: 32px; padding: 20px 44px; border-top: 1px solid var(--color-neutral-300); }
.tl-row:first-child { border-top: 2px solid var(--color-text); }
.tl-row .when { font-size: 15px; font-weight: 900; letter-spacing: 0.14em; text-transform: uppercase; color: var(--color-accent); }
.tl-row h3 { font-size: 24px; font-weight: 700; letter-spacing: -0.015em; }
.tl-row p { font-size: 16px; line-height: 1.5; color: var(--color-neutral-700); }

/* Testimonial */
.testimonial { display: grid; grid-template-columns: 480px minmax(0,1fr); border-bottom: 2px solid var(--color-text); background: #f8f4f4; }
.testimonial .t-left { position: relative; border-right: 2px solid var(--color-text); min-height: 520px; }
.testimonial .t-left img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; display: block; }
.testimonial .t-right { padding: 48px 52px; display: flex; flex-direction: column; justify-content: space-between; gap: 36px; }
.testimonial blockquote { margin: 0; display: flex; flex-direction: column; gap: 24px; }
.testimonial blockquote span:first-child { font-weight: 800; font-size: 52px; line-height: 1.02; letter-spacing: -0.03em; }
.testimonial blockquote cite { font-size: 15px; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; color: var(--color-neutral-600); font-style: normal; }
.testimonial .t-cta { display: flex; align-items: center; gap: 28px; border-top: 2px solid var(--color-text); padding-top: 24px; }

/* Nationwide */
.nationwide { background: var(--color-text); color: var(--color-bg); border-bottom: 2px solid var(--color-text); }
.nationwide .nw-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); }
.nationwide .nw-left { padding: 56px 44px; display: flex; flex-direction: column; gap: 28px; border-right: 2px solid rgba(243,242,242,0.25); }
.nationwide .nw-left h2 { font-size: 66px; line-height: 0.92; letter-spacing: -0.04em; }
.nationwide .nw-left p { font-size: 18px; line-height: 1.5; color: rgba(243,242,242,0.75); max-width: 46ch; }
.nationwide .nw-left .vin-row { display: flex; gap: 0; border: 2px solid var(--color-bg); max-width: 480px; }
.nationwide .nw-left .vin-row input {
  flex: 1; min-width: 0; height: 58px; border: none; background: transparent;
  color: var(--color-bg); font-size: 17px; letter-spacing: 0.06em; padding: 0 18px;
}
.nationwide .nw-left .vin-row input:focus { outline: none; }
.nationwide .nw-left .vin-row input::placeholder { color: rgba(243,242,242,0.4); }
.nationwide .nw-left .vin-row button { height: 58px; padding: 0 24px; font-size: 16px; flex: 0 0 auto; }
.nationwide .nw-right { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); grid-auto-rows: 1fr; }
.nationwide .nw-right .nw-card {
  padding: 28px 26px; border-right: 1px solid rgba(243,242,242,0.22);
  border-bottom: 1px solid rgba(243,242,242,0.22);
  display: flex; flex-direction: column; gap: 8px;
}
.nationwide .nw-right .nw-card .nw-k { font-size: 13px; font-weight: 900; letter-spacing: 0.14em; color: var(--color-accent); }
.nationwide .nw-right .nw-card .nw-t { font-size: 20px; font-weight: 700; letter-spacing: -0.01em; }
.nationwide .nw-right .nw-card .nw-s { font-size: 15px; line-height: 1.5; color: rgba(243,242,242,0.7); }
.nationwide .nw-bottom {
  grid-column: 1/-1; padding: 22px 26px; background: var(--color-accent); color: #fff;
  display: flex; align-items: center; justify-content: space-between;
}
.nationwide .nw-bottom span { font-size: 15px; font-weight: 700; letter-spacing: 0.16em; text-transform: uppercase; }

/* FAQ */
.faq-grid { display: grid; grid-template-columns: minmax(0,4fr) minmax(0,8fr); border-bottom: 2px solid var(--color-text); }
.faq-left { padding: 56px 44px; border-right: 2px solid var(--color-text); }
.faq-left h2 { font-size: 48px; line-height: 0.95; letter-spacing: -0.035em; margin-top: 16px; }
.faq-item { border-bottom: 1px solid var(--color-neutral-300); }
.faq-q {
  all: unset; cursor: pointer; box-sizing: border-box; width: 100%;
  display: flex; align-items: center; justify-content: space-between; gap: 24px;
  padding: 22px 44px;
}
.faq-q span { font-size: 23px; font-weight: 700; letter-spacing: -0.015em; }
.faq-mark { font-size: 26px; font-weight: 800; color: var(--color-accent); flex: 0 0 auto; }
.faq-a { display: none; padding: 0 120px 26px 44px; font-size: 17px; line-height: 1.6; color: var(--color-neutral-700); }
.faq-item.open .faq-a { display: block; }
.faq-item.open .faq-mark { transform: rotate(45deg); }

/* CTA */
.cta-bar {
  background: var(--color-accent); color: #fff; padding: 72px 44px 64px;
  display: flex; flex-direction: column; gap: 36px;
}
.cta-bar h2 { font-weight: 900; font-size: 120px; line-height: 0.86; letter-spacing: -0.05em; max-width: 18ch; }
.cta-bar .cta-row { display: flex; align-items: flex-end; justify-content: space-between; gap: 48px; flex-wrap: wrap; }
.cta-bar .cta-row p { max-width: 40ch; font-size: 21px; line-height: 1.45; font-weight: 500; }
.cta-bar .cta-form { display: flex; flex-direction: column; gap: 12px; flex: 0 0 620px; }
.cta-bar .vin-row { display: flex; gap: 0; border: 2px solid #fff; background: rgba(255,255,255,0.08); }
.cta-bar .vin-row input {
  flex: 1; min-width: 0; height: 64px; border: none; background: transparent;
  color: #fff; font-size: 18px; letter-spacing: 0.06em; padding: 0 20px;
}
.cta-bar .vin-row input:focus { outline: none; }
.cta-bar .vin-row input::placeholder { color: rgba(255,255,255,0.5); }
.cta-bar .vin-row button { height: 64px; padding: 0 30px; font-size: 17px; flex: 0 0 auto; background: var(--color-text); color: #fff; }
.cta-bar .cta-note { font-size: 15px; letter-spacing: 0.04em; opacity: 0.85; }

/* Footer */
.footer {
  background: var(--color-text); color: var(--color-bg);
  padding: 48px 44px 36px; display: flex; flex-direction: column; gap: 40px;
}
.footer-grid { display: grid; grid-template-columns: minmax(0,2fr) repeat(3, minmax(0,1fr)); gap: 40px; }
.footer-brand { font-weight: 900; font-size: 18px; letter-spacing: 0.24em; }
.footer-grid p { font-size: 15px; line-height: 1.55; color: rgba(243,242,242,0.7); max-width: 34ch; }
.footer-col { display: flex; flex-direction: column; gap: 10px; font-size: 15px; color: rgba(243,242,242,0.7); }
.footer-col strong { font-size: 12px; font-weight: 800; letter-spacing: 0.18em; text-transform: uppercase; color: var(--color-bg); margin-bottom: 4px; }
.footer-col .big { font-size: 19px; font-weight: 800; color: var(--color-bg); }
.footer-bottom { display: flex; justify-content: space-between; gap: 24px; border-top: 1px solid rgba(243,242,242,0.25); padding-top: 20px; font-size: 13px; letter-spacing: 0.06em; color: rgba(243,242,242,0.55); }

/* Feedback message */
.vin-feedback {
  display: flex; align-items: center; gap: 16px;
  background: var(--color-accent); color: #fff; padding: 16px 20px;
  font-size: 12px; font-weight: 800; letter-spacing: 0.2em; text-transform: uppercase;
}
.vin-feedback span:last-child { font-size: 17px; line-height: 1.4; text-transform: none; letter-spacing: 0; }
.vin-feedback.hidden { display: none; }

/* Responsive */
@media (max-width: 1024px) {
  .hero-grid, .two-col, .buy-grid, .testimonial, .faq-grid { grid-template-columns: 1fr; }
  .hero-left h1 { font-size: 48px; }
  .parallax .content h2 { font-size: 36px; }
  .cta-bar h2 { font-size: 48px; }
  .nav-links { display: none; }
  .process-steps { grid-template-columns: 1fr; }
  .gallery-grid { grid-template-columns: repeat(2, 1fr); }
  .nationwide .nw-grid, .nw-grid .nw-right { grid-template-columns: 1fr; }
  .footer-grid { grid-template-columns: 1fr 1fr; }
  .cta-bar .cta-form { flex: 1 1 auto; }
  .hero-btm { grid-template-columns: repeat(2, 1fr); }
  .topbar { font-size: 10px; flex-wrap: wrap; gap: 4px; }
  .brand-item { grid-template-columns: 1fr; padding: 14px 24px; }
  .faq-q { padding: 18px 24px; }
  .faq-a { padding: 0 24px 20px 24px; }
  .buy-left, .buy-right .buy-footer, .sec-header, .faq-left, .nationwide .nw-left,
  .testimonial .t-right, .hero-left, .hero-right, .two-col-right { padding: 32px 24px; }
  .brands-row, .nav { padding-left: 24px; padding-right: 24px; }
}

@media (max-width: 640px) {
  .hero-left h1 { font-size: 36px; }
  .parallax .content h2 { font-size: 28px; }
  .cta-bar h2 { font-size: 36px; }
  .cta-bar .cta-form { flex: 1 1 100%; }
  .gallery-grid { grid-template-columns: 1fr; }
  .footer-grid { grid-template-columns: 1fr; }
  .brands-logos { grid-template-columns: repeat(4, 1fr); }
}