@charset "UTF-8";:root{color-scheme:dark;--bg-0: #040a1a;--bg-1: #070f24;--surface: #0c1730;--surface-2: #122044;--surface-3: #1a2c57;--overlay: rgba(3, 8, 20, .72);--text-strong: #f3f6ff;--text: #cfd9f3;--text-soft: #9aabd0;--text-faint: #8494bb;--line: rgba(150, 170, 220, .16);--line-strong: rgba(150, 170, 220, .3);--blue: #5b8cff;--blue-strong: #7ba4ff;--cyan: #25d5f0;--mint: #39e6b0;--violet: #9a6bff;--red: #ff4d5e;--amber: #ffb020;--pink: #ff6fae;--brand: var(--blue);--brand-strong: var(--blue-strong);--accent: var(--cyan);--grad-brand: linear-gradient(100deg, #6f97ff 0%, #25d5f0 55%, #39e6b0 110%);--grad-brand-soft: linear-gradient(100deg, rgba(111, 151, 255, .22), rgba(37, 213, 240, .14));--grad-red: linear-gradient(100deg, #e0263a, #c81e33);--grad-surface: linear-gradient(180deg, rgba(150, 170, 220, .06), rgba(150, 170, 220, 0));--glow: 0 0 0 1px rgba(111, 151, 255, .35), 0 10px 40px -8px rgba(37, 213, 240, .25);--font-display: "Space Grotesk", ui-sans-serif, system-ui, sans-serif;--font-body: "Inter", ui-sans-serif, system-ui, -apple-system, sans-serif;--fs-xs: clamp(.72rem, .7rem + .1vw, .78rem);--fs-sm: clamp(.84rem, .82rem + .14vw, .94rem);--fs-base: clamp(.98rem, .95rem + .16vw, 1.08rem);--fs-md: clamp(1.08rem, 1.02rem + .3vw, 1.28rem);--fs-lg: clamp(1.3rem, 1.15rem + .8vw, 1.75rem);--fs-xl: clamp(1.7rem, 1.3rem + 2vw, 2.7rem);--fs-2xl: clamp(2.2rem, 1.5rem + 3.6vw, 4rem);--fs-3xl: clamp(3rem, 1.6rem + 7vw, 7rem);--lh-tight: 1.08;--lh-base: 1.62;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-7: 3rem;--space-8: 4.5rem;--space-9: 7rem;--radius-sm: .5rem;--radius-md: .85rem;--radius-lg: 1.35rem;--radius-xl: 2rem;--radius-full: 999px;--shadow-sm: 0 2px 10px -2px rgba(0, 0, 0, .4);--shadow-md: 0 12px 32px -10px rgba(0, 0, 0, .5);--shadow-lg: 0 30px 70px -20px rgba(0, 0, 0, .6);--shell: 1200px;--shell-narrow: 880px;--header-h: 4.5rem;--ease: cubic-bezier(.22, 1, .36, 1);--dur-fast: .18s;--dur: .42s;--dur-slow: .8s;--dur-slower: 1.3s;--reveal-dist: 26px}@media(prefers-color-scheme:light){:root[data-theme=auto]{color-scheme:light}}:root[data-season=navidad]{--season-a: #ff4d5e;--season-b: #ffd166;--season-c: #39e6b0;--season-glow: rgba(255, 77, 94, .22)}:root[data-season=anio-nuevo]{--season-a: #ffd166;--season-b: #39e6b0;--season-c: #ff6fae;--season-glow: rgba(255, 209, 102, .22)}:root[data-season=san-valentin]{--season-a: #ff6fae;--season-b: #ff8fa8;--season-c: #c81e33;--season-glow: rgba(255, 111, 174, .22)}:root[data-season=halloween]{--season-a: #ff9f1c;--season-b: #b463ff;--season-c: #6ee7b7;--season-glow: rgba(180, 99, 255, .22)}:root[data-season=canarias]{--season-a: #ffcc00;--season-b: #0b6bcb;--season-c: #f4f8ff;--season-glow: rgba(255, 176, 32, .22)}*,*:before,*:after{box-sizing:border-box}*{margin:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:calc(var(--header-h) + .5rem)}body{font-family:var(--font-body);font-size:var(--fs-base);line-height:var(--lh-base);background:var(--bg-0);color:var(--text);min-height:100vh;overflow-x:hidden;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body:before{content:"";position:fixed;inset:0;z-index:-2;background:radial-gradient(60rem 40rem at 85% -10%,rgba(91,140,255,.16),transparent 60%),radial-gradient(50rem 36rem at -10% 25%,rgba(57,230,176,.1),transparent 60%),radial-gradient(46rem 40rem at 60% 115%,rgba(37,213,240,.12),transparent 60%),var(--bg-0)}body:after{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background-image:linear-gradient(rgba(150,170,220,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(150,170,220,.045) 1px,transparent 1px);background-size:56px 56px;-webkit-mask-image:radial-gradient(70rem 45rem at 50% 0%,black,transparent 75%);mask-image:radial-gradient(70rem 45rem at 50% 0%,black,transparent 75%)}img,picture,svg,video{display:block;max-width:100%;height:auto}h1,h2,h3,h4{font-family:var(--font-display);color:var(--text-strong);line-height:var(--lh-tight);text-wrap:balance;font-weight:650;letter-spacing:-.015em}p{text-wrap:pretty}a{color:var(--link, var(--blue-strong));text-decoration:none;transition:color var(--dur-fast) var(--ease),opacity var(--dur-fast) var(--ease)}a:hover{color:#e9f1ff}ul[role=list]{list-style:none;padding:0}button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}:focus{outline:none}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:var(--radius-sm)}::selection{background:#25d5f052;color:#fff}::-webkit-scrollbar{width:11px}::-webkit-scrollbar-track{background:var(--bg-1)}::-webkit-scrollbar-thumb{background:var(--surface-3);border-radius:8px;border:2px solid var(--bg-1)}html.menu-open,html.panel-open{overflow:hidden}::view-transition-old(root){animation:vtr-out .28s var(--ease) both}::view-transition-new(root){animation:vtr-in .45s var(--ease) both}@keyframes vtr-out{to{opacity:0;transform:translateY(8px) scale(.995)}}@keyframes vtr-in{0%{opacity:0;transform:translateY(-8px) scale(.995)}}.shell{width:min(100% - 2 * var(--space-5),var(--shell));margin-inline:auto}.shell-narrow{width:min(100% - 2 * var(--space-5),var(--shell-narrow));margin-inline:auto}.section{padding-block:clamp(2.75rem,7vw,4.25rem) clamp(3.5rem,9vw,5.5rem);position:relative}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.skip-link{position:fixed;top:var(--space-2);left:var(--space-2);z-index:200;padding:.7rem 1.1rem;background:var(--surface-2);color:var(--text-strong);border:1px solid var(--line-strong);border-radius:var(--radius-sm);transform:translateY(-160%);transition:transform .2s var(--ease)}.skip-link:focus-visible{transform:translateY(0)}html.js [data-reveal]{opacity:0;transform:translateY(var(--reveal-dist));filter:blur(5px);transition:opacity .9s var(--ease),transform .9s var(--ease),filter .9s var(--ease);transition-delay:var(--reveal-delay, 0ms);will-change:opacity,transform,filter}html.js [data-reveal].is-revealed{opacity:1;transform:none;filter:none}html.js [data-reveal=left]{transform:translate(calc(-1 * var(--reveal-dist)))}html.js [data-reveal=right]{transform:translate(var(--reveal-dist))}html.js [data-reveal=scale]{transform:scale(.92)}html.js [data-reveal=scale].is-revealed,html.js [data-reveal=left].is-revealed,html.js [data-reveal=right].is-revealed{transform:none}.glow-card{position:relative;background:linear-gradient(var(--surface),var(--surface)) padding-box,linear-gradient(120deg,#6f97ff59,#39e6b01a) border-box;border:1px solid transparent;border-radius:var(--radius-lg);transition:transform var(--dur) var(--ease),box-shadow var(--dur) var(--ease)}.glow-card:hover{transform:translateY(-5px);box-shadow:var(--glow)}.text-gradient{background:var(--grad-brand);-webkit-background-clip:text;background-clip:text;color:transparent}.eyebrow{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--font-display);font-size:var(--fs-xs);font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:var(--accent)}.eyebrow:before{content:"";width:2rem;height:1px;background:linear-gradient(90deg,var(--accent),transparent)}kbd,code{font-family:JetBrains Mono,ui-monospace,Cascadia Code,monospace}.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.85rem 1.6rem;border-radius:var(--radius-full);font-family:var(--font-display);font-size:var(--fs-sm);font-weight:600;letter-spacing:.02em;color:var(--text-strong);overflow:hidden;transition:transform .25s var(--ease),box-shadow .25s var(--ease),background .25s,border-color .25s}.btn>span[aria-hidden]{display:inline-flex;transition:transform .25s var(--ease)}.btn:hover{transform:translateY(-3px)}.btn:active{transform:translateY(-1px) scale(.99)}.btn--primary{color:var(--bg-0);background:var(--grad-brand);background-size:180% 180%;box-shadow:0 12px 28px -10px #25d5f08c;animation:sd-gradient-x 8s ease infinite}.btn--primary:after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,transparent,rgba(255,255,255,.35),transparent);transform:translate(-130%) skew(-18deg)}.btn--primary:hover:after{animation:sd-shine .9s var(--ease)}.btn--ghost{border:1px solid var(--line-strong);background:#ffffff05;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.btn--ghost:hover{border-color:var(--accent);box-shadow:0 0 0 4px #25d5f01f}.btn--red{color:#fff;background:var(--grad-red);box-shadow:0 12px 28px -10px #ff4d5e99}.btn--red:hover{box-shadow:0 16px 34px -10px #ff4d5ebf}.btn--block{width:100%}.btn--sm{padding:.55rem 1rem;font-size:var(--fs-xs)}.btn--primary:hover>span[aria-hidden]{transform:translateY(3px)}.btn--red:hover>span[aria-hidden]{transform:translate(3px)}.btn--ghost:hover>span[aria-hidden]{transform:translate(-3px)}.tag{display:inline-flex;align-items:center;padding:.28rem .7rem;border-radius:var(--radius-full);border:1px solid var(--line);background:#6f97ff14;color:var(--text-soft);font-family:var(--font-display);font-size:var(--fs-xs);font-weight:500;letter-spacing:.04em;white-space:nowrap;transition:border-color .2s,color .2s,background .2s}.tag:hover{border-color:var(--accent);color:var(--text-strong);background:#25d5f01a}.section-head{display:flex;flex-direction:column;gap:var(--space-4);margin-bottom:var(--space-7)}.section-head h2{font-size:var(--fs-xl);max-width:18ch}.section-head p{color:var(--text-soft);max-width:56ch}@media(min-width:640px){.section-head{margin-bottom:var(--space-8)}}@keyframes sd-float{0%,to{transform:translateY(0)}50%{transform:translateY(-16px)}}@keyframes sd-float-soft{0%,to{transform:translateY(0) translate(0)}50%{transform:translateY(-10px) translate(6px)}}@keyframes sd-pulse-ring{0%{box-shadow:0 0 #ff4d5e73}70%{box-shadow:0 0 0 12px #ff4d5e00}to{box-shadow:0 0 #ff4d5e00}}@keyframes sd-shine{0%{transform:translate(-130%) skew(-18deg)}60%,to{transform:translate(230%) skew(-18deg)}}@keyframes sd-gradient-x{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}@keyframes sd-marquee{to{transform:translate(-50%)}}@keyframes sd-blink{0%,45%{opacity:1}50%,to{opacity:0}}@keyframes sd-spin{to{transform:rotate(360deg)}}@keyframes sd-float-down{0%{transform:translateY(-110vh)}to{transform:translateY(110vh)}}@keyframes sd-sway{0%,to{transform:rotate(-6deg) translate(-4px)}50%{transform:rotate(8deg) translate(6px)}}@keyframes sd-tilt{0%,to{transform:rotate(-1.5deg)}50%{transform:rotate(1.5deg)}}@keyframes sd-fade-in{0%{opacity:0}to{opacity:1}}@keyframes sd-pop-in{0%{opacity:0;transform:translateY(18px) scale(.96)}to{opacity:1;transform:none}}@keyframes sd-bounce-balls{0%,to{transform:translateY(0)}40%{transform:translateY(-26px)}}@keyframes sd-dash{to{stroke-dashoffset:0}}@keyframes bulb-twinkle{0%,to{opacity:.55;filter:brightness(.8)}35%{opacity:1;filter:brightness(1.3)}}@keyframes wreath-sway{0%,to{transform:rotate(-4deg)}50%{transform:rotate(4deg)}}@keyframes wreath-sway-flip{0%,to{transform:scaleX(-1) rotate(-4deg)}50%{transform:scaleX(-1) rotate(4deg)}}@keyframes snow-fall{0%{transform:translate3d(0,-4vh,0) rotate(0);opacity:0}8%{opacity:var(--o, 1)}92%{opacity:var(--o, 1)}to{transform:translate3d(var(--sway, 0),108vh,0) rotate(var(--r, 180deg));opacity:0}}@keyframes rocket-rise{0%{opacity:0;transform:translateY(var(--rise, 60vh))}5%{opacity:1}19%{opacity:1;transform:translateY(0)}20%,to{opacity:0;transform:translateY(0)}}@keyframes burst-life{0%,20%{opacity:0}24%{opacity:1;transform:translate(-50%,-50%) scale(.32)}46%{opacity:1;transform:translate(-50%,-50%) scale(1)}74%{opacity:.45;transform:translate(-50%,-50%) scale(1.26)}to{opacity:0;transform:translate(-50%,-50%) scale(1.4)}}@keyframes ray-flash{0%,22%{opacity:0}30%{opacity:1}70%{opacity:.65}to{opacity:0}}@keyframes burst-core{0%,20%{opacity:0;transform:scale(.35)}25%{opacity:1;transform:scale(1.7)}58%{opacity:.3;transform:scale(1)}to{opacity:0;transform:scale(.5)}}@keyframes burst-ring{0%,20%{opacity:0;transform:scale(.2)}27%{opacity:.8}62%,to{opacity:0;transform:scale(1.7)}}@keyframes burst-spin{0%{transform:rotate(0)}to{transform:rotate(26deg)}}@keyframes confetti-fall{0%{transform:translate3d(0,-4vh,0) rotate(0);opacity:0}8%{opacity:var(--o, 1)}to{transform:translate3d(var(--sway, 0),108vh,0) rotate(var(--r, 360deg));opacity:0}}@keyframes spark-fall{0%{transform:translate3d(0,-4vh,0);opacity:0}10%{opacity:var(--o, .9)}to{transform:translate3d(var(--sway, 0),108vh,0) rotate(220deg);opacity:0}}@keyframes heart-rise{0%{transform:translateZ(0) rotate(45deg) scale(.4);opacity:0}12%{opacity:var(--o, 1)}to{transform:translate3d(var(--sway, 0),-112vh,0) rotate(calc(45deg + var(--r, 0deg))) scale(1);opacity:0}}@keyframes heart-rise-soft{0%{transform:translateZ(0) rotate(45deg) scale(.7);opacity:0}35%{opacity:var(--o, .2)}to{transform:translate3d(var(--sway, 0),-104vh,0) rotate(calc(45deg + var(--r, 0deg))) scale(1.15);opacity:0}}@keyframes moon-breathe{0%,to{transform:scale(1);opacity:.95}50%{transform:scale(1.035);opacity:1}}@keyframes spider-swing{0%,to{transform:rotate(-5deg)}50%{transform:rotate(5deg)}}@keyframes fog-drift{0%{transform:translate3d(-6%,2%,0) scaleX(1)}to{transform:translate3d(6%,-2%,0) scaleX(1.12)}}@keyframes bat-fly{0%{transform:translate3d(0,-6vh,0) scale(.9);opacity:0}10%{opacity:var(--o, .8)}50%{transform:translate3d(calc(var(--sway, 0) * -1),50vh,0) translateY(-3vh) scale(1.05)}90%{opacity:var(--o, .8)}to{transform:translate3d(0,110vh,0) scale(.9);opacity:0}}@keyframes ghost-rise{0%{transform:translateZ(0) scale(.9);opacity:0}25%{opacity:.22}to{transform:translate3d(var(--sway, 20px),-104vh,0) scale(1.1);opacity:0}}@keyframes ember-rise{0%{transform:translateZ(0) scale(.6);opacity:0}12%{opacity:var(--o, .8)}70%{opacity:calc(var(--o, .8) * .5)}to{transform:translate3d(var(--sway, 0),-108vh,0) scale(1.1);opacity:0}}@keyframes pumpkin-flicker{0%,to{opacity:.92;text-shadow:0 0 12px rgba(255,159,28,.4)}45%{opacity:1;text-shadow:0 0 24px rgba(255,190,90,.7)}}@keyframes sun-pulse{0%,to{transform:translate(-50%) scale(.97);opacity:.9}50%{transform:translate(-50%) scale(1.04);opacity:1}}@keyframes petal-fall{0%{transform:translate3d(0,-4vh,0) rotate(0);opacity:0}10%{opacity:var(--o, .8)}to{transform:translate3d(var(--sway, 0),108vh,0) rotate(var(--r, 220deg));opacity:0}}@keyframes star-twinkle{0%,to{opacity:.15;transform:scale(.7)}50%{opacity:.85;transform:scale(1.15)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}html.js [data-reveal]{opacity:1;transform:none;filter:none;transition:none}}
