/*
=====================================================================
AMIABLE IMPEX - GLOBAL SITE CSS
=====================================================================

This file is the ONE site-wide source of truth for heading sizes.

H1 = 26px
H2 = 22px
H3 = 18px
H4 = 16px

Page-specific CSS may control layout, spacing, color, etc.
It must not be relied on for final H1-H4 sizing.
=====================================================================
*/

:root {
    --amiable-h1: 26px;
    --amiable-h2: 32px;
    --amiable-h3: 18px;
    --amiable-h4: 16px;
}

/* ---------------- SITE-WIDE TYPOGRAPHY ---------------- */

html body h1 {
    font-size: var(--amiable-h1) !important;
    line-height: 1.25 !important;
    font-weight: 700 !important;
}

html body h2 {
    font-size: 32px !important;
    line-height: 1.35 !important;
    font-weight: 700 !important;
}

html body h3 {
    font-size: 18px !important;
    line-height: 1.40 !important;
    font-weight: 700 !important;
}

html body h4 {
    font-size: var(--amiable-h4) !important;
    line-height: 1.45 !important;
    font-weight: 700 !important;
}

/* ---------------- ABOUT US HERO ----------------
   No H1 font-size is defined here.
   The About title uses the SAME global H1 rule above.
-------------------------------------------------- */

body.about-page .about-banner {
    position: relative !important;
    isolation: isolate !important;
    overflow: hidden !important;

    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;

    min-height: 360px !important;
    padding: 0 !important;

    color: #ffffff !important;

    background:
        linear-gradient(
            90deg,
            rgba(98, 36, 21, .97) 0%,
            rgba(126, 52, 29, .94) 22%,
            rgba(147, 68, 38, .84) 38%,
            rgba(119, 75, 53, .60) 52%,
            rgba(48, 45, 42, .27) 70%,
            rgba(0, 0, 0, .04) 100%
        ),
        url("../images/homepage/hero-factory.jpg") center 52% / cover no-repeat !important;

    border-radius: 0 0 24px 24px !important;
}

body.about-page .about-banner::before,
body.about-page .about-banner::after,
body.about-page .about-banner-shape {
    display: none !important;
    content: none !important;
}

body.about-page .about-banner .about-page-container,
body.about-page .about-banner .about-banner-content {
    position: relative !important;
    z-index: 2 !important;

    width: min(1377px, calc(100% - 40px)) !important;
    margin-inline: auto !important;

    text-align: left !important;
}

body.about-page .about-banner h1 {
    width: auto !important;
    margin: 0 0 24px !important;
    padding: 0 !important;

    color: #ffffff !important;

    text-align: left !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    text-shadow: none !important;
}

body.about-page .about-banner h1::before,
body.about-page .about-banner h1::after {
    display: none !important;
    content: none !important;
}

body.about-page .about-breadcrumb {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    flex-wrap: wrap !important;

    gap: 20px !important;
    margin: 0 !important;
    padding: 0 !important;

    color: #ffffff !important;
    font-size: 16px !important;
    line-height: 1.4 !important;
    text-align: left !important;
}

body.about-page .about-breadcrumb a,
body.about-page .about-breadcrumb-current {
    display: inline-flex !important;
    align-items: center !important;

    margin: 0 !important;
    padding: 0 !important;

    color: #ffffff !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    text-decoration: none !important;
}

body.about-page .about-breadcrumb-chevron {
    display: inline-block !important;
    flex: 0 0 auto !important;

    width: 9px !important;
    height: 9px !important;

    border-top: 2px solid #ff6038 !important;
    border-right: 2px solid #ff6038 !important;

    transform: rotate(45deg) !important;
}

body.about-page .about-breadcrumb-arrow {
    color: #ff6038 !important;
}

@media (max-width: 1024px) {
    body.about-page .about-banner {
        min-height: 300px !important;
    }
}

@media (max-width: 767px) {
    /* H1-H4 sizes intentionally remain unchanged on mobile. */

    body.about-page .about-banner {
        min-height: 230px !important;
        border-radius: 0 0 18px 18px !important;
        background-position: center, 64% center !important;
    }

    body.about-page .about-banner .about-page-container,
    body.about-page .about-banner .about-banner-content {
        width: calc(100% - 40px) !important;
    }

    body.about-page .about-breadcrumb {
        gap: 15px !important;
        font-size: 14px !important;
    }

    body.about-page .about-breadcrumb a,
    body.about-page .about-breadcrumb-current {
        font-size: 14px !important;
    }
}

/* === AMIABLE GLOBAL DESIGN UPDATE START === */


/* ==========================================================
   SITE-WIDE TYPOGRAPHY
========================================================== */

:root {
    --amiable-h1: 35px;
    --amiable-h2: 32px;
    --amiable-h3: 18px;
    --amiable-h4: 18px;
}


/* H1 */

html body h1 {
    font-size: 35px !important;
    line-height: 1.25 !important;
    font-weight: 700 !important;
}


/* H2 */

html body h2 {
    font-size: 32px !important;
    line-height: 1.32 !important;
    font-weight: 700 !important;
}


/* H3 */

html body h3 {
    font-size: 18px !important;
    line-height: 1.38 !important;
    font-weight: 700 !important;
}


/* H4 */

html body h4 {
    font-size: 18px !important;
    line-height: 1.42 !important;
    font-weight: 700 !important;
}


/* ==========================================================
   EYEBROW
========================================================== */

.eyebrow {
    color: #a9ce47 !important;
}


/* ==========================================================
   HOMEPAGE HERO TAGLINE
   Born from a Vision. Driven by Innovation.
========================================================== */

.hero-tagline {

    display: block !important;

    margin: 0 0 16px !important;

    padding-left: 17px !important;

    border-left: 4px solid #a9ce47 !important;

    font-size: 16px !important;

    line-height: 1.4 !important;

    font-weight: 700 !important;
}


/* MOBILE - KEEP SAME REQUESTED SIZE */

@media (max-width: 767px) {

    .hero-tagline {
        font-size: 16px !important;
    }

}


/* === AMIABLE GLOBAL DESIGN UPDATE END === */

/* === AMIABLE ABOUT IMAGE UPDATE START === */


/* =========================================================
   ABOUT US BANNER
   New image + BLACK left-side gradient
========================================================= */

body.about-page .about-banner {

    background:

        linear-gradient(
            90deg,

            rgba(0, 0, 0, 0.92) 0%,

            rgba(0, 0, 0, 0.82) 18%,

            rgba(0, 0, 0, 0.68) 34%,

            rgba(0, 0, 0, 0.46) 50%,

            rgba(0, 0, 0, 0.22) 66%,

            rgba(0, 0, 0, 0.06) 82%,

            rgba(0, 0, 0, 0.00) 100%
        ),

        url("../images/about/about us banner.png")
        center center / cover
        no-repeat

        !important;

}


/* Remove previous additional colored overlay */

body.about-page .about-banner::after {

    background: transparent !important;

}


/* Remove previous red decorative shape */

body.about-page .about-banner-shape-two {

    background:
        rgba(255, 255, 255, 0.05) !important;

}


/* === AMIABLE ABOUT IMAGE UPDATE END === */

/* === AMIABLE ABOUT EXPERTISE CSS START === */


/* =========================================================
   ABOUT - OUR EXPERTISE
========================================================= */

.about-expertise {

    position: relative;

    overflow: hidden;

    padding: 90px 0;

    background:
        linear-gradient(
            135deg,
            #07110f 0%,
            #0b1714 55%,
            #101d18 100%
        );

}


/* subtle background glow */

.about-expertise::before {

    content: "";

    position: absolute;

    width: 420px;
    height: 420px;

    top: -220px;
    right: -120px;

    border-radius: 50%;

    background:
        rgba(169, 206, 71, 0.08);

    filter: blur(10px);

    pointer-events: none;

}


.about-expertise .about-page-container {

    position: relative;

    z-index: 2;

}


/* =========================================================
   SECTION HEADER
========================================================= */

.about-expertise-head {

    max-width: 760px;

    margin-bottom: 46px;

}


.about-expertise-eyebrow {

    position: relative;

    display: inline-flex;

    align-items: center;

    gap: 14px;

    margin-bottom: 16px;

    color: #a9ce47;

    font-size: 13px;

    font-weight: 700;

    letter-spacing: 0.18em;

    text-transform: uppercase;

}


.about-expertise-eyebrow::before {

    content: "";

    display: block;

    width: 42px;
    height: 3px;

    border-radius: 10px;

    background: #a9ce47;

}


.about-expertise h2 {

    margin: 0 0 14px;

    color: #ffffff;

}


.about-expertise-lead {

    max-width: 680px;

    margin: 0;

    color: rgba(255, 255, 255, 0.70);

    font-size: 17px;

    line-height: 1.75;

}


/* =========================================================
   GRID
========================================================= */

.about-expertise-grid {

    display: grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap: 22px;

}


/* =========================================================
   CARDS
========================================================= */

.about-expertise-card {

    position: relative;

    min-height: 100%;

    padding: 30px;

    overflow: hidden;

    border:
        1px solid rgba(255, 255, 255, 0.10);

    border-radius: 18px;

    background:
        rgba(255, 255, 255, 0.045);

    box-shadow:
        0 14px 38px rgba(0, 0, 0, 0.12);

    transition:
        transform 0.25s ease,
        border-color 0.25s ease,
        background 0.25s ease;

}


/* green top accent */

.about-expertise-card::before {

    content: "";

    position: absolute;

    top: 0;
    left: 0;

    width: 100%;
    height: 3px;

    background:
        linear-gradient(
            90deg,
            #a9ce47 0%,
            rgba(169, 206, 71, 0.16) 72%,
            transparent 100%
        );

}


.about-expertise-card:hover {

    transform:
        translateY(-4px);

    border-color:
        rgba(169, 206, 71, 0.38);

    background:
        rgba(255, 255, 255, 0.065);

}


/* =========================================================
   CARD HEADING
========================================================= */

.about-expertise-card-top {

    display: flex;

    align-items: flex-start;

    gap: 17px;

    margin-bottom: 18px;

}


.about-expertise-number {

    flex: 0 0 auto;

    display: inline-flex;

    align-items: center;
    justify-content: center;

    width: 44px;
    height: 44px;

    border-radius: 12px;

    background:
        rgba(169, 206, 71, 0.12);

    border:
        1px solid rgba(169, 206, 71, 0.32);

    color: #a9ce47;

    font-size: 14px;

    font-weight: 700;

    line-height: 1;

}


.about-expertise-card h3 {

    margin: 7px 0 0;

    color: #ffffff;

}


/* =========================================================
   CARD CONTENT
========================================================= */

