.home-hero{align-items:center;min-height:min(100svh - 70px,820px);padding-block:96px 88px;display:flex;position:relative;overflow:hidden}.hero-grid-bg{pointer-events:none;background-image:linear-gradient(90deg,#15191b0b 1px,#0000 1px),linear-gradient(#15191b0b 1px,#0000 1px);background-position:top;background-size:64px 64px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(75% 65% at 50% 35%,#000 25%,#0000 78%);mask-image:radial-gradient(75% 65% at 50% 35%,#000 25%,#0000 78%)}.home-hero-inner{text-align:center;flex-direction:column;align-items:center;display:flex;position:relative}.home-h1{letter-spacing:-.022em;max-width:15em;margin:0 0 28px;font-family:Newsreader,Georgia,serif;font-size:clamp(40px,5.8vw,76px);font-weight:500;line-height:1.04}.home-h1 .line{display:block}.home-h1 em,.sec-title em{color:var(--green);font-style:italic;font-weight:400}.home-sub{color:var(--text-2);max-width:32em;margin:0 auto 36px;font-size:19px;line-height:1.7}.home-ctas{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.home-ctas .btn{min-height:48px;transition:background-color .2s,border-color .2s,color .2s,transform .2s,box-shadow .2s}html[dir=rtl] .home-h1{font-family:var(--font-head);letter-spacing:0;font-size:clamp(32px,4.6vw,58px);font-weight:700;line-height:1.45}html[dir=rtl] :is(.home-h1,.sec-title) em{font-style:normal;font-weight:inherit}.op-section{padding-block:112px}.sec-head{max-width:46rem;margin-bottom:56px}.sec-kicker{letter-spacing:.12em;text-transform:uppercase;color:var(--copper);align-items:center;gap:10px;margin:0 0 16px;font-size:12.5px;font-weight:600;display:inline-flex}.sec-n{font-family:var(--font-mono);letter-spacing:0;color:var(--text-3);border-inline-end:1px solid var(--border-strong);padding-inline-end:10px;font-weight:500}html[dir=rtl] .sec-kicker{letter-spacing:0;font-size:14px}.sec-title{letter-spacing:-.015em;margin:0;font-family:Newsreader,Georgia,serif;font-size:clamp(30px,3.6vw,48px);font-weight:500;line-height:1.12}html[dir=rtl] .sec-title{font-family:var(--font-head);letter-spacing:0;font-size:clamp(26px,3vw,38px);font-weight:700;line-height:1.5}.sec-lede{color:var(--text-2);max-width:40em;margin:18px 0 0;font-size:17.5px;line-height:1.7}.mini-label{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--text-3);margin:0 0 12px;font-size:12px;font-weight:500;display:block}html[dir=rtl] .mini-label{font-family:var(--font-body);letter-spacing:0;font-size:13.5px;font-weight:600}.home-problems{background:var(--bg-alt);border-block:1px solid var(--border);padding-block:80px}.home-stakes{padding-block:80px 88px}.home-h2{letter-spacing:-.01em;max-width:24em;margin:0 auto 16px;font-family:Newsreader,Georgia,serif;font-size:clamp(24px,2.6vw,34px);font-weight:500;line-height:1.2}.home-h2 em,.stakes-statement em{color:var(--green);font-style:italic;font-weight:400}html[dir=rtl] .home-h2{font-family:var(--font-head);letter-spacing:0;font-size:clamp(22px,2.3vw,29px);font-weight:700;line-height:1.55}html[dir=rtl] :is(.home-h2,.stakes-statement) em{font-style:normal;font-weight:inherit}.home-lede{color:var(--text-2);max-width:36em;margin:0 auto;font-size:17.5px}.pills{flex-wrap:wrap;justify-content:center;gap:12px;max-width:920px;margin:36px auto 0;padding:0;list-style:none;display:flex}.pill{background:var(--surface);border:1px solid var(--border);color:var(--text);border-radius:999px;align-items:center;gap:10px;padding:10px 18px;font-size:15.5px;line-height:1.4;transition:transform .2s,border-color .2s,background-color .2s,box-shadow .2s;display:inline-flex;box-shadow:0 1px 2px #15191b0a}.pill .x{color:var(--copper);font-size:15px;font-weight:700;line-height:1;transition:transform .25s;display:inline-block}.pill:hover{border-color:var(--border-strong);background:#fffdf9;transform:translateY(-2px);box-shadow:0 6px 16px #15191b0f}.pill:hover .x{transform:rotate(90deg)}.stakes-statement{letter-spacing:-.008em;max-width:28em;margin:0 auto;font-family:Newsreader,Georgia,serif;font-size:clamp(22px,2.4vw,30px);font-weight:500;line-height:1.3}html[dir=rtl] .stakes-statement{font-family:var(--font-head);letter-spacing:0;font-size:clamp(20px,2.1vw,26px);font-weight:700;line-height:1.7}.stakes{border-top:1px solid var(--border-strong);grid-template-columns:repeat(3,minmax(0,1fr));max-width:1040px;margin:52px auto 0;padding:0;list-style:none;display:grid}.stake{padding:30px 36px 4px;position:relative}.stake+.stake{border-inline-start:1px solid var(--border)}.stake:not(:last-child):after{content:"→";top:-13px;z-index:1;background:var(--bg);border:1px solid var(--border-strong);width:26px;height:26px;color:var(--green);border-radius:50%;place-items:center;font-size:13px;line-height:1;display:grid;position:absolute;inset-inline-end:-13px}html[dir=rtl] .stake:not(:last-child):after{content:"←"}.stake-icon{background:var(--green-soft);width:44px;height:44px;color:var(--green);border-radius:12px;place-items:center;margin-bottom:16px;display:grid}.stake:last-child .stake-icon{color:var(--copper);background:#f5e7de}.stake h3{margin-bottom:8px;font-family:Newsreader,Georgia,serif;font-size:21px;font-weight:500;line-height:1.25}html[dir=rtl] .stake h3{font-family:var(--font-head);font-size:19px;font-weight:700;line-height:1.5}.stake p{color:var(--text-2);max-width:20em;margin:0;font-size:16px}@media (prefers-reduced-motion:no-preference){.js-anim .pill.reveal.is-in{transition:transform .2s,border-color .2s,background-color .2s,box-shadow .2s,opacity .7s}.js-anim .stake.reveal:after{opacity:0;transition:opacity .5s;transition-delay:calc(var(--d,0s) + .45s)}.js-anim .stake.reveal.is-in:after{opacity:1}}@media (width<=900px){.stakes{border-top:0;grid-template-columns:1fr;max-width:520px}.stake{text-align:center;flex-direction:column;align-items:center;padding:24px 8px;display:flex}.stake+.stake{border-inline-start:0;border-top:1px solid var(--border)}.stake:not(:last-child):after{content:"↓";top:auto;bottom:-13px;inset-inline-end:calc(50% - 13px)}html[dir=rtl] .stake:not(:last-child):after{content:"↓"}.stake p{max-width:26em}}@media (width<=760px){.home-problems,.home-stakes{padding-block:60px}.pills{gap:8px;margin-top:28px}.pill{padding:8px 14px;font-size:14.5px}.stakes{margin-top:36px}}@media (prefers-reduced-motion:reduce){.pill:hover,.pill:hover .x{transform:none}}.about{isolation:isolate;background:var(--bg-alt);border-block:1px solid var(--border);position:relative;overflow:hidden}.about-inner{z-index:1;position:relative}.about-kicker{margin-bottom:40px}.about-bg{z-index:0;pointer-events:none;position:absolute;inset:0}.about-grid-tex{background-image:linear-gradient(90deg,#15191b0b 1px,#0000 1px),linear-gradient(#15191b0b 1px,#0000 1px);background-size:56px 56px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(75% 60% at 50% 35%,#000 10%,#0000 75%);mask-image:radial-gradient(75% 60% at 50% 35%,#000 10%,#0000 75%)}.about-layer{will-change:transform;position:absolute;inset:0}.about-blob{filter:blur(26px);border-radius:50%;position:absolute}.about-blob-a{top:-130px;background:radial-gradient(circle at 45% 45%,#cde2d7 0%,#cde2d780 45%,#cde2d700 70%);width:440px;height:440px;inset-inline-end:-150px}.about-blob-b{bottom:-150px;background:radial-gradient(circle,#f0d7c6 0%,#f0d7c680 45%,#f0d7c600 70%);width:380px;height:380px;inset-inline-start:-140px}.about-blob-c{top:38%;background:radial-gradient(circle,#f0d7c6bf,#f0d7c600 70%);width:220px;height:220px;inset-inline-end:4%}.about-profile{grid-template-columns:252px minmax(0,1fr);align-items:center;gap:72px;display:grid}.ap-parallax{will-change:transform}.ap-frame{background:linear-gradient(150deg,#fff 0%,#f8f4ee 55%,#efe7db 100%);border:1px solid #15191b29;border-radius:24px;margin:0;padding:9px;position:relative;box-shadow:0 0 0 6px #ffffff8c,0 0 0 7px #15191b0f,0 2px 4px #15191b0f,0 24px 54px #36302529}.ap-photo{aspect-ratio:4/5;background:#e9e3d9;border-radius:16px;overflow:hidden}.ap-photo img{object-fit:cover;object-position:50% 26%;width:100%;height:100%}.ap-dot{top:-5px;background:var(--green);border-radius:50%;width:9px;height:9px;position:absolute;inset-inline-start:26px;box-shadow:0 0 0 4px #ffffffd9,0 0 0 5px #1e5b4a40}.ap-corner{bottom:-7px;border-bottom:1.5px solid var(--copper);border-inline-end:1.5px solid var(--copper);border-end-end-radius:12px;width:26px;height:26px;position:absolute;inset-inline-end:-7px}.about-text{max-width:40rem}.about-lead{letter-spacing:-.012em;color:var(--text);margin:0 0 22px;font-family:Newsreader,Georgia,serif;font-size:clamp(26px,2.6vw,36px);font-weight:500;line-height:1.25}html[dir=rtl] .about-lead{font-family:var(--font-head);letter-spacing:0;font-size:clamp(23px,2.2vw,31px);font-weight:700;line-height:1.65}.about-points{gap:8px;margin:0;padding:0;list-style:none;display:grid}.about-points li{color:#262b2e;padding-inline-start:24px;font-size:17.5px;line-height:1.6;position:relative}.about-points li:before{content:"";inset-inline-start:2px;background:var(--green);border-radius:2px;width:11px;height:2px;position:absolute;top:.78em}.about-points mark{background:var(--green-soft);color:var(--green);border-radius:5px;padding:1px 4px;font-weight:600}.about-edu{border-top:1px solid #d3cabc;margin-top:28px;padding-top:20px}.about .mini-label{color:#474c4f}.edu-line{flex-wrap:wrap;align-items:baseline;gap:2px 10px;margin:0 0 12px;display:flex}.edu-school{color:var(--text);font-family:Newsreader,Georgia,serif;font-size:21px;font-weight:500}.edu-sep{color:var(--copper)}.edu-program{color:#383e41;font-size:15.5px}.edu-track{align-items:center;gap:10px;max-width:26rem;display:flex}.edu-year{font-family:var(--font-mono);color:var(--text);font-size:13px}.edu-dot{background:var(--green);border-radius:50%;flex:none;width:9px;height:9px}.edu-ring{border:1.5px solid var(--green);background:var(--bg-alt);border-radius:50%;flex:none;width:9px;height:9px}.edu-rail{background:#1e5b4a29;flex:1;height:1.5px;position:relative}.edu-rail-fill{background:var(--green);transform-origin:0;position:absolute;inset:0}html[dir=rtl] .edu-rail-fill{transform-origin:100%}.skills-block{margin-top:64px}.skills-title{margin:0 0 14px}.skill-cards{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:14px;margin:0;padding:0;list-style:none;display:grid}.skill-card{background:var(--surface);border:1px solid #d3cabc;border-radius:18px;padding:16px 18px 18px;position:relative;overflow:hidden;box-shadow:0 1px 2px #15191b0d,0 12px 28px #36302512}.skill-card:before{content:"";top:0;background:#a5522b8c;border-radius:0 0 2px 2px;height:2px;position:absolute;inset-inline:18px}.skill-card.is-accent{background:linear-gradient(160deg,#fff 0% 55%,#f1f6f3 100%);border-color:#1e5b4a73}.skill-card.is-accent:before{background:var(--green)}.sc-head{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.sc-num{font-family:var(--font-mono);color:#474c4f;letter-spacing:.04em;font-size:12.5px;font-weight:500}.sc-icon{width:30px;height:30px;color:var(--copper);background:#f5e7de;border-radius:9px;place-items:center;display:grid}.skill-card.is-accent .sc-icon{background:var(--green-soft);color:var(--green)}.sc-title{color:var(--text);margin:0 0 12px;font-family:Newsreader,Georgia,serif;font-size:20px;font-weight:500;line-height:1.25}html[dir=rtl] .sc-title{font-family:var(--font-head);font-size:17.5px;font-weight:700;line-height:1.5}.sc-pills{flex-wrap:wrap;gap:7px;margin:0;padding:0;list-style:none;display:flex}.sc-pills li{color:var(--text);background:#f4f0e9;border:1px solid #d3cabc;border-radius:999px;padding:4px 11px;font-size:13.5px;font-weight:500}.sc-pills li.is-hl{background:var(--green);border-color:var(--green);color:#fff;font-weight:600}.skill-card{transition:border-color .3s,box-shadow .3s,translate .3s,opacity .6s,transform .6s}.ap-frame{transition:box-shadow .3s,opacity .7s,transform .8s}.sc-icon{transition:transform .3s}.sc-pills li{transition:translate .25s,border-color .25s,background-color .25s,color .25s,opacity .45s,transform .45s}@media (hover:hover){.skill-card:hover{border-color:#1e5b4a99;box-shadow:0 1px 2px #15191b0d,0 20px 40px #3630251f}.skill-card:hover .sc-pills li:not(.is-hl){border-color:#1e5b4a59}.sc-pills li:not(.is-hl):hover{border-color:var(--green);color:var(--green);background:#fff}}@media (hover:hover) and (prefers-reduced-motion:no-preference){.skill-card:hover{translate:0 -4px}.skill-card:hover .sc-icon{transform:rotate(-8deg)scale(1.08)}.sc-pills li:hover{translate:0 -2px}}@media (prefers-reduced-motion:no-preference){.about{--dir:1}html[dir=rtl] .about{--dir:-1}.about-blob-a{animation:20s ease-in-out infinite paused aboutDriftA}.about-blob-b{animation:24s ease-in-out infinite paused aboutDriftB}.about-blob-c{animation:17s ease-in-out infinite paused aboutDriftC}.about.is-onscreen .about-blob{animation-play-state:running}@keyframes aboutDriftA{50%{transform:translate3d(calc(-50px * var(--dir)), 40px, 0) scale(.85)}}@keyframes aboutDriftB{50%{transform:translate3d(calc(46px * var(--dir)), -50px, 0) scale(1.16)}}@keyframes aboutDriftC{50%{transform:translate3d(calc(-36px * var(--dir)), 28px, 0) scale(1.22)}}.js-anim .ap-frame.reveal{transition:opacity .7s ease var(--d), transform .9s cubic-bezier(.2, .7, .2, 1) var(--d), box-shadow .3s ease;transform:translateY(24px)}.js-anim .ap-frame.reveal.is-in{transform:none}.js-anim .ap-frame.reveal .ap-photo{clip-path:inset(100% 0 0 round 16px);transition:clip-path 1s cubic-bezier(.2, .7, .2, 1) calc(var(--d) + .18s)}.js-anim .ap-frame.reveal .ap-photo img{transition:transform 1.4s cubic-bezier(.2, .7, .2, 1) calc(var(--d) + .18s);transform:scale(1.03)}.js-anim .ap-frame.reveal .ap-dot{opacity:0;transition:opacity .4s ease calc(var(--d) + .9s), transform .55s cubic-bezier(.3, 1.6, .5, 1) calc(var(--d) + .9s);transform:scale(.2)}.js-anim .ap-frame.reveal .ap-corner{opacity:0;transform:translate(calc(-8px * var(--dir)), -8px);transition:opacity .5s ease calc(var(--d) + 1s), transform .6s cubic-bezier(.2, .7, .2, 1) calc(var(--d) + 1s)}.js-anim .ap-frame.reveal.is-in .ap-photo{clip-path:inset(0 round 16px)}.js-anim .ap-frame.reveal.is-in :is(.ap-photo img,.ap-dot,.ap-corner){opacity:1;transform:none}.js-anim .about-edu.reveal .edu-rail-fill{transition:transform 1s cubic-bezier(.2, .7, .2, 1) calc(var(--d) + .25s);transform:scaleX(0)}.js-anim .about-edu.reveal.is-in .edu-rail-fill{transform:scaleX(1)}.js-anim .about-edu.reveal .edu-ring{opacity:0;transition:opacity .3s ease calc(var(--d) + 1.15s), transform .4s cubic-bezier(.3, 1.6, .5, 1) calc(var(--d) + 1.15s);transform:scale(.3)}.js-anim .about-edu.reveal.is-in .edu-ring{opacity:1;transform:none}.js-anim .skill-card.reveal{transition:border-color .3s ease, box-shadow .3s ease, translate .3s ease, opacity .6s ease var(--d), transform .75s cubic-bezier(.2, .7, .2, 1) var(--d);transform:translateY(22px)}.js-anim .skill-card.reveal.is-in{transform:none}.js-anim .skill-card.reveal .sc-head{opacity:0;transition:opacity .4s ease calc(var(--d) + .12s), transform .4s ease calc(var(--d) + .12s);transform:translateY(6px)}.js-anim .skill-card.reveal .sc-icon{transition:transform .5s cubic-bezier(.3, 1.6, .5, 1) calc(var(--d) + .16s);transform:scale(.6)rotate(-20deg)}.js-anim .skill-card.reveal .sc-title{opacity:0;transition:opacity .45s ease calc(var(--d) + .2s), transform .45s ease calc(var(--d) + .2s);transform:translateY(8px)}.js-anim .skill-card.reveal .sc-pills li{opacity:0;transition-delay:0s, 0s, 0s, 0s, calc(var(--d) + .28s + var(--k) * 55ms), calc(var(--d) + .28s + var(--k) * 55ms);transform:translateY(8px)scale(.94)}.js-anim .skill-card.reveal:before{transition:transform .6s cubic-bezier(.2, .7, .2, 1) calc(var(--d) + .15s);transform:scaleX(0)}html[dir=rtl].js-anim .skill-card.reveal:before{transform-origin:100%}.js-anim .skill-card.reveal.is-in :is(.sc-head,.sc-title,.sc-pills li){opacity:1;transform:none}.js-anim .skill-card.reveal.is-in .sc-icon{transform:none}.js-anim .skill-card.reveal.is-in:before{transform:scaleX(1)}.js-anim .skill-card.reveal.is-in:hover .sc-icon{transition-delay:0s;transform:rotate(-8deg)scale(1.08)}}.skill-card:before{transform-origin:0}@media (width<=1024px){.about-profile{grid-template-columns:220px minmax(0,1fr);gap:44px}}@media (width<=760px){.about-kicker{margin-bottom:28px}.about-profile{grid-template-columns:1fr;gap:30px}.ap-col{width:196px;margin-inline:auto}.ap-parallax{transform:none!important}.ap-frame{border-radius:20px;padding:7px}.ap-photo{border-radius:14px}.about-points li{font-size:16px}.edu-sep{display:none}.edu-line{flex-direction:column;align-items:flex-start;gap:2px}.skills-block{margin-top:48px}.skill-cards{grid-template-columns:1fr;gap:12px}.about-blob-c{display:none}.about-blob-a{top:-90px;width:300px;height:300px;inset-inline-end:-130px}.about-blob-b{width:260px;height:260px}.js-anim .skill-card.reveal .sc-pills li{transition-delay:0s, 0s, 0s, 0s, calc(var(--d) + .2s), calc(var(--d) + .2s)}}@media (prefers-reduced-motion:reduce){.ap-parallax,.about-layer{transform:none!important}}.certs{margin-top:48px}.cert-list{gap:12px;margin:0;padding:0;list-style:none;display:grid}.cert{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-m);flex-wrap:wrap;justify-content:space-between;gap:6px 16px;padding:16px 20px;display:flex}.cert span{color:var(--text-2);font-size:15px}.projects .pj-sec-head{margin-bottom:32px}.pj-list{gap:24px;display:grid}.pj-item{background:#fffdfa;border:1px solid #ddd4c6;border-radius:24px;padding:30px 32px 24px;scroll-margin-top:16px;transition:border-color .3s;position:relative;box-shadow:0 1px 2px #15191b08,0 10px 30px #3630250b}.pj-main{grid-template:"media head""media body"1fr/minmax(0,55fr) minmax(0,45fr);column-gap:40px;display:grid}.pj-item.is-flip .pj-main{grid-template-columns:minmax(0,45fr) minmax(0,55fr);grid-template-areas:"head media""body media"}.pj-head{grid-area:head}.pj-media{grid-area:media;align-self:start;position:sticky;top:92px}.pj-body{grid-area:body}.pj-meta{flex-wrap:wrap;align-items:baseline;margin:0 0 10px;font-size:11.5px;line-height:1.4;display:flex}.pj-num{font-family:var(--font-mono);letter-spacing:.04em;color:#6a7073;font-size:12px;font-weight:500}.pj-meta-sep{color:#b0a696;margin-inline:9px}.pj-cat{letter-spacing:.11em;text-transform:uppercase;color:var(--copper);margin:0;font-weight:600}html[dir=rtl] .pj-cat{letter-spacing:0;text-transform:none;font-size:13px}.pj-title{letter-spacing:-.012em;color:var(--text);margin:0;font-family:Newsreader,Georgia,serif;font-size:clamp(24px,2.2vw,30px);font-weight:500;line-height:1.15}html[dir=rtl] .pj-title{text-align:right}.pj-intro{color:#3c4245;margin:10px 0 0;font-size:16px;line-height:1.58}.car-stage{outline-offset:3px;touch-action:pan-y;background:radial-gradient(120% 95% at 50% 0%, #1f292d 0%, var(--dark) 72%);border:1px solid #263136;border-radius:16px;height:clamp(360px,31vw,440px);position:relative;overflow:hidden}.car-track{will-change:transform;height:100%;transition:transform .5s cubic-bezier(.2,.7,.2,1);display:flex}.car-slide{flex:0 0 100%;height:100%;margin:0}.car-zoom{cursor:zoom-in;grid-template:minmax(0,1fr)/minmax(0,1fr);place-items:center;width:100%;height:100%;padding:16px;display:grid;position:relative}.car-zoom img{object-fit:contain;border-radius:6px;width:auto;max-width:100%;height:auto;max-height:100%;transition:transform .45s cubic-bezier(.2,.7,.2,1);box-shadow:0 10px 30px #00000059}.car-zoom-hint{bottom:12px;color:var(--text);opacity:0;background:#fffffff0;border-radius:999px;align-items:center;gap:6px;padding:7px 11px;font-size:12.5px;font-weight:600;line-height:1;transition:opacity .2s,transform .2s;display:inline-flex;position:absolute;inset-inline-end:12px;transform:translateY(4px)}.car-zoom:focus-visible{outline:2px solid var(--dark-green);outline-offset:-4px}.car-zoom:focus-visible .car-zoom-hint{opacity:1;transform:none}@media (hover:hover){.car-zoom:hover img{transform:scale(1.012)}.car-zoom:hover .car-zoom-hint{opacity:1;transform:none}}@media (hover:none){.car-zoom-hint{opacity:1;transform:none}}.car-count{z-index:2;bottom:12px;pointer-events:none;font-family:var(--font-mono);color:var(--dark-text);background:#12191cc7;border:1px solid #ffffff1f;border-radius:999px;margin:0;padding:6px 10px;font-size:12px;line-height:1;position:absolute;inset-inline-start:12px}.car-btn{z-index:2;cursor:pointer;width:40px;height:40px;color:var(--text);background:#fffffff0;border:1px solid #15191b1f;border-radius:50%;place-items:center;margin-top:-20px;transition:background-color .2s,color .2s,transform .2s;display:grid;position:absolute;top:50%;box-shadow:0 6px 16px #00000047}.car-prev{inset-inline-start:12px}.car-next{inset-inline-end:12px}.car-btn span,.lightbox-nav span{border-top:2px solid;border-right:2px solid;width:9px;height:9px}.car-next span,.lightbox-next span{transform:translate(-2px)rotate(45deg)}.car-prev span,.lightbox-prev span,html[dir=rtl] .car-next span,html[dir=rtl] .lightbox-next span{transform:translate(2px)rotate(-135deg)}html[dir=rtl] .car-prev span,html[dir=rtl] .lightbox-prev span{transform:translate(-2px)rotate(45deg)}.car-btn:hover{color:var(--green);background:#fff}.car-btn:active{transform:scale(.94)}.pj-body{border-top:1px solid #e6dfd3;gap:14px;margin-top:18px;padding-top:16px;display:grid}.pj-block{padding-inline-start:14px;position:relative}.pj-problem,.pj-solution{border-inline-start:2px solid var(--pj-accent-soft)}.pj-problem{--pj-accent:var(--copper);--pj-accent-soft:#e8c8b5}.pj-solution{--pj-accent:var(--green);--pj-accent-soft:#b9d3c8}.pj-label{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:#474c4f;align-items:center;gap:7px;margin:0 0 5px;font-size:11px;font-weight:500;line-height:1.3;display:flex}.pj-problem .pj-label,.pj-solution .pj-label{color:var(--pj-accent)}html[dir=rtl] .pj-label{font-family:var(--font-body);letter-spacing:0;font-size:13px;font-weight:600}.pj-block p{color:#262b2e;margin:0;font-size:14.5px;line-height:1.6}.pj-proof{padding-inline-start:0}.pj-proof .pj-label{color:var(--text)}.pj-proofs{gap:4px;margin:0;padding:0;list-style:none;display:grid}.pj-proofs li{color:var(--text);grid-template-columns:17px minmax(0,1fr);gap:7px;font-size:13.5px;font-weight:600;line-height:1.45;display:grid}.pj-proofs svg{color:var(--green);margin-top:2px}.pj-stack{border-top:1px dashed #ddd5c8;flex-wrap:wrap;align-items:center;gap:8px 14px;margin-top:18px;padding-top:14px;display:flex}.pj-stack .pj-label{color:#6a7073;margin:0}.stack-list{flex-wrap:wrap;flex:1 1 0;gap:6px;min-width:min(100%,260px);margin:0;padding:0;list-style:none;display:flex}.stack-badge{white-space:nowrap;background:#faf8f4;border:1px solid #e4dccf;border-radius:999px;align-items:center;gap:6px;height:28px;padding-block:0;padding-inline:7px 10px;font-size:12px;line-height:1;transition:border-color .2s,background-color .2s;display:inline-flex}.tool-logo{flex:none;place-items:center;width:16px;height:16px;display:grid}.tool-logo svg{width:16px;height:16px}.tool-name{color:var(--text);font-weight:600}.tool-sep{color:#a69d90}.tool-role{color:#565c5f}@media (hover:hover){.stack-badge:hover{background:#fff;border-color:#1e5b4a73}.pj-item:hover{border-color:#d2c7b6}}@media (prefers-reduced-motion:reduce){.car-track,.car-zoom img{transition:none!important}}@media (width<=1100px){.pj-item{padding:24px 24px 20px}.pj-main{grid-template-columns:minmax(0,55fr) minmax(0,45fr);column-gap:28px}.pj-item.is-flip .pj-main{grid-template-columns:minmax(0,45fr) minmax(0,55fr)}.car-stage{height:340px}}@media (width<=860px){.projects .pj-sec-head{margin-bottom:26px}.pj-item{border-radius:22px;padding:20px}.pj-main,.pj-item.is-flip .pj-main{grid-template:"head""media""body"/minmax(0,1fr);row-gap:16px}.pj-media{position:static}.pj-body{margin-top:0}.pj-stack{margin-top:16px}.car-stage{height:clamp(250px,50vw,380px)}}@media (width<=560px){.pj-list{gap:28px}.projects .pj-sec-head{margin-bottom:22px}.pj-item{border-radius:18px;padding:16px}.pj-main,.pj-item.is-flip .pj-main{row-gap:14px}.pj-stack{margin-top:14px}.pj-title{font-size:24px}.pj-intro{font-size:15.5px}.car-stage{border-radius:12px;height:240px}.car-zoom{padding:8px}.car-btn{width:34px;height:34px;margin-top:-17px}.car-prev{inset-inline-start:6px}.car-next{inset-inline-end:6px}.car-count,.car-zoom-hint{bottom:8px}.car-count{inset-inline-start:8px}.car-zoom-hint{inset-inline-end:8px}.pj-stack{gap:8px}.stack-list{flex-basis:100%}}.process-steps{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:0;padding:0;list-style:none;display:grid;position:relative}.process-steps:before{content:"";top:46px;background:var(--border-strong);transform-origin:0;height:1px;position:absolute;inset-inline:12%}html[dir=rtl] .process-steps:before{transform-origin:100%}.process-step{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-l);padding:26px 24px 28px;transition:transform .22s,border-color .22s,box-shadow .22s;position:relative}.ps-n{width:40px;height:40px;font-family:var(--font-mono);color:var(--green);background:var(--surface);border:1px solid var(--border-strong);border-radius:50%;place-items:center;margin-bottom:20px;font-size:13px;display:inline-grid}.process-step h3{color:var(--green);margin-bottom:8px;font-family:Newsreader,Georgia,serif;font-size:22px;font-weight:500;line-height:1.25}html[dir=rtl] .process-step h3{font-family:var(--font-head);font-size:19px;font-weight:700;line-height:1.5}.process-step p{color:var(--text-2);margin:0;font-size:15.5px;line-height:1.65}.process-step.is-last{border-color:#1e5b4a52}.process-step.is-last .ps-n{border-color:var(--green)}.faq-inner{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:start;gap:72px;max-width:1088px;display:grid}.faq-intro .sec-title{font-size:clamp(30px,3.2vw,42px)}.faq-lede{color:var(--text-2);max-width:24em;margin:16px 0 0;font-size:17px;line-height:1.7}.faq-list{border-top:1px solid var(--border)}.faq-item{border-bottom:1px solid var(--border)}.faq-q{font:inherit;margin:0}.faq-btn{cursor:pointer;text-align:start;width:100%;color:var(--text);font-family:var(--font-body);background:0 0;border:0;justify-content:space-between;align-items:center;gap:24px;padding:22px 0;font-size:17px;font-weight:500;line-height:1.45;display:flex}html[dir=rtl] .faq-btn{font-size:17.5px}.faq-btn:hover .faq-q-text{color:var(--green)}.faq-btn:focus-visible{outline-offset:4px}.faq-q-text{transition:color .2s}.faq-icon{border:1px solid var(--border-strong);width:30px;height:30px;color:var(--text-2);border-radius:50%;flex:none;transition:transform .3s,background-color .25s,border-color .25s,color .25s;position:relative}.faq-icon:before,.faq-icon:after{content:"";background:currentColor;border-radius:1px;width:11px;height:1.5px;margin:-.75px 0 0 -5.5px;position:absolute;top:50%;left:50%}.faq-icon:after{transform:rotate(90deg)}.faq-btn:hover .faq-icon{border-color:var(--green);color:var(--green)}.faq-item.is-open .faq-icon{background:var(--green);border-color:var(--green);color:#fff;transform:rotate(45deg)}.faq-panel-inner p{color:var(--text-2);margin:0;padding:0 54px 24px 0;font-size:16px;line-height:1.7}html[dir=rtl] .faq-panel-inner p{padding:0 0 24px 54px}.faq-js .faq-panel{grid-template-rows:0fr;transition:grid-template-rows .32s;display:grid}.faq-js .faq-panel-inner{opacity:0;min-height:0;transition:opacity .25s;overflow:hidden}.faq-js .faq-item.is-open .faq-panel{grid-template-rows:1fr}.faq-js .faq-item.is-open .faq-panel-inner{opacity:1;transition-delay:60ms}@media (prefers-reduced-motion:reduce){.faq-js .faq-panel,.faq-js .faq-panel-inner,.faq-icon{transition:none}}@media (width<=860px){.faq-inner{grid-template-columns:minmax(0,1fr);gap:32px}}@media (width<=560px){.faq-btn{gap:16px;padding:18px 0;font-size:16px}.faq-panel-inner p{padding-inline-end:0;font-size:15.5px}html[dir=rtl] .faq-panel-inner p{padding:0 0 20px}}.contact-dark{padding-block:24px 96px}.contact-box{background:radial-gradient(50% 60% at 90% 0%, #7cc5a614, transparent 65%), radial-gradient(40% 55% at 0% 100%, #a5522b14, transparent 65%), var(--dark);color:var(--dark-text);border-radius:28px;padding:80px 56px 84px}.contact-box-inner{max-width:800px;margin-inline:auto}.sec-head-dark .sec-kicker{color:var(--dark-green)}.sec-head-dark .sec-n{color:var(--dark-text-2);border-color:var(--dark-border)}.sec-head-dark .sec-title{color:var(--dark-text)}.sec-head-dark .sec-title em{color:var(--dark-green)}.sec-head-dark .sec-lede{color:var(--dark-text-2)}.contact-dark .sec-head{margin-bottom:32px}.contact-grid{grid-template-columns:minmax(0,1fr);gap:36px;display:grid}.call-card-dark{background:var(--dark-surface);border:1px solid var(--dark-border);border-radius:24px;padding:34px 36px 32px;position:relative;overflow:hidden}.call-card-dark:before{content:"";top:0;background:var(--dark-green);border-radius:0 0 3px 3px;height:3px;position:absolute;inset-inline:36px}.call-card-dark .call-icon{width:54px;height:54px;color:var(--dark-green);background:#7cc5a61f;border-radius:16px;place-items:center;margin-bottom:18px;display:inline-grid}.call-card-dark .call-title{color:var(--dark-text);margin-bottom:16px;font-family:Newsreader,Georgia,serif;font-size:clamp(26px,2.6vw,34px);font-weight:500;line-height:1.15}html[dir=rtl] .call-card-dark .call-title{font-family:var(--font-head);font-size:clamp(22px,2.2vw,28px);font-weight:700;line-height:1.5}.call-card-dark .call-meta{flex-wrap:wrap;gap:8px;margin:0 0 18px;padding:0;list-style:none;display:flex}.call-card-dark .call-meta li{color:var(--dark-text);border:1px solid var(--dark-border);border-radius:999px;align-items:center;gap:7px;padding:5px 12px;font-size:14px;font-weight:500;display:inline-flex}.call-card-dark .call-meta svg{color:var(--dark-green)}.call-card-dark .call-text{color:var(--dark-text-2);max-width:36em;margin:0 0 24px;font-size:16.5px;line-height:1.7}.call-card-dark .call-btn{min-height:50px;padding:13px 26px;transition:background-color .2s,transform .2s}.write-title{color:var(--dark-text);margin:0;font-family:Newsreader,Georgia,serif;font-size:22px;font-weight:500}html[dir=rtl] .write-title{font-family:var(--font-head);font-size:21px;font-weight:700}.contact-dark .contact-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;max-width:none;margin:16px 0 0}.contact-dark .contact-card{background:var(--dark-surface);border-color:var(--dark-border);color:var(--dark-text);gap:16px;min-height:84px;padding:16px 20px}.contact-dark .contact-card:hover{background:#212c31;border-color:#7cc5a673;box-shadow:0 14px 30px #00000040}.contact-dark .cc-icon{border-radius:13px;width:44px;height:44px}.contact-dark .cc-value{font-size:15.5px}.contact-dark .cc-whatsapp{color:var(--dark-green);background:#7cc5a624}.contact-dark .cc-email{color:#e3a679;background:#e09a6224}.contact-dark .cc-label,.contact-dark .cc-arrow{color:var(--dark-text-2)}.contact-dark .contact-card:hover .cc-arrow{color:var(--dark-green)}.contact-dark :focus-visible{outline-color:var(--dark-green)}.lightbox{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;color:var(--dark-text);background:0 0;border:0;margin:0;padding:0;overflow:hidden}.lightbox::backdrop{background:#0a0e10f7}html.lightbox-open{overflow:hidden}.lightbox :focus-visible{outline:2px solid var(--dark-green);outline-offset:3px}.lb-bar{z-index:3;top:0;pointer-events:none;background:linear-gradient(#0a0e10e6,#0a0e1000);justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex;position:fixed;inset-inline:0}.lb-bar>*{pointer-events:auto}.lightbox-count{min-width:56px;font-family:var(--font-mono);color:var(--dark-text);margin:0;font-size:13px}.lb-tools{background:var(--dark-surface);border:1px solid var(--dark-border);border-radius:999px;align-items:center;gap:2px;padding:4px;display:flex}.lb-tool{width:38px;height:38px;color:var(--dark-text);cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;padding:0;transition:background-color .2s,color .2s;display:grid}.lb-tool svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.lb-tool:hover:not(:disabled){color:var(--dark-green);background:#ffffff17}.lb-tool:disabled{opacity:.35;cursor:default}.lb-level{text-align:center;min-width:48px;font-family:var(--font-mono);color:var(--dark-text-2);font-size:12.5px}.lightbox-close{cursor:pointer;background:var(--dark-surface);width:44px;height:44px;color:var(--dark-text);border:1px solid var(--dark-border);border-radius:50%;place-items:center;font-size:26px;line-height:1;display:grid}.lightbox-close:hover{border-color:var(--dark-green)}.lightbox-scroller{overscroll-behavior:contain;touch-action:pan-y;scrollbar-color:#3a464c transparent;padding:70px 80px 64px;display:grid;position:absolute;inset:0;overflow:auto}.lightbox.is-zoomed .lightbox-scroller{touch-action:pan-x pan-y;cursor:grab}.lightbox.is-dragging .lightbox-scroller{cursor:grabbing}.lightbox-img{-webkit-user-select:none;user-select:none;background:#1e1e1e;border-radius:8px;max-width:none;height:auto;margin:auto;box-shadow:0 30px 80px #00000080}.lightbox-nav{z-index:3;cursor:pointer;width:48px;height:48px;color:var(--dark-text);background:var(--dark-surface);border:1px solid var(--dark-border);border-radius:50%;place-items:center;margin-top:-24px;transition:border-color .2s,color .2s;display:none;position:fixed;top:50%}.lightbox.is-gallery .lightbox-nav{display:grid}.lightbox-prev{inset-inline-start:16px}.lightbox-next{inset-inline-end:16px}.lightbox-nav:hover{border-color:var(--dark-green);color:var(--dark-green)}.lightbox-meta{z-index:2;bottom:0;text-align:center;pointer-events:none;color:var(--dark-text-2);background:linear-gradient(#0a0e1000,#0a0e10e6);margin:0;padding:22px 80px 16px;font-size:14px;line-height:1.5;position:fixed;inset-inline:0}.lightbox-caption{max-width:900px;display:inline-block}@media (prefers-reduced-motion:no-preference){.lightbox[open]{animation:.3s lbIn}.lightbox[open] .lightbox-img{animation:.35s cubic-bezier(.2,.7,.2,1) lbImg}@keyframes lbIn{0%{opacity:0}}@keyframes lbImg{0%{opacity:0;transform:scale(.97)}}}@media (width<=760px){.lb-bar{gap:8px;padding:10px}.lb-tool{width:34px;height:34px}.lb-level{min-width:42px}.lightbox-close{width:40px;height:40px}.lightbox-scroller{padding:64px 10px 92px}.lightbox-nav{width:44px;height:44px;margin-top:0;top:auto;bottom:14px}.lightbox-prev{inset-inline-start:10px}.lightbox-next{inset-inline-end:10px}.lightbox-meta{min-height:72px;padding:22px 64px 14px;font-size:13px}}@media (hover:hover) and (prefers-reduced-motion:no-preference){.process-step:hover{border-color:#1e5b4a59;transform:translateY(-3px);box-shadow:0 14px 30px #15191b12}.home-ctas .btn-primary:hover,.call-btn:hover{transform:translateY(-1px)}}@media (prefers-reduced-motion:no-preference){.js-anim .hero-in{opacity:0;animation:.8s cubic-bezier(.2,.7,.2,1) forwards heroIn;animation-delay:var(--d,0s)}@keyframes heroIn{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.js-anim .home-h1 em{background:linear-gradient(currentColor,currentColor) 0 92%/0 1px no-repeat;animation:1s .75s forwards underline}html[dir=rtl].js-anim .home-h1 em{background-position:100% 92%}@keyframes underline{to{background-size:100% 1px}}.js-anim .hero-grid-bg{opacity:0;animation:1.4s .2s forwards fadeIn}@keyframes fadeIn{to{opacity:1}}.js-anim .process-steps.reveal{transform:none}.js-anim .process-steps.reveal:before{transition:transform .9s cubic-bezier(.2,.7,.2,1) .15s;transform:scaleX(0)}.js-anim .process-steps.reveal.is-in:before{transform:scaleX(1)}.js-anim .process-steps.reveal .process-step{opacity:0;transition:opacity .6s,transform .6s cubic-bezier(.2,.7,.2,1),border-color .22s,box-shadow .22s;transition-delay:calc(var(--i) * .15s);transform:translateY(14px)}.js-anim .process-steps.reveal.is-in .process-step{opacity:1;transform:none}.js-anim .process-steps.reveal.is-in .process-step:hover{transition-delay:0s}}@media (width<=1024px){.contact-box{padding:64px 40px 68px}.process-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.process-steps:before{display:none}}@media (width<=760px){.home-hero{min-height:0;padding-block:72px 64px}.home-h1{font-size:clamp(34px,9vw,46px);line-height:1.1}.home-h1 .line{display:inline}html[dir=rtl] .home-h1{font-size:clamp(28px,8vw,38px)}.home-sub{font-size:17px}.home-ctas{width:100%}.home-ctas .btn{flex:100%}.op-section{padding-block:72px}.sec-head{margin-bottom:40px}.call-card-dark{padding:32px 22px 28px}.call-card-dark:before{inset-inline:22px}.call-card-dark .call-btn{width:100%}.contact-dark .contact-cards{grid-template-columns:1fr}.contact-dark{padding-block:8px 56px}.contact-box{border-radius:22px;padding:44px 22px 40px}}@media (width<=560px){.contact-dark .container{padding-inline:12px}.contact-box{padding:40px 18px 36px}.process-steps{grid-template-columns:1fr}}.contact-cards{text-align:start;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;max-width:1000px;margin:48px auto 0;padding:0;list-style:none;display:grid}.contact-cards.count-2{max-width:1060px}.contact-cards.count-1{grid-template-columns:minmax(0,1fr);max-width:470px}.contact-card{background:var(--surface);border:1px solid var(--border);min-height:124px;color:var(--text);border-radius:22px;align-items:center;gap:22px;padding:28px 32px;text-decoration:none;transition:transform .22s,border-color .22s,background-color .22s,box-shadow .22s;display:flex}.contact-card:hover{background:#fffdf9;border-color:#1e5b4a73;transform:translateY(-3px);box-shadow:0 14px 30px #15191b14}.contact-card:focus-visible{outline:2px solid var(--green);outline-offset:3px}.cc-icon{background:var(--green-soft);width:64px;height:64px;color:var(--green);border-radius:18px;flex:none;place-items:center;transition:transform .25s;display:grid}.cc-whatsapp{color:#1e5b4a;background:#e4efe9}.cc-instagram,.cc-email{color:var(--copper);background:#f6ece3}.contact-card:hover .cc-icon{transform:scale(1.06)rotate(-4deg)}html[dir=rtl] .contact-card:hover .cc-icon{transform:scale(1.06)rotate(4deg)}.cc-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.cc-label{letter-spacing:.12em;text-transform:uppercase;color:var(--text-3);font-size:12.5px;font-weight:600}html[dir=rtl] .cc-label{letter-spacing:0;font-size:13.5px}.cc-value{overflow-wrap:anywhere;text-align:start;font-size:17.5px;font-weight:500;line-height:1.35}html[dir=rtl] .cc-value{text-align:end}.cc-arrow{color:var(--text-3);flex:none;font-size:24px;font-weight:300;transition:color .22s}.cc-arrow:after{transition:transform .22s}.contact-card:hover .cc-arrow{color:var(--green)}.contact-card:hover .cc-arrow:after{transform:translate(5px)}html[dir=rtl] .contact-card:hover .cc-arrow:after{transform:translate(-5px)}.js-anim .contact-cards .reveal.is-in{transition-delay:0s}@media (width<=700px){.contact-cards{grid-template-columns:1fr;gap:12px;margin-top:32px}.contact-card{gap:16px;min-height:92px;padding:20px}.cc-icon{border-radius:14px;width:48px;height:48px}}@media (prefers-reduced-motion:reduce){.contact-card:hover,.contact-card:hover .cc-icon{transform:none}}
