:root{color-scheme:dark;box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px);--ac:#F2A33A;--ln:rgba(255,255,255,.1);--mu:#8f8c96;--g:linear-gradient(100deg,#FFC400,#FF5A00 35%,#E0107A 68%,#7B2FF7)}
html{scroll-padding-top:6rem}
body{background:#0a0a0c;color:#ece9e3}
.h1{font-family:'Instrument Serif',Georgia,serif;font-size:clamp(3rem,7.4vw,6.4rem);line-height:.98;letter-spacing:-.025em;font-weight:400}
.h2{font-family:'Instrument Serif',Georgia,serif;font-size:clamp(2.2rem,4.6vw,3.8rem);line-height:1.02;letter-spacing:-.02em;font-weight:400}
.it{font-style:italic;color:var(--ac)}
.lbl{font-size:.68rem;letter-spacing:.22em;text-transform:uppercase;font-weight:600;color:var(--mu)}
.gt{background:var(--g);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.hl{border:1px solid var(--ln)}
.cell{border:1px solid var(--ln);background:rgba(255,255,255,.015);transition:background .35s,border-color .35s}
a.cell:hover,.cell.hv:hover{background:rgba(255,255,255,.045);border-color:rgba(242,163,58,.5)}
.nav a.on{color:#fff}.nav a.on::after{content:"";position:absolute;left:0;right:0;bottom:-8px;height:1px;background:var(--ac)}
.in{width:100%;background:transparent;border:0;border-bottom:1px solid rgba(255,255,255,.18);padding:.9rem 0;font-size:.92rem;color:#fff;outline:none;transition:border-color .2s}
.in:focus{border-color:var(--ac)}.in option{background:#111}
.btn{display:inline-flex;align-items:center;gap:.6rem;font-size:.8rem;font-weight:600;letter-spacing:.02em;padding:.95rem 1.8rem;border-radius:999px;transition:.25s}
.btn-p{background:#ece9e3;color:#0a0a0c}.btn-p:hover{background:var(--ac)}
.btn-o{border:1px solid rgba(255,255,255,.3)}.btn-o:hover{background:#ece9e3;color:#0a0a0c}
.rv{opacity:0;transform:translateY(18px);transition:opacity .8s ease,transform .8s ease}.rv.v{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.rv{opacity:1;transform:none;transition:none}}
@property --a{syntax:"<angle>";initial-value:0deg;inherits:false}
.glowbox{position:relative;background:linear-gradient(160deg,#141418,#0a0a0c)}
.glowbox::before,.glowbox::after{content:"";position:absolute;z-index:-1;background:conic-gradient(from var(--a),#FFC400,#FF5A00,#E0107A,#7B2FF7,#FFC400);animation:gspin 7s linear infinite}
.glowbox::before{inset:-10px;border-radius:1.4rem;filter:blur(34px);opacity:.6;animation:gspin 7s linear infinite,gflick 10s ease-in-out infinite}
.glowbox::after{inset:-1px;border-radius:3px;opacity:.7}
@keyframes gspin{to{--a:360deg}}
@keyframes gflick{0%,100%{opacity:.55}8%{opacity:.3}10%{opacity:.62}22%{opacity:.42}30%{opacity:.65}44%{opacity:.34}52%{opacity:.58}70%{opacity:.4}85%{opacity:.63}}
@media(prefers-reduced-motion:reduce){.glowbox::before,.glowbox::after{animation:none}}
.sv{position:relative;overflow:hidden}
.sv::before{content:"";position:absolute;inset:0;background:radial-gradient(420px circle at var(--mx,50%) var(--my,50%),rgba(242,163,58,.13),transparent 45%);opacity:0;transition:opacity .4s;pointer-events:none}
.sv:hover::before{opacity:1}
.sv::after{content:"";position:absolute;left:0;top:0;height:2px;width:0;background:var(--g);transition:width .6s ease}
.sv:hover::after{width:100%}
.pj-card .hl{position:relative;transition:border-color .35s,box-shadow .35s}
.pj-card:hover .hl{border-color:rgba(242,163,58,.6);box-shadow:0 0 0 1px rgba(242,163,58,.3),0 24px 50px -28px rgba(242,163,58,.4)}
.pj-card .hl::after{content:"";position:absolute;left:0;top:0;height:2px;width:0;background:var(--g);transition:width .6s ease;z-index:2}
.pj-card:hover .hl::after{width:100%}
#fw{animation:fglow 12s ease-in-out infinite;will-change:filter}
@keyframes fglow{
0%{filter:drop-shadow(0 0 34px rgba(255,196,0,.34))}
8%{filter:drop-shadow(0 0 22px rgba(255,196,0,.12))}
10%{filter:drop-shadow(0 0 36px rgba(255,170,0,.40))}
22%{filter:drop-shadow(0 0 30px rgba(255,90,0,.26))}
30%{filter:drop-shadow(0 0 44px rgba(255,90,0,.52))}
44%{filter:drop-shadow(0 0 24px rgba(224,16,122,.16))}
52%{filter:drop-shadow(0 0 42px rgba(224,16,122,.46))}
62%{filter:drop-shadow(0 0 32px rgba(190,20,150,.30))}
70%{filter:drop-shadow(0 0 22px rgba(123,47,247,.14))}
78%{filter:drop-shadow(0 0 46px rgba(123,47,247,.54))}
90%{filter:drop-shadow(0 0 28px rgba(255,196,0,.22))}
100%{filter:drop-shadow(0 0 34px rgba(255,196,0,.34))}
}
@media(prefers-reduced-motion:reduce){#fw{animation:none;filter:drop-shadow(0 0 30px rgba(224,16,122,.35))}}