.clientsPage .portfolioHero{isolation:isolate;color:#fff;background:#063d30;height:420px;min-height:420px;position:relative;overflow:hidden}.clientsPage .portfolioHero>img{object-fit:cover;object-position:70% 48%;width:100%;height:100%;animation:1.2s cubic-bezier(.2,.7,.3,1) both portfolioHeroIn;display:block;position:absolute;inset:0}.clientsPage .portfolioHeroOverlay{background:linear-gradient(90deg,#032f27ed 0%,#064536bd 27%,#0955474a 64%,#07392c33 100%),linear-gradient(#0000 45%,#032f2766);position:absolute;inset:0}.clientsPage .portfolioHeroCopy{z-index:1;max-width:730px;animation:.8s .1s both portfolioCopyIn;position:absolute;bottom:42px;left:4vw;right:4vw}.clientsPage .portfolioHeroCopy>small{color:#a5f4ce;letter-spacing:.16em;font-weight:700}.clientsPage .portfolioHero h1{margin:16px 0 0;letter-spacing:-.025em!important;font-size:clamp(40px,4.3vw,66px)!important;line-height:1.02!important}.clientsPage .portfolioHero h1 em{color:#13ff8c;font-style:normal}.clientsPage .portfolioHeroCopy>p{color:#d8e9df;max-width:600px;margin:18px 0 0;font-size:18px!important;line-height:1.6!important}.clientsPage #clientes{scroll-margin-top:140px}.clientsPage .portfolioGallery{background:#f7f9f5;padding:48px 0 64px;scroll-margin-top:140px}.clientsPage .portfolioGalleryHeader{text-align:center;margin:0 0 28px;padding:0 7vw;scroll-margin-top:140px}.clientsPage .portfolioGalleryHeader small{letter-spacing:.12em;color:#397a59;font-weight:700;font-size:.875rem!important;line-height:1.4!important}.clientsPage .portfolioGalleryHeader h2{color:#083f33;margin:12px 0 0;letter-spacing:-.025em!important;font-size:clamp(30px,3.2vw,46px)!important;line-height:1.1!important}.clientsPage .projectMosaic{grid-template-columns:minmax(0,1fr);gap:8px;width:min(66.6667%,max(640px,1966.67px - 66.6667vw));max-width:none;margin:0 auto;display:grid}.clientsPage .projectMosaicRow{aspect-ratio:4.5;grid-template-columns:repeat(12,minmax(0,1fr));gap:8px;min-width:0;display:grid}.clientsPage .projectMosaicSpan2{grid-column:span 2}.clientsPage .projectMosaicSpan3{grid-column:span 3}.clientsPage .projectMosaicSpan4{grid-column:span 4}.clientsPage .projectMosaicItem{cursor:pointer;isolation:isolate;background:#e7eee6;border:0;border-radius:8px;width:100%;min-width:0;height:100%;min-height:0;padding:0;display:block;position:relative;overflow:hidden}.clientsPage .projectMosaicItem img{object-fit:cover;width:100%;height:100%;transition:transform .65s cubic-bezier(.2,.7,.3,1);display:block}.clientsPage .projectMosaicItem:hover img{transform:scale(1.045)}.clientsPage .projectMosaicCaption{color:#fff;text-align:left;opacity:0;background:linear-gradient(#0000,#03291fde);padding:40px 16px 16px;font-size:16px;line-height:1.35;transition:opacity .25s,transform .25s;position:absolute;inset:auto 0 0;transform:translateY(6px)}.clientsPage .projectMosaicItem:hover>span,.clientsPage .projectMosaicItem:focus-visible>span{opacity:1;transform:none}.clientsPage .projectMosaicItem:focus-visible{outline-offset:3px;outline:3px solid #13ff8c}.clientsPage .projectLightHeader>span{white-space:nowrap;font-size:14px;display:block}.clientsPage .projectLightHeader h2{max-width:750px;font-size:clamp(22px,2.1vw,34px)!important;line-height:1.15!important}.clientsPage .projectLightHeader p{text-transform:none;letter-spacing:0;font-size:14px!important;line-height:1.5!important}.clientsPage .projectLightStage{touch-action:pan-y}.clientsPage .projectLightStage>button{width:44px;height:44px}.clientsPage .projectLightStage>img{border-radius:8px}.clientsPage .portfolioReviews{color:#fff;background:linear-gradient(115deg,#0a4936,#052f26);padding:58px 5vw 52px;scroll-margin-top:120px;position:relative;overflow:hidden}.clientsPage .portfolioReviewsInner{min-width:0;max-width:1280px;margin:0 auto}.clientsPage .portfolioReviewsHeading{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:26px;display:flex}.clientsPage .portfolioReviewsHeading small{letter-spacing:.13em;color:#a0dcba;font-weight:700;font-size:14px!important;line-height:1.4!important}.clientsPage .portfolioReviewsHeading h2{color:#fff;margin:12px 0 0;letter-spacing:-.025em!important;font-size:clamp(34px,3.6vw,54px)!important;line-height:1.1!important}.clientsPage .portfolioReviewsHeading h2 em{color:#13ff8c;font-style:normal}.clientsPage .portfolioReviewControls{flex-shrink:0;gap:10px;display:flex}.clientsPage .portfolioReviewControls button{color:#fff;cursor:pointer;background:0 0;border:1px solid #a0dcba70;border-radius:50%;place-items:center;width:48px;height:48px;padding:0;font-size:24px;transition:background .2s,color .2s,transform .2s;display:grid}.clientsPage .portfolioReviewControls button:hover{color:#073f30;background:#13ff8c;transform:translateY(-2px)}.clientsPage .portfolioReviewControls button:focus-visible,.clientsPage .portfolioReviewViewport:focus-visible{outline-offset:5px;outline:2px solid #13ff8c}.clientsPage .portfolioReviewViewport{touch-action:pan-y;cursor:grab;border-radius:18px;min-width:0;margin:-7px 0;padding:7px 0;overflow:hidden}.clientsPage .portfolioReviewViewport:active{cursor:grabbing}.clientsPage .portfolioReviewTrack{--review-step:calc((100% + 16px) / 2);min-width:0;transform:translate3d(calc(var(--review-step) * var(--review-shift) + var(--review-drag)), 0, 0);will-change:transform;gap:16px;display:flex;position:relative}.clientsPage .portfolioReviewTrack.isMoving{transition:transform .44s cubic-bezier(.22,.72,.24,1)}.clientsPage .portfolioReviewTrack.isDragging{-webkit-user-select:none;user-select:none}.clientsPage .portfolioReviewCard{color:#143e2f;background:#fff;border:1px solid #d7e4db;border-radius:18px;flex-direction:column;flex:0 0 calc(50% - 8px);min-width:0;padding:21px;transition:box-shadow .25s,border-color .25s,transform .25s;display:flex;position:relative}.clientsPage .portfolioReviewer{align-items:center;gap:11px;min-width:0;min-height:42px;display:flex}.clientsPage .portfolioReviewerAvatar{color:#175a3e;background:#eaf2e8;border-radius:50%;flex:0 0 38px;place-items:center;width:38px;height:38px;font:700 14px Arial,sans-serif;display:grid}.clientsPage .portfolioReviewer h3{color:#133e2e;overflow-wrap:anywhere;margin:0;letter-spacing:0!important;font-size:19px!important;line-height:1.15!important}.clientsPage .portfolioReviewStars{letter-spacing:2px;color:#dc9e08;width:fit-content;margin:13px 0 0;font-size:18px;line-height:1;display:block}.clientsPage .portfolioReviewCard blockquote{-webkit-line-clamp:5;color:#36564a;white-space:normal;overflow-wrap:break-word;-webkit-box-orient:vertical;min-height:120px;margin:14px 0 10px;font-family:Arial,sans-serif;font-weight:400;display:-webkit-box;overflow:hidden;font-size:16px!important;line-height:1.5!important}.clientsPage .portfolioReviewCard.isExpanded blockquote{white-space:pre-line;display:block;overflow:visible}.clientsPage .portfolioReviewReadMore{min-height:24px;margin:auto 0 0}.clientsPage .portfolioReviewReadMore button{color:#175a3e;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #548468;padding:0;font:600 14px/1.4 Arial,sans-serif;transition:color .2s,border-color .2s}.clientsPage .portfolioReviewReadMore button:hover{color:#07804b;border-color:#07804b}.clientsPage .portfolioReviewReadMore button:focus-visible{outline-offset:4px;border-radius:3px;outline:2px solid #087d4e}@media (hover:hover){.clientsPage .portfolioReviewCard:hover{border-color:#a0dcba;transform:translateY(-4px);box-shadow:0 6px 18px #001d182b}}.clientsPage .portfolioReviewProgress{background:#ffffff24;border-radius:3px;max-width:240px;height:3px;margin:28px auto 0;overflow:hidden}.clientsPage .portfolioReviewProgress span{background:#13ff8c;border-radius:3px;height:100%;transition:width .15s;display:block}@keyframes portfolioHeroIn{0%{transform:scale(1.025)}to{transform:scale(1)}}@keyframes portfolioCopyIn{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes portfolioPhotoReveal{0%{opacity:.6;transform:translateY(18px)}to{opacity:1;transform:none}}@media (max-width:800px){.clientsPage .projectMosaic{columns:2;column-gap:8px;display:block}.clientsPage .projectMosaicRow{display:contents}.clientsPage .projectMosaicItem{aspect-ratio:4/3;break-inside:avoid;vertical-align:top;height:auto;margin:0 0 8px;display:inline-block}.clientsPage .projectMosaicPortrait{aspect-ratio:3/4}.clientsPage .projectMosaicCaption{display:none}}@media (max-width:760px){.clientsPage .portfolioHero>img{object-position:70% center}.clientsPage .portfolioHeroOverlay{background:linear-gradient(#063d3026 0%,#063d3061 32%,#063d30e3 73%,#03291ffa 100%)}.clientsPage .projectLightStage{grid-template-columns:44px minmax(0,1fr) 44px;gap:4px}.clientsPage .portfolioReviews{padding:44px 0 40px}.clientsPage .portfolioReviewsHeading{margin-bottom:24px;padding:0 5vw}.clientsPage .portfolioReviewsHeading small{letter-spacing:.1em;font-size:13px!important}.clientsPage .portfolioReviewControls{display:none}.clientsPage .portfolioReviewViewport{border-radius:16px 0 0 16px;margin:-7px 0 -7px 5vw}.clientsPage .portfolioReviewTrack{--review-step:calc(90% + 12px);gap:12px}.clientsPage .portfolioReviewCard{border-radius:16px;flex-basis:90%;padding:18px}.clientsPage .portfolioReviewer{gap:12px}.clientsPage .portfolioReviewer h3{font-size:19px!important}.clientsPage .portfolioReviewCard blockquote{line-height:1.5!important}.clientsPage .portfolioReviewProgress{max-width:180px;margin-top:24px}}@media (max-width:600px){.clientsPage .portfolioGallery{padding:32px 0 40px}.clientsPage .projectMosaic{width:76.6667%}.clientsPage .portfolioGalleryHeader h2{font-size:30px!important}}@media (prefers-reduced-motion:reduce){.clientsPage .portfolioHero>img,.clientsPage .portfolioHeroCopy,.clientsPage .projectMosaicItem{animation:none}.clientsPage .projectMosaicItem img,.clientsPage .projectMosaicItem>span,.clientsPage .portfolioReviewControls button,.clientsPage .portfolioReviewProgress span,.clientsPage .portfolioReviewTrack.isMoving,.clientsPage .portfolioReviewCard{transition:none}}.clientsPage .portfolioHero#clientes{scroll-margin-top:128px}@media (max-width:900px){.clientsPage .portfolioHero#clientes{scroll-margin-top:152px}}.clientsPage .portfolioReviews{--public-eyebrow:#9cbaa7}html[data-theme=dark] .clientsPage .portfolioReviews{--public-eyebrow:#13ff8c}.clientsPage .portfolioReviews{isolation:isolate;background:#052f26}.clientsPage .portfolioReviewsBackdrop{z-index:0;object-fit:cover;object-position:center 65%;pointer-events:none;width:100%;height:100%;display:block;position:absolute;inset:0}.clientsPage .portfolioReviews:before{content:"";z-index:1;pointer-events:none;background:radial-gradient(at 52% 46%,#0000 20%,#031f1a75 100%),linear-gradient(110deg,#053a2de0 0%,#06473599 55%,#052f26b8 100%);position:absolute;inset:0}.clientsPage .portfolioReviewsInner{z-index:2;position:relative}.clientsPage .portfolioReviewsHeading{margin-bottom:30px}.clientsPage .portfolioReviewsHeading h2 em{display:inline-block;position:relative}.clientsPage .portfolioReviewsHeading h2 em:after{content:"";transform-origin:0;background:linear-gradient(90deg,#13ff8c,#0000);border-radius:2px;height:2px;position:absolute;bottom:-5px;left:0;right:0}.clientsPage .portfolioReviewsIntro{text-wrap:pretty;max-width:560px;color:#c0dbc9!important;margin:17px 0 0!important;font:400 16px/1.5 Arial,sans-serif!important}.clientsPage .portfolioReviewViewport{margin-block:-18px;padding-block:18px}.clientsPage .portfolioReviewCard{isolation:isolate;border-color:#d9e9df;transition:box-shadow .35s,border-color .3s,transform .38s cubic-bezier(.22,1,.36,1);overflow:hidden;box-shadow:0 3px 8px #001b1610}.clientsPage .portfolioReviewCard:before{content:"";opacity:0;transform-origin:0;background:linear-gradient(90deg,#0b9963,#52f1a4);border-radius:0 0 3px 3px;height:3px;transition:opacity .3s,transform .45s cubic-bezier(.22,1,.36,1);position:absolute;inset:0 20px auto;transform:scaleX(.4)}.clientsPage .portfolioReviewerAvatar{background:linear-gradient(145deg,#e2f3e8,#f1f7e8);transition:transform .35s cubic-bezier(.22,1,.36,1),box-shadow .3s;box-shadow:inset 0 0 0 1px #09554710}.clientsPage .portfolioReviewRatingRow{justify-content:space-between;align-items:center;gap:16px;margin-top:18px;display:flex}.clientsPage .portfolioReviewStars{color:#e5aa20;letter-spacing:0;background:#fff6df;border-radius:999px;align-items:center;gap:3px;margin:0;padding:7px 9px;display:inline-flex}.clientsPage .portfolioReviewStars svg{fill:currentColor;stroke:#ae7904;stroke-width:.4px;transform-origin:50%;width:21px;height:21px;display:block;overflow:visible}.clientsPage .portfolioReviewQuote{fill:#9ac7af;opacity:.6;width:30px;height:24px;transition:opacity .3s,transform .35s cubic-bezier(.22,1,.36,1)}.clientsPage .portfolioReviewCard blockquote{margin-top:15px;margin-bottom:16px}.clientsPage .portfolioReviewReadMore{min-height:44px}.clientsPage .portfolioReviewReadMore button{text-underline-offset:5px;border-bottom:0;align-items:center;gap:8px;min-height:44px;padding:7px 0;-webkit-text-decoration:underline #91b49f;text-decoration:underline #91b49f;transition:color .2s,gap .3s;display:inline-flex}.clientsPage .portfolioReviewReadMore svg{width:17px;height:17px;transition:transform .3s cubic-bezier(.22,1,.36,1)}.clientsPage .portfolioReviewCard:focus-within:before,.clientsPage .portfolioReviewCard.isExpanded:before{opacity:1;transform:scaleX(1)}.clientsPage .portfolioReviewCard:focus-within{border-color:#6abd91}.clientsPage .portfolioReviewFooter{grid-template-columns:auto minmax(80px,240px) auto;justify-content:space-between;align-items:center;gap:24px;margin-top:25px;display:grid}.clientsPage .portfolioReviewPosition{font-variant-numeric:tabular-nums;color:#aacbbb;font:500 14px/1.3 Arial,sans-serif}.clientsPage .portfolioReviewPosition b{color:#e6f8ed;font-size:20px}.clientsPage .portfolioReviewFooter .portfolioReviewProgress{background:#ffffff1f;width:100%;max-width:none;height:4px;margin:0}.clientsPage .portfolioReviewProgress span{background:linear-gradient(90deg,#1bb774,#54ffad);transition:width .44s cubic-bezier(.22,1,.36,1)}.clientsPage .portfolioReviewControls button{background:#ffffff06;transition:background .22s,color .22s,transform .32s cubic-bezier(.22,1,.36,1),border-color .22s}.clientsPage .portfolioReviewControls button:active{transform:scale(.93)}.clientsPage .portfolioReviewControls svg{transition:transform .3s cubic-bezier(.22,1,.36,1)}.clientsPage .portfolioReviewSrOnly{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}html[data-theme=dark] .clientsPage .portfolioReviewStars{color:#f4bd42;background:#dfac2420}html[data-theme=dark] .clientsPage .portfolioReviewerAvatar{color:#b6f5cf;background:linear-gradient(145deg,#2f6048,#1d4633)}@media (hover:hover) and (pointer:fine){.clientsPage .portfolioReviewCard:hover{border-color:#7ac79b;transform:translateY(-6px);box-shadow:0 12px 22px #001d1833}.clientsPage .portfolioReviewCard:hover:before{opacity:1;transform:scaleX(1)}.clientsPage .portfolioReviewCard:hover .portfolioReviewerAvatar{transform:scale(1.06);box-shadow:0 0 0 4px #13ff8c12}.clientsPage .portfolioReviewCard:hover .portfolioReviewQuote{opacity:1;transform:translateY(-2px)}.clientsPage .portfolioReviewReadMore button:hover svg{transform:translate(3px)}.clientsPage .portfolioReviewControls button:first-child:hover svg{transform:translate(-2px)}.clientsPage .portfolioReviewControls button:last-child:hover svg{transform:translate(2px)}}@media (prefers-reduced-motion:no-preference){.clientsPage .portfolioReviewViewport[data-reveal-state=visible] .portfolioReviewCard{animation:reviewCardArrive .7s var(--review-entry-delay,0s) cubic-bezier(.16, 1, .3, 1) backwards}.clientsPage .portfolioReviewViewport[data-reveal-state=visible] .portfolioReviewStars svg{animation:reviewStarZoom .6s calc(.16s + var(--review-entry-delay,0s) + var(--star-index) * 65ms) cubic-bezier(.22, 1, .36, 1) backwards}.clientsPage .portfolioReviewsHeading[data-reveal-state=visible] h2 em:after{animation:.8s cubic-bezier(.22,1,.36,1) .28s backwards reviewUnderlineIn}@media (hover:hover) and (pointer:fine){.clientsPage .portfolioReviewViewport[data-reveal-state=visible] .portfolioReviewCard:hover .portfolioReviewStars svg{animation:reviewStarReact .48s calc(var(--star-index) * 55ms) ease-out backwards}}@media (hover:none){.clientsPage .portfolioReviewCard:active{border-color:#69c38e;transform:scale(.99)}}}@keyframes reviewCardArrive{0%{opacity:0;transform:translateY(24px)scale(.97)}to{opacity:1;transform:none}}@keyframes reviewStarZoom{0%{opacity:0;transform:scale(.35)rotate(-16deg)}60%{opacity:1;transform:scale(1.2)rotate(3deg)}82%{transform:scale(.97)}to{opacity:1;transform:scale(1)rotate(0)}}@keyframes reviewStarReact{0%,to{transform:scale(1)}45%{transform:translateY(-2px)scale(1.2)}}@keyframes reviewUnderlineIn{0%{opacity:0;transform:scaleX(.2)}to{opacity:1;transform:scaleX(1)}}@media (max-width:760px){.clientsPage .portfolioReviewsHeading{margin-bottom:25px}.clientsPage .portfolioReviewsIntro{max-width:34ch;margin-top:14px!important;font-size:15px!important}.clientsPage .portfolioReviewViewport{margin-top:-18px;margin-bottom:-18px}.clientsPage .portfolioReviewCard{border-radius:18px;padding:20px}.clientsPage .portfolioReviewCard blockquote{-webkit-line-clamp:6;min-height:154px;line-height:1.6!important}.clientsPage .portfolioReviewRatingRow{margin-top:15px}.clientsPage .portfolioReviewFooter{grid-template-columns:auto minmax(44px,1fr) auto;gap:18px;margin-top:22px;padding:0 5vw}.clientsPage .portfolioReviewFooter .portfolioReviewControls{gap:8px;display:flex}.clientsPage .portfolioReviewControls button{width:44px;height:44px}.clientsPage .portfolioReviewPosition{font-size:12px}.clientsPage .portfolioReviewPosition b{font-size:18px}}@media (prefers-reduced-motion:reduce){.clientsPage .portfolioReviews :is(svg,button,.portfolioReviewCard,.portfolioReviewerAvatar,.portfolioReviewProgress span),.clientsPage .portfolioReviews :is(.portfolioReviewCard,.portfolioReviewsHeading h2 em):before,.clientsPage .portfolioReviewsHeading h2 em:after{transition:none!important;animation:none!important}.clientsPage .portfolioReviewCard:hover,.clientsPage .portfolioReviewCard:active{transform:none}}
