:root {   --blue-50: #EFF7FF; --blue-100: #DFEDFF; --blue-200: #B7DCFF; --blue-300: #78C1FF; --blue-400: #31A1FF; --blue-500: #0685F1; --blue-600: #0067CE; --blue-700: #0052A7; --blue-800: #02468A; --blue-900: #073260; --blue-950: #06254B;  --text-primary: #021222; --text-secondary: #36414D; --text-primary-alt: #FFFFFF; --text-secondary-alt: rgba(233, 234, 243, 0.8);  --text-accent: #FFBC00;  --bg-white: #FFFFFF; --bg-gray-1: #F6F6F6; --bg-gray-2: #EAEAEA; --bg-accent: #FFBC00; --bg-footer: #091626;  --border-dark: #B1BFC4; --bg-dark-transparent: rgba(0, 0, 0, 0.1);  --font-primary: 'Geist', sans-serif; --font-serif: 'Playfair Display', serif;   --h1-size: 72px; --h1-lh: 80px; --h1-space: -0.02em; --h1-weight: 600;  --h2-size: 52px; --h2-lh: 62px; --h2-space: -0.01em; --h2-weight: 500;   --display-n-size: 32px; --display-n-lh: 40px; --display-n-space: 0em;  --display-m-size: 28px; --display-m-lh: 36px; --display-m-space: 0em;  --display-s-size: 24px; --display-s-lh: 32px; --display-s-space: 0em;  --display-weight: 500;   --body-l-size: 20px; --body-l-lh: 28px; --body-l-space: 0em;  --body-m-size: 18px; --body-m-lh: 26px; --body-m-space: 0em;  --body-size: 16px; --body-lh: 24px; --body-space: 0em;   --label-size: 14px; --label-lh: 22px; --label-space: 0em; --label-weight: 500;  --btn-size: 16px; --btn-lh: 24px; --btn-space: -0.02em; --btn-weight: 500; }  @media (max-width: 767px) { :root {  --h1-size: 40px; --h1-lh: 48px; --h1-space: -0.025em; --h2-size: 32px; --h2-lh: 36px; --h2-space: -0.01em;  --display-n-size: 24px; --display-n-lh: 30px; --display-m-size: 20px; --display-m-lh: 26px; --display-m-space: -0.02em; --display-s-size: 20px; --display-s-lh: 26px; --display-s-space: -0.01em;  --body-l-size: 16px; --body-l-lh: 22px; --body-l-space: -0.02em; --body-m-size: 16px; --body-m-lh: 24px; --body-m-space: -0.01em; --body-size: 14px; --body-lh: 20px;  --btn-size: 16px; --btn-lh: 24px; } }    .text-h1 { font-family: var(--font-primary); font-weight: var(--h1-weight); font-size: var(--h1-size); line-height: var(--h1-lh); letter-spacing: var(--h1-space); color: var(--text-primary); }  .text-h1-italic { font-family: var(--font-serif); font-weight: var(--h1-weight); font-style: italic; font-size: var(--h1-size); line-height: var(--h1-lh); letter-spacing: var(--h1-space); color: var(--text-primary); }  .text-h1-home { font-family: var(--font-primary); font-weight: var(--h1-weight); font-size: var(--h1-size); line-height: var(--h1-lh); letter-spacing: var(--h1-space); color: var(--text-primary-alt); } .text-h1-italic-home { font-family: var(--font-serif); font-weight: var(--h1-weight); font-style: italic; font-size: var(--h1-size); line-height: var(--h1-lh); letter-spacing: var(--h1-space); color: var(--text-primary-alt); }  .text-h2 { font-family: var(--font-primary); font-weight: var(--h2-weight); font-size: var(--h2-size); line-height: var(--h2-lh); letter-spacing: var(--h2-space); color: var(--text-primary); }  .text-h2-italic { font-family: var(--font-serif); font-weight: var(--h2-weight); font-style: italic; font-size: var(--h2-size); line-height: var(--h2-lh); letter-spacing: var(--h2-space); color: var(--text-primary); }   .text-display-n { font-family: var(--font-primary); font-weight: var(--display-weight); font-size: var(--display-n-size); line-height: var(--display-n-lh); letter-spacing: var(--display-n-space); color: var(--text-primary); }  .text-display-m { font-family: var(--font-primary); font-weight: var(--display-weight); font-size: var(--display-m-size); line-height: var(--display-m-lh); letter-spacing: var(--display-m-space); color: var(--text-primary); }  .text-display-s { font-family: var(--font-primary); font-weight: var(--display-weight); font-size: var(--display-s-size); line-height: var(--display-s-lh); letter-spacing: var(--display-s-space); color: var(--text-primary); }   .text-body-l { font-family: var(--font-primary); font-size: var(--body-l-size); line-height: var(--body-l-lh); letter-spacing: var(--body-l-space); font-weight: 500; color: var(--text-primary); }  .text-body-m { font-family: var(--font-primary); font-size: var(--body-m-size); line-height: var(--body-m-lh); letter-spacing: var(--body-m-space); font-weight: 400; color: var(--text-secondary); }  .text-body { font-family: var(--font-primary); font-size: var(--body-size); line-height: var(--body-lh); letter-spacing: var(--body-space); font-weight: 400; color: var(--text-secondary); }  .text-body-medium { font-family: var(--font-primary); font-size: var(--body-size); line-height: var(--body-lh); letter-spacing: var(--body-space); font-weight: 500; color: var(--text-secondary); }   .text-label { font-family: var(--font-primary); font-size: var(--label-size); line-height: var(--label-lh); letter-spacing: var(--label-space); font-weight: var(--label-weight); color: var(--text-primary); }  .text-btn { font-family: var(--font-primary); font-weight: var(--btn-weight); font-size: var(--btn-size); line-height: var(--btn-lh); letter-spacing: var(--btn-space); }   .color-primary { color: var(--text-primary); } .color-secondary { color: var(--text-secondary); } .color-accent { color: var(--text-accent); } .color-white { color: var(--text-primary-alt); } .color-blue-500 { color: var(--blue-500); } .color-secondary-alt { color: var(--text-secondary-alt); }  .bg-primary-blue { background-color: var(--blue-500); } .bg-footer { background-color: var(--bg-footer); } .bg-light { background-color: var(--bg-gray-1); } .bg-gray-2 { background-color: var(--bg-gray-2); } .bg-accent { background-color: var(--bg-accent); } .bg-white { background-color: var(--bg-white); } .bg-dark-transparent { background-color: var(--bg-dark-transparent); }  .border-dark { border-color: var(--border-dark); border-style: solid; border-width: 1px; }  .fw-regular { font-weight: 400; } .fw-medium { font-weight: 500; } .fw-semibold { font-weight: 600; } .fst-italic { font-style: italic; }