/* CÓDIGO BUSHIDO — V11 Design System */
/* Upgraded: Space Grotesk, Syne, mesh gradients, wider layout */

@import url("https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Space+Grotesk:wght@400;500;600;700&family=Syne:wght@400;600;700;800&family=Inter:wght@300;400;500;600;700&family=JetBrains+Mono:wght@400;500&family=Noto+Sans+JP:wght@700;900&family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@24,400,0,0&display=swap");

:root {
  --primary-50:#fde8ec;--primary-100:#f9bfc8;--primary-200:#f596a5;--primary-300:#ee5e74;
  --primary-400:#e03550;--primary-500:#D4243F;--primary-600:#b81e36;--primary-700:#8c1229;
  --primary-800:#700e21;--primary-900:#540a19;
  --secondary-50:#e8e8f0;--secondary-100:#b9b9ce;--secondary-200:#8a8aab;--secondary-300:#5b5b89;
  --secondary-400:#3b3b60;--secondary-500:#1a1a2e;--secondary-600:#161627;--secondary-700:#121220;
  --secondary-800:#0e0e19;--secondary-900:#0a0a12;
  --accent-50:#fbf5e3;--accent-100:#f3e3b0;--accent-200:#ebd17d;--accent-300:#e0bf54;
  --accent-400:#E8C547;--accent-500:#c49f2a;--accent-600:#a68623;--accent-700:#876c1c;
  --accent-800:#695315;--accent-900:#4b3a0e;
  --bg-primary:#08080D;--bg-surface:rgba(255,255,255,0.03);--bg-elevated:rgba(255,255,255,0.06);
  --text-primary:#fff;--text-secondary:rgba(255,255,255,.85);--text-muted:rgba(255,255,255,.6);--text-subtle:rgba(255,255,255,.3);
  --border-color:rgba(255,255,255,.06);--border-hover:rgba(255,255,255,.14);
  --success:#22c55e;--warning:#f59e0b;--error:#ef4444;--info:#3b82f6;
  --gradient-primary:linear-gradient(135deg,var(--primary-500),var(--primary-700));
  --gradient-hero:radial-gradient(ellipse at 30% 20%,rgba(212,36,63,.18) 0%,transparent 60%);
  --gradient-gold:linear-gradient(135deg,var(--accent-400),var(--accent-600));
  --gradient-dark:linear-gradient(180deg,rgba(8,8,13,0) 0%,rgba(8,8,13,.95) 100%);
  --gradient-mesh-1:radial-gradient(ellipse at 20% 50%,rgba(212,36,63,.08) 0%,transparent 50%),radial-gradient(ellipse at 80% 20%,rgba(232,197,71,.06) 0%,transparent 50%);
  --gradient-mesh-2:radial-gradient(ellipse at 70% 80%,rgba(212,36,63,.06) 0%,transparent 50%),radial-gradient(ellipse at 10% 30%,rgba(59,130,246,.04) 0%,transparent 50%);
  --font-heading:"Bebas Neue",sans-serif;--font-display:"Space Grotesk",sans-serif;
  --font-accent:"Syne",sans-serif;--font-body:"Inter",sans-serif;
  --font-mono:"JetBrains Mono",monospace;--font-kanji:"Noto Sans JP",sans-serif;
  --text-xs:clamp(.75rem,.7rem + .25vw,.875rem);--text-sm:clamp(.875rem,.8rem + .35vw,1rem);
  --text-base:clamp(1rem,.9rem + .5vw,1.125rem);--text-lg:clamp(1.125rem,1rem + .6vw,1.25rem);
  --text-xl:clamp(1.25rem,1.1rem + .8vw,1.5rem);--text-2xl:clamp(1.5rem,1.2rem + 1.5vw,2rem);
  --text-3xl:clamp(2rem,1.5rem + 2.5vw,3rem);--text-4xl:clamp(2.5rem,1.8rem + 3.5vw,4rem);
  --text-5xl:clamp(3rem,2rem + 5vw,5.5rem);--text-hero:clamp(4.5rem,3rem + 7vw,9rem);
  --leading-heading:1.05;--leading-body:1.7;--leading-tight:1.15;
  --tracking-tight:-0.03em;--tracking-normal:0;--tracking-wide:.05em;--tracking-display:.1em;--tracking-label:.15em;
  --sp-1:.25rem;--sp-2:.5rem;--sp-3:.75rem;--sp-4:1rem;--sp-5:1.25rem;--sp-6:1.5rem;
  --sp-8:2rem;--sp-10:2.5rem;--sp-12:3rem;--sp-16:4rem;--sp-20:5rem;--sp-24:6rem;
  --sp-section:clamp(5rem,4rem + 6vw,10rem);
  --container-max:1360px;--container-pad:2rem;
  --radius-sm:2px;--radius-base:4px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-2xl:20px;--radius-full:9999px;
  --shadow-sm:0 1px 3px rgba(0,0,0,.12);--shadow-md:0 4px 16px rgba(0,0,0,.2);
  --shadow-lg:0 12px 40px rgba(0,0,0,.3);--shadow-xl:0 24px 60px rgba(0,0,0,.4);
  --glow-red:0 0 40px rgba(212,36,63,.25);--glow-gold:0 0 40px rgba(232,197,71,.25);
  --glass-bg:rgba(255,255,255,.03);--glass-blur:blur(24px);--glass-border:1px solid rgba(255,255,255,.06);
  --ease-out:cubic-bezier(.16,1,.3,1);--ease-spring:cubic-bezier(.34,1.56,.64,1);
  --dur-fast:.2s;--dur-base:.3s;--dur-slow:.5s;
  --z-base:1;--z-dropdown:100;--z-sticky:200;--z-overlay:300;--z-modal:400;--z-toast:500;--z-cursor:9999;
}

