:root {
  --ael-ink: #111827;
  --ael-muted: #667085;
  --ael-gold: #d5ad28;
  --ael-gold-dark: #8c6900;
  --ael-paper: #f8f7f3;
  --ael-surface: #fff;
  --ael-line: #e4e0d6;
  --ael-heading: "Playfair Display", Georgia, serif;
  --ael-body: "Cormorant", Georgia, serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; min-width: 320px; background: var(--ael-paper); color: var(--ael-ink); font-family: var(--ael-body); font-size: 19px; line-height: 1.55; -webkit-font-smoothing: antialiased; }
.ael-skip { position: fixed; left: 12px; top: 10px; z-index: 10; padding: .55rem .8rem; border-radius: 6px; background: var(--ael-ink); color: #fff; transform: translateY(-150%); }
.ael-skip:focus { transform: none; }
.ael-header { background: #fff; border-bottom: 1px solid rgba(213,173,40,.45); box-shadow: 0 4px 20px rgba(17,24,39,.06); }
.ael-header__inner { width: min(calc(100% - 48px), 1180px); min-height: 110px; margin: auto; display: flex; align-items: center; justify-content: space-between; }
.ael-back-slot { display: inline-flex; align-items: center; margin-right: auto; }
.ael-back-slot:empty { display: none; }
.ael-back-slot:not(:empty) { display: inline-flex; }
.ael-header__inner .fms-pwa-back-button--header { margin-left: 0; }
.ael-brand { display: block; line-height: 0; }
.ael-brand img { display: block; width: 98px; height: 98px; object-fit: contain; }
.ael-main { width: min(calc(100% - 48px), 1180px); margin: auto; padding: clamp(3.5rem, 8vw, 7rem) 0 5rem; }
.ael-hero { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(330px, .75fr); gap: clamp(2rem, 6vw, 5.5rem); align-items: center; }
.ael-eyebrow, .ael-kicker { display: inline-flex; align-items: center; gap: .65rem; color: var(--ael-gold-dark); font-family: var(--ael-heading); font-size: .78rem; font-weight: 700; letter-spacing: .17em; text-transform: uppercase; }
.ael-eyebrow::before { content: ""; width: 52px; height: 3px; background: var(--ael-gold); }
.ael-hero h1 { max-width: 760px; margin: .8rem 0 1.3rem; font-family: var(--ael-heading); font-size: clamp(3rem, 6vw, 5.6rem); line-height: .99; letter-spacing: -.04em; }
.ael-hero h1 em { color: var(--ael-gold-dark); font-weight: 600; }
.ael-hero__copy > p { max-width: 720px; margin: 0; color: var(--ael-muted); font-size: clamp(1.25rem, 2.1vw, 1.55rem); }
.ael-promises { display: flex; flex-wrap: wrap; gap: .6rem; margin-top: 1.6rem; }
.ael-promises span { padding: .45rem .75rem; border: 1px solid #ded7c6; border-radius: 999px; background: rgba(255,255,255,.62); color: #344054; font-size: .92rem; font-weight: 700; }
.ael-cta { border: 1px solid var(--ael-line); border-top: 7px solid var(--ael-gold); border-radius: 26px; background: var(--ael-surface); padding: clamp(1.5rem, 4vw, 2.7rem); box-shadow: 0 28px 70px rgba(17,24,39,.11); }
.ael-cta h2, .ael-intro h2, .ael-note h2 { margin: .55rem 0 .8rem; font-family: var(--ael-heading); line-height: 1.08; }
.ael-cta h2 { font-size: clamp(2rem, 3.5vw, 3rem); }
.ael-cta p { color: var(--ael-muted); }
.ael-button { display: flex; align-items: center; justify-content: center; gap: .8rem; width: 100%; margin-top: 1.35rem; padding: .9rem 1rem; border-radius: 14px; background: var(--ael-gold); color: #211a05; font-family: var(--ael-heading); font-weight: 700; text-decoration: none; box-shadow: 0 12px 28px rgba(181,139,8,.22); transition: transform .18s ease, background .18s ease; }
.ael-button:hover { background: #e0b82d; transform: translateY(-2px); }
.ael-button:focus-visible, .ael-brand:focus-visible { outline: 3px solid #1d4ed8; outline-offset: 3px; }
.ael-cta small { display: block; margin-top: .8rem; color: var(--ael-muted); text-align: center; }
.ael-intro { max-width: 720px; margin: clamp(5rem, 10vw, 9rem) auto 2.2rem; text-align: center; }
.ael-intro h2 { font-size: clamp(2.25rem, 4vw, 3.6rem); }
.ael-intro p { margin: 0; color: var(--ael-muted); font-size: 1.25rem; }
.ael-steps { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1rem; }
.ael-steps article { min-height: 290px; padding: 1.5rem; border: 1px solid var(--ael-line); border-radius: 20px; background: var(--ael-surface); box-shadow: 0 14px 36px rgba(17,24,39,.055); }
.ael-number { display: block; color: var(--ael-gold); font-family: var(--ael-heading); font-size: 2.1rem; font-weight: 700; }
.ael-steps h3 { margin: 2.4rem 0 .55rem; font-family: var(--ael-heading); font-size: 1.35rem; line-height: 1.2; }
.ael-steps p { margin: 0; color: var(--ael-muted); }
.ael-note { display: grid; grid-template-columns: .75fr 1fr; gap: 1.2rem 3rem; margin-top: clamp(4rem, 8vw, 7rem); padding: clamp(1.6rem, 5vw, 3.5rem); border-radius: 28px; background: #111827; color: #fff; }
.ael-note h2 { font-size: clamp(2rem, 4vw, 3.2rem); }
.ael-note .ael-kicker { color: #e5bf43; }
.ael-note ul { margin: 0; padding-left: 1.25rem; color: #f3f4f6; }
.ael-note li + li { margin-top: .75rem; }
.ael-note > p { grid-column: 1 / -1; margin: .6rem 0 0; padding-top: 1.2rem; border-top: 1px solid #374151; color: #cbd5e1; font-size: .95rem; }
.ael-footer { display: flex; justify-content: space-between; gap: 1rem; padding: 1.5rem max(24px, calc((100% - 1180px) / 2)); background: #070b13; color: #cbd5e1; }
.ael-footer a { color: #e5bf43; font-family: var(--ael-heading); font-weight: 700; text-decoration: none; }

@media (max-width: 900px) {
  .ael-hero { grid-template-columns: 1fr; }
  .ael-cta { max-width: 680px; }
  .ael-steps { grid-template-columns: repeat(2, 1fr); }
  .ael-steps article { min-height: 250px; }
}
@media (max-width: 560px) {
  body { font-size: 18px; }
  .ael-header__inner, .ael-main { width: min(calc(100% - 32px), 1180px); }
  .ael-header__inner { min-height: 92px; }
  .ael-brand img { width: 82px; height: 82px; }
  .ael-main { padding-top: 3rem; }
  .ael-eyebrow { align-items: flex-start; line-height: 1.4; }
  .ael-eyebrow::before { width: 34px; margin-top: .5rem; flex: 0 0 auto; }
  .ael-hero h1 { font-size: clamp(2.65rem, 13vw, 4rem); }
  .ael-hero__copy > p { font-size: 1.2rem; }
  .ael-cta { border-radius: 21px; }
  .ael-steps { grid-template-columns: 1fr; }
  .ael-steps article { min-height: 0; }
  .ael-steps h3 { margin-top: 1.25rem; }
  .ael-note { grid-template-columns: 1fr; }
  .ael-footer { flex-direction: column; }
}

@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } .ael-button { transition: none; } }