.about-expertise-card p {

    margin: 0;

    color:
        rgba(255, 255, 255, 0.70);

    font-size: 16px;

    line-height: 1.75;

}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 900px) {

    .about-expertise {

        padding:
            72px 0;

    }


    .about-expertise-grid {

        grid-template-columns:
            1fr;

    }


    .about-expertise-card {

        padding:
            26px;

    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 600px) {

    .about-expertise {

        padding:
            58px 0;

    }


    .about-expertise-head {

        margin-bottom:
            30px;

    }


    .about-expertise-lead {

        font-size:
            15px;

    }


    .about-expertise-card {

        padding:
            22px;

        border-radius:
            14px;

    }


    .about-expertise-card-top {

        gap:
            13px;

    }


    .about-expertise-number {

        width:
            40px;

        height:
            40px;

    }


    .about-expertise-card p {

        font-size:
            15px;

        line-height:
            1.7;

    }

}


/* === AMIABLE ABOUT EXPERTISE CSS END === */

/* === AMIABLE ABOUT QUALITY CSS START === */


/* =========================================================
   ABOUT - QUALITY / TRUST SECTION
========================================================= */

.about-quality {

    padding:
        90px 0;

    background:
        #ffffff;

}


/* =========================================================
   SECTION HEADER
========================================================= */

.about-quality-head {

    max-width:
        760px;

    margin-bottom:
        42px;

}


.about-quality-eyebrow {

    position:
        relative;

    display:
        inline-flex;

    align-items:
        center;

    gap:
        14px;

    margin-bottom:
        14px;

    color:
        #a9ce47;

    font-size:
        13px;

    font-weight:
        700;

    letter-spacing:
        0.18em;

    text-transform:
        uppercase;

}


.about-quality-eyebrow::before {

    content:
        "";

    display:
        block;

    width:
        42px;

    height:
        3px;

    border-radius:
        10px;

    background:
        #a9ce47;

}


.about-quality h2 {

    margin:
        0;

    color:
        #071b4e;

}


/* =========================================================
   MAIN GRID
========================================================= */

.about-quality-layout {

    display:
        grid;

    grid-template-columns:
        minmax(0, 1.15fr)
        minmax(320px, 0.85fr);

    gap:
        28px;

    align-items:
        stretch;

}


/* =========================================================
   SMALL SUB-HEADING / LABEL
========================================================= */

.about-quality-label {

    margin:
        0 0 24px;

    color:
        #071b4e;

    font-size:
        18px;

    line-height:
        1.4;

    font-weight:
        700;

}


/* =========================================================
   CERTIFICATION AREA
========================================================= */

.about-quality-certifications {

    padding:
        34px;

    border:
        1px solid #e4e8e6;

    border-radius:
        18px;

    background:
        #ffffff;

    box-shadow:
        0 18px 45px rgba(8, 27, 78, 0.07);

}


.about-quality-proof-list {

    display:
        grid;

    gap:
        14px;

}


/* =========================================================
   CERTIFICATION ITEM
========================================================= */

.about-quality-proof {

    display:
        grid;

    grid-template-columns:
        48px 1fr;

    gap:
        17px;

    align-items:
        flex-start;

    padding:
        20px;

    border:
        1px solid #edf0ee;

    border-radius:
        14px;

    background:
        #fbfcfb;

    transition:
        border-color 0.2s ease,
        transform 0.2s ease,
        box-shadow 0.2s ease;

}


.about-quality-proof:hover {

    transform:
        translateY(-2px);

    border-color:
        rgba(169, 206, 71, 0.65);

    box-shadow:
        0 10px 24px rgba(8, 27, 78, 0.06);

}


/* NUMBER */

.about-quality-proof-number {

    display:
        inline-flex;

    align-items:
        center;

    justify-content:
        center;

    width:
        44px;

    height:
        44px;

    border-radius:
        12px;

    background:
        #a9ce47;

    color:
        #071b4e;

    font-size:
        13px;

    font-weight:
        800;

}


/* CONTENT */

.about-quality-proof-content p {

    margin:
        0;

}


.about-quality-proof-content p + p {

    margin-top:
        6px;

}


.about-quality-proof-title {

    color:
        #071b4e;

    font-size:
        17px;

    font-weight:
        700;

    line-height:
        1.35;

}


.about-quality-proof-content > p:not(.about-quality-proof-title) {

    color:
        #536270;

    font-size:
        15px;

    line-height:
        1.65;

}


/* IMPORTANT LINK */

.about-quality-proof-content a {

    position:
        relative;

    color:
        #4f7312;

    font-weight:
        700;

    text-decoration:
        none;

    border-bottom:
        1px solid rgba(79, 115, 18, 0.38);

    transition:
        color 0.2s ease,
        border-color 0.2s ease;

}


.about-quality-proof-content a:hover,
.about-quality-proof-content a:focus-visible {

    color:
        #071b4e;

    border-color:
        #071b4e;

}


/* =========================================================
   BUILDING THE FUTURE PANEL
========================================================= */

.about-quality-future {

    position:
        relative;

    overflow:
        hidden;

    padding:
        34px;

    border:
        1px solid #e4e8e6;

    border-radius:
        18px;

    background:
        #ffffff;

    box-shadow:
        0 18px 45px rgba(8, 27, 78, 0.07);

}


/* subtle side accent */

.about-quality-future::before {

    content:
        "";

    position:
        absolute;

    top:
        0;

    left:
        0;

    width:
        4px;

    height:
        100%;

    background:
        #a9ce47;

}


/* small partnership pill */

.about-quality-future-index {

    display:
        inline-flex;

    margin-bottom:
        22px;

    padding:
        7px 12px;

    border:
        1px solid rgba(169, 206, 71, 0.45);

    border-radius:
        50px;

    background:
        rgba(169, 206, 71, 0.09);

    color:
        #4f7312;

    font-size:
        12px;

    font-weight:
        700;

    letter-spacing:
        0.08em;

    text-transform:
        uppercase;

}


.about-quality-future p {

    margin:
        0;

    color:
        #536270;

    font-size:
        16px;

    line-height:
        1.8;

}


.about-quality-future p + p {

    margin-top:
        16px;

}


.about-quality-future .about-quality-label {

    margin-top:
        0;

    margin-bottom:
        18px;

    color:
        #071b4e;

    font-size:
        18px;

    line-height:
        1.4;

    font-weight:
        700;

}


/* final statement */

.about-quality-future .about-quality-final {

    margin-top:
        24px;

    padding-top:
        22px;

    border-top:
        1px solid #e8ece9;

    color:
        #071b4e;

    font-weight:
        600;

}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 950px) {

    .about-quality {

        padding:
            72px 0;

    }


    .about-quality-layout {

        grid-template-columns:
            1fr;

    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 600px) {

    .about-quality {

        padding:
            58px 0;

    }


    .about-quality-head {

        margin-bottom:
            30px;

    }


    .about-quality-certifications,
    .about-quality-future {

        padding:
            22px;

        border-radius:
            14px;

    }


    .about-quality-proof {

        grid-template-columns:
            40px 1fr;

        gap:
            13px;

        padding:
            17px;

    }


    .about-quality-proof-number {

        width:
            38px;

        height:
            38px;

    }


    .about-quality-label,
    .about-quality-future .about-quality-label {

        font-size:
            16px;

    }


    .about-quality-future p {

        font-size:
            15px;

    }

}


/* === AMIABLE ABOUT QUALITY CSS END === */

/* === AMIABLE ABOUT MISSION CSS START === */


/* =========================================================
   OUR MISSION SECTION
========================================================= */

.about-mission {

    position: relative;

    padding:
        90px 0;

    overflow:
        hidden;

    background:
        #f6f8f3;

}


/* subtle background decoration */

.about-mission::before {

    content: "";

    position: absolute;

    top: -150px;
    left: -160px;

    width: 360px;
    height: 360px;

    border-radius: 50%;

    background:
        rgba(169, 206, 71, 0.12);

    pointer-events: none;

}


/* =========================================================
   MAIN LAYOUT
========================================================= */

.about-mission-layout {

    position: relative;

    z-index: 2;

    display: grid;

    grid-template-columns:
        minmax(280px, 0.78fr)
        minmax(0, 1.22fr);

    gap:
        60px;

    align-items:
        start;

}


/* =========================================================
   LEFT INTRO
========================================================= */

.about-mission-intro {

    position: sticky;

    top: 110px;

}


.about-mission-eyebrow {

    display: inline-flex;

    align-items: center;

    gap: 14px;

    margin-bottom:
        16px;

    color:
        #557717;

    font-size:
        13px;

    font-weight:
        700;

    letter-spacing:
        0.18em;

    text-transform:
        uppercase;

}


.about-mission-eyebrow::before {

    content: "";

    width:
        42px;

    height:
        3px;

    border-radius:
        10px;

    background:
        #a9ce47;

}


.about-mission h2 {

    margin:
        0 0 20px;

    color:
        #071b4e;

}


.about-mission-intro-text {

    margin:
        0 0 28px;

    max-width:
        520px;

    color:
        #5a6877;

    font-size:
        16px;

    line-height:
        1.75;

}


/* =========================================================
   MISSION IMAGE
========================================================= */

.about-mission-image-wrap {

    position:
        relative;

    width:
        min(100%, 360px);

    overflow:
        hidden;

    border-radius:
        18px;

    border:
        6px solid #ffffff;

    box-shadow:
        0 20px 45px rgba(7, 27, 78, 0.12);

}


.about-mission-image-wrap::after {

    content: "";

    position:
        absolute;

    right:
        -8px;

    bottom:
        -8px;

    width:
        74px;

    height:
        74px;

    border-radius:
        18px 0 0 0;

    background:
        #a9ce47;

    opacity:
        0.92;

    pointer-events:
        none;

}


.about-mission-image {

    display:
        block;

    width:
        100%;

    aspect-ratio:
        4 / 3;

    object-fit:
        cover;

}


/* =========================================================
   RIGHT SIDE MISSION POINTS
========================================================= */

.about-mission-points {

    display:
        grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap:
        18px;

}


/* =========================================================
   MISSION ITEM
========================================================= */

.about-mission-item {

    display:
        grid;

    grid-template-columns:
        44px 1fr;

    gap:
        16px;

    padding:
        24px;

    border:
        1px solid #e0e7db;

    border-radius:
        16px;

    background:
        #ffffff;

    box-shadow:
        0 10px 28px rgba(7, 27, 78, 0.055);

    transition:
        transform 0.22s ease,
        border-color 0.22s ease,
        box-shadow 0.22s ease;

}


.about-mission-item:hover {

    transform:
        translateY(-3px);

    border-color:
        rgba(169, 206, 71, 0.75);

    box-shadow:
        0 16px 34px rgba(7, 27, 78, 0.08);

}


/* =========================================================
   NUMBER
========================================================= */

.about-mission-number {

    display:
        inline-flex;

    align-items:
        center;

    justify-content:
        center;

    width:
        42px;

    height:
        42px;

    border-radius:
        12px;

    background:
        #eff6dc;

    color:
        #527313;

    font-size:
        13px;

    font-weight:
        800;

}


/* =========================================================
   ITEM CONTENT
========================================================= */

.about-mission-item-content p {

    margin:
        0;

}


.about-mission-item-content p + p {

    margin-top:
        8px;

}


.about-mission-item-title {

    color:
        #071b4e;

    font-size:
        17px;

    line-height:
        1.4;

    font-weight:
        700;

}


.about-mission-item-content > p:not(.about-mission-item-title) {

    color:
        #5a6877;

    font-size:
        15px;

    line-height:
        1.7;

}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 1000px) {

    .about-mission {

        padding:
            72px 0;

    }


    .about-mission-layout {

        grid-template-columns:
            1fr;

        gap:
            40px;

    }


    .about-mission-intro {

        position:
            static;

    }


    .about-mission-image-wrap {

        width:
            min(100%, 430px);

    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 700px) {

    .about-mission {

        padding:
            58px 0;

    }


    .about-mission-layout {

        gap:
            30px;

    }


    .about-mission-points {

        grid-template-columns:
            1fr;

    }


    .about-mission-item {

        grid-template-columns:
            40px 1fr;

        gap:
            13px;

        padding:
            20px;

        border-radius:
            14px;

    }


    .about-mission-number {

        width:
            38px;

        height:
            38px;

    }


    .about-mission-item-title {

        font-size:
            16px;

    }


    .about-mission-item-content > p:not(.about-mission-item-title) {

        font-size:
            14px;

    }

}


/* === AMIABLE ABOUT MISSION CSS END === */

/* === AMIABLE ABOUT VISION CSS START === */


/* =========================================================
   OUR VISION
   CLEAN ICON + CONTENT LIST
========================================================= */

.about-vision {

    position: relative;

    padding: 95px 0;

    background: #ffffff;

}


/* =========================================================
   MAIN LAYOUT
========================================================= */

.about-vision-layout {

    display: grid;

    grid-template-columns:
        minmax(280px, 0.72fr)
        minmax(0, 1.28fr);

    gap: 80px;

    align-items: start;

}


/* =========================================================
   LEFT INTRO
========================================================= */

.about-vision-intro {

    position: sticky;

    top: 110px;

    padding-right: 15px;

}


.about-vision-eyebrow {

    display: inline-flex;

    align-items: center;

    gap: 12px;

    margin-bottom: 15px;

    color: #567817;

    font-size: 13px;

    font-weight: 700;

    letter-spacing: 0.17em;

    text-transform: uppercase;

}


.about-vision-eyebrow::before {

    content: "";

    width: 38px;

    height: 3px;

    border-radius: 20px;

    background: #a9ce47;

}


.about-vision h2 {

    margin: 0 0 20px;

    color: #071b4e;

}


.about-vision-lead {

    margin: 0;

    max-width: 500px;

    color: #5b6875;

    font-size: 16px;

    line-height: 1.8;

}


/* =========================================================
   SMALL VISION NOTE
========================================================= */

.about-vision-note {

    display: flex;

    align-items: flex-start;

    gap: 14px;

    margin-top: 30px;

    padding-top: 24px;

    border-top: 1px solid #e8ece7;

}


.about-vision-note-line {

    flex: 0 0 auto;

    width: 4px;

    height: 42px;

    border-radius: 20px;

    background: #a9ce47;

}


.about-vision-note p {

    margin: 0;

    color: #071b4e;

    font-size: 15px;

    line-height: 1.6;

    font-weight: 600;

}


/* =========================================================
   RIGHT LIST
========================================================= */

.about-vision-list {

    border-top: 1px solid #e5eae5;

}


/* =========================================================
   VISION ITEM
========================================================= */

.about-vision-item {

    display: grid;

    grid-template-columns:
        64px 1fr;

    gap: 24px;

    padding: 30px 0;

    border-bottom: 1px solid #e5eae5;

    transition:
        padding-left 0.25s ease;

}


.about-vision-item:hover {

    padding-left: 8px;

}


/* =========================================================
   ICON
========================================================= */

.about-vision-icon {

    display: flex;

    align-items: center;

    justify-content: center;

    width: 56px;

    height: 56px;

    border-radius: 14px;

    background: #f2f7e7;

    color: #628819;

    transition:
        background 0.25s ease,
        color 0.25s ease,
        transform 0.25s ease;

}


.about-vision-icon svg {

    width: 26px;

    height: 26px;

}


.about-vision-item:hover .about-vision-icon {

    background: #a9ce47;

    color: #071b4e;

    transform: translateY(-2px);

}


/* =========================================================
   CONTENT
========================================================= */

.about-vision-content {

    position: relative;

}


.about-vision-index {

    display: inline-block;

    margin-bottom: 7px;

    color: #8d9a91;

    font-size: 11px;

    line-height: 1;

    font-weight: 700;

    letter-spacing: 0.14em;

}


.about-vision-title {

    margin: 0 0 9px;

    color: #071b4e;

    font-size: 18px;

    line-height: 1.42;

    font-weight: 700;

}


.about-vision-text {

    margin: 0;

    max-width: 760px;

    color: #5b6875;

    font-size: 15px;

    line-height: 1.75;

}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 950px) {

    .about-vision {

        padding: 72px 0;

    }


    .about-vision-layout {

        grid-template-columns: 1fr;

        gap: 42px;

    }


    .about-vision-intro {

        position: static;

        max-width: 720px;

        padding-right: 0;

    }


    .about-vision-note {

        max-width: 420px;

    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 600px) {

    .about-vision {

        padding: 58px 0;

    }


    .about-vision-layout {

        gap: 30px;

    }


    .about-vision-item {

        grid-template-columns:
            48px 1fr;

        gap: 16px;

        padding: 24px 0;

    }


    .about-vision-item:hover {

        padding-left: 0;

    }


    .about-vision-icon {

        width: 46px;

        height: 46px;

        border-radius: 12px;

    }


    .about-vision-icon svg {

        width: 22px;

        height: 22px;

    }


    .about-vision-title {

        font-size: 16px;

    }


    .about-vision-text {

        font-size: 14px;

        line-height: 1.7;

    }


    .about-vision-note {

        margin-top: 24px;

    }

}


/* === AMIABLE ABOUT VISION CSS END === */


/* VISION FINAL OVERRIDE START */

.about-vision-layout{
display:grid!important;
grid-template-columns:minmax(0,1.25fr) minmax(330px,.75fr)!important;
gap:70px!important;
align-items:start!important;
}

.about-vision-list{
order:1!important;
border-top:1px solid #e5eae5!important;
}

.about-vision-intro{
order:2!important;
position:sticky!important;
top:110px!important;
}

.about-vision-index{
display:none!important;
}

.about-vision-item{
grid-template-columns:58px 1fr!important;
gap:22px!important;
padding:28px 0!important;
border-bottom:1px solid #e5eae5!important;
}

.about-vision-icon{
width:54px!important;
height:54px!important;
border-radius:14px!important;
background:#f1f7e5!important;
color:#628819!important;
}

.about-vision-title{
font-size:18px!important;
margin:0 0 8px!important;
}

.about-vision-text{
font-size:15px!important;
line-height:1.72!important;
}

.about-vision-image-wrap{
margin-top:26px!important;
overflow:hidden!important;
border-radius:16px!important;
box-shadow:0 14px 35px rgba(7,27,78,.11)!important;
}

.about-vision-image{
display:block!important;
width:100%!important;
aspect-ratio:16/7!important;
object-fit:cover!important;
}

@media(max-width:950px){

.about-vision-layout{
grid-template-columns:1fr!important;
gap:35px!important;
}

.about-vision-intro{
order:1!important;
position:static!important;
}

.about-vision-list{
order:2!important;
}

}

@media(max-width:600px){

.about-vision-item{
grid-template-columns:46px 1fr!important;
gap:15px!important;
padding:22px 0!important;
}

.about-vision-icon{
width:44px!important;
height:44px!important;
}

.about-vision-title{
font-size:16px!important;
}

.about-vision-text{
font-size:14px!important;
}

.about-vision-image{
aspect-ratio:16/9!important;
}

}

/* VISION FINAL OVERRIDE END */

/* === PURPOSE PRINCIPLES CSS START === */

.about-purpose{
padding:95px 0;
background:#f8faf6;
}

.purpose-head{
max-width:820px;
margin-bottom:48px;
}

.purpose-eyebrow{
display:flex;
align-items:center;
gap:12px;
margin-bottom:14px;
color:#5e8118;
font-size:13px;
font-weight:700;
letter-spacing:.16em;
text-transform:uppercase;
}

.purpose-eyebrow:before{
content:"";
width:38px;
height:3px;
background:#a9ce47;
border-radius:20px;
}

.purpose-head h2{
margin:0 0 16px;
color:#071b4e;
}

.purpose-head>p{
margin:0;
color:#5b6875;
font-size:16px;
line-height:1.8;
}

.purpose-layout{
display:grid;
grid-template-columns:minmax(290px,.72fr) minmax(0,1.28fr);
gap:58px;
align-items:start;
}


/* LEFT */

.purpose-visual{
position:sticky;
top:110px;
padding:30px;
border-radius:20px;
background:#071b4e;
box-shadow:0 18px 45px rgba(7,27,78,.13);
}

.purpose-image-wrap{
display:flex;
align-items:center;
justify-content:center;
height:280px;
margin-bottom:26px;
padding:18px;
border-radius:15px;
background:#fff;
}

.purpose-image-wrap img{
display:block;
max-width:100%;
max-height:213px;
object-fit:contain;
}

.purpose-small-label{
display:block;
margin-bottom:10px;
color:#a9ce47;
font-size:12px;
font-weight:700;
letter-spacing:.12em;
text-transform:uppercase;
}

.purpose-visual-title{
margin:0;
color:#fff;
font-size:19px;
font-weight:700;
line-height:1.55;
}

.purpose-video-btn{
display:inline-flex;
align-items:center;
gap:10px;
margin-top:24px;
padding:11px 16px;
border-radius:50px;
background:#a9ce47;
color:#071b4e;
font-size:14px;
font-weight:700;
text-decoration:none;
transition:.2s ease;
}

.purpose-video-btn svg{
width:15px;
height:15px;
fill:currentColor;
}

.purpose-video-btn:hover{
transform:translateY(-2px);
background:#b5da50;
}


/* RIGHT */

.purpose-principles{
border-top:1px solid #dfe5dc;
}

.purpose-row{
display:grid;
grid-template-columns:58px 1fr;
gap:20px;
padding:25px 0;
border-bottom:1px solid #dfe5dc;
}

.purpose-icon{
display:flex;
align-items:center;
justify-content:center;
width:52px;
height:52px;
border-radius:14px;
background:#edf5df;
color:#63861d;
}

.purpose-icon svg{
width:25px;
height:25px;
fill:none;
stroke:currentColor;
stroke-width:1.6;
stroke-linecap:round;
stroke-linejoin:round;
}

.purpose-row>div:last-child>p{
margin:0;
}

.purpose-title{
margin-bottom:7px!important;
color:#071b4e;
font-size:17px;
font-weight:700;
line-height:1.4;
}

.purpose-row>div:last-child>p:not(.purpose-title){
color:#5b6875;
font-size:15px;
line-height:1.7;
}


/* FINAL BELIEF */

.purpose-belief{
display:flex;
align-items:flex-start;
gap:17px;
max-width:900px;
margin:48px auto 0;
padding:24px 28px;
border:1px solid #dfe6da;
border-radius:16px;
background:#fff;
box-shadow:0 10px 28px rgba(7,27,78,.05);
}

.purpose-belief span{
flex:0 0 auto;
width:4px;
height:48px;
border-radius:20px;
background:#a9ce47;
}

.purpose-belief p{
margin:0;
color:#071b4e;
font-size:17px;
font-weight:600;
line-height:1.65;
}


/* TABLET */

@media(max-width:950px){

.about-purpose{
padding:72px 0;
}

.purpose-layout{
grid-template-columns:1fr;
gap:35px;
}

.purpose-visual{
position:static;
max-width:520px;
}

}


/* MOBILE */

@media(max-width:600px){

.about-purpose{
padding:58px 0;
}

.purpose-head{
margin-bottom:32px;
}

.purpose-layout{
gap:30px;
}

.purpose-visual{
padding:22px;
}

.purpose-image-wrap{
height:280px;
}

.purpose-row{
grid-template-columns:46px 1fr;
gap:14px;
padding:21px 0;
}

.purpose-icon{
width:44px;
height:44px;
border-radius:11px;
}

.purpose-icon svg{
width:21px;
height:21px;
}

.purpose-title{
font-size:16px;
}

.purpose-row>div:last-child>p:not(.purpose-title){
font-size:14px;
}

.purpose-belief{
margin-top:34px;
padding:20px;
}

.purpose-belief p{
font-size:15px;
}

}

/* === PURPOSE PRINCIPLES CSS END === */

/* OUR VISION IMAGE HARD FIX START */

.about-vision-image-wrap{
    display:block !important;
    position:relative !important;
    width:100% !important;
    height:auto !important;
    margin-top:26px !important;
    overflow:hidden !important;
    border-radius:16px !important;
    background:#f3f5f2 !important;
    box-shadow:0 14px 35px rgba(7,27,78,.11) !important;
}

.about-vision-image-wrap img.about-vision-image{
    display:block !important;
    width:100% !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    max-width:100% !important;
    aspect-ratio:auto !important;
    object-fit:contain !important;
    opacity:1 !important;
    visibility:visible !important;
}

@media(max-width:600px){
    .about-vision-image-wrap{
        margin-top:22px !important;
        border-radius:12px !important;
    }
}

/* OUR VISION IMAGE HARD FIX END */

/* === E-CATALOGUE PAGE START === */

.ecat-banner{
    background:
        linear-gradient(90deg,
            rgba(0,0,0,.94) 0%,
            rgba(0,0,0,.78) 30%,
            rgba(0,0,0,.38) 58%,
            rgba(0,0,0,.08) 100%),
        url("../images/e-catalogue/e-catalogue-banner.jpg")
        center 53% / cover no-repeat !important;
}

.ecat-banner::before,
.ecat-banner::after{
    background:transparent !important;
}


.ecat-content{
    padding:90px 0 100px;
    background:#fff;
}


.ecat-head{
    max-width:880px;
    margin:0 auto 48px;
    text-align:center;
}


.ecat-eyebrow{
    display:inline-flex;
    align-items:center;
    gap:12px;
    margin-bottom:15px;
    color:#61851c;
    font-size:13px;
    font-weight:700;
    letter-spacing:.16em;
    text-transform:uppercase;
}


.ecat-eyebrow::before,
.ecat-eyebrow::after{
    content:"";
    width:30px;
    height:2px;
    background:#a9ce47;
}


.ecat-head h2{
    margin:0 0 18px;
    color:#071b4e;
}


.ecat-head p{
    margin:0;
    color:#5b6875;
    font-size:16px;
    line-height:1.8;
}


.ecat-downloads{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:20px;
}


.ecat-download{
    position:relative;
    display:grid;
    grid-template-columns:54px 1fr 30px;
    gap:16px;
    align-items:center;
    min-height:142px;
    padding:25px;
    overflow:hidden;
    border:1px solid #e2e8df;
    border-radius:17px;
    background:#fafcf8;
    color:inherit;
    text-decoration:none;
    box-shadow:0 12px 30px rgba(7,27,78,.055);
    transition:
        transform .25s ease,
        box-shadow .25s ease,
        border-color .25s ease,
        background .25s ease;
}


.ecat-download::before{
    content:"";
    position:absolute;
    left:0;
    top:0;
    width:4px;
    height:100%;
    background:#a9ce47;
    transform:scaleY(0);
    transform-origin:bottom;
    transition:transform .25s ease;
}


.ecat-download:hover{
    transform:translateY(-6px);
    border-color:rgba(169,206,71,.8);
    background:#fff;
    box-shadow:0 20px 42px rgba(7,27,78,.11);
}


.ecat-download:hover::before{
    transform:scaleY(1);
}


.ecat-pdf-icon{
    display:flex;
    align-items:center;
    justify-content:center;
    width:52px;
    height:52px;
    border-radius:13px;
    background:#fff1ef;
    color:#ef2b2d;
    transition:transform .25s ease;
}


.ecat-download:hover .ecat-pdf-icon{
    transform:scale(1.07) rotate(-3deg);
}


.ecat-pdf-icon svg{
    width:26px;
    height:26px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.7;
    stroke-linecap:round;
    stroke-linejoin:round;
}


.ecat-download-copy{
    display:block;
}


.ecat-download-copy strong{
    display:block;
    margin-bottom:6px;
    color:#071b4e;
    font-size:17px;
    line-height:1.35;
}


.ecat-download-copy small{
    display:block;
    color:#687582;
    font-size:13px;
    line-height:1.5;
}


.ecat-arrow{
    color:#638719;
    font-size:24px;
    font-weight:600;
    transition:transform .25s ease;
}


.ecat-download:hover .ecat-arrow{
    transform:translateX(5px);
}


@media(max-width:900px){
    .ecat-content{padding:72px 0;}
    .ecat-downloads{grid-template-columns:1fr;}
    .ecat-download{min-height:auto;}
}


@media(max-width:600px){
    .ecat-content{padding:58px 0;}
    .ecat-head{text-align:left;margin-bottom:32px;}
    .ecat-eyebrow::after{display:none;}
    .ecat-download{
        grid-template-columns:48px 1fr 24px;
        padding:20px;
    }
    .ecat-pdf-icon{
        width:46px;
        height:46px;
    }
}

/* === E-CATALOGUE PAGE END === */

/* === E-CATALOGUE BUTTON FINAL UI START === */


/* Keep E-Catalogue together */
.ecat-title-nowrap{
    white-space:nowrap !important;
}


/* ==========================================
   NORMAL STATE = RED VERSION
========================================== */

.ecat-download{
    background:#ffffff !important;
    border:1px solid #ef2b2d !important;
    box-shadow:0 12px 30px rgba(7,27,78,.055) !important;
}


/* red left accent visible normally */

.ecat-download::before{
    background:#ef2b2d !important;
    transform:scaleY(1) !important;
}


/* PDF icon remains red */

.ecat-pdf-icon{
    background:#fff1ef !important;
    color:#ef2b2d !important;
}


/* arrow normal = red */

.ecat-arrow{
    color:#ef2b2d !important;
}


/* ==========================================
   HOVER = KEEP EXISTING GREEN EFFECT
========================================== */

.ecat-download:hover{
    transform:translateY(-6px) !important;
    border-color:#a9ce47 !important;
    background:#ffffff !important;
    box-shadow:0 20px 42px rgba(7,27,78,.11) !important;
}


/* green left accent on hover */

.ecat-download:hover::before{
    background:#a9ce47 !important;
    transform:scaleY(1) !important;
}


/* icon hover effect stays */

.ecat-download:hover .ecat-pdf-icon{
    transform:scale(1.07) rotate(-3deg) !important;
}


/* arrow becomes green on hover */

.ecat-download:hover .ecat-arrow{
    color:#638719 !important;
    transform:translateX(5px) !important;
}


/* mobile safety */

@media(max-width:600px){

    .ecat-title-nowrap{
        white-space:normal !important;
    }

}


/* === E-CATALOGUE BUTTON FINAL UI END === */

/* === ECATALOG EXACT BANNER CSS START === */

/*
   Final image is forced from e-catalogue.blade.php.
   These rules only maintain banner presentation.
*/

.ecat-banner{
    background-size:cover !important;
    background-position:center center !important;
    background-repeat:no-repeat !important;
}

.ecat-banner::before,
.ecat-banner::after{
    pointer-events:none !important;
}

/* === ECATALOG EXACT BANNER CSS END === */

/* === OUR FACILITIES PAGE START === */


/* =========================================================
   SECTION
========================================================= */

.facilities-operations{
    padding:72px 0 82px;
    background:#fff;
}


/* =========================================================
   HEADING
========================================================= */

.facilities-operations .facilities-head{
    max-width:900px;
    margin:0 0 38px;
}


.facilities-eyebrow{
    display:inline-flex;
    align-items:center;
    gap:11px;
    margin-bottom:12px;
    color:#64871c;
    font-size:12px;
    font-weight:700;
    letter-spacing:.16em;
    text-transform:uppercase;
}


.facilities-eyebrow::before{
    content:"";
    width:34px;
    height:3px;
    border-radius:20px;
    background:#a9ce47;
}


.facilities-operations .facilities-head h2{
    margin:0;
    max-width:850px;
    color:#071b4e;
}


/* =========================================================
   COMPACT 2 × 2 GRID
========================================================= */

.facility-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:20px;
}


