.hero{position:relative;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;background:linear-gradient(135deg,var(--color-bg) 0%,var(--color-bg-secondary) 100%)}.hero:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 20% 50%,rgba(255,123,84,.1) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(255,185,151,.1) 0%,transparent 50%);pointer-events:none;z-index:2}.hero-decoration{position:absolute;border-radius:50%;opacity:.08;filter:blur(40px);pointer-events:none}.hero-decoration-1{width:400px;height:400px;background:var(--color-coral);top:-100px;left:-150px;animation:float 8s ease-in-out infinite}.hero-decoration-2{width:350px;height:350px;background:var(--color-peach);bottom:-80px;right:-120px;animation:float 10s ease-in-out infinite reverse}.hero-content{position:relative;z-index:10;text-align:center;max-width:900px;padding:var(--space-lg);display:flex;flex-direction:column;align-items:center;gap:var(--space-2xl)}.hero-text-wrapper{display:flex;flex-direction:column;align-items:center;gap:var(--space-lg)}.hero-title{font-size:clamp(3rem,12vw,7rem);font-family:var(--font-display);font-weight:var(--fw-black);background:linear-gradient(135deg,var(--color-coral) 0%,var(--color-peach) 50%,var(--color-gold) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0;letter-spacing:-.02em;line-height:1}.hero-tagline{font-size:clamp(1rem,3vw,1.5rem);font-family:var(--font-body);color:var(--color-coral);margin:0;font-weight:var(--fw-semibold);letter-spacing:.1em;text-transform:uppercase}.hero-tech-stack{font-size:clamp(.9rem,2.5vw,1.25rem);color:var(--color-peach);margin:0;font-weight:var(--fw-medium);letter-spacing:.05em}.hero-subtitle{font-size:clamp(.9rem,2vw,1.3rem);color:var(--color-text);margin:0;font-weight:var(--fw-normal);line-height:1.8;max-width:600px;font-style:italic}.hero-cta{font-size:var(--fs-lg);padding:var(--space-lg) var(--space-2xl);box-shadow:var(--shadow-warm);position:relative;overflow:hidden;margin-top:var(--space-lg);font-weight:var(--fw-bold);transition:all .3s ease}.hero-cta:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;background:#fff3;border-radius:50%;transform:translate(-50%,-50%);pointer-events:none}.hero-cta:active:before{animation:ripple-burst .6s ease-out}@keyframes ripple-burst{to{width:300px;height:300px;opacity:0}}.scroll-indicator{position:absolute;bottom:var(--space-2xl);left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:var(--space-md);z-index:5}.scroll-text{font-size:var(--fs-xs);color:var(--color-text-muted);letter-spacing:.1em;text-transform:uppercase;animation:fadeInOut 2s ease-in-out infinite}.mouse{width:24px;height:40px;border:2px solid var(--color-coral);border-radius:var(--radius-full);display:flex;align-items:flex-start;justify-content:center;padding-top:var(--space-sm)}.wheel{width:3px;height:8px;background:var(--color-coral);border-radius:var(--radius-full);animation:scroll-wheel 1.5s ease-in-out infinite}@keyframes scroll-wheel{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(10px)}}@keyframes fadeInOut{0%,to{opacity:.5}50%{opacity:1}}@media (max-width: 768px){.hero{min-height:85vh;padding:var(--space-lg) 0}.hero-title{margin-bottom:var(--space-md)}.hero-decoration-1,.hero-decoration-2{width:250px;height:250px}.scroll-indicator{bottom:var(--space-lg)}}@media (max-width: 480px){.hero-content{padding:var(--space-md);gap:var(--space-xl)}.hero-cta{width:100%;padding:var(--space-md) var(--space-lg)}.hero-decoration-1,.hero-decoration-2{width:150px;height:150px;filter:blur(30px)}}@media (max-width: 375px){.hero-content{padding:var(--space-sm);gap:var(--space-lg)}.hero-title{font-size:clamp(2rem,10vw,3rem)}.hero-tagline{font-size:clamp(.9rem,2.5vw,1.25rem)}.hero-tech-stack{font-size:clamp(.8rem,2vw,1rem)}.hero-cta{width:100%;padding:var(--space-sm) var(--space-md);font-size:var(--fs-sm)}}@media (max-width: 320px){.hero{min-height:100vh}.hero-content{padding:var(--space-sm);gap:var(--space-md)}.hero-title{font-size:clamp(1.5rem,8vw,2.5rem)}.hero-tagline{font-size:clamp(.75rem,2vw,1rem)}.hero-decoration-1,.hero-decoration-2{display:none}.hero-cta{width:100%;padding:var(--space-sm) var(--space-md);font-size:var(--fs-xs)}.scroll-indicator{display:none}}.easter-egg{position:fixed;top:var(--space-lg);right:var(--space-lg);z-index:999}.theme-flash{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(circle at calc(100% - 70px) 70px,rgba(255,185,151,.35) 0%,rgba(255,123,84,.18) 35%,transparent 70%);opacity:0;z-index:998;transition:opacity .35s ease}.easter-egg.is-flashing .theme-flash{opacity:1}.theme-toggle{width:54px;height:54px;border-radius:50%;background:linear-gradient(135deg,var(--color-coral),var(--color-peach));border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1.5rem;transition:all .3s ease;box-shadow:0 4px 15px #ff7b544d;position:relative;overflow:hidden}.theme-halo{position:absolute;top:-20%;right:-20%;bottom:-20%;left:-20%;border-radius:50%;background:conic-gradient(from 0deg,#fff0,#ffffff80 70deg,#fff0 160deg);opacity:.4;transform:rotate(0);animation:halo-spin 6s linear infinite}.theme-toggle:hover{transform:scale(1.1);box-shadow:0 8px 25px #ff7b5480}.theme-toggle:active{transform:scale(.95)}.theme-toggle:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;background:#ffffff4d;border-radius:50%;transform:translate(-50%,-50%);pointer-events:none}.theme-toggle:active:before{animation:ripple .6s ease-out}@keyframes ripple{to{width:100px;height:100px;opacity:0}}.icon{display:inline-flex;align-items:center;justify-content:center;font-size:1.25rem;line-height:1;position:absolute;transition:all .5s ease}.sun{animation:spin-sun 2s linear infinite}.moon{filter:drop-shadow(0 0 8px rgba(255,185,151,.5))}@keyframes spin-sun{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes halo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}[data-theme=light] .theme-toggle{background:linear-gradient(135deg,#ffd89b,#f7b801);box-shadow:0 4px 15px #f7b8014d}[data-theme=light] .theme-toggle:hover{box-shadow:0 8px 25px #f7b80180}.theme-toggle:focus-visible{outline:2px solid var(--color-coral);outline-offset:4px}@media (prefers-reduced-motion: reduce){.theme-toggle,.icon,.theme-toggle:before,.theme-halo,.theme-flash{animation:none!important;transition:none!important}}@media (max-width: 480px){.easter-egg{top:var(--space-md);right:var(--space-md)}.theme-toggle{width:48px;height:48px;font-size:1.25rem}}.theme-toggle:after{content:attr(title);position:absolute;bottom:-40px;left:50%;transform:translate(-50%);background:#000c;color:#fff;padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);font-size:var(--fs-xs);white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .3s ease}.theme-toggle:hover:after{opacity:1}.app{position:relative;min-height:100vh;background-color:var(--color-bg);color:var(--color-text);transition:background-color .6s ease,color .6s ease}.main-content{position:relative;z-index:1}.skip-link{position:absolute;top:-100px;left:var(--space-md);background:var(--color-coral);color:var(--color-bg);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);font-weight:var(--fw-semibold);z-index:1000}.skip-link:focus{top:var(--space-md)}.section-loading{text-align:center;padding:var(--space-3xl) var(--space-lg);color:var(--color-text-muted);font-size:var(--fs-sm)}section{position:relative;width:100%}.footer{background-color:var(--color-bg-secondary);padding:var(--space-3xl) var(--space-lg);border-top:1px solid var(--color-border-light);margin-top:var(--space-4xl);text-align:center}.footer p{margin:0;font-size:var(--fs-sm)}.scroll-progress{position:fixed;top:0;left:0;height:3px;background:linear-gradient(90deg,var(--color-coral),var(--color-peach),var(--color-gold));z-index:999}@keyframes sectionReveal{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}section{animation:sectionReveal .8s ease-out forwards}@media (prefers-reduced-motion: reduce){section{animation:none}}@media (max-width: 768px){.footer{padding:var(--space-2xl) var(--space-lg)}}:root{--color-coral: #ff7b54;--color-peach: #ffb997;--color-cream: #fff8f3;--color-gold: #f7b801;--color-terracotta: #d4644a;--color-sage: #a8d5ba;--color-dust-blue: #7b9ba3;--color-mauve: #c4969c;--color-dark-bg: #1f1612;--color-dark-alt: #2d1b1b;--color-text-dark: #2c1810;--color-text-light: #fff8f3;--color-text-muted: #8b7355;--color-border: #e8d5c4;--color-border-dark: #4a3728;--color-success: #52b788;--color-warning: #f7b801;--color-error: #d32f2f;--font-display: "Playfair Display", "Georgia", serif;--font-body: "Inter", "Segoe UI", system-ui, sans-serif;--font-mono: "Monaco", "Courier New", monospace;--fs-xs: .75rem;--fs-sm: .875rem;--fs-base: 1rem;--fs-lg: 1.125rem;--fs-xl: 1.25rem;--fs-2xl: 1.5rem;--fs-3xl: 2rem;--fs-4xl: 2.5rem;--fs-5xl: 3.5rem;--fs-6xl: 4.5rem;--fw-light: 300;--fw-normal: 400;--fw-medium: 500;--fw-semibold: 600;--fw-bold: 700;--fw-black: 900;--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--space-2xl: 3rem;--space-3xl: 4rem;--space-4xl: 6rem;--space-5xl: 8rem;--radius-sm: .25rem;--radius-md: .5rem;--radius-lg: 1rem;--radius-xl: 1.5rem;--radius-2xl: 2rem;--radius-full: 9999px;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--shadow-warm: 0 10px 30px -8px rgba(255, 123, 84, .2);--transition-fast: .15s ease;--transition-base: .25s ease;--transition-slow: .35s ease;--z-dropdown: 1000;--z-modal: 1050;--z-popover: 1100;--z-tooltip: 1150;--z-sticky: 500;--color-bg: var(--color-cream);--color-bg-secondary: #ffffff;--color-text: var(--color-text-dark);--color-text-secondary: var(--color-text-muted);--color-border-light: var(--color-border);--color-border-dark: var(--color-border-dark)}[data-theme=dark]{--color-bg: var(--color-dark-bg);--color-bg-secondary: var(--color-dark-alt);--color-text: var(--color-text-light);--color-text-secondary: var(--color-text-muted);--color-border-light: var(--color-border);--color-border-dark: var(--color-border-dark)}[data-theme=light]{--color-bg: var(--color-cream);--color-bg-secondary: #fff8f3;--color-text: var(--color-text-dark);--color-text-secondary: var(--color-text-muted);--color-border-light: var(--color-border)}html{color-scheme:light}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes glow{0%,to{box-shadow:0 0 5px #ff7b544d}50%{box-shadow:0 0 20px #ff7b5499}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.parallax{position:relative}.parallax-element{will-change:transform}.animate-fade-in{animation:fadeIn .6s ease-out forwards}.animate-slide-up{animation:slideInUp .6s ease-out forwards}.animate-slide-left{animation:slideInLeft .6s ease-out forwards}.animate-slide-right{animation:slideInRight .6s ease-out forwards}.animate-scale-in{animation:scaleIn .6s ease-out forwards}.animate-pulse{animation:pulse 2s ease-in-out infinite}.animate-bounce{animation:bounce 1s ease-in-out infinite}.animate-rotate{animation:rotate 20s linear infinite}.animate-float{animation:float 3s ease-in-out infinite}.stagger-1{animation-delay:.1s}.stagger-2{animation-delay:.2s}.stagger-3{animation-delay:.3s}.stagger-4{animation-delay:.4s}.stagger-5{animation-delay:.5s}.smooth-transition,.smooth-hover{transition:all .25s ease}.smooth-hover:hover{transform:translateY(-3px)}.reveal-text{background:linear-gradient(90deg,var(--color-coral) 0%,var(--color-peach) 50%,var(--color-coral) 100%);background-size:200% auto;-webkit-background-clip:text;-webkit-text-fill-color:transparent;animation:gradientShift 3s ease infinite}@media (prefers-reduced-motion: reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;font-size:16px}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}body{font-family:var(--font-body);background-color:var(--color-bg);color:var(--color-text);line-height:1.6;font-weight:var(--fw-normal);overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:var(--fw-bold);line-height:1.2;margin-bottom:var(--space-md)}h1{font-size:var(--fs-5xl)}h2{font-size:var(--fs-4xl)}h3{font-size:var(--fs-3xl)}h4{font-size:var(--fs-2xl)}h5{font-size:var(--fs-xl)}h6{font-size:var(--fs-lg)}p{font-size:var(--fs-base);margin-bottom:var(--space-md);color:var(--color-text)}a{color:var(--color-coral);text-decoration:none;transition:color var(--transition-base)}a:hover{color:var(--color-peach);text-decoration:underline}ul,ol{margin-left:var(--space-lg);margin-bottom:var(--space-md)}li{margin-bottom:var(--space-sm)}button{font-family:var(--font-body);cursor:pointer;border:none;background:none;transition:all var(--transition-base)}.btn{padding:var(--space-md) var(--space-xl);border-radius:var(--radius-lg);font-weight:var(--fw-semibold);font-size:var(--fs-base);display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);transition:all var(--transition-base);cursor:pointer}.btn-primary{background:var(--color-coral);color:var(--color-bg);box-shadow:var(--shadow-warm)}.btn-primary:hover{background:var(--color-peach);transform:translateY(-2px);box-shadow:0 15px 40px -8px #ff7b5459}.btn-secondary{background:transparent;color:var(--color-coral);border:2px solid var(--color-coral)}.btn-secondary:hover{background:var(--color-coral);color:var(--color-bg)}input,textarea,select{font-family:var(--font-body);background-color:var(--color-bg-secondary);color:var(--color-text);border:1px solid var(--color-border-light);border-radius:var(--radius-md);padding:var(--space-md);font-size:var(--fs-base);transition:all var(--transition-base)}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--color-coral);box-shadow:0 0 0 3px #ff7b541a}textarea{resize:vertical;min-height:120px}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--color-bg)}::-webkit-scrollbar-thumb{background:var(--color-coral);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-peach)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}*:focus-visible{outline:3px solid var(--color-coral);outline-offset:2px;border-radius:2px}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--color-coral);outline-offset:3px;box-shadow:0 0 0 5px #ff7b5433}::selection{background-color:var(--color-coral);color:var(--color-bg)}@media (max-width: 768px){h1{font-size:var(--fs-4xl)}h2{font-size:var(--fs-3xl)}h3{font-size:var(--fs-2xl)}h4{font-size:var(--fs-xl)}h5,h6{font-size:var(--fs-lg)}p{font-size:var(--fs-sm)}}.container{max-width:1200px;margin:0 auto;padding:0 var(--space-lg)}.flex{display:flex}.flex-center{display:flex;align-items:center;justify-content:center}.gap-md{gap:var(--space-md)}.text-center{text-align:center}.text-muted{color:var(--color-text-muted)}.mt-lg{margin-top:var(--space-lg)}.mb-lg{margin-bottom:var(--space-lg)}.py-lg{padding-top:var(--space-lg);padding-bottom:var(--space-lg)}