/* RESET */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scrollbar-width:thin;scrollbar-color:var(--primary-500) var(--bg-primary)}
body{font-family:var(--font-body);font-size:var(--text-base);line-height:var(--leading-body);color:var(--text-primary);background:var(--bg-primary);overflow-x:hidden;cursor:none}
img,video{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}
button{cursor:none;font:inherit;border:none;background:none}ul,ol{list-style:none}
::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--bg-primary)}
::-webkit-scrollbar-thumb{background:var(--primary-700);border-radius:var(--radius-full)}
::selection{background:var(--primary-500);color:white}

/* TYPOGRAPHY */
h1,h2,h3,h4,h5,h6{line-height:var(--leading-heading);font-weight:700}
h1{font-family:var(--font-heading);font-size:var(--text-hero);letter-spacing:var(--tracking-display);text-transform:uppercase}
h2{font-family:var(--font-display);font-size:var(--text-4xl);font-weight:700;letter-spacing:var(--tracking-tight)}
h3{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:600}
h4{font-family:var(--font-display);font-size:var(--text-xl);font-weight:600}
p{color:var(--text-secondary);max-width:65ch}p + p{margin-top:var(--sp-4)}
.text-muted{color:var(--text-muted)}.text-subtle{color:var(--text-subtle)}.text-accent{color:var(--accent-400)}.text-red{color:var(--primary-400)}
.text-gradient{background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.label{display:inline-flex;align-items:center;gap:var(--sp-2);font-family:var(--font-mono);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:var(--tracking-label);color:var(--primary-400);font-weight:500}
.label::before{content:"";width:10px;height:2px;background:var(--primary-500);display:inline-block}
.kanji-watermark{font-family:var(--font-kanji);font-size:clamp(8rem,6rem + 12vw,24rem);font-weight:900;color:rgba(255,255,255,.015);position:absolute;line-height:1;user-select:none;pointer-events:none}
.section-subtitle{font-family:var(--font-accent);font-size:var(--text-lg);font-weight:400;color:var(--text-muted);max-width:55ch;margin:var(--sp-4) auto 0}

/* LAYOUT */
.container{width:100%;max-width:var(--container-max);margin:0 auto;padding:0 var(--container-pad)}
.container--wide{max-width:1520px}.container--narrow{max-width:800px}
.section{position:relative;padding:var(--sp-section) 0;overflow:hidden}
.section--dark{background:var(--secondary-800)}
.section--mesh-1{background-image:var(--gradient-mesh-1)}.section--mesh-2{background-image:var(--gradient-mesh-2)}
.grid{display:grid;gap:var(--sp-6)}
.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}
.flex{display:flex}.flex-center{display:flex;align-items:center;justify-content:center}
.flex-between{display:flex;align-items:center;justify-content:space-between}
.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}
.gap-2{gap:var(--sp-2)}.gap-4{gap:var(--sp-4)}.gap-6{gap:var(--sp-6)}.gap-8{gap:var(--sp-8)}.gap-12{gap:var(--sp-12)}

