/* Globales */
:root {
  --color-ink: #12193f;
  --color-ink-soft: #5c6384;
  --color-navy: #0321d7;
  --color-purple: #070399;
  --color-violet: #736af9;
  --color-fuchsia: #b84b97;
  --color-surface: #ffffff;
  --color-canvas: #f4f6fd;
  --color-panel: rgba(255, 255, 255, 0.88);
  --color-border: rgba(7, 3, 153, 0.11);
  --color-muted: #3f486b;
  --shadow-lg: 0 28px 80px rgba(7, 3, 153, 0.12);
  --shadow-md: 0 18px 40px rgba(7, 3, 153, 0.08);
  --radius-xl: 30px;
  --radius-lg: 24px;
  --radius-md: 18px;
  --radius-sm: 14px;
  --container-width: 1200px;
  --section-pad: clamp(4.8rem, 8vw, 8rem);
  --font-display: 'Sora', sans-serif;
  --font-body: 'Inter', sans-serif;
  --grad-brand: linear-gradient(90deg, #0321d7 0%, #736af9 55%, #b84b97 100%);
  --grad-soft: linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(255, 255, 255, 0.84));
  --body-bg: radial-gradient(circle at 18% 8%, rgba(115, 106, 249, 0.12), transparent 24%), radial-gradient(circle at 86% 14%, rgba(3, 33, 215, 0.1), transparent 22%), var(--color-canvas);
  --backdrop-bg: linear-gradient(180deg, rgba(255, 255, 255, 0.56), rgba(255, 255, 255, 0.14)), radial-gradient(circle at 18% 18%, rgba(3, 33, 215, 0.05), transparent 24%), radial-gradient(circle at 82% 16%, rgba(184, 75, 151, 0.06), transparent 24%);
  --loader-bg: linear-gradient(180deg, rgba(244, 246, 253, 0.96), rgba(236, 240, 252, 0.98));
  --loader-track-bg: rgba(7, 3, 153, 0.08);
  --scroll-track-bg: #f4f6fd;
  --scroll-thumb-bg: #b84b97;
  --scroll-thumb-hover-bg: #a83f88;
  --header-bg: #ffffff;
  --header-bg-scrolled: #f7f8fe;
}
* { box-sizing:border-box; }
html { scroll-behavior:smooth;scrollbar-width:auto;scrollbar-color:var(--scroll-thumb-bg) var(--scroll-track-bg);color-scheme:light; }
html.is-theme-switching *,
html.is-theme-switching *::before,
html.is-theme-switching *::after { transition:none !important; }
body { margin:0;background:var(--body-bg);color:var(--color-ink);font-family:var(--font-body);line-height:1.6;overflow-x:hidden;-webkit-font-smoothing:antialiased;transition:background 0.38s ease,color 0.38s ease; }
html.is-loading { overflow:hidden; }
html.is-loading body > :not(.site-loader) { visibility:hidden; }
.site-loader { position:fixed;inset:0;z-index:3000;display:grid;place-items:center;padding:1.5rem;background:var(--loader-bg);backdrop-filter:blur(10px);opacity:0;visibility:hidden;pointer-events:none;transition:opacity 0.28s ease,visibility 0.28s ease; }
.site-loader-track { position:relative;width:min(260px,72vw);height:4px;overflow:hidden;background:var(--loader-track-bg); }
.site-loader-bar { position:absolute;inset:0;transform:translateX(-100%);background:linear-gradient(90deg,#b84b97 0%,#736af9 100%);animation:loaderSlide 1.2s ease-in-out infinite; }
html.is-loading .site-loader { opacity:1;visibility:visible;pointer-events:auto; }
html[data-theme="dark"] { color-scheme:dark; }
html[data-theme="dark"] { --color-ink:#eef2ff;--color-ink-soft:#c0c9ef;--color-navy:#9aa7ff;--color-purple:#c1b4ff;--color-violet:#8f86ff;--color-fuchsia:#d46bb6;--color-surface:#10172f;--color-canvas:#09102a;--color-panel:rgba(16,21,46,0.9);--color-border:rgba(166,177,255,0.14);--color-muted:#b5bdd9;--shadow-lg:0 28px 80px rgba(0,0,0,0.34);--shadow-md:0 18px 40px rgba(0,0,0,0.22);--body-bg:radial-gradient(circle at 16% 10%, rgba(115, 106, 249, 0.14), transparent 24%),radial-gradient(circle at 84% 14%, rgba(184, 75, 151, 0.1), transparent 22%),linear-gradient(180deg,#0a1030 0%,#070b1e 100%);--backdrop-bg:linear-gradient(180deg, rgba(255, 255, 255, 0.03), rgba(255, 255, 255, 0.01)),radial-gradient(circle at 18% 18%, rgba(115, 106, 249, 0.08), transparent 24%),radial-gradient(circle at 82% 16%, rgba(184, 75, 151, 0.07), transparent 24%);--loader-bg:linear-gradient(180deg, rgba(10, 14, 32, 0.96), rgba(6, 9, 22, 0.98));--loader-track-bg:rgba(255,255,255,0.08);--scroll-track-bg:#0e1430;--scroll-thumb-bg:#b84b97;--scroll-thumb-hover-bg:#c85cac;--header-bg:rgba(8,12,27,0.92);--header-bg-scrolled:rgba(10,15,33,0.96); }
@media (prefers-reduced-motion: reduce) {
.site-loader-bar { animation:none;transform:none; }
}
img { max-width:100%;display:block; }
a { color:inherit; }
html::-webkit-scrollbar,
body::-webkit-scrollbar { width:12px;height:12px; }
html::-webkit-scrollbar-track,
body::-webkit-scrollbar-track { background:var(--scroll-track-bg); }
html::-webkit-scrollbar-thumb,
body::-webkit-scrollbar-thumb { background:var(--scroll-thumb-bg);border-radius:0 !important;border:0 !important;box-shadow:none !important;background-clip:padding-box; }
html::-webkit-scrollbar-thumb:hover,
body::-webkit-scrollbar-thumb:hover { background:var(--scroll-thumb-hover-bg); }
html::-webkit-scrollbar-corner,
body::-webkit-scrollbar-corner { background:var(--scroll-track-bg); }
.site-backdrop { position:fixed;inset:0;z-index:-1;pointer-events:none;background:var(--backdrop-bg);transition:background 0.38s ease,opacity 0.38s ease; }
#ponentes { transition:background-color 0.45s ease; }
#ponentes.is-emphasis { background-color:#15183b; }
html[data-theme="dark"] #ponentes { background-color:#0b0f22; }
html[data-theme="dark"] #ponentes.is-emphasis { background-color:#28236d; }
#ponentes.is-emphasis .speaker-heading .section-kicker,
#ponentes.is-emphasis .speaker-heading h2,
#ponentes.is-emphasis .speaker-heading p { color:rgba(255,255,255,0.92); }
.scroll-progress { position:fixed;top:0;left:0;width:100%;height:4px;z-index:1101;pointer-events:none;background:var(--scroll-track-bg); }
.scroll-progress-bar { display:block;width:0%;height:100%;background:linear-gradient(90deg,#b84b97 0%,#736af9 100%);box-shadow:0 0 0 1px rgba(184,75,151,0.16);transform-origin:left; }
@keyframes loaderSlide {
0% { transform:translateX(-100%); }
100% { transform:translateX(100%); }
}
.scroll-to-top { position:fixed;right:0.9rem;bottom:0.9rem;z-index:1100;display:inline-flex;align-items:center;justify-content:center;width:3rem;height:3rem;padding:0;border:0;border-radius:14px;background:#fff;color:#b84b97;border:1px solid rgba(184,75,151,0.32);box-shadow:none;opacity:0;pointer-events:none;transform:translateY(10px);overflow:hidden;transition:opacity 0.22s ease,transform 0.22s ease,background-color 0.22s ease,border-color 0.22s ease,color 0.22s ease; }
.scroll-to-top::before { content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(184,75,151,0.05) 0%,transparent 48%);pointer-events:none; }
.scroll-to-top::after { content:none; }
.scroll-to-top.is-visible { opacity:1;pointer-events:auto;transform:translateY(0) scale(1); }
.scroll-to-top:hover,
.scroll-to-top:focus-visible { background:#f7f2fa;border-color:rgba(184,75,151,0.42);color:#a83f88;outline:none;transform:translateY(-2px); }
.scroll-to-top i { font-size:1.15rem;line-height:1; }
html[data-theme="dark"] .scroll-to-top { background:#101733;color:#eef2ff;border-color:rgba(255,255,255,0.12); }
html[data-theme="dark"] .scroll-to-top:hover,
html[data-theme="dark"] .scroll-to-top:focus-visible { background:#161f45;border-color:rgba(255,255,255,0.18);color:#fff; }
@media (max-width: 767.98px) {
.scroll-to-top { width:3rem;height:3rem; }
.scroll-to-top i { font-size:1rem; }
}
/********************************* botones ********************************/
.btn { border-radius:999px;font-weight:800;letter-spacing:0.02em;transition:transform 0.2s ease,filter 0.2s ease,background-color 0.2s ease,box-shadow 0.2s ease; }
.btn-lg { padding:0.95rem 1.5rem; }
.btn-brand { border:0;color:#fff;background:var(--grad-brand);box-shadow:0 14px 28px rgba(3,33,215,0.24); }
.btn-brand:hover,
.btn-brand:focus-visible { color:#fff;filter:brightness(1.03);transform:translateY(-1px); }
.btn-ghost { background:rgba(255,255,255,0.9);border:1px solid rgba(7,3,153,0.1);color:var(--color-ink); }
.btn-ghost:hover,
.btn-ghost:focus-visible { background:#fff;color:var(--color-ink);transform:translateY(-1px); }
html[data-theme="dark"] .btn-ghost { background:rgba(13,18,39,0.9);border-color:rgba(255,255,255,0.08);color:var(--color-ink); }
html[data-theme="dark"] .btn-ghost:hover,
html[data-theme="dark"] .btn-ghost:focus-visible { background:rgba(18,24,49,0.94);border-color:rgba(255,255,255,0.12);color:var(--color-ink); }
.btn-nav { padding-inline:1.2rem; }
.btn-premium.btn-nav-icon { width:44px;height:44px;padding:0;justify-content:center;align-items:center;aspect-ratio:1/1;border-radius:12px;font-family:var(--font-display);box-shadow:0 12px 24px rgba(3,33,215,0.16);min-width:44px; }
.btn-premium.btn-nav-icon i { font-size:1.1rem;line-height:1; }
.btn-nav-accent { border:1px solid rgba(255,255,255,0.18);color:#fff;background:linear-gradient(135deg,rgba(115,106,249,0.98) 0%,rgba(91,57,205,0.98) 100%);box-shadow:0 12px 24px rgba(91,57,205,0.18); }
.btn-nav-accent:hover,
.btn-nav-accent:focus-visible { color:#fff;filter:brightness(1.03);box-shadow:0 16px 32px rgba(91,57,205,0.24);transform:translateY(-1px); }
.btn-nav-accent::before { background:linear-gradient(135deg,rgba(255,255,255,0.16),rgba(255,255,255,0.02) 42%,rgba(255,255,255,0.08)),linear-gradient(135deg,rgba(115,106,249,0.98) 0%,rgba(91,57,205,0.98) 100%); }
.btn-theme-toggle { position:relative; }
.btn-theme-toggle .theme-icon-light { display:none; }
.btn-theme-toggle { color:#fff;background:linear-gradient(135deg,#0321d7 0%,#0540e8 100%);box-shadow:0 12px 24px rgba(3,33,215,0.22); }
.btn-theme-toggle:hover,
.btn-theme-toggle:focus-visible { color:#fff;filter:brightness(1.03);box-shadow:0 16px 32px rgba(3,33,215,0.28); }
.btn-theme-toggle::before { background:linear-gradient(135deg,rgba(255,255,255,0.14),rgba(255,255,255,0.02) 42%,rgba(255,255,255,0.08)),linear-gradient(135deg,#0321d7 0%,#0540e8 100%); }
html[data-theme="dark"] .btn-theme-toggle .theme-icon-dark { display:none; }
html[data-theme="dark"] .btn-theme-toggle .theme-icon-light { display:inline-block; }
@media (max-width: 991.98px) {
.btn-nav { width:100%;justify-content:center; }
.btn-premium.btn-nav-icon { width:48px;height:48px;align-self:flex-start; }
}
.nav-shell,
.container { max-width:var(--container-width); }
@media (max-width: 991.98px) {
.nav-shell,
.container,
.container-fluid { padding-inline:1.5rem; }
}
/********************************* header ********************************/
.site-header { min-height:92px;width:100%;background:var(--header-bg);backdrop-filter:blur(18px);position:fixed;top:0;left:0;overflow:visible;box-shadow:0 8px 22px rgba(7,3,153,0.05);transition:box-shadow 0.25s ease,background 0.25s ease,border-color 0.25s ease;z-index:1000; }
body.admin-bar .site-header { top:32px; }
.site-header.is-scrolled { background:var(--header-bg-scrolled);box-shadow:0 10px 24px rgba(7,3,153,0.07); }
.site-header .navbar { min-height:92px;padding:0; }
.navbar-brand img { width:200px;height:auto; }
.navbar-toggler { border-color:rgba(7,3,153,0.14); }
.navbar-toggler-icon { filter:none; }
.navbar-toggler:focus { box-shadow:0 0 0 0.2rem rgba(3,33,215,0.12); }
.offcanvas-lg { align-items:center; }
.nav-link { position:relative;padding:0.5rem 0.9rem !important;color:var(--color-ink) !important;font-size:0.86rem;font-family:var(--font-display);font-weight:700;text-transform:uppercase;letter-spacing:0.06em;text-decoration:none !important; }
.navbar-nav > .menu-item > a { position:relative;display:block;padding:0.5rem 0.9rem !important;color:var(--color-ink) !important;font-size:0.86rem;font-family:var(--font-display);font-weight:700;text-transform:uppercase;letter-spacing:0.06em;text-decoration:none !important; }
.nav-link::after { content:'';position:absolute;left:0.9rem;right:0.9rem;bottom:0.1rem;height:2px;border-radius:999px;background:var(--color-navy);transform:scaleX(0);transform-origin:center;transition:transform 0.2s ease; }
.navbar-nav > .menu-item > a::after { content:'';position:absolute;left:0.9rem;right:0.9rem;bottom:0.1rem;height:2px;border-radius:999px;background:var(--color-navy);transform:scaleX(0);transform-origin:center;transition:transform 0.2s ease; }
.nav-link:hover::after,
.nav-link:focus-visible::after { transform:scaleX(1); }
.navbar-nav > .menu-item > a:hover::after,
.navbar-nav > .menu-item > a:focus-visible::after { transform:scaleX(1); }
.site-header.is-scrolled .nav-link { color:var(--color-ink) !important; }
.site-header.is-scrolled .navbar-nav > .menu-item > a { color:var(--color-ink) !important; }
.site-header.is-scrolled .nav-link::after { background:var(--color-navy); }
.site-header.is-scrolled .navbar-nav > .menu-item > a::after { background:var(--color-navy); }
.site-header.is-scrolled .navbar-toggler { border-color:rgba(7,3,153,0.14); }
.site-header.is-scrolled .navbar-toggler-icon { filter:none; }
.site-header.is-scrolled .navbar-toggler:focus { box-shadow:0 0 0 0.2rem rgba(3,33,215,0.12); }
html[data-theme="dark"] .site-header { background:var(--header-bg); box-shadow:0 14px 38px rgba(0,0,0,0.34),0 2px 0 rgba(255,255,255,0.03) inset; }
html[data-theme="dark"] .site-header.is-scrolled { background:var(--header-bg-scrolled); box-shadow:0 18px 48px rgba(0,0,0,0.42),0 2px 0 rgba(255,255,255,0.03) inset; }
html[data-theme="dark"] .navbar-toggler { border-color:rgba(255,255,255,0.14); }
html[data-theme="dark"] .navbar-toggler-icon { filter:invert(1) brightness(1.16); }
html[data-theme="dark"] .navbar-toggler:focus { box-shadow:0 0 0 0.2rem rgba(184,75,151,0.18); }
html[data-theme="dark"] .site-header .offcanvas-lg { background:#0c1430; }
html[data-theme="dark"] .site-header .offcanvas-header { border-bottom-color:rgba(255,255,255,0.08); }
html[data-theme="dark"] .site-header .offcanvas-title { color:var(--color-ink); }
html[data-theme="dark"] .site-header .btn-close { filter:invert(1) brightness(1.15); }
@media (max-width: 991.98px) {
body.admin-bar .site-header { top:46px; }
.site-header .navbar { min-height:84px; }
.offcanvas-lg { align-items:stretch;gap:0.75rem;padding:1.25rem 1.25rem 1.5rem;border:1px solid rgba(7,3,153,0.1);border-radius:0;background:var(--header-bg);box-shadow:var(--shadow-md);opacity:1; }
.offcanvas-lg { height:100vh;height:100dvh;max-height:100vh; }
.offcanvas-lg .offcanvas-header { padding:0 0 1rem; }
.offcanvas-lg .offcanvas-body { display:flex;flex-direction:column;gap:1.25rem;padding:0;align-items:stretch; }
.offcanvas-lg .navbar-nav { width:100%;align-items:flex-start !important;margin-left:0 !important; }
.offcanvas-lg .offcanvas-title { margin:0;color:var(--color-ink);font-family:var(--font-display);font-size:1.15rem;font-weight:800;letter-spacing:-0.03em; }
.header-actions { width:100%;align-items:flex-end; }
.header-actions > * { align-self:flex-end; }
.nav-link { padding-inline:0 !important; }
.nav-link::after { left:0;right:auto;width:90px; }
.site-header.is-scrolled .offcanvas-lg { border-color:rgba(7,3,153,0.1);background:var(--header-bg);box-shadow:var(--shadow-md); }
}
@media (min-width: 992px) {
.offcanvas-lg { position:static;display:flex !important;flex-direction:row;align-items:center;flex-grow:1;width:auto;transform:none;visibility:visible;background:transparent;border:0;box-shadow:none;padding:0; }
.offcanvas-lg .offcanvas-header { display:none; }
.offcanvas-lg .offcanvas-body { display:flex;align-items:center;justify-content:flex-end;gap:0.5rem;padding:0;width:100%; }
.offcanvas-lg .navbar-nav { width:auto;margin-left:auto; }
.header-actions { display:flex;align-items:center;gap:0.5rem;margin-left:0.25rem;flex:0 0 auto;width:auto; }
}
.section-anchor { scroll-margin-top:110px; }
/********************************* hero ********************************/
.hero-section { position:relative;min-height:98vh;display:flex;align-items:center;padding:7rem 0 5.5rem;overflow:hidden;background:radial-gradient(circle at 18% 16%,rgba(255,255,255,0.05),transparent 20%),radial-gradient(circle at 80% 18%,rgba(152,53,138,0.08),transparent 18%),radial-gradient(circle at 52% 6%,rgba(152,53,138,0.06),transparent 24%),radial-gradient(circle at 84% 74%,rgba(152,53,138,0.05),transparent 22%),linear-gradient(180deg,#03147d 0%,#070398 48%,#020f5e 100%); }
.hero-section::before { content:'';position:absolute;inset:0;z-index:1;pointer-events:none;opacity:0.04;mix-blend-mode:soft-light;background-image:repeating-linear-gradient(0deg,rgba(255,255,255,0.75) 0 1px,transparent 1px 4px),repeating-linear-gradient(90deg,rgba(255,255,255,0.42) 0 1px,transparent 1px 5px),repeating-linear-gradient(45deg,rgba(152,53,138,0.22) 0 1px,transparent 1px 7px);background-size:140px 140px,170px 170px,220px 220px; }
.hero-section::after { content:'';position:absolute;left:0;right:0;bottom:0;height:1px;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,0.14) 18%,rgba(255,255,255,0.4) 50%,rgba(255,255,255,0.14) 82%,transparent 100%);z-index:2;pointer-events:none; }
.hero-network-canvas { position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none;opacity:0.46; }
.hero-mouse-ring { position:fixed;left:0;top:0;width:178px;height:178px;border-radius:50%;border:2px solid rgba(255,255,255,0.9);opacity:0;transform:translate3d(-9999px,-9999px,0) scale(1);pointer-events:none;z-index:9999;box-shadow:0 0 0 1px rgba(3,33,215,0.34),0 0 22px rgba(255,255,255,0.1),0 0 34px rgba(184,75,151,0.08);mix-blend-mode:normal;transition:width 0.35s ease,height 0.35s ease,border-color 0.35s ease,box-shadow 0.35s ease,opacity 0.35s ease; }
.hero-mouse-ring.is-hovering { width:240px;height:240px;border-color:rgba(255,255,255,0.98);box-shadow:0 0 0 1px rgba(3,33,215,0.42),0 0 28px rgba(255,255,255,0.14),0 0 42px rgba(184,75,151,0.12); }
.container-hero { position:relative;z-index:2;width:100%;max-width:var(--container-width) !important; }
.hero-split-panel { display:grid;grid-template-columns:minmax(0,1.6fr) minmax(180px,0.4fr);gap:clamp(2rem,4vw,4.5rem);align-items:center; }
.hero-copy-column { display:grid;justify-items:start;gap:0.95rem;max-width:860px;text-align:left; }
.hero-title-main { margin:0;max-width:13.5ch;font-family:var(--font-display);font-size:clamp(3rem,6.5vw,5.9rem);line-height:0.95;letter-spacing:-0.06em;font-weight:800;color:#fff; }
.hero-title-accent { display:inline-flex;will-change:transform; }
.hero-title-accent-char { display:inline-block;background-image:linear-gradient(90deg,#736af9 0%,#9f63d8 48%,#b84b97 100%);background-size:var(--accent-word-width,100%) 100%;background-position:var(--accent-bg-x,0) 0;background-repeat:no-repeat;-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;text-shadow:0 0 18px rgba(184,75,151,0.16);will-change:transform; }
.hero-title-main.is-waving .hero-title-accent-char { animation:heroAccentWave 0.9s ease-in-out both;animation-delay:calc(var(--accent-index) * 0.05s); }
.hero-subtitle { margin:0 0 -0.15rem;color:var(--color-violet);font-size:1.05rem;font-weight:800;letter-spacing:0.12em;text-transform:uppercase; }
.hero-copy { margin:0;max-width:66ch;color:rgba(255,255,255,0.74);font-size:clamp(1rem,1.45vw,1.12rem);line-height:1.8; }
.hero-meta-info { display:grid;justify-items:start;gap:0.5rem;margin-top:0.5rem; }
.hero-meta-line { display:flex;align-items:center;justify-content:flex-start;flex-wrap:wrap;gap:1.05rem 1.35rem; }
.hero-meta-separator { width:1px;height:1.35rem;background:rgba(255,255,255,0.22); }
.hero-location { display:inline-flex;align-items:center;justify-content:center;gap:0.85rem;margin:0;color:rgba(255,255,255,0.88);font-size:1.12rem;font-weight:800;letter-spacing:0.015em; }
.hero-location-icon { display:inline-flex;align-items:center;justify-content:center;width:2.15rem;height:2.15rem;border-radius:999px;background:linear-gradient(135deg,rgba(115,106,249,0.2),rgba(184,75,151,0.24));border:1px solid rgba(255,255,255,0.16);box-shadow:0 10px 22px rgba(7,3,153,0.18);flex-shrink:0; }
.hero-location i { color:#fff;font-size:1.05rem;line-height:1; }
.hero-actions { display:flex;gap:1.5rem;align-items:center;flex-wrap:wrap;justify-content:flex-start;margin-top:0.65rem; }
.btn-premium { position:relative;overflow:hidden;isolation:isolate;padding:0.8rem 2.2rem;border:0;appearance:none;-webkit-appearance:none;border-radius:var(--radius-sm);font-weight:600;transition:transform 0.28s ease,box-shadow 0.28s ease,border-color 0.28s ease,color 0.28s ease,background-color 0.28s ease;display:inline-flex;align-items:center;gap:0.8rem;text-decoration:none !important;will-change:transform;font-size:1.1rem;font-family:'Sora';cursor:pointer; }
.btn-premium::before { content:'';position:absolute;inset:0;z-index:-1;opacity:0;transition:opacity 0.28s ease,transform 0.28s ease;transform:translateY(10%); }
.btn-premium:hover { transform:translateY(-2px); }
.btn-premium:focus-visible { transform:translateY(-2px); }
.btn-premium:hover::before { opacity:1;transform:translateY(0); }
.btn-premium:focus-visible::before { opacity:1;transform:translateY(0); }
.btn-primary-brand { background:var(--grad-brand);color:#fff;box-shadow:0 10px 30px rgba(26,26,220,0.3); }
.btn-primary-brand::before { background:linear-gradient(135deg,rgba(255,255,255,0.24),rgba(255,255,255,0.02) 40%,rgba(255,255,255,0.12)),var(--grad-brand); }
.btn-primary-brand:hover { color:#fff;box-shadow:0 16px 40px rgba(3,33,215,0.42); }
.btn-primary-brand:focus-visible { color:#fff;box-shadow:0 16px 40px rgba(3,33,215,0.42); }
.btn-outline-white { background:#fff;color:#12193f;border:1px solid rgba(255,255,255,0.92);box-shadow:0 10px 26px rgba(7,3,153,0.14); }
.btn-outline-white:hover { background:rgba(255,255,255,0.96);border-color:rgba(255,255,255,1);color:#12193f;box-shadow:0 16px 36px rgba(7,3,153,0.18); }
.btn-outline-white::before { background:linear-gradient(135deg,rgba(3,33,215,0.08),rgba(115,106,249,0.05) 45%,rgba(184,75,151,0.08)),#fff; }
.btn-outline-white:focus-visible { color:#12193f; }
.btn-premium:hover i { transform:translateX(2px); }
.btn-premium:focus-visible i { transform:translateX(2px); }
.btn-premium.btn-nav-icon:hover i,
.btn-premium.btn-nav-icon:focus-visible i { transform:none; }
.btn-premium i { transition:transform 0.28s ease; }
.btn-premium:focus-visible { outline:none;box-shadow:0 0 0 4px rgba(115,106,249,0.2),0 16px 40px rgba(7,3,153,0.18); }
.btn-premium.btn-nav-icon { transition:transform 0.28s ease,box-shadow 0.28s ease,filter 0.28s ease,background-color 0.28s ease,border-color 0.28s ease,color 0.28s ease; }
.btn-premium.btn-nav-icon:hover,
.btn-premium.btn-nav-icon:focus-visible { transform:translateY(-1px); }
.hero-countdown-column { display:grid;justify-items:center;align-content:start;gap:1rem;width:min(100%,260px);margin-inline:auto;text-align:center; }
.hero-actions-left { margin-top:0.3rem; }
.hero-countdown-corner-label { font-size:0.84rem;text-transform:uppercase;letter-spacing:0.18em;font-weight:700;color:rgba(255,255,255,0.62); }
.hero-countdown-vertical { display:grid;gap:1rem;width:100%; }
.hero-countdown-vertical-item { display:grid;justify-items:center;gap:0.2rem;padding:0;background:transparent;border:0; }
.hero-countdown-vertical-item strong { font-size:clamp(3rem,7vw,5rem);font-weight:800;color:#fff;font-family:var(--font-display);line-height:0.9;letter-spacing:-0.06em; }
.hero-countdown-vertical-item span { font-size:0.78rem;text-transform:uppercase;color:var(--color-fuchsia);font-weight:700;letter-spacing:0.12em; }
.hero-scroll-hint { position:absolute;left:0;right:0;bottom:0.95rem;z-index:3;display:flex;align-items:center;gap:1rem;padding-inline:clamp(1rem,4vw,3rem);pointer-events:none; }
.hero-scroll-hint-line { height:1px;flex:1;background:linear-gradient(90deg,rgba(255,255,255,0.05),rgba(255,255,255,0.28),rgba(255,255,255,0.05)); }
.hero-scroll-anchor { pointer-events:auto;flex:0 0 auto;display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:linear-gradient(135deg,rgba(255,255,255,0.1),rgba(115,106,249,0.14) 52%,rgba(184,75,151,0.12));border:1px solid rgba(255,255,255,0.24);box-shadow:inset 0 1px 0 rgba(255,255,255,0.28);backdrop-filter:blur(8px);color:#fff;text-decoration:none;transition:transform 0.28s ease,box-shadow 0.28s ease,filter 0.28s ease; }
.hero-scroll-anchor i { font-size:1.35rem;line-height:1; }
.hero-scroll-anchor:hover { transform:translateY(-4px) scale(1.05);box-shadow:inset 0 1px 0 rgba(255,255,255,0.36);filter:saturate(1);outline:none; }
.hero-scroll-anchor:focus-visible { transform:translateY(-4px) scale(1.05);box-shadow:inset 0 1px 0 rgba(255,255,255,0.36);filter:saturate(1);outline:none; }
html[data-theme="dark"] .hero-section { background:radial-gradient(circle at 18% 16%,rgba(255,255,255,0.03),transparent 20%),radial-gradient(circle at 80% 18%,rgba(184,75,151,0.08),transparent 18%),radial-gradient(circle at 52% 6%,rgba(115,106,249,0.08),transparent 24%),radial-gradient(circle at 84% 74%,rgba(115,106,249,0.05),transparent 22%),linear-gradient(180deg,#0b1130 0%,#090f2a 48%,#050814 100%); }
html[data-theme="dark"] .hero-section::before { opacity:0.03; }
html[data-theme="dark"] .hero-section::after { background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,0.08) 18%,rgba(255,255,255,0.22) 50%,rgba(255,255,255,0.08) 82%,transparent 100%); }
html[data-theme="dark"] .hero-scroll-hint-line { background:linear-gradient(90deg,rgba(255,255,255,0.04),rgba(255,255,255,0.18),rgba(255,255,255,0.04)); }
html[data-theme="dark"] .hero-scroll-anchor { background:linear-gradient(135deg,rgba(16,22,49,0.84),rgba(115,106,249,0.2) 52%,rgba(184,75,151,0.12));border-color:rgba(255,255,255,0.16); }
@media (max-width:1199.98px) {
.hero-section { padding-top:6.5rem; }
.hero-title-main { max-width:15ch; }
}
@media (max-width:767.98px) {
.hero-section { padding-top:6rem; }
.hero-split-panel { grid-template-columns:1fr; }
.hero-copy-column { justify-items:center;text-align:center; }
.hero-countdown-column { justify-items:center;width:100%;max-width:none;text-align:center; }
.hero-meta-line { justify-content:center;gap:0.7rem 0.9rem; }
.hero-location { font-size:1.02rem; }
.hero-actions { gap:0.8rem;width:100%;align-items:center;justify-content:center; }
.btn-premium { width:auto;justify-content:flex-start; }
.hero-countdown-corner-label { text-align:center; }
.hero-countdown-vertical { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0.6rem;width:100%; }
.hero-countdown-vertical-item { gap:0.15rem; }
.hero-countdown-vertical-item strong { font-size:clamp(1.8rem,7vw,2.6rem); }
.hero-countdown-vertical-item span { font-size:0.66rem;letter-spacing:0.1em; }
.hero-scroll-hint { bottom:0.7rem;gap:0.7rem;padding-inline:1.5rem; }
}
@media (max-width:420px) {
.hero-title-main { font-size:clamp(2.6rem,14vw,3.6rem); }
.hero-countdown-vertical { gap:0.45rem; }
.hero-countdown-vertical-item strong { font-size:clamp(1.7rem,10vw,2.15rem); }
.hero-countdown-vertical-item span { font-size:0.6rem; }
}
/********************************* secciones compartidas ********************************/
.section-block { padding:var(--section-pad) 0; }
.section-block-tinted { background:#e1e7fa; }
.section-block-dark { background:#28236d;color:rgba(255,255,255,0.88); }
.section-heading { display:grid;gap:0.35rem;margin-bottom:2.2rem; }
.section-kicker { justify-self:start;color:var(--color-purple);font-size:1.04rem;font-weight:800;letter-spacing:0.14em;text-transform:uppercase; }
.section-heading h2 { max-width:14ch;font-size:clamp(2.25rem,4.5vw,4rem);font-family:var(--font-display);line-height:0.96;letter-spacing:-0.05em;color:var(--color-ink); }
.section-heading p { margin-top:0.8rem; }
.section-heading-centered { justify-items:center;text-align:center; }
.section-heading-centered h2 { max-width:13ch; }
.section-heading-centered p { max-width:64ch; }
.section-heading-description { display:grid;gap:1rem;margin-bottom:2.4rem;align-items:center; }
.section-heading-description h2 { max-width:none; }
.section-heading-description p { max-width:none; }
.section-accent { background:linear-gradient(90deg,#736af9 0%,#9f63d8 48%,#b84b97 100%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;text-shadow:0 0 18px rgba(184,75,151,0.16); }
html[data-theme="dark"] .section-block-tinted { background:#0e1533; }
html[data-theme="dark"] .section-block-dark { background:#0a1130;color:rgba(255,255,255,0.9); }
html[data-theme="dark"] #inscripcion { background:#171547; }
html[data-theme="dark"] .section-heading h2 { color:var(--color-ink); }
html[data-theme="dark"] .section-kicker { color:var(--color-violet); }
html[data-theme="dark"] .section-accent { text-shadow:0 0 18px rgba(184,75,151,0.22); }
@media (max-width: 420px) {
.section-heading h2 { font-size:clamp(2rem,10vw,3rem); }
}
@media (max-width: 767.98px) {
.section-heading { justify-items:center;text-align:center; }
.section-kicker { justify-self:center; }
.section-heading p { margin-left:auto;margin-right:auto; }
.section-heading-description { justify-items:center;text-align:center; }
.description-heading-grid { justify-items:center;text-align:center; }
.description-heading-grid h2,
.description-heading-grid p { margin-left:auto;margin-right:auto; }
.contact-copy { justify-items:center;text-align:center; }
.contact-copy h2,
.contact-copy p { margin-left:auto;margin-right:auto; }
.contact-actions { justify-content:center; }
.cta-banner { text-align:center; }
.cta-copy { justify-items:center;text-align:center; }
.cta-copy h2,
.cta-copy p { margin-left:auto;margin-right:auto; }
.cta-actions { justify-items:center; }
.cta-link { justify-items:center;text-align:center; }
}
/********************************* descripción ********************************/
.description-heading-grid { display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,0.82fr);gap:2rem;align-items:center; }
.description-heading-grid h2 { margin:0;font-size:clamp(2.4rem,4.7vw,4rem);line-height:0.92;max-width:11ch; }
.description-heading-grid p { margin:0;padding-top:0.4rem;color:var(--color-muted);font-size:1.05rem;line-height:1.9; }
.description-ribbon-wrap { width:100%;margin:0 0 1.75rem;background:transparent;position:relative;overflow:hidden; }
.description-ribbon-wrap::before { content:'';position:absolute;left:0;right:0;height:1px;pointer-events:none; }
.description-ribbon-wrap::after { content:'';position:absolute;left:0;right:0;height:1px;pointer-events:none; }
.description-ribbon-wrap::before { top:0;background:linear-gradient(90deg,transparent 0%,rgba(115,106,249,0.95) 18%,rgba(184,75,151,0.95) 50%,rgba(184,75,151,0.95) 82%,transparent 100%); }
.description-ribbon-wrap::after { bottom:0;background:linear-gradient(90deg,transparent 0%,rgba(184,75,151,0.9) 18%,rgba(115,106,249,0.9) 50%,rgba(115,106,249,0.9) 82%,transparent 100%); }
.description-ribbon-wrap .container { padding-top:0;padding-bottom:0; }
.description-ribbon { display:flex;align-items:center;flex-wrap:wrap;gap:1rem 2.2rem;padding:1.35rem 0; }
.description-ribbon-item { display:inline-flex;align-items:center;gap:0.7rem;color:var(--color-ink);font-size:1.16rem;font-weight:700;letter-spacing:0.01em; }
.description-ribbon-icon { display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:2rem;height:2rem;border-radius:999px;background:linear-gradient(135deg,rgba(115,106,249,0.16),rgba(184,75,151,0.2));border:1px solid rgba(7,3,153,0.1);box-shadow:0 8px 18px rgba(7,3,153,0.08); }
.description-ribbon-icon i { color:var(--color-purple);font-size:0.95rem;line-height:1; }
.description-ribbon strong { color:var(--color-purple);font-family:var(--font-display);font-size:1.22rem;letter-spacing:-0.03em; }
.description-layout { display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,0.95fr);gap:2rem;align-items:center; }
.description-panel { padding:0 1rem 0 0;max-width:62ch;align-self:center; }
.description-panel p { margin:0;color:var(--color-muted);font-size:1.06rem;line-height:1.95; }
.description-panel p+p { margin-top:1.35rem; }
.description-aside { padding:0 0 0 1.5rem;display:grid;gap:1.2rem;border-left:1px solid rgba(7,3,153,0.1);align-self:center; }
.description-aside-item { padding:0 0 0.1rem; }
.description-aside-label { display:inline-flex;margin-bottom:0.4rem;color:var(--color-navy);font-size:0.72rem;font-weight:800;letter-spacing:0.14em;text-transform:uppercase; }
.description-aside strong { display:block;color:var(--color-ink);font-family:var(--font-display);font-size:1.32rem;letter-spacing:-0.04em;line-height:1.05; }
.description-aside p { margin:0.55rem 0 0;color:var(--color-muted);line-height:1.7; }
html[data-theme="dark"] .description-ribbon-wrap::before { background:linear-gradient(90deg,transparent 0%,rgba(115,106,249,0.8) 18%,rgba(184,75,151,0.84) 50%,rgba(184,75,151,0.84) 82%,transparent 100%); }
html[data-theme="dark"] .description-ribbon-wrap::after { background:linear-gradient(90deg,transparent 0%,rgba(184,75,151,0.75) 18%,rgba(115,106,249,0.76) 50%,rgba(115,106,249,0.76) 82%,transparent 100%); }
html[data-theme="dark"] .description-ribbon-icon { background:rgba(255,255,255,0.04);border-color:rgba(255,255,255,0.08);box-shadow:none; }
html[data-theme="dark"] .description-aside { border-left-color:rgba(255,255,255,0.08); }
html[data-theme="dark"] .description-aside-label { color:var(--color-violet); }
html[data-theme="dark"] .description-aside strong { color:var(--color-ink); }
@media (max-width: 991.98px) {
.description-layout { grid-template-columns:1fr; }
.description-heading-grid { grid-template-columns:1fr;gap:1rem; }
.description-panel { padding:0; }
.description-aside { padding-left:0;border-left:0;border-top:1px solid rgba(7,3,153,0.1);padding-top:1.2rem; }
}
@media (max-width: 767.98px) {
.description-ribbon { justify-content:center;text-align:center; }
.description-ribbon-item { justify-content:center; }
}
/********************************* ponentes ********************************/
.speaker-heading .section-kicker { justify-self:center; }
.speaker-grid { display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1.25rem; }
.speaker-card { display:grid;grid-template-rows:auto 1fr;overflow:hidden;border:0;border-radius:var(--radius-lg);background:var(--color-panel);box-shadow:var(--shadow-md); }
.speaker-avatar { display:grid;place-items:center;min-height:220px;overflow:hidden;color:#fff;font-family:var(--font-display);font-size:clamp(2.5rem,5vw,4.2rem);font-weight:700;letter-spacing:-0.06em; }
.speaker-avatar img { width:100%;height:100%;object-fit:cover;object-position:center top;display:block;will-change:transform;transform:translate3d(0,var(--speaker-parallax-y,0px),0) scale(var(--speaker-parallax-scale,1.08));filter:contrast(1.03) saturate(0.97) brightness(0.99); }
html[data-theme="dark"] .speaker-avatar img { filter:contrast(1.01) saturate(0.93) brightness(0.93); }
.speaker-avatar-bolivia { background:linear-gradient(180deg,#0321d7,#736af9); }
.speaker-avatar-chile { background:linear-gradient(180deg,#070399,#0321d7); }
.speaker-avatar-argentina { background:linear-gradient(180deg,#736af9,#b84b97); }
.speaker-avatar-eeuu { background:linear-gradient(180deg,#b84b97,#070399); }
.speaker-body { padding:1.3rem 1.2rem 1.4rem; }
.speaker-country { display:inline-flex;align-items:center;gap:0.4rem;margin-bottom:0.8rem;color:var(--color-navy);font-size:0.77rem;font-weight:800;letter-spacing:0.12em;text-transform:uppercase; }
.speaker-flag { display:inline-block;width:1rem;height:1rem;object-fit:contain;flex:0 0 auto;transform:translateY(-1px); }
.speaker-body h3 { font-size:1.35rem;font-family:var(--font-display);color:var(--color-ink); }
.speaker-body p { margin:0.9rem 0 0;color:var(--color-muted);font-size:0.96rem; }
.speaker-talk { display:block;margin-top:1rem;padding:0;border-radius:0;background:transparent;color:var(--color-navy);font-size:1.02rem;font-weight:800;line-height:1.4;letter-spacing:-0.01em; }
html[data-theme="dark"] .speaker-card { background:rgba(14,19,40,0.92);box-shadow:0 18px 40px rgba(0,0,0,0.24); }
html[data-theme="dark"] .speaker-country { color:var(--color-violet); }
html[data-theme="dark"] .speaker-body h3 { color:var(--color-ink); }
html[data-theme="dark"] .speaker-body p { color:var(--color-muted); }
html[data-theme="dark"] .speaker-talk { color:var(--color-violet); }
@media (max-width: 1199.98px) {
.speaker-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width: 767.98px) {
.speaker-grid { grid-template-columns:1fr; }
.speaker-avatar { min-height:200px; }
}
/********************************* programa ********************************/
.program-layout { display:grid;gap:1.5rem; }
.program-header { display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1.5rem;align-items:center; }
.program-header-copy { margin-bottom:0; }
.program-header-copy h2 { max-width:13ch; }
.program-header-cta { display:flex;justify-content:flex-end; }
@media (max-width: 767.98px) {
.program-header { grid-template-columns:1fr;justify-items:center;gap:1rem; }
.program-header-copy { width:100%; }
.program-header-copy h2,
.program-header-copy p { margin-left:auto;margin-right:auto; }
.program-header-cta { justify-content:center;width:100%; }
}
/********************************* contacto ********************************/
.section-block-contact { background:#dfeaff; }
.section-block-contact .section-kicker { color:var(--color-navy); }
.contact-layout { display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,0.98fr);gap:2rem;align-items:start; }
.contact-copy { margin-bottom:0; }
.contact-copy h2 { max-width:12ch; }
.contact-copy p { max-width:56ch; }
.contact-form { display:grid;gap:1rem; }
.contact-field { display:grid;gap:0.45rem; }
.contact-field span { color:var(--color-ink);font-family:var(--font-display);font-size:0.84rem;font-weight:800;letter-spacing:0.09em;text-transform:uppercase; }
.contact-field input { width:100%;border:1px solid rgba(7,3,153,0.14);border-radius:18px;background:rgba(255,255,255,0.9);padding:0.95rem 1rem;color:var(--color-ink);font:inherit;box-shadow:0 10px 24px rgba(7,3,153,0.05);outline:none; }
.contact-field textarea { width:100%;border:1px solid rgba(7,3,153,0.14);border-radius:18px;background:rgba(255,255,255,0.9);padding:0.95rem 1rem;color:var(--color-ink);font:inherit;box-shadow:0 10px 24px rgba(7,3,153,0.05);outline:none; }
.contact-field input::placeholder { color:rgba(92,99,132,0.82); }
.contact-field textarea::placeholder { color:rgba(92,99,132,0.82); }
.contact-field input:focus { border-color:rgba(3,33,215,0.38);box-shadow:0 0 0 0.2rem rgba(3,33,215,0.1),0 10px 24px rgba(7,3,153,0.05); }
.contact-field textarea:focus { border-color:rgba(3,33,215,0.38);box-shadow:0 0 0 0.2rem rgba(3,33,215,0.1),0 10px 24px rgba(7,3,153,0.05); }
.contact-field-full { min-height:100%; }
.contact-actions { display:flex;justify-content:flex-start;padding-top:0.2rem; }
.contact-actions .btn-primary-brand { background:linear-gradient(135deg,#0321d7 0%,#0540e8 100%);color:#fff;box-shadow:0 12px 28px rgba(3,33,215,0.24); }
.contact-actions .btn-primary-brand::before { background:linear-gradient(135deg,rgba(255,255,255,0.16),rgba(255,255,255,0.02) 42%,rgba(255,255,255,0.08)),linear-gradient(135deg,#0321d7 0%,#0540e8 100%); }
.contact-actions .btn-primary-brand:hover,
.contact-actions .btn-primary-brand:focus-visible { color:#fff;box-shadow:0 16px 36px rgba(3,33,215,0.3); }
html[data-theme="dark"] .section-block-contact { background:#0c1430; }
html[data-theme="dark"] .section-block-contact .section-kicker { color:var(--color-violet); }
html[data-theme="dark"] .contact-field span { color:var(--color-ink); }
html[data-theme="dark"] .contact-field input,
html[data-theme="dark"] .contact-field textarea { background:rgba(13,18,39,0.92);border-color:rgba(255,255,255,0.1);color:var(--color-ink);box-shadow:none; }
html[data-theme="dark"] .contact-field input::placeholder,
html[data-theme="dark"] .contact-field textarea::placeholder { color:rgba(181,189,217,0.72); }
html[data-theme="dark"] .contact-field input:focus,
html[data-theme="dark"] .contact-field textarea:focus { border-color:rgba(184,75,151,0.5);box-shadow:0 0 0 0.2rem rgba(184,75,151,0.14),0 10px 24px rgba(0,0,0,0.18); }
@media (max-width: 1199.98px) {
.contact-layout { grid-template-columns:1fr; }
}
@media (max-width: 767.98px) {
.contact-actions { justify-content:center; }
}
/********************************* inscripción ********************************/
.section-block-dark { position:relative;overflow:hidden; }
.cta-network-canvas { position:absolute;inset:0;z-index:0;width:100%;height:100%;pointer-events:none;opacity:0.52;mix-blend-mode:screen; }
.section-block-dark .container { position:relative;z-index:1; }
.cta-banner { display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1.5rem;padding:0;background:transparent;border:0;border-radius:0;box-shadow:none; }
.cta-copy h2 { font-size:clamp(2.2rem,4.3vw,4rem);font-family:var(--font-display);line-height:0.98;letter-spacing:-0.05em;color:#fff; }
.cta-actions { display:grid;justify-items:end;align-content:center;gap:0.95rem; }
.cta-link { display:grid;gap:0.15rem;justify-items:end;text-align:right;color:rgba(255,255,255,0.76);font-size:0.9rem; }
.cta-link strong { color:#fff;font-size:1rem;font-weight:800;letter-spacing:0.02em; }
.section-block-dark .section-kicker { color:rgba(255,255,255,0.8); }
.section-block-dark .cta-copy p { color:rgba(255,255,255,0.8); }
.section-block-dark .cta-banner { align-items:center; }
html[data-theme="dark"] .section-block-dark .section-kicker { color:var(--color-violet); }
html[data-theme="dark"] .section-block-dark .cta-copy p { color:rgba(238,242,255,0.8); }
html[data-theme="dark"] .cta-network-canvas { opacity:0.72; }
@media (max-width: 991.98px) {
.cta-banner { grid-template-columns:1fr; }
.cta-actions { justify-items:start; }
.cta-link { justify-items:start;text-align:left; }
}
@media (max-width: 767.98px) {
.cta-network-canvas { opacity:0.42; }
}
@media (max-width: 767.98px) {
.cta-actions { justify-items:center; }
.cta-link { justify-items:center;text-align:center; }
}
@media (max-width: 420px) {
.cta-copy h2 { font-size:clamp(2rem,10vw,3rem); }
.cta-banner { padding:1.5rem; }
}
/********************************* footer ********************************/
.site-footer { padding:3.4rem 0 1.6rem;background:#070398;color:rgba(255,255,255,0.88); }
.footer-top { display:flex;justify-content:flex-end;gap:2rem;align-items:flex-start;padding-bottom:1.8rem;position:relative; }
.footer-top::after { content:'';position:absolute;left:50%;bottom:0;width:100vw;height:1px;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,0.22) 18%,rgba(255,255,255,0.22) 50%,rgba(255,255,255,0.22) 82%,transparent 100%);transform:translateX(-50%);pointer-events:none; }
.footer-links { display:flex;flex-wrap:wrap;gap:1rem 1.4rem;justify-content:flex-end; }
.footer-links a { color:rgba(255,255,255,0.86);font-size:0.96rem;font-weight:700;text-decoration:none; }
.footer-links a:hover,
.footer-links a:focus-visible { color:#fff; }
.footer-invitan { display:grid;gap:1rem;padding:1.7rem 0 1.2rem; }
.footer-invitan-label { color:rgba(255,255,255,0.8);font-size:0.78rem;font-weight:800;letter-spacing:0.16em;text-transform:uppercase; }
.footer-invitan-logos { display:flex;align-items:center;justify-content:flex-start;flex-wrap:wrap;gap:1rem 2rem; }
.footer-invitan-logos img { max-height:72px;width:auto;max-width:min(100%,220px);object-fit:contain;opacity:0.95; }
.footer-bottom { display:flex;justify-content:flex-end;gap:1rem;padding-top:1.2rem;color:rgba(255,255,255,0.76);font-size:0.92rem;position:relative; }
.footer-bottom::before { content:'';position:absolute;left:50%;top:0;width:100vw;height:1px;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,0.22) 18%,rgba(255,255,255,0.22) 50%,rgba(255,255,255,0.22) 82%,transparent 100%);transform:translateX(-50%);pointer-events:none; }
.footer-bottom p { margin:0;text-align:right; }
html[data-theme="dark"] .site-footer { background:#070b1b; }
html[data-theme="dark"] .footer-links a { color:rgba(238,242,255,0.84); }
html[data-theme="dark"] .footer-invitan-label { color:rgba(238,242,255,0.8); }
html[data-theme="dark"] .footer-invitan-logos img { opacity:0.94; }
html[data-theme="dark"] .footer-bottom { color:rgba(238,242,255,0.68); }
@media (max-width: 991.98px) {
.footer-top,
.footer-bottom { flex-direction:column; }
.footer-links { justify-content:flex-start; }
.footer-invitan-logos { justify-content:flex-start; }
}
@media (max-width: 767.98px) {
.footer-invitan-logos img { max-height:60px;max-width:180px; }
}
.reveal { opacity:0;transform:translateY(24px);transition:opacity 0.7s ease,transform 0.7s ease;transition-delay:var(--delay,0s); }
.reveal.active { opacity:1;transform:translateY(0); }
@media (prefers-reduced-motion: reduce) {
html { scroll-behavior:auto; }
*,
*::before,
*::after { animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important;scroll-behavior:auto !important; }
.reveal { opacity:1;transform:none; }
}
@keyframes hazePulse {
0% { opacity:0.7;transform:scale(1); }
100% { opacity:0.7;transform:scale(1); }
50% { opacity:0.9;transform:scale(1.02); }
}
@keyframes nodePulse {
0% { transform:scale(1);opacity:0.42; }
100% { transform:scale(1);opacity:0.42; }
50% { transform:scale(1.15);opacity:0.7; }
}
@keyframes driftLeft {
0% { transform:translate3d(0,0,0); }
100% { transform:translate3d(0,0,0); }
50% { transform:translate3d(-6px,-3px,0); }
}
@keyframes driftRight {
0% { transform:translate3d(0,0,0); }
100% { transform:translate3d(0,0,0); }
50% { transform:translate3d(7px,4px,0); }
}
@keyframes driftSlow {
0% { transform:translate3d(0,0,0); }
100% { transform:translate3d(0,0,0); }
50% { transform:translate3d(4px,-5px,0); }
}
@keyframes heroAccentWave {
0% { transform:translateY(0); }
20% { transform:translateY(-3px); }
42% { transform:translateY(0); }
64% { transform:translateY(-2px); }
100% { transform:translateY(0); }
}
