:root{--c-bg:#f8f7f5;--c-ink:#17171c;--c-accent:#b3722c;--c-gradient:linear-gradient(100deg, #c07f2e 0%, #cf4d79 55%, #7a52e0 100%);--color-bg:var(--c-bg);--color-text:var(--c-ink);--color-link:var(--c-accent);--color-white:#fff;--color-black:var(--c-ink);--color-accent:var(--c-accent);--color-accent-hover:#9a5f22;--color-text-muted:#17171ca6;--color-text-light:#17171c73;--color-border:#17171c1f;--color-border-light:#17171c14;--color-bg-alt:#ffffffa6;--color-success:#2fa866;--color-warning:#e6a23c;--color-error:#d13438;--font-headline:"Archivo Black", sans-serif;--font-body:"Work Sans", sans-serif;--font-mono:"Space Mono", monospace;--font-serif:"Instrument Serif", serif;--font-sans:var(--font-body);--sp-1:4px;--sp-2:8px;--sp-3:16px;--sp-4:24px;--sp-5:40px;--sp-6:64px;--sp-7:80px;--sp-8:120px;--space-xs:8px;--space-sm:12px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-2xl:48px;--space-3xl:64px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--radius-full:999px;--shadow-sm:0 1px 2px #17171c0a, 0 4px 12px #17171c0d;--shadow-md:0 2px 4px #17171c0d, 0 12px 32px #17171c14;--shadow-lg:0 4px 8px #17171c0f, 0 20px 50px #17171c1a;--shadow-xl:0 8px 16px #17171c14, 0 24px 60px #17171c1f;--shadow-2xl:0 16px 40px #17171c24;--transition-fast:.2s ease;--transition-base:.35s cubic-bezier(.2, .7, .2, 1);--container-lg:1200px;--container-md:720px;--container-xl:1400px}*,:before,:after{box-sizing:border-box}*{margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{font-family:var(--font-body);color:var(--color-text);background-color:var(--color-bg);-webkit-font-smoothing:antialiased;font-size:16px;line-height:1.6}h1,h2,h3{font-family:var(--font-headline);color:var(--color-text);text-transform:none;margin-bottom:var(--sp-4);line-height:1.1}h4{font-family:var(--font-body);font-size:22px;font-weight:600;line-height:1.2}h1{font-size:clamp(3rem,10vw,64px)}h2{font-size:clamp(2rem,8vw,48px)}h3{font-size:clamp(1.5rem,6vw,32px)}p{margin-bottom:var(--sp-4)}a{color:var(--color-link);text-underline-offset:4px;text-decoration:underline}main a:hover{color:var(--color-accent);background:0 0}.container,.c-container{width:100%;max-width:var(--container-lg);padding:0 var(--sp-4);margin:0 auto}.container-md{max-width:var(--container-md)}.container-lg{max-width:var(--container-xl)}section{border-bottom:none;padding:0}.grain{pointer-events:none;z-index:2000;opacity:.05;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");width:200%;height:200%;animation:.9s steps(4,end) infinite grain-shift;position:fixed;inset:-50%}.eyebrow{font-family:var(--font-mono);letter-spacing:3px;text-transform:uppercase;color:#17171c80;align-items:center;gap:12px;margin-bottom:20px;font-size:12px;display:flex}.eyebrow:before{content:"";background:linear-gradient(90deg,#b3722c,#0000);width:32px;height:1px}.serif-accent{text-transform:none;letter-spacing:0;background:var(--c-gradient);-webkit-text-fill-color:transparent;color:#0000;background-clip:text;font-family:Instrument Serif,serif;font-style:italic;font-weight:400}.c-head{margin-bottom:64px}.c-head-split{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px;display:flex}.c-title{text-transform:none;letter-spacing:-.02em;color:var(--c-ink);margin-bottom:0;font-size:clamp(2.2rem,6vw,4rem);line-height:1.05}.c-link{font-family:var(--font-mono);letter-spacing:1px;text-transform:uppercase;color:#17171ca6;border-bottom:1px solid #17171c33;padding-bottom:4px;font-size:13px;text-decoration:none;transition:color .3s,border-color .3s}.c-link:hover{border-color:var(--c-accent);background:0 0;color:var(--c-accent)!important}.c-link .arrow{transition:transform .3s;display:inline-block}.c-link:hover .arrow{transform:translate(6px)}.c-btn{font-family:var(--font-body);letter-spacing:.3px;cursor:pointer;border:none;border-radius:999px;align-items:center;gap:10px;padding:16px 32px;font-size:15px;font-weight:500;text-decoration:none;transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s,background .35s,border-color .35s;display:inline-flex}.c-btn .arrow{transition:transform .35s}.c-btn:hover .arrow{transform:translate(5px)}.c-btn-primary{background:var(--c-ink);color:var(--c-bg)}.c-btn-primary:hover{background:var(--c-ink);transform:translateY(-2px);box-shadow:0 12px 40px #b0722a59;color:var(--c-bg)!important}.c-btn-ghost{color:var(--c-ink);backdrop-filter:blur(8px);background:#ffffff8c;border:1px solid #17171c29}.c-btn-ghost:hover{background:#ffffff8c;border-color:#b0722a99;transform:translateY(-2px);color:var(--c-accent)!important}.c-card{background:#ffffffa6;border:1px solid #17171c17;border-radius:20px;padding:40px 36px;transition:border-color .4s,transform .4s cubic-bezier(.2,.7,.2,1),box-shadow .4s;position:relative;overflow:hidden;box-shadow:0 1px 2px #17171c0a,0 12px 40px #17171c0d}.c-card:hover{border-color:#b0722a59;transform:translateY(-4px);box-shadow:0 2px 4px #17171c0d,0 20px 50px #17171c14}[data-reveal]{opacity:0;transition:opacity .9s cubic-bezier(.2,.7,.2,1),transform .9s cubic-bezier(.2,.7,.2,1);transition-delay:var(--d,0s);transform:translateY(28px)}[data-reveal].revealed{opacity:1;transform:translateY(0)}.page-hero{text-align:center;padding:100px 0 80px}.page-hero .eyebrow{justify-content:center}.page-hero .eyebrow:before{display:none}.page-subtitle{color:var(--color-text-muted);max-width:640px;margin:0 auto;font-size:18px;font-weight:300;line-height:1.7}.hero-eyebrow{font-family:var(--font-mono);letter-spacing:2px;text-transform:uppercase;color:#17171cb3;backdrop-filter:blur(8px);background:#ffffff80;border:1px solid #17171c24;border-radius:999px;align-items:center;gap:10px;margin-bottom:32px;padding:8px 18px;font-size:12px;display:inline-flex}.pulse-dot{background:#2fa866;border-radius:50%;width:7px;height:7px;animation:2.2s ease-out infinite pulse;box-shadow:0 0 #2fa86699}.h-stat{flex-direction:column;align-items:center;gap:6px;display:flex}.h-stat-num{font-family:var(--font-headline);background:linear-gradient(#17171c,#17171c80);-webkit-text-fill-color:transparent;background-clip:text;font-size:clamp(1.8rem,4vw,2.8rem);line-height:1}.h-stat-label{font-family:var(--font-mono);letter-spacing:2px;text-transform:uppercase;color:#17171c73;font-size:11px}.portrait-wrap{width:100%;max-width:420px;margin:0 auto;position:relative}.portrait-glow{filter:blur(30px);pointer-events:none;background:radial-gradient(circle at 30% 20%,#d66a8c33,#0000 55%),radial-gradient(circle at 75% 85%,#7c5ce02e,#0000 55%);position:absolute;inset:-12%}.portrait-frame{aspect-ratio:4/5;background:linear-gradient(160deg,#c07f2e,#cf4d79 55%,#7a52e0);border-radius:999px 999px 24px 24px;padding:3px;position:relative;overflow:hidden;box-shadow:0 24px 70px #17171c29}.portrait-frame img{object-fit:cover;border-radius:996px 996px 21px 21px;width:100%;height:100%;transition:transform .8s cubic-bezier(.2,.7,.2,1);display:block}.portrait-wrap:hover .portrait-frame img{transform:scale(1.03)}.portrait-frame--wide{aspect-ratio:16/9;border-radius:20px;padding:3px}.portrait-frame--wide img{object-fit:cover;border-radius:17px}.journey-list{border-top:1px solid #17171c17}.journey-row{border-bottom:1px solid #17171c17;grid-template-columns:180px 1fr 1fr;align-items:baseline;gap:32px;padding:36px 12px;transition:background .4s;display:grid}.journey-row:hover{background:#fff9}.journey-period{font-family:var(--font-mono);letter-spacing:1px;color:#b0722af2;font-size:13px}.journey-role{text-transform:none;letter-spacing:0;color:var(--c-ink);margin-bottom:6px;font-size:1.25rem}.journey-company{font-family:var(--font-mono);letter-spacing:1px;text-transform:uppercase;color:#17171c73;font-size:12px}.journey-desc{color:#17171c99;margin:0;font-size:14px;font-weight:300;line-height:1.8}.work-card{color:inherit;background:#fff;border:1px solid #17171c17;border-radius:20px;flex-direction:column;text-decoration:none;transition:border-color .4s,transform .4s cubic-bezier(.2,.7,.2,1),box-shadow .4s;display:flex;overflow:hidden;box-shadow:0 1px 2px #17171c0a,0 12px 40px #17171c0d}.work-card:hover{color:inherit;background:#fff;border-color:#17171c33;transform:translateY(-5px);box-shadow:0 2px 4px #17171c0d,0 24px 60px #17171c1a}.work-thumb{aspect-ratio:16/10;background:#eceae6;position:relative;overflow:hidden}.work-thumb img{object-fit:cover;width:100%;height:100%;transition:transform .8s cubic-bezier(.2,.7,.2,1)}.work-card:hover .work-thumb img{transform:scale(1.05)}.work-thumb-overlay{background:linear-gradient(#0000 55%,#17171c59);position:absolute;inset:0}.work-meta{padding:22px 26px 26px}.work-category{font-family:var(--font-mono);letter-spacing:2px;text-transform:uppercase;color:#b0722af2;font-size:11px}.work-row{justify-content:space-between;align-items:center;gap:16px;margin-top:10px;display:flex}.work-title{text-transform:none;letter-spacing:0;color:var(--c-ink);margin:0;font-size:1.15rem;line-height:1.3}.work-arrow{color:#17171c66;flex-shrink:0;font-size:20px;transition:transform .35s,color .35s}.work-card:hover .work-arrow{color:var(--c-accent);transform:translate(6px)}.pill-chip{font-family:var(--font-mono);letter-spacing:1px;text-transform:uppercase;color:#17171c8c;border:1px solid #17171c1f;border-radius:999px;padding:5px 12px;font-size:11px}.page-section{padding:60px 0 100px}.nav{z-index:1000;-webkit-backdrop-filter:blur(16px);background:#f8f7f599;border-bottom:1px solid #17171c14;position:sticky;top:0}.nav-inner{justify-content:space-between;align-items:center;height:80px;display:flex}.nav-logo{font-family:var(--font-headline);text-transform:none;letter-spacing:-.02em;color:var(--color-text);font-size:20px;text-decoration:none}.nav-logo:hover{color:var(--color-link);background:0 0}.nav-links{list-style:none;display:flex}.nav-links li{border-left:none}.nav-links a{padding:0 var(--sp-3);line-height:80px;font-family:var(--font-body);letter-spacing:1.5px;text-transform:uppercase;color:var(--color-text);font-size:12px;font-weight:500;text-decoration:none;display:block}.nav-links a:hover{color:var(--color-link);background:0 0}.nav-toggle{cursor:pointer;background:0 0;border:1px solid #17171c33;border-radius:8px;width:40px;height:40px;display:none;position:relative}.nav-toggle span{background:var(--color-text);width:24px;height:2px;margin:4px auto;transition:transform .2s;display:block}.footer{padding:var(--sp-5) 0;border-top:1px solid #17171c14}.footer-inner{justify-content:space-between;align-items:center;gap:var(--sp-4);flex-wrap:wrap;display:flex}.footer-text{font-family:var(--font-mono);letter-spacing:1px;color:#17171c73;margin:0;font-size:12px}.footer-links{gap:var(--sp-4);display:flex}.footer-links a{font-family:var(--font-mono);letter-spacing:1px;text-transform:uppercase;color:#17171c8c;font-size:12px;text-decoration:none}.footer-links a:hover{color:var(--color-link);background:0 0}.scroll-progress{background:var(--c-gradient);z-index:1001;width:0;height:2px;position:fixed;top:0;left:0}.back-to-top{bottom:var(--sp-4);right:var(--sp-4);backdrop-filter:blur(8px);width:50px;height:50px;color:var(--color-text);cursor:pointer;z-index:99;opacity:0;visibility:hidden;background:#f8f7f5b3;border:1px solid #17171c24;border-radius:50%;justify-content:center;align-items:center;transition:background .3s,transform .3s;display:flex;position:fixed}.back-to-top.visible{opacity:1;visibility:visible}.back-to-top:hover{color:var(--color-text);background:#17171c0f;transform:translateY(-2px)}.back-to-top svg{width:20px;height:20px}.lightbox{backdrop-filter:blur(8px);z-index:2000;opacity:0;visibility:hidden;background:#17171cd9;justify-content:center;align-items:center;transition:opacity .3s,visibility .3s;display:flex;position:fixed;inset:0}.lightbox.active{opacity:1;visibility:visible}.lightbox-content{max-width:90vw;max-height:90vh;position:relative}.lightbox-image{border-radius:var(--radius-lg);max-width:100%;max-height:90vh;box-shadow:var(--shadow-2xl)}.lightbox-close{color:#fff;cursor:pointer;background:#ffffff1a;border:1px solid #ffffff4d;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;display:flex;position:absolute;top:-48px;right:0}.lightbox-close svg{width:20px;height:20px}.toast-container{bottom:var(--sp-4);left:var(--sp-4);z-index:3000;gap:var(--sp-2);flex-direction:column;display:flex;position:fixed}.toast{align-items:center;gap:12px;animation:.3s slideIn;display:flex;color:var(--color-text)!important;box-shadow:var(--shadow-md)!important;font-family:var(--font-body)!important;background:#fffffff2!important;border:1px solid #17171c1a!important;border-radius:12px!important;padding:14px 18px!important;font-size:14px!important}.toast.success{border-color:#2fa86666!important}.toast.error{border-color:#d1343866!important}.toast-icon{flex-shrink:0;width:20px;height:20px}@keyframes slideIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.form-group input,.form-group textarea{width:100%;font-family:var(--font-body);color:var(--color-text);margin-bottom:var(--sp-3);background:#ffffffe6;border:1px solid #17171c24;border-radius:12px;padding:14px 16px;font-size:15px;font-weight:300;transition:border-color .3s,box-shadow .3s}.form-group input:focus,.form-group textarea:focus{border-color:#b0722a99;outline:none;box-shadow:0 0 0 4px #b0722a1f}.form-group label{font-family:var(--font-mono);letter-spacing:2px;text-transform:uppercase;color:#17171c8c;margin-bottom:10px;font-size:11px;display:block}@keyframes grain-shift{0%{transform:translate(0)}25%{transform:translate(-2%,3%)}50%{transform:translate(3%,-2%)}75%{transform:translate(-3%,-3%)}to{transform:translate(2%,2%)}}@keyframes pulse{0%{box-shadow:0 0 #2fa86680}70%{box-shadow:0 0 0 10px #2fa86600}to{box-shadow:0 0 #2fa86600}}@media (width<=900px){.journey-row{grid-template-columns:1fr;gap:12px;padding:28px 4px}}@media (width<=768px){.nav-links{background:#f8f7f5f2;border-bottom:1px solid #17171c14;flex-direction:column;display:none;position:absolute;top:80px;left:0;right:0}.nav-links.active{display:flex}.nav-links li{border-bottom:1px solid #17171c0f}.nav-links a{padding:0 var(--sp-4);line-height:60px}.nav-toggle{display:block}.page-hero{padding:72px 0 56px}}@media (prefers-reduced-motion:reduce){.grain,.pulse-dot{animation:none!important}[data-reveal]{opacity:1!important;transition:none!important;transform:none!important}}
