:root{--surface:#141311;--surface-dim:#141311;--surface-bright:#3a3937;--surface-container-lowest:#0e0e0c;--surface-container-low:#1c1c19;--surface-container:#20201d;--surface-container-high:#2a2a28;--surface-container-highest:#353532;--surface-variant:#353532;--on-surface:#e5e2de;--on-surface-variant:#dcc2af;--on-background:#e5e2de;--background:#141311;--primary:#ffb77b;--primary-container:#f28705;--primary-fixed:#ffdcc2;--primary-fixed-dim:#ffb77b;--on-primary:#4d2700;--on-primary-container:#592e00;--inverse-primary:#8f4d00;--secondary:#ffb68b;--secondary-container:#ef7201;--secondary-fixed:#ffdbc8;--on-secondary:#522300;--on-secondary-container:#4f2100;--tertiary:#ffb598;--tertiary-container:#ff7d43;--on-tertiary:#591d00;--on-tertiary-container:#672200;--error:#ffb4ab;--error-container:#93000a;--outline:#a48c7b;--outline-variant:#564335;--inverse-surface:#e5e2de;--inverse-on-surface:#31302e;--font-headline:"Bricolage Grotesque", sans-serif;--font-body:"Bricolage Grotesque", sans-serif;--font-accent:"Instrument Serif", serif;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-6:1.5rem;--space-8:2rem;--space-12:3rem;--space-16:4rem;--space-24:6rem;--radius-sm:.125rem;--radius-md:.25rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-full:9999px;--ease-premium:cubic-bezier(.4, 0, .2, 1);--duration-fast:.2s;--duration-normal:.3s;--duration-slow:.7s}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-synthesis:none}body{font-family:var(--font-body);color:var(--on-surface);background-color:var(--surface);font-size:1rem;line-height:1.6;overflow-x:hidden}::selection{background-color:var(--primary-container);color:var(--on-primary-container)}h1,h2,h3,h4,h5,h6{font-family:var(--font-headline);color:var(--on-surface);line-height:1.1}a{color:inherit;text-decoration:none}ul,ol{list-style:none}img{max-width:100%;display:block}button{cursor:pointer;color:inherit;background:0 0;border:none;font-family:inherit}input,textarea{font-family:inherit;font-size:inherit;color:inherit}.material-symbols-outlined{font-variation-settings:"FILL" 0, "wght" 400, "GRAD" 0, "opsz" 24;vertical-align:middle}.bg-grid-subtle{background-image:radial-gradient(circle,#ffb77b08 1px,#0000 1px);background-size:40px 40px}.glow-orb{filter:blur(120px);opacity:.15;pointer-events:none}.reveal{opacity:0;transition:opacity .8s var(--ease-premium), transform .8s var(--ease-premium);transform:translateY(32px)}.reveal.revealed{opacity:1;transform:translateY(0)}input:focus,textarea:focus{outline:none;box-shadow:0 0 0 2px #f2870540}.container{width:100%;max-width:1536px;padding-inline:var(--space-8);margin-inline:auto}@media (width<=768px){.container{padding-inline:var(--space-4)}}.navbar{z-index:50;transition:background-color var(--duration-normal) var(--ease-premium), box-shadow var(--duration-normal) var(--ease-premium);-webkit-backdrop-filter:blur(20px);background-color:#0c0a09b3;border-bottom:1px solid #78716c1a;position:fixed;top:0;left:0;right:0}.navbar.scrolled{background-color:#0c0a09eb;box-shadow:0 25px 50px -12px #7845000d}.navbar__inner{max-width:1536px;padding:var(--space-4) var(--space-8);justify-content:space-between;align-items:center;margin-inline:auto;display:flex}.navbar__brand{font-family:var(--font-headline);letter-spacing:-.02em;color:var(--on-surface);font-size:1.25rem;font-weight:700}.navbar__links{align-items:center;gap:var(--space-8);display:flex}.navbar__link{font-family:var(--font-headline);color:#a8a29e;transition:color var(--duration-normal) var(--ease-premium);font-size:.9rem}.navbar__link:hover,.navbar__link--active{color:var(--on-surface)}.navbar__link--active{color:var(--primary);border-bottom:1px solid var(--primary);padding-bottom:var(--space-1);font-weight:700}.navbar__cta{background:var(--primary-container);color:var(--on-primary-container);padding:var(--space-2) var(--space-6);border-radius:var(--radius-full);font-family:var(--font-headline);transition:transform var(--duration-fast) var(--ease-premium), box-shadow var(--duration-normal) var(--ease-premium);font-size:.9rem;font-weight:700}.navbar__cta:hover{transform:scale(1.05);box-shadow:0 10px 25px #f2870540}.navbar__cta:active{transform:scale(.95)}.navbar__toggle{cursor:pointer;padding:var(--space-2);background:0 0;border:none;flex-direction:column;gap:5px;display:none}.navbar__toggle span{background-color:var(--on-surface);width:24px;height:2px;transition:transform var(--duration-normal) var(--ease-premium), opacity var(--duration-normal) var(--ease-premium);display:block}.navbar__toggle.open span:first-child{transform:rotate(45deg)translate(5px,5px)}.navbar__toggle.open span:nth-child(2){opacity:0}.navbar__toggle.open span:nth-child(3){transform:rotate(-45deg)translate(5px,-5px)}.navbar__mobile-menu{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);padding:var(--space-6) var(--space-8);gap:var(--space-4);border-bottom:1px solid var(--outline-variant);background-color:#0c0a09f2;flex-direction:column;display:none;position:absolute;top:100%;left:0;right:0}.navbar__mobile-menu.open{display:flex}.navbar__mobile-link{font-family:var(--font-headline);color:#a8a29e;padding:var(--space-2) 0;transition:color var(--duration-normal);font-size:1.1rem}.navbar__mobile-link:hover{color:var(--primary)}@media (width<=768px){.navbar__links,.navbar__cta{display:none}.navbar__toggle{display:flex}.navbar__inner{padding:var(--space-3) var(--space-4)}}.hero{min-height:100vh;padding-top:8rem;padding-bottom:var(--space-24);justify-content:center;align-items:center;display:flex;position:relative}.hero__inner{align-items:center;gap:var(--space-4) var(--space-12);grid-template-columns:1.1fr .9fr;grid-template-areas:"badge image""title image""description image""actions image";width:100%;display:grid}.hero__badge{align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-4);border-radius:var(--radius-full);color:var(--primary-fixed-dim);width:fit-content;margin-bottom:var(--space-4);background-color:#ef72011f;border:1px solid #ef720133;grid-area:badge;font-size:.875rem;font-weight:500;display:inline-flex}.hero__badge-dot{background-color:#22c55e;border-radius:50%;width:8px;height:8px;animation:2s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.hero__title{letter-spacing:-.04em;color:var(--on-background);margin-bottom:var(--space-8);grid-area:title;font-size:clamp(3.5rem,8.5vw,6.5rem);font-weight:800;line-height:.95}.hero__title-accent{font-family:var(--font-accent);color:var(--primary-fixed-dim);margin-block:.1em;font-size:clamp(2.5rem,6.5vw,5.5rem);font-style:italic;font-weight:400;display:block}.hero__description{color:var(--on-surface-variant);max-width:38rem;margin-bottom:var(--space-8);grid-area:description;font-size:clamp(1.1rem,1.8vw,1.35rem);font-weight:500;line-height:1.6}.hero__actions{gap:var(--space-6);padding-top:var(--space-2);flex-wrap:wrap;grid-area:actions;display:flex}.hero__btn-primary{align-items:center;gap:var(--space-2);padding:var(--space-4) var(--space-8);background:var(--primary-container);color:var(--on-primary-container);border-radius:var(--radius-md);transition:box-shadow var(--duration-normal) var(--ease-premium), transform var(--duration-fast) var(--ease-premium);font-size:1.125rem;font-weight:700;display:inline-flex}.hero__btn-primary:hover{transform:translateY(-2px);box-shadow:0 20px 40px #ffb77b33}.hero__btn-secondary{padding:var(--space-4) var(--space-8);color:var(--primary);font-family:var(--font-accent);border-radius:var(--radius-md);transition:background-color var(--duration-normal) var(--ease-premium);border:1px solid #ffb77b4d;align-items:center;font-size:1.25rem;font-style:italic;display:inline-flex}.hero__btn-secondary:hover{background-color:#ffb77b0d}.hero__image-container{grid-area:image;justify-content:center;align-items:center;display:flex;position:relative}.hero__image-wrapper{aspect-ratio:.85;border-radius:var(--radius-xl);background-color:var(--surface-container-high);border:4px solid #fff;width:100%;max-width:450px;position:relative;overflow:hidden;box-shadow:0 40px 100px -20px #0009}@media (width>=1440px){.hero__image-wrapper{max-width:580px}.hero__inner{gap:var(--space-4) var(--space-24)}}.hero__image{object-fit:cover;width:100%;height:100%;transition:transform var(--duration-slow) var(--ease-premium)}.hero__image-wrapper:hover .hero__image{transform:scale(1.04)}.hero__image-glow{background:radial-gradient(circle, var(--primary-container) 0%, transparent 70%);opacity:.15;z-index:-1;pointer-events:none;position:absolute;inset:-15%}.hero__orb{pointer-events:none;border-radius:50%;position:absolute}.hero__orb--primary{background:radial-gradient(circle, var(--primary-container) 0%, transparent 60%);opacity:.15;width:800px;height:800px;top:-10%;right:-15%}.hero__orb--secondary{background:radial-gradient(circle, var(--secondary-container) 0%, transparent 60%);opacity:.12;width:1000px;height:1000px;bottom:5%;left:-20%}@media (width>=1536px){.hero__inner{gap:var(--space-4) var(--space-16);grid-template-columns:1.15fr .85fr;max-width:1600px;margin-inline:auto}.hero__image-wrapper{max-width:620px}.hero__title{font-size:8rem}.container{max-width:1680px}}@media (width<=1024px){.hero{padding-top:7rem;padding-bottom:var(--space-16)}.hero__inner{gap:var(--space-4);text-align:center;grid-template-columns:1fr;grid-template-areas:"badge""title""image""description""actions"}.hero__badge,.hero__description,.hero__actions{margin-inline:auto}.hero__actions{justify-content:center}.hero__image-container{margin-top:var(--space-4);margin-bottom:var(--space-8)}.hero__image-wrapper{max-width:380px}}@media (width<=768px){.hero{padding-top:6rem}.hero__actions{flex-direction:column;width:100%}.hero__btn-primary,.hero__btn-secondary{text-align:center;justify-content:center;width:100%}.hero__title{font-size:clamp(3rem,12vw,4.5rem)}}.marquee{padding-block:var(--space-12);position:relative}.marquee__track{padding-block:var(--space-8);border-top:1px solid #5643354d;border-bottom:1px solid #5643354d;overflow:hidden}.marquee__content{gap:var(--space-12);opacity:.55;align-items:center;width:max-content;animation:60s linear infinite marquee-scroll;display:flex}.marquee__item{font-family:var(--font-headline);color:var(--on-surface-variant);padding-inline:var(--space-8);white-space:nowrap;-webkit-user-select:none;user-select:none;font-size:clamp(1.5rem,3vw,2.5rem);font-weight:700}@keyframes marquee-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}.process{padding-block:var(--space-24);background-color:var(--surface-container-low);position:relative;overflow:hidden}.process__header{margin-bottom:var(--space-16);text-align:center}.section-label{font-family:var(--font-accent);color:var(--primary);font-size:1.5rem;font-style:italic}.process__grid{gap:var(--space-8);grid-template-columns:repeat(3,1fr);display:grid}.process__step{gap:var(--space-4);padding:var(--space-12) var(--space-8);border-radius:var(--radius-xl);transition:transform var(--duration-normal) var(--ease-premium), background-color var(--duration-normal) var(--ease-premium), border-color var(--duration-normal) var(--ease-premium);background-color:#20201d66;border:1px solid #56433533;flex-direction:column;height:100%;display:flex;position:relative}.process__step:hover{border-color:var(--primary);background-color:#20201dcc;transform:translateY(-10px)}.process__number{top:var(--space-6);right:var(--space-8);font-family:var(--font-headline);color:var(--primary);opacity:.04;pointer-events:none;transition:opacity var(--duration-normal);font-size:5rem;font-weight:800;line-height:1;position:absolute}.process__step:hover .process__number{opacity:.08}.process__icon{color:var(--primary);margin-bottom:var(--space-2);font-size:2.75rem}.process__title{letter-spacing:-.01em;font-size:1.75rem;font-weight:700}.process__description{color:var(--on-surface-variant);font-size:1.05rem;line-height:1.65}@media (width<=1024px){.process__grid{grid-template-columns:1fr;max-width:36rem;margin-inline:auto}}@media (width<=768px){.process{padding-block:var(--space-16)}.process__step{padding:var(--space-8) var(--space-6)}}.projects{padding-block:var(--space-24)}.projects__header{margin-bottom:var(--space-16);justify-content:space-between;align-items:flex-end;display:flex}.projects__grid{gap:var(--space-16);grid-template-columns:repeat(2,1fr);display:grid}.project-card{gap:var(--space-6);flex-direction:column;display:flex}.project-card:nth-child(2n){margin-top:var(--space-24)}.project-card__image-wrapper{aspect-ratio:4/3;background-color:var(--surface-container-high);border-radius:var(--radius-lg);border:4px solid #f28705;position:relative;overflow:hidden}.project-card__image{object-fit:cover;filter:grayscale();width:100%;height:100%;transition:filter var(--duration-slow) ease-out, transform var(--duration-slow) ease-out}.project-card:hover .project-card__image{filter:grayscale(0%);transform:scale(1.05)}.project-card__overlay{transition:background-color var(--duration-normal) var(--ease-premium);pointer-events:none;background-color:#0c0a0933;position:absolute;inset:0}.project-card:hover .project-card__overlay{background-color:#0000}.project-card__meta{justify-content:space-between;align-items:flex-start;display:flex}.project-card__info{gap:var(--space-3);flex-direction:column;display:flex}.project-card__title{font-size:clamp(1.5rem,3vw,2.5rem);font-weight:700}.project-card__tags{gap:var(--space-2);flex-wrap:wrap;display:flex}.project-card__tag{padding:var(--space-1) var(--space-3);background-color:var(--secondary-container);color:var(--on-secondary-container);border-radius:var(--radius-full);font-size:.75rem;font-weight:700}.project-card__link{align-items:center;gap:var(--space-1);color:var(--primary);transition:transform var(--duration-normal) var(--ease-premium);white-space:nowrap;padding-top:var(--space-1);flex-shrink:0;font-weight:700;display:inline-flex}.project-card__link:hover{transform:translate(8px)}@media (width<=768px){.projects__grid{grid-template-columns:1fr}.project-card:nth-child(2n){margin-top:0}}.experience{padding-block:var(--space-24)}.experience__header{margin-bottom:var(--space-16)}.experience__timeline{padding-left:var(--space-12);gap:var(--space-12);border-left:2px solid #ffb77b4d;flex-direction:column;display:flex;position:relative}.experience__entry{position:relative}.experience__dot{left:calc(var(--space-12) * -1 - 8px);background-color:var(--primary);border:4px solid var(--surface);border-radius:50%;width:16px;height:16px;position:absolute;top:8px}.experience__top{gap:var(--space-2);margin-bottom:var(--space-4);flex-direction:column;display:flex}@media (width>=769px){.experience__top{flex-direction:row;justify-content:space-between;align-items:center}}.experience__role{font-size:1.875rem;font-weight:700}.experience__date{color:var(--primary-fixed-dim);font-family:var(--font-accent);font-size:1.25rem;font-style:italic}.experience__company{color:var(--on-surface-variant);font-size:1.25rem;font-weight:500}.experience__list{gap:var(--space-4);max-width:48rem;margin-top:var(--space-4);flex-direction:column;display:flex}.experience__achievement{align-items:flex-start;gap:var(--space-3);color:#dcc2afcc;font-size:1.125rem;line-height:1.6;display:flex}.experience__achievement .material-symbols-outlined{color:var(--primary);flex-shrink:0;margin-top:2px}@media (width<=768px){.experience__timeline{padding-left:var(--space-8)}.experience__dot{left:calc(var(--space-8) * -1 - 8px)}}.contact{padding-block:var(--space-24)}.contact__grid{gap:var(--space-24);grid-template-columns:1fr 1fr;align-items:start;display:grid}.contact__left{gap:var(--space-12);flex-direction:column;display:flex}.contact__heading{letter-spacing:-.04em;font-size:clamp(3rem,8vw,8rem);font-weight:800;line-height:.85}.contact__heading-accent{font-family:var(--font-accent);color:var(--primary-fixed-dim);font-style:italic;font-weight:400}.contact__info{gap:var(--space-6);flex-direction:column;display:flex}.contact__description{color:var(--on-surface-variant);font-size:1.25rem;line-height:1.6}.contact__socials{gap:var(--space-8);display:flex}.contact__social-link{color:#a8a29e;transition:color var(--duration-normal) var(--ease-premium)}.contact__social-link:hover{color:var(--primary)}.contact__social-link .material-symbols-outlined{font-size:2.25rem}.contact__form-wrapper{background-color:var(--surface-container-low);padding:var(--space-8);border-radius:var(--radius-lg);border:1px solid #5643351a;box-shadow:0 25px 50px -12px #00000080}@media (width>=769px){.contact__form-wrapper{padding:var(--space-12)}}.contact__form{gap:var(--space-6);flex-direction:column;display:flex}.contact__field{gap:var(--space-2);flex-direction:column;display:flex}.contact__label{font-family:var(--font-headline);text-transform:uppercase;letter-spacing:.1em;color:var(--on-surface-variant);font-size:.75rem;font-weight:700}.contact__input,.contact__textarea{background-color:var(--surface-container);width:100%;padding:var(--space-4) var(--space-6);border-radius:var(--radius-sm);color:var(--on-surface);transition:box-shadow var(--duration-normal) var(--ease-premium);border:none}.contact__textarea{resize:vertical;min-height:120px}.contact__submit{background:var(--primary-container);width:100%;color:var(--on-primary-container);font-family:var(--font-headline);border-radius:var(--radius-md);transition:transform var(--duration-fast) var(--ease-premium);padding:1.25rem;font-size:1.25rem;font-weight:700}.contact__submit:hover{transform:scale(1.01)}.contact__submit:active{transform:scale(.98)}@media (width<=1024px){.contact__grid{gap:var(--space-12);grid-template-columns:1fr}}.footer{padding:var(--space-12) var(--space-8);background-color:#0c0a09;border-top:1px solid #78716c26}.footer__inner{justify-content:space-between;align-items:center;gap:var(--space-6);flex-direction:row;max-width:1536px;margin-inline:auto;display:flex}.footer__brand{font-family:var(--font-headline);color:var(--on-surface);font-size:1.125rem;font-weight:700}.footer__copyright{color:#78716c;font-size:.9rem}.footer__links{gap:var(--space-8);display:flex}.footer__link{color:#78716c;transition:color var(--duration-normal) var(--ease-premium);font-size:.9rem;text-decoration:underline}.footer__link:hover{color:var(--primary)}@media (width<=768px){.footer__inner{text-align:center;flex-direction:column}}
