:root {
  --navy: #222222;
  --navy-deep: #222222;
  --ink: #242424;
  --muted: #626262;
  --orange: #e21b17;
  --line: #e7e7e7;
  --paper: #ffffff;
  --red: #e21b17;
  --red-dark: #bd1511;
}

body { background: #ffffff; color: var(--ink); }
.page-shell { max-width: 1500px; }
.lead-section {
  border: 1px solid #ededed;
  border-radius: 18px;
  overflow: hidden;
  box-shadow: 0 22px 70px rgba(36, 36, 36, .08);
}
.story-panel {
  background: #ffffff;
  color: var(--ink);
  border-right: 1px solid #eeeeee;
}
.story-panel:before {
  inset: auto -200px -290px auto;
  width: 560px;
  height: 560px;
  border: 75px solid rgba(226, 27, 23, .045);
  border-radius: 50%;
  background: none;
}
.brand-row { min-height: 66px; }
.brand { flex: none; }
.brand img { display: block; width: 220px; height: auto; filter: none; }
.brand-caption { display: none; }
.eyebrow { color: var(--red); }
.eyebrow-line { background: var(--red); }
.story-content h1 { color: #202020; }
.story-content h1 em { color: var(--red); }
.intro { color: #5d5d5d; }
.story-content { padding: 48px 0 42px; }
.story-content h1 { max-width: 590px; font-size: clamp(40px, 3.6vw, 62px); }
.represented-brands { margin-top: 38px; }
.represented-label { margin: 0 0 14px; color: #777; font: 700 10px Manrope, sans-serif; letter-spacing: .16em; }
.represented-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.represented-logo { display: flex; align-items: center; justify-content: center; min-height: 68px; padding: 11px; border: 1px solid #eee; border-radius: 9px; background: #fff; overflow: hidden; }
.represented-logo img { display: block; max-width: 100%; max-height: 44px; object-fit: contain; }
.represented-logo img[src$="/fricon.png"] { transform: scale(2.2); }
.value-list > div { color: #3a3a3a; }
.value-icon { border-color: var(--red); color: var(--red); }
.footer-rule { background: #e5e5e5; }
.story-footer p { color: #666666; }
.story-footer b { color: var(--red); }
.orbit { display: none; }
.form-panel { background: #ffffff; }
.live-dot { background: var(--red); box-shadow: 0 0 0 4px #fff0ef; }
.step-label { color: var(--red); }
.form-heading h2 { color: #222222; }
.field { color: #373737; }
.field b, .consent b { color: var(--red); }
.field input, .field select, .field textarea {
  border-radius: 10px;
  background: #ffffff;
  color: #222222;
}
.field input:focus, .field select:focus, .field textarea:focus {
  border-color: var(--red);
  box-shadow: 0 0 0 3px rgba(226, 27, 23, .12);
}
.consent input { accent-color: var(--red); }
.submit-button {
  border-radius: 10px;
  background: var(--red);
  box-shadow: 0 10px 24px rgba(226, 27, 23, .17);
}
.submit-button:hover { background: var(--red-dark); }
.button-arrow { border-radius: 7px; }
.page-footer a:hover { color: var(--red); }
.page-footer { justify-content: center; text-align: center; line-height: 1.6; }
.page-footer a { font-weight: 700; }
.thank-you-body { min-height: 100vh; display: grid; place-items: center; padding: 24px; }
.thank-you-card { width: min(100%, 520px); padding: 42px; border: 1px solid #ededed; border-radius: 18px; background: #fff; text-align: center; box-shadow: 0 20px 60px rgba(36,36,36,.08); }
.thank-you-card > img { display: block; width: 220px; height: auto; margin: 0 auto 38px; }
.thank-you-mark { display: grid; place-items: center; width: 52px; height: 52px; margin: 0 auto 22px; border-radius: 50%; background: #fff0ef; color: var(--red); font-size: 26px; }
.thank-you-card h1 { margin: 0 0 12px; color: #222; font: 800 34px/1.2 Manrope, sans-serif; }
.thank-you-card p { margin: 0 0 26px; color: #626262; line-height: 1.6; }
.thank-you-button { display: block; padding: 15px 20px; border-radius: 10px; background: var(--red); color: #fff; font: 700 14px Manrope, sans-serif; text-decoration: none; }
.thank-you-button:hover { background: var(--red-dark); }
.thank-you-card small { display: block; margin-top: 15px; color: #888; font-size: 11px; }

@media (max-width: 1100px) {
  .lead-section { border-radius: 0; }
  .story-panel { border-right: 0; border-bottom: 1px solid #eeeeee; }
}
@media (max-width: 600px) {
  .brand img { width: 190px; }
  .story-content { padding: 48px 0; }
  .story-content h1 { font-size: 40px; }
  .represented-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .story-panel:before { width: 360px; height: 360px; right: -180px; bottom: -180px; border-width: 45px; }
}
