:root{--ink:#10283b;--green:#267b55;--amber:#b67824;--line:#dce4e5;--muted:#6f7b80;--paper:#fff;--soft:#f7f8f6;--shadow:0 18px 48px rgba(18,40,59,.13)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.5}a{color:inherit}.wrap{width:min(1180px,calc(100% - 44px));margin:auto}.skip{position:absolute;left:-9999px}.skip:focus{left:20px;top:20px;z-index:100;background:white;padding:10px}.topline{font-size:12px;border-bottom:1px solid var(--line)}.topline .wrap{height:38px;display:flex;align-items:center;justify-content:space-between}.topline strong{color:var(--amber);letter-spacing:.08em}.topline a{text-decoration:none;font-weight:700}.header{position:sticky;top:0;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);z-index:50;border-bottom:1px solid var(--line)}.nav-row{height:78px;display:flex;align-items:center;justify-content:space-between}.logo{display:flex;align-items:center;gap:12px;text-decoration:none;font-weight:800;line-height:.95}.logo b{font-size:22px;color:var(--green)}.logo span{font-size:14px}.logo small{font-size:8px;display:block;letter-spacing:.18em;margin-top:6px}.nav{display:flex;align-items:center;gap:25px;font-size:13px}.nav a{text-decoration:none}.nav a:hover{color:var(--green)}.nav-cta{border-left:1px solid var(--line);padding-left:25px;font-weight:700}.language{display:flex;gap:6px}.language .active{border-bottom:1px solid var(--green)}.menu{display:none;background:white;border:1px solid var(--line);padding:9px 14px}.section{padding:105px 0}.section-line{border-bottom:1px solid var(--line)}.hero{padding:90px 0 0}.hero-grid{display:grid;grid-template-columns:1.15fr .8fr .35fr;gap:55px;align-items:start;position:relative}.kicker{font-size:11px;font-weight:800;letter-spacing:.18em}.amber{color:var(--amber)}.green{color:var(--green)}h1,h2,h3{font-weight:500;letter-spacing:-.055em;line-height:.94;margin:0}h1{font-size:clamp(58px,7.4vw,108px)}h2{font-size:clamp(42px,5vw,72px)}h3{font-size:28px}.hero-copy{padding-top:66px;font-size:20px;line-height:1.65}.dual-links{display:flex;gap:32px;margin:38px 0}.arrow-link{font-size:13px;font-weight:800;text-decoration:none;border-bottom:1px solid var(--ink);padding-bottom:8px}.arrow-link span{margin-left:14px}.muted-link{color:var(--muted);border-color:var(--line)}.green-link{color:var(--green);border-color:var(--green)}.ticks{list-style:none;padding:0;margin:40px 0;font-size:13px}.ticks li{margin:14px 0}.ticks li:before{content:'✓';color:var(--green);margin-right:12px}.principle{box-shadow:var(--shadow);padding:24px 20px;min-height:175px}.principle span{font-size:10px;letter-spacing:.14em}.principle strong{font-size:22px;display:block;line-height:1.05;margin-top:28px}.fact-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:70px;border-top:1px solid var(--line)}.fact-grid div{padding:25px 20px;border-right:1px solid var(--line);font-size:12px}.fact-grid i{display:inline-block;width:6px;height:6px;background:var(--green);border-radius:50%;margin-right:10px}.editorial-two{display:grid;grid-template-columns:1.2fr .65fr;gap:100px}.body-large{font-size:19px;padding-top:25px}.body-large .arrow-link{display:inline-block;margin-top:24px}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:70px;border:1px solid var(--line)}.process-grid article{padding:36px;border-right:1px solid var(--line);min-height:290px}.process-grid article:last-child{border:0}.process-grid span,.sector span{color:var(--green);font-size:11px;letter-spacing:.14em}.process-grid h3{font-size:32px;margin:50px 0 20px}.process-grid p,.sector p{color:var(--muted)}.heading-pair{display:grid;grid-template-columns:1fr .5fr;gap:80px;align-items:end;margin-bottom:55px}.heading-pair>p{color:var(--muted);font-size:14px}.sector-layout{display:grid;grid-template-columns:.9fr 1.55fr;gap:16px}.sector-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.sector{border:1px solid var(--line);padding:18px;min-height:330px;overflow:hidden}.sector img{width:100%;height:165px;object-fit:cover;margin-bottom:18px;filter:saturate(.85)}.sector-large img{height:440px}.sector h3{margin:16px 0 12px}.text-sector{display:flex;flex-direction:column;justify-content:flex-end}.values-grid{display:grid;grid-template-columns:.7fr 1.2fr;gap:130px}.values-grid>div>p:not(.kicker){max-width:390px;color:var(--muted);font-size:18px}.value-list{list-style:none;padding:0;margin:0}.value-list li{display:grid;grid-template-columns:70px 1fr;padding:20px 0;border-bottom:1px solid var(--line);font-weight:700}.value-list span{font-size:11px;color:var(--amber);letter-spacing:.15em}.candidate{min-height:600px;display:flex;align-items:center}.candidate-grid{display:grid;grid-template-columns:1fr .4fr;gap:120px;align-items:center}.candidate-grid p{max-width:690px;font-size:18px}.candidate-grid small{color:var(--muted)}.circle-cta{width:200px;height:200px;border:1px solid var(--ink);border-radius:50%;display:flex;justify-content:center;align-items:center;text-align:center;text-decoration:none;font-weight:800}.circle-cta:hover{background:var(--ink);color:white}.europe-grid{display:grid;grid-template-columns:.6fr 1fr;gap:120px}.europe-grid p{font-size:18px}.europe-grid small{color:var(--muted)}.map{height:470px;background:linear-gradient(145deg,#f5f7f4,#fff);border:1px solid var(--line);position:relative;display:flex;align-items:center;justify-content:center}.pin{width:13px;height:13px;background:var(--amber);border-radius:50%;box-shadow:0 0 0 8px rgba(182,120,36,.12);margin-right:14px}.map strong{letter-spacing:.12em}.map-note{position:absolute;right:38px;top:45px;font-size:11px;letter-spacing:.15em}.map p{position:absolute;left:35px;bottom:24px;font-size:12px}.gallery{display:grid;grid-template-columns:1.1fr .8fr 1.2fr;grid-template-rows:230px 230px;gap:10px}.gallery img{width:100%;height:100%;object-fit:cover}.g1{grid-row:1/3}.g4{grid-column:2/4}.caption{font-size:12px}.fraud{border-top:1px solid var(--line);margin-top:30px;padding-top:25px;font-size:13px}.fraud strong{color:var(--amber)}.contact{background:var(--soft)}.contact-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:90px}.contact-grid>div>p{font-size:18px}.contact dl{margin-top:55px}.contact dl div{border-top:1px solid var(--line);padding:18px 0}.contact dt{font-size:10px;color:var(--green);letter-spacing:.15em}.contact dd{margin:6px 0;font-size:14px}.contact-form{background:#fff;padding:38px;box-shadow:var(--shadow)}.contact-form h3{margin-bottom:28px}.choice{display:flex;gap:25px;margin-bottom:24px;font-size:13px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-grid label{font-size:12px;font-weight:700}.form-grid input,.form-grid select,.form-grid textarea{display:block;width:100%;border:1px solid var(--line);padding:13px;margin-top:7px;font:inherit;background:#fff}.form-grid .full{grid-column:1/-1}.form-note{font-size:12px;color:var(--muted)}.contact-form button{background:var(--ink);color:white;border:0;padding:14px 20px;font-weight:700;cursor:pointer}footer{padding:70px 0 25px}.footer-grid{display:grid;grid-template-columns:.7fr 1.1fr repeat(3,.65fr);gap:40px}.footer-grid>p{color:var(--muted);font-size:14px}.footer-grid>div{display:flex;flex-direction:column;gap:9px;font-size:12px}.footer-grid strong{font-size:10px;letter-spacing:.14em;color:var(--amber);margin-bottom:8px}.footer-grid a{text-decoration:none}.footer-bottom{border-top:1px solid var(--line);padding-top:20px;margin-top:50px;display:flex;justify-content:space-between;font-size:11px;color:var(--muted)}.whatsapp{position:fixed;right:20px;bottom:18px;background:white;box-shadow:var(--shadow);border:1px solid var(--line);padding:10px 14px;border-radius:40px;font-size:12px;text-decoration:none;z-index:60}.whatsapp span{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--green);color:white;margin-right:7px}.cookie{position:fixed;left:28px;bottom:28px;max-width:360px;background:white;padding:22px;box-shadow:var(--shadow);border:1px solid var(--line);z-index:70}.cookie strong{font-size:14px}.cookie p{font-size:12px}.cookie button{background:white;border:1px solid var(--line);padding:8px;font-size:11px;cursor:pointer}.cookie button:first-child{background:var(--ink);color:white}.cookie.hidden{display:none}
@media(max-width:980px){.menu{display:block}.nav{display:none;position:absolute;top:78px;left:0;right:0;background:white;padding:22px;flex-direction:column;align-items:stretch;box-shadow:var(--shadow)}.nav.open{display:flex}.hero-grid{grid-template-columns:1fr 1fr}.principle{display:none}.fact-grid{grid-template-columns:1fr 1fr}.sector-layout,.values-grid,.europe-grid,.contact-grid{grid-template-columns:1fr;gap:55px}.footer-grid{grid-template-columns:1fr 1fr}.footer-logo{grid-column:1/-1}}
@media(max-width:680px){.wrap{width:min(100% - 28px,1180px)}.topline span{display:none}.topline .wrap{justify-content:flex-end}.section{padding:70px 0}.hero-grid,.editorial-two,.heading-pair,.candidate-grid{grid-template-columns:1fr;gap:40px}.hero-copy{padding-top:0}.fact-grid,.process-grid,.sector-grid,.form-grid{grid-template-columns:1fr}.process-grid article{border-right:0;border-bottom:1px solid var(--line);min-height:auto}.sector-layout{display:block}.sector{margin-bottom:14px}.sector-large img{height:280px}.candidate-grid{justify-items:start}.gallery{grid-template-columns:1fr 1fr;grid-template-rows:190px 190px 190px}.g1{grid-row:1/3}.g4{grid-column:1/3}.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column;gap:10px}.cookie{left:14px;right:14px;bottom:14px;max-width:none}.whatsapp{bottom:14px}.cookie:not(.hidden)~.whatsapp{bottom:180px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Navy/orange institutional direction supplied in the visual reference */
:root{--ink:#12334d;--navy:#10334e;--amber:#f3a12b;--green:#278060;--soft:#f3f6f7}
.topline{background:var(--navy);color:#fff;border:0}.topline strong{color:var(--amber)}
.header{position:sticky;background:#f8fafb}.logo b{display:grid;place-items:center;width:31px;height:31px;border-radius:4px;background:var(--amber);color:var(--navy);font-size:14px}.nav-cta{background:var(--navy);color:#fff!important;border:0;border-radius:4px;padding:10px 14px}.hero{position:relative;overflow:hidden;background-color:var(--navy);background-image:radial-gradient(rgba(255,255,255,.075) 1px,transparent 1px);background-size:10px 10px;color:#fff;padding:95px 0 0}.hero:after{content:"";position:absolute;right:-2%;bottom:84px;width:38%;height:45px;background:var(--amber);clip-path:polygon(14% 100%,100% 0,100% 100%,0 100%)}.hero-grid{grid-template-columns:1.05fr .55fr .9fr;align-items:center;z-index:1}.hero h1{font-size:clamp(60px,6vw,94px)}.hero-copy{font-size:15px;padding-top:30px}.hero .arrow-link{display:inline-block;background:var(--amber);color:var(--navy);border:0;border-radius:3px;padding:12px 16px}.hero .muted-link{background:#71808b;color:#fff}.hero .ticks{display:flex;flex-wrap:wrap;gap:5px 18px;font-size:11px}.hero .ticks li{margin:3px 0}.hero-visual{position:relative}.hero-visual>img{width:100%;height:340px;object-fit:cover;border-radius:10px}.principle{position:absolute;right:0;bottom:-24px;width:145px;min-height:145px;background:var(--amber);color:var(--navy);box-shadow:none;border-radius:6px}.principle strong{font-size:17px}.hero .fact-grid{position:relative;z-index:2;background:#fff;color:var(--ink);margin-top:78px;width:100%;max-width:none;padding-left:max(22px,calc((100% - 1180px)/2));padding-right:max(22px,calc((100% - 1180px)/2))}.track-record{background:#f1a02e;color:var(--navy)}.record-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:100px;align-items:center}.record-grid h2{margin-bottom:35px}.record-grid>div:first-child>p{max-width:700px;font-size:18px}.record-grid small{display:block;max-width:700px;opacity:.75}.impact-card{background:var(--navy);color:#fff;padding:48px}.impact-card strong{display:block;font-size:76px;line-height:1}.impact-card span{display:block;font-size:24px;line-height:1.15;margin:15px 0 35px}.impact-card p{font-size:12px;opacity:.7}.partner-section{background:#f6f8f8}.partner-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.partner-logo,.partner-word{height:145px;background:#fff;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;padding:20px}.partner-logo img{max-width:100%;max-height:92px;object-fit:contain}.partner-word{font-size:31px;font-weight:800;color:var(--navy)}.partner-note{margin-top:24px;font-size:12px;color:var(--muted);max-width:900px}footer{background:var(--navy);color:#fff;padding-top:70px}.footer-grid>p,.footer-bottom{color:#b7c6cf}.footer-bottom{border-color:rgba(255,255,255,.2)}.footer-logo b{background:var(--amber);color:var(--navy)}
@media(max-width:980px){.hero-grid{grid-template-columns:1fr 1fr}.hero-visual{grid-column:2}.record-grid{grid-template-columns:1fr;gap:45px}.partner-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:680px){.hero{padding-top:65px}.hero-grid{grid-template-columns:1fr}.hero-visual{grid-column:auto}.hero h1{font-size:54px}.hero .ticks{display:block}.hero:after{bottom:190px;width:60%}.record-grid{grid-template-columns:1fr}.impact-card{padding:34px}.partner-grid{grid-template-columns:1fr 1fr}.partner-logo,.partner-word{height:120px}.partner-word{font-size:24px}}


/* =========================================================
   FLASHY ADVERTISING AND SCROLLING PARTNER LOGOS
   ========================================================= */

body {
    overflow-x: hidden;
}

.hero h1 {
    text-shadow: 0 12px 38px rgba(0, 0, 0, 0.32);
}

.hero-visual {
    animation: heroFloat 5s ease-in-out infinite;
}

.hero-visual > img {
    box-shadow: 0 28px 65px rgba(0, 0, 0, 0.35);
    transition: transform 0.45s ease, filter 0.45s ease;
}

.hero-visual:hover > img {
    transform: scale(1.035);
    filter: brightness(1.08) saturate(1.12);
}

.hero .arrow-link,
.nav-cta,
.contact-form button {
    position: relative;
    overflow: hidden;
    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease,
        background-color 0.25s ease;
}

.hero .arrow-link::before,
.nav-cta::before,
.contact-form button::before {
    content: "";
    position: absolute;
    top: 0;
    left: -130%;
    width: 80%;
    height: 100%;
    background: linear-gradient(
        110deg,
        transparent,
        rgba(255, 255, 255, 0.48),
        transparent
    );
    transform: skewX(-20deg);
    transition: left 0.6s ease;
}

.hero .arrow-link:hover::before,
.nav-cta:hover::before,
.contact-form button:hover::before {
    left: 150%;
}

.hero .arrow-link:hover,
.nav-cta:hover,
.contact-form button:hover {
    transform: translateY(-3px);
    box-shadow: 0 13px 28px rgba(16, 51, 78, 0.28);
}

.impact-card {
    position: relative;
    overflow: hidden;
    box-shadow: 0 25px 55px rgba(16, 51, 78, 0.28);
    transition: transform 0.35s ease, box-shadow 0.35s ease;
}

.impact-card:hover {
    transform: translateY(-8px) scale(1.02);
    box-shadow: 0 35px 70px rgba(16, 51, 78, 0.38);
}

.impact-card strong {
    animation: numberGlow 2.4s ease-in-out infinite alternate;
}

.partner-section {
    overflow: hidden;
    background:
        radial-gradient(circle at 10% 20%, rgba(243, 161, 43, 0.16), transparent 26%),
        radial-gradient(circle at 90% 80%, rgba(39, 128, 96, 0.12), transparent 25%),
        #f6f8f8;
}

.partner-marquee {
    width: 100%;
    overflow: hidden;
    padding: 28px 0 38px;
    mask-image: linear-gradient(
        to right,
        transparent,
        black 7%,
        black 93%,
        transparent
    );
    -webkit-mask-image: linear-gradient(
        to right,
        transparent,
        black 7%,
        black 93%,
        transparent
    );
}

.partner-grid {
    display: flex !important;
    width: max-content;
    gap: 22px;
    animation: partnerScrollRight 27s linear infinite;
    will-change: transform;
}

.partner-marquee:hover .partner-grid {
    animation-play-state: paused;
}

.partner-logo,
.partner-word {
    flex: 0 0 225px;
    width: 225px;
    height: 145px;
    border: 1px solid rgba(16, 51, 78, 0.12);
    border-radius: 12px;
    background: #ffffff;
    box-shadow: 0 12px 32px rgba(16, 51, 78, 0.1);
    cursor: pointer;
    transition:
        transform 0.32s cubic-bezier(.2, .8, .2, 1),
        box-shadow 0.32s ease,
        border-color 0.32s ease,
        filter 0.32s ease;
}

.partner-logo:hover,
.partner-word:hover {
    transform: scale(1.11) translateY(-5px);
    box-shadow: 0 22px 50px rgba(16, 51, 78, 0.25);
    border-color: var(--amber);
    filter: saturate(1.1);
    z-index: 5;
}

.partner-logo img {
    transition: transform 0.32s ease;
}

.partner-logo:hover img {
    transform: scale(1.05);
}

.advertising-ribbon {
    position: relative;
    overflow: hidden;
    padding: 18px 0;
    background: linear-gradient(
        90deg,
        #f3a12b,
        #ffbd46,
        #f3a12b
    );
    color: #10334e;
    border-top: 4px solid #10334e;
    border-bottom: 4px solid #10334e;
}

.advertising-track {
    display: flex;
    width: max-content;
    align-items: center;
    gap: 45px;
    white-space: nowrap;
    animation: advertisingScroll 24s linear infinite;
    font-size: 13px;
    font-weight: 900;
    letter-spacing: 0.13em;
}

.advertising-track span {
    display: inline-flex;
    align-items: center;
}

.advertising-track span::after {
    content: "?";
    margin-left: 45px;
    color: #ffffff;
}

.contact {
    position: relative;
    overflow: hidden;
    background:
        radial-gradient(circle at 5% 10%, rgba(243, 161, 43, 0.22), transparent 25%),
        radial-gradient(circle at 95% 90%, rgba(39, 128, 96, 0.17), transparent 28%),
        var(--soft);
}

.contact-form {
    position: relative;
    border-top: 6px solid var(--amber);
    border-radius: 12px;
    box-shadow: 0 28px 70px rgba(16, 51, 78, 0.18);
}

.contact-form input:focus,
.contact-form select:focus,
.contact-form textarea:focus {
    outline: none;
    border-color: var(--amber);
    box-shadow: 0 0 0 4px rgba(243, 161, 43, 0.16);
}

.contact-form button {
    background: linear-gradient(135deg, var(--navy), #1d587c);
    min-width: 175px;
    border-radius: 5px;
}

.form-honey {
    position: absolute !important;
    left: -99999px !important;
    width: 1px !important;
    height: 1px !important;
    opacity: 0 !important;
}

@keyframes partnerScrollRight {
    from {
        transform: translateX(-50%);
    }

    to {
        transform: translateX(0);
    }
}

@keyframes advertisingScroll {
    from {
        transform: translateX(0);
    }

    to {
        transform: translateX(-50%);
    }
}

@keyframes heroFloat {
    0%, 100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-10px);
    }
}

@keyframes numberGlow {
    from {
        color: #ffffff;
        text-shadow: 0 0 0 rgba(243, 161, 43, 0);
    }

    to {
        color: #ffbd46;
        text-shadow: 0 0 22px rgba(243, 161, 43, 0.45);
    }
}

@media (max-width: 680px) {
    .partner-logo,
    .partner-word {
        flex-basis: 175px;
        width: 175px;
        height: 115px;
    }

    .partner-grid {
        animation-duration: 20s;
    }

    .advertising-track {
        animation-duration: 18s;
    }
}

@media (prefers-reduced-motion: reduce) {
    .partner-grid,
    .advertising-track,
    .hero-visual,
    .impact-card strong {
        animation: none;
    }
}


/* =========================================================
   PREMIUM SECTORS + WORKFORCE VIDEO SHOWCASE
   ========================================================= */

.sector-showcase-video {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    padding: 115px 0;
    color: #ffffff;
    background:
        radial-gradient(circle at 85% 15%, rgba(243,161,43,.22), transparent 28%),
        radial-gradient(circle at 10% 90%, rgba(35,143,112,.22), transparent 32%),
        linear-gradient(135deg, #071e31 0%, #103b59 55%, #0b293f 100%);
}

.showcase-video-bg {
    position: absolute;
    inset: 0;
    z-index: -1;
    opacity: .24;
    background-image:
        linear-gradient(rgba(255,255,255,.045) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.045) 1px, transparent 1px);
    background-size: 38px 38px;
    mask-image: linear-gradient(to right, black, transparent 88%);
    -webkit-mask-image: linear-gradient(to right, black, transparent 88%);
}

.sector-showcase-video::before {
    content: "";
    position: absolute;
    top: -180px;
    right: -120px;
    width: 460px;
    height: 460px;
    border: 1px solid rgba(243,161,43,.28);
    border-radius: 50%;
    box-shadow:
        0 0 0 70px rgba(243,161,43,.045),
        0 0 0 140px rgba(243,161,43,.025);
}

.showcase-video-grid {
    display: grid;
    grid-template-columns: .82fr 1.18fr;
    gap: 90px;
    align-items: center;
}

.showcase-video-copy {
    position: relative;
    z-index: 2;
}

.showcase-video-copy .kicker {
    color: #f3a12b;
    margin-bottom: 25px;
}

.showcase-video-copy h2 {
    color: #ffffff;
    font-size: clamp(48px, 5.5vw, 78px);
    line-height: .96;
    margin-bottom: 30px;
}

.showcase-video-copy > p {
    max-width: 530px;
    color: rgba(255,255,255,.73);
    font-size: 17px;
    line-height: 1.75;
}

.showcase-video-points {
    display: grid;
    gap: 12px;
    margin: 33px 0;
}

.showcase-video-points span {
    display: flex;
    align-items: center;
    gap: 12px;
    color: rgba(255,255,255,.9);
    font-size: 13px;
    font-weight: 700;
}

.showcase-video-points span::before {
    content: "?";
    display: grid;
    place-items: center;
    width: 23px;
    height: 23px;
    flex: 0 0 23px;
    border-radius: 50%;
    color: #09253a;
    background: #f3a12b;
    font-size: 12px;
}

.showcase-action {
    display: inline-flex;
    align-items: center;
    gap: 28px;
    margin-top: 12px;
    padding: 16px 19px;
    color: #09253a;
    background: linear-gradient(135deg, #f3a12b, #ffc15a);
    border-radius: 5px;
    text-decoration: none;
    font-size: 13px;
    font-weight: 900;
    box-shadow: 0 18px 35px rgba(243,161,43,.22);
    transition: transform .3s ease, box-shadow .3s ease;
}

.showcase-action:hover {
    transform: translateY(-5px);
    box-shadow: 0 25px 48px rgba(243,161,43,.36);
}

.showcase-video-frame {
    position: relative;
    min-height: 480px;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.19);
    border-radius: 18px;
    background: #061926;
    box-shadow: 0 45px 90px rgba(0,0,0,.38);
    transition: transform .45s ease, box-shadow .45s ease;
}

.showcase-video-frame:hover {
    transform: translateY(-9px) scale(1.012);
    box-shadow: 0 55px 110px rgba(0,0,0,.48);
}

.showcase-video-frame::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background:
        linear-gradient(to top, rgba(3,16,26,.73), transparent 45%),
        linear-gradient(115deg, rgba(243,161,43,.11), transparent 37%);
}

.workforce-video {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: .9;
    transition: transform 1.2s ease, filter .5s ease;
}

.showcase-video-frame:hover .workforce-video {
    transform: scale(1.045);
    filter: saturate(1.12) brightness(1.04);
}

.video-toggle {
    position: absolute;
    z-index: 4;
    top: 50%;
    left: 50%;
    display: flex;
    align-items: center;
    gap: 12px;
    transform: translate(-50%, -50%);
    padding: 11px 18px 11px 11px;
    color: #ffffff;
    border: 1px solid rgba(255,255,255,.45);
    border-radius: 50px;
    background: rgba(7,30,49,.72);
    backdrop-filter: blur(12px);
    cursor: pointer;
    transition: transform .3s ease, background .3s ease;
}

.video-toggle:hover {
    transform: translate(-50%, -50%) scale(1.08);
    background: rgba(243,161,43,.93);
    color: #09253a;
}

.video-icon {
    display: grid;
    place-items: center;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    color: #09253a;
    background: #f3a12b;
}

.video-label {
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .05em;
}

.video-status {
    position: absolute;
    z-index: 3;
    top: 22px;
    left: 22px;
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 9px 12px;
    color: rgba(255,255,255,.9);
    border: 1px solid rgba(255,255,255,.19);
    border-radius: 30px;
    background: rgba(7,30,49,.66);
    backdrop-filter: blur(9px);
    font-size: 9px;
    font-weight: 900;
    letter-spacing: .12em;
}

.video-status i {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #4ade80;
    box-shadow: 0 0 0 5px rgba(74,222,128,.14);
    animation: videoStatusPulse 1.6s infinite;
}

.video-stat {
    position: absolute;
    z-index: 3;
    right: 22px;
    bottom: 22px;
    width: 160px;
    padding: 19px;
    color: #09253a;
    border-radius: 8px;
    background: linear-gradient(135deg, #f3a12b, #ffc15a);
    box-shadow: 0 18px 38px rgba(0,0,0,.28);
}

.video-stat strong,
.video-stat span {
    display: block;
}

.video-stat strong {
    font-size: 34px;
    line-height: 1;
}

.video-stat span {
    margin-top: 6px;
    font-size: 11px;
    font-weight: 800;
}


/* Professional sector area */

#sectors {
    position: relative;
    overflow: hidden;
    background:
        radial-gradient(circle at 8% 20%, rgba(39,128,96,.1), transparent 28%),
        radial-gradient(circle at 93% 75%, rgba(243,161,43,.12), transparent 27%),
        linear-gradient(180deg, #f5f8f9 0%, #ffffff 48%, #f2f6f7 100%);
}

#sectors::before {
    content: "WORKFORCE";
    position: absolute;
    top: 60px;
    right: -25px;
    color: rgba(16,51,78,.035);
    font-size: clamp(90px, 13vw, 210px);
    font-weight: 900;
    line-height: 1;
    letter-spacing: -.08em;
    pointer-events: none;
}

#sectors .heading-pair {
    position: relative;
    z-index: 2;
}

#sectors .heading-pair h2 {
    color: #10334e;
    text-shadow: 0 10px 30px rgba(16,51,78,.08);
}

.sector-layout {
    position: relative;
    z-index: 2;
    gap: 22px;
}

.sector-grid {
    gap: 22px;
}

.sector {
    position: relative;
    overflow: hidden;
    border: 0;
    border-radius: 13px;
    background: rgba(255,255,255,.93);
    box-shadow:
        0 15px 40px rgba(16,51,78,.11),
        0 1px 0 rgba(255,255,255,.8) inset;
    transition:
        transform .38s cubic-bezier(.2,.8,.2,1),
        box-shadow .38s ease;
}

.sector:hover {
    transform: translateY(-11px);
    box-shadow: 0 30px 65px rgba(16,51,78,.2);
}

.sector::after {
    content: "";
    position: absolute;
    left: 0;
    right: 100%;
    bottom: 0;
    height: 5px;
    background: linear-gradient(90deg, #f3a12b, #278060);
    transition: right .45s ease;
}

.sector:hover::after {
    right: 0;
}

.sector img {
    border-radius: 8px;
    filter: saturate(.9) contrast(1.03);
    transition: transform .65s ease, filter .65s ease;
}

.sector:hover img {
    transform: scale(1.065);
    filter: saturate(1.12) contrast(1.06);
}

.sector span {
    font-weight: 900;
}

.sector h3 {
    color: #10334e;
    transition: color .3s ease;
}

.sector:hover h3 {
    color: #278060;
}

.text-sector {
    color: #ffffff;
    background:
        radial-gradient(circle at 90% 10%, rgba(243,161,43,.29), transparent 40%),
        linear-gradient(145deg, #10334e, #174c6e);
}

.text-sector h3,
.text-sector p {
    color: #ffffff;
}

.text-sector span {
    color: #f3a12b;
}

.reveal-item {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity .7s ease, transform .7s ease;
}

.reveal-item.is-visible {
    opacity: 1;
    transform: translateY(0);
}

@keyframes videoStatusPulse {
    0%, 100% {
        box-shadow: 0 0 0 4px rgba(74,222,128,.12);
    }

    50% {
        box-shadow: 0 0 0 9px rgba(74,222,128,.03);
    }
}

@media (max-width: 980px) {
    .showcase-video-grid {
        grid-template-columns: 1fr;
        gap: 55px;
    }

    .showcase-video-frame {
        min-height: 430px;
    }
}

@media (max-width: 680px) {
    .sector-showcase-video {
        padding: 75px 0;
    }

    .showcase-video-copy h2 {
        font-size: 48px;
    }

    .showcase-video-frame {
        min-height: 350px;
        border-radius: 12px;
    }

    .video-stat {
        right: 14px;
        bottom: 14px;
        width: 135px;
        padding: 14px;
    }

    .video-stat strong {
        font-size: 28px;
    }

    .video-status {
        top: 14px;
        left: 14px;
        max-width: calc(100% - 28px);
    }

    #sectors::before {
        top: 30px;
        font-size: 75px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .video-status i {
        animation: none;
    }

    .reveal-item {
        opacity: 1;
        transform: none;
    }
}


/* =========================================================
   PREMIUM BACKGROUND DESIGN ? VALUES, EUROPE AND GALLERY
   Existing content and images remain unchanged.
   ========================================================= */


/* Shared premium section foundation */

.premium-values,
.premium-europe,
.premium-gallery {
    position: relative;
    isolation: isolate;
    overflow: hidden;
}

.premium-values::before,
.premium-europe::before,
.premium-gallery::before,
.premium-values::after,
.premium-europe::after,
.premium-gallery::after {
    content: "";
    position: absolute;
    z-index: -1;
    pointer-events: none;
    border-radius: 50%;
    filter: blur(2px);
}


/* =========================================================
   WHAT WE VALUE
   ========================================================= */

.premium-values {
    color: #ffffff;
    background:
        linear-gradient(
            115deg,
            rgba(7, 28, 44, .98),
            rgba(13, 58, 82, .96) 52%,
            rgba(8, 38, 58, .98)
        );
}

.premium-values::before {
    top: -260px;
    left: -170px;
    width: 650px;
    height: 650px;
    background:
        radial-gradient(
            circle,
            rgba(39, 128, 96, .48) 0%,
            rgba(39, 128, 96, .12) 38%,
            transparent 68%
        );
    animation: premiumOrbOne 11s ease-in-out infinite alternate;
}

.premium-values::after {
    right: -190px;
    bottom: -280px;
    width: 720px;
    height: 720px;
    background:
        radial-gradient(
            circle,
            rgba(243, 161, 43, .38) 0%,
            rgba(243, 161, 43, .09) 42%,
            transparent 70%
        );
    animation: premiumOrbTwo 13s ease-in-out infinite alternate;
}

.premium-values .wrap {
    position: relative;
    z-index: 2;
}

.premium-values .values-grid::before {
    content: "VALUES";
    position: absolute;
    top: -30px;
    right: -10px;
    z-index: -1;
    color: rgba(255, 255, 255, .035);
    font-size: clamp(90px, 15vw, 210px);
    font-weight: 900;
    line-height: .8;
    letter-spacing: -.08em;
}

.premium-values .kicker {
    color: #f3a12b;
}

.premium-values h2 {
    color: #ffffff;
    text-shadow: 0 18px 40px rgba(0, 0, 0, .25);
}

.premium-values .values-grid > div > p:not(.kicker) {
    color: rgba(255, 255, 255, .72);
}

.premium-values .value-list {
    padding: 18px 28px;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 16px;
    background:
        linear-gradient(
            135deg,
            rgba(255, 255, 255, .095),
            rgba(255, 255, 255, .035)
        );
    box-shadow:
        0 30px 70px rgba(0, 0, 0, .23),
        inset 0 1px 0 rgba(255, 255, 255, .13);
    backdrop-filter: blur(14px);
}

.premium-values .value-list li {
    position: relative;
    color: rgba(255, 255, 255, .88);
    border-bottom-color: rgba(255, 255, 255, .12);
    transition:
        transform .3s ease,
        color .3s ease,
        background-color .3s ease,
        padding-left .3s ease;
}

.premium-values .value-list li:hover {
    padding-left: 13px;
    color: #ffffff;
    background: rgba(255, 255, 255, .05);
    transform: translateX(7px);
}

.premium-values .value-list span {
    color: #f3a12b;
    font-weight: 900;
}


/* Decorative grid */

.premium-values .values-grid::after {
    content: "";
    position: absolute;
    inset: -105px -100vw;
    z-index: -2;
    opacity: .19;
    background-image:
        linear-gradient(
            rgba(255, 255, 255, .055) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(255, 255, 255, .055) 1px,
            transparent 1px
        );
    background-size: 42px 42px;
    mask-image:
        linear-gradient(to right, transparent, black 25%, black 75%, transparent);
    -webkit-mask-image:
        linear-gradient(to right, transparent, black 25%, black 75%, transparent);
}


/* =========================================================
   PORTUGAL AND BEYOND
   ========================================================= */

.premium-europe {
    color: #ffffff;
    background:
        radial-gradient(
            circle at 78% 24%,
            rgba(243, 161, 43, .25),
            transparent 28%
        ),
        radial-gradient(
            circle at 10% 90%,
            rgba(39, 128, 96, .3),
            transparent 34%
        ),
        linear-gradient(
            140deg,
            #061d30 0%,
            #103d5c 52%,
            #08263b 100%
        );
}

.premium-europe::before {
    top: -210px;
    right: -110px;
    width: 570px;
    height: 570px;
    border: 1px solid rgba(243, 161, 43, .24);
    box-shadow:
        0 0 0 70px rgba(243, 161, 43, .035),
        0 0 0 140px rgba(243, 161, 43, .022),
        0 0 0 210px rgba(243, 161, 43, .012);
    animation: premiumRotate 30s linear infinite;
}

.premium-europe::after {
    left: -130px;
    bottom: -210px;
    width: 550px;
    height: 550px;
    background:
        radial-gradient(
            circle,
            rgba(39, 128, 96, .28),
            transparent 67%
        );
}

.premium-europe .europe-grid {
    position: relative;
    z-index: 2;
}

.premium-europe .kicker {
    color: #f3a12b;
}

.premium-europe h2 {
    color: #ffffff;
    text-shadow: 0 20px 50px rgba(0, 0, 0, .32);
}

.premium-europe .europe-grid > div:first-child > p {
    color: rgba(255, 255, 255, .8);
}

.premium-europe .europe-grid > div:first-child > small {
    color: rgba(255, 255, 255, .53);
}

.premium-europe .map {
    position: relative;
    overflow: hidden;
    min-height: 490px;
    color: #ffffff;
    border: 1px solid rgba(255, 255, 255, .19);
    border-radius: 19px;
    background:
        radial-gradient(
            circle at 42% 47%,
            rgba(243, 161, 43, .19),
            transparent 14%
        ),
        linear-gradient(
            145deg,
            rgba(255, 255, 255, .12),
            rgba(255, 255, 255, .035)
        );
    box-shadow:
        0 38px 85px rgba(0, 0, 0, .31),
        inset 0 1px 0 rgba(255, 255, 255, .15);
    backdrop-filter: blur(15px);
    transition:
        transform .45s ease,
        box-shadow .45s ease;
}

.premium-europe .map:hover {
    transform: translateY(-10px) scale(1.012);
    box-shadow:
        0 52px 105px rgba(0, 0, 0, .43),
        inset 0 1px 0 rgba(255, 255, 255, .18);
}

.premium-europe .map::before {
    content: "";
    position: absolute;
    inset: 0;
    opacity: .32;
    background-image:
        linear-gradient(
            rgba(255, 255, 255, .08) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(255, 255, 255, .08) 1px,
            transparent 1px
        );
    background-size: 36px 36px;
}

.premium-europe .map::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 260px;
    height: 260px;
    border: 1px solid rgba(243, 161, 43, .3);
    border-radius: 50%;
    transform: translate(-50%, -50%);
    box-shadow:
        0 0 0 55px rgba(243, 161, 43, .028),
        0 0 0 110px rgba(243, 161, 43, .018);
}

.premium-europe .map > * {
    position: relative;
    z-index: 2;
}

.premium-europe .pin {
    position: relative;
    width: 14px;
    height: 14px;
    background: #f3a12b;
    box-shadow:
        0 0 0 8px rgba(243, 161, 43, .14),
        0 0 25px rgba(243, 161, 43, .7);
    animation: premiumPin 1.8s ease-in-out infinite;
}

.premium-europe .map strong {
    color: #ffffff;
}

.premium-europe .map-note {
    color: #f3a12b;
    font-weight: 900;
}

.premium-europe .map p {
    color: rgba(255, 255, 255, .57);
}


/* =========================================================
   OPERATIONS ARE MADE OF PEOPLE
   ========================================================= */

.premium-gallery {
    background:
        radial-gradient(
            circle at 5% 15%,
            rgba(39, 128, 96, .16),
            transparent 30%
        ),
        radial-gradient(
            circle at 94% 83%,
            rgba(243, 161, 43, .18),
            transparent 31%
        ),
        linear-gradient(
            135deg,
            #f3f7f8 0%,
            #ffffff 48%,
            #f8f2e8 100%
        );
}

.premium-gallery::before {
    top: -260px;
    left: -230px;
    width: 640px;
    height: 640px;
    border: 1px solid rgba(39, 128, 96, .11);
    box-shadow:
        0 0 0 70px rgba(39, 128, 96, .025),
        0 0 0 140px rgba(39, 128, 96, .015);
}

.premium-gallery::after {
    right: -250px;
    bottom: -270px;
    width: 700px;
    height: 700px;
    background:
        radial-gradient(
            circle,
            rgba(243, 161, 43, .17),
            transparent 65%
        );
}

.premium-gallery .wrap {
    position: relative;
    z-index: 2;
}

.premium-gallery .wrap::before {
    content: "PEOPLE";
    position: absolute;
    top: -50px;
    right: 0;
    z-index: -1;
    color: rgba(16, 51, 78, .04);
    font-size: clamp(100px, 16vw, 220px);
    font-weight: 900;
    line-height: .8;
    letter-spacing: -.08em;
}

.premium-gallery .heading-pair h2 {
    text-shadow: 0 12px 35px rgba(16, 51, 78, .1);
}

.premium-gallery .gallery {
    position: relative;
    padding: 12px;
    gap: 12px;
    border: 1px solid rgba(16, 51, 78, .1);
    border-radius: 18px;
    background: rgba(255, 255, 255, .72);
    box-shadow:
        0 35px 80px rgba(16, 51, 78, .17),
        inset 0 1px 0 #ffffff;
    backdrop-filter: blur(12px);
}

.premium-gallery .gallery img {
    border-radius: 9px;
    filter: saturate(.92) contrast(1.02);
    box-shadow: 0 10px 25px rgba(16, 51, 78, .14);
    transition:
        transform .55s cubic-bezier(.2, .8, .2, 1),
        filter .55s ease,
        box-shadow .55s ease;
}

.premium-gallery .gallery img:hover {
    position: relative;
    z-index: 5;
    transform: scale(1.035);
    filter: saturate(1.13) contrast(1.06) brightness(1.03);
    box-shadow: 0 24px 45px rgba(16, 51, 78, .28);
}

.premium-gallery .caption {
    display: inline-flex;
    margin-top: 20px;
    padding: 8px 12px;
    color: #536875;
    border: 1px solid rgba(16, 51, 78, .1);
    border-radius: 30px;
    background: rgba(255, 255, 255, .7);
}

.premium-gallery .fraud {
    padding: 24px;
    border: 1px solid rgba(16, 51, 78, .1);
    border-left: 5px solid #f3a12b;
    border-radius: 8px;
    background: rgba(255, 255, 255, .7);
    box-shadow: 0 15px 35px rgba(16, 51, 78, .08);
}


/* =========================================================
   ENTRANCE ANIMATIONS
   ========================================================= */

.premium-animated {
    opacity: 0;
    transform: translateY(35px);
    transition:
        opacity .75s ease,
        transform .75s cubic-bezier(.2, .8, .2, 1);
}

.premium-animated.premium-visible {
    opacity: 1;
    transform: translateY(0);
}

@keyframes premiumOrbOne {
    from {
        transform: translate(-20px, -10px) scale(.95);
    }

    to {
        transform: translate(45px, 35px) scale(1.08);
    }
}

@keyframes premiumOrbTwo {
    from {
        transform: translate(20px, 25px) scale(1);
    }

    to {
        transform: translate(-40px, -25px) scale(1.09);
    }
}

@keyframes premiumRotate {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}

@keyframes premiumPin {
    0%, 100% {
        box-shadow:
            0 0 0 7px rgba(243, 161, 43, .12),
            0 0 20px rgba(243, 161, 43, .55);
    }

    50% {
        box-shadow:
            0 0 0 14px rgba(243, 161, 43, .02),
            0 0 36px rgba(243, 161, 43, .85);
    }
}


/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 980px) {
    .premium-values .values-grid::before,
    .premium-gallery .wrap::before {
        font-size: 110px;
    }

    .premium-europe .map {
        min-height: 420px;
    }
}

@media (max-width: 680px) {
    .premium-values .value-list {
        padding: 12px 18px;
    }

    .premium-values .value-list li:hover {
        padding-left: 5px;
        transform: translateX(3px);
    }

    .premium-europe .map {
        min-height: 350px;
        border-radius: 13px;
    }

    .premium-gallery .gallery {
        padding: 8px;
        gap: 8px;
        border-radius: 13px;
    }

    .premium-gallery .gallery img:hover {
        transform: scale(1.015);
    }
}

@media (prefers-reduced-motion: reduce) {
    .premium-values::before,
    .premium-values::after,
    .premium-europe::before,
    .premium-europe .pin {
        animation: none;
    }

    .premium-animated {
        opacity: 1;
        transform: none;
    }
}
