:root{--ink:#000;--ink-elevated:#000;--stroke:#ffffff14}html{scroll-behavior:smooth;background-color:var(--ink);height:100%}body{color:#f2f2f2;background-color:var(--ink);min-height:100%;font-family:var(--font-geist-sans), system-ui, sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;overflow-x:hidden}*{box-sizing:border-box}a{color:inherit}.skip-link{z-index:2000;color:#000;background:#fff;border-radius:999px;padding:.65rem 1rem;font-size:.875rem;font-weight:600;text-decoration:none;position:absolute;top:-100px;left:1rem}.skip-link:focus{outline-offset:2px;outline:2px solid #98c1d9;top:1rem}.page-shell{z-index:1;flex-direction:column;min-height:100vh;display:flex;position:relative}.text-white-60{color:#ffffffb8!important}.text-white-75{color:#ffffffdb!important}.text-white-50,.text-secondary,.link-secondary,.text-secondary-emphasis{color:#ffffffb8!important}.link-secondary:hover,.link-secondary:focus{color:#fff!important}.py-6{padding-top:4.5rem;padding-bottom:4.5rem}.pb-7{padding-bottom:5.5rem}.site-nav{-webkit-backdrop-filter:none;background-color:#0000;transition:border-color .35s}.site-nav--solid{-webkit-backdrop-filter:none;background-color:var(--ink)!important;border-bottom:1px solid var(--stroke)!important}.site-brand{line-height:1}.site-brand__logo{object-fit:contain;flex-shrink:0;width:2.5rem;height:2.5rem}.site-brand__logo--footer{width:2.25rem;height:2.25rem}.site-brand__name{letter-spacing:-.02em}.nav-pill{transition:color .2s,background-color .2s}.nav-pill:hover,.nav-pill:focus{background-color:#101010;color:#fff!important}.reveal{opacity:0;transition:opacity .7s cubic-bezier(.22,1,.36,1),transform .7s cubic-bezier(.22,1,.36,1);transition-delay:var(--reveal-delay,0s);transform:translateY(28px)}.reveal--visible{opacity:1;transform:none}@media (prefers-reduced-motion:reduce),(max-width:767.98px){.reveal{opacity:1;transition:none;transform:none}}.hero-section{min-height:100vh;padding-top:5.5rem}.hero-photo-wrap{z-index:0;pointer-events:none;width:100vw;height:100%;margin-left:-50vw;position:absolute;top:0;bottom:0;left:50%;overflow:hidden}.hero-photo-wrap:after{content:"";z-index:1;background:linear-gradient(#000000fa 0%,#000000e0 28%,#000000d6 35%,#000000c2 45%,#000000a8 52%,#0000008a 58%,#00000070 65%,#00000059 72%,#0000003d 88%,#00000024 93%,#0000 100%);position:absolute;inset:0}.hero-photo-wrap .hero-photo-img{object-fit:cover;object-position:center bottom}.hero-photo-wrap .hero-overlay-video{object-fit:cover;object-position:center center;z-index:2;mix-blend-mode:screen;opacity:.86;filter:contrast(1.18)brightness(1.02);width:100%;height:100%;position:absolute;inset:0}.hero-inner{max-width:56rem}.hero-welcome{letter-spacing:.02em;margin-top:10rem;font-size:clamp(1.05rem,2.2vw,1.35rem);font-weight:500;color:#ffffffdb!important}.hero-fade{opacity:0;animation:.85s cubic-bezier(.22,1,.36,1) forwards hero-fade-in;transform:translateY(16px)}.hero-fade--welcome{animation-delay:1.25s}.hero-fade--cta{animation-duration:.65s;animation-delay:1.55s}.hero-fade--scroll{animation-name:hero-fade-scroll;animation-duration:.6s;animation-delay:1.85s;transform:none}@keyframes hero-fade-in{to{opacity:1;transform:none}}@keyframes hero-fade-scroll{to{opacity:.7}}.hero-chevron{animation:2.4s ease-in-out infinite chevron-bob}@keyframes chevron-bob{0%,to{opacity:.55;transform:translateY(0)}50%{opacity:1;transform:translateY(6px)}}@media (prefers-reduced-motion:reduce){.hero-fade,.hero-fade--scroll{opacity:1;animation:none;transform:none}.hero-chevron{animation:none}}.section-eyebrow{letter-spacing:.22em}.section-block{scroll-margin-top:6rem}.about-card,.contact-card{border:1px solid var(--stroke);background:linear-gradient(145deg,#ffffff0a,#ffffff03);box-shadow:0 24px 80px #00000059}.about-dot{background:linear-gradient(135deg,#a78bfa,#38bdf8);border-radius:999px;width:8px;height:8px}.portfolio-card{border:1px solid var(--stroke);will-change:transform;background:#0c0c0cd9;transition:transform .45s cubic-bezier(.22,1,.36,1),box-shadow .45s;box-shadow:0 20px 60px #00000073}@media (hover:hover) and (prefers-reduced-motion:no-preference){.portfolio-card:hover{transform:translateY(-8px);box-shadow:0 28px 70px #0000008c}}.portfolio-card__glow{opacity:.22;filter:blur(48px);pointer-events:none;inset:-40%;transform:translateY(10%)}.portfolio-card__body{background:linear-gradient(#ffffff08,#00000026)}.portfolio-card__shine{opacity:0;pointer-events:none;background:linear-gradient(120deg,#0000 0%,#ffffff0f 45%,#0000 60%);transition:opacity .5s;position:absolute;inset:0}.portfolio-card:hover .portfolio-card__shine{opacity:1}.portfolio-tag{border:1px solid #ffffff1f;font-weight:500;color:#e8e8e8!important;background:#161616!important}.site-footer{background:linear-gradient(#0000,#000000a6)}.form-control:focus{border-color:#ffffff59;box-shadow:0 0 0 .2rem #ffffff14}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-photo-wrap .hero-overlay-video{display:none}.hero-write{clip-path:inset(0);animation:none}.hero-chevron{animation:none}}@media (max-width:991.98px){.section-block{scroll-margin-top:5.5rem}.py-6{padding-top:3.75rem;padding-bottom:3.75rem}.pb-7{padding-bottom:4.5rem}.site-nav .navbar-collapse{border:1px solid var(--stroke);background:#000000eb;border-radius:.9rem;margin-top:.75rem;padding:.75rem}.site-nav .nav-pill{width:100%;display:block;border-radius:.65rem!important;padding:.65rem .8rem!important}.hero-section{min-height:100svh}.hero-inner{width:min(100%,40rem)}.hero-welcome{font-size:clamp(1rem,2.8vw,1.2rem)}.contact-card a{overflow-wrap:anywhere}}@media (max-width:767.98px){.hero-section{min-height:100svh;padding-top:4.75rem}.hero-inner{padding-top:1rem!important;padding-bottom:1rem!important}.site-nav .navbar{padding-top:.65rem!important;padding-bottom:.65rem!important}.hero-welcome{font-size:1rem}.hero-cta{gap:.65rem!important;margin-top:1.25rem!important}.hero-cta .btn{--bs-btn-padding-y:.55rem;--bs-btn-padding-x:1.05rem;--bs-btn-font-size:.95rem;min-width:9rem}.hero-scroll-hint{display:none}.display-6{font-size:clamp(1.65rem,8vw,2.1rem)}.lead{font-size:1.05rem;line-height:1.65}.site-footer .container{text-align:center}.site-footer .small{font-size:.92rem}}