/* GLASS */
.glass{background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:var(--glass-border);border-radius:var(--radius-lg)}
.glass--elevated{background:rgba(255,255,255,.05);backdrop-filter:blur(30px);border:1px solid rgba(255,255,255,.1)}
.glass--red{background:rgba(212,36,63,.06);border:1px solid rgba(212,36,63,.12)}
.glass--gold{background:rgba(232,197,71,.06);border:1px solid rgba(232,197,71,.12)}

/* BUTTONS */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-2);padding:var(--sp-3) var(--sp-6);font-family:var(--font-display);font-size:var(--text-sm);font-weight:600;letter-spacing:var(--tracking-wide);text-transform:uppercase;border-radius:var(--radius-base);transition:all var(--dur-base) var(--ease-out);position:relative;overflow:hidden;white-space:nowrap}
.btn::after{content:"";position:absolute;inset:0;background:linear-gradient(to right,transparent,rgba(255,255,255,.1),transparent);transform:translateX(-100%);transition:transform .6s var(--ease-out)}
.btn:hover::after{transform:translateX(100%)}
.btn--primary{background:var(--gradient-primary);color:white;box-shadow:var(--glow-red)}
.btn--primary:hover{transform:translateY(-2px);box-shadow:0 0 50px rgba(212,36,63,.45)}
.btn--ghost{background:transparent;color:var(--text-primary);border:1px solid var(--border-hover)}
.btn--ghost:hover{border-color:var(--primary-400);color:var(--primary-300);background:rgba(212,36,63,.04)}
.btn--gold{background:var(--gradient-gold);color:var(--secondary-900);font-weight:700}
.btn--dark{background:var(--bg-elevated);color:var(--text-primary);border:1px solid var(--border-color)}
.btn--dark:hover{border-color:var(--border-hover);background:rgba(255,255,255,.08)}
.btn--lg{padding:var(--sp-4) var(--sp-10);font-size:var(--text-base);border-radius:var(--radius-md)}
.btn--sm{padding:var(--sp-2) var(--sp-4);font-size:var(--text-xs)}.w-full{width:100%}

/* HEADER */
.header{position:fixed;top:0;left:0;right:0;z-index:var(--z-sticky);padding:var(--sp-5) 0;transition:all var(--dur-base) var(--ease-out)}
.header.scrolled{background:rgba(8,8,13,.88);backdrop-filter:blur(24px);border-bottom:1px solid var(--border-color);padding:var(--sp-3) 0}
.header__inner{display:flex;align-items:center;justify-content:space-between;max-width:var(--container-max);margin:0 auto;padding:0 var(--container-pad)}
.header__logo{display:flex;align-items:center;gap:var(--sp-3);font-family:var(--font-heading);font-size:var(--text-xl);letter-spacing:var(--tracking-display);text-transform:uppercase}
.header__logo img{height:40px;width:auto}
.header__nav{display:flex;align-items:center;gap:var(--sp-8)}
.header__link{font-family:var(--font-body);font-size:var(--text-sm);font-weight:500;color:var(--text-muted);transition:color var(--dur-fast);position:relative}
.header__link::after{content:"";position:absolute;bottom:-4px;left:0;width:0;height:2px;background:var(--primary-500);transition:width var(--dur-base) var(--ease-out)}
.header__link:hover,.header__link.active{color:var(--text-primary)}
.header__link:hover::after,.header__link.active::after{width:100%}
.mobile-toggle{display:none;flex-direction:column;gap:5px;width:28px}
.mobile-toggle span{display:block;height:2px;background:var(--text-primary);transition:all var(--dur-base)}
.mobile-nav{display:none;position:fixed;inset:0;z-index:var(--z-overlay);background:rgba(8,8,13,.98);backdrop-filter:blur(30px);flex-direction:column;align-items:center;justify-content:center;gap:var(--sp-8)}
.mobile-nav.open{display:flex}
.mobile-nav__link{font-family:var(--font-heading);font-size:var(--text-3xl);letter-spacing:var(--tracking-display);color:var(--text-muted);transition:color var(--dur-fast)}
.mobile-nav__link:hover{color:var(--primary-400)}

