:root{--stagger-delay: 0s}@keyframes fadeUp{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes arrowBounce{0%,to{transform:translateY(0)}50%{transform:translateY(5px)}}.background-canvas{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:-1;display:block}.bgs-profile-front{position:fixed;pointer-events:none;z-index:1;opacity:0;will-change:transform,opacity,clip-path,filter}.bgs-profile-behind{position:fixed;pointer-events:none;z-index:-2;opacity:0;will-change:transform,opacity,clip-path}.bgs-image-glow{position:fixed;border-radius:50%;pointer-events:none;z-index:0;transform:translate(-50%,-50%);background:none;will-change:transform,opacity}.app-toast{--toast-bg: linear-gradient( 155deg, color-mix(in srgb, var(--brand) 10%, var(--bg)) 0%, color-mix(in srgb, var(--brand) 4%, var(--bg)) 50%, var(--bg) 100% );--toast-shadow: var(--shadow-md), 0 0 24px color-mix(in srgb, var(--brand) 8%, transparent);position:relative;isolation:isolate;overflow:hidden;border:1px solid color-mix(in srgb,var(--brand) 30%,transparent);font-family:Space Grotesk,sans-serif;font-size:.88rem;backdrop-filter:blur(12px) saturate(1.2);-webkit-backdrop-filter:blur(12px) saturate(1.2);min-width:260px}.app-toast:before{content:"";position:absolute;inset:0 0 auto;height:2px;background:linear-gradient(90deg,transparent 0%,var(--brand) 50%,transparent 100%);opacity:.65;pointer-events:none;z-index:2}.app-toast--success{--toast-bg: linear-gradient( 155deg, color-mix(in srgb, var(--ok) 10%, var(--bg)) 0%, color-mix(in srgb, var(--ok) 4%, var(--bg)) 50%, var(--bg) 100% );--toast-shadow: var(--shadow-md), 0 0 24px color-mix(in srgb, var(--ok) 8%, transparent);border-color:color-mix(in srgb,var(--ok) 45%,transparent)}.app-toast--success:before{background:linear-gradient(90deg,transparent 0%,var(--ok) 50%,transparent 100%)}.app-toast--error{--toast-bg: linear-gradient( 155deg, color-mix(in srgb, var(--err) 10%, var(--bg)) 0%, color-mix(in srgb, var(--err) 4%, var(--bg)) 50%, var(--bg) 100% );--toast-shadow: var(--shadow-md), 0 0 24px color-mix(in srgb, var(--err) 8%, transparent);border-color:color-mix(in srgb,var(--err) 50%,transparent)}.app-toast--error:before{background:linear-gradient(90deg,transparent 0%,var(--err) 50%,transparent 100%)}.theme-toggle{position:fixed;top:1.25rem;right:1.5rem;z-index:1000;width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:8px;color:color-mix(in srgb,var(--txt-soft) 70%,transparent);font-size:1.25rem;cursor:pointer;outline:none;overflow:hidden;filter:drop-shadow(0 0 0px transparent);transition:color .25s ease,filter .25s ease,transform .2s cubic-bezier(.34,1.56,.64,1)}.theme-toggle:hover{color:var(--txt);transform:scale(1.1);filter:drop-shadow(0 0 7px color-mix(in srgb,var(--txt-brand) 65%,transparent))}.theme-toggle:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.theme-toggle__icon{position:absolute;inset:0;display:inline-flex;align-items:center;justify-content:center;transition:opacity var(--dur-2) var(--ease-soft),transform var(--dur-2) var(--ease-soft)}.theme-toggle[data-theme-state=dark] .theme-toggle__icon--moon{opacity:1;transform:rotate(0) scale(1)}.theme-toggle[data-theme-state=dark] .theme-toggle__icon--sun{opacity:0;transform:rotate(-60deg) scale(.5)}.theme-toggle[data-theme-state=light] .theme-toggle__icon--sun{opacity:1;transform:rotate(0) scale(1);color:var(--brand-md)}.theme-toggle[data-theme-state=light] .theme-toggle__icon--moon{opacity:0;transform:rotate(60deg) scale(.5)}@media(max-width:1024px){.theme-toggle{top:max(1rem,calc(env(safe-area-inset-top,0px) + .6rem));right:max(1rem,calc(env(safe-area-inset-right,0px) + 1rem))}}@media(prefers-reduced-motion:reduce){.theme-toggle{transition:none;transform:none}.theme-toggle__icon{transition:none}}.hint-banner{position:fixed;bottom:1.5rem;left:50%;transform:translate(-50%);z-index:500;width:clamp(280px,42vw,480px);display:flex;flex-direction:column;gap:.75rem;padding:1.125rem 1.375rem 1.375rem;border-radius:var(--r-lg);background:color-mix(in srgb,var(--bg) 82%,transparent);border:1px solid color-mix(in srgb,var(--brand) 30%,transparent);backdrop-filter:blur(20px) saturate(1.3);-webkit-backdrop-filter:blur(20px) saturate(1.3);box-shadow:0 8px 32px color-mix(in srgb,var(--brand) 10%,transparent),0 2px 10px #00000059;animation:hint-slide-up var(--dur-2) var(--ease-soft) both}.hint-banner__top{display:flex;justify-content:flex-end}@keyframes hint-slide-up{0%{opacity:0;transform:translate(-50%) translateY(1rem)}to{opacity:1;transform:translate(-50%) translateY(0)}}.hint-banner__text{margin:0;font-size:var(--fs-body);color:var(--txt-soft);line-height:1.75}.hint-banner__link{color:var(--txt-brand);text-decoration:none;border-bottom:1px solid color-mix(in srgb,var(--brand) 38%,transparent);transition:color var(--dur-1) var(--ease-micro),border-color var(--dur-1) var(--ease-micro)}.hint-banner__link:hover{color:var(--brand);border-bottom-color:var(--brand)}.hint-banner__close{flex-shrink:0;width:1.75rem;height:1.75rem;border-radius:var(--r-pill);border:1px solid color-mix(in srgb,var(--brand) 25%,transparent);background:color-mix(in srgb,var(--brand) 10%,transparent);color:var(--txt-soft);cursor:pointer;font-size:.8rem;display:flex;align-items:center;justify-content:center;transition:background var(--dur-1) var(--ease-micro),color var(--dur-1) var(--ease-micro)}.hint-banner__close:hover{background:color-mix(in srgb,var(--brand) 22%,transparent);color:var(--txt)}@media(max-width:640px){.hint-banner{left:1rem;right:1rem;bottom:1rem;width:auto;transform:none;border-radius:var(--r-md);animation-name:hint-slide-up-mobile}@keyframes hint-slide-up-mobile{0%{opacity:0;transform:translateY(1rem)}to{opacity:1;transform:translateY(0)}}}.nav-rail{display:none}@media(min-width:1025px){.nav-rail{display:block;position:fixed;top:1.25rem;left:1.5rem;z-index:1000}.nav-list{list-style:none;display:flex;align-items:center;gap:.25rem;padding:0;margin:0}.nav-item{border-radius:8px}.nav-link{display:flex;align-items:center;justify-content:center;width:44px;height:44px;background:none;border:none;cursor:pointer;border-radius:8px;font-size:1.3rem;color:color-mix(in srgb,var(--txt-soft) 70%,transparent);outline:none;position:relative;filter:drop-shadow(0 0 0px transparent);transition:color .25s ease,filter .25s ease,transform .2s cubic-bezier(.34,1.56,.64,1)}.nav-link:hover{color:var(--txt);transform:translateY(-2px) scale(1.1);filter:drop-shadow(0 0 7px color-mix(in srgb,var(--txt-brand) 65%,transparent))}.nav-link:focus-visible{outline:2px solid var(--focus);outline-offset:3px;border-radius:8px}.nav-item.active .nav-link{color:var(--txt-brand);filter:drop-shadow(0 0 5px color-mix(in srgb,var(--txt-brand) 85%,transparent)) drop-shadow(0 0 16px color-mix(in srgb,var(--txt-brand) 40%,transparent))}.nav-item.active .nav-link:after{content:"";position:absolute;bottom:5px;left:50%;transform:translate(-50%);width:3px;height:3px;border-radius:50%;background:var(--txt-brand);box-shadow:0 0 4px var(--txt-brand),0 0 10px color-mix(in srgb,var(--txt-brand) 55%,transparent)}.nav-tooltip{position:absolute;top:calc(100% + 10px);left:50%;transform:translate(-50%) translateY(-4px);background:color-mix(in srgb,var(--bg-alt) 85%,transparent);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:var(--txt);padding:.28rem .68rem;border-radius:6px;font-size:.76rem;font-weight:500;letter-spacing:.03em;opacity:0;visibility:hidden;white-space:nowrap;border:1px solid color-mix(in srgb,var(--txt-soft) 15%,transparent);pointer-events:none;transition:opacity .18s ease,transform .18s ease,visibility .18s ease;z-index:10}.nav-link:hover .nav-tooltip{opacity:1;visibility:visible;transform:translate(-50%) translateY(0)}}.mobile-nav{display:none}@media(max-width:1024px){.mobile-nav{display:flex;align-items:center;gap:.4rem;position:fixed;top:max(1rem,calc(env(safe-area-inset-top,0px) + .6rem));left:max(1rem,calc(env(safe-area-inset-left,0px) + 1rem));z-index:1000}.mobile-icons{display:flex;align-items:center;gap:.3rem;overflow:hidden;max-width:0;transition:max-width .38s cubic-bezier(.25,.46,.45,.94)}.mobile-icons.is-open{max-width:240px}.mobile-icon-btn{width:44px;height:44px;flex-shrink:0;border-radius:8px;background:transparent;border:none;color:color-mix(in srgb,var(--txt-soft) 70%,transparent);font-size:1.25rem;display:flex;align-items:center;justify-content:center;cursor:pointer;outline:none;filter:drop-shadow(0 0 0px transparent);opacity:0;transform:scale(.75);transition:opacity .15s ease,transform .15s ease,color .2s ease,filter .2s ease}.mobile-icons.is-open .mobile-icon-btn{opacity:1;transform:none;transition:opacity .22s ease calc(var(--i, 0) * 55ms + 80ms),transform .28s cubic-bezier(.34,1.56,.64,1) calc(var(--i, 0) * 55ms + 80ms),color .2s ease,filter .2s ease}.mobile-icon-btn.active{color:var(--txt-brand);filter:drop-shadow(0 0 5px color-mix(in srgb,var(--txt-brand) 80%,transparent)) drop-shadow(0 0 12px color-mix(in srgb,var(--txt-brand) 38%,transparent))}.mobile-icon-btn:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.yd-btn{width:44px;height:44px;flex-shrink:0;border-radius:8px;background:transparent;border:none;color:var(--txt-brand);font-family:inherit;font-size:.82rem;font-weight:700;letter-spacing:.08em;display:flex;align-items:center;justify-content:center;cursor:pointer;outline:none;filter:drop-shadow(0 0 5px color-mix(in srgb,var(--txt-brand) 50%,transparent));transition:color .25s ease,filter .25s ease}.yd-btn.is-open{color:var(--hi);filter:drop-shadow(0 0 7px color-mix(in srgb,var(--hi) 80%,transparent)) drop-shadow(0 0 18px color-mix(in srgb,var(--hi) 35%,transparent))}.yd-btn:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.nav-tooltip{display:none}}@media(prefers-reduced-motion:reduce){.nav-link,.mobile-icon-btn,.yd-btn{transition:none;animation:none;transform:none}.mobile-icons{transition:none}}.typewriter{margin:2rem 0;display:inline-flex;align-items:center;gap:10px;font-family:JetBrains Mono,ui-monospace,Cascadia Code,Fira Code,monospace;font-weight:600;font-size:clamp(13px,2.4vw,32px);line-height:1;opacity:0;animation:fadeUp .5s ease .5s forwards}.typewriter-text{color:var(--txt-brand);min-width:0}.typewriter-cursor{display:inline-block;width:2px;height:1.1em;background:var(--txt-brand);animation:blink .75s step-end infinite;will-change:opacity}.typewriter-sep{display:inline-block;width:1px;height:1em;background:color-mix(in srgb,var(--txt) 25%,transparent)}.typewriter-fixed{color:color-mix(in srgb,var(--txt) 50%,transparent);font-weight:400}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}@media(max-width:1024px){.typewriter{font-size:clamp(14px,3vw,32px);justify-content:center;margin:0}}@media(prefers-reduced-motion:reduce){.typewriter,.typewriter-cursor{animation:none;opacity:1}}.home{padding:1rem;height:100%;width:100%;display:flex;align-items:center;justify-content:stretch;z-index:3}section#home:before{content:"";position:absolute;inset:0;z-index:-3;background-image:radial-gradient(circle,color-mix(in srgb,var(--brand) var(--home-dot-opacity, 18%),transparent) 1px,transparent 1px);background-size:28px 28px;mask-image:linear-gradient(to top,#000,#00000080),radial-gradient(ellipse 70% 70% at 100% 0%,transparent 0%,rgba(0,0,0,1) 75%);mask-composite:intersect;-webkit-mask-image:linear-gradient(to top,rgba(0,0,0,1) 0%,rgba(0,0,0,.5) 100%),radial-gradient(ellipse 70% 70% at 100% 0%,transparent 0%,rgba(0,0,0,1) 75%);-webkit-mask-composite:source-in;pointer-events:none}.home-glow{position:absolute;width:75%;height:100%;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--brand) 7%,transparent) 0%,transparent 65%);pointer-events:none;left:18%;top:50%;transform:translate(-50%,-50%);z-index:0}.home-content{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:clamp(12px,2vh,24px);z-index:2;padding-left:clamp(2rem,6.9vw,10rem);max-width:clamp(320px,55vw,800px);opacity:calc(1 - var(--home-dissolve, 0) * 1.5);transform:translate(calc((var(--mouse-x, .5) - .5) * -8px),calc((var(--mouse-y, .5) - .5) * -5px + var(--home-dissolve, 0) * -20px));transition:transform .15s ease-out}.eyebrow{font-size:clamp(10px,1.3vw,18px);font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--txt-brand);opacity:0;animation:fadeUp .5s ease .1s forwards}.hero-title{font-weight:700;font-size:clamp(36px,10.4vw,112px);line-height:1.08;color:var(--txt);opacity:0;animation:fadeUp .5s ease .25s forwards}.hero-highlight{font-size:clamp(36px,11.1vw,112px);color:transparent;-webkit-text-stroke:1px var(--txt-brand);position:relative;display:inline-block}.hero-highlight:after{content:"Dawod.";position:absolute;left:0;top:0;color:var(--txt-brand);-webkit-text-stroke:0;clip-path:inset(0 100% 0 0);transition:clip-path .5s ease-in-out;white-space:nowrap;border-right:2px solid var(--txt-brand);will-change:clip-path}.home:hover .hero-highlight:after{clip-path:inset(0 0 0 0)}.hero-hook{font-size:clamp(14px,2.4vw,32px);color:color-mix(in srgb,var(--txt) 45%,transparent);font-weight:400;line-height:1.6;max-width:38ch;opacity:0;animation:fadeUp .5s ease .38s forwards}.cta-row{display:flex;align-items:center;gap:16px;opacity:0;animation:fadeUp .5s ease .62s forwards}.btn{padding:clamp(10px,1.2vh,18px) clamp(16px,1.8vw,28px);border-radius:6px;text-decoration:none;font-size:clamp(13px,2.4vw,32px);font-weight:700;letter-spacing:.02em;transition:all .3s cubic-bezier(.25,.46,.45,.94);display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;cursor:pointer}.btn.primary{background:var(--btn-brand);color:var(--txt-on-brand);border:2px solid var(--btn-brand);box-shadow:var(--glow-sm),0 0 30px var(--glow-hi-soft)}.btn.primary:hover{background:var(--btn-brand);border-color:var(--btn-brand);transform:translateY(-2px);box-shadow:0 0 16px var(--glow-brand),0 0 40px var(--glow-brand-soft),0 0 80px var(--glow-hi-soft)}.btn.ghost{background:transparent;border:none;color:color-mix(in srgb,var(--txt) 45%,transparent);font-size:clamp(13px,1.6vw,22px);font-weight:500;padding:0;cursor:pointer;display:flex;align-items:center;gap:6px;letter-spacing:.01em}.btn.ghost:after{content:"↓";color:var(--txt-brand);display:inline-block;animation:arrowBounce 1.4s ease-in-out infinite}.btn.ghost:hover{color:var(--txt)}@media(max-width:1024px){.home{padding:1rem;flex-direction:column;justify-content:flex-end;text-align:center}section#home:before{mask-image:linear-gradient(to bottom,transparent 20%,black 65%);-webkit-mask-image:linear-gradient(to bottom,transparent 20%,black 65%);background-size:26px 26px}.home-glow{width:320px;height:320px;left:50%;top:0;transform:translate(-50%)}.home-content{align-items:center;padding:0;max-width:none;transform:translate(calc(var(--tilt-x, 0) * -8px),calc(var(--tilt-y, 0) * -5px + var(--home-dissolve, 0) * -20px));transition:transform .2s ease-out}.eyebrow{font-size:clamp(10px,3vw,32px);margin:0}.title-break{display:none}.hero-title{font-size:clamp(40px,12vw,85px);margin:0}.hero-highlight{font-size:clamp(40px,12vw,85px)}.hero-hook{font-size:clamp(14px,3vw,32px);max-width:clamp(260px,75vw,600px);margin:0}.cta-row{flex-direction:column;align-items:center;gap:14px;width:100%}.btn.primary{width:100%;max-width:clamp(240px,75vw,320px);padding:clamp(12px,1.8vh,18px) 0;border-radius:8px;font-size:clamp(14px,3vw,32px)}.btn.ghost{font-size:clamp(13px,3vw,32px)}}@media(prefers-reduced-motion:reduce){.eyebrow,.hero-title,.hero-hook,.cta-row{animation:none;opacity:1;transform:none}.home-content{transition:none;transform:translateY(calc(var(--home-dissolve, 0) * -20px))}.hero-highlight:after{transition:none}.btn{transition:none}}.section-header{display:flex;flex-direction:column;gap:clamp(1.25rem,5vh,2.75rem)}.section-header .section-label{font-family:JetBrains Mono,monospace;font-size:var(--fs-eyebrow);font-weight:500;letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--brand)}.section-header .section-headline{font-size:clamp(2rem,5vw,3rem);font-weight:700;line-height:1.25;letter-spacing:var(--ls-tight);color:var(--txt);text-align:justify}.section-header .section-subtitle{display:inline-flex;align-items:center;gap:.85rem;font-family:JetBrains Mono,monospace;font-size:clamp(.85rem,1.1vw,2rem);font-weight:500;letter-spacing:.06em;color:var(--brand);margin:0}.section-subtitle__rule{display:inline-block;width:clamp(1.5rem,3vw,2.5rem);height:1px;background:color-mix(in srgb,var(--brand) 75%,transparent);flex-shrink:0}.section-body{display:flex;flex-direction:column;gap:clamp(.85rem,1.4vh,1.15rem)}.section-header .section-text{font-size:clamp(1rem,1.29vw,2rem);line-height:1.85;color:var(--txt-soft);text-align:justify}.highlight-brand{color:var(--txt-brand)}@media(max-width:1024px){.section-header{gap:clamp(1rem,2vh,1.4rem);max-width:100%}.section-header .section-headline{font-size:clamp(1.65rem,6.5vw,2.2rem)}.section-header .section-subtitle{font-size:clamp(.8rem,2.6vw,.95rem);gap:.65rem}.section-body{max-width:100%}.section-header .section-text{font-size:clamp(.95rem,1.6vw,1.05rem);line-height:1.75}}.principles-card{--card-accent: var(--brand);position:relative;isolation:isolate;display:flex;flex-direction:column;gap:.9rem;width:100%;height:100%;padding:clamp(1.4rem,2.2vw,1.9rem);border-radius:var(--r-md);overflow:hidden;background:linear-gradient(155deg,color-mix(in srgb,var(--card-accent) 12%,transparent) 0%,color-mix(in srgb,var(--card-accent) 5%,transparent) 50%,transparent 100%);border:1px solid color-mix(in srgb,var(--card-accent) 28%,transparent);backdrop-filter:blur(10px) saturate(1.2);-webkit-backdrop-filter:blur(10px) saturate(1.2);transition:border-color var(--dur-2) var(--ease-soft),box-shadow var(--dur-2) var(--ease-soft)}.principles-card:before{content:"";position:absolute;inset:0 0 auto;height:2px;background:linear-gradient(90deg,transparent 0%,var(--card-accent) 50%,transparent 100%);opacity:.6;pointer-events:none;z-index:2}.principles-card:hover{border-color:color-mix(in srgb,var(--card-accent) 50%,transparent);box-shadow:0 8px 32px color-mix(in srgb,var(--card-accent) 14%,transparent)}.principles-number{font-size:clamp(.72rem,1vw,.85rem);font-weight:700;letter-spacing:.12em;color:var(--card-accent);font-family:JetBrains Mono,monospace;opacity:.7}.principles-icon{font-size:clamp(1.75rem,2.4vw,2.15rem);color:var(--card-accent);opacity:.9;flex-shrink:0}.principles-title{font-size:clamp(1.1rem,1.55vw,1.3rem);font-weight:600;color:var(--card-accent);line-height:1.25;margin:0}.principles-description{font-size:clamp(.9rem,1.15vw,1rem);line-height:1.7;color:var(--txt);text-align:left;margin:0}@media(max-width:1024px){.principles-card{padding:clamp(1.2rem,4vw,1.5rem);gap:.75rem}.principles-description{font-size:clamp(.92rem,2.4vw,1rem)}}.skill-badge{display:flex;align-items:center;gap:.75rem;padding:.4rem 0;width:100%;transition:opacity .3s ease}.skill-badge-icon{font-size:1.6rem;flex-shrink:0;color:var(--txt-soft);transition:color .3s ease,filter .3s ease}.skill-badge-name{font-size:clamp(.88rem,1.15vw,1rem);color:var(--txt-soft);font-weight:500;white-space:nowrap}.skill-badge:hover .skill-badge-icon,.skill-badge:hover .skill-badge-name{color:var(--skill-color, var(--txt-brand));filter:drop-shadow(0 0 12px color-mix(in srgb,var(--skill-color, var(--brand)) 15%,transparent));cursor:default}.skill-group{--card-accent: var(--brand);position:relative;isolation:isolate;display:flex;flex-direction:column;gap:.75rem;width:100%;height:100%;flex:1;padding:clamp(1.2rem,2vw,1.6rem);border-radius:var(--r-md);overflow:hidden;background:linear-gradient(155deg,color-mix(in srgb,var(--card-accent) 12%,transparent) 0%,color-mix(in srgb,var(--card-accent) 5%,transparent) 50%,transparent 100%);border:1px solid color-mix(in srgb,var(--card-accent) 28%,transparent);backdrop-filter:blur(10px) saturate(1.2);-webkit-backdrop-filter:blur(10px) saturate(1.2);transition:border-color var(--dur-2) var(--ease-soft),box-shadow var(--dur-2) var(--ease-soft)}.skill-group:before{content:"";position:absolute;inset:0 0 auto;height:2px;background:linear-gradient(90deg,transparent 0%,var(--card-accent) 50%,transparent 100%);opacity:.6;pointer-events:none;z-index:2}.skill-group:hover{border-color:color-mix(in srgb,var(--card-accent) 50%,transparent);box-shadow:0 8px 32px color-mix(in srgb,var(--card-accent) 14%,transparent)}.skill-group-name{font-size:clamp(.78rem,1.05vw,.92rem);font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--card-accent);padding-bottom:.5rem;margin:0 0 .25rem;border-bottom:1px solid color-mix(in srgb,var(--card-accent) 18%,transparent)}.skill-group-list{display:flex;flex-direction:column;gap:.35rem;height:100%}.ai-highlight{--card-accent: var(--hi);position:relative;isolation:isolate;display:grid;grid-template-columns:auto 1fr;gap:clamp(1rem,2vw,1.5rem);align-items:center;padding:clamp(1.1rem,2vw,1.6rem) clamp(1.3rem,2.4vw,1.9rem);border-radius:var(--r-md);overflow:hidden;background:linear-gradient(155deg,color-mix(in srgb,var(--card-accent) 12%,transparent) 0%,color-mix(in srgb,var(--card-accent) 5%,transparent) 50%,transparent 100%);border:1px solid color-mix(in srgb,var(--card-accent) 28%,transparent);backdrop-filter:blur(10px) saturate(1.2);-webkit-backdrop-filter:blur(10px) saturate(1.2);transition:border-color var(--dur-2) var(--ease-soft),box-shadow var(--dur-2) var(--ease-soft)}.ai-highlight:before{content:"";position:absolute;inset:0 0 auto;height:2px;background:linear-gradient(90deg,transparent 0%,var(--card-accent) 50%,transparent 100%);opacity:.6;pointer-events:none;z-index:2}.ai-highlight:hover{border-color:color-mix(in srgb,var(--card-accent) 50%,transparent);box-shadow:0 8px 32px color-mix(in srgb,var(--card-accent) 14%,transparent)}.ai-highlight-icon{font-size:clamp(1.8rem,2.6vw,2.4rem);color:var(--card-accent);filter:drop-shadow(0 0 12px color-mix(in srgb,var(--hi) 35%,transparent))}.ai-highlight-body{display:flex;flex-direction:column;min-width:0}.ai-highlight-title{font-size:clamp(1.05rem,1.4vw,1.2rem);font-weight:600;color:var(--card-accent);line-height:1.25;margin:0 0 .35rem}.ai-highlight-text{font-size:clamp(.9rem,1.15vw,1rem);line-height:1.65;color:var(--txt-soft);margin:0;max-width:78ch}@media(max-width:1024px){.ai-highlight{grid-template-columns:1fr;gap:.6rem;padding:clamp(1rem,4vw,1.3rem);text-align:center;justify-items:center}.ai-highlight-body{align-items:center}.ai-highlight-icon{font-size:1.7rem}}.timeline{width:100%}.timeline-section-label{text-align:center;font-size:clamp(.85rem,1.1vw,1rem);font-weight:600;letter-spacing:.15em;text-transform:uppercase;color:var(--txt-brand);margin-bottom:clamp(2.5rem,4vh,4rem)}.timeline-track{display:flex;align-items:stretch;position:relative;gap:clamp(1.75rem,3vw,3rem);padding:.5rem 0}.timeline-track:before{content:"";position:absolute;top:32px;left:5%;right:5%;height:1px;background:linear-gradient(to right,transparent,color-mix(in srgb,var(--brand) 35%,transparent) 15%,color-mix(in srgb,var(--brand) 35%,transparent) 85%,transparent)}.timeline-station{flex:1;display:flex;flex-direction:column;align-items:center;text-align:center;position:relative;gap:1rem;min-width:0;transition:opacity var(--dur-2) var(--ease-soft),transform var(--dur-2) var(--ease-soft);opacity:0;transform:translate(-20px);transition-delay:calc(var(--station-index) * var(--stagger-step))}.timeline-track.timeline-visible .timeline-station{opacity:1;transform:translate(0)}.timeline-card{--card-accent: var(--station-color);position:relative;isolation:isolate;width:100%;height:100%;flex:1;display:flex;flex-direction:column;align-items:center;text-align:center;padding:clamp(1.25rem,2vw,1.75rem);border-radius:var(--r-md);overflow:hidden;background:linear-gradient(155deg,color-mix(in srgb,var(--card-accent) 12%,transparent) 0%,color-mix(in srgb,var(--card-accent) 5%,transparent) 50%,transparent 100%);border:1px solid color-mix(in srgb,var(--card-accent) 28%,transparent);backdrop-filter:blur(10px) saturate(1.2);-webkit-backdrop-filter:blur(10px) saturate(1.2);transition:border-color var(--dur-2) var(--ease-soft),box-shadow var(--dur-2) var(--ease-soft)}.timeline-card:before{content:"";position:absolute;inset:0 0 auto;height:2px;background:linear-gradient(90deg,transparent 0%,var(--card-accent) 50%,transparent 100%);opacity:.6;pointer-events:none;z-index:2}.timeline-station:hover .timeline-card{border-color:color-mix(in srgb,var(--station-color) 45%,transparent);box-shadow:0 4px 24px color-mix(in srgb,var(--station-color) 12%,transparent),0 0 40px color-mix(in srgb,var(--station-color) 6%,transparent);transform:translateY(-3px) scale(1.015)}.timeline-icon-wrap{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--bg) 94%,black 6%);border:2px solid color-mix(in srgb,var(--station-color) 70%,transparent);z-index:1;transition:box-shadow .3s ease,border-color .3s ease}.timeline-icon-wrap:hover{border-color:color-mix(in srgb,var(--station-color) 85%,transparent)}.timeline-icon{font-size:1.6rem;line-height:1;color:var(--station-color)}.timeline-station:last-child .timeline-icon-wrap{animation:glow-pulse 3s ease-in-out infinite;--glow-brand-soft: color-mix(in srgb, var(--station-color) 20%, transparent);--glow-brand: color-mix(in srgb, var(--station-color) 35%, transparent);--glow-brand-subtle: color-mix(in srgb, var(--station-color) 10%, transparent)}.timeline-period{font-size:clamp(.78rem,.95vw,.88rem);font-family:JetBrains Mono,monospace;color:var(--txt-soft);margin-bottom:.3rem}.timeline-label{font-size:clamp(.85rem,1.1vw,1rem);font-weight:600;color:var(--station-color);text-transform:uppercase;letter-spacing:.12em;margin-bottom:.5rem}.timeline-title{font-size:clamp(1.15rem,1.55vw,1.4rem);font-weight:700;color:var(--txt);line-height:1.25;letter-spacing:var(--ls-tight);margin-bottom:.65rem}.timeline-text{font-size:clamp(.9rem,1.1vw,1rem);line-height:1.65;color:var(--txt-soft);max-width:32ch;text-align:center}@media(max-width:1024px){.timeline-track{flex-direction:column;padding-left:3rem;gap:clamp(2rem,3vh,3rem)}.timeline-track:before{inset:0 auto 0 20px;width:1px;height:auto;background:linear-gradient(to bottom,transparent,color-mix(in srgb,var(--brand) 35%,transparent) 10%,color-mix(in srgb,var(--brand) 35%,transparent) 90%,transparent)}.timeline-station{align-items:flex-start;text-align:left;flex:none;transform:translateY(15px);gap:.85rem}.timeline-track.timeline-visible .timeline-station{transform:translateY(0)}.timeline-card{width:100%;align-items:flex-start;text-align:left;min-height:auto}.timeline-icon-wrap{position:relative;left:-.45rem;width:44px;height:44px;flex-basis:44px}.timeline-text{max-width:none;text-align:justify}}@media(prefers-reduced-motion:reduce){.timeline-station{opacity:1;transform:none;transition:none}}.about{position:relative;width:100%;height:100%;overflow:hidden;color:var(--txt)}section#about:before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background-image:radial-gradient(circle,color-mix(in srgb,var(--brand) 14%,transparent) 1px,transparent 1px);background-size:28px 28px;mask-image:linear-gradient(to bottom,#000,#00000080),radial-gradient(ellipse 70% 70% at 100% 100%,transparent 0%,rgba(0,0,0,1) 75%);mask-composite:intersect;-webkit-mask-image:linear-gradient(to bottom,rgba(0,0,0,1) 0%,rgba(0,0,0,.5) 100%),radial-gradient(ellipse 70% 70% at 100% 100%,transparent 0%,rgba(0,0,0,1) 75%);-webkit-mask-composite:source-in}:root[data-theme=light] section#about:before{background-image:radial-gradient(circle,color-mix(in srgb,var(--brand) 32%,transparent) 1px,transparent 1px)}@media(prefers-color-scheme:light){:root:not([data-theme]) section#about:before{background-image:radial-gradient(circle,color-mix(in srgb,var(--brand) 32%,transparent) 1px,transparent 1px)}}.about-track{display:flex;flex-direction:row;width:400vw;height:100%;will-change:transform;transition:transform var(--dur-3) var(--ease-glide)}.about-slide{position:relative;z-index:1;flex:0 0 100vw;height:100%;display:flex;align-items:center;justify-content:center;padding:clamp(3rem,6vh,5rem) clamp(2rem,6vw,7rem);overflow-y:auto}.about-slide__inner{width:100%;max-width:var(--container-narrow);margin:0 auto;display:flex;flex-direction:column;gap:clamp(1.75rem,3.5vh,2.75rem)}.about-slide__inner--narrow{max-width:880px}.about-slide__head{display:flex;flex-direction:column;gap:.5rem}.about-slide__eyebrow{font-family:JetBrains Mono,monospace;font-size:var(--fs-eyebrow);font-weight:500;letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--brand)}.about-slide__title{font-size:var(--fs-h2);font-weight:700;line-height:1.15;letter-spacing:var(--ls-tight);color:var(--txt);margin:0}.about-slide__body{display:flex;flex-direction:column}.about-slide--header .about-slide__inner{max-width:980px;gap:0}.about-slide--timeline,.about-slide--principles,.about-slide--stack{align-items:center;justify-content:center}.about-principles{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(1rem,2vw,1.5rem);align-items:stretch}.about-principles>div{display:flex;width:100%}.about-skills{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(.75rem,1.5vw,1.25rem);align-items:stretch}.about-skills>div{display:flex;width:100%}.about-ai{width:100%}.about-dots{position:absolute;bottom:1.5rem;left:50%;transform:translate(-50%);display:flex;gap:.5rem;z-index:10}.about-dot{width:8px;height:8px;border-radius:50%;border:none;background:color-mix(in srgb,var(--txt) 30%,transparent);cursor:pointer;padding:0;transition:background var(--dur-1) var(--ease-micro),transform var(--dur-1) var(--ease-micro)}.about-dot--active{background:var(--brand);transform:scale(1.4)}.about-slide :is(.section-header,.about-slide__head,.about-principles>div,.about-skills>div,.about-ai){transition:opacity var(--dur-2) var(--ease-soft),transform var(--dur-2) var(--ease-soft);will-change:opacity,transform}.about-slide[data-state=prev] :is(.section-header,.about-slide__head,.about-principles>div,.about-skills>div,.about-ai){opacity:0;transform:translate3d(-32px,0,0)}.about-slide[data-state=next] :is(.section-header,.about-slide__head,.about-principles>div,.about-skills>div,.about-ai){opacity:0;transform:translate3d(32px,0,0)}.about-slide[data-state=active] :is(.section-header,.about-slide__head,.about-principles>div,.about-skills>div,.about-ai){opacity:1;transform:translateZ(0);transition-duration:var(--dur-3);transition-delay:calc(var(--stagger, 0) * var(--stagger-step) + 60ms)}.about-slide[data-state=active]>.about-slide__inner>.about-slide__head{transition-delay:40ms}@media(prefers-reduced-motion:reduce){.about-slide[data-state] :is(.section-header,.about-slide__head,.about-principles>div,.about-skills>div,.about-ai){opacity:1;transform:none;transition:none}}@media(max-width:1024px){.about{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;height:auto;overflow:visible;padding:0 clamp(1rem,4vw,1.5rem) clamp(2rem,4vh,3rem);gap:clamp(3rem,4vh,4rem)}.about-track{display:contents;width:auto;height:auto;transition:none}.about-slide{flex:unset;width:100%;height:auto;padding:0;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;overflow:visible}.about-slide__inner,.about-slide__inner--narrow{max-width:100%;gap:clamp(1.25rem,2.5vh,1.75rem)}.about-slide__title{font-size:clamp(1.4rem,5vw,1.9rem)}.about-dots{display:none}.about>*{position:relative;z-index:1;width:100%;max-width:100%}.about-principles{padding:2rem 1rem;display:flex;flex-direction:row;height:auto;overflow-x:auto;overflow-y:visible;gap:clamp(.75rem,2vw,1rem);scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.about-principles::-webkit-scrollbar{display:none}.about-principles>div{flex:0 0 100%;scroll-snap-align:start}.about-skills{grid-template-columns:1fr;gap:clamp(.8rem,2vw,1rem)}.about-slide[data-state] :is(.section-header,.about-slide__head,.about-principles>div,.about-skills>div,.about-ai){opacity:1;transform:none;transition:none}}.iframe-scaler{width:100%;height:100%;position:relative;overflow:hidden}.iframe-scaler iframe{position:absolute;top:0;left:0}.iframe-placeholder{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.4rem;background:color-mix(in srgb,var(--project-primary) 6%,var(--surf))}.iframe-placeholder-label{font-size:11px;letter-spacing:.14em;color:var(--txt-soft);text-transform:uppercase}.iframe-placeholder-sub{font-size:10px;color:var(--txt-soft);opacity:.5}.browser-preview{position:relative;isolation:isolate;display:flex;flex-direction:column;min-height:0;height:100%;border-radius:18px;overflow:hidden;background:linear-gradient(155deg,color-mix(in srgb,var(--project-primary) 12%,transparent) 0%,color-mix(in srgb,var(--project-primary) 5%,transparent) 50%,transparent 100%);border:1px solid color-mix(in srgb,var(--project-primary) 28%,transparent);backdrop-filter:blur(10px) saturate(1.2);-webkit-backdrop-filter:blur(10px) saturate(1.2);transition:border-color var(--dur-3) var(--ease-soft),background var(--dur-3) var(--ease-soft)}.browser-preview:before{content:"";position:absolute;inset:0 0 auto;height:2px;background:linear-gradient(90deg,transparent 0%,var(--project-primary) 50%,transparent 100%);opacity:.7;pointer-events:none;z-index:2}.browser-frame{position:relative;flex:1;min-height:0;display:flex;flex-direction:column;background:var(--surf);border:1px solid color-mix(in srgb,var(--project-primary) 22%,var(--brd));border-radius:16px;transition:border-color var(--dur-2) var(--ease-soft);box-shadow:12px 22px 70px -34px color-mix(in srgb,var(--project-primary) 28%,transparent),5px 10px 36px -22px #0003,inset 1px 1px color-mix(in srgb,#fff 8%,transparent),0 0 0 1px color-mix(in srgb,var(--project-primary) 6%,transparent)}.browser-frame__pulse{position:absolute;inset:-2px;border-radius:inherit;pointer-events:none;z-index:3;border:2px solid color-mix(in srgb,var(--project-primary) 60%,transparent);box-shadow:0 0 color-mix(in srgb,var(--project-primary) 50%,transparent),0 0 80px color-mix(in srgb,var(--project-primary) 50%,transparent);opacity:0;animation:browserFramePulse .7s var(--ease-glide) forwards}@keyframes browserFramePulse{0%{opacity:0;transform:scale(.985)}35%{opacity:1;transform:scale(1.005)}to{opacity:0;transform:scale(1)}}@media(prefers-reduced-motion:reduce){.browser-frame__pulse{animation:none;opacity:0}}.browser-toolbar{height:38px;flex-shrink:0;background:color-mix(in srgb,var(--project-primary) 10%,var(--bg-alt, var(--brd)));border-bottom:1px solid color-mix(in srgb,var(--project-primary) 25%,var(--brd));border-radius:16px 16px 0 0;display:flex;align-items:center;gap:10px;padding:0 12px;transition:background var(--dur-2) var(--ease-soft),border-color var(--dur-2) var(--ease-soft)}.browser-nav{display:flex;gap:2px;flex-shrink:0}.browser-nav-btn{width:28px;height:24px;display:flex;align-items:center;justify-content:center;font-size:16px;line-height:1;color:var(--txt-soft);background:transparent;border:none;border-radius:4px;cursor:pointer;transition:background .15s ease,color .15s ease;padding:0}.browser-nav-btn:hover{background:color-mix(in srgb,var(--project-primary) 18%,transparent);color:color-mix(in srgb,var(--project-primary) 70%,var(--txt))}.browser-nav-btn:active{background:color-mix(in srgb,var(--project-primary) 28%,transparent)}.browser-url{flex:1;background:color-mix(in srgb,var(--project-primary) 5%,var(--bg-alt));border:1px solid color-mix(in srgb,var(--project-primary) 22%,var(--brd));border-radius:4px;padding:4px 10px;font-size:11px;font-family:JetBrains Mono,monospace;color:color-mix(in srgb,var(--project-primary) 50%,var(--txt-soft));white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:background var(--dur-2) var(--ease-soft),border-color var(--dur-2) var(--ease-soft),color var(--dur-2) var(--ease-soft)}.browser-content{flex:1;min-height:0;position:relative;overflow:hidden;background:var(--surf);border-radius:0 0 16px 16px}.browser-skeleton{position:absolute;inset:0;background:var(--surf);padding:1.5rem;display:flex;flex-direction:column;gap:1rem;z-index:2;pointer-events:none}.skeleton-line,.skeleton-block{border-radius:4px;background:linear-gradient(90deg,var(--surf-hi) 25%,color-mix(in srgb,var(--project-primary) 12%,var(--surf-hi)) 50%,var(--surf-hi) 75%);background-size:600px 100%;animation:skeletonShimmer 1.6s infinite linear}.skeleton-line--wide{height:14px;width:60%}.skeleton-line--medium{height:10px;width:40%}.skeleton-line--short{height:10px;width:25%}.skeleton-block{flex:1;max-height:200px;border-radius:6px}@keyframes skeletonShimmer{0%{background-position:-600px 0}to{background-position:600px 0}}@media(prefers-reduced-motion:reduce){.skeleton-line,.skeleton-block{animation:none}}.mobile-view{height:100%;display:flex;flex-direction:column;overflow:hidden}.mobile-scroll{flex:1;overflow-y:auto;overflow-x:hidden;padding:1.25rem;display:flex;flex-direction:column;justify-content:space-between;gap:.75rem;-webkit-overflow-scrolling:touch}.mobile-category-row{display:flex;align-items:center;justify-content:space-between}.mobile-category{font-family:JetBrains Mono,monospace;font-size:9px;letter-spacing:.15em;font-weight:600;color:color-mix(in srgb,var(--project-primary) 80%,var(--txt-soft));text-transform:uppercase}.mobile-counter{font-size:10px;letter-spacing:.12em;color:color-mix(in srgb,var(--project-primary) 75%,var(--txt-soft));font-variant-numeric:tabular-nums;font-family:JetBrains Mono,monospace}.mobile-title{font-size:clamp(1.6rem,7vw,2.2rem);font-weight:800;line-height:1.1;color:var(--project-primary);margin:0;font-family:Space Grotesk,sans-serif}.mobile-badges{display:flex;flex-wrap:wrap;gap:6px}.mobile-badge{display:inline-flex;align-items:center;gap:4px;font-size:10px;font-weight:500;color:var(--badge-color, var(--txt-soft));border:1px solid color-mix(in srgb,var(--badge-color, var(--brd-hi)) 40%,transparent);border-radius:4px;padding:3px 8px;background:color-mix(in srgb,var(--badge-color) 6%,transparent)}.mobile-badge-icon{font-size:11px;flex-shrink:0}.mobile-preview{border:1px solid color-mix(in srgb,var(--project-primary) 32%,var(--brd));border-radius:8px;overflow:hidden;background:var(--surf);cursor:pointer;box-shadow:0 0 40px -10px color-mix(in srgb,var(--project-primary) 18%,transparent),0 0 0 1px color-mix(in srgb,var(--project-primary) 10%,transparent);transition:border-color .25s ease,box-shadow .25s ease}.mobile-preview:active{border-color:color-mix(in srgb,var(--project-primary) 60%,var(--brd))}.mobile-preview-bar{height:30px;display:flex;align-items:center;justify-content:space-between;padding:0 10px;background:color-mix(in srgb,var(--project-primary) 10%,var(--surf-hi));border-bottom:1px solid color-mix(in srgb,var(--project-primary) 22%,var(--brd))}.mobile-preview-url{font-size:9px;font-family:JetBrains Mono,monospace;color:color-mix(in srgb,var(--project-primary) 45%,var(--txt-soft))}.mobile-preview-live{font-size:8px;font-weight:700;letter-spacing:.1em;color:var(--ok);padding:1px 6px;border:1px solid var(--ok);border-radius:3px}.mobile-preview-frame{height:180px;position:relative;overflow:hidden;pointer-events:none}.mobile-preview-hint{display:flex;align-items:center;justify-content:center;gap:6px;padding:8px;font-size:10px;color:color-mix(in srgb,var(--project-primary) 70%,var(--txt));background:color-mix(in srgb,var(--project-primary) 8%,var(--surf));border-top:1px solid color-mix(in srgb,var(--project-primary) 22%,var(--brd))}.mobile-hint-dot{width:6px;height:6px;border-radius:50%;background:var(--project-primary);display:block}.mobile-desc{font-size:.88rem;line-height:1.65;color:var(--txt-soft);font-family:Space Grotesk,sans-serif;margin:0}.mobile-links{display:flex;gap:10px;padding-bottom:.5rem}.mobile-link{display:flex;align-items:center;justify-content:center;padding:10px 12px;border-radius:6px;font-size:.8rem;font-weight:600;font-family:Space Grotesk,sans-serif;text-decoration:none;white-space:nowrap;transition:opacity .2s ease,background .2s ease}.mobile-link--primary{flex:2;background:color-mix(in srgb,var(--project-primary) 18%,transparent);border:1px solid color-mix(in srgb,var(--project-primary) 50%,transparent);color:color-mix(in srgb,var(--project-primary) 90%,var(--txt))}.mobile-link--primary:active{background:color-mix(in srgb,var(--project-primary) 28%,transparent)}.mobile-link--secondary{flex:1;background:transparent;color:var(--txt-soft);border:1px solid color-mix(in srgb,var(--project-primary) 50%,transparent)}.mobile-link--secondary:active{background:var(--surf-hi)}.mobile-link--disabled{opacity:.3;pointer-events:none}@media(min-width:600px)and (max-width:1023px){.mobile-links{flex-direction:column;justify-content:space-between}.mobile-link--primary,.mobile-link--secondary{flex:unset}}.mobile-dots{flex-shrink:0;display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 0;border-top:1px solid var(--brd)}.mobile-dot{width:8px;height:8px;border-radius:50%;background:var(--surf-hi);border:none;padding:0;cursor:pointer;transition:background .2s ease,transform .2s ease}.mobile-dot.is-active{background:var(--project-primary);transform:scale(1.3)}.mfs-overlay{position:fixed;inset:0;z-index:1100;display:flex;flex-direction:column;background:var(--bg);animation:mfsSlideUp .3s cubic-bezier(.22,1,.36,1)}@keyframes mfsSlideUp{0%{transform:translateY(100%);opacity:.6}to{transform:translateY(0);opacity:1}}.mfs-topbar{flex-shrink:0;height:48px;display:flex;align-items:center;justify-content:space-between;padding:0 1rem;border-bottom:1px solid var(--brd)}.mfs-close{font-size:12px;font-weight:600;font-family:Space Grotesk,sans-serif;color:var(--txt-brand);background:transparent;border:1px solid var(--txt-brand);border-radius:4px;padding:5px 12px;cursor:pointer;transition:background .15s ease}.mfs-close:active{background:color-mix(in srgb 12%,transparent)}.mfs-url{font-size:10px;font-family:JetBrains Mono,monospace;color:var(--txt-soft)}.mfs-content{flex:1;min-height:0;position:relative;overflow:hidden;background:var(--surf)}.mfs-bottombar{flex-shrink:0;display:flex;align-items:center;gap:8px;padding:10px 1rem;border-top:1px solid var(--brd)}.mfs-btn{flex:1;display:flex;align-items:center;justify-content:center;padding:10px;border-radius:6px;font-size:12px;font-weight:600;font-family:Space Grotesk,sans-serif;cursor:pointer;transition:background .15s ease;border:none}.mfs-btn--ghost{background:transparent;color:var(--txt-soft);border:1px solid var(--brd)}.mfs-btn--ghost:active{background:var(--surf-hi)}.mfs-btn--primary{background:color-mix(in srgb,var(--project-primary) 18%,transparent);border:1px solid color-mix(in srgb,var(--project-primary) 55%,transparent);color:color-mix(in srgb,var(--project-primary) 95%,var(--txt))}.mfs-btn--primary:active{background:color-mix(in srgb,var(--project-primary) 30%,transparent)}@media(prefers-reduced-motion:reduce){.mfs-overlay{animation:none}}.projects{padding:1rem;width:100%;height:100%;--project-primary: var(--brand);--col-left: 33.5%;--bgs-vline-w: 8%;--row-bottom: 24.5%;--bgs-hline-h: 6%;--card-pad-x: clamp(1rem, 2cqw, 1.8rem);--card-pad-y: clamp(1rem, 2cqw, 1.8rem)}@media(min-width:1024px){.projects{display:grid;grid-template-columns:var(--col-left) var(--bgs-vline-w) 1fr;grid-template-rows:1fr var(--bgs-hline-h) var(--row-bottom);container-type:size;perspective:1400px}.projects>.q-tl{justify-self:end;grid-area:1 / 1;max-width:90%}.projects>.browser-preview{grid-area:1 / 3;max-width:90%}.projects>.q-bl{justify-self:end;grid-area:3 / 1;width:90%}.projects>.q-br{grid-area:3 / 3;max-width:90%}.projects>.q-tl,.projects>.q-bl,.projects>.q-br,.projects>.browser-preview{position:relative;display:flex;flex-direction:column;border-radius:18px;padding:var(--card-pad-y) var(--card-pad-x);background:linear-gradient(155deg,color-mix(in srgb,var(--project-primary) 8%,transparent) 0%,color-mix(in srgb,var(--project-primary) 3%,transparent) 50%,transparent 100%);border:1px solid color-mix(in srgb,var(--project-primary) 28%,transparent);backdrop-filter:blur(8px) saturate(1.15);-webkit-backdrop-filter:blur(8px) saturate(1.15);box-shadow:12px 22px 70px -34px color-mix(in srgb,var(--project-primary) 28%,transparent),5px 10px 36px -22px #0003,inset 1px 1px color-mix(in srgb,#fff 8%,transparent),0 0 0 1px color-mix(in srgb,var(--project-primary) 6%,transparent);transition:background var(--dur-3) var(--ease-soft),border-color var(--dur-3) var(--ease-soft),box-shadow var(--dur-3) var(--ease-soft)}.projects>.q-tl:before,.projects>.q-bl:before,.projects>.q-br:before{content:"";position:absolute;inset:0 0 auto;height:2px;background:linear-gradient(90deg,transparent 0%,var(--project-primary) 50%,transparent 100%);opacity:.55;pointer-events:none;z-index:1;transition:opacity var(--dur-3) var(--ease-soft)}.q-tl{gap:clamp(.6rem,2cqh,2rem)}.q-tl__anim{flex:1;display:flex;flex-direction:column}.proj-tag{font-family:JetBrains Mono,monospace;font-size:clamp(.72rem,1.1cqw,1.5rem);letter-spacing:.22em;text-transform:uppercase;font-weight:600;color:color-mix(in srgb,var(--project-primary) 80%,var(--txt-soft));transition:color var(--dur-3) var(--ease-soft)}.proj-desc{height:100%;display:flex;flex-direction:column;justify-content:center;font-family:Space Grotesk,sans-serif;font-size:clamp(1rem,1.15cqw,1.6rem);line-height:1.65;color:var(--txt-soft);text-align:justify}.proj-nav{display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.proj-nav-btn{display:inline-flex;align-items:center;justify-content:center;width:clamp(2.4rem,3cqw,2.8rem);aspect-ratio:1;border-radius:50%;background:color-mix(in srgb,var(--project-primary) 8%,transparent);border:1px solid color-mix(in srgb,var(--project-primary) 38%,transparent);color:color-mix(in srgb,var(--project-primary) 75%,var(--txt));font-size:1.1rem;cursor:pointer;font-family:inherit;transition:color var(--dur-2) var(--ease-soft),border-color var(--dur-2) var(--ease-soft),background var(--dur-2) var(--ease-soft),box-shadow var(--dur-2) var(--ease-soft),transform var(--dur-2) var(--ease-soft)}.proj-nav-btn:hover{color:var(--txt);border-color:color-mix(in srgb,var(--project-primary) 65%,transparent);background:color-mix(in srgb,var(--project-primary) 18%,transparent);transform:translateY(-1px);box-shadow:0 8px 22px -14px color-mix(in srgb,var(--project-primary) 70%,transparent)}.proj-nav-btn:focus-visible{outline:2px solid var(--project-primary);outline-offset:2px}.proj-nav-btn:active{transform:scale(.94)}.proj-nav-btn:disabled{opacity:.3;pointer-events:none}.q-bl__anim{height:100%;display:flex;flex-direction:column;justify-content:space-between}.proj-count{font-family:JetBrains Mono,monospace;font-size:clamp(.72rem,.92cqw,.84rem);letter-spacing:.22em;text-transform:uppercase;font-weight:600;color:color-mix(in srgb,var(--project-primary) 75%,var(--txt-soft));font-variant-numeric:tabular-nums;transition:color var(--dur-3) var(--ease-soft)}.proj-title{flex:1;display:flex;align-items:center;font-family:Space Grotesk,sans-serif;font-weight:700;line-height:1.05;letter-spacing:-.02em;font-size:clamp(1.8rem,2cqw,3rem);color:var(--project-primary);transition:color var(--dur-3) var(--ease-soft)}.q-br__anim{display:flex;flex-direction:column;justify-content:space-between;height:100%}.proj-stack{display:flex;flex-wrap:wrap;gap:1rem}.proj-badge{display:inline-flex;align-items:center;gap:5px;font-size:clamp(.75rem,.9cqw,1rem);letter-spacing:.04em;font-weight:500;color:var(--badge-color, var(--txt-soft));border:1px solid color-mix(in srgb,var(--badge-color, var(--brd-hi)) 45%,transparent);border-radius:6px;padding:5px 14px;background:color-mix(in srgb,var(--badge-color, var(--brand)) 6%,transparent);transition:border-color var(--dur-2) ease,background var(--dur-2) ease}.proj-badge:hover{border-color:color-mix(in srgb,var(--badge-color, var(--brd-hi)) 70%,transparent);background:color-mix(in srgb,var(--badge-color, var(--brand)) 12%,transparent)}.proj-badge-icon{font-size:1em;flex-shrink:0}.proj-links{display:flex;flex-direction:column;gap:1rem;align-items:flex-start}.proj-link{display:inline-flex;align-items:center;gap:.4rem;font-family:Space Grotesk,sans-serif;font-size:clamp(.88rem,1.05cqw,1rem);text-decoration:none;font-weight:500;transition:background var(--dur-2) var(--ease-soft),border-color var(--dur-2) var(--ease-soft),color var(--dur-2) var(--ease-soft),transform var(--dur-2) var(--ease-soft),box-shadow var(--dur-2) var(--ease-soft)}.proj-link--live{font-weight:600;color:color-mix(in srgb,var(--project-primary) 90%,var(--txt));padding:.65rem 1.2rem;border-radius:8px;background:color-mix(in srgb,var(--project-primary) 16%,transparent);border:1px solid color-mix(in srgb,var(--project-primary) 50%,transparent)}.proj-link--live:hover{background:color-mix(in srgb,var(--project-primary) 24%,transparent);border-color:color-mix(in srgb,var(--project-primary) 70%,transparent);color:color-mix(in srgb,var(--project-primary) 98%,var(--txt));transform:translateY(-1px);box-shadow:0 10px 28px -16px color-mix(in srgb,var(--project-primary) 75%,transparent)}.proj-link--live:active{transform:translateY(0)}.proj-link--code{color:var(--txt-soft);padding:.65rem 1rem;border-radius:8px;border:1px solid color-mix(in srgb,var(--project-primary) 50%,transparent);background:transparent}.proj-link--code:hover{color:var(--txt);border-color:color-mix(in srgb,var(--project-primary) 70%,transparent);background:color-mix(in srgb,var(--txt) 4%,transparent)}.proj-link--off{opacity:.3;pointer-events:none;cursor:default}.projects>.browser-preview{transform:rotateY(-2.5deg);transform-origin:right center;filter:brightness(.88);transition:filter .45s var(--ease-soft),box-shadow .45s var(--ease-soft),transform var(--dur-3) var(--ease-soft),background var(--dur-3) var(--ease-soft),border-color var(--dur-3) var(--ease-soft)}.projects>.browser-preview:hover{filter:brightness(1.06);box-shadow:0 28px 90px -24px color-mix(in srgb,var(--project-primary) 50%,transparent),0 10px 40px -16px #00000061,inset 1px 1px color-mix(in srgb,#fff 10%,transparent),0 0 0 1px color-mix(in srgb,var(--project-primary) 12%,transparent)}.projects[data-anim=enter-fwd]>.q-tl,.projects[data-anim=enter-bwd]>.q-tl{animation:sec-card-left-in .38s var(--ease-glide) 0ms both}.projects[data-anim=enter-fwd]>.q-bl,.projects[data-anim=enter-bwd]>.q-bl{animation:sec-card-left-in .38s var(--ease-glide) 50ms both}.projects[data-anim=enter-fwd]>.browser-preview,.projects[data-anim=enter-bwd]>.browser-preview{animation:sec-prev-right-in .38s var(--ease-glide) 0ms both}.projects[data-anim=enter-fwd]>.q-br,.projects[data-anim=enter-bwd]>.q-br{animation:sec-card-right-in .38s var(--ease-glide) 50ms both}.projects[data-anim=enter-fwd] .q-tl__anim,.projects[data-anim=enter-bwd] .q-tl__anim,.projects[data-anim=enter-fwd] .q-bl__anim,.projects[data-anim=enter-bwd] .q-bl__anim,.projects[data-anim=enter-fwd] .q-br__anim,.projects[data-anim=enter-bwd] .q-br__anim{animation:sec-content-in .28s var(--ease-soft) .3s both}.projects[data-anim=exit-fwd] .q-tl__anim,.projects[data-anim=exit-bwd] .q-tl__anim,.projects[data-anim=exit-fwd] .q-bl__anim,.projects[data-anim=exit-bwd] .q-bl__anim,.projects[data-anim=exit-fwd] .q-br__anim,.projects[data-anim=exit-bwd] .q-br__anim{animation:sec-content-out .18s ease-in 0ms both}.projects[data-anim=exit-fwd]>.q-tl,.projects[data-anim=exit-bwd]>.q-tl{animation:sec-card-left-out .23s ease-in .15s both}.projects[data-anim=exit-fwd]>.q-bl,.projects[data-anim=exit-bwd]>.q-bl{animation:sec-card-left-out .23s ease-in .17s both}.projects[data-anim=exit-fwd]>.browser-preview,.projects[data-anim=exit-bwd]>.browser-preview{animation:sec-prev-right-out .23s ease-in .15s both}.projects[data-anim=exit-fwd]>.q-br,.projects[data-anim=exit-bwd]>.q-br{animation:sec-card-right-out .23s ease-in .17s both}.projects[data-anim=init]>.q-tl{animation:sec-init .5s var(--ease-glide) 0ms both}.projects[data-anim=init]>.q-bl{animation:sec-init .5s var(--ease-glide) 80ms both}.projects[data-anim=init]>.browser-preview{animation:sec-prev-init .5s var(--ease-glide) .16s both}.projects[data-anim=init]>.q-br{animation:sec-init .5s var(--ease-glide) .24s both}}@keyframes slideFromRight{0%{opacity:0;transform:translate(22px)}to{opacity:1;transform:translate(0)}}@keyframes slideFromLeft{0%{opacity:0;transform:translate(-22px)}to{opacity:1;transform:translate(0)}}@keyframes slideFromBottom{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes slideFromTop{0%{opacity:0;transform:translateY(-16px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeScaleIn{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}@keyframes sec-card-left-in{0%{transform:translate(-120%);opacity:0}to{transform:none;opacity:1}}@keyframes sec-card-right-in{0%{transform:translate(120%);opacity:0}to{transform:none;opacity:1}}@keyframes sec-prev-right-in{0%{transform:translate(120%) rotateY(-10deg) scale(.92);opacity:0}to{transform:rotateY(-2.5deg);opacity:1}}@keyframes sec-content-in{0%{transform:scale(.88);opacity:0}to{transform:none;opacity:1}}@keyframes sec-card-left-out{0%{transform:none;opacity:1}to{transform:translate(-120%);opacity:0}}@keyframes sec-card-right-out{0%{transform:none;opacity:1}to{transform:translate(120%);opacity:0}}@keyframes sec-prev-right-out{0%{transform:rotateY(-2.5deg);opacity:1}to{transform:translate(120%) rotateY(-10deg);opacity:0}}@keyframes sec-content-out{0%{transform:none;opacity:1}to{transform:scale(.88);opacity:0}}@keyframes sec-init{0%{transform:translateY(8px);opacity:0}to{transform:none;opacity:1}}@keyframes sec-prev-init{0%{transform:translateY(8px) rotateY(-2.5deg);opacity:0}to{transform:rotateY(-2.5deg);opacity:1}}.q-tl__anim[data-dir="1"]{animation:slideFromRight .38s var(--ease-glide) both}.q-tl__anim[data-dir="-1"]{animation:slideFromLeft .38s var(--ease-glide) both}.q-bl__anim[data-dir="1"]{animation:slideFromBottom .38s var(--ease-glide) both}.q-bl__anim[data-dir="-1"]{animation:slideFromTop .38s var(--ease-glide) both}.q-br__anim[data-dir="1"],.q-br__anim[data-dir="-1"]{animation:fadeScaleIn .42s var(--ease-glide) both}@media(prefers-reduced-motion:reduce){.q-tl__anim,.q-bl__anim,.q-br__anim{animation:none}.projects[data-anim]>.q-tl,.projects[data-anim]>.q-bl,.projects[data-anim]>.browser-preview,.projects[data-anim]>.q-br,.projects[data-anim] .q-tl__anim,.projects[data-anim] .q-bl__anim,.projects[data-anim] .q-br__anim{animation:none;opacity:1;transform:none}.projects>.browser-preview,.projects>.browser-preview:hover{filter:none;box-shadow:none;transform:none;transition:background var(--dur-3) var(--ease-soft),border-color var(--dur-3) var(--ease-soft)}.proj-nav-btn,.proj-link{transition:opacity var(--dur-1) ease,color var(--dur-1) ease;transform:none}}@media(max-width:1023px){.projects{display:flex;flex-direction:column;padding:0}}.location-badge{display:inline-flex;align-items:center;gap:.55rem;padding:.4rem .85rem;border:1px solid color-mix(in srgb,var(--ok) 35%,var(--brd));border-radius:999px;background:linear-gradient(135deg,color-mix(in srgb,var(--ok) 8%,transparent),color-mix(in srgb,var(--surf) 70%,transparent));font-family:Space Grotesk,sans-serif;font-size:.7rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--txt);transition:border-color .3s ease,transform .3s ease,box-shadow .3s ease}.location-badge:hover{border-color:color-mix(in srgb,var(--ok) 60%,var(--brd));transform:translateY(-1px);box-shadow:0 0 18px color-mix(in srgb,var(--ok) 25%,transparent)}.location-badge__dot{position:relative;width:7px;height:7px;border-radius:50%;background:var(--ok);box-shadow:0 0 8px color-mix(in srgb,var(--ok) 75%,transparent)}.location-badge__dot:before{content:"";position:absolute;inset:1.5px;border-radius:50%;background:color-mix(in srgb,var(--ok) 30%,white)}.location-badge__dot:after{content:"";position:absolute;inset:-3px;border-radius:50%;background:var(--ok);opacity:.55;animation:location-pulse 2.2s cubic-bezier(.4,0,.6,1) infinite}@keyframes location-pulse{0%{transform:scale(.6);opacity:.55}70%{transform:scale(2);opacity:0}to{transform:scale(2);opacity:0}}@media(prefers-reduced-motion:reduce){.location-badge__dot:after{animation:none}.location-badge{transition:none}}.social-link{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) 0;color:var(--txt);text-decoration:none;font-family:Space Grotesk,sans-serif;font-size:.92rem;font-weight:500;letter-spacing:.02em;border-bottom:1px solid color-mix(in srgb,var(--txt-soft) 18%,transparent);transition:color .3s ease,border-color .3s ease,padding .35s ease;width:100%}.social-link__icon{font-size:1rem;color:var(--txt-soft);transition:color .3s ease,transform .35s ease;flex-shrink:0}.social-link__label{flex:1}.social-link__arrow{font-size:.75rem;color:var(--txt-soft);transform:translate(-6px);opacity:0;transition:transform .4s cubic-bezier(.2,.8,.2,1),opacity .3s ease,color .3s ease;flex-shrink:0}.social-link:hover{color:var(--txt-brand);border-color:color-mix(in srgb,var(--brand) 50%,transparent);padding-left:var(--space-1)}.social-link:hover .social-link__icon{color:var(--txt-brand);transform:translate(2px)}.social-link:hover .social-link__arrow{opacity:1;transform:translate(0);color:var(--txt-brand)}.social-link:focus-visible{outline:2px solid var(--focus);outline-offset:4px;border-radius:2px}@media(prefers-reduced-motion:reduce){.social-link,.social-link__icon,.social-link__arrow{transition:none}}.info-col{display:flex;flex-direction:column;gap:var(--space-3);padding-right:var(--space-3);position:relative}.info-col:after{content:"";position:absolute;top:var(--space-1);bottom:var(--space-1);right:0;width:1px;background:linear-gradient(180deg,transparent,color-mix(in srgb,var(--txt-soft) 25%,transparent) 20%,color-mix(in srgb,var(--txt-soft) 25%,transparent) 80%,transparent)}.info-col__eyebrow{font-family:Space Grotesk,sans-serif;font-size:.68rem;font-weight:600;letter-spacing:.3em;text-transform:uppercase;color:color-mix(in srgb,var(--brand) 80%,var(--txt-soft));display:inline-flex;align-items:center;gap:var(--space-2)}.info-col__eyebrow:before{content:"";width:var(--space-3);height:1px;background:color-mix(in srgb,var(--brand) 60%,transparent)}.info-col__heading{font-family:Space Grotesk,sans-serif;font-size:clamp(1.5rem,2.4vw,2.1rem);font-weight:600;line-height:1.15;letter-spacing:-.015em;color:var(--txt);margin:0;max-width:18ch}.info-col__text{font-size:.95rem;line-height:1.7;color:var(--txt-soft);max-width:38ch;margin:0}.info-col__location{margin-top:var(--space-1)}.info-col__socials-wrap{display:flex;flex-direction:column;gap:var(--space-2);margin-top:auto;padding-top:var(--space-3)}.info-col__socials-label{font-family:Space Grotesk,sans-serif;font-size:.65rem;font-weight:600;letter-spacing:.3em;text-transform:uppercase;color:var(--txt-soft)}.info-col__socials{list-style:none;display:flex;flex-direction:column;gap:var(--space-1);margin:0;padding:0}@media(max-width:1024px){.info-col{padding-right:0;gap:var(--space-2)}.info-col:after{display:none}.info-col__heading{font-size:1.4rem;max-width:100%}.info-col__text{font-size:.9rem;max-width:100%}.info-col__socials-wrap{padding-top:var(--space-2)}}.field{position:relative;width:100%;--field-accent: var(--focus);padding-bottom:var(--space-1)}.field__control{width:100%;padding:var(--space-3) 0 var(--space-1);font-size:1.05rem;color:var(--txt);background:transparent;border:none;border-bottom:1px solid color-mix(in srgb,var(--txt-soft) 22%,transparent);outline:none;font-family:inherit;resize:none;transition:border-color .3s ease}.field__control:disabled{color:var(--disabled-txt);cursor:not-allowed}.field__label{position:absolute;top:var(--space-3);left:0;pointer-events:none;font-family:Space Grotesk,sans-serif;font-size:1rem;color:var(--txt-soft);letter-spacing:.01em;transition:top .4s cubic-bezier(.2,.8,.2,1),font-size .4s cubic-bezier(.2,.8,.2,1),letter-spacing .4s cubic-bezier(.2,.8,.2,1),color .3s ease}.field__control:focus~.field__label,.field__control:not(:placeholder-shown)~.field__label{top:0;font-size:.62rem;letter-spacing:.3em;text-transform:uppercase;color:var(--field-accent)}.field__line{position:absolute;left:0;right:0;bottom:var(--space-1);height:1px;pointer-events:none;overflow:hidden}.field__line:after{content:"";position:absolute;inset:0;background:var(--field-accent);transform:scaleX(0);transform-origin:left center;transition:transform .55s cubic-bezier(.2,.8,.2,1)}.field__control:focus~.field__line:after,.field__control:not(:placeholder-shown)~.field__line:after{transform:scaleX(1)}.field__counter{position:absolute;right:0;bottom:-1.3rem;font-family:Space Grotesk,sans-serif;font-size:.65rem;letter-spacing:.18em;color:var(--txt-soft);opacity:0;transition:opacity .3s ease,color .3s ease}.field:focus-within .field__counter,.field--has-value .field__counter{opacity:.85}.field__counter--limit{color:var(--err);opacity:1}.field--error .field__control{border-bottom-color:transparent}.field--error .field__label{color:var(--err)}.field--error .field__line:after{background:var(--err);transform:scaleX(1)}.field__error{display:block;margin-top:var(--space-1);font-size:.78rem;color:var(--err);letter-spacing:.02em}@media(max-width:1024px){.field__control{font-size:16px;padding:var(--space-3) 0 var(--space-1)}}@media(prefers-reduced-motion:reduce){.field__control,.field__label,.field__line:after,.field__counter{transition:none}}.field__control:-webkit-autofill,.field__control:-webkit-autofill:hover,.field__control:-webkit-autofill:focus{-webkit-box-shadow:0 0 0 1000px var(--bg) inset;-webkit-text-fill-color:var(--txt);caret-color:var(--txt);transition:background-color 5000s ease-in-out 0s}.consent-checkbox{display:flex;flex-direction:column;gap:var(--space-1)}.consent-checkbox__input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.consent-checkbox__label{position:relative;display:flex;align-items:flex-start;gap:var(--space-2);cursor:pointer;-webkit-user-select:none;user-select:none}.consent-checkbox__label:has(.consent-checkbox__input:disabled){opacity:.6;cursor:not-allowed}.consent-checkbox__box{position:relative;flex-shrink:0;width:1.05rem;height:1.05rem;margin-top:.2rem;border:1px solid color-mix(in srgb,var(--txt-soft) 35%,transparent);border-radius:3px;background:transparent;display:flex;align-items:center;justify-content:center;transition:border-color .3s ease,background .3s ease,transform .35s cubic-bezier(.2,.8,.2,1.4)}.consent-checkbox__label:hover .consent-checkbox__box{border-color:var(--txt-brand)}.consent-checkbox__input:checked+.consent-checkbox__box{background:var(--brand);border-color:var(--brand)}.consent-checkbox__input:focus-visible+.consent-checkbox__box{outline:2px solid var(--focus);outline-offset:3px}.consent-checkbox__check{font-size:.55rem;color:var(--txt-on-brand);animation:consent-check-pop .25s cubic-bezier(.2,.8,.2,1.4)}@keyframes consent-check-pop{0%{transform:scale(.3);opacity:0}70%{transform:scale(1.2);opacity:1}to{transform:scale(1);opacity:1}}.consent-checkbox__text{font-size:.78rem;color:var(--txt-soft);line-height:1.55}.consent-checkbox__link{position:relative;color:var(--txt);text-decoration:none;font-weight:500;border-bottom:1px solid color-mix(in srgb,var(--txt-brand) 50%,transparent);transition:color .25s ease,border-color .25s ease}.consent-checkbox__link:hover{color:var(--txt-brand);border-color:var(--txt-brand)}.consent-checkbox__link:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:2px}.consent-checkbox--error .consent-checkbox__box{border-color:var(--err)}.consent-checkbox__error{font-size:.72rem;color:var(--err);padding-left:calc(1.05rem + var(--space-2))}@media(prefers-reduced-motion:reduce){.consent-checkbox__box,.consent-checkbox__check{transition:none;animation:none}}.cform{display:flex;flex-direction:column;gap:var(--space-4);width:100%;height:100%;position:relative}.cform__eyebrow{font-family:Space Grotesk,sans-serif;font-size:.68rem;font-weight:600;letter-spacing:.3em;text-transform:uppercase;color:color-mix(in srgb,var(--brand) 80%,var(--txt-soft));display:inline-flex;align-items:center;gap:var(--space-2)}.cform__eyebrow:before{content:"";width:var(--space-3);height:1px;background:color-mix(in srgb,var(--brand) 60%,transparent)}.cform__fields{display:flex;flex-direction:column;gap:var(--space-3)}.cform__honeypot{position:absolute;left:-9999px;width:1px;height:1px;opacity:0;pointer-events:none}.cform__footer{display:flex;flex-direction:column;gap:var(--space-3);margin-top:auto;padding-top:var(--space-3);border-top:1px solid color-mix(in srgb,var(--txt-soft) 14%,transparent)}.cform__footnote{font-size:.7rem;color:var(--txt-soft);letter-spacing:.02em;line-height:1.5;margin:0;opacity:.75}.cform__submit{position:relative;align-self:flex-start;display:inline-flex;align-items:center;gap:var(--space-2);padding:.7rem 1.6rem;background:var(--brand);border:1px solid var(--brand);border-radius:var(--r-sm);color:var(--txt-on-brand);font-family:Space Grotesk,sans-serif;font-weight:700;font-size:.8rem;letter-spacing:.18em;text-transform:uppercase;cursor:pointer;overflow:hidden;isolation:isolate;transition:box-shadow var(--dur-1) var(--ease-micro),transform var(--dur-1) var(--ease-micro),background var(--dur-1) var(--ease-micro)}.cform__submit:hover:not(:disabled){background:var(--btn-brand-hover);border-color:var(--btn-brand-hover);box-shadow:0 0 16px var(--glow-brand),0 0 40px var(--glow-brand-soft);transform:translateY(-1px)}.cform__submit:active:not(:disabled){transform:translateY(0);box-shadow:0 0 8px var(--glow-brand-soft)}.cform__submit:focus-visible{outline:2px solid var(--focus);outline-offset:4px}.cform__submit:disabled{opacity:.65;cursor:progress}.cform__submit-label{position:relative}.cform__submit-arrow{font-size:.85rem;transition:transform var(--dur-1) var(--ease-micro)}.cform__submit:hover:not(:disabled) .cform__submit-arrow{transform:translate(3px)}.cform__submit:hover:not(:disabled) .cform__submit-arrow{transform:translate(4px)}.cform__spinner{width:.85rem;height:.85rem;border-radius:50%;border:2px solid color-mix(in srgb,var(--txt-brand) 30%,transparent);border-top-color:var(--txt-brand);animation:cform-spin .7s linear infinite}@keyframes cform-spin{to{transform:rotate(360deg)}}@media(max-width:1024px){.cform,.cform__fields{gap:var(--space-3)}.cform__submit{width:100%;justify-content:center;padding:var(--space-2) var(--space-3)}}@media(prefers-reduced-motion:reduce){.cform__submit,.cform__submit:before,.cform__submit-arrow{transition:none}.cform__spinner{animation-duration:1.5s}.cform__submit:hover:not(:disabled){transform:none}}.contact{position:relative;width:100%;height:100%;min-height:calc(100svh - var(--navbar-h, 5rem));display:flex;align-items:center;justify-content:center;padding:var(--space-4) var(--space-3);isolation:isolate;overflow:hidden}.contact__inner{width:100%;max-width:1280px;display:flex;flex-direction:column;gap:var(--space-5);position:relative;z-index:2}.contact__header{display:flex;flex-direction:column;gap:var(--space-2);text-align:center;align-items:center}.contact__title{font-family:Space Grotesk,sans-serif;font-size:clamp(2.5rem,7vw,4rem);font-weight:700;text-transform:uppercase;letter-spacing:.04em;line-height:1;color:var(--txt);margin:0}.contact__title-word{display:inline-block}.contact__title-highlight{position:relative;display:inline-block;color:transparent;-webkit-text-stroke:1px var(--txt-brand)}.contact__title-highlight:after{content:attr(data-text);position:absolute;left:0;top:0;color:var(--txt-brand);width:0%;overflow:hidden;white-space:nowrap;border-right:2px solid var(--txt-brand);transition:width .55s cubic-bezier(.2,.8,.2,1)}.contact:hover .contact__title-highlight:after{width:100%}.contact__rule{width:var(--space-5);height:1px;background:linear-gradient(90deg,transparent,var(--txt-brand),transparent);margin-top:var(--space-2)}.contact__grid{display:grid;grid-template-columns:38.2fr 61.8fr;gap:var(--space-5);width:100%;align-items:stretch}.contact__column{display:flex;flex-direction:column}.contact .reveal{opacity:0;transform:translateY(18px);transition:opacity .7s cubic-bezier(.2,.8,.2,1),transform .7s cubic-bezier(.2,.8,.2,1);transition-delay:var(--reveal-delay, 0ms)}.contact[data-revealed=true] .reveal{opacity:1;transform:none}@media(max-width:1024px){.contact{padding:var(--space-3) var(--space-2);align-items:flex-start;overflow:hidden}.contact__inner{gap:var(--space-4)}.contact__grid{grid-template-columns:1fr;gap:var(--space-4)}.contact__title{font-size:clamp(2rem,9vw,3rem)}.contact__rule{width:var(--space-4)}}.contact__footer{display:flex;align-items:center;justify-content:space-between;padding-top:var(--space-3);border-top:1px solid color-mix(in srgb,var(--txt-soft) 12%,transparent);font-family:Space Grotesk,sans-serif;font-size:.68rem;color:var(--txt-soft);letter-spacing:.08em;gap:var(--space-3)}.contact__footer-copy{opacity:.6}.contact__footer-nav{display:flex;gap:var(--space-3)}.contact__footer-nav a{color:var(--txt-soft);text-decoration:none;opacity:.6;transition:opacity .25s ease,color .25s ease}.contact__footer-nav a:hover{opacity:1;color:var(--txt-brand)}@media(max-width:600px){.contact__footer{flex-direction:column;align-items:flex-start;gap:var(--space-2)}}@keyframes ct-head-in{0%{transform:translateY(30px);opacity:0}to{transform:none;opacity:1}}@keyframes ct-head-out{0%{transform:none;opacity:1}to{transform:translateY(-30px);opacity:0}}@keyframes ct-col-in{0%{transform:translateY(60px);opacity:0}to{transform:none;opacity:1}}@keyframes ct-col-out{0%{transform:none;opacity:1}to{transform:translateY(-60px);opacity:0}}@keyframes ct-init{0%{transform:translateY(8px);opacity:0}to{transform:none;opacity:1}}.contact[data-anim=enter-fwd] .contact__header{animation:ct-head-in .38s var(--ease-glide) 0ms both}.contact[data-anim=enter-fwd] .contact__column:first-child{animation:ct-col-in .38s var(--ease-glide) 60ms both}.contact[data-anim=enter-fwd] .contact__column:last-child{animation:ct-col-in .38s var(--ease-glide) .12s both}.contact[data-anim=enter-bwd] .contact__header{animation:ct-head-in .38s var(--ease-glide) 0ms both}.contact[data-anim=enter-bwd] .contact__column:first-child{animation:ct-col-in .38s var(--ease-glide) 60ms both}.contact[data-anim=enter-bwd] .contact__column:last-child{animation:ct-col-in .38s var(--ease-glide) .12s both}.contact[data-anim=exit-fwd] .contact__header{animation:ct-head-out .2s ease-in 0ms both}.contact[data-anim=exit-fwd] .contact__column:first-child{animation:ct-col-out .23s ease-in 40ms both}.contact[data-anim=exit-fwd] .contact__column:last-child{animation:ct-col-out .23s ease-in 70ms both}.contact[data-anim=exit-bwd] .contact__header{animation:ct-head-out .2s ease-in 0ms both}.contact[data-anim=exit-bwd] .contact__column:first-child{animation:ct-col-out .23s ease-in 40ms both}.contact[data-anim=exit-bwd] .contact__column:last-child{animation:ct-col-out .23s ease-in 70ms both}.contact[data-anim=init] .contact__header{animation:ct-init .5s var(--ease-glide) 0ms both}.contact[data-anim=init] .contact__column:first-child{animation:ct-init .5s var(--ease-glide) 80ms both}.contact[data-anim=init] .contact__column:last-child{animation:ct-init .5s var(--ease-glide) .16s both}.contact[data-anim] .contact__header .reveal,.contact[data-anim] .contact__column .reveal{transition:none}@media(prefers-reduced-motion:reduce){.contact .reveal,.contact__title-highlight:after{transition:none}.contact .reveal{opacity:1;transform:none}.contact[data-anim] .contact__header,.contact[data-anim] .contact__column{animation:none;opacity:1;transform:none}}.legal-page{min-height:100dvh;padding:calc(var(--navbar-h) + var(--space-4)) clamp(1.25rem,5vw,3rem) var(--space-6);display:flex;justify-content:center;align-items:flex-start}.legal-page__inner{width:100%;max-width:760px;margin:0 auto;display:flex;flex-direction:column;gap:var(--space-4);padding-top:var(--space-5)}.legal-page__eyebrow{font-size:var(--fs-eyebrow);font-weight:600;letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--txt-brand);display:inline-flex;align-items:center;gap:.6rem}.legal-page__eyebrow:before{content:"";width:1.5rem;height:1px;background:color-mix(in srgb,var(--brand) 60%,transparent)}.legal-page h1{font-size:var(--fs-h1);line-height:1.05;letter-spacing:var(--ls-tight);color:var(--txt);font-weight:700}.legal-page h2{font-size:var(--fs-h3);font-weight:600;color:var(--txt);margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid color-mix(in srgb,var(--brand) 15%,transparent);letter-spacing:.005em}.legal-page__section{position:relative;isolation:isolate;padding:clamp(1.25rem,2.5vw,1.75rem);border-radius:var(--r-md);border:1px solid color-mix(in srgb,var(--brand) 18%,transparent);background:linear-gradient(155deg,color-mix(in srgb,var(--brand) 6%,transparent) 0%,color-mix(in srgb,var(--brand) 2%,transparent) 50%,transparent 100%);backdrop-filter:blur(8px) saturate(1.1);-webkit-backdrop-filter:blur(8px) saturate(1.1);display:flex;flex-direction:column;gap:var(--space-3)}.legal-page__section:before{content:"";position:absolute;inset:0 0 auto;height:2px;background:linear-gradient(90deg,transparent 0%,color-mix(in srgb,var(--brand) 50%,transparent) 50%,transparent 100%);border-radius:var(--r-md) var(--r-md) 0 0;pointer-events:none}.legal-page p,.legal-page li{font-size:var(--fs-body);line-height:1.75;color:var(--txt-soft)}.legal-page strong{color:var(--txt);font-weight:600}.legal-page a{color:var(--txt-brand);text-decoration:none;border-bottom:1px solid color-mix(in srgb,var(--brand) 35%,transparent);transition:border-color var(--dur-1) var(--ease-micro),color var(--dur-1) var(--ease-micro)}.legal-page a:hover{color:var(--brand);border-bottom-color:var(--brand)}.legal-page ul{padding-left:1.25rem;display:flex;flex-direction:column;gap:.4rem}.legal-page__back{display:inline-flex;align-items:center;gap:.4rem;margin-top:var(--space-4);align-self:flex-start}.legal-page--404 .legal-page__inner{text-align:center;align-items:center;gap:var(--space-3)}.legal-page--404 .legal-page__code{font-size:var(--fs-display);font-weight:700;line-height:1;letter-spacing:var(--ls-tight);background:var(--grad-warm);-webkit-background-clip:text;background-clip:text;color:transparent}:root{--r-xs: 4px;--r-sm: 8px;--r-md: 14px;--r-lg: 20px;--r-pill: 999px;--ease-soft: cubic-bezier(.22, .61, .36, 1);--ease-glide: cubic-bezier(.65, .05, .36, 1);--ease-micro: cubic-bezier(.2, .8, .2, 1);--dur-1: .25s;--dur-2: .55s;--dur-3: .85s;--stagger-step: 90ms;--container-narrow: 1100px;--container-wide: 1280px;--section-py: clamp(5rem, 10vh, 9rem);--navbar-h: 5rem;--fs-eyebrow: clamp(.75rem, 1.6vw, .95rem);--fs-body: clamp(.95rem, 1.2vw, 1.05rem);--fs-lead: clamp(1rem, 1.4vw, 1.2rem);--fs-h3: clamp(1.05rem, 1.6vw, 1.25rem);--fs-h2: clamp(1.8rem, 3.5vw, 2.8rem);--fs-h1: clamp(2.5rem, 7vw, 5rem);--fs-display: clamp(2.25rem, 9vw, 7rem);--ls-eyebrow: .14em;--ls-caps: .08em;--ls-tight: -.01em}:root{--brand: #ffae00;--accent: #0a4796;--hi: #d85711;--neu: #070605;--neu2: #0F0D0A;--bgs-c3: #F3C83D;--ok: #2ecc71;--warn: #f39c12;--err: #e74c3c;--brand-lt: color-mix(in srgb, var(--brand) 25%, white);--brand-md: var(--brand);--brand-dk: color-mix(in srgb, var(--brand) 55%, black);--accent-lt: color-mix(in srgb, var(--accent) 25%, white);--accent-md: var(--accent);--accent-dk: color-mix(in srgb, var(--accent) 55%, black);--hi-lt: color-mix(in srgb, var(--hi) 25%, white);--hi-md: var(--hi);--hi-dk: color-mix(in srgb, var(--hi) 55%, black);--neu-lt2: color-mix(in srgb, var(--neu) 10%, white);--neu-lt: color-mix(in srgb, var(--neu) 30%, white);--neu-md: var(--neu);--neu-dk: color-mix(in srgb, var(--neu) 50%, black);--neu-dk2: color-mix(in srgb, var(--neu) 80%, black);--neu2-lt2: color-mix(in srgb, var(--neu2) 10%, white);--neu2-lt: color-mix(in srgb, var(--neu2) 30%, white);--neu2-md: var(--neu2);--neu2-dk: color-mix(in srgb, var(--neu2) 50%, black);--neu2-dk2: color-mix(in srgb, var(--neu2) 80%, black);--bg: var(--neu-dk2);--bg-alt: var(--neu2-dk2);--surf: var(--neu-dk);--surf-hi: var(--neu2-dk);--txt: var(--neu-lt2);--txt-soft: var(--neu-lt);--txt-brand: var(--brand-md);--txt-on-brand: var(--neu-dk2);--brd: var(--neu-dk);--brd-hi: var(--brand-dk);--focus: var(--brand-md);--btn-brand: var(--brand-md);--btn-brand-hover: var(--brand-dk);--btn-hi: var(--hi-md);--btn-hi-hover: var(--hi-dk);--disabled-bg: color-mix(in srgb, var(--neu-md) 40%, transparent);--disabled-txt: var(--neu-dk);--input-bg: var(--surf);--input-brd: var(--brd);--input-brd-focus: var(--focus);--field-accent: var(--brand-md);--field-name-accent: var(--field-accent);--field-email-accent: var(--field-accent);--field-message-accent: var(--field-accent);--accent-soft: color-mix(in srgb, var(--accent) 40%, transparent);--accent-line: color-mix(in srgb, var(--accent) 60%, transparent);--accent-bg: color-mix(in srgb, var(--accent) 18%, var(--neu-dk2));--space-1: .5rem;--space-2: .8125rem;--space-3: 1.3125rem;--space-4: 2.125rem;--space-5: 3.4375rem;--space-6: 5.5625rem;--space-7: 9rem;--grad-brand: linear-gradient(135deg, var(--brand-lt), var(--brand-dk));--grad-hi: linear-gradient(135deg, var(--hi-lt), var(--hi-dk));--grad-warm: linear-gradient(135deg, var(--brand-md), var(--hi-dk));--grad-dark: linear-gradient(180deg, var(--neu-dk2), var(--neu2-dk2));--grad-glow: radial-gradient( ellipse at top, color-mix(in srgb, var(--brand) 20%, transparent), transparent 70% );--shadow-sm: 0 1px 4px rgba(0, 0, 0, .5);--shadow-md: 0 4px 14px rgba(0, 0, 0, .6);--shadow-lg: 0 8px 28px rgba(0, 0, 0, .7);--shadow-brand: 0 4px 20px color-mix(in srgb, var(--brand) 45%, transparent);--shadow-accent: 0 4px 20px color-mix(in srgb, var(--accent) 40%, transparent);--shadow-hi: 0 4px 20px color-mix(in srgb, var(--hi) 40%, transparent);--blur-sm: blur(4px);--blur-md: blur(12px);--blur-lg: blur(24px);--glass-bg: color-mix( in srgb, var(--brand) 6%, color-mix(in srgb, var(--neu-md) 70%, transparent) );--glass-brd: color-mix(in srgb, var(--brand) 25%, transparent);--glass-shadow: 0 8px 32px rgba(0, 0, 0, .5);--overlay-soft: rgba(0, 0, 0, .4);--overlay-hard: rgba(0, 0, 0, .75);--home-bg: #070605;--home-dot-opacity: 18%;--home-glow-opacity: .07}::selection{background:color-mix(in srgb,var(--brand) 35%,transparent);color:var(--neu-dk2)}:root[data-theme=light]{--bg: #f7f4ee;--bg-alt: #f0ece3;--surf: #e7e1d5;--surf-hi: #dcd5c7;--txt: #1a1714;--txt-soft: #6b6560;--brd: #d0c9be;--brd-hi: var(--brand-md);--disabled-bg: color-mix(in srgb, var(--brd) 50%, transparent);--disabled-txt: #a09a93;--home-dot-opacity: 34%;--home-bg: #f7f4ee;--home-glow-opacity: .12;--grad-dark: linear-gradient(180deg, #f7f4ee, #f0ece3);--grad-glow: radial-gradient( ellipse at top, color-mix(in srgb, var(--brand) 18%, transparent), transparent 70% );--shadow-sm: 0 1px 4px rgba(0, 0, 0, .1);--shadow-md: 0 4px 14px rgba(0, 0, 0, .15);--shadow-lg: 0 8px 28px rgba(0, 0, 0, .22);--shadow-brand: 0 4px 20px color-mix(in srgb, var(--brand-dk) 45%, transparent);--shadow-accent: 0 4px 20px color-mix(in srgb, var(--accent) 20%, transparent);--shadow-hi: 0 4px 20px color-mix(in srgb, var(--hi) 25%, transparent);--glass-bg: rgba(247, 243, 235, .88);--glass-brd: color-mix(in srgb, var(--brand) 40%, transparent);--glass-shadow: 0 4px 20px rgba(0, 0, 0, .1), 0 1px 4px rgba(0, 0, 0, .05);--overlay-soft: rgba(0, 0, 0, .2);--overlay-hard: rgba(0, 0, 0, .5);--accent-soft: color-mix(in srgb, var(--accent) 25%, transparent);--accent-line: color-mix(in srgb, var(--accent) 45%, transparent);--accent-bg: color-mix(in srgb, var(--accent) 8%, #f7f4ee)}@media(prefers-color-scheme:light){:root:not([data-theme]){--bg: #f7f4ee;--bg-alt: #f0ece3;--surf: #e7e1d5;--surf-hi: #dcd5c7;--txt: #1a1714;--txt-soft: #6b6560;--brd: #d0c9be;--brd-hi: var(--brand-md);--disabled-bg: color-mix(in srgb, #d0c9be 50%, transparent);--disabled-txt: #a09a93;--home-dot-opacity: 34%;--home-bg: #f7f4ee;--home-glow-opacity: .12;--grad-dark: linear-gradient(180deg, #f7f4ee, #f0ece3);--grad-glow: radial-gradient(ellipse at top, color-mix(in srgb, var(--brand) 18%, transparent), transparent 70%);--shadow-sm: 0 1px 4px rgba(0, 0, 0, .1);--shadow-md: 0 4px 14px rgba(0, 0, 0, .15);--shadow-lg: 0 8px 28px rgba(0, 0, 0, .22);--shadow-brand: 0 4px 20px color-mix(in srgb, var(--brand-dk) 45%, transparent);--shadow-accent: 0 4px 20px color-mix(in srgb, var(--accent) 20%, transparent);--shadow-hi: 0 4px 20px color-mix(in srgb, var(--hi) 25%, transparent);--glass-bg: rgba(247, 243, 235, .88);--glass-brd: color-mix(in srgb, var(--brand) 40%, transparent);--glass-shadow: 0 4px 20px rgba(0, 0, 0, .1), 0 1px 4px rgba(0, 0, 0, .05);--overlay-soft: rgba(0, 0, 0, .2);--overlay-hard: rgba(0, 0, 0, .5);--accent-soft: color-mix(in srgb, var(--accent) 25%, transparent);--accent-line: color-mix(in srgb, var(--accent) 45%, transparent);--accent-bg: color-mix(in srgb, var(--accent) 8%, #f7f4ee)}}:root{--glow-brand: color-mix(in srgb, var(--brand) 45%, transparent);--glow-brand-soft: color-mix(in srgb, var(--brand) 20%, transparent);--glow-brand-subtle: color-mix(in srgb, var(--brand) 8%, transparent);--glow-hi: color-mix(in srgb, var(--hi) 40%, transparent);--glow-hi-soft: color-mix(in srgb, var(--hi) 20%, transparent);--glow-sm: 0 0 10px var(--glow-brand-soft);--glow-md: 0 0 20px var(--glow-brand);--glow-lg: 0 0 20px var(--glow-brand), 0 0 40px var(--glow-hi-soft)}:root[data-theme=light]{--glow-brand: color-mix(in srgb, var(--brand) 50%, transparent);--glow-brand-soft: color-mix(in srgb, var(--brand) 25%, transparent);--glow-brand-subtle: color-mix(in srgb, var(--brand) 8%, transparent);--glow-hi: color-mix(in srgb, var(--hi) 40%, transparent);--glow-hi-soft: color-mix(in srgb, var(--hi) 20%, transparent)}@media(prefers-color-scheme:light){:root:not([data-theme]){--glow-brand: color-mix(in srgb, var(--brand) 50%, transparent);--glow-brand-soft: color-mix(in srgb, var(--brand) 25%, transparent);--glow-brand-subtle: color-mix(in srgb, var(--brand) 8%, transparent);--glow-hi: color-mix(in srgb, var(--hi) 40%, transparent);--glow-hi-soft: color-mix(in srgb, var(--hi) 20%, transparent)}}.glass-card{padding:clamp(1rem,2.5vw,1.6rem);background:color-mix(in srgb,var(--card-accent, var(--brand)) var(--card-bg-mix, 5%),transparent);border:1px solid color-mix(in srgb,var(--card-accent, var(--brand)) 25%,transparent);border-radius:var(--r-md);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:var(--card-glow, none);transition:border-color var(--dur-1) var(--ease-micro),box-shadow var(--dur-1) var(--ease-micro),transform var(--dur-1) var(--ease-micro)}.glass-card:hover{border-color:color-mix(in srgb,var(--card-accent, var(--brand)) 45%,transparent);box-shadow:0 4px 24px color-mix(in srgb,var(--card-accent, var(--brand)) 12%,transparent),0 0 40px color-mix(in srgb,var(--card-accent, var(--brand)) 6%,transparent);transform:translateY(-3px) scale(1.015)}@media(max-width:1024px){.glass-card{padding:clamp(1rem,3vw,1.4rem)}}.btn{--btn-accent: var(--brand-md);--btn-fg: var(--txt);display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.4rem;font-family:inherit;font-size:var(--fs-body);font-weight:600;letter-spacing:var(--ls-caps);text-transform:uppercase;text-decoration:none;color:var(--btn-fg);background:transparent;border:1px solid transparent;border-radius:var(--r-sm);cursor:pointer;outline:none;transition:background-color var(--dur-1) var(--ease-micro),border-color var(--dur-1) var(--ease-micro),color var(--dur-1) var(--ease-micro),box-shadow var(--dur-1) var(--ease-micro),transform var(--dur-1) var(--ease-micro)}.btn:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.btn:disabled,.btn[aria-disabled=true]{opacity:.55;cursor:not-allowed;pointer-events:none}.btn--solid{background:var(--btn-accent);color:var(--txt-on-brand);border-color:var(--btn-accent);box-shadow:var(--shadow-brand)}.btn--solid:hover{background:color-mix(in srgb,var(--btn-accent) 85%,white);transform:translateY(-1px)}.btn--ghost{color:var(--txt)}.btn--ghost:hover{color:var(--btn-accent);background:color-mix(in srgb,var(--btn-accent) 8%,transparent)}.btn--outline{color:var(--btn-accent);border-color:color-mix(in srgb,var(--btn-accent) 55%,transparent)}.btn--outline:hover{color:var(--txt-on-brand);background:var(--btn-accent);border-color:var(--btn-accent)}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{scrollbar-width:none}html::-webkit-scrollbar{display:none}body{min-height:100dvh;font-family:Space Grotesk,system-ui,-apple-system,sans-serif;color:var(--txt);background:var(--grad-dark)}main{display:flex;flex-direction:column}main>section{padding-top:var(--navbar-h);position:relative}@media(min-width:1025px){main>section{height:100dvh;overflow:hidden}main>section.ghost-section{pointer-events:none;-webkit-user-select:none;user-select:none}}@media(max-width:1024px){main>section.ghost-section{display:none}}.skip-link{position:fixed;top:.5rem;left:.5rem;padding:.65rem 1rem;background:var(--brand-md);color:var(--txt-on-brand);font-weight:600;font-size:.9rem;letter-spacing:var(--ls-caps);text-transform:uppercase;text-decoration:none;border-radius:var(--r-sm);box-shadow:var(--shadow-md);transform:translateY(-150%);transition:transform var(--dur-1) var(--ease-soft);z-index:9999}.skip-link:focus{transform:translateY(0);outline:2px solid var(--focus);outline-offset:3px}#home{height:100dvh}#about{min-height:100dvh}#projects{height:100dvh}#contact{min-height:100dvh}
