.cex-portfolio{font-family:Catamaran,Arial,sans-serif;color:#123B78;isolation:isolate}.cex-portfolio *{box-sizing:border-box}.cex-portfolio__section{position:relative;overflow:hidden;background:#f3faff;padding:78px 24px 68px}.cex-portfolio__section:before,.cex-portfolio__section:after{content:"";position:absolute;z-index:-1;pointer-events:none;border-radius:50%;background:rgba(8,121,232,.07)}.cex-portfolio__section:before{width:420px;height:420px;right:-150px;top:-130px}.cex-portfolio__section:after{width:290px;height:290px;right:23%;bottom:-190px}.cex-portfolio__inner{max-width:1100px;margin:auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.12fr);gap:38px;align-items:start}.cex-portfolio__eyebrow{display:inline-flex;padding:7px 17px;border-radius:50px;background:#e3eef9;color:#123b78;font-weight:800;letter-spacing:.04em;font-size:13px;line-height:1.3;margin-bottom:22px}.cex-portfolio h2,.cex-portfolio h3,.cex-portfolio p{margin-top:0}.cex-portfolio__copy>h2{font-size:clamp(32px,3.3vw,46px);line-height:1.12;font-weight:800;letter-spacing:-.025em;color:#123b78;margin-bottom:23px}.cex-portfolio__copy>h2 span{color:#0879e8}.cex-portfolio__intro{font-size:19px;line-height:1.55;color:#28456f;margin-bottom:26px}.cex-portfolio__security{display:flex;gap:16px;align-items:flex-start;background:#e8f3fe;border-radius:18px;padding:19px 20px;margin-bottom:22px}.cex-portfolio__security-icon{flex:0 0 47px;width:47px;height:47px;border-radius:13px;background:#d4eaff;display:grid;place-items:center;color:#0879e8}.cex-portfolio__security-icon svg{width:28px;height:28px}.cex-portfolio__security h3{font-size:18px;line-height:1.3;font-weight:800;color:#123b78;margin:0 0 5px}.cex-portfolio__security p{font-size:16px;line-height:1.45;color:#28456f;margin:0}.cex-portfolio__features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.cex-portfolio__feature{border:1px solid #d4e8fa;background:rgba(255,255,255,.84);border-radius:15px;text-align:center;padding:18px 10px 15px}.cex-portfolio__feature svg{display:block;width:31px;height:31px;color:#0879e8;margin:0 auto 11px}.cex-portfolio__feature h3{font-size:15px;line-height:1.2;font-weight:800;color:#123b78;margin:0 0 6px}.cex-portfolio__feature p{font-size:13px;line-height:1.35;color:#28456f;margin:0}.cex-portfolio__media{min-width:0;padding-top:22px}.cex-portfolio__video{appearance:none;display:block;position:relative;width:100%;aspect-ratio:1.32/1;overflow:hidden;border:2px solid #d4e8fa;border-radius:17px;background:#e3eef9;box-shadow:0 13px 40px rgba(18,59,120,.18);padding:0;cursor:pointer}.cex-portfolio__video img{display:block;width:100%;height:100%;object-fit:contain}.cex-portfolio__play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:76px;height:76px;border-radius:50%;color:#fff;background:rgba(18,59,120,.9);border:4px solid rgba(255,255,255,.9);transition:transform .2s,background .2s}.cex-portfolio__play svg{width:34px;height:34px;margin-left:5px}.cex-portfolio__video:hover .cex-portfolio__play{transform:translate(-50%,-50%) scale(1.07);background:#0879e8}.cex-portfolio__video:focus-visible,.cex-portfolio__download:focus-visible{outline:3px solid #0879e8;outline-offset:4px}.cex-portfolio__video iframe{width:100%;height:100%;border:0;display:block}.cex-portfolio__video-label{text-align:center;font-size:15px;color:#28456f;margin:15px 0 0}.cex-portfolio__cta{padding:28px 24px 34px;background:#eaf3ff}.cex-portfolio__cta-inner{max-width:1100px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:30px}.cex-portfolio__cta-copy h2{font-size:clamp(23px,2.2vw,30px);line-height:1.2;font-weight:800;color:#123b78;margin:0 0 8px}.cex-portfolio__cta-copy p{font-size:17px;line-height:1.45;color:#28456f;margin:0}.cex-portfolio__download{display:inline-flex;align-items:center;justify-content:center;gap:10px;flex-shrink:0;background:#0879e8;color:#fff!important;border-radius:18px;padding:16px 25px;text-decoration:none!important;font-size:21px;font-weight:800;line-height:1.2;box-shadow:0 6px 18px rgba(8,121,232,.2);transition:background .2s,transform .2s}.cex-portfolio__download:hover{background:#0564c4;color:#fff!important;transform:translateY(-2px)}.cex-portfolio__download svg{width:23px;height:23px}@media(max-width:900px){.cex-portfolio__inner{gap:30px}.cex-portfolio__section{padding:60px 20px}.cex-portfolio__features{gap:8px}.cex-portfolio__feature{padding:13px 7px}.cex-portfolio__intro{font-size:17px}}@media(max-width:700px){.cex-portfolio__inner{grid-template-columns:1fr;gap:32px}.cex-portfolio__section{padding:46px 18px}.cex-portfolio__copy>h2{font-size:35px}.cex-portfolio__media{grid-row:2}.cex-portfolio__cta-inner{flex-direction:column;text-align:center;gap:20px}.cex-portfolio__cta{padding:32px 18px}.cex-portfolio__download{width:100%;max-width:310px}.cex-portfolio__video-label{font-size:14px}}@media(max-width:380px){.cex-portfolio__features{grid-template-columns:1fr}.cex-portfolio__feature{display:flex;align-items:center;text-align:left;gap:12px}.cex-portfolio__feature svg{flex:0 0 30px;margin:0}.cex-portfolio__feature h3{margin:0}.cex-portfolio__feature p{display:none}.cex-portfolio__copy>h2{font-size:31px}}

/* v1.0.1: background continuity and authentic Excel preview */
.cex-portfolio__section:before,.cex-portfolio__section:after{display:none}
.cex-portfolio__video iframe{aspect-ratio:auto}
@media(max-width:700px){.cex-portfolio__media{padding-top:0}}

/* v1.0.2: original WordPress cover, near-square dimensions */
.cex-portfolio__video{aspect-ratio:730 / 650}
.cex-portfolio__video img{object-fit:contain}
.cex-portfolio__video:is(iframe){aspect-ratio:16 / 9}

/* v1.0.3: three feature cards span the entire content width below both columns. */
.cex-portfolio__features-wrap{position:relative;z-index:1;max-width:1100px;margin:34px auto 0}
.cex-portfolio__features-wrap .cex-portfolio__features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.cex-portfolio__features-wrap .cex-portfolio__feature{padding:22px 20px 19px;min-height:150px}
.cex-portfolio__features-wrap .cex-portfolio__feature h3{font-size:17px}
.cex-portfolio__features-wrap .cex-portfolio__feature p{font-size:15px}
/* Paint a continuous pale-blue surface behind the boxed Elementor container. */
.cex-portfolio__section{isolation:isolate;background:#f3faff}
.cex-portfolio__section::before{content:"";display:block;position:absolute;z-index:-1;inset:0 auto 0 50%;transform:translateX(-50%);width:100vw;height:100%;border-radius:0;background:#f3faff;pointer-events:none}
.cex-portfolio__section::after{display:none}
@media(max-width:700px){.cex-portfolio__features-wrap{margin-top:28px}.cex-portfolio__features-wrap .cex-portfolio__features{grid-template-columns:1fr;gap:12px}.cex-portfolio__features-wrap .cex-portfolio__feature{min-height:0;padding:17px 18px}.cex-portfolio__features-wrap .cex-portfolio__feature p{font-size:14px}}
@media(max-width:380px){.cex-portfolio__features-wrap .cex-portfolio__feature{display:block;text-align:center}.cex-portfolio__features-wrap .cex-portfolio__feature svg{margin:0 auto 10px}.cex-portfolio__features-wrap .cex-portfolio__feature p{display:block}}

/* Elementor boxed layout: stretch the section background without stretching its content. */
.cex-portfolio__section{overflow:visible}

/* v1.0.4 — stable responsive video frame, no aspect-ratio jump after Play. */
.cex-portfolio__video-frame{position:relative;width:100%;aspect-ratio:730 / 650;border:2px solid #d4e8fa;border-radius:17px;overflow:hidden;background:#e3eef9;box-shadow:0 13px 40px rgba(18,59,120,.18)}
.cex-portfolio__video-frame .cex-portfolio__video{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto!important;border:0;border-radius:0;box-shadow:none;background:#e3eef9}
.cex-portfolio__video-frame .cex-portfolio__video img{width:100%;height:100%;object-fit:contain}
.cex-portfolio__video-frame .cex-portfolio__player{position:absolute;inset:0;display:block;width:100%;height:100%;aspect-ratio:auto!important;border:0;background:#0b1930}
/* Keep the YouTube player in the same footprint; the source video may letterbox inside it. */
@media(max-width:700px){
 .cex-portfolio__section{padding:38px 16px 36px}
 .cex-portfolio__inner{gap:22px}
 .cex-portfolio__eyebrow{margin-bottom:15px;font-size:11px;padding:6px 13px}
 .cex-portfolio__copy>h2{font-size:clamp(29px,7.5vw,36px);margin-bottom:17px}
 .cex-portfolio__intro{font-size:16px;line-height:1.48;margin-bottom:18px}
 .cex-portfolio__security{padding:14px;gap:12px;margin-bottom:0;border-radius:15px}
 .cex-portfolio__security-icon{width:39px;height:39px;flex-basis:39px}
 .cex-portfolio__security-icon svg{width:23px;height:23px}
 .cex-portfolio__security h3{font-size:16px}
 .cex-portfolio__security p{font-size:14px}
 .cex-portfolio__media{padding-top:0;width:100%;min-width:0}
 .cex-portfolio__video-frame{width:100%;max-width:540px;margin:0 auto;border-radius:14px}
 .cex-portfolio__play{width:60px;height:60px;border-width:3px}
 .cex-portfolio__play svg{width:27px;height:27px}
 .cex-portfolio__video-label{margin-top:9px;font-size:13px}
 .cex-portfolio__features-wrap{margin-top:22px}
 .cex-portfolio__features-wrap .cex-portfolio__features{grid-template-columns:1fr;gap:9px}
 .cex-portfolio__features-wrap .cex-portfolio__feature{display:grid;grid-template-columns:36px minmax(0,1fr);column-gap:12px;align-items:center;text-align:left;padding:12px 14px;min-height:0;border-radius:13px}
 .cex-portfolio__features-wrap .cex-portfolio__feature svg{grid-column:1;grid-row:1 / span 2;width:29px;height:29px;margin:0 auto}
 .cex-portfolio__features-wrap .cex-portfolio__feature h3{grid-column:2;grid-row:1;font-size:15px;line-height:1.25;margin:0 0 2px}
 .cex-portfolio__features-wrap .cex-portfolio__feature p{grid-column:2;grid-row:2;font-size:13px;line-height:1.35;margin:0}
 .cex-portfolio__cta{padding:27px 16px}
 .cex-portfolio__cta-copy h2{font-size:23px}
 .cex-portfolio__cta-copy p{font-size:15px}
 .cex-portfolio__download{font-size:19px;padding:14px 22px}
}
@media(max-width:380px){
 .cex-portfolio__features-wrap .cex-portfolio__feature{display:grid;grid-template-columns:32px minmax(0,1fr);text-align:left;padding:11px 12px}
 .cex-portfolio__features-wrap .cex-portfolio__feature svg{grid-column:1;grid-row:1 / span 2;margin:0 auto}
 .cex-portfolio__features-wrap .cex-portfolio__feature h3{grid-column:2;grid-row:1;font-size:14px;margin:0 0 2px}
 .cex-portfolio__features-wrap .cex-portfolio__feature p{grid-column:2;grid-row:2;display:block;font-size:12px;margin:0}
}

/* v1.0.5: video cover is a clickable link, with a working YouTube fallback. */
.cex-portfolio__video-frame a.cex-portfolio__video{text-decoration:none!important;touch-action:manipulation}
.cex-portfolio__video-frame iframe.cex-portfolio__player{z-index:2}



/* Section 3 — CTA entro la larghezza della sezione */

.cex-portfolio__cta {
    position: relative;
    isolation: auto;
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 28px 24px 34px;
    background: #eaf3ff;
    box-sizing: border-box;
}

.cex-portfolio__cta::before {
    content: none;
}

.cex-portfolio__cta-inner {
    max-width: 1100px;
    margin: 0 auto;
}

@media (max-width: 700px) {
    .cex-portfolio__cta {
        padding: 27px 16px;
    }
}