/* =========================================================
   BASE CARD
========================================================= */

.facility-card{
    position:relative;
    min-width:0;
    overflow:hidden;
    border:1px solid #e1e7de;
    border-radius:18px;
    background:#fff;
    box-shadow:0 12px 32px rgba(7,27,78,.055);
    transition:
        transform .25s ease,
        box-shadow .25s ease,
        border-color .25s ease;
}


.facility-card:hover{
    transform:translateY(-4px);
    border-color:rgba(169,206,71,.82);
    box-shadow:0 18px 38px rgba(7,27,78,.10);
}


/* =========================================================
   IMAGE CARDS
========================================================= */

.facility-card-image{
    display:grid;
    grid-template-columns:40% 60%;
    min-height:300px;
}


.facility-card-reverse{
    grid-template-columns:60% 40%;
}


.facility-card-reverse .facility-image{
    order:2;
}


.facility-card-reverse .facility-card-copy{
    order:1;
}


/* =========================================================
   IMAGE AREA
   BLURRED FULL-BLEED BACKGROUND + FULL MACHINE IN FRONT
========================================================= */

.facility-image{
    position:relative;
    min-height:300px;
    overflow:hidden;
    background:#e9ede7;
}


.facility-image::before{
    content:"";
    position:absolute;
    inset:-18px;
    background-image:var(--facility-bg);
    background-position:center;
    background-size:cover;
    filter:blur(15px);
    transform:scale(1.12);
    opacity:.36;
}


.facility-image::after{
    content:"";
    position:absolute;
    inset:0;
    background:
        linear-gradient(
            135deg,
            rgba(255,255,255,.08),
            rgba(7,27,78,.10)
        );
}


.facility-image img{
    position:absolute;
    z-index:2;
    inset:0;
    width:100%;
    height:100%;
    padding:0;
    object-fit:contain;
    object-position:center;
    transition:transform .35s ease;
}


.facility-card:hover .facility-image img{
    transform:scale(1.035);
}


/* =========================================================
   CONTENT
========================================================= */

.facility-card-copy{
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:27px 28px;
}


.facility-mini-label{
    display:inline-flex;
    align-items:center;
    width:fit-content;
    gap:8px;
    margin-bottom:9px;
    color:#698c20;
    font-size:10px;
    line-height:1.2;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}


.facility-mini-label::before{
    content:"";
    width:18px;
    height:2px;
    background:#a9ce47;
}


.facility-card h3{
    margin:0 0 10px;
    color:#071b4e;
}


.facility-card-copy p{
    margin:0;
    color:#5c6875;
    font-size:14px;
    line-height:1.65;
}


/* =========================================================
   DARK CORE CARD
========================================================= */

.facility-core-card{
    display:grid;
    grid-template-columns:minmax(0,1fr) 150px;
    gap:24px;
    align-items:center;
    min-height:300px;
    padding:30px;
    border-color:#071b4e;
    background:
        radial-gradient(
            circle at 105% -15%,
            rgba(169,206,71,.22),
            transparent 38%
        ),
        #071b4e;
}


.facility-core-card:hover{
    border-color:#a9ce47;
}


.facility-core-copy{
    position:relative;
    z-index:2;
}


.facility-mini-light{
    color:#a9ce47;
}


.facility-core-copy h3{
    color:#fff;
}


.facility-core-copy p{
    margin:0;
    color:rgba(255,255,255,.72);
    font-size:14px;
    line-height:1.65;
}


/* =========================================================
   CORE STATS
========================================================= */

.facility-core-stats{
    display:flex;
    flex-direction:column;
    gap:12px;
}


.facility-stat{
    display:flex;
    flex-direction:column;
    justify-content:center;
    min-height:103px;
    padding:15px;
    border:1px solid rgba(255,255,255,.14);
    border-radius:14px;
    background:rgba(255,255,255,.065);
}


.facility-stat strong{
    display:block;
    margin-bottom:3px;
    color:#a9ce47;
    font-size:27px;
    line-height:1;
    font-weight:800;
}


.facility-stat span{
    color:rgba(255,255,255,.70);
    font-size:12px;
    line-height:1.4;
}


/* =========================================================
   TABLET
========================================================= */

