@font-face{font-family:__Inter_f367f3;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:__Inter_f367f3;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__Inter_f367f3;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:__Inter_f367f3;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:__Inter_f367f3;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Inter_f367f3;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Inter_f367f3;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Inter_Fallback_f367f3;src:local("Arial");ascent-override:90.49%;descent-override:22.56%;line-gap-override:0.00%;size-adjust:107.06%}.__className_f367f3{font-family:__Inter_f367f3,__Inter_Fallback_f367f3;font-style:normal}:root{--color-bg:#0f1418;--color-surface-0:#0f1418;--color-surface-1:#182026;--color-surface-2:#1f2a31;--color-surface-3:#27343c;--color-border:#2f3d46;--color-text:#f2f6f8;--color-text-muted:#93a1ab;--color-primary:#09f;--color-primary-accent:#5cc2ff;--color-success:#2eaf6e;--color-warn:#ffb347;--color-error:#ff4d61;--gradient-primary:linear-gradient(135deg,#09f,#5cc2ff);--radius-sm:4px;--radius-md:8px;--radius-lg:16px;--shadow-1:0 2px 4px -1px rgba(0,0,0,.4);--shadow-2:0 4px 16px -2px rgba(0,0,0,.45);--shadow-3:0 8px 28px -4px rgba(0,0,0,.5);--transition-fast:120ms ease;--transition-med:240ms cubic-bezier(.4,.2,.2,1);--font-sans:"Inter","Dosis",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,"Fira Sans","Droid Sans","Helvetica Neue",Arial,sans-serif;--font-mono:"JetBrains Mono","Fira Code",ui-monospace,SFMono-Regular,Menlo,Monaco,"Courier New",monospace;--z-nav:50;--z-overlay:100;--z-modal:200;--z-toast:300}[data-theme=light]{--color-bg:#f6f8f9;--color-surface-0:#fff;--color-surface-1:#fff;--color-surface-2:#f1f4f6;--color-surface-3:#e8edf0;--color-border:#d9dee2;--color-text:#1c2327;--color-text-muted:#5a6a74;--shadow-1:0 1px 2px rgba(0,0,0,.08);--shadow-2:0 2px 8px rgba(0,0,0,.08);--shadow-3:0 4px 20px rgba(0,0,0,.1)}html{color-scheme:light dark}body{background:var(--color-bg);transition:background-color var(--transition-med),color var(--transition-fast)}.theme-toggle-btn,body{color:var(--color-text)}.theme-toggle-btn{background:transparent;border:1px solid var(--color-border);padding:.5rem .75rem;border-radius:var(--radius-sm);cursor:pointer;display:inline-flex;gap:.5rem;align-items:center;font-size:.875rem}.theme-toggle-btn:hover{background:var(--color-surface-2)}.theme-toggle-btn:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}body{font-family:var(--font-sans);line-height:1.55;-webkit-font-smoothing:antialiased}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.15;letter-spacing:-.02em}h1{font-size:clamp(2.2rem,2.2rem + (.9)*(100vw - 320px)/(960),3.1rem)}h2{font-size:clamp(1.8rem,1.8rem + (.6)*(100vw - 320px)/(960),2.4rem)}h3{font-size:clamp(1.5rem,1.5rem + (.5)*(100vw - 320px)/(960),2rem)}h4{font-size:clamp(1.3rem,1.3rem + (.3)*(100vw - 320px)/(960),1.6rem)}h5{font-size:1.125rem}h6{font-size:1rem}p{max-width:70ch}.lead{font-size:clamp(1.1rem,1rem + .6vw,1.4rem);font-weight:400}.lead,.text-muted{color:var(--color-text-muted)}code,pre{font-family:var(--font-mono);font-size:.85em;background:var(--color-surface-2);padding:.15em .35em;border-radius:var(--radius-sm)}@media(max-width:360px){h1{letter-spacing:-.01em}}.l-container{max-width:1120px;margin-inline:auto;padding-inline:clamp(.9rem,3vw,1.5rem)}@media(max-width:900px){.l-container{max-width:880px;margin-inline:auto}}@media(max-width:640px){.l-container{max-width:100%}}.l-section{padding-block:4rem;position:relative}.l-section--tight{padding-block:2rem}.l-grid{display:grid;grid-gap:2rem;gap:2rem;--grid-min:15rem;grid-template-columns:repeat(auto-fit,minmax(var(--grid-min),1fr))}.l-grid--dense{--grid-min:13rem}@media(max-width:640px){.l-grid{--grid-min:13.5rem;gap:1.5rem}}@media(max-width:480px){.l-grid{--grid-min:100%;gap:1.25rem}}.u-flex-center{justify-content:center}.u-flex-between,.u-flex-center{display:flex;align-items:center}.u-flex-between{justify-content:space-between}.u-text-center{text-align:center}.u-visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.u-m-0{margin:0!important}.u-mx-0{margin-inline:0!important}.u-my-0{margin-block:0!important}.u-p-0{padding:0!important}.u-px-0{padding-inline:0!important}.u-py-0{padding-block:0!important}.u-m-0_5{margin:.25rem!important}.u-mx-0_5{margin-inline:.25rem!important}.u-my-0_5{margin-block:.25rem!important}.u-p-0_5{padding:.25rem!important}.u-px-0_5{padding-inline:.25rem!important}.u-py-0_5{padding-block:.25rem!important}.u-m-1{margin:.5rem!important}.u-mx-1{margin-inline:.5rem!important}.u-my-1{margin-block:.5rem!important}.u-p-1{padding:.5rem!important}.u-px-1{padding-inline:.5rem!important}.u-py-1{padding-block:.5rem!important}.u-m-1_5{margin:.75rem!important}.u-mx-1_5{margin-inline:.75rem!important}.u-my-1_5{margin-block:.75rem!important}.u-p-1_5{padding:.75rem!important}.u-px-1_5{padding-inline:.75rem!important}.u-py-1_5{padding-block:.75rem!important}.u-m-2{margin:1rem!important}.u-mx-2{margin-inline:1rem!important}.u-my-2{margin-block:1rem!important}.u-p-2{padding:1rem!important}.u-px-2{padding-inline:1rem!important}.u-py-2{padding-block:1rem!important}.u-m-3{margin:1.5rem!important}.u-mx-3{margin-inline:1.5rem!important}.u-my-3{margin-block:1.5rem!important}.u-p-3{padding:1.5rem!important}.u-px-3{padding-inline:1.5rem!important}.u-py-3{padding-block:1.5rem!important}.u-m-4{margin:2rem!important}.u-mx-4{margin-inline:2rem!important}.u-my-4{margin-block:2rem!important}.u-p-4{padding:2rem!important}.u-px-4{padding-inline:2rem!important}.u-py-4{padding-block:2rem!important}.u-m-6{margin:3rem!important}.u-mx-6{margin-inline:3rem!important}.u-my-6{margin-block:3rem!important}.u-p-6{padding:3rem!important}.u-px-6{padding-inline:3rem!important}.u-py-6{padding-block:3rem!important}.u-m-8{margin:4rem!important}.u-mx-8{margin-inline:4rem!important}.u-my-8{margin-block:4rem!important}.u-p-8{padding:4rem!important}.u-px-8{padding-inline:4rem!important}.u-py-8{padding-block:4rem!important}:where(button,a).is-loading{position:relative;color:transparent!important;pointer-events:none}:where(button,a).is-loading:after{content:"";position:absolute;inset:0;margin:auto;width:1.1em;height:1.1em;border:2px solid var(--color-primary-accent);border-top:2px solid transparent;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}:root{--z-nav-menu:140}.c-nav{position:fixed;top:0;left:0;right:0;z-index:var(--z-nav);backdrop-filter:blur(16px) saturate(1.4);-webkit-backdrop-filter:blur(16px) saturate(1.4);background:rgba(15,20,24,.78);border-bottom:1px solid var(--color-border);display:flex;align-items:center;transition:background-color var(--transition-med),padding var(--transition-fast),opacity .35s ease;max-width:100%;overflow-x:clip}[data-theme=light] .c-nav{background:hsla(0,0%,100%,.74)}.c-nav.is-faded{opacity:0;transition:opacity .4s ease .12s}.c-nav.is-faded:focus-within,.c-nav.is-faded:hover{opacity:.92;transition-delay:0s}@media(prefers-reduced-motion:reduce){.c-nav,.c-nav.is-faded{transition:none}}.c-nav__inner{display:flex;align-items:center;justify-content:space-between;width:100%;max-width:1200px;margin-inline:auto;padding:.75rem 1.25rem;gap:1rem}.c-nav.is-scrolled .c-nav__inner{padding:.35rem 1.25rem}.c-nav__brand{display:flex;align-items:center;font-weight:600;font-size:1.1rem;color:var(--color-text);text-decoration:none;gap:.75rem}.c-nav__brand img,.c-nav__logo{height:48px;width:auto;max-height:48px;object-fit:contain;border-radius:0;display:block;filter:drop-shadow(0 1px 2px rgba(0,0,0,.4))}.c-nav.is-scrolled .c-nav__brand img,.c-nav.is-scrolled .c-nav__logo{height:40px;max-height:40px}.c-nav__list{list-style:none;display:flex;gap:.5rem;margin:0;padding:0}.c-nav__link{position:relative;padding:.6rem .9rem;border-radius:var(--radius-sm);color:var(--color-text-muted);font-size:.9rem;font-weight:500;letter-spacing:.02em;text-decoration:none;width:auto;text-align:center}.c-nav__link:hover,.c-nav__link[aria-current=page]{color:var(--color-text);background:var(--color-surface-2)}.c-nav__link:after{content:"";position:absolute;left:.75rem;right:.75rem;bottom:.4rem;height:2px;background:var(--color-primary);transform:scaleX(0);transform-origin:left;transition:transform var(--transition-med)}.c-nav__link:hover:after,.c-nav__link[aria-current=page]:after{transform:scaleX(1)}.c-nav__toggle{display:none;background:none;border:0;padding:.6rem;font-size:1.6rem;line-height:1;cursor:pointer;transition:transform var(--transition-fast);align-items:center;justify-content:center;min-width:44px;min-height:44px;position:relative;-webkit-tap-highlight-color:rgba(0,0,0,0)}.c-nav__toggle i{pointer-events:none}.c-nav__toggle .icon{width:1.5rem;height:1.5rem;display:block}.theme-toggle-btn .icon{width:1.25rem;height:1.25rem;display:block}.c-nav__toggle.is-open{transform:rotate(90deg)}[data-theme=dark] .c-nav__toggle{color:#fff}[data-theme=light] .c-nav__toggle{color:#000}@media(max-width:900px){.c-nav__toggle{display:inline-flex;z-index:calc(var(--z-nav-menu) + 2)}.c-nav__list{position:absolute;top:100%;right:.75rem;left:auto;min-width:clamp(220px,70vw,320px);flex-direction:column;align-items:stretch;gap:.25rem;background:var(--color-surface-1);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:.75rem .5rem;box-shadow:var(--shadow-2);max-height:70vh;overflow:auto;opacity:0;transform:scaleY(.92);transform-origin:top;visibility:hidden;pointer-events:none;transition:opacity var(--transition-med),transform var(--transition-med),visibility 0s linear .25s;max-width:calc(100vw - 1.5rem)}.c-nav__list.is-open{opacity:1;transform:scaleY(1);visibility:visible;pointer-events:auto;transition:opacity var(--transition-med),transform var(--transition-med),visibility 0s;z-index:var(--z-nav-menu)}.c-nav__link{width:100%;text-align:left;padding:.65rem .85rem;border-radius:var(--radius-sm)}}@media(max-width:360px){.c-nav__link{padding:.55rem .65rem;font-size:.8rem}}@media(min-width:1200px){.c-nav__list{gap:.75rem}}@media(prefers-reduced-motion:reduce){.c-nav__list{transform:none!important}.c-nav__list,.c-nav__toggle{transition:none}}.c-hero{position:relative;min-height:min(85vh,900px);display:flex;align-items:center;background:radial-gradient(circle at 25% 25%,rgba(0,153,255,.25),transparent 60%),var(--color-surface-0);overflow:hidden}.c-hero__bg{position:absolute;inset:0;z-index:-2;background:url(/img/items/home.jpg) 50%/cover no-repeat;filter:brightness(.6) saturate(1.1)}.c-hero__overlay{position:absolute;inset:0;z-index:-1;background:linear-gradient(120deg,rgba(15,20,24,.85),rgba(15,20,24,.35))}[data-theme=light] .c-hero__overlay{background:linear-gradient(120deg,rgba(246,248,249,.9),rgba(246,248,249,.4))}.c-hero__inner{max-width:1100px;margin-inline:auto;padding:6rem 1.25rem 4rem}.c-hero__kicker{text-transform:uppercase;font-size:.75rem;letter-spacing:.2em;color:var(--color-primary-accent);font-weight:600;margin-bottom:1rem}.c-hero__title{margin:0 0 1.25rem;background:var(--gradient-primary);-webkit-background-clip:text;background-clip:text;color:transparent}.c-hero__subtitle{max-width:60ch;margin:0 0 2rem;color:var(--color-text-muted)}.c-hero__actions{display:flex;gap:1rem;flex-wrap:wrap}@media(max-width:640px){.c-hero__inner{padding:4rem 1rem 3rem}.c-hero{min-height:70vh}}@media(max-width:480px){.c-hero{min-height:62vh}.c-hero__actions{flex-direction:column;align-items:stretch}}@media(max-width:360px){.c-hero__inner{padding:3.25rem .85rem 2.5rem}}.c-card{position:relative;display:flex;flex-direction:column;background:var(--color-surface-1);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden;transition:transform var(--transition-med),box-shadow var(--transition-med),border-color var(--transition-fast)}.c-card:hover{box-shadow:var(--shadow-2);transform:translateY(-4px);border-color:var(--color-primary)}.c-card__media{aspect-ratio:16/9;overflow:hidden;background:var(--color-surface-2)}.c-card__media img{width:100%;height:100%;object-fit:cover;transition:transform 2.5s ease}.c-card:hover .c-card__media img{transform:scale(1.08)}.c-card__body{padding:1rem 1.1rem 1.25rem;display:flex;flex-direction:column;gap:.75rem}.c-card__title{font-size:1.1rem;margin:0;font-weight:600}.c-card__excerpt{font-size:.9rem;line-height:1.4;color:var(--color-text-muted);margin:0}.c-card__tags{list-style:none;display:flex;flex-wrap:wrap;gap:.4rem;margin:0;padding:0}.c-card--elevated{box-shadow:var(--shadow-2)}.c-card--interactive{cursor:pointer}.c-card--project .c-card__title{font-size:clamp(1.1rem,1.1rem + (.3)*(100vw - 320px)/(960),1.4rem)}@media(max-width:480px){.c-card__media{aspect-ratio:16/10}}@media(max-width:360px){.c-card__body{padding:.85rem .85rem 1rem}}.c-card--compact{padding:.75rem}.c-badge{--_bg:var(--color-surface-2);display:inline-flex;align-items:center;gap:.4ch;background:var(--_bg);color:var(--color-text-muted);font-size:.65rem;letter-spacing:.08em;text-transform:uppercase;padding:.4rem .55rem;border-radius:var(--radius-sm);border:1px solid var(--color-border);font-weight:600;line-height:1}.c-badge--primary{--_bg:rgba(0,153,255,.12);color:var(--color-primary);border-color:rgba(0,153,255,.4)}.c-badge--accent{--_bg:rgba(92,194,255,.12);color:var(--color-primary-accent);border-color:rgba(92,194,255,.4)}.c-badge--success{--_bg:rgba(46,175,110,.12);color:var(--color-success);border-color:rgba(46,175,110,.4)}.c-badge--warn{--_bg:rgba(255,179,71,.14);color:var(--color-warn);border-color:rgba(255,179,71,.5)}.c-badge--error{--_bg:rgba(255,77,97,.14);color:var(--color-error);border-color:rgba(255,77,97,.45)}.c-skill-chip{--_ring:var(--color-primary);position:relative;display:inline-flex;align-items:center;gap:.6rem;font-size:.8rem;background:var(--color-surface-2);color:var(--color-text);border:1px solid var(--color-border);padding:.55rem .85rem;border-radius:999px;cursor:pointer;line-height:1;transition:background-color var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast)}.c-skill-chip:hover{background:var(--color-surface-3);border-color:var(--_ring)}.c-skill-chip:active{transform:scale(.97)}.c-skill-chip:focus-visible{outline:2px solid var(--_ring);outline-offset:2px}.c-skill-chip[data-level]:after{content:attr(data-level);position:absolute;top:-6px;right:-6px;background:var(--_ring);color:#fff;width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.55rem;font-weight:700;box-shadow:0 0 0 2px var(--color-surface-1)}.c-progress{--_bg:var(--color-surface-2);--_fill:var(--color-primary);position:relative;height:10px;background:var(--_bg);border-radius:var(--radius-sm);overflow:hidden}.c-progress__bar{position:absolute;inset:0;width:var(--value,0);background:var(--_fill);transition:width 1s ease}.c-progress[role=progressbar]{outline:none}.c-progress[role=progressbar]:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.c-progress__label{font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-muted);margin-bottom:.25rem;display:block}.c-timeline{position:relative;margin:0;padding:0;list-style:none}.c-timeline:before{content:"";position:absolute;left:calc(50% - 1px);top:0;bottom:0;width:2px;background:linear-gradient(var(--color-surface-3),var(--color-border))}.c-timeline__item{position:relative;width:50%;padding:0 2.5rem 2.5rem}.c-timeline__item:nth-child(odd){left:0;text-align:right}.c-timeline__item:nth-child(2n){left:50%}.c-timeline__node{position:absolute;top:0;width:14px;height:14px;background:var(--color-primary);border-radius:50%;transform:translate(-50%,4px);left:50%;box-shadow:0 0 0 4px var(--color-surface-0),0 0 0 6px var(--color-primary);animation:pulse 4s infinite}.c-timeline__title{font-size:1rem;margin:0 0 .35rem;font-weight:600}.c-timeline__meta{font-size:.7rem;text-transform:uppercase;letter-spacing:.14em;color:var(--color-text-muted);margin-bottom:.5rem}.c-timeline__body{font-size:.85rem;color:var(--color-text-muted)}@media(max-width:640px){.c-timeline:before{left:0}.c-timeline__item,.c-timeline__item:nth-child(2n),.c-timeline__item:nth-child(odd){left:0;width:100%;text-align:left;padding-left:2rem}.c-timeline__node{left:0;transform:translate(-50%,4px)}}@keyframes pulse{0%,to{box-shadow:0 0 0 4px var(--color-surface-0),0 0 0 6px var(--color-primary)}50%{box-shadow:0 0 0 4px var(--color-surface-0),0 0 0 12px rgba(0,153,255,.15)}}.c-accordion{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-1);overflow:hidden}.c-accordion+.c-accordion{margin-top:1rem}.c-accordion__item+.c-accordion__item{border-top:1px solid var(--color-border)}.c-accordion__button{all:unset;display:flex;width:100%;align-items:center;justify-content:space-between;padding:.85rem 1rem;cursor:pointer;font-weight:500;font-size:.95rem;color:var(--color-text)}.c-accordion__button:hover{background:var(--color-surface-2)}.c-accordion__button:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.c-accordion__panel{max-height:0;overflow:hidden;transition:max-height var(--transition-med) ease}.c-accordion__panel-inner{padding:0 1rem 1rem;font-size:.85rem;color:var(--color-text-muted)}.c-accordion__item.is-open .c-accordion__panel{max-height:400px}.btn{--_bg:var(--color-primary);--_color:#fff;--_border:var(--color-primary);-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.25rem;font-weight:600;font-size:.9rem;letter-spacing:.02em;line-height:1;border-radius:var(--radius-sm);border:1px solid var(--_border);color:var(--_color);background:var(--_bg);cursor:pointer;position:relative;transition:background-color var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast);text-decoration:none}.btn:hover{filter:brightness(1.08)}.btn:active{transform:translateY(1px)}.btn:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.btn--subtle{--_bg:var(--color-surface-2);--_color:var(--color-text);--_border:var(--color-border)}.btn--ghost{--_bg:transparent;--_color:var(--color-text);--_border:var(--color-border)}.btn--outline{--_bg:transparent;--_color:var(--color-primary);--_border:var(--color-primary)}.btn--danger{--_bg:var(--color-error);--_color:#fff;--_border:var(--color-error)}.btn--sm{padding:.5rem .85rem;font-size:.75rem}.btn--lg{padding:1rem 1.5rem;font-size:1rem}.c-form{display:grid;grid-gap:1.25rem;gap:1.25rem}.c-field{position:relative;display:flex;flex-direction:column}.c-field__input{font:inherit;padding:.85rem 1rem;border:1px solid var(--color-border);background:var(--color-surface-1);color:var(--color-text);border-radius:var(--radius-sm);transition:border-color var(--transition-fast),background-color var(--transition-fast)}.c-field__input:hover{border-color:var(--color-text-muted)}.c-field__input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary)}.c-field__label{position:absolute;left:.9rem;top:.95rem;font-size:.8rem;color:var(--color-text-muted);pointer-events:none;background:transparent;transition:transform var(--transition-fast),color var(--transition-fast),background-color var(--transition-fast);padding:0 .25rem}.c-field__input:focus+.c-field__label,.c-field__input:not(:placeholder-shown)+.c-field__label{transform:translateY(-140%) scale(.85);color:var(--color-primary-accent);background:var(--color-surface-1)}.c-field.is-valid .c-field__input{border-color:var(--color-success)}.c-field.is-invalid .c-field__input{border-color:var(--color-error)}.c-field__message{font-size:.7rem;margin-top:.4rem;color:var(--color-text-muted)}.c-field.is-invalid .c-field__message{color:var(--color-error)}@media(min-width:900px){.c-form--split{grid-template-columns:1fr 1fr;gap:1.5rem}}@media(max-width:360px){.c-field__input{padding:.7rem .75rem}}.c-footer{background:var(--color-surface-1);border-top:1px solid var(--color-border);margin-top:4rem}.c-footer__inner{max-width:1200px;margin-inline:auto;padding:2.5rem 1.25rem;display:grid;grid-gap:2.5rem;gap:2.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.c-footer__brand{font-weight:600;font-size:1rem;margin:0 0 .75rem}.c-footer__col-title{text-transform:uppercase;font-size:.7rem;letter-spacing:.14em;color:var(--color-text-muted);margin:0 0 1rem}.c-footer a{color:var(--color-text-muted);text-decoration:none;font-size:.85rem}.c-footer a:hover{color:var(--color-text)}.c-footer__bottom{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-top:1px solid var(--color-border);font-size:.7rem;color:var(--color-text-muted)}@media(max-width:480px){.c-footer__bottom{flex-direction:column;gap:.75rem}}@media(max-width:640px){.c-footer__inner{grid-template-columns:1fr 1fr}}@media(max-width:480px){.c-footer__inner{grid-template-columns:1fr;gap:1.5rem}}.c-skill-matrix{display:grid;grid-gap:2rem;gap:2rem}.c-skill-matrix__filters{display:flex;flex-wrap:wrap;gap:.5rem}.c-skill-matrix__group{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:1.25rem 1.25rem 1.5rem;background:var(--color-surface-1);display:grid;grid-gap:1rem;gap:1rem}.c-skill-matrix__group-title{margin:0;font-size:.9rem;text-transform:uppercase;letter-spacing:.12em;color:var(--color-text-muted)}.c-skill-matrix__chips{display:flex;flex-wrap:wrap;gap:.6rem}.c-skill-matrix__more{max-height:0;overflow:hidden;transition:max-height var(--transition-med)}.c-skill-matrix__more.is-open{max-height:600px}.c-skill-details{margin:.25rem 0 0;padding-left:1.1rem;font-size:.65rem;color:var(--color-text-muted);display:grid;grid-gap:.2rem;gap:.2rem;list-style:disc}.c-skill-details[hidden]{display:none}.c-skill-chip--detail{background:var(--color-surface-3)}@media(max-width:480px){.c-skill-matrix__group{padding:1rem 1rem 1.25rem}}@media(max-width:360px){.c-skill-matrix__filters{overflow-x:auto;flex-wrap:nowrap;-webkit-overflow-scrolling:touch;max-width:100%}}@keyframes fade-slide-up{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.a-reveal{opacity:0;transform:translateY(24px);transition:opacity .8s ease,transform .8s ease}.a-reveal.is-visible{opacity:1;transform:translateY(0)}@media(prefers-reduced-motion:reduce){.a-reveal{opacity:1!important;transform:none!important}}@media(max-width:640px){.l-section{padding-block:3rem}}@media(max-width:480px){.l-section{padding-block:2.25rem}}@media(min-width:1536px){.c-hero__inner{max-width:1200px}.c-card__title{font-size:1.2rem}}@media(max-width:360px){.c-form{gap:1rem}.c-nav__link,button{min-height:44px}}@media(max-width:900px){.c-hero{min-height:70vh}.c-hero__inner{padding:4.5rem 1.1rem 3rem}}@media(max-width:480px){.c-hero{min-height:60vh}.c-hero__inner{padding:3.5rem 1rem 2.5rem}.c-hero__title{font-size:clamp(1.9rem,6vw,2.4rem)}.l-grid--cols-3,.l-grid--cols-4{grid-template-columns:1fr}.c-card__media{aspect-ratio:16/10}.c-footer__inner{grid-template-columns:1fr}}@media(max-height:580px){.c-hero__inner{padding-top:3rem}}@media(max-height:330px){.c-hero__title{font-size:1.6rem}.c-hero__inner{padding-top:2.25rem}}body,html{min-height:100%;overflow-x:hidden;width:100%}