:root{--ink: rgba(18, 17, 15, .98);--text: rgba(42, 39, 34, .88);--muted: rgba(88, 80, 68, .72);--accent: #8f743f;--accent-dark: #66502b;--line: rgba(92, 76, 49, .115);--focus-ring: rgba(143, 116, 63, .68);--focus-halo: rgba(143, 116, 63, .18);--hover-shadow: 0 18px 40px rgba(82, 52, 11, .1);--hover-lift: -2px;--motion-fast: .18s;--motion-page-enter: .3s;--motion-ease: cubic-bezier(.2, .8, .2, 1);--native-scrollbar-width: 0px}*{box-sizing:border-box}html{min-height:100%;overflow-x:clip;scroll-behavior:smooth;background:transparent}html::-webkit-scrollbar-thumb{border:3px solid transparent;border-radius:999px;background:#5c3d0e6b;background-clip:content-box}body{margin:0;min-height:100vh;overflow-x:clip;font-family:Manrope,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--text);background:linear-gradient(90deg,#fff3,#fcf9f20f),var(--portfolio-bg-url) center / cover fixed no-repeat}#root{width:calc(100vw - var(--native-scrollbar-width));max-width:100%;min-height:100%}a,button{font:inherit}a{color:inherit;text-decoration:none}button{border:0}a:focus-visible,button:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px;box-shadow:0 0 0 3px var(--focus-halo),0 8px 24px #52340b1a}[role=tabpanel]:focus-visible{outline:2px solid rgba(143,116,63,.46);outline-offset:4px}img{max-width:100%}.route-shell{will-change:opacity}.route-shell.is-entering{animation:routeEnter var(--motion-page-enter) var(--motion-ease) both}.route-shell.is-entering-prepared{opacity:.38}.route-shell.is-exiting{animation:routeExit .17s ease-in both;pointer-events:none}@keyframes routeEnter{0%{opacity:.38}to{opacity:1}}@keyframes routeExit{0%{opacity:1}to{opacity:.36}}[data-spotlight]{--pointer-x: 50%;--pointer-y: 50%;isolation:isolate}@media(hover:hover)and (pointer:fine){[data-spotlight]:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;border-radius:inherit;background:radial-gradient(220px circle at var(--pointer-x) var(--pointer-y),rgba(255,255,255,.18),rgba(255,255,255,.06) 35%,transparent 68%);opacity:var(--spotlight-opacity, 0);pointer-events:none;transition:opacity var(--motion-fast) ease}}.top-contact{position:fixed;top:18px;left:calc((100vw - var(--native-scrollbar-width)) / 2);z-index:1000;width:fit-content;max-width:calc(100vw - 32px);min-height:0;padding:4px;transform:translate(-50%);display:inline-flex;align-items:center;justify-content:flex-start;border:1px solid transparent;border-radius:999px;background:radial-gradient(ellipse 58% 150% at 50% 48%,rgba(255,253,247,.19),rgba(250,243,231,.085) 58%,transparent 100%),linear-gradient(90deg,transparent 0%,rgba(255,251,244,.03) 10%,rgba(255,251,244,.09) 38%,rgba(255,251,244,.09) 62%,rgba(255,251,244,.03) 90%,transparent 100%);box-shadow:0 12px 30px #4637230b,0 3px 10px #46372305;animation:navDrop .62s cubic-bezier(.2,.8,.2,1) both;overflow:hidden;scrollbar-width:none;isolation:isolate}.glass-svg-filter{position:absolute;width:0;height:0;overflow:hidden}.navbar-glass-layer{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;pointer-events:none;z-index:0;background:radial-gradient(ellipse 62% 138% at 50% 44%,rgba(255,255,255,.14),rgba(255,251,244,.06) 62%,transparent 100%);backdrop-filter:blur(18px) saturate(135%) brightness(1.04);-webkit-backdrop-filter:blur(18px) saturate(135%) brightness(1.04);filter:url(#glass-distortion);opacity:.54;mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.55) 8%,#000 24%,#000 76%,rgba(0,0,0,.55) 92%,transparent 100%);-webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.55) 8%,#000 24%,#000 76%,rgba(0,0,0,.55) 92%,transparent 100%)}.top-contact::-webkit-scrollbar{display:none}.top-contact:before{content:"";position:absolute;top:2px;right:12px;bottom:2px;left:12px;border-radius:inherit;background:radial-gradient(ellipse 62% 125% at 23% -20%,rgba(255,255,255,.27),rgba(255,255,255,.075) 48%,transparent 78%);opacity:.64;mix-blend-mode:screen;pointer-events:none;z-index:1}.top-contact:after{content:"";position:absolute;top:0;right:16px;bottom:0;left:16px;border-radius:inherit;background:radial-gradient(ellipse at 50% 100%,rgba(171,145,108,.1),transparent 66%),radial-gradient(ellipse at 12% 18%,rgba(255,255,255,.08),transparent 48%);opacity:.48;mix-blend-mode:screen;pointer-events:none;z-index:1}@keyframes navDrop{0%{opacity:0;transform:translate(-50%) translateY(-12px) scale(.98)}to{opacity:1;transform:translate(-50%) translateY(0) scale(1)}}.rrhh-top-nav{position:relative;z-index:3;width:auto;display:inline-flex;align-items:center;justify-content:flex-start;gap:3px}.language-switcher{position:relative;z-index:3;flex:0 0 auto;height:30px;display:inline-flex;align-items:center;justify-content:center;gap:5px;margin-left:4px;padding:0 9px;border-radius:999px;background:#ffffff0e;color:#1c1813e0;cursor:pointer;font-size:11px;line-height:1;font-weight:820;transition:background .18s ease,color .18s ease,transform .18s ease}.language-switcher:before{content:"";position:absolute;left:-3px;width:1px;height:16px;background:#5c3d0e1a}.language-switcher:hover{transform:translateY(-1px);background:#ffffff1a;color:#0c0a08}.language-switcher svg{width:18px;height:12px;flex:0 0 auto;border-radius:2px}.rrhh-top-nav a{position:relative;z-index:3;height:32px;display:inline-flex;align-items:center;justify-content:center;padding:0 14px;border:1px solid transparent;border-radius:999px;background:transparent;color:#1c1813e6;font-size:13.5px;line-height:1;font-weight:650;letter-spacing:0;white-space:nowrap;transition:background .18s ease,color .18s ease,box-shadow .18s ease,border-color .18s ease,transform .18s ease}.rrhh-top-nav a:hover{transform:translateY(-1px);background:#fff1;color:#0c0a08;box-shadow:none}.rrhh-top-nav a.is-active{transform:translateY(-1px);border-color:transparent;background:radial-gradient(ellipse at 50% 35%,#ffffff2b,#ffffff0f 72%);color:#0a0806fa;box-shadow:0 2px 9px #46372308,inset 0 1px #ffffff2e}.rrhh-top-nav a.is-active:before{content:"";position:absolute;top:1px;right:1px;bottom:1px;left:1px;border-radius:inherit;pointer-events:none;background:linear-gradient(180deg,#fff3,#ffffff05);opacity:.55;mix-blend-mode:screen}.home-main,.case-main{min-height:100vh;padding:clamp(104px,12vh,142px) clamp(24px,5.4vw,112px) 76px}.home-main{position:relative;overflow:visible;display:grid;align-content:center;justify-items:center;gap:clamp(32px,calc(2.4vh + 14px),40px);padding-top:clamp(88px,10vh,108px);padding-bottom:clamp(28px,4vh,42px);isolation:isolate}.home-hero{position:relative;z-index:2;width:min(100%,850px);margin:0 auto;display:grid;grid-template-columns:minmax(300px,320px) minmax(430px,470px);align-items:center;gap:58px;text-align:left;transform:translate(-70px)}.home-hero-photo{display:flex;justify-content:center}.home-hero-photo img{display:block;width:min(100%,320px);aspect-ratio:4 / 5;object-fit:cover;border:1px solid rgba(255,255,252,.28);border-radius:28px;box-shadow:0 18px 48px #2e221224}.home-hero-content{display:grid;justify-items:start;gap:15px}.home-hero>*,.case-head>*{animation:riseIn .62s cubic-bezier(.2,.8,.2,1) both;animation-delay:var(--delay, 0ms)}.home-hero>:nth-child(1),.case-head>:nth-child(1){--delay: 70ms}.home-hero>:nth-child(2),.case-head>:nth-child(2){--delay: .14s}.home-hero>:nth-child(3),.case-head>:nth-child(3){--delay: .21s}.home-hero>:nth-child(4){--delay: .28s}.home-hero>:nth-child(5){--delay: .35s}@keyframes riseIn{0%{opacity:0;transform:translateY(16px);filter:blur(8px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}.page-kicker,.case-kicker{margin:0;color:#5c3d0ed1;font-size:.78rem;line-height:1;font-weight:880;text-transform:uppercase;letter-spacing:.16em}.page-kicker,.case-kicker{color:#5c3d0efa;font-size:clamp(.86rem,.78vw,1rem);letter-spacing:.26em}.home-hero .page-kicker{min-height:28px;display:inline-flex;align-items:center;justify-content:center;padding:0 14px;border:1px solid rgba(143,116,63,.18);border-radius:999px;background:#fffdf84d;color:#5c3d0eeb;box-shadow:0 12px 32px #52340b1a,inset 0 1px #ffffff57;backdrop-filter:blur(18px) saturate(1.08);-webkit-backdrop-filter:blur(18px) saturate(1.08);font-size:.74rem;letter-spacing:.16em}.home-hero h1,.case-title{margin:0;color:#171511fa;font-size:clamp(2.55rem,5vw,5.15rem);line-height:.94;font-weight:890;letter-spacing:-.066em;text-wrap:balance}.home-hero h1{max-width:100%;color:#12110ffa;font-size:clamp(2.6rem,4vw,4.45rem);line-height:.96;white-space:nowrap;text-shadow:0 1px 0 rgba(255,255,255,.32),0 18px 48px rgba(46,34,18,.16)}.home-hero h2{margin:0;color:#2d271feb;font-size:clamp(1.28rem,2vw,2.1rem);line-height:1.1;font-weight:880;letter-spacing:-.04em}.home-hero h2 span{color:#8f743ffa}.home-hero p,.case-copy{max-width:730px;margin:0;color:#312c26c2;font-size:clamp(.98rem,1vw,1.12rem);line-height:1.58;font-weight:680;letter-spacing:-.014em;text-wrap:balance}.home-presentation-copy{max-width:470px;margin-top:8px;padding-top:18px;border-top:1px solid rgba(92,61,14,.18);display:grid;gap:18px;align-self:start}.home-presentation-copy p{max-width:470px;margin:0;color:#312c26ad;font-size:clamp(.92rem,.92vw,1.03rem);line-height:1.72}.case-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:10px}.case-shell{width:min(100%,1180px);margin:0 auto;display:grid;gap:28px}.case-head{max-width:820px;margin:0 auto;display:grid;justify-items:center;gap:12px;text-align:center}.experience-page .case-shell{width:min(100%,1080px);gap:clamp(34px,5vh,56px)}.experience-page .case-head{gap:8px;margin-top:clamp(10px,2vh,24px)}.experience-page .case-title{max-width:760px;font-size:clamp(2.15rem,3.15vw,3.2rem);line-height:.98}.experience-timeline{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:min(100%,1080px);min-height:0;margin:36px auto 0;padding:42px 0 8px;column-gap:clamp(22px,4vw,58px);list-style:none}.experience-timeline:before{position:absolute;top:21px;right:8%;left:5px;width:auto;height:1px;background:#5c3d0e3d;content:""}.experience-timeline-item{position:relative;min-height:0;padding:0}.experience-timeline-node{position:absolute;display:block;box-sizing:border-box;top:-26px;left:0;width:11px;height:11px;min-width:11px;min-height:11px;margin:0;flex:none;padding:0;border:2px solid rgba(92,61,14,.68);border-radius:50%;background:#fffdf8eb;box-shadow:0 0 0 5px #fffdf83d;cursor:default;transform:none}.experience-timeline-period{position:static;margin:0 0 8px;color:#5c3d0ec7;font-size:.76rem;font-weight:850;letter-spacing:.16em;line-height:1.2;text-transform:uppercase}.experience-timeline-entry{display:block;width:auto;max-width:320px;height:auto;margin:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;text-align:left}.experience-timeline-entry h2{max-width:320px;margin:0;color:#171511eb;font-size:clamp(1.22rem,1.9vw,1.72rem);font-weight:880;letter-spacing:-.035em;line-height:1.08}.experience-timeline-context{margin:8px 0 0;color:#5c3d0ed1;font-size:.92rem;font-weight:780;line-height:1.3}.experience-timeline-description{max-width:320px;margin:14px 0 0;color:#312c26cc;font-size:.9rem;font-weight:650;line-height:1.52}@media(max-width:760px){.experience-timeline{grid-template-columns:1fr;width:100%;padding:24px 0 8px 34px;row-gap:28px}.experience-timeline:before{top:30px;right:auto;bottom:30px;left:9px;width:1px;height:auto}.experience-timeline-node{top:3px;left:-29px}.experience-timeline-entry,.experience-timeline-entry h2,.experience-timeline-description{max-width:none}}@keyframes panelIn{0%{opacity:0;transform:translateY(10px);filter:blur(6px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.case-link{position:relative;overflow:hidden;min-height:42px;width:max-content;display:inline-flex;align-items:center;justify-content:center;padding:0 18px;border:1px solid rgba(92,61,14,.12);border-radius:999px;background:#8f743ff0;color:#fffaf0;font-size:.86rem;font-weight:860;box-shadow:0 14px 30px #52340b1f,inset 0 1px #ffffff3d;transition:transform .22s ease,background .22s ease,box-shadow .22s ease,color .22s ease}.case-link:hover{transform:translateY(var(--hover-lift));background:#66502bfa;box-shadow:0 18px 36px #52340b29,inset 0 1px #ffffff47}.case-link.is-secondary{background:#fffdf85c;color:#5c3d0eeb}.case-link.is-secondary:hover{background:#8f743fe0;color:#fffaf0}@media(max-width:760px){body{background-attachment:scroll}.top-contact{top:10px;width:fit-content;max-width:calc(100vw - 16px);overflow-x:auto;scrollbar-width:none}.top-contact::-webkit-scrollbar{display:none}.rrhh-top-nav{justify-content:flex-start;gap:2px;min-width:0}.rrhh-top-nav a{height:32px;padding:0 11px;font-size:12px}.language-switcher{height:30px;margin-left:2px;padding-inline:8px}.home-main,.case-main{padding:88px 22px 60px}.case-shell{gap:24px}.home-hero h1,.case-title{font-size:clamp(2.35rem,12vw,3.35rem)}.home-hero{min-height:calc(100vh - 148px);width:min(100%,690px);grid-template-columns:1fr;justify-items:center;gap:15px;text-align:center;transform:translateY(0)}.home-presentation-copy{width:100%;max-width:690px}.home-hero-content{width:100%;justify-items:center}.home-hero-photo img{width:150px;aspect-ratio:1;border-radius:22px}.home-hero h1{white-space:normal}.experience-page .case-head{margin-top:0}.experience-page .case-title{font-size:clamp(2.15rem,10.5vw,3rem)}.case-link{flex:1 1 150px}}@media(max-width:820px){.home-main{display:block}.home-hero{min-height:calc(100vh - 148px)}}@media(max-width:460px){.top-contact{max-width:calc(100vw - 12px)}.rrhh-top-nav{gap:1px}.rrhh-top-nav a{padding-inline:7px;font-size:11.25px}.language-switcher{gap:4px;margin-left:1px;padding-inline:6px;font-size:10.5px}.language-switcher svg{width:16px;height:11px}}.page-offset{scroll-margin-top:96px}.projects-page .case-shell{width:min(100%,1120px);gap:clamp(26px,4vw,42px)}.projects-page .case-title{max-width:920px;font-size:clamp(2.15rem,3.15vw,3.2rem);line-height:.98}@keyframes projectPanelExit{0%{opacity:1;transform:translateY(0)}to{opacity:.68;transform:translateY(-2px)}}@keyframes projectPanelEnter{0%{opacity:.68;transform:translateY(2px)}to{opacity:1;transform:translateY(0)}}@keyframes projectTabExit{0%{opacity:1;transform:translateY(0)}to{opacity:.72;transform:translateY(-2px)}}@keyframes projectTabEnter{0%{opacity:.72;transform:translateY(2px)}to{opacity:1;transform:translateY(0)}}.contact-page{display:grid;place-items:center}.contact-shell{width:min(100%,780px);margin:0 auto}.contact-card{display:grid;justify-items:center;gap:clamp(26px,4vw,38px);padding:clamp(34px,5vw,58px);border:1px solid rgba(255,255,252,.2);border-radius:26px;background:#fffffc47;box-shadow:0 28px 76px #2e221212,inset 0 1px #ffffff52;text-align:center;backdrop-filter:blur(18px) saturate(1.04);-webkit-backdrop-filter:blur(18px) saturate(1.04)}.contact-head{display:grid;justify-items:center;gap:12px}.contact-page .case-title{font-size:clamp(2.15rem,3.15vw,3.2rem);line-height:.98}.contact-head .case-copy{max-width:560px}.contact-actions{display:grid;grid-template-columns:repeat(4,minmax(110px,1fr));gap:10px;width:min(100%,620px)}.contact-actions .case-link{width:100%;min-height:46px}.contact-page .contact-shell{width:min(100%,900px)}.contact-page .contact-card{gap:26px;padding:34px 48px;border-radius:22px}.contact-page .contact-head{gap:10px}.contact-page .contact-actions{display:flex;justify-content:center;gap:12px;width:100%}.contact-page .contact-actions .case-link,.contact-page .contact-actions .case-link.is-secondary{flex:1 1 0;width:auto;min-width:0;min-height:46px;background:#fffdf85c;color:#5c3d0eeb}.contact-page .contact-actions .case-link:hover,.contact-page .contact-actions .case-link:focus-visible{background:#8f743fe0;color:#fffaf0}@media(max-width:760px){.contact-page .contact-card{padding:28px 22px}.contact-page .contact-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.contact-page{place-items:start center}.contact-card{padding:28px 22px;border-radius:22px}.contact-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-page .case-title{font-size:clamp(2.15rem,10.5vw,3rem)}}.projects-page .case-shell{width:min(100%,1500px)}.projects-page .project-grid{display:grid;grid-template-columns:1fr;width:calc(100% - 120px);max-width:1450px;margin:0 auto;gap:14px}.projects-page .project-card{display:flex;flex-direction:column;align-items:stretch;box-sizing:border-box;width:100%;height:auto;min-height:0;padding:24px 34px;border:1px solid rgba(255,255,252,.28);border-radius:20px;background:#fffffc2e;box-shadow:inset 0 1px #ffffff38}.projects-page .project-card.is-product{padding:28px 36px;border-color:#9165193d;background:#fffffc3b}.projects-page .project-card-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;width:100%}.projects-page .project-card h2{flex:1 1 auto;width:auto;max-width:none;margin:0;color:#171511eb;font-size:clamp(1.25rem,1.7vw,1.65rem);font-weight:880;letter-spacing:-.035em;line-height:1.08;text-align:left}.projects-page .project-card-heading .project-card-link{flex:0 0 auto;align-self:center;margin:0;color:#fffaf0;white-space:nowrap}.projects-page .project-card-description{width:100%;max-width:none;margin:14px 0 0;color:#312c26cc;font-size:.9rem;font-weight:650;line-height:1.5;text-align:left}.projects-page .project-card-skills{display:flex;flex-wrap:wrap;width:100%;max-width:none;margin:18px 0 0;gap:5px}.projects-page .project-card-skills span{padding:4px 8px;border:1px solid rgba(145,101,25,.16);border-radius:999px;color:#5c3d0ec7;font-size:.66rem;font-weight:760;line-height:1.1}.projects-page .project-card-link:hover,.projects-page .project-card-link:focus-visible{color:#312613fa;text-decoration:underline;text-underline-offset:4px}@media(max-width:760px){.projects-page .project-grid{width:100%;max-width:620px}.projects-page .project-card,.projects-page .project-card.is-product{padding:22px}.projects-page .project-card-heading{align-items:flex-start;gap:14px}.projects-page .project-card-heading .project-card-link{padding:9px 13px}}