/* HERO */
.hero{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;text-align:center;overflow:hidden}
.hero__bg{position:absolute;inset:0;z-index:0}.hero__bg img,.hero__bg video{width:100%;height:100%;object-fit:cover}
.hero__overlay{position:absolute;inset:0;background:var(--gradient-hero);z-index:1}
.hero__overlay::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,8,13,.2) 0%,rgba(8,8,13,.85) 100%)}
.hero__content{position:relative;z-index:2;max-width:1000px;padding:0 var(--container-pad)}
.hero__label{display:inline-block;font-family:var(--font-mono);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:var(--tracking-label);color:var(--primary-400);margin-bottom:var(--sp-6);padding:var(--sp-2) var(--sp-5);background:rgba(212,36,63,.08);border:1px solid rgba(212,36,63,.15);border-radius:var(--radius-full)}
.hero__title{font-family:var(--font-heading);font-size:var(--text-hero);line-height:.92;margin-bottom:var(--sp-6)}
.hero__title-outline{-webkit-text-fill-color:transparent;-webkit-text-stroke:2px var(--text-primary);display:block}
.hero__title-gradient{background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;display:block}
.hero__subtitle{font-family:var(--font-accent);font-size:var(--text-lg);color:var(--text-muted);max-width:52ch;margin:0 auto var(--sp-10);font-weight:400}
.hero__ctas{display:flex;gap:var(--sp-4);justify-content:center;flex-wrap:wrap}
.hero__stats{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--sp-4);position:absolute;bottom:var(--sp-12);left:50%;transform:translateX(-50%);width:100%;max-width:var(--container-max);padding:0 var(--container-pad);z-index:2}

/* SECTION TITLES */
.section-header{margin-bottom:var(--sp-12)}
.section-header--center{text-align:center}
.section-header--center p,.section-header--center .section-subtitle{margin-left:auto;margin-right:auto}
.section-number{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--primary-400);letter-spacing:var(--tracking-label);text-transform:uppercase;display:block;margin-bottom:var(--sp-3)}
.section-title{font-family:var(--font-display);font-size:var(--text-4xl);font-weight:700;letter-spacing:var(--tracking-tight)}
.section-title span{color:var(--primary-400)}
.section-divider{width:60px;height:3px;background:var(--gradient-primary);margin:var(--sp-4) 0;border-radius:var(--radius-full)}
.section-header--center .section-divider{margin:var(--sp-4) auto}

/* CARDS */
.card{background:var(--glass-bg);border:var(--glass-border);border-radius:var(--radius-xl);padding:var(--sp-8);transition:all var(--dur-base) var(--ease-out);position:relative;overflow:hidden}
.card::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--gradient-primary);opacity:0;transition:opacity var(--dur-base)}
.card:hover{border-color:var(--border-hover);transform:translateY(-4px);box-shadow:var(--shadow-lg)}.card:hover::before{opacity:1}
.card__icon{width:56px;height:56px;border-radius:var(--radius-lg);background:rgba(212,36,63,.08);display:flex;align-items:center;justify-content:center;margin-bottom:var(--sp-5);color:var(--primary-400);font-size:1.5rem;transition:all var(--dur-base)}
.card:hover .card__icon{background:rgba(212,36,63,.15);transform:scale(1.05)}
.card__title{font-family:var(--font-display);font-size:var(--text-lg);font-weight:600;margin-bottom:var(--sp-3)}
.card__text{font-size:var(--text-sm);color:var(--text-muted);line-height:1.6}

/* STATS */
.stat-card{text-align:center;padding:var(--sp-6);border-radius:var(--radius-lg)}
.stat-card__value{font-family:var(--font-heading);font-size:var(--text-3xl);display:block;letter-spacing:var(--tracking-tight)}
.stat-card__suffix{font-size:.6em;color:var(--primary-400)}
.stat-card__label{display:block;font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:var(--tracking-label);margin-top:var(--sp-2)}
.stat-card__bar{height:3px;background:var(--bg-elevated);border-radius:var(--radius-full);margin-top:var(--sp-3);overflow:hidden}
.stat-card__bar-fill{height:100%;background:var(--gradient-primary);border-radius:var(--radius-full);width:0;transition:width 1.5s var(--ease-out)}

