:root {
  --navy: #0B1628;
  --navy2: #111E36;
  --navy3: #182B4A;
  --blue: #2B81FF;
  --blue-lt: #5DA2FF;
  --gold: #FFD016;
  --gold-h: #FFE04A;
  --orange: #FF7216;
  --white: #FFF;
  --off: #F3F6FB;
  --g100: #E4EAF2;
  --g200: #C4CEDC;
  --g400: #7B8CA1;
  --g600: #3E4F66;
  --g800: #1A2740;
  --g900: #0F172A;
  --serif: 'Playfair Display', Georgia, serif;
  --sans: 'Source Sans 3', 'Segoe UI', sans-serif;
  --r: 10px;
  --r2: 16px;
  --ease: .32s cubic-bezier(.4, 0, .2, 1);
}

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0 }
html { scroll-behavior: smooth; -webkit-font-smoothing: antialiased }
body { font-family: var(--sans); font-size: 17px; color: var(--g600); background: var(--white); line-height: 1.65; overflow-x: hidden }
img { max-width: 100%; height: auto; display: block }
a { text-decoration: none; color: inherit }
button { font-family: var(--sans) }
.wrap { max-width: 1100px; margin: 0 auto; padding: 0 28px }

.rv { opacity: 0; transform: translateY(24px); transition: opacity .65s ease, transform .65s ease }
.rv.vis { opacity: 1; transform: none }

.stag { display: inline-flex; align-items: center; gap: 8px; font-size: 13px; font-weight: 800; text-transform: uppercase; letter-spacing: 3px; color: var(--blue); margin-bottom: 12px }
.stag::before { content: ''; width: 20px; height: 2px; background: currentColor; border-radius: 2px }
.sh { font-family: var(--serif); font-size: 48px; font-weight: 800; line-height: 1.15; color: var(--g900); margin-bottom: 16px; letter-spacing: -.4px }
.sh.wh { color: var(--white) }
.ss { font-size: 20px; color: var(--g400); max-width: 660px; line-height: 1.7 }
.ss.wh { color: rgba(255,255,255,.55) }
.shdr { text-align: center; margin-bottom: 48px }
.shdr .ss { margin: 0 auto }

.btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; font-size: 16px; font-weight: 700; letter-spacing: .6px; text-transform: uppercase; padding: 15px 34px; border: none; border-radius: 6px; cursor: pointer; transition: var(--ease); position: relative }
.btn-g { background: linear-gradient(180deg, #FFD83A 0%, var(--gold) 100%); color: var(--g900); box-shadow: 0 1px 0 rgba(255,255,255,.45) inset, 0 4px 14px rgba(255,208,22,.3) }
.btn-g:hover { background: linear-gradient(180deg, var(--gold-h) 0%, #FFD016 100%); transform: translateY(-2px); box-shadow: 0 1px 0 rgba(255,255,255,.5) inset, 0 8px 24px rgba(255,208,22,.38) }
.btn-g:active { transform: none }
.btn-w { background: var(--white); color: var(--navy); box-shadow: 0 4px 20px rgba(0,0,0,.12) }
.btn-w:hover { transform: translateY(-2px); box-shadow: 0 8px 28px rgba(0,0,0,.18) }
.bcta { text-align: center; margin-top: 40px }
.bcta p { font-size: 18px; color: var(--g400); margin-bottom: 16px; font-weight: 500 }
