@font-face { font-family: "Plus Jakarta Sans"; font-style: normal; font-weight: 400; font-display: swap; src: url("/assets/fonts/plus-jakarta-sans-400-221a4135d06a.woff2") format("woff2"); }
@font-face { font-family: "Plus Jakarta Sans"; font-style: normal; font-weight: 500; font-display: swap; src: url("/assets/fonts/plus-jakarta-sans-500-bad081c8dbc1.woff2") format("woff2"); }
@font-face { font-family: "Plus Jakarta Sans"; font-style: normal; font-weight: 600; font-display: swap; src: url("/assets/fonts/plus-jakarta-sans-600-8872bb5c9111.woff2") format("woff2"); }
@font-face { font-family: "Plus Jakarta Sans"; font-style: normal; font-weight: 700; font-display: swap; src: url("/assets/fonts/plus-jakarta-sans-700-2050755bf475.woff2") format("woff2"); }
@font-face { font-family: "Plus Jakarta Sans"; font-style: normal; font-weight: 800; font-display: swap; src: url("/assets/fonts/plus-jakarta-sans-800-5f301a8ef9c2.woff2") format("woff2"); }
@font-face { font-family: "Plus Jakarta Sans"; font-style: italic; font-weight: 700; font-display: swap; src: url("/assets/fonts/plus-jakarta-sans-700i-995c33d1ea0f.woff2") format("woff2"); }
@font-face { font-family: "Plus Jakarta Sans"; font-style: italic; font-weight: 800; font-display: swap; src: url("/assets/fonts/plus-jakarta-sans-800i-714d8ba058e1.woff2") format("woff2"); }
:root { --navy-950: #040A22; --navy-900: #07123A; --navy-850: #0A1847; --navy-800: #0D1F56; --navy-700: #142B6E; --navy-600: #1E3A86; --royal-800: #062275; --royal-700: #0A2F9E; --royal-600: #0A3BB8; --royal-500: #1652E0; --royal-400: #3D74FF; --royal-300: #7FA2FF; --peri-400: #9DB0EC; --peri-300: #B9C7F2; --peri-200: #D6DEF8; --peri-100: #EEF2FD; --peri-50: #F6F8FE; --white: #FFFFFF; --slate-500: #6B7799; --slate-700: #3A4566; --black: #000000; --red-500: #E5383B; --red-400: #FF5C5F; --green-500: #1FB86A; --whatsapp: #25D366; --whatsapp-dark: #1DA851; --surface-base: var(--navy-900); --surface-raised: var(--navy-800); --surface-sunken: var(--navy-950); --surface-brand: var(--royal-600); --surface-light: var(--peri-50); --surface-white: var(--white); --gradient-brand: linear-gradient(135deg, #062275 0%, #0A3BB8 62%, #1652E0 100%); --gradient-night: linear-gradient(180deg, #13296B 0%, #07123A 46%, #050D2C 100%); --text-strong: var(--white); --text-body: var(--peri-200); --text-muted: var(--peri-400); --text-accent: var(--peri-300); --text-on-light: var(--navy-900); --text-on-light-body: var(--slate-700); --text-on-light-muted: var(--slate-500); --accent: var(--royal-500); --accent-hover: var(--royal-400); --accent-soft: rgba(61, 116, 255, 0.16); --on-accent: var(--white); --cta: var(--white); --cta-hover: var(--peri-100); --on-cta: var(--navy-900); --urgent: var(--red-500); --urgent-soft: rgba(229, 56, 59, 0.16); --success: var(--green-500); --line: rgba(185, 199, 242, 0.14); --line-strong: rgba(185, 199, 242, 0.28); --line-accent: rgba(61, 116, 255, 0.6); --line-on-light: rgba(7, 18, 58, 0.12); --focus-ring: rgba(127, 162, 255, 0.55); }
:root { --font-display: 'Plus Jakarta Sans', 'Segoe UI', system-ui, sans-serif; --font-sans: 'Plus Jakarta Sans', 'Segoe UI', system-ui, sans-serif; --font-headline: var(--font-display); --font-body: var(--font-sans); --weight-regular: 400; --weight-medium: 500; --weight-semibold: 600; --weight-bold: 700; --weight-black: 800; --text-xs: 0.75rem; --text-sm: 0.875rem; --text-base: 1rem; --text-md: 1.125rem; --text-lg: 1.375rem; --text-xl: 1.75rem; --text-2xl: 2.25rem; --text-3xl: 3rem; --text-4xl: 4rem; --text-5xl: 5.5rem; --text-display: clamp(2.5rem, 6.4vw + 0.6rem, 6rem); --text-hero-sub: clamp(1.0625rem, 1.2vw + 0.6rem, 1.375rem); --leading-display: 1.0; --leading-tight: 1.1; --leading-snug: 1.35; --leading-body: 1.6; --tracking-display: -0.02em; --tracking-tight: -0.01em; --tracking-normal: 0em; --tracking-wide: 0.04em; --tracking-eyebrow: 0.16em; }
:root { --space-0: 0; --space-1: 4px; --space-2: 8px; --space-3: 12px; --space-4: 16px; --space-5: 24px; --space-6: 32px; --space-7: 40px; --space-8: 56px; --space-9: 80px; --space-10: 112px; --space-11: 160px; --maxw-content: 1200px; --maxw-narrow: 640px; --gutter: clamp(20px, 6vw, 104px); --section-y: clamp(64px, 9vw, 160px); --radius-sm: 6px; --radius-md: 12px; --radius-btn: 14px; --radius-lg: 20px; --radius-xl: 28px; --radius-pill: 999px; --shadow-sm: 0 1px 2px rgba(2, 6, 24, 0.5); --shadow-md: 0 12px 32px -12px rgba(2, 6, 24, 0.6); --shadow-card: 0 30px 70px -28px rgba(2, 6, 24, 0.8); --shadow-cta: 0 12px 40px -8px rgba(127, 162, 255, 0.55); --shadow-blue: 0 16px 40px -12px rgba(22, 82, 224, 0.6); --shadow-light: 0 20px 50px -24px rgba(7, 18, 58, 0.28); --ease-out: cubic-bezier(0.22, 0.61, 0.36, 1); --ease-inout: cubic-bezier(0.65, 0, 0.35, 1); --dur-fast: 140ms; --dur-base: 240ms; --dur-slow: 480ms; }
*, ::before, ::after { box-sizing: border-box; }
html { text-size-adjust: 100%; }
body { margin: 0px; background: var(--surface-base); color: var(--text-body); font-family: var(--font-body); font-size: var(--text-base); line-height: var(--leading-body); -webkit-font-smoothing: antialiased; }
h1, h2, h3, h4 { font-family: var(--font-headline); color: var(--text-strong); font-weight: var(--weight-black); line-height: var(--leading-tight); letter-spacing: var(--tracking-tight); text-wrap: balance; margin: 0px; }
h1 { font-size: var(--text-4xl); line-height: var(--leading-display); letter-spacing: var(--tracking-display); }
h2 { font-size: var(--text-3xl); }
h3 { font-size: var(--text-xl); font-weight: var(--weight-bold); }
h4 { font-size: var(--text-lg); font-weight: var(--weight-bold); }
p { margin: 0px; text-wrap: pretty; }
a { color: var(--text-accent); text-decoration: none; }
a:hover { color: var(--text-strong); }
img { max-width: 100%; display: block; }
::selection { background: var(--royal-500); color: var(--white); }
:focus-visible { outline: 2px solid var(--focus-ring); outline-offset: 2px; }
.eyebrow { font-family: var(--font-sans); font-size: var(--text-xs); font-weight: var(--weight-bold); letter-spacing: var(--tracking-eyebrow); text-transform: uppercase; color: var(--text-accent); }
.display-caps { font-family: var(--font-display); font-weight: var(--weight-black); text-transform: uppercase; letter-spacing: var(--tracking-display); line-height: var(--leading-display); }
.hl-accent { color: var(--text-accent); }
.hl-plate { background: linear-gradient(transparent 10%, var(--royal-500) 10% 94%, transparent 94%); color: var(--white); padding: 0px 0.16em; -webkit-box-decoration-break: clone; box-decoration-break: clone; }
:root { --line-gold: var(--line-accent); --gold-700: var(--royal-500); --gold-400: var(--royal-400); --gold-300: var(--peri-300); --paper-200: var(--white); --surface-paper: var(--white); --ink-900: var(--navy-900); --taupe-700: var(--slate-700); --taupe-600: var(--slate-500); --font-accent: var(--font-display); }
a { color: var(--text-accent); }
a:hover { color: var(--text-strong); }
.accent-serif { font-family: var(--font-display); font-style: normal; font-weight: var(--weight-black); }
.cenab { position: fixed; inset: 0px; z-index: 0; background: radial-gradient(60% 50% at 12% 0%,rgba(22,82,224,.16),transparent 70%),radial-gradient(55% 45% at 100% 100%,rgba(22,82,224,.14),transparent 70%),var(--peri-50); }
#root { position: relative; z-index: 1; }
[data-onlight] { color: var(--navy-900) !important; border-color: rgba(7, 18, 58, 0.28) !important; }
[data-wa] { background: var(--whatsapp) !important; color: rgb(255, 255, 255) !important; border: 1px solid transparent !important; box-shadow: rgba(37, 211, 102, 0.38) 0px 12px 30px !important; }
[data-wa]:hover { background: var(--whatsapp-dark) !important; }
.ph { display: flex; align-items: center; justify-content: center; text-align: center; padding: 16px; font: 500 12px / 1.5 ui-monospace, SFMono-Regular, Menlo, monospace; letter-spacing: 0.02em; color: var(--peri-400); background: repeating-linear-gradient(135deg,rgba(185,199,242,.07) 0 10px,transparent 10px 20px),var(--navy-850); border: 1px dashed var(--line-strong); }
@media (max-width: 700px) {
  .cal-title { font-size: clamp(1.6rem, 1.1rem + 2.4vw, 2rem) !important; margin-top: 10px !important; }
  .cal-wrap { min-height: 0px; align-items: flex-start; padding-top: var(--space-5); padding-bottom: var(--space-6); }
  .cal-head { margin-bottom: var(--space-5) !important; }
  .cal-brand { font-size: 16px !important; margin-bottom: 14px !important; }
  .cal-month { max-width: 280px; width: 100%; margin: 0px auto; padding: var(--space-4) !important; }
  .cal-month > div > div:first-child { font-size: var(--text-md) !important; margin-bottom: var(--space-3) !important; }
  .cal-month > div > div:last-child { gap: 4px !important; }
  .cal-month > div > div:last-child > div { font-size: 13px !important; }
}
html, body { margin: 0px; background: var(--surface-base); }
.legal { max-width: var(--maxw-narrow); margin: 0px auto; padding: var(--space-9) var(--gutter) var(--space-8); font-family: var(--font-sans); color: var(--text-body); }
.legal__brand { display: flex; align-items: center; gap: 12px; margin-bottom: var(--space-7); font-family: var(--font-display); font-weight: 800; text-transform: uppercase; font-size: 18px; line-height: 1; color: var(--white); }
.legal__eyebrow { font-family: var(--font-sans); font-size: var(--text-xs); font-weight: 700; letter-spacing: var(--tracking-eyebrow); text-transform: uppercase; color: var(--text-accent); margin: 0px 0px 8px; }
.legal h1 { font-family: var(--font-display); font-weight: 800; font-size: var(--text-4xl); color: var(--text-strong); line-height: var(--leading-tight); margin: 0px 0px 6px; }
.legal__date { color: var(--text-muted); font-size: var(--text-sm); margin: 0 0 var(--space-7); }
.legal h2 { font-family: var(--font-display); font-weight: 700; font-size: var(--text-xl); color: var(--text-strong); margin: var(--space-7) 0 10px; }
.legal p { font-size: var(--text-base); line-height: var(--leading-body); margin: 0px 0px 14px; max-width: 60ch; }
.legal ul { margin: 0px 0px 14px; padding-left: 20px; }
.legal li { font-size: var(--text-base); line-height: var(--leading-body); margin-bottom: 8px; }
.legal a { color: var(--text-accent); text-decoration: underline; text-underline-offset: 2px; }
.legal__back { display: inline-block; margin-top: var(--space-8); font-size: var(--text-sm); border-top: 1px solid var(--line); padding-top: var(--space-6); width: 100%; color: var(--text-muted) !important; text-decoration: none !important; }
.legal a.legal__brand { color: var(--white); text-decoration: none; width: fit-content; gap: 0.3em; }
.legal__brand span { color: var(--peri-300); }
.legal__back:hover { color: var(--white) !important; }
@media (max-width: 600px) {
  .legal h1 { font-size: var(--text-2xl); }
}