/* VIDEO GALLERY */
.gallery__filters{display:flex;gap:var(--sp-3);flex-wrap:wrap;margin-bottom:var(--sp-8)}
.gallery__filter{padding:var(--sp-2) var(--sp-5);font-family:var(--font-mono);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:var(--tracking-wide);color:var(--text-muted);border:1px solid var(--border-color);border-radius:var(--radius-full);transition:all var(--dur-fast);cursor:pointer}
.gallery__filter:hover,.gallery__filter.active{color:var(--primary-400);border-color:var(--primary-500);background:rgba(212,36,63,.08)}
.gallery__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:var(--sp-6)}
.video-card{border-radius:var(--radius-xl);overflow:hidden;border:1px solid var(--border-color);transition:all var(--dur-base) var(--ease-out);cursor:pointer;background:var(--glass-bg)}
.video-card:hover{border-color:var(--primary-700);transform:translateY(-4px);box-shadow:var(--shadow-lg)}
.video-card--vertical{max-width:280px}
.video-card__thumb{position:relative;aspect-ratio:16/9;overflow:hidden}
.video-card--vertical .video-card__thumb{aspect-ratio:9/16}
.video-card__thumb img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease-out)}
.video-card:hover .video-card__thumb img{transform:scale(1.08)}
.video-card__play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.35);opacity:0;transition:opacity var(--dur-base)}
.video-card:hover .video-card__play{opacity:1}
.video-card__play span{font-size:3.5rem;color:white;filter:drop-shadow(0 2px 8px rgba(0,0,0,.5));animation:pulse 2s ease-in-out infinite}
.video-card__platform{position:absolute;top:var(--sp-3);right:var(--sp-3);padding:4px 10px;border-radius:var(--radius-full);font-family:var(--font-mono);font-size:10px;text-transform:uppercase;background:rgba(0,0,0,.7);color:white;backdrop-filter:blur(8px)}
.video-card__info{padding:var(--sp-5)}
.video-card__title{font-family:var(--font-display);font-size:var(--text-base);font-weight:600;margin-bottom:var(--sp-1)}
.video-card__meta{font-family:var(--font-mono);font-size:11px;color:var(--text-subtle);display:flex;align-items:center;gap:var(--sp-2)}
.video-lightbox{position:fixed;inset:0;z-index:var(--z-modal);background:rgba(0,0,0,.92);display:none;align-items:center;justify-content:center;backdrop-filter:blur(8px)}
.video-lightbox.active{display:flex}
.video-lightbox__close{position:absolute;top:var(--sp-6);right:var(--sp-6);color:white;z-index:10;width:48px;height:48px;border-radius:50%;background:rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center;transition:background var(--dur-fast)}
.video-lightbox__close:hover{background:rgba(255,255,255,.2)}
.video-lightbox__content{width:90%;max-width:1000px;aspect-ratio:16/9;border-radius:var(--radius-lg);overflow:hidden}

/* MC CARDS */
.mc-card{background:var(--glass-bg);border:1px solid var(--border-color);border-radius:var(--radius-xl);padding:var(--sp-6) var(--sp-5);text-align:center;transition:all var(--dur-base) var(--ease-out);position:relative;overflow:hidden}
.mc-card:hover{transform:translateY(-6px);border-color:var(--border-hover);box-shadow:var(--shadow-lg)}
.mc-card__initial{font-family:var(--font-heading);font-size:var(--text-5xl);line-height:1;margin-bottom:var(--sp-3);display:block}
.mc-card__name{font-family:var(--font-display);font-size:var(--text-lg);font-weight:700;margin-bottom:var(--sp-1)}
.mc-card__role{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:var(--tracking-label);margin-bottom:var(--sp-3)}
.mc-card__jornada{display:inline-block;padding:3px 10px;border-radius:var(--radius-full);font-family:var(--font-mono);font-size:10px;text-transform:uppercase;border:1px solid var(--border-color)}
.mc-card__bio{font-size:var(--text-sm);color:var(--text-muted);margin-top:var(--sp-4);line-height:1.5}
.mc-card__stats{display:flex;justify-content:center;gap:var(--sp-6);margin-top:var(--sp-4);font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-subtle)}
.mc-card__stats strong{display:block;font-size:var(--text-lg);font-family:var(--font-heading);color:var(--text-primary)}

