:root{--bg-primary:#0a0506;--bg-secondary:#12090a;--bg-elevated:#1a0d0e;--crimson:#8b1a2b;--crimson-bright:#c41e3a;--ember:#ff6b35;--ember-soft:#ff8c42;--text-primary:#f5e6d3;--text-secondary:#b8a090;--text-muted:#6b5b50;--glow-crimson:#c41e3a26;--glow-ember:#ff6b351f;--border-subtle:#c41e3a14;--border-hover:#c41e3a33;--font-serif:"Cormorant Garamond", Georgia, serif;--font-sans:"Inter", system-ui, sans-serif;--text-display:clamp(2.5rem, 5vw, 4rem);--text-h1:clamp(1.75rem, 3vw, 2.5rem);--text-h2:clamp(1.25rem, 2vw, 1.75rem);--text-body:clamp(.9375rem, 1.1vw, 1.0625rem);--text-small:.8125rem;--text-xs:.75rem;--letterspacing-tight:-.02em;--letterspacing-wide:.08em;--lineheight-tight:1.1;--lineheight-normal:1.6;--space-xs:.25rem;--space-sm:.5rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2.5rem;--space-2xl:4rem;--space-3xl:6rem;--radius-sm:8px;--radius-md:14px;--radius-lg:22px;--radius-full:9999px;--ease-silk:cubic-bezier(.25, .1, .25, 1);--ease-dramatic:cubic-bezier(.16, 1, .3, 1);--ease-breath:cubic-bezier(.45, .05, .55, .95);--duration-fast:.2s;--duration-normal:.4s;--duration-slow:.7s;--duration-cinematic:1.2s}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:auto}body{font-family:var(--font-sans);font-size:var(--text-body);line-height:var(--lineheight-normal);color:var(--text-primary);background-color:var(--bg-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}button{font-family:var(--font-sans);cursor:pointer;background:0 0;border:none}img{max-width:100%;display:block}.grain-overlay{pointer-events:none;z-index:9999;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");background-repeat:repeat;background-size:180px 180px;position:fixed;inset:0}.vignette-overlay{pointer-events:none;z-index:9998;background:radial-gradient(#0000 0%,#0a050680 60%,#0a0506eb 100%);position:fixed;inset:0}.cursor-glow{pointer-events:none;z-index:0;will-change:transform, left, top;width:450px;height:450px;transition:opacity 1.5s var(--ease-silk);opacity:0;background:radial-gradient(circle,#c41e3a12 0%,#ff6b350a 35%,#0000 65%);border-radius:50%;position:fixed;transform:translate(-50%,-50%)}.cursor-glow.active{opacity:1}.ambient-bg{pointer-events:none;z-index:0;animation:ambientShift 20s var(--ease-breath) infinite;background:radial-gradient(60% 50% at 30%,#8b1a2b0a 0%,#0000 60%);position:fixed;inset:0}@keyframes ambientShift{0%,to{background:radial-gradient(60% 50% at 30%,#8b1a2b0a 0%,#0000 60%)}50%{background:radial-gradient(60% 50% at 70% 60%,#8b1a2b0d 0%,#0000 60%)}}.entrance-hidden{opacity:0;animation-play-state:paused}.entrance-navbar{opacity:0;animation:entranceNavbar .9s var(--ease-dramatic) forwards;transform:translateY(-20px)}.entrance-greeting{opacity:0;letter-spacing:.05em;animation:entranceGreeting 1s var(--ease-dramatic) forwards;transform:translateY(30px)}.entrance-subtitle{opacity:0;animation:entranceSubtitle .8s var(--ease-dramatic) .2s forwards;transform:translateY(20px)}.entrance-hero-btn{opacity:0;animation:entranceHeroBtn 1.1s var(--ease-dramatic) forwards;transform:scale(.92)}.entrance-card{opacity:0;animation:entranceCard .8s var(--ease-dramatic) forwards;transform:translateY(40px)}.entrance-section-header{opacity:0;animation:entranceSectionHeader .7s var(--ease-dramatic) forwards;transform:translateY(25px)}@keyframes entranceNavbar{to{opacity:1;transform:translateY(0)}}@keyframes entranceGreeting{to{opacity:1;letter-spacing:var(--letterspacing-tight);transform:translateY(0)}}@keyframes entranceSubtitle{to{opacity:1;transform:translateY(0)}}@keyframes entranceHeroBtn{to{opacity:1;transform:scale(1)}}@keyframes entranceCard{to{opacity:1;transform:translateY(0)}}@keyframes entranceSectionHeader{to{opacity:1;transform:translateY(0)}}.scroll-reveal{opacity:0;transition:opacity .6s var(--ease-dramatic), transform .6s var(--ease-dramatic);transform:translateY(30px)}.scroll-reveal.revealed{opacity:1;transform:translateY(0)}@keyframes heroGlowBreathe{0%,to{box-shadow:0 0 50px #c41e3a1f,0 0 100px #ff6b350f}50%{box-shadow:0 0 70px #c41e3a2e,0 0 140px #ff6b351a}}@keyframes gradientShift{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}@keyframes ambientPulse{0%,to{opacity:.4;transform:translate(-50%,-50%)scale(1)}50%{opacity:.7;transform:translate(-50%,-50%)scale(1.05)}}@keyframes flameBreathe{0%,to{filter:drop-shadow(0 0 6px #ff6b3566);transform:scale(1)}50%{filter:drop-shadow(0 0 11px #ff6b358c);transform:scale(1.1)}}@keyframes flameFlicker{0%{opacity:.4;filter:drop-shadow(0 0 3px #ff6b3533)}25%{opacity:.7;filter:drop-shadow(0 0 5px #ff6b3559)}50%{opacity:.5;filter:drop-shadow(0 0 4px #ff6b3540)}75%{opacity:.65;filter:drop-shadow(0 0 6px #ff6b3566)}to{opacity:.45;filter:drop-shadow(0 0 3px #ff6b3533)}}@keyframes emberPulse{0%,to{opacity:.7;transform:scale(1)}50%{opacity:1;transform:scale(1.3)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.entrance-hidden,.entrance-navbar,.entrance-greeting,.entrance-subtitle,.entrance-hero-btn,.entrance-card,.entrance-section-header{opacity:1;letter-spacing:var(--letterspacing-tight);animation:none;transform:none}.scroll-reveal{opacity:1;transform:none}.cursor-glow,.ambient-bg{display:none}}@media (max-width:767px){:root{--text-display:clamp(1.75rem, 6vw, 2.5rem)}}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-button{width:0;height:0;display:none}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:linear-gradient(180deg, var(--crimson), var(--ember));border-radius:var(--radius-full);border:2px solid var(--bg-primary);box-shadow:0 0 8px #ff6b354d}::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg, var(--crimson-bright), var(--ember-soft));box-shadow:0 0 12px #ff6b3580}html{scrollbar-width:thin;scrollbar-color:var(--ember) var(--bg-primary)}