@media(max-width:1050px){

    .facility-grid{
        grid-template-columns:1fr;
    }


    .facility-card-image{
        min-height:270px;
    }


    .facility-image{
        min-height:270px;
    }


    .facility-core-card{
        min-height:auto;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media(max-width:650px){

    .facilities-operations{
        padding:55px 0 62px;
    }


    .facilities-operations .facilities-head{
        margin-bottom:28px;
    }


    .facility-grid{
        gap:16px;
    }


    .facility-card,
    .facility-core-card{
        border-radius:14px;
    }


    .facility-card-image,
    .facility-card-reverse{
        grid-template-columns:1fr;
    }


    .facility-card-reverse .facility-image,
    .facility-card-reverse .facility-card-copy{
        order:initial;
    }


    .facility-image{
        min-height:230px;
    }


    .facility-card-copy{
        padding:22px 20px 24px;
    }


    .facility-card-copy p,
    .facility-core-copy p{
        font-size:13.5px;
    }


    .facility-core-card{
        grid-template-columns:1fr;
        gap:22px;
        padding:24px 21px;
    }


    .facility-core-stats{
        display:grid;
        grid-template-columns:repeat(2,minmax(0,1fr));
    }


    .facility-stat{
        min-height:92px;
    }

}


/* === OUR FACILITIES PAGE END === */

/* === FACILITIES FINAL POLISH START === */


/* =========================================================
   1. IMAGE MUST COMPLETELY FILL ITS AREA
   NO GREY / EMPTY SPACE TOP OR BOTTOM
========================================================= */

.facility-image{
    position:relative !important;
    overflow:hidden !important;
    padding:0 !important;
    background:transparent !important;
}


/* Remove old blurred grey background */

.facility-image::before,
.facility-image::after{
    content:none !important;
    display:none !important;
}


/* Fill complete image column */

.facility-image img{
    position:absolute !important;

    inset:0 !important;

    display:block !important;

    width:100% !important;
    height:100% !important;

    max-width:none !important;
    max-height:none !important;

    padding:0 !important;
    margin:0 !important;

    object-fit:cover !important;
    object-position:center center !important;

    border:0 !important;
}


/* Keep current subtle hover */

.facility-card:hover .facility-image img{
    transform:scale(1.025) !important;
}


/* =========================================================
   2. CONTENT ALIGNMENT
   REMOVE EXTRA EMPTY SPACE
========================================================= */

.facility-card-copy{
    justify-content:center !important;
    gap:0 !important;

    padding:
        24px 28px !important;
}


/* Small category label */

.facility-mini-label{
    margin:
        0 0 8px 0 !important;
}


/* TITLE */

.facility-card-copy h3,
.facility-core-copy h3{
    margin:
        0 0 7px 0 !important;

    padding:0 !important;
}


/* TEXT STARTS DIRECTLY BELOW TITLE */

.facility-card-copy p,
.facility-core-copy p{
    margin:
        0 !important;

    padding:
        0 !important;
}


/* =========================================================
   3. KEEP CARD HEIGHT COMPACT
========================================================= */

.facility-card-image{
    min-height:285px !important;
}


.facility-image{
    min-height:285px !important;
}


/* =========================================================
   CORE CARD ALSO SLIGHTLY TIGHTER
========================================================= */

.facility-core-card{
    min-height:285px !important;

    padding:
        27px 30px !important;
}


.facility-core-copy .facility-mini-label{
    margin-bottom:
        8px !important;
}


/* =========================================================
   TABLET
========================================================= */

@media(max-width:1050px){

    .facility-card-image,
    .facility-image{
        min-height:260px !important;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media(max-width:650px){

    .facility-image{
        min-height:225px !important;
    }


    .facility-card-copy{
        padding:
            20px 20px 22px !important;
    }


    .facility-card-copy h3,
    .facility-core-copy h3{
        margin-bottom:
            6px !important;
    }


    .facility-core-card{
        padding:
            22px 20px !important;
    }

}


/* === FACILITIES FINAL POLISH END === */

/* === FACILITIES FINAL SLIDE START === */


/* =========================================================
   HEADING
========================================================= */

.facilities-animation-ready .facilities-head{
    transition:
        transform .70s cubic-bezier(.22,.61,.36,1),
        opacity .65s ease;
}

.facilities-animation-ready
.facilities-head.facility-before-reveal{
    transform:translateY(24px);
    opacity:.15;
}

.facilities-animation-ready
.facilities-head.facility-visible{
    transform:translateY(0);
    opacity:1;
}


/* =========================================================
   ALL CARDS
========================================================= */

.facilities-animation-ready .facility-card{
    will-change:transform;

    transition:
        transform .78s cubic-bezier(.22,.61,.36,1),
        box-shadow .28s ease,
        border-color .28s ease;
}


/* =========================================================
   CARD 1
   PROPER SLIDE IN LEFT
========================================================= */

.facilities-animation-ready
.facility-card:nth-child(1).facility-before-reveal{
    transform:translate3d(-65px,0,0);
}

.facilities-animation-ready
.facility-card:nth-child(1).facility-visible{
    transform:translate3d(0,0,0);
}


/* =========================================================
   CARD 2
   PROPER SLIDE IN RIGHT
========================================================= */

.facilities-animation-ready
.facility-card:nth-child(2).facility-before-reveal{
    transform:translate3d(65px,0,0);
}

.facilities-animation-ready
.facility-card:nth-child(2).facility-visible{
    transform:translate3d(0,0,0);
}


/* =========================================================
   CARD 3
   SUBTLE BOTTOM-UP
========================================================= */

.facilities-animation-ready
.facility-card:nth-child(3).facility-before-reveal{
    transform:translate3d(0,32px,0);
}

.facilities-animation-ready
.facility-card:nth-child(3).facility-visible{
    transform:translate3d(0,0,0);
}


/* =========================================================
   CARD 4
   SUBTLE BOTTOM-UP
========================================================= */

.facilities-animation-ready
.facility-card:nth-child(4).facility-before-reveal{
    transform:translate3d(0,32px,0);
}

.facilities-animation-ready
.facility-card:nth-child(4).facility-visible{
    transform:translate3d(0,0,0);
}


/* =========================================================
   IMAGE
   VERY LIGHT SETTLE ONLY
========================================================= */

.facilities-animation-ready
.facility-card .facility-image img{
    transition:
        transform .82s cubic-bezier(.22,.61,.36,1);
}

.facilities-animation-ready
.facility-card.facility-before-reveal
.facility-image img{
    transform:scale(1.035);
}

.facilities-animation-ready
.facility-card.facility-visible
.facility-image img{
    transform:scale(1);
}


/* =========================================================
   KEEP CURRENT HOVER
========================================================= */

.facilities-animation-ready
.facility-card.facility-visible:hover{
    transform:translateY(-4px);
}

.facilities-animation-ready
.facility-card.facility-visible:hover
.facility-image img{
    transform:scale(1.025);
}


/* =========================================================
   IMPORTANT:
   CARD TEXT IS NEVER HIDDEN OR SEPARATELY ANIMATED
========================================================= */

.facilities-animation-ready
.facility-card h3,

.facilities-animation-ready
.facility-card p,

.facilities-animation-ready
.facility-card .facility-mini-label,

.facilities-animation-ready
.facility-card .facility-stat{
    opacity:1 !important;
}


/* =========================================================
   MOBILE
   Use bottom-up instead of horizontal slide
========================================================= */

@media(max-width:650px){

    .facilities-animation-ready
    .facility-card:nth-child(1).facility-before-reveal,

    .facilities-animation-ready
    .facility-card:nth-child(2).facility-before-reveal,

    .facilities-animation-ready
    .facility-card:nth-child(3).facility-before-reveal,

    .facilities-animation-ready
    .facility-card:nth-child(4).facility-before-reveal{

        transform:translate3d(0,25px,0);
    }

}


/* =========================================================
   ACCESSIBILITY
========================================================= */

@media(prefers-reduced-motion:reduce){

    .facilities-animation-ready .facilities-head,
    .facilities-animation-ready .facility-card,
    .facilities-animation-ready .facility-image img{

        transition:none !important;
        transform:none !important;
        opacity:1 !important;
    }

}


/* === FACILITIES FINAL SLIDE END === */

/* === PHYSICAL TEST UI START === */


/* =========================================================
   SECTION
========================================================= */

.physical-tests{
    position:relative;
    overflow:hidden;
    padding:82px 0 90px;
    background:
        linear-gradient(
            135deg,
            #f8faf6 0%,
            #ffffff 52%,
            #f6f8f4 100%
        );
}


/* =========================================================
   HEADING
========================================================= */

.physical-test-head{
    display:grid;
    grid-template-columns:minmax(300px,.82fr) minmax(0,1.18fr);
    gap:65px;
    align-items:end;
    margin-bottom:42px;
}


.physical-test-eyebrow{
    display:inline-flex;
    align-items:center;
    gap:11px;
    margin-bottom:10px;
    color:#63871d;
    font-size:12px;
    font-weight:800;
    letter-spacing:.16em;
    text-transform:uppercase;
}


.physical-test-eyebrow::before{
    content:"";
    width:32px;
    height:3px;
    border-radius:20px;
    background:#a9ce47;
}


.physical-test-head h2{
    margin:0;
    color:#071b4e;
}


.physical-test-head>p{
    margin:0;
    max-width:680px;
    color:#5e6a76;
    font-size:15px;
    line-height:1.75;
}


/* =========================================================
   MAIN LAYOUT
========================================================= */

.physical-test-layout{
    display:grid;
    grid-template-columns:minmax(340px,.8fr) minmax(0,1.2fr);
    gap:68px;
    align-items:center;
}


/* =========================================================
   VISUAL STACK
========================================================= */

.physical-test-visual{
    position:relative;
    min-height:470px;
}


.physical-visual{
    position:absolute;
    margin:0;
    overflow:hidden;
    border-radius:18px;
    background:#fff;
    box-shadow:
        0 18px 42px rgba(7,27,78,.12);
}


.physical-visual-main{
    top:0;
    left:0;
    width:72%;
    z-index:2;
}


.physical-visual-secondary{
    right:0;
    bottom:0;
    width:62%;
    z-index:3;
}


/* image stage */

.physical-image-stage{
    display:flex;
    align-items:center;
    justify-content:center;
    height:270px;
    overflow:hidden;
    background:
        radial-gradient(
            circle at center,
            #ffffff 0%,
            #eeeeec 100%
        );
}


.physical-visual-secondary
.physical-image-stage{
    height:220px;
}


.physical-image-stage img{
    display:block;
    width:100%;
    height:100%;
    object-fit:contain;
    object-position:center;
    transition:transform .4s ease;
}


.physical-visual:hover img{
    transform:scale(1.04);
}


/* captions */

.physical-visual figcaption{
    padding:13px 16px 15px;
    color:#071b4e;
    font-size:13px;
    font-weight:700;
    line-height:1.35;
}


.physical-visual figcaption span{
    display:block;
    margin-bottom:4px;
    color:#779e25;
    font-size:9px;
    letter-spacing:.13em;
    text-transform:uppercase;
}


/* quality badge */

.physical-quality-mark{
    position:absolute;
    left:59%;
    top:44%;
    z-index:5;
    display:flex;
    align-items:center;
    justify-content:center;
    width:64px;
    height:64px;
    border:7px solid #f8faf6;
    border-radius:50%;
    background:#a9ce47;
    color:#071b4e;
    box-shadow:0 8px 25px rgba(7,27,78,.14);
}


.physical-quality-mark svg{
    width:28px;
    height:28px;
}


/* =========================================================
   RIGHT TEST LIST
========================================================= */

.physical-test-list{
    border-top:1px solid #dde4da;
}


.physical-test-item{
    display:grid;
    grid-template-columns:58px 1fr;
    gap:22px;
    padding:27px 0;
    border-bottom:1px solid #dde4da;
    transition:
        transform .25s ease;
}


.physical-test-item:hover{
    transform:translateX(7px);
}


/* ICON */

.physical-test-icon{
    display:flex;
    align-items:center;
    justify-content:center;
    width:52px;
    height:52px;
    border-radius:14px;
    background:#071b4e;
    color:#a9ce47;
    transition:
        background .25s ease,
        color .25s ease,
        transform .25s ease;
}


.physical-test-icon svg{
    width:25px;
    height:25px;
}


.physical-test-item:hover
.physical-test-icon{
    background:#a9ce47;
    color:#071b4e;
    transform:translateY(-2px);
}


/* CONTENT */

.physical-test-tag{
    display:block;
    margin-bottom:7px;
    color:#729621;
    font-size:10px;
    line-height:1.3;
    font-weight:800;
    letter-spacing:.11em;
    text-transform:uppercase;
}


.physical-test-copy h3{
    margin:0 0 8px;
    color:#071b4e;
}


.physical-test-copy p{
    margin:0;
    color:#5b6875;
    font-size:14.5px;
    line-height:1.7;
}


/* =========================================================
   TABLET
========================================================= */

@media(max-width:950px){

    .physical-tests{
        padding:70px 0;
    }


    .physical-test-head{
        grid-template-columns:1fr;
        gap:16px;
        margin-bottom:36px;
    }


    .physical-test-layout{
        grid-template-columns:1fr;
        gap:42px;
    }


    .physical-test-visual{
        max-width:620px;
        width:100%;
        min-height:450px;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media(max-width:600px){

    .physical-tests{
        padding:56px 0 62px;
    }


    .physical-test-head{
        margin-bottom:28px;
    }


    .physical-test-visual{
        min-height:390px;
    }


    .physical-visual-main{
        width:78%;
    }


    .physical-visual-secondary{
        width:68%;
    }


    .physical-image-stage{
        height:220px;
    }


    .physical-visual-secondary
    .physical-image-stage{
        height:180px;
    }


    .physical-quality-mark{
        width:54px;
        height:54px;
        left:58%;
    }


    .physical-test-item{
        grid-template-columns:46px 1fr;
        gap:15px;
        padding:22px 0;
    }


    .physical-test-item:hover{
        transform:none;
    }


    .physical-test-icon{
        width:44px;
        height:44px;
        border-radius:11px;
    }


    .physical-test-copy p{
        font-size:13.5px;
    }

}


/* === PHYSICAL TEST UI END === */

/* === PHYSICAL TEST FINAL POLISH START === */


/* =========================================================
   IMAGE FIX
   Remove left/right negative space
========================================================= */

.physical-image-stage{
    position:relative !important;
    overflow:hidden !important;
    padding:0 !important;
}


/*
   Original images contain considerable grey space around
   the equipment, so use controlled zoom/crop.
   Image proportion stays intact.
*/

.physical-visual-main .physical-image-stage img{
    width:100% !important;
    height:100% !important;

    max-width:none !important;
    max-height:none !important;

    object-fit:cover !important;
    object-position:center center !important;

    transform:scale(1.34) !important;
    transform-origin:center center !important;

    transition:
        transform .45s cubic-bezier(.22,.61,.36,1) !important;
}


.physical-visual-secondary .physical-image-stage img{
    width:100% !important;
    height:100% !important;

    max-width:none !important;
    max-height:none !important;

    object-fit:cover !important;
    object-position:center center !important;

    transform:scale(1.40) !important;
    transform-origin:center center !important;

    transition:
        transform .45s cubic-bezier(.22,.61,.36,1) !important;
}


/* soft image hover */

.physical-visual-main:hover
.physical-image-stage img{
    transform:scale(1.38) !important;
}


.physical-visual-secondary:hover
.physical-image-stage img{
    transform:scale(1.44) !important;
}



/* =========================================================
   SCROLL REVEAL
========================================================= */

/*
   Heading
*/

.physical-motion-ready
.physical-test-head.physical-before-reveal{
    opacity:0;
    transform:translateY(22px);
}


.physical-motion-ready
.physical-test-head{
    transition:
        opacity .68s ease,
        transform .76s cubic-bezier(.22,.61,.36,1);
}


.physical-motion-ready
.physical-test-head.physical-visible{
    opacity:1;
    transform:translateY(0);
}



/*
   Main ultrasonic visual
   Slide in left
*/

.physical-motion-ready
.physical-visual-main.physical-before-reveal{
    opacity:.15;
    transform:translateX(-38px);
}


.physical-motion-ready
.physical-visual-main{
    transition:
        opacity .70s ease,
        transform .78s cubic-bezier(.22,.61,.36,1),
        box-shadow .25s ease;
}


.physical-motion-ready
.physical-visual-main.physical-visible{
    opacity:1;
    transform:translateX(0);
}



/*
   Magnetic visual
   Gentle right/bottom entry
*/

.physical-motion-ready
.physical-visual-secondary.physical-before-reveal{
    opacity:.15;
    transform:translate3d(30px,22px,0);
}


.physical-motion-ready
.physical-visual-secondary{
    transition:
        opacity .72s ease,
        transform .82s cubic-bezier(.22,.61,.36,1),
        box-shadow .25s ease;
}


.physical-motion-ready
.physical-visual-secondary.physical-visible{
    opacity:1;
    transform:translate3d(0,0,0);
}



/*
   Quality badge
*/

.physical-motion-ready
.physical-quality-mark.physical-before-reveal{
    opacity:0;
    transform:scale(.78);
}


.physical-motion-ready
.physical-quality-mark{
    transition:
        opacity .55s ease,
        transform .65s cubic-bezier(.34,1.56,.64,1);
}


.physical-motion-ready
.physical-quality-mark.physical-visible{
    opacity:1;
    transform:scale(1);
}



/*
   Test content items
   Whole item moves together.
   Text itself is NEVER hidden separately.
*/

.physical-motion-ready
.physical-test-item.physical-before-reveal{
    opacity:.12;
    transform:translateX(30px);
}


.physical-motion-ready
.physical-test-item{
    transition:
        opacity .65s ease,
        transform .75s cubic-bezier(.22,.61,.36,1);
}


.physical-motion-ready
.physical-test-item.physical-visible{
    opacity:1;
    transform:translateX(0);
}



/* =========================================================
   KEEP TEXT ALWAYS NORMAL
========================================================= */

.physical-test-item h3,
.physical-test-item p,
.physical-test-item .physical-test-tag,
.physical-visual figcaption{
    opacity:1 !important;
}



/* =========================================================
   MOBILE
========================================================= */

@media(max-width:600px){

    .physical-motion-ready
    .physical-visual-main.physical-before-reveal,

    .physical-motion-ready
    .physical-visual-secondary.physical-before-reveal,

    .physical-motion-ready
    .physical-test-item.physical-before-reveal{

        transform:translateY(22px);
    }


    .physical-motion-ready
    .physical-visual-main.physical-visible,

    .physical-motion-ready
    .physical-visual-secondary.physical-visible,

    .physical-motion-ready
    .physical-test-item.physical-visible{

        transform:translateY(0);
    }


    .physical-visual-main
    .physical-image-stage img{
        transform:scale(1.30) !important;
    }


    .physical-visual-secondary
    .physical-image-stage img{
        transform:scale(1.35) !important;
    }

}



/* =========================================================
   REDUCED MOTION
========================================================= */

@media(prefers-reduced-motion:reduce){

    .physical-motion-ready .physical-test-head,
    .physical-motion-ready .physical-visual,
    .physical-motion-ready .physical-quality-mark,
    .physical-motion-ready .physical-test-item{

        opacity:1 !important;
        transform:none !important;
        transition:none !important;
    }

}


/* === PHYSICAL TEST FINAL POLISH END === */
/* =========================================================
   ANIMATION
========================================================= */

/* === AMT MECHANICAL FINAL START === */


/* =========================================================
   SECTION
========================================================= */

.amt-mechanical-final{
    width:100%;
    overflow:hidden;
    padding:56px 0 62px;
    background:linear-gradient(180deg,#fff 0%,#fafbf8 100%);
}


/* =========================================================
   COMPACT DESKTOP WIDTH
========================================================= */

.amt-mechanical-inner{
    width:calc(100% - 40px);
    max-width:1077px;
    margin:0 auto;
}


/* =========================================================
   HEADING
========================================================= */

.amt-mechanical-head{
    margin:0 auto 28px;
    text-align:center;
}

.amt-mechanical-kicker{
    display:inline-flex;
    align-items:center;
    gap:10px;
    margin-bottom:8px;
    color:#678b1e;
    font-size:11px;
    font-weight:800;
    line-height:1.2;
    letter-spacing:.15em;
    text-transform:uppercase;
}

.amt-mechanical-kicker::before,
.amt-mechanical-kicker::after{
    content:"";
    width:27px;
    height:2px;
    background:#a9ce47;
}

.amt-mechanical-head h2{
    margin:0;
    color:#071b4e;
}


/* =========================================================
   EXACT 2-COLUMN GRID
========================================================= */

.amt-mechanical-grid{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:22px !important;
    align-items:stretch !important;
}


/* =========================================================
   CARD
========================================================= */

.amt-mechanical-card{
    position:relative;
    display:flex;
    flex-direction:column;
    width:auto !important;
    min-width:0 !important;
    max-width:none !important;
    margin:0 !important;
    overflow:hidden;
    border:1px solid #dfe7d9;
    border-radius:18px;
    background:#fff;
    box-shadow:0 13px 32px rgba(7,27,78,.065);
    transition:
        transform .28s ease,
        border-color .28s ease,
        box-shadow .28s ease;
}

.amt-mechanical-card::after{
    content:"";
    position:absolute;
    left:0;
    bottom:0;
    width:0;
    height:4px;
    background:#a9ce47;
    transition:width .32s ease;
}

.amt-mechanical-card:hover{
    transform:translateY(-5px);
    border-color:#a9ce47;
    box-shadow:0 19px 42px rgba(7,27,78,.11);
}

.amt-mechanical-card:hover::after{
    width:100%;
}


/* =========================================================
   IMAGE AREA
========================================================= */

.amt-mechanical-media{
    position:relative;
    width:100%;
    height:300px;
    min-height:300px;
    overflow:hidden;
    background:#eeeeec;
}

.amt-mechanical-media img{
    position:absolute !important;
    inset:0 !important;
    display:block !important;
    width:100% !important;
    height:100% !important;
    max-width:none !important;
    max-height:none !important;
    margin:0 !important;
    padding:0 !important;
    object-fit:cover !important;
    object-position:center center !important;
    filter:none !important;
    opacity:1 !important;
    transition:transform .45s cubic-bezier(.22,.61,.36,1);
}

.amt-mechanical-card:hover
.amt-mechanical-media img{
    transform:scale(1.035);
}


/* =========================================================
   METRIC BADGE
========================================================= */

.amt-mechanical-metric{
    position:absolute;
    z-index:5;
    top:16px;
    right:16px;
    display:flex;
    flex-direction:column;
    min-width:104px;
    padding:11px 13px;
    border-radius:13px;
    background:#071b4e;
    box-shadow:0 8px 20px rgba(7,27,78,.20);
}

.amt-mechanical-metric strong{
    color:#a9ce47;
    font-size:17px;
    line-height:1.1;
}

.amt-mechanical-metric span{
    margin-top:3px;
    color:rgba(255,255,255,.75);
    font-size:10px;
}


/* =========================================================
   LABEL
========================================================= */

.amt-mechanical-tag{
    position:absolute;
    z-index:5;
    left:17px;
    bottom:15px;
    padding:7px 11px;
    border-radius:999px;
    background:rgba(255,255,255,.95);
    color:#071b4e;
    font-size:10px;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
    box-shadow:0 5px 15px rgba(7,27,78,.08);
}


/* =========================================================
   BODY
========================================================= */

.amt-mechanical-body{
    display:grid;
    grid-template-columns:42px minmax(0,1fr);
    gap:15px;
    align-items:start;
    flex:1;
    padding:21px 22px 24px;
}

.amt-mechanical-icon{
    display:flex;
    align-items:center;
    justify-content:center;
    width:40px;
    height:40px;
    border-radius:12px;
    background:#edf5df;
    color:#62861b;
    font-size:18px;
    font-weight:800;
}

.amt-mechanical-icon svg{
    width:22px;
    height:22px;
}

.amt-mechanical-content{
    min-width:0;
}

.amt-mechanical-content h3{
    margin:1px 0 7px;
    color:#071b4e;
}

.amt-mechanical-content p{
    margin:0;
    color:#5b6875;
    font-size:13.5px;
    line-height:1.63;
}


/* =========================================================
   ANIMATION
========================================================= */

.amt-motion-ready
.amt-mechanical-head.amt-before{
    opacity:0;
    transform:translateY(18px);
}

.amt-motion-ready
.amt-mechanical-head{
    transition:
        opacity .62s ease,
        transform .72s cubic-bezier(.22,.61,.36,1);
}

.amt-motion-ready
.amt-mechanical-head.amt-visible{
    opacity:1;
    transform:translateY(0);
}


/* LEFT */

.amt-motion-ready
.amt-mechanical-card-left.amt-before{
    opacity:.15;
    transform:translateX(-38px);
}

.amt-motion-ready
.amt-mechanical-card-left{
    transition:
        opacity .66s ease,
        transform .74s cubic-bezier(.22,.61,.36,1),
        border-color .28s ease,
        box-shadow .28s ease;
}

.amt-motion-ready
.amt-mechanical-card-left.amt-visible{
    opacity:1;
    transform:translateX(0);
}


/* RIGHT */

.amt-motion-ready
.amt-mechanical-card-right.amt-before{
    opacity:.15;
    transform:translateX(38px);
}

.amt-motion-ready
.amt-mechanical-card-right{
    transition:
        opacity .66s ease,
        transform .74s cubic-bezier(.22,.61,.36,1),
        border-color .28s ease,
        box-shadow .28s ease;
}

.amt-motion-ready
.amt-mechanical-card-right.amt-visible{
    opacity:1;
    transform:translateX(0);
}

.amt-motion-ready
.amt-mechanical-card.amt-visible:hover{
    transform:translateY(-5px);
}


/* =========================================================
   TABLET
========================================================= */

@media(max-width:900px){

    .amt-mechanical-inner{
        width:calc(100% - 34px);
        max-width:700px;
    }

    .amt-mechanical-grid{
        grid-template-columns:1fr !important;
    }

    .amt-mechanical-media{
        height:300px;
        min-height:300px;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media(max-width:600px){

    .amt-mechanical-final{
        padding:48px 0 54px;
    }

    .amt-mechanical-inner{
        width:calc(100% - 28px);
    }

    .amt-mechanical-head{
        margin-bottom:23px;
        text-align:left;
    }

    .amt-mechanical-kicker::after{
        display:none;
    }

    .amt-mechanical-grid{
        gap:17px !important;
    }

    .amt-mechanical-card{
        border-radius:15px;
    }

    .amt-mechanical-media{
        height:235px;
        min-height:235px;
    }

    .amt-mechanical-body{
        grid-template-columns:37px minmax(0,1fr);
        gap:12px;
        padding:18px 17px 21px;
    }

    .amt-mechanical-icon{
        width:36px;
        height:36px;
    }

    .amt-mechanical-content p{
        font-size:13px;
    }

    .amt-motion-ready
    .amt-mechanical-card.amt-before{
        transform:translateY(22px);
    }

    .amt-motion-ready
    .amt-mechanical-card.amt-visible{
        transform:translateY(0);
    }

}


/* =========================================================
   REDUCED MOTION
========================================================= */

@media(prefers-reduced-motion:reduce){

    .amt-motion-ready .amt-mechanical-head,
    .amt-motion-ready .amt-mechanical-card{
        opacity:1 !important;
        transform:none !important;
        transition:none !important;
    }

}


/* === AMT MECHANICAL FINAL END === */

/* === METAL V3 FINAL START === */


/* =========================================================
   SECTION
========================================================= */

.metal-v3-section{

    position:relative;

    overflow:hidden;

    padding:
        68px 0 76px;

    background:
        #ffffff;

}


/* =========================================================
   INNER
========================================================= */

.metal-v3-inner{

    width:
        calc(100% - 40px);

    max-width:
        1080px;

    margin:
        0 auto;

}


/* =========================================================
   CENTER HEADER
========================================================= */

.metal-v3-head{

    max-width:
        760px;

    margin:
        0 auto 48px;

    text-align:
        center;

}


.metal-v3-kicker{

    display:
        inline-flex;

    align-items:
        center;

    gap:
        10px;

    margin-bottom:
        9px;

    color:
        #688c1e;

    font-size:
        11px;

    font-weight:
        800;

    letter-spacing:
        .15em;

    text-transform:
        uppercase;

}


.metal-v3-kicker::before,
.metal-v3-kicker::after{

    content:"";

    width:
        28px;

    height:
        2px;

    background:
        #a9ce47;

}


.metal-v3-head h2{

    margin:
        0 0 13px;

    color:
        #071b4e;

}


.metal-v3-head p{

    max-width:
        700px;

    margin:
        0 auto;

    color:
        #5b6875;

    font-size:
        14.5px;

    line-height:
        1.72;

}


/* =========================================================
   PROCESS
========================================================= */

.metal-v3-process{

    position:
        relative;

}


/* =========================================================
   CENTER LINE
========================================================= */

.metal-v3-line{

    position:
        absolute;

    z-index:
        1;

    left:
        50%;

    top:
        10px;

    bottom:
        10px;

    width:
        1px;

    background:
        #dce4d7;

    transform:
        translateX(-50%);

}


/* =========================================================
   ROW
========================================================= */

.metal-v3-row{

    position:
        relative;

    z-index:
        2;

    display:
        grid;

    grid-template-columns:
        minmax(0,1fr)
        64px
        minmax(0,1fr);

    gap:
        26px;

    align-items:
        center;

}


.metal-v3-row + .metal-v3-row{

    margin-top:
        42px;

}


/* =========================================================
   IMAGE
========================================================= */

.metal-v3-image{

    width:
        min(100%, 411px);

    aspect-ratio:
        1 / 1;

    overflow:
        hidden;

    border-radius:
        22px;

    background:
        #eeeeec;

    box-shadow:
        0 15px 35px rgba(7,27,78,.09);

    transition:
        transform .3s ease,
        box-shadow .3s ease;

}


/*
   IMPORTANT:
   NO PADDING
   NO INNER SPACE
   IMAGE FILLS ENTIRE SQUARE
*/

.metal-v3-image img{

    display:
        block;

    width:
        100%;

    height:
        100%;

    max-width:
        none;

    max-height:
        none;

    margin:
        0;

    padding:
        0;

    object-fit:
        cover;

    object-position:
        center;

    filter:
        none !important;

    transition:
        transform .45s cubic-bezier(.22,.61,.36,1);

}


.metal-v3-row-left
.metal-v3-image{

    justify-self:
        end;

}


.metal-v3-row-right
.metal-v3-image{

    justify-self:
        start;

}


.metal-v3-row:hover
.metal-v3-image{

    transform:
        translateY(-4px);

    box-shadow:
        0 20px 42px rgba(7,27,78,.13);

}


.metal-v3-row:hover
.metal-v3-image img{

    transform:
        scale(1.035);

}


/* =========================================================
   NODE
========================================================= */

.metal-v3-point{

    position:
        relative;

    z-index:
        4;

    display:
        flex;

    align-items:
        center;

    justify-content:
        center;

    width:
        56px;

    height:
        56px;

    margin:
        0 auto;

    border:
        8px solid #ffffff;

    border-radius:
        50%;

    background:
        #071b4e;

    box-shadow:
        0 7px 18px rgba(7,27,78,.14);

}


.metal-v3-point span{

    color:
        #a9ce47;

    font-size:
        11px;

    font-weight:
        800;

}


/* =========================================================
   COPY
========================================================= */

.metal-v3-copy{

    max-width:
        420px;

}


.metal-v3-row-right
.metal-v3-copy{

    justify-self:
        end;

}


.metal-v3-label{

    display:
        inline-flex;

    align-items:
        center;

    gap:
        8px;

    margin-bottom:
        9px;

    color:
        #6a9020;

    font-size:
        10px;

    font-weight:
        800;

    letter-spacing:
        .11em;

    text-transform:
        uppercase;

}


.metal-v3-label::before{

    content:"";

    width:
        18px;

    height:
        2px;

    background:
        #a9ce47;

}


.metal-v3-copy h3{

    margin:
        0 0 9px;

    color:
        #071b4e;

}


.metal-v3-copy p{

    margin:
        0;

    color:
        #596775;

    font-size:
        14px;

    line-height:
        1.7;

}


/* =========================================================
   INSIGHT
========================================================= */

.metal-v3-insight{

    display:
        flex;

    align-items:
        center;

    gap:
        10px;

    margin-top:
        16px;

    padding-top:
        14px;

    border-top:
        1px solid #e1e7de;

    color:
        #071b4e;

    font-size:
        12px;

    line-height:
        1.45;

    font-weight:
        700;

}


.metal-v3-insight > span{

    width:
        8px;

    height:
        8px;

    flex:
        0 0 auto;

    border-radius:
        50%;

    background:
        #a9ce47;

}


/* =========================================================
   ANIMATION
========================================================= */

.metal-v3-motion
.metal-v3-head.metal-v3-before{

    opacity:
        0;

    transform:
        translateY(18px);

}


.metal-v3-motion
.metal-v3-head{

    transition:
        opacity .62s ease,
        transform .72s cubic-bezier(.22,.61,.36,1);

}


.metal-v3-motion
.metal-v3-head.metal-v3-visible{

    opacity:
        1;

    transform:
        translateY(0);

}


/* LINE */

.metal-v3-motion
.metal-v3-line.metal-v3-before{

    opacity:
        0;

    transform:
        translateX(-50%) scaleY(.25);

}


.metal-v3-motion
.metal-v3-line{

    transform-origin:
        top;

    transition:
        opacity .55s ease,
        transform .76s cubic-bezier(.22,.61,.36,1);

}


.metal-v3-motion
.metal-v3-line.metal-v3-visible{

    opacity:
        1;

    transform:
        translateX(-50%) scaleY(1);

}


/* LEFT ROW */

.metal-v3-motion
.metal-v3-row-left.metal-v3-before{

    opacity:
        .12;

    transform:
        translateX(-34px);

}


.metal-v3-motion
.metal-v3-row-left{

    transition:
        opacity .66s ease,
        transform .76s cubic-bezier(.22,.61,.36,1);

}


.metal-v3-motion
.metal-v3-row-left.metal-v3-visible{

    opacity:
        1;

    transform:
        translateX(0);

}


/* RIGHT ROW */

.metal-v3-motion
.metal-v3-row-right.metal-v3-before{

    opacity:
        .12;

    transform:
        translateX(34px);

}


.metal-v3-motion
.metal-v3-row-right{

    transition:
        opacity .66s ease,
        transform .76s cubic-bezier(.22,.61,.36,1);

}


.metal-v3-motion
.metal-v3-row-right.metal-v3-visible{

    opacity:
        1;

    transform:
        translateX(0);

}


/* =========================================================
   TABLET
========================================================= */

@media(max-width:900px){

    .metal-v3-inner{

        width:
            calc(100% - 34px);

        max-width:
            700px;

    }


    .metal-v3-row{

        grid-template-columns:
            44px minmax(0,1fr);

        gap:
            17px;

        align-items:
            start;

    }


    .metal-v3-line{

        left:
            21px;

        transform:
            none;

    }


    .metal-v3-point{

        grid-column:
            1;

        grid-row:
            1;

        width:
            44px;

        height:
            44px;

        border-width:
            6px;

    }


    .metal-v3-row-left
    .metal-v3-image,

    .metal-v3-row-right
    .metal-v3-image{

        grid-column:
            2;

        justify-self:
            start;

        width:
            min(100%, 411px);

    }


    .metal-v3-row-left
    .metal-v3-copy,

    .metal-v3-row-right
    .metal-v3-copy{

        grid-column:
            2;

        justify-self:
            stretch;

        max-width:
            none;

    }


    .metal-v3-row-left
    .metal-v3-image{

        grid-row:
            1;

    }


    .metal-v3-row-left
    .metal-v3-copy{

        grid-row:
            2;

    }


    .metal-v3-row-right
    .metal-v3-image{

        grid-row:
            1;

    }


    .metal-v3-row-right
    .metal-v3-copy{

        grid-row:
            2;

    }


    .metal-v3-motion
    .metal-v3-line.metal-v3-before{

        transform:
            scaleY(.25);

    }


    .metal-v3-motion
    .metal-v3-line.metal-v3-visible{

        transform:
            scaleY(1);

    }

}


/* =========================================================
   MOBILE
========================================================= */

@media(max-width:600px){

    .metal-v3-section{

        padding:
            50px 0 56px;

    }


    .metal-v3-inner{

        width:
            calc(100% - 28px);

    }


    .metal-v3-head{

        margin-bottom:
            34px;

    }


    .metal-v3-head p{

        font-size:
            13.5px;

    }


    .metal-v3-row{

        grid-template-columns:
            34px minmax(0,1fr);

        gap:
            13px;

    }


    .metal-v3-line{

        left:
            16px;

    }


    .metal-v3-point{

        width:
            34px;

        height:
            34px;

        border-width:
            5px;

    }


    .metal-v3-point span{

        font-size:
            9px;

    }


    .metal-v3-row-left
    .metal-v3-image,

    .metal-v3-row-right
    .metal-v3-image{

        width:
            min(100%, 411px);

        border-radius:
            17px;

    }


    .metal-v3-copy p{

        font-size:
            13px;

    }


    .metal-v3-insight{

        font-size:
            11.5px;

    }


    .metal-v3-motion
    .metal-v3-row.metal-v3-before{

        transform:
            translateY(20px);

    }


    .metal-v3-motion
    .metal-v3-row.metal-v3-visible{

        transform:
            translateY(0);

    }

}


/* =========================================================
   ACCESSIBILITY
========================================================= */

@media(prefers-reduced-motion:reduce){

    .metal-v3-motion
    .metal-v3-head,

    .metal-v3-motion
    .metal-v3-line,

    .metal-v3-motion
    .metal-v3-row{

        opacity:
            1 !important;

        transform:
            none !important;

        transition:
            none !important;

    }

}


/* === METAL V3 FINAL END === */

/* === CHEMICAL TEST SLIDER START === */


/* =========================================================
   SECTION
========================================================= */

.chem-slider-section{

    position:relative;

    overflow:hidden;

    padding:
        72px 0 76px;

    background:
        #071b4e;

}


/* subtle laboratory glow */

.chem-slider-section::before{

    content:"";

    position:absolute;

    width:
        430px;

    height:
        430px;

    top:
        -260px;

    right:
        -170px;

    border-radius:
        50%;

    background:
        rgba(169,206,71,.13);

    filter:
        blur(2px);

    pointer-events:
        none;

}


.chem-slider-section::after{

    content:"";

    position:absolute;

    width:
        300px;

    height:
        300px;

    left:
        -190px;

    bottom:
        -200px;

    border-radius:
        50%;

    border:
        1px solid rgba(255,255,255,.08);

    pointer-events:
        none;

}


/* =========================================================
   INNER
========================================================= */

.chem-slider-inner{

    position:relative;

    z-index:2;

    width:
        calc(100% - 40px);

    max-width:
        1180px;

    margin:
        0 auto;

}


/* =========================================================
   HEADER
========================================================= */

.chem-slider-head{

    max-width:
        760px;

    margin:
        0 auto 38px;

    text-align:
        center;

}


.chem-slider-kicker{

    display:
        inline-flex;

    align-items:
        center;

    gap:
        10px;

    margin-bottom:
        9px;

    color:
        #a9ce47;

    font-size:
        11px;

    line-height:
        1.2;

    font-weight:
        800;

    letter-spacing:
        .15em;

    text-transform:
        uppercase;

}


.chem-slider-kicker::before,
.chem-slider-kicker::after{

    content:"";

    width:
        27px;

    height:
        2px;

    background:
        #a9ce47;

}


.chem-slider-head h2{

    margin:
        0 0 12px;

    color:
        #ffffff !important;

}


.chem-slider-head p{

    max-width:
        690px;

    margin:
        0 auto;

    color:
        rgba(255,255,255,.70);

    font-size:
        14px;

    line-height:
        1.7;

}


/* =========================================================
   SHELL
========================================================= */

.chem-slider-shell{

    position:relative;

}


/* =========================================================
   VIEWPORT
========================================================= */

.chem-slider-viewport{

    overflow-x:
        auto;

    overflow-y:
        hidden;

    scroll-behavior:
        smooth;

    scroll-snap-type:
        x mandatory;

    scrollbar-width:
        none;

    -ms-overflow-style:
        none;

}


.chem-slider-viewport::-webkit-scrollbar{

    display:
        none;

}


/* =========================================================
   TRACK
========================================================= */

.chem-slider-track{

    display:flex;

    gap:
        20px;

    align-items:
        stretch;

}


/* =========================================================
   CARD - DESKTOP = EXACTLY 3
========================================================= */

.chem-slide-card{

    position:relative;

    flex:
        0 0 calc((100% - 40px) / 3);

    min-width:
        0;

    overflow:
        hidden;

    scroll-snap-align:
        start;

    border:
        1px solid rgba(255,255,255,.08);

    border-radius:
        18px;

    background:
        #ffffff;

    box-shadow:
        0 14px 35px rgba(0,0,0,.16);

    transition:
        transform .28s ease,
        box-shadow .28s ease,
        border-color .28s ease;

}


.chem-slide-card::after{

    content:"";

    position:absolute;

    left:
        0;

    bottom:
        0;

    width:
        0;

    height:
        4px;

    background:
        #a9ce47;

    transition:
        width .32s ease;

}


.chem-slide-card:hover{

    transform:
        translateY(-6px);

    border-color:
        rgba(169,206,71,.65);

    box-shadow:
        0 22px 44px rgba(0,0,0,.23);

}


.chem-slide-card:hover::after{

    width:
        100%;

}


/* =========================================================
   IMAGE
========================================================= */

.chem-slide-image{

    position:relative;

    height:
        230px;

    overflow:
        hidden;

    background:
        #ededeb;

}


.chem-slide-image img{

    display:block;

    width:
        100%;

    height:
        100%;

    max-width:
        none;

    max-height:
        none;

    margin:
        0;

    padding:
        0;

    object-fit:
        cover;

    object-position:
        center;

    filter:
        none !important;

    transition:
        transform .45s cubic-bezier(.22,.61,.36,1);

}


.chem-slide-card:hover
.chem-slide-image img{

    transform:
        scale(1.045);

}


/* =========================================================
   CARD NUMBER
========================================================= */

.chem-slide-number{

    position:absolute;

    z-index:
        3;

    top:
        14px;

    right:
        14px;

    display:flex;

    align-items:
        center;

    justify-content:
        center;

    min-width:
        38px;

    height:
        38px;

    padding:
        0 9px;

    border-radius:
        11px;

    background:
        #071b4e;

    color:
        #a9ce47;

    font-size:
        11px;

    font-weight:
        800;

    letter-spacing:
        .04em;

    box-shadow:
        0 7px 17px rgba(7,27,78,.20);

}


/* =========================================================
   CONTENT
========================================================= */

.chem-slide-content{

    padding:
        21px 21px 25px;

}


.chem-slide-type{

    display:inline-flex;

    align-items:
        center;

    gap:
        8px;

    margin-bottom:
        8px;

    color:
        #6b8f21;

    font-size:
        9px;

    line-height:
        1.2;

    font-weight:
        800;

    letter-spacing:
        .11em;

    text-transform:
        uppercase;

}


.chem-slide-type::before{

    content:"";

    width:
        17px;

    height:
        2px;

    background:
        #a9ce47;

}


.chem-slide-content h3{

    margin:
        0 0 8px;

    color:
        #071b4e;

}


.chem-slide-content p{

    margin:
        0;

    color:
        #5b6875;

    font-size:
        13.2px;

    line-height:
        1.62;

}


/* =========================================================
   ARROWS
========================================================= */

.chem-slider-arrow{

    position:absolute;

    z-index:
        8;

    top:
        50%;

    display:flex;

    align-items:
        center;

    justify-content:
        center;

    width:
        46px;

    height:
        46px;

    padding:
        0;

    border:
        1px solid rgba(169,206,71,.45);

    border-radius:
        50%;

    background:
        #ffffff;

    color:
        #071b4e;

    cursor:
        pointer;

    box-shadow:
        0 10px 25px rgba(0,0,0,.18);

    transform:
        translateY(-50%);

    transition:
        background .22s ease,
        color .22s ease,
        transform .22s ease,
        border-color .22s ease;

}


.chem-slider-arrow:hover{

    background:
        #a9ce47;

    color:
        #071b4e;

    border-color:
        #a9ce47;

    transform:
        translateY(-50%)
        scale(1.06);

}


.chem-slider-arrow svg{

    width:
        19px;

    height:
        19px;

}


.chem-slider-prev{

    left:
        -23px;

}


.chem-slider-next{

    right:
        -23px;

}


/* =========================================================
   PAGINATION
========================================================= */

.chem-slider-pagination{

    display:flex;

    align-items:center;

    justify-content:center;

    gap:
        8px;

    margin-top:
        27px;

}


.chem-slider-dot{

    width:
        8px;

    height:
        8px;

    padding:
        0;

    border:
        0;

    border-radius:
        999px;

    background:
        rgba(255,255,255,.30);

    cursor:
        pointer;

    transition:
        width .25s ease,
        background .25s ease;

}


.chem-slider-dot.is-active{

    width:
        27px;

    background:
        #a9ce47;

}


/* =========================================================
   INITIAL SCROLL REVEAL
========================================================= */

.chem-slider-section
.chem-slider-head,

.chem-slider-section
.chem-slider-shell,

.chem-slider-section
.chem-slider-pagination{

    opacity:
        0;

    transform:
        translateY(22px);

}


.chem-slider-visible
.chem-slider-head{

    opacity:
        1;

    transform:
        translateY(0);

    transition:
        opacity .62s ease,
        transform .72s cubic-bezier(.22,.61,.36,1);

}


.chem-slider-visible
.chem-slider-shell{

    opacity:
        1;

    transform:
        translateY(0);

    transition:
        opacity .66s ease .08s,
        transform .76s cubic-bezier(.22,.61,.36,1) .08s;

}


.chem-slider-visible
.chem-slider-pagination{

    opacity:
        1;

    transform:
        translateY(0);

    transition:
        opacity .6s ease .16s,
        transform .7s ease .16s;

}


/* =========================================================
   TABLET = 2 CARDS
========================================================= */

@media(max-width:900px){

    .chem-slider-inner{

        width:
            calc(100% - 48px);

    }


    .chem-slide-card{

        flex:
            0 0 calc((100% - 18px) / 2);

    }


    .chem-slider-track{

        gap:
            18px;

    }


    .chem-slider-prev{

        left:
            -18px;

    }


    .chem-slider-next{

        right:
            -18px;

    }

}


/* =========================================================
   MOBILE = 1 CARD
========================================================= */

@media(max-width:600px){

    .chem-slider-section{

        padding:
            54px 0 58px;

    }


    .chem-slider-inner{

        width:
            calc(100% - 30px);

    }


    .chem-slider-head{

        margin-bottom:
            28px;

    }


    .chem-slider-kicker::after{

        display:
            none;

    }


    .chem-slider-head p{

        font-size:
            13px;

    }


    .chem-slider-track{

        gap:
            14px;

    }


    .chem-slide-card{

        flex:
            0 0 100%;

    }


    .chem-slide-image{

        height:
            245px;

    }


    .chem-slide-content{

        padding:
            19px 18px 22px;

    }


    .chem-slide-content p{

        font-size:
            13px;

    }


    .chem-slider-arrow{

        width:
            39px;

        height:
            39px;

    }


    .chem-slider-prev{

        left:
            -10px;

    }


    .chem-slider-next{

        right:
            -10px;

    }

}


/* =========================================================
   ACCESSIBILITY
========================================================= */

@media(prefers-reduced-motion:reduce){

    .chem-slider-section
    .chem-slider-head,

    .chem-slider-section
    .chem-slider-shell,

    .chem-slider-section
    .chem-slider-pagination{

        opacity:
            1 !important;

        transform:
            none !important;

        transition:
            none !important;

    }


    .chem-slider-viewport{

        scroll-behavior:
            auto;

    }

}


/* === CHEMICAL TEST SLIDER END === */

/* === CHEMICAL LOCAL IMAGE FIX START === */


/* =========================================================
   GIVE ARROWS THEIR OWN OUTER SPACE
========================================================= */

@media(min-width:901px){

    .chem-slider-inner{

        max-width:
            1280px !important;

    }


    .chem-slider-shell{

        position:
            relative !important;

        padding-left:
            58px !important;

        padding-right:
            58px !important;

    }


    .chem-slider-prev{

        left:
            0 !important;

    }


    .chem-slider-next{

        right:
            0 !important;

    }

}


/* =========================================================
   IMAGE MUST FILL COMPLETE IMAGE AREA
========================================================= */

.chem-slide-image{

    position:
        relative !important;

    overflow:
        hidden !important;

    padding:
        0 !important;

    margin:
        0 !important;

    background:
        #ececea !important;

}


.chem-slide-image img{

    position:
        absolute !important;

    inset:
        0 !important;

    display:
        block !important;

    width:
        100% !important;

    height:
        100% !important;

    max-width:
        none !important;

    max-height:
        none !important;

    margin:
        0 !important;

    padding:
        0 !important;

    border:
        0 !important;

    object-fit:
        cover !important;

    object-position:
        center center !important;

    opacity:
        1 !important;

    filter:
        none !important;

    transform:
        scale(1.02);

}


/* subtle hover */

.chem-slide-card:hover
.chem-slide-image img{

    transform:
        scale(1.06) !important;

}


/* =========================================================
   DESKTOP
========================================================= */

@media(min-width:901px){

    .chem-slide-image{

        height:
            230px !important;

    }

}


/* =========================================================
   TABLET
========================================================= */

@media(min-width:601px) and (max-width:900px){

    .chem-slider-shell{

        padding-left:
            48px !important;

        padding-right:
            48px !important;

    }


    .chem-slider-prev{

        left:
            0 !important;

    }


    .chem-slider-next{

        right:
            0 !important;

    }


    .chem-slide-image{

        height:
            235px !important;

    }

}


/* =========================================================
   MOBILE
========================================================= */

@media(max-width:600px){

    .chem-slider-shell{

        padding-left:
            36px !important;

        padding-right:
            36px !important;

    }


    .chem-slider-prev{

        left:
            -2px !important;

    }


    .chem-slider-next{

        right:
            -2px !important;

    }


    .chem-slide-image{

        height:
            245px !important;

    }

}


/* === CHEMICAL LOCAL IMAGE FIX END === */

/* === SEMI AUTOMATIC MACHINES FINAL START === */


/* =========================================================
   SECTION
========================================================= */

.semi-machines-section{

    position:relative;

    overflow:hidden;

    padding:
        72px 0 78px;

    background:
        linear-gradient(
            180deg,
            #f5f8ef 0%,
            #ffffff 100%
        );

}


/* subtle accent */

.semi-machines-section::before{

    content:"";

    position:absolute;

    top:-170px;
    right:-130px;

    width:340px;
    height:340px;

    border-radius:50%;

    background:
        rgba(169,206,71,.11);

    pointer-events:none;

}


/* =========================================================
   INNER
========================================================= */

.semi-machines-inner{

    position:relative;

    z-index:2;

    width:
        calc(100% - 40px);

    max-width:
        1160px;

    margin:
        0 auto;

}


/* =========================================================
   HEADING
========================================================= */

.semi-machines-head{

    max-width:
        720px;

    margin:
        0 auto 34px;

    text-align:
        center;

}


.semi-machines-kicker{

    display:inline-flex;

    align-items:center;

    gap:10px;

    margin-bottom:9px;

    color:#678c1e;

    font-size:11px;

    font-weight:800;

    letter-spacing:.15em;

    text-transform:uppercase;

}


.semi-machines-kicker::before,
.semi-machines-kicker::after{

    content:"";

    width:27px;
    height:2px;

    background:#a9ce47;

}


.semi-machines-head h2{

    margin:
        0 0 10px;

    color:
        #071b4e;

}


.semi-machines-head p{

    margin:
        0 auto;

    color:
        #60707d;

    font-size:
        14px;

    line-height:
        1.7;

}


/* =========================================================
   TAB NAV SHELL
========================================================= */

.semi-tabs-shell{

    display:grid;

    grid-template-columns:
        42px minmax(0,1fr) 42px;

    gap:
        10px;

    align-items:center;

    margin-bottom:
        22px;

}


/* =========================================================
   TAB ARROWS
========================================================= */

.semi-tabs-scroll{

    display:flex;

    align-items:center;

    justify-content:center;

    width:42px;
    height:42px;

    padding:0;

    border:
        1px solid #dde5d7;

    border-radius:
        50%;

    background:
        #ffffff;

    color:
        #071b4e;

    font-size:
        25px;

    line-height:
        1;

    cursor:pointer;

    box-shadow:
        0 8px 18px rgba(7,27,78,.06);

    transition:
        background .22s ease,
        color .22s ease,
        border-color .22s ease,
        transform .22s ease;

}


.semi-tabs-scroll:hover{

    background:
        #071b4e;

    color:
        #ffffff;

    border-color:
        #071b4e;

    transform:
        scale(1.05);

}


/* =========================================================
   TABS VIEWPORT
========================================================= */

.semi-tabs-viewport{

    overflow-x:auto;

    overflow-y:hidden;

    scrollbar-width:none;

    -ms-overflow-style:none;

}


.semi-tabs-viewport::-webkit-scrollbar{

    display:none;

}


.semi-tabs-track{

    display:flex;

    gap:
        9px;

    width:
        max-content;

}


/* =========================================================
   TAB BUTTON
========================================================= */

.semi-machine-tab{

    display:flex;

    align-items:center;

    gap:
        8px;

    flex:
        0 0 auto;

    min-height:
        44px;

    padding:
        8px 15px 8px 9px;

    border:
        1px solid #dfe6da;

    border-radius:
        999px;

    background:
        #ffffff;

    color:
        #263751;

    font-size:
        12px;

    font-weight:
        700;

    cursor:
        pointer;

    transition:
        background .23s ease,
        color .23s ease,
        border-color .23s ease,
        transform .23s ease,
        box-shadow .23s ease;

}


.semi-machine-tab > span{

    display:flex;

    align-items:center;

    justify-content:center;

    width:
        27px;

    height:
        27px;

    border-radius:
        50%;

    background:
        #edf5df;

    color:
        #668b1d;

    font-size:
        9px;

    font-weight:
        800;

}


.semi-machine-tab:hover{

    border-color:
        #a9ce47;

    transform:
        translateY(-1px);

}


.semi-machine-tab.is-active{

    border-color:
        #071b4e;

    background:
        #071b4e;

    color:
        #ffffff;

    box-shadow:
        0 8px 20px rgba(7,27,78,.14);

}


.semi-machine-tab.is-active > span{

    background:
        #a9ce47;

    color:
        #071b4e;

}


/* =========================================================
   MAIN ACTIVE PANEL
========================================================= */

.semi-machine-stage{

    position:relative;

    min-height:
        430px;

}


.semi-machine-panel{

    display:grid;

    grid-template-columns:
        minmax(0,44%)
        minmax(0,56%);

    overflow:hidden;

    border:
        1px solid #dfe6da;

    border-radius:
        24px;

    background:
        #ffffff;

    box-shadow:
        0 18px 44px rgba(7,27,78,.08);

    opacity:
        0;

    transform:
        translateY(10px);

}


.semi-machine-panel.is-active{

    opacity:
        1;

    transform:
        translateY(0);

    transition:
        opacity .34s ease,
        transform .42s cubic-bezier(.22,.61,.36,1);

}


.semi-machine-panel[hidden]{

    display:none !important;

}


/* =========================================================
   IMAGE
========================================================= */

.semi-machine-media{

    position:relative;

    min-height:
        430px;

    overflow:hidden;

    background:
        #e9eae8;

}


.semi-machine-media img{

    position:absolute;

    inset:0;

    display:block;

    width:
        100%;

    height:
        100%;

    max-width:
        none;

    max-height:
        none;

    margin:
        0;

    padding:
        0;

    object-fit:
        cover;

    object-position:
        center;

    filter:
        none !important;

    transition:
        transform .45s cubic-bezier(.22,.61,.36,1);

}


.semi-machine-panel:hover
.semi-machine-media img{

    transform:
        scale(1.035);

}


/* =========================================================
   NUMBER
========================================================= */

.semi-machine-count{

    position:absolute;

    z-index:3;

    left:
        18px;

    bottom:
        18px;

    padding:
        8px 12px;

    border-radius:
        999px;

    background:
        #071b4e;

    color:
        #a9ce47;

    font-size:
        10px;

    font-weight:
        800;

    letter-spacing:
        .08em;

}


/* =========================================================
   COPY
========================================================= */

.semi-machine-copy{

    display:flex;

    flex-direction:column;

    justify-content:center;

    min-width:
        0;

    padding:
        42px 44px;

}


.semi-machine-label{

    display:inline-flex;

    align-items:center;

    gap:
        9px;

    align-self:
        flex-start;

    margin-bottom:
        11px;

    color:
        #678c1e;

    font-size:
        10px;

    font-weight:
        800;

    letter-spacing:
        .12em;

    text-transform:
        uppercase;

}


.semi-machine-label::before{

    content:"";

    width:
        22px;

    height:
        2px;

    background:
        #a9ce47;

}


.semi-machine-copy h3{

    margin:
        0 0 13px;

    color:
        #071b4e;

    font-size:
        25px !important;

    line-height:
        1.25;

}


.semi-machine-copy p{

    margin:
        0;

    color:
        #596875;

    font-size:
        14px;

    line-height:
        1.72;

}


/* =========================================================
   SECTION SCROLL REVEAL
========================================================= */

.semi-machines-head,
.semi-tabs-shell,
.semi-machine-stage{

    opacity:
        0;

    transform:
        translateY(20px);

}


.semi-machines-visible
.semi-machines-head{

    opacity:
        1;

    transform:
        translateY(0);

    transition:
        opacity .6s ease,
        transform .7s cubic-bezier(.22,.61,.36,1);

}


.semi-machines-visible
.semi-tabs-shell{

    opacity:
        1;

    transform:
        translateY(0);

    transition:
        opacity .62s ease .08s,
        transform .72s cubic-bezier(.22,.61,.36,1) .08s;

}


.semi-machines-visible
.semi-machine-stage{

    opacity:
        1;

    transform:
        translateY(0);

    transition:
        opacity .64s ease .14s,
        transform .74s cubic-bezier(.22,.61,.36,1) .14s;

}


/* =========================================================
   TABLET
========================================================= */

@media(max-width:900px){

    .semi-machines-inner{

        width:
            calc(100% - 34px);

    }


    .semi-machine-panel{

        grid-template-columns:
            minmax(0,43%)
            minmax(0,57%);

    }


    .semi-machine-media{

        min-height:
            390px;

    }


    .semi-machine-copy{

        padding:
            32px;

    }

}


/* =========================================================
   MOBILE
========================================================= */

@media(max-width:650px){

    .semi-machines-section{

        padding:
            52px 0 58px;

    }


    .semi-machines-inner{

        width:
            calc(100% - 28px);

    }


    .semi-machines-head{

        margin-bottom:
            27px;

        text-align:
            left;

    }


    .semi-machines-kicker::after{

        display:none;

    }


    .semi-tabs-shell{

        grid-template-columns:
            36px minmax(0,1fr) 36px;

        gap:
            7px;

    }


    .semi-tabs-scroll{

        width:
            36px;

        height:
            36px;

        font-size:
            21px;

    }


    .semi-machine-panel{

        grid-template-columns:
            1fr;

    }


    .semi-machine-stage{

        min-height:
            0;

    }


    .semi-machine-media{

        min-height:
            280px;

        aspect-ratio:
            1 / 1;

    }


    .semi-machine-copy{

        padding:
            24px 20px 27px;

    }


    .semi-machine-copy h3{

        font-size:
            20px !important;

    }


    .semi-machine-copy p{

        font-size:
            13px;

    }

}


/* =========================================================
   REDUCED MOTION
========================================================= */

@media(prefers-reduced-motion:reduce){

    .semi-machines-head,
    .semi-tabs-shell,
    .semi-machine-stage,
    .semi-machine-panel{

        opacity:
            1 !important;

        transform:
            none !important;

        transition:
            none !important;

    }

}


/* === SEMI AUTOMATIC MACHINES FINAL END === */

/* === SEMI TAB SHIFT HARD FIX START === */


/*
 * Prevent the Semi Automatic Machines section
 * from creating document-level horizontal movement.
 */

.semi-machines-section{

    overflow-x:
        clip !important;

}


/*
 * Container must ALWAYS remain centered.
 */

.semi-machines-inner{

    width:
        calc(100% - 40px) !important;

    max-width:
        1160px !important;

    margin-left:
        auto !important;

    margin-right:
        auto !important;

    transform:
        none;

}


/*
 * Prevent long tab track from increasing
 * the actual page/container width.
 */

.semi-tabs-shell{

    width:
        100% !important;

    max-width:
        100% !important;

    min-width:
        0 !important;

}


.semi-tabs-viewport{

    position:
        relative;

    width:
        100% !important;

    max-width:
        100% !important;

    min-width:
        0 !important;

    overflow-x:
        auto !important;

    overflow-y:
        hidden !important;

    overscroll-behavior-x:
        contain;

}


.semi-tabs-track{

    width:
        max-content !important;

    max-width:
        none !important;

}


/*
 * Main content panel can NEVER inherit
 * the width of the tab track.
 */

.semi-machine-stage{

    width:
        100% !important;

    max-width:
        100% !important;

    min-width:
        0 !important;

}


.semi-machine-panel{

    width:
        100% !important;

    max-width:
        100% !important;

    min-width:
        0 !important;

    margin-left:
        0 !important;

    margin-right:
        0 !important;

}


/*
 * Safety for both panel columns.
 */

.semi-machine-media,
.semi-machine-copy{

    min-width:
        0 !important;

}


/* Tablet */

@media(max-width:900px){

    .semi-machines-inner{

        width:
            calc(100% - 34px) !important;

    }

}


/* Mobile */

@media(max-width:650px){

    .semi-machines-inner{

        width:
            calc(100% - 28px) !important;

    }

}


/* === SEMI TAB SHIFT HARD FIX END === */

/* === SEMI ACTIVE TAB RED START === */

.semi-machine-tab.is-active {
    background: #ed1c24 !important;
    border-color: #ed1c24 !important;
    color: #ffffff !important;
    box-shadow: 0 8px 20px rgba(237, 28, 36, 0.20) !important;
}

.semi-machine-tab.is-active:hover {
    background: #ed1c24 !important;
    border-color: #ed1c24 !important;
    color: #ffffff !important;
}

/* Keep number circle green */
.semi-machine-tab.is-active > span {
    background: #a9ce47 !important;
    color: #071b4e !important;
}

/* === SEMI ACTIVE TAB RED END === */

/* === SEMI HIRES IMAGE FINAL START === */

/*
 * Keep complete machine visible.
 * No blurry stretching.
 */

.semi-machine-media {
    overflow: hidden !important;
    background: #eef0f1 !important;
}

.semi-machine-media img {
    display: block !important;

    width: 100% !important;
    height: 100% !important;

    max-width: none !important;
    max-height: none !important;

    margin: 0 !important;
    padding: 0 !important;

    object-fit: contain !important;
    object-position: center center !important;

    image-rendering: auto !important;

    filter: none !important;

    backface-visibility: hidden;

    transform: translateZ(0);
}


/*
 * Existing hover stays subtle.
 */

.semi-machine-panel:hover
.semi-machine-media img {
    transform: scale(1.025);
}


/* === SEMI HIRES IMAGE FINAL END === */

/* === SEMI MACHINE IMAGE FULL FIT START === */

/*
 * Semi Automatic Machines
 * Full edge-to-edge image fitting
 */

.semi-machine-media {
    position: relative !important;
    overflow: hidden !important;
    padding: 0 !important;
    margin: 0 !important;
}

.semi-machine-media img {
    position: absolute !important;
    inset: 0 !important;

    width: 100% !important;
    height: 100% !important;

    max-width: none !important;
    max-height: none !important;

    margin: 0 !important;
    padding: 0 !important;

    display: block !important;

    object-fit: cover !important;
    object-position: center center !important;

    filter: none !important;

    transform: scale(1.01);
    transform-origin: center center;

    image-rendering: auto !important;
}


/* Soft hover – existing feel remains */
.semi-machine-panel:hover .semi-machine-media img {
    transform: scale(1.045);
}


/* Prevent any accidental inner gap */
.semi-machine-media picture,
.semi-machine-media figure {
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}


/* Mobile */
@media (max-width: 650px) {

    .semi-machine-media img {
        object-fit: cover !important;
        object-position: center center !important;
    }

}

/* === SEMI MACHINE IMAGE FULL FIT END === */

/* === CONTACT PAGE FINAL START === */


/* =========================================================
   PAGE
========================================================= */

body.contact-page {

    background:
        #ffffff;

}


/* =========================================================
   SHARED WIDTH
========================================================= */

.contact-final-container {

    width:
        min(
            1180px,
            calc(100% - 44px)
        );

    margin:
        0 auto;

}


/* =========================================================
   BANNER
========================================================= */

.contact-final-banner {

    position:
        relative;

    isolation:
        isolate;

    overflow:
        hidden;

    display:
        flex;

    align-items:
        center;

    min-height:
        340px;

    color:
        #ffffff;

    background-image:

        linear-gradient(
            90deg,
            rgba(0,0,0,.92) 0%,
            rgba(0,0,0,.83) 27%,
            rgba(5,13,31,.58) 48%,
            rgba(5,13,31,.20) 72%,
            rgba(0,0,0,.08) 100%
        ),

        var(--contact-banner-image);

    background-size:
        cover;

    background-position:
        center;

    background-repeat:
        no-repeat;

    border-radius:
        0 0 24px 24px;

}


.contact-final-banner::after {

    content:"";

    position:
        absolute;

    inset:
        0;

    z-index:
        -1;

    pointer-events:
        none;

    background:

        linear-gradient(
            180deg,
            rgba(0,0,0,.04),
            rgba(0,0,0,.12)
        );

}


.contact-final-banner-content {

    position:
        relative;

    z-index:
        2;

}


.contact-final-banner h1 {

    margin:
        0 0 20px;

    padding:
        0;

    color:
        #ffffff !important;

    text-align:
        left;

}


/* =========================================================
   BREADCRUMB
========================================================= */

.contact-final-breadcrumb {

    display:
        flex;

    align-items:
        center;

    gap:
        18px;

    margin:
        0;

    padding:
        0;

    color:
        rgba(255,255,255,.85);

    font-size:
        15px;

}


.contact-final-breadcrumb a {

    color:
        #ffffff;

    text-decoration:
        none;

}


.contact-final-breadcrumb a:hover {

    color:
        #a9ce47;

}


.contact-final-chevron {

    display:
        inline-block;

    width:
        8px;

    height:
        8px;

    border-top:
        2px solid #ed1c24;

    border-right:
        2px solid #ed1c24;

    transform:
        rotate(45deg);

}


/* =========================================================
   MAIN SECTION
========================================================= */

.contact-final-section {

    position:
        relative;

    overflow:
        hidden;

    padding:
        74px 0 84px;

    background:
        #ffffff;

}


.contact-final-section::before {

    content:"";

    position:
        absolute;

    top:
        0;

    left:
        0;

    width:
        100%;

    height:
        330px;

    pointer-events:
        none;

    background:

        linear-gradient(
            180deg,
            #f7f9fc 0%,
            rgba(247,249,252,0) 100%
        );

}


/* =========================================================
   MAIN TWO COLUMN COMPOSITION
========================================================= */

.contact-final-main-grid {

    position:
        relative;

    z-index:
        2;

    display:
        grid;

    grid-template-columns:
        minmax(0, .92fr)
        minmax(420px, 1.08fr);

    gap:
        46px;

    align-items:
        stretch;

}


/* =========================================================
   LEFT CONTENT
========================================================= */

.contact-final-intro {

    display:
        flex;

    flex-direction:
        column;

    justify-content:
        center;

    padding:
        20px 0;

}


.contact-final-eyebrow {

    display:
        inline-flex;

    align-items:
        center;

    gap:
        10px;

    margin-bottom:
        10px;

    color:
        #ed1c24;

    font-size:
        11px;

    font-weight:
        800;

    line-height:
        1.2;

    letter-spacing:
        .15em;

    text-transform:
        uppercase;

}


.contact-final-eyebrow::before {

    content:"";

    width:
        30px;

    height:
        2px;

    background:
        #ed1c24;

}


.contact-final-intro h2 {

    margin:
        0 0 18px;

    color:
        #071b4e;

}


.contact-final-description {

    margin:
        0;

    color:
        #5d6875;

    font-size:
        15px;

    line-height:
        1.82;

}


/* =========================================================
   DIRECT CONTACT CARDS
========================================================= */

.contact-final-direct-grid {

    display:
        grid;

    gap:
        14px;

    margin-top:
        27px;

}


.contact-final-direct-card {

    display:
        grid;

    grid-template-columns:
        46px minmax(0,1fr);

    gap:
        14px;

    align-items:
        center;

    padding:
        17px 18px;

    border:
        1px solid #dfe5ec;

    border-radius:
        15px;

    background:
        #ffffff;

    box-shadow:
        0 9px 24px
        rgba(7,27,78,.045);

    transition:
        border-color .22s ease,
        transform .22s ease,
        box-shadow .22s ease;

}


.contact-final-direct-card:hover {

    border-color:
        #a9ce47;

    transform:
        translateX(3px);

    box-shadow:
        0 13px 28px
        rgba(7,27,78,.07);

}


.contact-final-direct-icon {

    display:
        flex;

    align-items:
        center;

    justify-content:
        center;

    width:
        44px;

    height:
        44px;

    border-radius:
        12px;

    background:
        #edf4df;

    color:
        #071b4e;

}


.contact-final-direct-icon svg {

    width:
        20px;

    height:
        20px;

}


.contact-final-direct-label {

    display:
        block;

    margin-bottom:
        5px;

    color:
        #071b4e;

    font-size:
        11px;

    font-weight:
        800;

    letter-spacing:
        .08em;

    text-transform:
        uppercase;

}


.contact-final-direct-value {

    color:
        #52606d;

    font-size:
        13px;

    line-height:
        1.6;

}


.contact-final-direct-value a {

    color:
        #263851;

    font-weight:
        650;

    text-decoration:
        none;

}


.contact-final-direct-value a:hover {

    color:
        #ed1c24;

}


.contact-final-separator {

    display:
        inline-block;

    margin:
        0 6px;

    color:
        #a9ce47;

}


/* =========================================================
   FORM - VISUAL FOCUS
========================================================= */

.contact-final-form-card {

    position:
        relative;

    overflow:
        visible;

    padding:
        34px;

    border:
        1px solid
        rgba(255,255,255,.10);

    border-radius:
        24px;

    background:

        linear-gradient(
            145deg,
            #071b4e 0%,
            #0b285f 100%
        );

    box-shadow:
        0 24px 55px
        rgba(7,27,78,.18);

}


.contact-final-form-card::before {

    content:"";

    position:
        absolute;

    top:
        -1px;

    left:
        34px;

    width:
        82px;

    height:
        4px;

    border-radius:
        0 0 5px 5px;

    background:
        #ed1c24;

}


.contact-final-form-card::after {

    content:"";

    position:
        absolute;

    right:
        -80px;

    bottom:
        -80px;

    width:
        210px;

    height:
        210px;

    border-radius:
        50%;

    pointer-events:
        none;

    background:
        rgba(169,206,71,.07);

}


/* =========================================================
   FORM
========================================================= */

.contact-final-form {

    position:
        relative;

    z-index:
        2;

}


.contact-final-fields {

    display:
        grid;

    grid-template-columns:
        repeat(2,minmax(0,1fr));

    gap:
        18px;

}


.contact-final-field {

    min-width:
        0;

}


.contact-final-field-full {

    grid-column:
        1 / -1;

}


.contact-final-field label {

    display:
        block;

    margin-bottom:
        8px;

    color:
        rgba(255,255,255,.86);

    font-size:
        11px;

    font-weight:
        800;

    letter-spacing:
        .08em;

    text-transform:
        uppercase;

}


.contact-final-field input,

.contact-final-field textarea {

    display:
        block;

    width:
        100%;

    margin:
        0;

    border:
        1px solid
        rgba(255,255,255,.18);

    outline:
        none;

    border-radius:
        12px;

    background:
        rgba(255,255,255,.08);

    color:
        #ffffff;

    font-family:
        inherit;

    font-size:
        14px;

    transition:
        border-color .22s ease,
        background .22s ease,
        box-shadow .22s ease;

}


.contact-final-field input {

    height:
        50px;

    padding:
        0 15px;

}


.contact-final-field textarea {

    min-height:
        134px;

    padding:
        14px 15px;

    resize:
        vertical;

}


.contact-final-field input::placeholder,

.contact-final-field textarea::placeholder {

    color:
        rgba(255,255,255,.43);

}


.contact-final-field input:focus,

.contact-final-field textarea:focus {

    border-color:
        #a9ce47;

    background:
        rgba(255,255,255,.11);

    box-shadow:
        0 0 0 3px
        rgba(169,206,71,.09);

}


/* =========================================================
   INTL TEL INPUT
========================================================= */

.contact-final-form .iti {

    width:
        100%;

}


.contact-final-form .iti input {

    width:
        100% !important;

}


.contact-final-form .iti__selected-country-primary {

    border-radius:
        12px 0 0 12px;

}


.contact-final-form .iti__selected-dial-code {

    color:
        #ffffff;

}


.contact-final-form .iti__arrow {

    border-top-color:
        #ffffff;

}


.contact-final-form .iti__country-container {

    color:
        #ffffff;

}


.contact-final-form .iti__dropdown-content {

    color:
        #263851;

    background:
        #ffffff;

    border:
        1px solid #dfe5ec;

    border-radius:
        12px;

    box-shadow:
        0 15px 35px
        rgba(7,27,78,.18);

}


/* =========================================================
   SUBMIT
========================================================= */

.contact-final-submit {

    display:
        inline-flex;

    align-items:
        center;

    justify-content:
        center;

    gap:
        10px;

    min-width:
        156px;

    margin-top:
        22px;

    padding:
        14px 22px;

    border:
        1px solid #ed1c24;

    border-radius:
        12px;

    background:
        #ed1c24;

    color:
        #ffffff;

    font-family:
        inherit;

    font-size:
        13px;

    font-weight:
        800;

    cursor:
        pointer;

    transition:
        background .23s ease,
        border-color .23s ease,
        transform .23s ease,
        box-shadow .23s ease;

}


.contact-final-submit svg {

    width:
        17px;

    height:
        17px;

    transition:
        transform .23s ease;

}


.contact-final-submit:hover {

    background:
        #ffffff;

    border-color:
        #ffffff;

    color:
        #071b4e;

    transform:
        translateY(-2px);

    box-shadow:
        0 12px 25px
        rgba(0,0,0,.17);

}


.contact-final-submit:hover svg {

    transform:
        translateX(3px);

}


/* =========================================================
   LOCATIONS
========================================================= */

.contact-final-locations {

    position:
        relative;

    z-index:
        2;

    display:
        grid;

    grid-template-columns:
        repeat(4,minmax(0,1fr));

    gap:
        18px;

    margin-top:
        48px;

}


/* =========================================================
   LOCATION CARD
========================================================= */

.contact-final-location-card {

    position:
        relative;

    overflow:
        hidden;

    min-height:
        255px;

    margin:
        0;

    padding:
        25px 22px 23px;

    border:
        1px solid #dfe5ec;

    border-radius:
        18px;

    background:
        #ffffff;

    box-shadow:
        0 11px 28px
        rgba(7,27,78,.055);

    transition:
        transform .27s ease,
        border-color .27s ease,
        box-shadow .27s ease;

}


.contact-final-location-card::after {

    content:"";

    position:
        absolute;

    left:
        0;

    bottom:
        0;

    width:
        100%;

    height:
        3px;

    transform:
        scaleX(0);

    transform-origin:
        left;

    background:
        #ed1c24;

    transition:
        transform .30s ease;

}


.contact-final-location-card:hover {

    transform:
        translateY(-4px);

    border-color:
        #a9ce47;

    box-shadow:
        0 17px 38px
        rgba(7,27,78,.09);

}


.contact-final-location-card:hover::after {

    transform:
        scaleX(1);

}


/* giant number */

.contact-final-location-number {

    position:
        absolute;

    top:
        9px;

    right:
        15px;

    color:
        rgba(7,27,78,.045);

    font-size:
        72px;

    font-weight:
        800;

    line-height:
        1;

    pointer-events:
        none;

}


/* heading */

.contact-final-location-head {

    position:
        relative;

    z-index:
        2;

    display:
        flex;

    align-items:
        center;

    gap:
        12px;

    margin-bottom:
        17px;

}


.contact-final-location-icon {

    display:
        flex;

    align-items:
        center;

    justify-content:
        center;

    flex:
        0 0 auto;

    width:
        42px;

    height:
        42px;

    border-radius:
        11px;

    background:
        #071b4e;

    color:
        #a9ce47;

}


.contact-final-location-icon svg {

    width:
        20px;

    height:
        20px;

}


.contact-final-location-card h3 {

    margin:
        0;

    color:
        #071b4e;

}


.contact-final-location-card p {

    position:
        relative;

    z-index:
        2;

    margin:
        0;

    color:
        #61707d;

    font-size:
        13px;

    line-height:
        1.72;

}


/* =========================================================
   TABLET
========================================================= */

@media(max-width:1024px) {

    .contact-final-main-grid {

        grid-template-columns:
            1fr;

        gap:
            32px;

    }


    .contact-final-intro {

        padding:
            0;

    }


    .contact-final-locations {

        grid-template-columns:
            repeat(2,minmax(0,1fr));

    }

}


/* =========================================================
   MOBILE
========================================================= */

@media(max-width:700px) {

    .contact-final-container {

        width:
            calc(100% - 28px);

    }


    .contact-final-banner {

        min-height:
            235px;

        background-position:
            64% center;

        border-radius:
            0 0 18px 18px;

    }


    .contact-final-breadcrumb {

        gap:
            13px;

        font-size:
            13px;

    }


    .contact-final-section {

        padding:
            48px 0 58px;

    }


    .contact-final-description {

        font-size:
            13.5px;

        line-height:
            1.75;

    }


    .contact-final-direct-card {

        grid-template-columns:
            40px minmax(0,1fr);

        padding:
            15px;

    }


    .contact-final-direct-icon {

        width:
            38px;

        height:
            38px;

    }


    .contact-final-direct-value {

        font-size:
            12px;

    }


    .contact-final-separator {

        display:
            block;

        height:
            2px;

        overflow:
            hidden;

        margin:
            3px 0;

        opacity:
            0;

    }


    .contact-final-form-card {

        padding:
            24px 18px;

        border-radius:
            19px;

    }


    .contact-final-fields {

        grid-template-columns:
            1fr;

        gap:
            15px;

    }


    .contact-final-field-full {

        grid-column:
            auto;

    }


    .contact-final-submit {

        width:
            100%;

    }


    .contact-final-locations {

        grid-template-columns:
            1fr;

        gap:
            15px;

        margin-top:
            36px;

    }


    .contact-final-location-card {

        min-height:
            0;

    }

}


/* =========================================================
   VERY SMALL MOBILE
========================================================= */

@media(max-width:420px) {

    .contact-final-form-card {

        padding:
            21px 15px;

    }


    .contact-final-location-number {

        font-size:
            60px;

    }

}


/* === CONTACT PAGE FINAL END === */

/* === CONTACT BANNER ALIGNMENT FINAL START === */


/* =========================================================
   CONTACT US BANNER
   Match internal page banner width / position
========================================================= */

body.contact-page .contact-final-banner {

    min-height:
        360px !important;

}


/*
 * IMPORTANT:
 * Main Contact section remains 1180px.
 * Only BANNER content becomes same width
 * as About / other inner-page banners.
 */

body.contact-page
.contact-final-banner
.contact-final-container,

body.contact-page
.contact-final-banner
.contact-final-banner-content {

    width:
        min(
            1377px,
            calc(100% - 40px)
        ) !important;

    max-width:
        none !important;

    margin-left:
        auto !important;

    margin-right:
        auto !important;

    padding-left:
        0 !important;

    padding-right:
        0 !important;

    text-align:
        left !important;

}


/* =========================================================
   H1 ALIGNMENT
========================================================= */

body.contact-page
.contact-final-banner h1 {

    width:
        auto !important;

    max-width:
        none !important;

    margin:
        0 0 24px !important;

    padding:
        0 !important;

    text-align:
        left !important;

    color:
        #ffffff !important;

    text-transform:
        none !important;

    letter-spacing:
        0 !important;

}


/* =========================================================
   BREADCRUMB
========================================================= */

body.contact-page
.contact-final-breadcrumb {

    display:
        flex !important;

    align-items:
        center !important;

    justify-content:
        flex-start !important;

    flex-wrap:
        wrap !important;

    gap:
        20px !important;

    margin:
        0 !important;

    padding:
        0 !important;

    text-align:
        left !important;

    font-size:
        16px !important;

    line-height:
        1.4 !important;

}


body.contact-page
.contact-final-breadcrumb a,

body.contact-page
.contact-final-breadcrumb span {

    font-size:
        16px !important;

}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 1024px) {

    body.contact-page
    .contact-final-banner {

        min-height:
            300px !important;

    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    body.contact-page
    .contact-final-banner {

        min-height:
            230px !important;

        border-radius:
            0 0 18px 18px !important;

    }


    body.contact-page
    .contact-final-banner
    .contact-final-container,

    body.contact-page
    .contact-final-banner
    .contact-final-banner-content {

        width:
            calc(100% - 40px) !important;

        margin-left:
            auto !important;

        margin-right:
            auto !important;

    }


    body.contact-page
    .contact-final-banner h1 {

        margin-bottom:
            20px !important;

    }


    body.contact-page
    .contact-final-breadcrumb {

        gap:
            15px !important;

        font-size:
            14px !important;

    }


    body.contact-page
    .contact-final-breadcrumb a,

    body.contact-page
    .contact-final-breadcrumb span {

        font-size:
            14px !important;

    }

}


/* === CONTACT BANNER ALIGNMENT FINAL END === */

/* === AMIABLE COMMON FOOTER FINAL START === */


/* =========================================================
   COMMON FOOTER
========================================================= */

.amiable-common-footer {

    position:
        relative;

}


/* =========================================================
   NO MORE / KNOW MORE - REAL BUTTON
========================================================= */







/* =========================================================
   PRODUCT + QUICK LINK LIST TRIANGLES
========================================================= */

.amiable-common-footer
.amiable-footer-link-list {

    list-style:
        none !important;

    padding-left:
        0 !important;

}


.amiable-common-footer
.amiable-footer-link-list > li {

    position:
        relative;

    padding-left:
        16px !important;

}


.amiable-common-footer
.amiable-footer-link-list > li::before {

    content:
        "";

    position:
        absolute;

    left:
        0;

    top:
        .70em;

    width:
        0;

    height:
        0;

    border-top:
        4px solid transparent;

    border-bottom:
        4px solid transparent;

    border-left:
        6px solid #a9ce47;

}


/* =========================================================
   HEAD OFFICE ICONS
========================================================= */

.amiable-footer-address-line,
.amiable-footer-phone-line {

    position:
        relative !important;

    display:
        block;

    padding-left:
        31px !important;

}


.amiable-footer-contact-icon {

    position:
        absolute;

    left:
        0;

    top:
        2px;

    display:
        flex;

    align-items:
        center;

    justify-content:
        center;

    width:
        20px;

    height:
        20px;

    color:
        #a9ce47;

}


.amiable-footer-contact-icon svg {

    width:
        19px;

    height:
        19px;

}


.amiable-footer-phone-line {

    text-decoration:
        none;

}


/* =========================================================
   PIXELA LINK
========================================================= */

.amiable-common-footer
.amiable-pixela-link {

    color:
        inherit;

    text-decoration:
        none;

    transition:
        color .2s ease;

}


.amiable-common-footer
.amiable-pixela-link:hover {

    color:
        #a9ce47;

}


/* =========================================================
   HIDE OLD GTRANSLATE CONTROLS
========================================================= */

.gt_selector,
.gt_float_switcher,
.gtranslate_wrapper {

    display:
        none !important;

}


/*
 * Google's actual hidden engine must remain alive.
 */

#amiable-google-translate-host {

    position:
        fixed !important;

    left:
        -9999px !important;

    bottom:
        -9999px !important;

    width:
        1px !important;

    height:
        1px !important;

    overflow:
        hidden !important;

    opacity:
        .001 !important;

    pointer-events:
        none !important;

}


/* Hide Google top translation banner */

.goog-te-banner-frame,
.goog-te-banner-frame.skiptranslate {

    display:
        none !important;

}


body {

    top:
        0 !important;

}


html {

    margin-top:
        0 !important;

}


/* =========================================================
   STICKY LANGUAGE SWITCHER
========================================================= */

.amiable-language-switcher {

    position:
        fixed;

    right:
        18px;

    bottom:
        18px;

    z-index:
        99990;

    font-family:
        inherit;

}


/* CURRENT LANGUAGE BUTTON */

.amiable-language-current {

    display:
        flex;

    align-items:
        center;

    gap:
        9px;

    min-width:
        133px;

    height:
        46px;

    padding:
        0 13px;

    border:
        1px solid
        rgba(255,255,255,.16);

    border-radius:
        9px;

    background:
        #071b4e;

    color:
        #ffffff;

    font-family:
        inherit;

    font-size:
        12px;

    font-weight:
        700;

    cursor:
        pointer;

    box-shadow:
        0 12px 34px
        rgba(0,0,0,.22);

    transition:
        background .2s ease,
        transform .2s ease;

}


.amiable-language-current:hover {

    background:
        #0d2e69;

    transform:
        translateY(-1px);

}


.amiable-language-globe {

    width:
        18px;

    height:
        18px;

    color:
        #a9ce47;

    flex:
        0 0 auto;

}


.amiable-language-current-label {

    flex:
        1;

    text-align:
        left;

}


.amiable-language-arrow {

    width:
        14px;

    height:
        14px;

    flex:
        0 0 auto;

}


/* =========================================================
   LANGUAGE MENU - OPENS UPWARDS
========================================================= */

.amiable-language-menu {

    position:
        absolute;

    right:
        0;

    bottom:
        calc(100% + 9px);

    width:
        220px;

    max-height:
        360px;

    overflow-y:
        auto;

    padding:
        7px;

    border:
        1px solid #dfe5ec;

    border-radius:
        12px;

    background:
        #ffffff;

    box-shadow:
        0 18px 45px
        rgba(7,27,78,.18);

}


.amiable-language-menu[hidden] {

    display:
        none !important;

}


.amiable-language-menu button {

    display:
        block;

    width:
        100%;

    margin:
        0;

    padding:
        10px 12px;

    border:
        0;

    border-radius:
        7px;

    background:
        transparent;

    color:
        #263851;

    font-family:
        inherit;

    font-size:
        12px;

    font-weight:
        600;

    text-align:
        left;

    cursor:
        pointer;

    transition:
        background .17s ease,
        color .17s ease;

}


.amiable-language-menu button:hover {

    background:
        #f0f5e6;

    color:
        #071b4e;

}


/* =========================================================
   MOBILE
========================================================= */

@media(max-width:767px) {

    .amiable-language-switcher {

        right:
            12px;

        bottom:
            12px;

    }


    .amiable-language-current {

        min-width:
            124px;

        height:
            43px;

    }


    .amiable-language-menu {

        width:
            205px;

        max-height:
            310px;

    }

}


/* === AMIABLE COMMON FOOTER FINAL END === */

/* === AMIABLE COMMON HEADER FINAL START === */


/* =========================================================
   HEADER
========================================================= */

.amiable-site-header {

    position:
        relative;

    z-index:
        9990;

    width:
        100%;

    background:
        #ffffff;

    border-bottom:
        2px solid #ed1c24;

    box-shadow:
        0 2px 14px
        rgba(7,27,78,.035);

}


.amiable-header-inner {

    position:
        relative;

    display:
        flex;

    align-items:
        center;

    width:
        min(
            1540px,
            calc(100% - 32px)
        );

    min-height:
        94px;

    margin:
        0 auto;

}


/* =========================================================
   LOGO
========================================================= */

.amiable-header-brand {

    display:
        flex;

    align-items:
        center;

    flex:
        0 0 auto;

    margin-right:
        52px;

}


.amiable-header-brand a {

    display:
        flex;

    align-items:
        center;

    margin:
        0;

}


.amiable-header-brand img {

    display:
        block;

    width:
        auto;

    max-width:
        215px;

    max-height:
        58px;

    object-fit:
        contain;

}


/* =========================================================
   NAV
========================================================= */

.amiable-header-nav {

    display:
        flex;

    align-items:
        center;

    justify-content:
        center;

    gap:
        29px;

    flex:
        1 1 auto;

    min-width:
        0;

}


.amiable-nav-link,
.amiable-products-trigger {

    position:
        relative;

    display:
        inline-flex;

    align-items:
        center;

    justify-content:
        center;

    min-height:
        46px;

    margin:
        0;

    padding:
        0;

    border:
        0;

    background:
        transparent;

    color:
        #54565d;

    font-family:
        inherit;

    font-size:
        16px;

    font-weight:
        500;

    line-height:
        1.25;

    text-decoration:
        none;

    white-space:
        nowrap;

    cursor:
        pointer;

    transition:
        color .22s ease;

}


.amiable-nav-link::after,
.amiable-products-trigger::after {

    content:"";

    position:
        absolute;

    left:
        50%;

    bottom:
        -2px;

    width:
        0;

    height:
        2px;

    border-radius:
        999px;

    background:
        #ed1c24;

    transform:
        translateX(-50%);

    transition:
        width .23s ease;

}


.amiable-nav-link:hover,
.amiable-products-trigger:hover,
.amiable-nav-link.is-active,
.amiable-products-trigger.is-active {

    color:
        #d90d27;

}


.amiable-nav-link:hover::after,
.amiable-products-trigger:hover::after,
.amiable-nav-link.is-active::after,
.amiable-products-trigger.is-active::after {

    width:
        22px;

}


/* =========================================================
   PRODUCTS
========================================================= */

.amiable-products-nav {

    position:
        relative;

}


/* Keep the desktop hover state alive while the pointer travels through the
   small visual gap between the trigger and its dropdown. */
.amiable-products-nav::before {

    content:
        "";

    position:
        absolute;

    z-index:
        1;

    top:
        100%;

    right:
        -14px;

    left:
        -14px;

    height:
        16px;

    background:
        transparent;

}


.amiable-products-trigger {

    gap:
        7px;

}


.amiable-products-trigger > svg {

    width:
        14px;

    height:
        14px;

    transition:
        transform .22s ease;

}


.amiable-products-nav:hover
.amiable-products-trigger > svg,

.amiable-products-nav.is-open
.amiable-products-trigger > svg {

    transform:
        rotate(180deg);

}


/* dropdown */

.amiable-products-dropdown {

    position:
        absolute;

    z-index:
        20;

    top:
        calc(100% + 13px);

    left:
        50%;

    width:
        370px;

    padding:
        10px;

    visibility:
        hidden;

    opacity:
        0;

    transform:
        translate(
            -50%,
            8px
        );

    pointer-events:
        none;

    border:
        1px solid #edf0f3;

    border-radius:
        16px;

    background:
        #ffffff;

    box-shadow:
        0 20px 50px
        rgba(7,27,78,.14);

    transition:
        opacity .20s ease,
        transform .20s ease,
        visibility .20s ease;

}


.amiable-products-dropdown::before {

    content:"";

    position:
        absolute;

    top:
        -7px;

    left:
        50%;

    width:
        14px;

    height:
        14px;

    border-left:
        1px solid #edf0f3;

    border-top:
        1px solid #edf0f3;

    background:
        #ffffff;

    transform:
        translateX(-50%)
        rotate(45deg);

}


.amiable-products-nav:hover
.amiable-products-dropdown,

.amiable-products-nav:focus-within
.amiable-products-dropdown,

.amiable-products-nav.is-open
.amiable-products-dropdown {

    visibility:
        visible;

    opacity:
        1;

    transform:
        translate(
            -50%,
            0
        );

    pointer-events:
        auto;

}


/* =========================================================
   PRODUCT ITEM
========================================================= */

.amiable-product-menu-item {

    position:
        relative;

    z-index:
        1;

    display:
        grid;

    grid-template-columns:
        36px
        minmax(0,1fr)
        18px;

    gap:
        12px;

    align-items:
        center;

    min-height:
        58px;

    padding:
        9px 11px;

    border-radius:
        11px;

    color:
        #242c3a;

    font-size:
        14px;

    font-weight:
        550;

    line-height:
        1.35;

    text-decoration:
        none;

    transition:
        background .18s ease,
        color .18s ease,
        transform .18s ease;

}


.amiable-product-menu-item +
.amiable-product-menu-item {

    border-top:
        1px solid #f1f3f5;

}


.amiable-product-menu-item:hover {

    background:
        #f6f9ef;

    color:
        #071b4e;

    transform:
        translateX(2px);

}


/* icons */

.amiable-product-menu-icon {

    display:
        flex;

    align-items:
        center;

    justify-content:
        center;

    width:
        34px;

    height:
        34px;

    border-radius:
        9px;

    background:
        rgba(169,206,71,.14);

    color:
        #071b4e;

    transition:
        background .18s ease,
        color .18s ease;

}


.amiable-product-menu-icon svg {

    width:
        17px;

    height:
        17px;

}


.amiable-product-menu-item:hover
.amiable-product-menu-icon {

    background:
        #071b4e;

    color:
        #a9ce47;

}


.amiable-product-menu-arrow {

    color:
        #ed1c24;

    font-size:
        21px;

    font-weight:
        400;

    line-height:
        1;

    transition:
        transform .18s ease;

}


.amiable-product-menu-item:hover
.amiable-product-menu-arrow {

    transform:
        translateX(2px);

}


/* =========================================================
   RIGHT ACTIONS
========================================================= */

.amiable-header-actions {

    display:
        flex;

    align-items:
        center;

    gap:
        12px;

    flex:
        0 0 auto;

    margin-left:
        31px;

}


/* =========================================================
   LINKEDIN
========================================================= */

.amiable-header-linkedin {

    display:
        flex;

    align-items:
        center;

    justify-content:
        center;

    width:
        42px;

    height:
        42px;

    border:
        1px solid #e1e7ed;

    border-radius:
        10px;

    background:
        #f3f7f8;

    color:
        #394854;

    text-decoration:
        none;

    transition:
        background .20s ease,
        color .20s ease,
        border-color .20s ease,
        transform .20s ease;

}


.amiable-header-linkedin svg {

    width:
        18px;

    height:
        18px;

}


.amiable-header-linkedin:hover {

    background:
        #0a66c2;

    border-color:
        #0a66c2;

    color:
        #ffffff;

    transform:
        translateY(-2px);

}


/* =========================================================
   HEADER LANGUAGE
========================================================= */

.amiable-header-language {

    position:
        relative;

}


.amiable-header-language-trigger {

    display:
        flex;

    align-items:
        center;

    gap:
        9px;

    width:
        166px;

    height:
        44px;

    margin:
        0;

    padding:
        0 13px;

    border:
        1px solid #dce3ea;

    border-radius:
        10px;

    background:
        #ffffff;

    color:
        #25364a;

    font-family:
        inherit;

    font-size:
        13px;

    font-weight:
        600;

    cursor:
        pointer;

    transition:
        border-color .2s ease,
        box-shadow .2s ease;

}


.amiable-header-language-trigger:hover {

    border-color:
        #a9ce47;

    box-shadow:
        0 6px 18px
        rgba(7,27,78,.07);

}


.amiable-header-language-globe {

    width:
        18px;

    height:
        18px;

    flex:
        0 0 auto;

    color:
        #071b4e;

}


.amiable-header-language-label {

    flex:
        1;

    min-width:
        0;

    overflow:
        hidden;

    text-align:
        left;

    text-overflow:
        ellipsis;

    white-space:
        nowrap;

}


.amiable-header-language-chevron {

    width:
        14px;

    height:
        14px;

    flex:
        0 0 auto;

    color:
        #7c8793;

    transition:
        transform .2s ease;

}


.amiable-header-language-trigger[aria-expanded="true"]
.amiable-header-language-chevron {

    transform:
        rotate(180deg);

}


/* =========================================================
   LANGUAGE MENU
========================================================= */

.amiable-header-language-menu {

    position:
        absolute;

    top:
        calc(100% + 9px);

    right:
        0;

    width:
        225px;

    max-height:
        360px;

    overflow:
        auto;

    padding:
        7px;

    border:
        1px solid #dfe5ec;

    border-radius:
        12px;

    background:
        #ffffff;

    box-shadow:
        0 18px 45px
        rgba(7,27,78,.16);

}


.amiable-header-language-menu[hidden] {

    display:
        none !important;

}


.amiable-header-language-menu button {

    display:
        block;

    width:
        100%;

    margin:
        0;

    padding:
        10px 12px;

    border:
        0;

    border-radius:
        7px;

    background:
        transparent;

    color:
        #263851;

    font-family:
        inherit;

    font-size:
        12px;

    font-weight:
        600;

    text-align:
        left;

    cursor:
        pointer;

    transition:
        background .17s ease,
        color .17s ease;

}


.amiable-header-language-menu button:hover {

    background:
        #f0f5e6;

    color:
        #071b4e;

}


/* =========================================================
   MOBILE BUTTON
========================================================= */

.amiable-mobile-toggle {

    display:
        none;

    width:
        43px;

    height:
        43px;

    margin-left:
        auto;

    padding:
        9px;

    border:
        1px solid #e1e6eb;

    border-radius:
        10px;

    background:
        #ffffff;

    cursor:
        pointer;

}


.amiable-mobile-toggle span {

    display:
        block;

    width:
        100%;

    height:
        2px;

    margin:
        5px 0;

    border-radius:
        10px;

    background:
        #071b4e;

    transition:
        transform .2s ease,
        opacity .2s ease;

}


/* =========================================================
   DESKTOP SHRINK
========================================================= */

@media(max-width:1330px) {

    .amiable-header-brand {

        margin-right:
            30px;

    }


    .amiable-header-nav {

        gap:
            20px;

    }


    .amiable-nav-link,
    .amiable-products-trigger {

        font-size:
            14px;

    }


    .amiable-header-actions {

        margin-left:
            22px;

    }


    .amiable-header-language-trigger {

        width:
            145px;

    }

}


/* =========================================================
   TABLET / MOBILE NAV
========================================================= */

@media(max-width:1080px) {

    .amiable-header-inner {

        min-height:
            80px;

    }


    .amiable-mobile-toggle {

        display:
            block;

        order:
            3;

    }


    .amiable-header-actions {

        order:
            2;

        margin-left:
            auto;

        margin-right:
            12px;

    }


    .amiable-header-nav {

        position:
            absolute;

        top:
            100%;

        left:
            0;

        right:
            0;

        display:
            none;

        flex-direction:
            column;

        align-items:
            stretch;

        gap:
            0;

        max-height:
            calc(100vh - 85px);

        overflow-y:
            auto;

        padding:
            15px;

        border-top:
            1px solid #edf0f3;

        background:
            #ffffff;

        box-shadow:
            0 20px 40px
            rgba(7,27,78,.12);

    }


    .amiable-site-header.menu-open
    .amiable-header-nav {

        display:
            flex;

    }


    .amiable-nav-link,
    .amiable-products-trigger {

        justify-content:
            flex-start;

        width:
            100%;

        min-height:
            48px;

        padding:
            0 11px;

        font-size:
            14px;

    }


    .amiable-nav-link::after,
    .amiable-products-trigger::after {

        display:
            none;

    }


    .amiable-products-trigger {

        justify-content:
            space-between;

    }


    .amiable-products-dropdown {

        position:
            static;

        display:
            none;

        width:
            100%;

        margin:
            2px 0 8px;

        padding:
            7px;

        visibility:
            visible;

        opacity:
            1;

        transform:
            none;

        pointer-events:
            auto;

        border:
            1px solid #e8edf2;

        box-shadow:
            none;

    }


    .amiable-products-dropdown::before {

        display:
            none;

    }


    .amiable-products-nav::before {

        display:
            none;

    }


    .amiable-products-nav:hover
    .amiable-products-dropdown {

        display:
            none;

    }


    .amiable-products-nav.is-open
    .amiable-products-dropdown {

        display:
            block;

        transform:
            none;

    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media(max-width:650px) {

    .amiable-header-inner {

        width:
            calc(100% - 24px);

        min-height:
            72px;

    }


    .amiable-header-brand {

        margin-right:
            10px;

    }


    .amiable-header-brand img {

        max-width:
            158px;

        max-height:
            45px;

    }


    .amiable-header-linkedin {

        width:
            38px;

        height:
            38px;

    }


    .amiable-header-language-trigger {

        width:
            42px;

        height:
            38px;

        justify-content:
            center;

        padding:
            0;

    }


    .amiable-header-language-label,
    .amiable-header-language-chevron {

        display:
            none;

    }


    .amiable-header-language-menu {

        right:
            -45px;

        width:
            210px;

    }


    .amiable-mobile-toggle {

        width:
            39px;

        height:
            39px;

    }


    .amiable-header-actions {

        gap:
            7px;

        margin-right:
            8px;

    }

}


/* === AMIABLE COMMON HEADER FINAL END === */

/* Contact page hero refresh */
body.contact-page .contact-final-banner {
    min-height: 300px !important;
    background: radial-gradient(circle at 77% 42%, rgba(169, 206, 71, .15), transparent 26%),
        linear-gradient(108deg, #061535 0%, #0c2857 57%, #12396d 100%);
    border-radius: 0 0 22px 22px;
}

body.contact-page .contact-final-banner::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: repeating-linear-gradient(90deg, transparent 0 119px, rgba(255,255,255,.035) 120px),
        repeating-linear-gradient(0deg, transparent 0 119px, rgba(255,255,255,.03) 120px);
    mask-image: linear-gradient(90deg, transparent 30%, #000 100%);
}

body.contact-page .contact-final-banner::after {
    background: linear-gradient(90deg, rgba(4, 14, 34, .2), transparent 75%);
}

body.contact-page .contact-final-banner-content {
    padding-top: 28px !important;
    padding-bottom: 30px !important;
}

.contact-banner-kicker {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 12px;
    color: #b8d862;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .2em;
}

.contact-banner-kicker::before {
    content: "";
    width: 26px;
    height: 2px;
    background: #ed1c24;
}

body.contact-page .contact-final-banner h1 {
    margin-bottom: 8px !important;
    font-size: clamp(38px, 4vw, 58px);
    line-height: 1.08;
    font-weight: 750;
}

.contact-banner-lead {
    max-width: 520px;
    margin: 0 0 22px;
    color: rgba(255,255,255,.78);
    font-size: clamp(15px, 1.25vw, 18px);
    line-height: 1.5;
}

body.contact-page .contact-final-breadcrumb {
    gap: 13px !important;
    font-size: 14px !important;
}

body.contact-page .contact-final-breadcrumb a,
body.contact-page .contact-final-breadcrumb span {
    font-size: 14px !important;
}

.contact-banner-art {
    position: absolute;
    right: max(7%, calc((100% - 1377px) / 2 + 50px));
    top: 50%;
    width: 330px;
    height: 250px;
    transform: translateY(-50%);
    pointer-events: none;
}

.contact-banner-art-ring {
    position: absolute;
    inset: -37px 3px -37px -3px;
    border: 1px solid rgba(255,255,255,.13);
    border-radius: 50%;
    box-shadow: 0 0 0 47px rgba(255,255,255,.025), 0 0 0 95px rgba(255,255,255,.018);
}

.contact-banner-art-card {
    position: absolute;
    inset: 33px 62px 32px;
    display: grid;
    place-items: center;
    color: #fff;
    border: 1px solid rgba(255,255,255,.22);
    border-radius: 27px;
    background: linear-gradient(145deg, rgba(255,255,255,.16), rgba(255,255,255,.035));
    box-shadow: 0 22px 45px rgba(0,0,0,.15), inset 0 1px rgba(255,255,255,.2);
    transform: rotate(-7deg);
}

.contact-banner-art-card svg {
    width: 90px;
    height: 90px;
    filter: drop-shadow(0 3px 8px rgba(0,0,0,.12));
}

.contact-banner-art-dot {
    position: absolute;
    right: 45px;
    bottom: 25px;
    width: 23px;
    height: 23px;
    border-radius: 50%;
    background: #a9ce47;
    box-shadow: -235px -169px 0 -7px #ed1c24;
}

@media (max-width: 1024px) {
    body.contact-page .contact-final-banner { min-height: 270px !important; }
    .contact-banner-art { right: 2%; transform: translateY(-50%) scale(.8); transform-origin: right center; }
}

@media (max-width: 767px) {
    body.contact-page .contact-final-banner { min-height: 225px !important; }
    body.contact-page .contact-final-banner-content { padding-top: 26px !important; padding-bottom: 27px !important; }
    .contact-banner-kicker { margin-bottom: 9px; font-size: 10px; }
    body.contact-page .contact-final-banner h1 { margin-bottom: 8px !important; font-size: 36px; }
    .contact-banner-lead { max-width: 290px; margin-bottom: 17px; font-size: 14px; }
    .contact-banner-art { right: -115px; opacity: .23; transform: translateY(-50%) scale(.66); }
    body.contact-page .contact-final-breadcrumb { gap: 12px !important; }
}

/* Footer information links */
.site-footer .footer-legal-nav{display:flex;align-items:center;flex-wrap:wrap;gap:7px 10px}.site-footer .footer-legal-nav a{color:#cad3dd;text-decoration:none}.site-footer .footer-legal-nav a:hover,.site-footer .footer-legal-nav a[aria-current="page"]{color:#fff;text-decoration:underline;text-underline-offset:3px}.site-footer .footer-legal-nav .footer-legal-separator{color:#73808b}


/* === GO-LIVE FIXES (2026-10-20) START === */

/* Sticky header on every page */
:root {
    --amiable-header-h: 96px;
}

html {
    scroll-padding-top: calc(var(--amiable-header-h) + 12px);
}

.amiable-site-header {
    position: sticky;
    top: 0;
}

/* Sidebars that stick below the header */
.legal-side,
.lp-sidebar {
    top: calc(var(--amiable-header-h) + 20px);
}

@media (max-width: 1080px) {
    :root {
        --amiable-header-h: 82px;
    }
}

@media (max-width: 650px) {
    :root {
        --amiable-header-h: 74px;
    }
}

/* Footer bottom bar: keep the legal links clear of the fixed language switcher */
.site-footer .footer-bottom-row {
    align-items: center;
    padding-right: 150px;
}

@media (max-width: 767px) {
    .site-footer .footer-bottom {
        padding-bottom: 78px;
    }

    .site-footer .footer-bottom-row {
        padding-right: 0;
    }
}

/* Product pages: long thumbnail rows must not widen the grid on small screens */
.lp-detail-grid > * {
    min-width: 0;
}

/* Our Facilities: slide-in start positions must not cause sideways scroll */
.facilities-animation-ready {
    overflow-x: hidden;
    overflow-x: clip;
}

/* Home: portfolio cards are links to the product pages */
a.portfolio-card {
    display: block;
    color: inherit;
    text-decoration: none;
    transition: transform .2s ease, box-shadow .2s ease;
}

a.portfolio-card:hover {
    transform: translateY(-3px);
}

/* Form status messages (contact + brochure forms) */
.amiable-form-message {
    margin: 0 0 16px;
    padding: 12px 14px;
    border-radius: 10px;
    border: 1px solid #cfe3a3;
    background: #f3f9e6;
    color: #2f4a10;
    font-size: 14px;
    line-height: 1.5;
}

.amiable-form-message.is-error {
    border-color: #f3c1c4;
    background: #fdf0f1;
    color: #9b1c24;
}

/* === GO-LIVE FIXES (2026-10-20) END === */