/* TIMELINE */
.timeline{position:relative;padding-left:var(--sp-12)}
.timeline::before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--border-color)}
.timeline__item{position:relative;padding-bottom:var(--sp-12)}.timeline__item:last-child{padding-bottom:0}
.timeline__dot{position:absolute;left:calc(-1 * var(--sp-12) - 1px);top:var(--sp-1);width:14px;height:14px;background:var(--primary-500);border-radius:50%;border:3px solid var(--bg-primary);box-shadow:var(--glow-red);transform:translateX(-50%)}
.timeline__date{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-subtle);text-transform:uppercase;letter-spacing:var(--tracking-label);margin-bottom:var(--sp-2)}
.timeline__title{font-family:var(--font-display);font-size:var(--text-xl);font-weight:700;margin-bottom:var(--sp-2)}
.timeline__text{color:var(--text-muted);font-size:var(--text-sm);max-width:55ch}
.timeline__status{display:inline-flex;align-items:center;gap:var(--sp-2);margin-top:var(--sp-3);font-family:var(--font-mono);font-size:11px;padding:4px 12px;border-radius:var(--radius-full)}
.timeline__status--done{color:var(--success);background:rgba(34,197,94,.08);border:1px solid rgba(34,197,94,.15)}
.timeline__status--next{color:var(--accent-400);background:rgba(232,197,71,.08);border:1px solid rgba(232,197,71,.15)}

/* PRICING */
.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp-6);align-items:start}
.pricing-card{background:var(--glass-bg);border:var(--glass-border);border-radius:var(--radius-2xl);padding:var(--sp-10) var(--sp-8);text-align:center;transition:all var(--dur-base);position:relative}
.pricing-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-xl)}
.pricing-card--featured{border-color:var(--primary-600);background:rgba(212,36,63,.04);box-shadow:0 0 80px rgba(212,36,63,.1);transform:scale(1.02)}
.pricing-card--featured:hover{transform:scale(1.02) translateY(-6px)}
.pricing-card__badge{position:absolute;top:-14px;left:50%;transform:translateX(-50%);padding:var(--sp-1) var(--sp-5);background:var(--gradient-primary);border-radius:var(--radius-full);font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:var(--tracking-label);color:white;white-space:nowrap}
.pricing-card__name{font-family:var(--font-display);font-size:var(--text-xl);font-weight:700;margin-bottom:var(--sp-2)}
.pricing-card__price{font-family:var(--font-heading);font-size:var(--text-3xl);margin-bottom:var(--sp-6)}
.pricing-card__price span{font-size:var(--text-sm);font-family:var(--font-body);color:var(--text-muted)}
.pricing-card__features{text-align:left;margin-bottom:var(--sp-8)}
.pricing-card__features li{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-2) 0;font-size:var(--text-sm);color:var(--text-secondary);border-bottom:1px solid rgba(255,255,255,.03)}
.pricing-card__features li .material-symbols-outlined{font-size:16px;color:var(--success)}

/* BLOG */
.blog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:var(--sp-8)}
.blog-card{border-radius:var(--radius-xl);overflow:hidden;border:1px solid var(--border-color);transition:all var(--dur-base);background:var(--glass-bg)}
.blog-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--border-hover)}
.blog-card__image{aspect-ratio:16/10;overflow:hidden}
.blog-card__image img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease-out)}
.blog-card:hover .blog-card__image img{transform:scale(1.06)}
.blog-card__content{padding:var(--sp-6)}
.blog-card__category{font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--primary-400);margin-bottom:var(--sp-2);display:block}
.blog-card__title{font-family:var(--font-display);font-size:var(--text-lg);font-weight:600;margin-bottom:var(--sp-2);line-height:var(--leading-tight)}
.blog-card__excerpt{font-size:var(--text-sm);color:var(--text-muted);line-height:1.5;margin-bottom:var(--sp-4)}
.blog-card__date{font-family:var(--font-mono);font-size:11px;color:var(--text-subtle);display:flex;align-items:center;gap:var(--sp-2)}

