:root{--yellow:#d7ab0d;--pale-yellow:#ecc240;--dark-blue:#0e1620;--black-blue:#1b2430;--dark:#272727;--white:#d3dce3;--off-white:#e9edf0;--surface-0:var(--dark-blue);--surface-1:var(--black-blue);--surface-2:#232e3c;--border-subtle:#ffffff1a;--default-font-family:"Manrope", "Helvetica Neue", Arial, sans-serif;--display-font-family:"BatmanForeverAlternate", var(--default-font-family);--space-1:.25rem;--space-2:.5rem;--space-3:1rem;--space-4:1.5rem;--space-5:2rem;--space-6:3rem;--space-7:4.5rem;--space-8:6rem;--radius-sm:.5rem;--radius-md:1rem;--radius-lg:1.5rem;--radius-full:999px;--shadow-sm:0 2px 8px #00000040;--shadow-md:0 8px 24px #00000059;--shadow-glow:0 0 0 1px #d7ab0d40, 0 8px 24px #00000059;--container-width:72rem;--header-height:4.5rem;--ease:cubic-bezier(.22, 1, .36, 1);--duration:.4s;color-scheme:dark}@font-face{font-family:BatmanForeverAlternate;src:url(/static/styles/batmfa.ttf)format("truetype");font-display:swap}@font-face{font-family:BatmanForeverOutline;src:url(/static/styles/batmfo.ttf)format("truetype");font-display:swap}*,:before,:after{box-sizing:border-box}*{font:inherit;margin:0;padding:0;position:relative}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{background-color:var(--surface-0);min-height:100vh;color:var(--white);font-family:var(--default-font-family);background-image:radial-gradient(60rem 30rem at 85% -10%,#d7ab0d14,#0000 60%),radial-gradient(50rem 30rem at -10% 20%,#d7ab0d0d,#0000 55%);background-attachment:fixed;flex-direction:column;font-size:1rem;line-height:1.6;display:flex}img,svg{max-width:100%;display:block}ul{list-style:none}a{color:inherit;text-decoration:none}h1,h2,h3,h4,h5,h6{letter-spacing:-.01em;font-weight:700;line-height:1.2}h1{font-size:clamp(2rem,1.4rem + 2.6vw,3.25rem)}h2{font-size:clamp(1.5rem,1.2rem + 1.4vw,2.25rem)}h3{font-size:clamp(1.15rem,1.05rem + .5vw,1.4rem)}.lead{color:var(--off-white);font-size:clamp(1rem,.94rem + .3vw,1.15rem)}.eyebrow{letter-spacing:.12em;text-transform:uppercase;color:var(--pale-yellow);font-size:.8rem;font-weight:700;display:inline-block}main a:not(.button,.tech-badge,.project-card,.footer-icon,.tech-panel-item-link,.resume-pdf-button){color:var(--pale-yellow);text-underline-offset:.15em;text-decoration:underline #ecc24066}main a:not(.button,.tech-badge,.project-card,.footer-icon,.tech-panel-item-link,.resume-pdf-button):hover{text-decoration-color:currentColor}main{flex:1;width:100%}.container{width:min(100% - 2rem, var(--container-width));margin-inline:auto}section{padding-block:var(--space-6)}@media (width>=768px){section{padding-block:var(--space-7)}}.button{align-items:center;gap:var(--space-2);border-radius:var(--radius-full);transition:transform var(--duration) var(--ease), box-shadow var(--duration) var(--ease), background-color var(--duration) var(--ease);white-space:nowrap;padding:.85rem 1.5rem;font-weight:700;text-decoration:none;display:inline-flex}.button.primary{background-color:var(--yellow);color:var(--dark-blue);box-shadow:var(--shadow-sm)}.button.primary:hover{box-shadow:var(--shadow-glow);transform:translateY(-2px)}.button.ghost{border:1px solid var(--border-subtle);color:var(--white);background-color:#ffffff0a}.button.ghost:hover{border-color:var(--yellow);color:var(--pale-yellow)}@media (width<=767.98px){.desktop-only{display:none!important}}@media (width>=768px){.mobile-only{display:none!important}::-webkit-scrollbar{width:.75rem;height:.75rem}::-webkit-scrollbar-track{background-color:#00000040}::-webkit-scrollbar-thumb{background:var(--yellow);border-radius:var(--radius-full);background-clip:padding-box;border:2px solid #0000}}