/* CONEXA homepage hero — client reference, 29 October 2026. */
html body.page-template-page-home #fullpage .section .conexa-home-hero {
    position:relative; display:block; isolation:isolate; overflow:hidden;
    width:100%; height:100vh !important; height:100svh !important;
    min-height:0; padding:0 !important; background:#0c2232;
}
html body.page-template-page-home #fullpage .conexa-home-hero::before,
html body.page-template-page-home #fullpage .conexa-home-hero::after { display:none; }
html body.page-template-page-home #fullpage .conexa-hero-background {
    position:absolute; inset:0; display:block; width:100%; height:100%;
    object-fit:cover; object-position:center; z-index:-1;
}
html body.page-template-page-home #fullpage .conexa-home-hero > .container {
    position:relative; height:100%; z-index:2;
}
html body.page-template-page-home #fullpage .conexa-hero-copy {
    position:absolute; top:50%; right:10px; width:65%; max-width:760px;
    transform:translateY(-50%);
    color:#fff; text-align:right;
}
html body.page-template-page-home #fullpage .conexa-hero-title {
    margin:0; font-size:clamp(56px,min(5.3vw,10vh),100px);
    line-height:1.08; font-weight:300; color:#fff; letter-spacing:0;
}
html body.page-template-page-home #fullpage .conexa-hero-title strong {font-weight:700;}
html body.page-template-page-home #fullpage .conexa-hero-signature {
    display:flex; align-items:center; justify-content:flex-start; gap:.26em;
    margin-top:24px; font-size:clamp(28px,min(2.7vw,4.8vh),50px);
    font-weight:700; line-height:1.25; white-space:nowrap; color:#fff;
}
html body.page-template-page-home #fullpage .conexa-hero-white-logo {
    display:block; width:5.5em; height:auto; margin:0; flex:0 0 auto;
    filter:brightness(0) invert(1);
}
html body.page-template-page-home #fullpage .conexa-hero-cta {
    display:flex; align-items:stretch; width:max-content; max-width:100%;
    min-height:64px; margin-top:clamp(28px,4.5vh,54px); margin-left:auto;
    border:2px solid #fff; border-radius:0 48px 48px 0; overflow:hidden;
    color:#fff; background:transparent; font-size:clamp(18px,1.3vw,24px);
    line-height:1.3; text-decoration:none; transition:background-color .2s;
}
html body.page-template-page-home #fullpage .conexa-hero-cta > span:first-child {
    display:flex; align-items:center; justify-content:center; padding:16px 28px;
}
html body.page-template-page-home #fullpage .conexa-hero-cta-arrow {
    display:flex; align-items:center; justify-content:center; width:72px;
    flex:0 0 72px; background:#0058d8; color:#fff;
}
html body.page-template-page-home #fullpage .conexa-hero-cta:hover {background:#0058d8;}
html body.page-template-page-home #fullpage .conexa-hero-cta:focus-visible {outline:3px solid #fff;outline-offset:5px;}
html body.page-template-page-home #fullpage .conexa-hero-base {
    position:absolute; left:0; bottom:0; width:100%; height:32%;
    z-index:1; pointer-events:none;
}
html body.page-template-page-home #fullpage .conexa-hero-counters {
    position:absolute; display:grid; grid-template-columns:repeat(4,minmax(0,1fr));
    gap:16px; width:40%; left:4%; right:auto; bottom:7.5%; margin:0; z-index:3;
    color:#001e50; transform:none;
}
html body.page-template-page-home #fullpage .conexa-hero-counters .counters-item {padding:0;min-width:0;}
html body.page-template-page-home #fullpage .conexa-hero-counters .counters-item__num {
    font-size:clamp(34px,min(3.4vw,6vh),65px); line-height:1.1; font-variant-numeric:tabular-nums;
}
html body.page-template-page-home #fullpage .conexa-hero-counters .counters-item__text {
    margin-top:8px; font-size:clamp(15px,1.25vw,24px); line-height:1.25;
}
html[lang^="en"] body.page-template-page-home #fullpage .conexa-hero-copy {text-align:left;}
html[lang^="en"] body.page-template-page-home #fullpage .conexa-hero-title {font-size:clamp(48px,4vw,76px);}
html[lang^="en"] body.page-template-page-home #fullpage .conexa-hero-signature--en {white-space:normal;}
html[lang^="en"] body.page-template-page-home #fullpage .conexa-hero-cta {direction:rtl;}
html[lang^="en"] body.page-template-page-home #fullpage .conexa-hero-cta > span:first-child {direction:ltr;}
html body.page-template-page-home #fullpage .conexa-hero-title .conexa-hero-lockup {display:block;margin:0;font-size:inherit;}
html body.page-template-page-home #fullpage .conexa-hero-title .conexa-hero-logo-badge {display:block;background:none;padding:0;}
html body.page-template-page-home #fullpage .conexa-hero-title .conexa-heading-logo {display:block;width:5.5em;height:auto;max-width:100%;margin:0;filter:brightness(0) invert(1);}
/* Shift the entire hero copy on wide desktops; 1920px at 120% stays at 1600 CSS px. */
@media (min-width:1601px) {
    html body.page-template-page-home #fullpage .conexa-hero-copy {
        right:calc(10px - clamp(0px, calc(37.5vw - 600px), 120px));
    }
}
@media (min-width:768px) and (max-width:1200px) {
    html body.page-template-page-home #fullpage .section .conexa-home-hero {min-height:680px;}
    html body.page-template-page-home #fullpage .conexa-hero-copy {width:75%;}
    html body.page-template-page-home #fullpage .conexa-hero-counters {width:47%;left:2%;}
    html body.page-template-page-home #fullpage .conexa-hero-counters .counters-item__text {font-size:15px;}
}
@media (max-width:767px) {
    html body.page-template-page-home #fullpage .section .conexa-home-hero {
        height:auto !important; min-height:100svh; padding:140px 0 240px !important;
    }
    html body.page-template-page-home #fullpage .conexa-hero-background {object-position:57% center;}
    html body.page-template-page-home #fullpage .conexa-hero-copy {position:relative;top:auto;right:auto;width:100%;max-width:none;transform:none;}
    html body.page-template-page-home #fullpage .conexa-hero-title {font-size:clamp(38px,9vw,64px);line-height:1.12;}
    html body.page-template-page-home #fullpage .conexa-hero-signature {font-size:clamp(19px,4.7vw,32px);gap:.2em;margin-top:22px;}
    html body.page-template-page-home #fullpage .conexa-hero-cta {min-height:56px;font-size:18px;margin-top:28px;}
    html body.page-template-page-home #fullpage .conexa-hero-cta > span:first-child {padding:12px 20px;}
    html body.page-template-page-home #fullpage .conexa-hero-cta-arrow {width:56px;flex-basis:56px;}
    html body.page-template-page-home #fullpage .conexa-hero-base {height:180px;background:#fff;border-radius:40px 40px 0 0;}
    html body.page-template-page-home #fullpage .conexa-hero-base path {display:none;}
    html body.page-template-page-home #fullpage .conexa-hero-counters {width:calc(100% - 40px);left:20px;bottom:65px;gap:12px;}
    html body.page-template-page-home #fullpage .conexa-hero-counters .counters-item__num {font-size:clamp(25px,6.5vw,40px);}
    html body.page-template-page-home #fullpage .conexa-hero-counters .counters-item__text {font-size:14px;}
}
@media (prefers-reduced-motion:reduce) {
    html body.page-template-page-home #fullpage .conexa-hero-cta {transition:none;}
}