/* FORMS */
.form-input,.form-textarea,.form-select{width:100%;padding:var(--sp-4);background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);font-family:var(--font-body);font-size:var(--text-sm);transition:border-color var(--dur-fast);outline:none}
.form-input:focus,.form-textarea:focus{border-color:var(--primary-500);box-shadow:0 0 0 3px rgba(212,36,63,.12)}
.form-input::placeholder,.form-textarea::placeholder{color:var(--text-subtle)}
.form-textarea{min-height:140px;resize:vertical}
.form-label{display:block;font-family:var(--font-mono);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:var(--tracking-label);color:var(--text-muted);margin-bottom:var(--sp-2)}
.form-group{margin-bottom:var(--sp-6)}
.form-checkbox{display:flex;align-items:flex-start;gap:var(--sp-3)}
.form-checkbox input[type="checkbox"]{width:18px;height:18px;accent-color:var(--primary-500);margin-top:2px;flex-shrink:0}
.form-checkbox label{font-size:var(--text-sm);color:var(--text-muted);line-height:1.4}

/* FAQ */
.faq-item{border:1px solid var(--border-color);border-radius:var(--radius-lg);margin-bottom:var(--sp-4);overflow:hidden;transition:border-color var(--dur-fast)}
.faq-item:hover,.faq-item.active{border-color:var(--border-hover)}
.faq-item__question{width:100%;padding:var(--sp-5) var(--sp-6);display:flex;align-items:center;justify-content:space-between;text-align:left;font-family:var(--font-display);font-size:var(--text-base);font-weight:600;color:var(--text-primary);cursor:pointer;transition:background var(--dur-fast)}
.faq-item__question:hover{background:var(--bg-surface)}
.faq-item__icon{transition:transform var(--dur-base);color:var(--text-subtle);font-size:20px}
.faq-item.active .faq-item__icon{transform:rotate(180deg);color:var(--primary-400)}
.faq-item__answer{max-height:0;overflow:hidden;transition:max-height var(--dur-slow) var(--ease-out)}
.faq-item.active .faq-item__answer{max-height:300px}
.faq-item__answer p{padding:0 var(--sp-6) var(--sp-5);font-size:var(--text-sm);color:var(--text-muted);line-height:1.7}

/* MARQUEE */
.marquee{overflow:hidden;padding:var(--sp-6) 0;border-top:1px solid var(--border-color);border-bottom:1px solid var(--border-color);background:rgba(212,36,63,.02)}
.marquee__inner{display:flex;gap:var(--sp-12);animation:marqueeScroll 25s linear infinite;width:max-content}
.marquee__item{font-family:var(--font-kanji);font-size:var(--text-3xl);color:var(--text-subtle);white-space:nowrap;display:flex;align-items:center;gap:var(--sp-4)}
.marquee__item span{font-family:var(--font-heading);font-size:var(--text-xl);letter-spacing:var(--tracking-display);color:var(--text-muted)}

/* FOOTER */
.footer{background:var(--secondary-800);border-top:1px solid var(--border-color);padding:var(--sp-16) 0 var(--sp-8)}
.footer__grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:var(--sp-10)}
.footer__brand{font-family:var(--font-heading);font-size:var(--text-2xl);letter-spacing:var(--tracking-display);text-transform:uppercase;margin-bottom:var(--sp-4)}
.footer__text{font-size:var(--text-sm);color:var(--text-muted);max-width:35ch}
.footer__title{font-family:var(--font-mono);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:var(--tracking-label);color:var(--text-subtle);margin-bottom:var(--sp-4)}
.footer__link{display:block;font-size:var(--text-sm);color:var(--text-muted);padding:var(--sp-1) 0;transition:color var(--dur-fast)}
.footer__link:hover{color:var(--primary-400)}
.footer__divider{border:none;border-top:1px solid var(--border-color);margin:var(--sp-10) 0 var(--sp-6)}
.footer__bottom{display:flex;justify-content:space-between;align-items:center;font-size:var(--text-xs);color:var(--text-subtle)}
.footer__bottom a{color:var(--text-muted);transition:color var(--dur-fast)}
.footer__bottom a:hover{color:var(--primary-400)}

/* CURSOR */
.cursor-dot{position:fixed;top:0;left:0;width:8px;height:8px;background:var(--primary-400);border-radius:50%;pointer-events:none;z-index:var(--z-cursor);transform:translate(-50%,-50%);transition:width .15s,height .15s}
.cursor-follower{position:fixed;top:0;left:0;width:36px;height:36px;border:1.5px solid rgba(212,36,63,.4);border-radius:50%;pointer-events:none;z-index:calc(var(--z-cursor) - 1);transform:translate(-50%,-50%);transition:width .3s var(--ease-out),height .3s var(--ease-out)}

