:root{--accent:#b7d86a;--accent-strong:#76983e;--accent-dark:#55722c;--accent-soft:#f7fbed;--ink:#172033;--muted:#667085;--surface:#ffffff;--surface-soft:#fbfcfe;--surface-light-glass:rgba(255, 255, 255, 0.86);--surface-dark-glass:rgba(13, 21, 36, 0.84);--surface-light-solid:rgba(255, 255, 255, 0.92);--surface-dark-solid:rgba(13, 21, 36, 0.9);--line:rgba(23, 32, 51, 0.1);--shadow-sm:0 10px 30px rgba(30, 38, 64, 0.08);--shadow-lg:0 22px 60px rgba(30, 38, 64, 0.16)}html{scroll-behavior:smooth;scroll-padding-top:74px;background:#f4f6f1}body{position:relative;isolation:isolate;overflow-x:hidden;color:var(--ink);font-family:Manrope,"Source Sans Pro",sans-serif;font-size:1.0625rem;background:0 0}body::before{position:fixed;inset:-18vmax;z-index:-1;content:"";pointer-events:none;background:radial-gradient(circle at 12% 14%,rgba(183,216,106,.88) 0 9%,transparent 30%),radial-gradient(circle at 84% 12%,rgba(121,169,245,.72) 0 8%,transparent 29%),radial-gradient(circle at 76% 68%,rgba(84,126,73,.62) 0 10%,transparent 32%),radial-gradient(circle at 22% 84%,rgba(82,105,154,.58) 0 9%,transparent 31%),linear-gradient(135deg,#fbfdf8 0,#f3f7fa 48%,#f8fbf2 100%);filter:blur(110px) saturate(125%);transform:scale(1.08)}.btn,.navbar .nav-link,h1,h2,h3,h4,h5,h6{font-family:Outfit,Manrope,sans-serif}p{font-size:clamp(.98rem, .35vw + .9rem, 1.06rem)}a{color:var(--accent-dark)}a:focus,a:hover{color:#3f5c1f}.text-danger{color:var(--accent-dark)!important}.bg-danger{background-color:var(--accent-strong)!important}.btn-danger{color:#fff;border-color:var(--accent-strong);background:var(--accent-strong)}.btn-danger:focus,.btn-danger:hover{color:#fff;border-color:var(--accent-dark);background:var(--accent-dark);box-shadow:0 0 0 .2rem rgba(118,152,62,.25)}::selection{color:var(--ink);background:var(--accent)}.scroll-progress{position:fixed;top:0;left:0;z-index:1100;width:100%;height:4px;background:linear-gradient(90deg,var(--accent-strong),var(--accent));transform:scaleX(0);transform-origin:left center;will-change:transform}.language-switcher{position:fixed;top:16px;right:18px;z-index:1090;display:flex;gap:3px;padding:4px;border:1px solid rgba(255,255,255,.2);border-radius:999px;background:var(--surface-dark-glass);box-shadow:0 12px 32px rgba(7,12,23,.24);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.language-option{display:inline-flex;min-width:58px;height:40px;align-items:center;justify-content:center;gap:6px;padding:0 11px;color:rgba(255,255,255,.72);font-family:Outfit,Manrope,sans-serif;font-size:.76rem;font-weight:700;letter-spacing:.08em;border:0;border-radius:999px;outline:0;background:0 0;cursor:pointer;transition:color 180ms ease,background-color 180ms ease,box-shadow 180ms ease,transform 180ms ease}.language-option:hover{color:#fff;background:rgba(255,255,255,.1);transform:translateY(-1px)}.language-option:focus-visible{box-shadow:0 0 0 3px rgba(183,216,106,.38)}.language-option.is-active{color:#18220e;background:var(--accent);box-shadow:0 5px 16px rgba(183,216,106,.26)}.language-flag{font-size:1.1rem;line-height:1;filter:saturate(.9)}.header{min-height:640px;overflow:hidden;background:#07101f;background-attachment:scroll}.hero-depth{--hero-bg-x:0px;--hero-bg-y:0px;--hero-subject-x:0px;--hero-subject-y:0px;position:absolute;z-index:0;inset:0;overflow:hidden;pointer-events:none}.hero-depth-layer{position:absolute;display:block;inset:0}.hero-depth-image{display:block;width:100%;height:100%;object-fit:cover;object-position:center 58%;transform-origin:center}.hero-depth-background .hero-depth-image{transform:translate3d(var(--hero-bg-x),var(--hero-bg-y),0) scale(1)}.hero-depth-subject .hero-depth-image{transform:translate3d(var(--hero-subject-x),var(--hero-subject-y),0) scale(1)}.hero-depth.is-animated.is-active .hero-depth-image{will-change:transform}.hero-depth.is-animated .hero-depth-background .hero-depth-image{transform:translate3d(var(--hero-bg-x),var(--hero-bg-y),0) scale(1.055)}.hero-depth.is-animated .hero-depth-subject .hero-depth-image{transform:translate3d(var(--hero-subject-x),var(--hero-subject-y),0) scale(1.055)}.header::before{position:absolute;z-index:1;inset:0;content:"";pointer-events:none;background:radial-gradient(circle at 18% 28%,rgba(183,216,106,.24),transparent 28%),radial-gradient(circle at 72% 82%,rgba(121,169,245,.18),transparent 25%);backdrop-filter:blur(3px) saturate(115%);-webkit-backdrop-filter:blur(3px) saturate(115%)}.header::after{position:absolute;z-index:1;inset:0;content:"";pointer-events:none;background:linear-gradient(90deg,rgba(7,12,23,.97) 0,rgba(10,18,35,.78) 46%,rgba(10,18,35,.16) 82%),linear-gradient(0deg,rgba(7,12,23,.78),transparent 58%)}.header .container,.header .header-content,.header .social-icons{position:relative;z-index:2}.header .social-icons{gap:10px;justify-content:flex-start}.header .social-icons .social-link{display:grid;width:42px;height:42px;place-items:center;border:1px solid rgba(255,255,255,.28);border-radius:50%;background:rgba(255,255,255,.08);backdrop-filter:blur(8px);transition:transform 180ms ease,background-color 180ms ease,border-color 180ms ease}.header .social-icons .social-link:hover{color:#fff;border-color:rgba(255,255,255,.8);background:var(--accent-strong);transform:translateY(-3px)}.header .header-content{top:51%;max-width:820px;animation:hero-enter 750ms cubic-bezier(.2,.72,.25,1) both}.header .header-content .header-mono,.hero-eyebrow{color:rgba(255,255,255,.88);font-size:clamp(.8rem, 1.45vw, 1rem);font-weight:700;line-height:1.65;letter-spacing:.18em;opacity:1;text-wrap:balance;text-transform:uppercase}.hero-eyebrow{margin-bottom:18px}.header .header-content .header-title{max-width:760px;margin-bottom:22px;color:#fff;font-size:clamp(3rem, 7.5vw, 6.8rem);line-height:.92;letter-spacing:-.045em;font-weight:800;text-wrap:balance;text-shadow:0 15px 45px rgba(0,0,0,.35)}.hero-name-line{display:block;width:max-content;max-width:100%;white-space:nowrap}.hero-name-last{color:var(--accent);font-size:.985em;margin-left:var(--surname-offset,.55em);text-shadow:0 16px 48px rgba(0,0,0,.5)}.header .header-content .header-mono{margin-bottom:30px}.hero-actions{display:flex;flex-wrap:wrap;gap:12px}.hero-cta{min-width:150px;padding:11px 22px;border-width:2px;border-radius:999px;font-weight:700;letter-spacing:.02em;transition:transform 180ms ease,box-shadow 180ms ease,background-color 180ms ease}.hero-cta:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(0,0,0,.24)}.scroll-cue{position:absolute;right:16px;bottom:38px;z-index:2;display:grid;width:30px;height:48px;place-items:start center;border:1px solid rgba(255,255,255,.5);border-radius:999px}.scroll-cue span{width:4px;height:9px;margin-top:9px;border-radius:999px;background:#fff;animation:scroll-cue 1.8s ease-in-out infinite}.navbar{border-bottom:1px solid rgba(255,255,255,.08);background:rgba(13,21,36,.64)!important;box-shadow:0 8px 30px rgba(5,10,20,.22);backdrop-filter:blur(36px) saturate(145%);-webkit-backdrop-filter:blur(36px) saturate(145%)}.navbar .nav-link{position:relative;margin-right:10px;padding:20px 14px;color:rgba(255,255,255,.84)!important;font-family:Outfit,Manrope,sans-serif;font-size:1.02rem;letter-spacing:.02em}.navbar .nav-link::after{position:absolute;right:14px;bottom:14px;left:14px;height:2px;content:"";background:var(--accent);transform:scaleX(0);transform-origin:right;transition:transform 180ms ease}.navbar .nav-link.active::after,.navbar .nav-link:hover::after{transform:scaleX(1);transform-origin:left}.navbar .nav-link.active{color:var(--accent)!important}.navbar .nav-link:focus,.navbar .nav-link:hover{color:#fff!important}.navbar .navbar-toggler{border-color:rgba(255,255,255,.34)}.navbar .navbar-toggler-icon{filter:invert(1) grayscale(1) brightness(2)}.about-section{overflow:hidden;border:0;background:0 0}.about-section .about-card{padding:clamp(34px,5vw,68px);border-color:transparent}.about-section .about-intro{color:#fff;border-right:0;border-bottom:0;background:var(--surface-dark-glass);backdrop-filter:blur(30px) saturate(125%);-webkit-backdrop-filter:blur(30px) saturate(125%)}.about-section .personal-card{border-right:0;border-bottom:0;background:var(--surface-light-glass);backdrop-filter:blur(34px) saturate(125%);-webkit-backdrop-filter:blur(34px) saturate(125%)}.about-section h3,.section-title{color:var(--ink);font-weight:700!important;letter-spacing:-.025em}.about-section h5{max-width:900px;color:var(--ink);font-size:clamp(1.15rem, 2vw, 1.45rem);line-height:1.35}.about-section .about-intro h3,.about-section .about-intro h5,.about-section .strengths-card h3{color:#fff}.about-section .about-intro p{color:rgba(235,241,249,.82);opacity:1}.about-intro .btn-outline-danger{color:var(--accent);border-color:var(--accent)}.about-intro .btn-outline-danger:focus,.about-intro .btn-outline-danger:hover{color:#17220f;background:var(--accent)}.about-section p{font-size:1.04rem;line-height:1.75}.line{width:52px;height:3px;border-radius:99px;background:linear-gradient(90deg,var(--accent-strong),var(--accent))}.personal-card .info{font-size:1.18rem}.personal-card .info li{display:grid;grid-template-columns:minmax(135px,0.7fr) minmax(0,1.3fr);align-items:center;gap:18px;padding:16px 0;border-bottom:1px solid var(--line)}.personal-info-label{display:inline-flex;align-items:center;gap:12px;color:var(--ink);font-weight:800}.personal-info-label i{width:1.4rem;color:var(--accent-strong);font-size:1.28rem;text-align:center}.personal-info-value{min-width:0;color:#536070;font-weight:600;overflow-wrap:anywhere}.personal-card .social-icons{gap:8px;justify-content:flex-start}.personal-card .social-link{display:grid;width:50px;height:50px;place-items:center;border-radius:14px;background:var(--accent-soft);font-size:22px;transition:transform 180ms ease,background-color 180ms ease,color 180ms ease}.personal-card .social-icons .social-link:hover{color:#fff;background:var(--accent-strong);transform:translateY(-3px)}.whatsapp-icon{display:block;width:1em;height:1em;fill:currentColor}.strengths-card{background:var(--surface-dark-glass);backdrop-filter:blur(34px) saturate(125%);-webkit-backdrop-filter:blur(34px) saturate(125%)}.strengths-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.strength-item{display:flex;min-height:165px;gap:18px;padding:25px;border:1px solid transparent;border-radius:18px;background:0 0;box-shadow:none;backdrop-filter:blur(24px) saturate(130%);-webkit-backdrop-filter:blur(24px) saturate(130%);transition:transform 220ms ease,box-shadow 220ms ease,border-color 220ms ease,background-color 220ms ease}.strength-item:hover{border-color:rgba(183,216,106,.42);background:linear-gradient(145deg,rgba(183,216,106,.13),rgba(255,255,255,.04));box-shadow:0 24px 55px rgba(0,0,0,.26);transform:translateY(-6px)}.strength-icon{display:grid;flex:0 0 48px;width:48px;height:48px;place-items:center;color:#17220f;font-size:1.35rem;border-radius:14px;background:linear-gradient(145deg,var(--accent),#dceba0);box-shadow:0 10px 25px rgba(183,216,106,.2);transition:transform 220ms ease}.strength-item:hover .strength-icon{transform:rotate(-6deg) scale(1.06)}.strength-item h6{margin:2px 0 8px;color:#fff;font-size:1.04rem;font-weight:700}.strength-item p{margin:0;color:rgba(220,228,239,.74);font-size:.96rem;line-height:1.55}.section{padding:clamp(64px,8vw,105px) 0}.section-title{position:relative;width:fit-content;padding-bottom:16px;font-size:clamp(2.2rem, 5vw, 3.7rem);font-weight:800!important}.section-title::after{position:absolute;bottom:0;left:0;width:74px;height:5px;content:"";border-radius:999px;background:linear-gradient(90deg,var(--accent-strong),var(--accent))}#portfolio{position:relative;background:var(--surface-light-glass);backdrop-filter:blur(50px) saturate(125%);-webkit-backdrop-filter:blur(50px) saturate(125%)}.portfolio .filters{width:min(100%,790px);max-width:790px;gap:8px;margin-bottom:40px;padding:7px;overflow-x:auto;border:1px solid rgba(255,255,255,.1);border-radius:999px;background:var(--surface-dark-solid);box-shadow:var(--shadow-sm);backdrop-filter:blur(28px) saturate(130%);-webkit-backdrop-filter:blur(28px) saturate(130%);scrollbar-width:none}.portfolio .filters::-webkit-scrollbar{display:none}.portfolio .filters a{flex:1 0 auto;min-width:190px;padding:12px 24px;color:rgba(255,255,255,.82);font-size:1rem;font-weight:700;line-height:1.2;text-align:center;white-space:nowrap;border-radius:999px;opacity:1;transition:color 180ms ease,background-color 180ms ease,transform 180ms ease,box-shadow 180ms ease}.portfolio .filters a:hover{color:var(--accent);opacity:1;transform:translateY(-1px)}.portfolio .filters a.active{color:#1d2a11;background:linear-gradient(135deg,var(--accent),#dceba0);box-shadow:0 9px 24px rgba(118,152,62,.25)}.portfolio .portfolio-container{margin-right:-10px;margin-left:-10px}.portfolio-grid-sizer{width:100%;height:0;padding:0;margin:0}.portfolio .portfolio-container>[class*=col-]{padding:10px}.portfolio-card{will-change:transform,opacity}.portfolio .portfolio-container .portfolio-item{margin:0;border:1px solid rgba(255,255,255,.85);border-radius:18px;background:var(--ink);box-shadow:var(--shadow-sm);transform-style:preserve-3d;transition:transform 220ms ease,box-shadow 220ms ease}.portfolio .portfolio-container .portfolio-item:focus-within,.portfolio .portfolio-container .portfolio-item:hover{box-shadow:var(--shadow-lg);transform:translateY(-7px)}.portfolio .portfolio-container .portfolio-item picture{display:block;transform:translate3d(0,0,0) scale(1);transform-origin:center}.portfolio .portfolio-container .portfolio-item picture.is-parallax-active{will-change:transform}.portfolio .portfolio-container .portfolio-item img,.portfolio .portfolio-container .portfolio-item video{display:block;width:100%;transition:transform 650ms cubic-bezier(.2, .7, .2, 1),filter 350ms ease}.portfolio-card.new .portfolio-item img,.portfolio-card.new .portfolio-item video{aspect-ratio:16/9;object-fit:cover}.portfolio .portfolio-container .portfolio-item:focus-within img,.portfolio .portfolio-container .portfolio-item:focus-within video,.portfolio .portfolio-container .portfolio-item:hover img,.portfolio .portfolio-container .portfolio-item:hover video{filter:saturate(1.1);transform:scale(1.055)}.portfolio .portfolio-container .portfolio-item .content-holder{padding:22px;border-radius:inherit;background:linear-gradient(145deg,rgba(14,22,41,.9),rgba(91,119,47,.78));transform:translate(-50%,-50%) scale(1.03);transition:opacity 260ms ease,visibility 260ms ease,transform 350ms ease}.portfolio .portfolio-container .portfolio-item:focus-within .content-holder,.portfolio .portfolio-container .portfolio-item:hover .content-holder{transform:translate(-50%,-50%) scale(1)}.portfolio .portfolio-container .portfolio-item .content-holder .title{margin-bottom:9px;font-size:clamp(1.15rem, 1.6vw, 1.45rem)}.portfolio .portfolio-container .portfolio-item .content-holder .title a{color:#fff;text-decoration-color:rgba(255,255,255,0);text-decoration-thickness:2px;text-underline-offset:5px;transition:text-decoration-color 180ms ease}.portfolio .portfolio-container .portfolio-item .content-holder .title a:focus,.portfolio .portfolio-container .portfolio-item .content-holder .title a:hover{color:#fff;text-decoration-color:#fff}.portfolio .portfolio-container .portfolio-item .content-holder .subtitle{max-width:520px;margin-right:auto;margin-bottom:.45rem;margin-left:auto;font-size:clamp(.88rem, 1.1vw, .96rem);line-height:1.45}.portfolio .portfolio-container .portfolio-item .content-holder .subtitle:last-child{margin-bottom:0}.portfolio-featured .portfolio-item{box-shadow:0 18px 50px rgba(30,38,64,.15)}.portfolio-featured .portfolio-item .content-holder{padding:clamp(24px,4vw,40px)}.portfolio-featured .portfolio-item .content-holder .title{font-size:clamp(1.35rem, 2.4vw, 1.9rem)}.portfolio-featured .portfolio-item .content-holder .subtitle{font-size:clamp(.96rem, 1.4vw, 1.06rem)}#resume{position:relative;background:var(--surface-dark-glass);backdrop-filter:blur(54px) saturate(130%);-webkit-backdrop-filter:blur(54px) saturate(130%)}#resume .section-title{color:#fff}#resume .resume-container{width:min(100%,1420px);max-width:1420px;padding-right:clamp(18px,3vw,42px);padding-left:clamp(18px,3vw,42px)}#resume .resume-container>.row{align-items:flex-start}#resume .card{overflow:hidden;border:1px solid rgba(255,255,255,.1);border-radius:18px;background:var(--surface-light-solid);box-shadow:0 22px 58px rgba(0,0,0,.22);backdrop-filter:blur(26px) saturate(125%);-webkit-backdrop-filter:blur(26px) saturate(125%);transition:transform 220ms ease,box-shadow 220ms ease}#resume .card:hover{box-shadow:0 28px 72px rgba(0,0,0,.32);transform:translateY(-5px)}#resume .card-header{padding:30px 30px 10px}#resume .card-header h4{color:var(--ink);font-size:clamp(1.3rem, 1.8vw, 1.62rem);font-weight:750}#resume .card-body{padding:22px 30px 34px;font-size:1.03rem}#resume .card-body p{opacity:1;line-height:1.65}.career-card .card-body .subtitle br,.education-card .card-body .subtitle br{display:block;margin-bottom:.42rem;content:""}#resume .card-body .title{font-size:clamp(1.08rem, 1.35vw, 1.28rem);font-weight:750;line-height:1.32}#resume .card-body strong{color:#283a15;font-weight:800}#resume .card-body hr{margin:22px 0;border-color:var(--line)}.cv-context-note{display:inline-flex;margin:3px 0 0;padding:7px 11px;color:#38501d;font-size:.84rem;font-weight:700;line-height:1.35!important;border:1px solid rgba(118,152,62,.22);border-radius:10px;background:var(--accent-soft)}.technical-card .tech-category-title{margin-bottom:8px;color:#31451b!important;font-size:1.03rem;font-weight:800}.technical-skill-list{display:flex;flex-wrap:wrap;align-items:center;gap:4px 9px;margin:0;color:#536070;font-weight:600;line-height:1.7}.technical-skill-list li{display:inline-flex;align-items:center;gap:9px}.technical-skill-list li:not(:first-child)::before{flex:0 0 5px;width:5px;height:5px;content:"";border-radius:50%;background:var(--accent-strong)}.technical-card hr{margin:18px 0!important}.cv-tags{display:flex;flex-wrap:wrap;gap:8px;margin:0}.cv-tags li{padding:7px 10px;color:#34491c;font-size:.85rem;font-weight:700;line-height:1.25;border:1px solid rgba(118,152,62,.2);border-radius:999px;background:var(--accent-soft)}#resume .progress{height:7px;overflow:visible;border-radius:999px;background:#eceef4}#resume .progress-bar{border-radius:999px;background:linear-gradient(90deg,var(--accent-strong),var(--accent))!important;transform-origin:left;transition:transform .9s cubic-bezier(.2, .7, .2, 1)}.resume-download{padding:25px 0 0}#resume .resume-download .btn-outline-danger{color:var(--accent);border-color:var(--accent)}#resume .resume-download .btn-outline-danger:focus,#resume .resume-download .btn-outline-danger:hover{color:#17220f;background:var(--accent)}.btn-outline-danger{color:var(--accent-dark);border-color:var(--accent-strong);border-width:2px;border-radius:999px;font-weight:700;transition:transform 180ms ease,box-shadow 180ms ease,color 180ms ease,background-color 180ms ease}.btn-outline-danger:focus,.btn-outline-danger:hover{color:#fff;border-color:var(--accent-strong);background:var(--accent-strong);box-shadow:0 10px 24px rgba(118,152,62,.25);transform:translateY(-2px)}.section.bg-dark.text-center:empty{padding:18px 0;background:var(--surface-dark-glass)!important;backdrop-filter:blur(32px);-webkit-backdrop-filter:blur(32px)}.contact{min-height:auto;padding:clamp(70px,9vw,110px) 0;background:var(--surface-light-glass);backdrop-filter:blur(54px) saturate(135%);-webkit-backdrop-filter:blur(54px) saturate(135%)}.contact .row{justify-content:center}.contact .col-lg-4{flex:0 0 min(100%,720px);max-width:720px}.contact .contact-info-card{min-height:auto!important;padding:clamp(30px,5vw,55px);color:#fff;border:1px solid rgba(255,255,255,.1);border-radius:22px;background:var(--surface-dark-solid);box-shadow:0 28px 85px rgba(24,38,18,.24);backdrop-filter:blur(34px) saturate(130%);-webkit-backdrop-filter:blur(34px) saturate(130%)}.contact .contact-title{color:#fff;font-size:2rem;font-weight:700}.contact .contact-title::after{background:var(--accent)}.contact-info-list{margin:0;font-size:1.18rem}.contact-info-list li{display:grid;grid-template-columns:minmax(150px,0.7fr) minmax(0,1.3fr);align-items:center;gap:18px;padding:16px 0;border-bottom:1px solid rgba(255,255,255,.1)}.contact-info-label{display:inline-flex;align-items:center;gap:12px;color:#fff;font-weight:800}.contact-info-label i{width:1.4rem;color:var(--accent);font-size:1.28rem;text-align:center}.contact-info-value{min-width:0;color:rgba(229,237,246,.78);font-weight:600;overflow-wrap:anywhere}.contact .contact-info-card a{color:var(--accent)}.contact .contact-info-card a:focus,.contact .contact-info-card a:hover{color:#e7f3c8}.contact .contact-info-card .social-link{display:grid;width:50px;height:50px;place-items:center;color:var(--accent)!important;border:1px solid rgba(183,216,106,.22);border-radius:14px;background:rgba(183,216,106,.08);font-size:22px;transition:transform 180ms ease,background-color 180ms ease,color 180ms ease}.contact .contact-info-card .social-icons{max-width:none;gap:10px;justify-content:flex-start}.contact .contact-info-card .social-link:focus,.contact .contact-info-card .social-link:hover{color:#17220f!important;background:var(--accent);transform:translateY(-3px)}.footer{background:var(--surface-dark-glass);backdrop-filter:blur(26px) saturate(125%);-webkit-backdrop-filter:blur(26px) saturate(125%)}.social-icons .social-link:hover{color:var(--accent-dark)}.reveal-on-scroll{opacity:0;transform:translateY(28px);transition:opacity 620ms cubic-bezier(.2, .72, .25, 1) var(--reveal-delay, 0ms),transform 620ms cubic-bezier(.2, .72, .25, 1) var(--reveal-delay, 0ms)}.reveal-on-scroll.is-visible{opacity:1;transform:translateY(0)}@keyframes hero-enter{from{opacity:0;transform:translateY(calc(-50% + 28px))}to{opacity:1;transform:translateY(-50%)}}@keyframes scroll-cue{0%,100%{opacity:.35;transform:translateY(0)}50%{opacity:1;transform:translateY(15px)}}@media (min-width:768px){.portfolio-grid-sizer{width:50%}}@media (min-width:992px){.portfolio-grid-sizer{width:16.666667%}.portfolio-code-featured .portfolio-item img{aspect-ratio:1.74/1;object-fit:cover}.portfolio-code-side .portfolio-item img{aspect-ratio:16/9;object-fit:cover}}@media (max-width:991.98px){.navbar .container{padding-right:148px}.header{background-attachment:scroll}.hero-depth-image{object-position:58% center}.about-section .about-intro{border-right:0}.strengths-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.navbar .nav-link{margin-right:0;padding:12px 8px}.navbar .nav-link::after{right:auto;bottom:7px;left:8px;width:42px}}@media (max-width:767.98px){.header{height:620px;min-height:620px}.hero-depth-image{object-position:62% center}.header .header-content{top:50%;padding:20px}.header .header-content .header-title{max-width:520px}.scroll-cue{right:28px}.portfolio .filters{justify-content:flex-start;border-radius:18px}.portfolio .filters a{min-width:max-content;padding:11px 18px}.portfolio .portfolio-container .portfolio-item .content-holder{align-items:flex-end;justify-content:flex-start;padding:22px;text-align:left}.portfolio .portfolio-container .portfolio-item .content-holder .subtitle{margin-left:0}}@media (max-width:575.98px){.language-switcher{top:10px;right:10px;padding:3px}.language-option{min-width:50px;height:36px;gap:4px;padding:0 8px;font-size:.7rem}.language-flag{font-size:1rem}.navbar .container{padding-right:118px}.hero-depth-image{object-position:65% center}.header .social-icons{margin:0}.header .header-content .header-mono,.hero-eyebrow{letter-spacing:.12em}.hero-actions{align-items:flex-start;flex-direction:column}.hero-cta{width:100%;max-width:230px}.strengths-grid{grid-template-columns:1fr}.strength-item{min-height:0;padding:20px}.contact-info-list li,.personal-card .info li{grid-template-columns:1fr;gap:4px}}@media (max-width:380px){.header .header-content .header-title{font-size:clamp(2.35rem, 13vw, 3rem)}}@media (hover:none){.portfolio .portfolio-container .portfolio-item .content-holder{align-items:flex-end;justify-content:flex-start;padding:22px;text-align:left;visibility:visible;opacity:1;background:linear-gradient(0deg,rgba(14,22,41,.94),transparent 72%);transform:translate(-50%,-50%)}.portfolio .portfolio-container .portfolio-item .content-holder .subtitle{margin-right:0;margin-left:0}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,::after,::before{animation-duration:0s!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:0s!important}.reveal-on-scroll{opacity:1;transform:none}.hero-depth-image,.hero-depth.is-animated .hero-depth-image{transform:none;will-change:auto}}