.cuberto-portfolio{--cp-paper:var(--theme-surface,#fff);--cp-ink:var(--theme-text,#111);background:var(--cp-paper);color:var(--cp-ink);padding-block:clamp(24px,3vw,40px) clamp(64px,9vw,136px);isolation:isolate}
.cuberto-portfolio__inner{width:min(1120px,calc(100% - 64px));margin-inline:auto}
.cuberto-portfolio__intro{text-align:center;max-width:880px;margin-inline:auto;margin-block-end:32px}
.cuberto-portfolio__intro h1,.cuberto-portfolio__intro h2{font-family:inherit;font-size:clamp(38px,6.2vw,72px);font-weight:500;line-height:1.35;letter-spacing:-.035em;margin:0 0 24px;color:inherit}
.cuberto-portfolio__intro p{font-size:clamp(16px,1.7vw,22px);line-height:1.9;margin:0;color:inherit}
.cuberto-portfolio__filters{display:flex;justify-content:center;flex-wrap:wrap;gap:16px 36px;margin-block-end:40px}
.cuberto-portfolio [hidden]{display:none!important}
.cuberto-portfolio__filters button{font:inherit;font-size:18px;line-height:1.8;position:relative;background:none;border:0;padding:4px 0 10px;color:inherit;cursor:pointer}
.cuberto-portfolio__filters button:after{content:"";position:absolute;inset-inline:0;bottom:0;height:1px;background:currentColor;transform:scaleX(0);transition:transform .25s ease}
.cuberto-portfolio__filters button.is-active:after,.cuberto-portfolio__filters button:hover:after{transform:scaleX(1)}
.cuberto-portfolio__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:88px clamp(40px,7.5vw,104px);padding-block-end:128px}
.cuberto-portfolio__card{min-width:0;--cp-offset:0px;translate:0 var(--cp-offset)}
.cuberto-portfolio__card:nth-child(even){--cp-offset:128px}
.cuberto-portfolio__link{display:block;color:inherit!important;text-decoration:none!important}
.cuberto-portfolio__media{aspect-ratio:4/5;border-radius:20px;overflow:hidden;position:relative;background:color-mix(in srgb,currentColor 6%,transparent)}
.cuberto-portfolio__media img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .8s cubic-bezier(.2,.65,.3,1)}
.cuberto-portfolio__card h3{font:inherit;font-size:clamp(19px,1.8vw,24px);font-weight:600;line-height:1.65;margin:24px 0 6px;color:inherit}
.cuberto-portfolio__card p{font-size:16px;line-height:1.9;margin:0;max-width:48ch;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.cuberto-portfolio__view{display:none;position:absolute;pointer-events:none;left:0;top:0;align-items:center;justify-content:center;width:88px;height:88px;border-radius:50%;background:#fff;color:#111;font-size:14px;opacity:0;transform:translate(calc(var(--cp-x,50%) - 50%),calc(var(--cp-y,50%) - 50%));transition:opacity .2s}
.cuberto-portfolio__link:focus-visible,.cuberto-portfolio__filters button:focus-visible{outline:2px solid currentColor;outline-offset:8px;border-radius:4px}
.cuberto-portfolio__empty{text-align:center;padding:48px 16px;border:1px dashed currentColor}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){.cuberto-portfolio__link:hover img{transform:scale(1.055)}.cuberto-portfolio__view{display:flex}.cuberto-portfolio__media:hover .cuberto-portfolio__view{opacity:1}}
@media(prefers-reduced-motion:no-preference){.cuberto-portfolio__card.cp-reveal{opacity:0;transform:translateY(40px);transition:opacity .7s ease,transform .8s cubic-bezier(.2,.65,.3,1)}.cuberto-portfolio__card.cp-reveal.is-visible{opacity:1;transform:none}}
@media(max-width:767px){.cuberto-portfolio__inner{width:calc(100% - 36px)}.cuberto-portfolio__intro{margin-block-end:36px}.cuberto-portfolio__intro h1,.cuberto-portfolio__intro h2{letter-spacing:0}.cuberto-portfolio__filters{gap:12px 24px;margin-block-end:40px}.cuberto-portfolio__filters button{font-size:15px}.cuberto-portfolio__grid{grid-template-columns:1fr;gap:40px;padding-block-end:0}.cuberto-portfolio__card{translate:none}.cuberto-portfolio__media{border-radius:16px}.cuberto-portfolio__card h3{margin-block-start:18px}.cuberto-portfolio__card p{font-size:15px}}
@media(prefers-reduced-motion:reduce){.cuberto-portfolio *{transition:none!important;animation:none!important}.cuberto-portfolio__view{display:none}}
/* A light portfolio listing needs the existing overlay header in normal flow. */
.main-wrapper:has(>[data-element-type="1611"])>.main-header{position:relative!important}
.main-wrapper:has(>[data-element-type="1611"])>.main-header>.main-header__desktop>.industry-header--overlay{position:relative;inset:auto}
.main-wrapper:has(>[data-element-type="1611"])>.main-header>.main-header__desktop>.industry-header--four{background:#111418}
/* Keep a narrow desktop browser usable when the server has rendered its desktop header. */
@media(max-width:1199px){
 body:has(.main-wrapper>[data-element-type="1611"]):has(.main-header>.main-header__desktop>.industry-header){padding-top:0!important}
 .main-wrapper:has(>[data-element-type="1611"]) .industry-header-three__layout{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:12px;padding:12px 18px}
 .main-wrapper:has(>[data-element-type="1611"]) .industry-header-three__brand img{width:64px;height:42px;object-fit:contain}
 .main-wrapper:has(>[data-element-type="1611"]) .industry-header__navigation{width:100%}
 .main-wrapper:has(>[data-element-type="1611"]) .industry-header__menu{display:flex;justify-content:center;flex-wrap:wrap;gap:12px 20px;list-style:none;padding:0;margin:0}
 .main-wrapper:has(>[data-element-type="1611"]) .industry-header__menu-link{color:#fff;font-size:13px;text-decoration:none}
 .main-wrapper:has(>[data-element-type="1611"]) :is(.industry-header-three__quick,.industry-header-three__actions,.industry-header-three__brand-actions,.industry-header-three__search,.industry-modern-mega,.industry-header__dropdown){display:none}
}