/* ANIMATIONS */
@keyframes marqueeScroll{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
@keyframes fadeInUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
@keyframes pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.15)}}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
.reveal{opacity:0;transform:translateY(20px);transition:opacity .7s var(--ease-out),transform .7s var(--ease-out)}
.reveal.visible{opacity:1;transform:translateY(0)}
.stagger .reveal:nth-child(1){transition-delay:.05s}.stagger .reveal:nth-child(2){transition-delay:.1s}
.stagger .reveal:nth-child(3){transition-delay:.15s}.stagger .reveal:nth-child(4){transition-delay:.2s}
.stagger .reveal:nth-child(5){transition-delay:.25s}.stagger .reveal:nth-child(6){transition-delay:.3s}

/* UTILITIES */
.mx-auto{margin-left:auto;margin-right:auto}.text-center{text-align:center}
.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}
.progress-bar{position:fixed;top:0;left:0;height:3px;background:var(--gradient-primary);z-index:calc(var(--z-sticky) + 1);transition:width .1s linear}
.cookie-banner{position:fixed;bottom:var(--sp-6);left:50%;transform:translateX(-50%);z-index:var(--z-toast);background:var(--secondary-800);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--sp-5) var(--sp-6);display:flex;align-items:center;gap:var(--sp-6);max-width:700px;width:calc(100% - var(--sp-8));box-shadow:var(--shadow-xl);backdrop-filter:blur(20px)}
.cookie-banner__actions{display:flex;gap:var(--sp-3);flex-shrink:0}
.whatsapp-widget{position:fixed;bottom:24px;right:24px;z-index:1000;width:56px;height:56px;border-radius:50%;background:#25D366;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 4px 20px rgba(37,211,102,.4);transition:transform .3s}
.whatsapp-widget:hover{transform:scale(1.1)}
.divider-line{width:100%;height:1px;background:linear-gradient(90deg,transparent,var(--border-color),transparent)}
.comparison-table{width:100%;text-align:center;border-collapse:collapse}
.comparison-table th,.comparison-table td{padding:var(--sp-3)}
.comparison-table th{font-family:var(--font-mono);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:var(--tracking-label);color:var(--text-muted);border-bottom:1px solid var(--border-color)}
.comparison-table td{font-size:var(--text-sm);border-bottom:1px solid var(--border-color)}
.light-mode{--bg-primary:#f5f5f7;--secondary-800:#fff;--text-primary:#1a1a2e;--text-secondary:rgba(26,26,46,.85);--text-muted:rgba(26,26,46,.6);--text-subtle:rgba(26,26,46,.35);--border-color:rgba(0,0,0,.08);--border-hover:rgba(0,0,0,.15);--glass-bg:rgba(255,255,255,.6);--glass-border:1px solid rgba(0,0,0,.06);--bg-surface:rgba(0,0,0,.03);--bg-elevated:rgba(0,0,0,.06)}

/* RESPONSIVE */
@media(max-width:1024px){.grid-4{grid-template-columns:repeat(2,1fr)}.pricing-grid{grid-template-columns:1fr}.footer__grid{grid-template-columns:1fr 1fr}}
@media(max-width:768px){.header__nav{display:none}.mobile-toggle{display:flex}.grid-2,.grid-3{grid-template-columns:1fr}.hero__stats{grid-template-columns:repeat(2,1fr);bottom:var(--sp-6)}.gallery__grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.blog-grid{grid-template-columns:1fr}.footer__grid{grid-template-columns:1fr;text-align:center}.section-title{font-size:var(--text-3xl)}.hero__title{font-size:var(--text-5xl)}.cookie-banner{flex-direction:column;text-align:center}.cursor-dot,.cursor-follower{display:none}body{cursor:auto}button{cursor:pointer}}
@media(max-width:480px){.hero__stats{grid-template-columns:1fr}.hero__ctas{flex-direction:column;align-items:center}.grid-4{grid-template-columns:1fr}:root{--container-pad:1rem}}
@media print{.header,.footer,.cookie-banner,.whatsapp-widget,.cursor-dot,.cursor-follower,#threeBg,.progress-bar{display:none!important}body{background:white;color:black;cursor:auto}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}}
