/* =========================================================
   SATOMEN — DOWNSTREAM OPERATIONS
   ========================================================= */

.downstream-page{
    --ds-paper:#f5f5f1;
    --ds-warm:#ecece6;
    --ds-dark:#031b2c;
    --ds-soft:#728087;

    width:100%;
    overflow:hidden;
    background:#fff;
    color:var(--ink);
}

.ds-container{
    width:100%;
    padding-inline:var(--pad);
}

.ds-label{
    display:block;
    color:var(--orange);
    font-size:13px;
    line-height:1;
    font-weight:700;
    letter-spacing:.11em;
    text-transform:uppercase;
}


/* =========================================================
   HERO
   ========================================================= */

.ds-hero{
    position:relative;
    min-height:100svh;
    overflow:hidden;
    background:var(--ds-dark);
    color:#fff;
}

.ds-hero-media,
.ds-hero-overlay{
    position:absolute;
    inset:0;
}

.ds-hero-media img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
}

.ds-hero-overlay{
    background:
        linear-gradient(
            90deg,
            rgba(3,27,44,.97) 0%,
            rgba(3,27,44,.86) 38%,
            rgba(3,27,44,.44) 68%,
            rgba(3,27,44,.18) 100%
        ),
        linear-gradient(
            0deg,
            rgba(3,27,44,.88) 0%,
            transparent 52%
        );
}

.ds-hero-inner{
    position:relative;
    z-index:2;
    min-height:100svh;
    padding:120px var(--pad) 32px;
    display:flex;
    flex-direction:column;
}

.ds-hero-kicker{
    padding-bottom:20px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    border-bottom:1px solid rgba(255,255,255,.25);
    color:rgba(255,255,255,.7);
    font-size:12px;
    line-height:1;
    font-weight:700;
    letter-spacing:.11em;
}

.ds-hero-kicker span:first-child{
    color:var(--orange);
}

.ds-hero-content{
    flex:1;
    padding-block:55px;
    display:grid;
    grid-template-columns:minmax(0,1.5fr) minmax(300px,.5fr);
    gap:8vw;
    align-items:center;
}

.ds-hero-title h1{
    max-width:1050px;
    margin:0;
    font-size:clamp(76px,8.7vw,142px);
    line-height:.79;
    font-weight:400;
    letter-spacing:-.072em;
}

.ds-hero-title h1 em{
    color:var(--orange);
    font-style:normal;
}

.ds-hero-side{
    align-self:end;
    padding-bottom:8vh;
}

.ds-hero-side p{
    max-width:410px;
    margin:0 0 38px;
    color:rgba(255,255,255,.8);
    font-size:18px;
    line-height:1.7;
}

.ds-hero-link{
    width:100%;
    max-width:330px;
    min-height:58px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    border-top:1px solid rgba(255,255,255,.42);
    border-bottom:1px solid rgba(255,255,255,.42);
    color:#fff;
    font-size:13px;
    font-weight:600;
}

.ds-hero-link span{
    color:var(--orange);
    font-size:19px;
    transition:transform .25s ease;
}

.ds-hero-link:hover span{
    transform:translateY(5px);
}


/* Equal columns */

.ds-hero-bottom{
    padding-top:22px;
    display:grid;
    grid-template-columns:repeat(3,1fr);
    align-items:center;
    border-top:1px solid rgba(255,255,255,.25);
    color:rgba(255,255,255,.64);
    font-size:12px;
    line-height:1;
    font-weight:700;
    letter-spacing:.1em;
}

.ds-hero-bottom span:nth-child(1){
    text-align:left;
}

.ds-hero-bottom span:nth-child(2){
    text-align:center;
}

.ds-hero-bottom span:nth-child(3){
    text-align:right;
}


/* =========================================================
   VALUE
   ========================================================= */

.ds-value{
    padding:155px 0 165px;
    background:#fff;
}

.ds-section-rule{
    padding-bottom:22px;
    border-bottom:1px solid var(--line);
}

.ds-section-rule span{
    color:var(--orange);
    font-size:13px;
    line-height:1;
    font-weight:700;
    letter-spacing:.11em;
}

.ds-value-grid{
    padding-top:80px;
    display:grid;
    grid-template-columns:minmax(0,1.15fr) minmax(320px,.65fr);
    gap:11vw;
}

.ds-value-title h2{
    max-width:950px;
    margin:0;
    font-size:clamp(57px,6vw,94px);
    line-height:.9;
    font-weight:400;
    letter-spacing:-.062em;
}

.ds-value-title h2 span{
    color:var(--sea);
}

.ds-value-copy{
    max-width:560px;
}

.ds-value-copy p{
    margin:0 0 25px;
    color:var(--muted);
    font-size:17px;
    line-height:1.78;
}

.ds-value-copy .ds-lead{
    color:var(--ink);
    font-size:21px;
    line-height:1.55;
}


/* =========================================================
   VISUAL STATEMENT
   ========================================================= */

.ds-visual{
    position:relative;
    min-height:850px;
    overflow:hidden;
    background:var(--ds-dark);
    color:#fff;
}

.ds-visual-image,
.ds-visual-overlay{
    position:absolute;
    inset:0;
}

.ds-visual-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
}

.ds-visual-overlay{
    background:
        linear-gradient(
            90deg,
            rgba(3,27,44,.93) 0%,
            rgba(3,27,44,.62) 52%,
            rgba(3,27,44,.17) 100%
        ),
        linear-gradient(
            0deg,
            rgba(3,27,44,.9) 0%,
            transparent 58%
        );
}

.ds-visual-inner{
    position:relative;
    z-index:2;
    min-height:850px;
    padding:70px var(--pad);
    display:flex;
    flex-direction:column;
    justify-content:space-between;
}

.ds-visual-label{
    color:var(--orange);
    font-size:13px;
    line-height:1;
    font-weight:700;
    letter-spacing:.11em;
}

.ds-visual-bottom{
    display:grid;
    grid-template-columns:minmax(0,1fr) 360px;
    gap:80px;
    align-items:end;
}

.ds-visual-bottom h2{
    max-width:1050px;
    margin:0;
    font-size:clamp(60px,7vw,112px);
    line-height:.84;
    font-weight:400;
    letter-spacing:-.065em;
}

.ds-visual-bottom h2 em{
    color:var(--orange);
    font-style:normal;
}

.ds-visual-bottom p{
    margin:0 0 8px;
    color:rgba(255,255,255,.74);
    font-size:17px;
    line-height:1.7;
}


/* =========================================================
   PRODUCTS
   ========================================================= */

.ds-products{
    padding:155px 0;
    background:var(--ds-paper);
}

.ds-products-head{
    margin-bottom:85px;
    display:grid;
    grid-template-columns:minmax(0,1fr) 410px;
    gap:80px;
    align-items:end;
}

.ds-products-head h2{
    max-width:850px;
    margin:32px 0 0;
    font-size:clamp(56px,5.8vw,90px);
    line-height:.9;
    font-weight:400;
    letter-spacing:-.06em;
}

.ds-products-head > p{
    margin:0;
    color:var(--muted);
    font-size:17px;
    line-height:1.75;
}

.ds-products-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    border-top:1px solid var(--ink);
    border-left:1px solid #c9ceca;
}

.ds-product{
    min-height:320px;
    padding:32px;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    border-right:1px solid #c9ceca;
    border-bottom:1px solid #c9ceca;
    background:transparent;
    cursor:default;
    transition:background .25s ease;
}

.ds-product:hover{
    background:#fff;
}

.ds-product-code{
    color:var(--orange);
    font-size:15px;
    line-height:1;
    font-weight:700;
    letter-spacing:.1em;
}

.ds-product h3{
    max-width:340px;
    margin:0 0 18px;
    font-size:clamp(27px,2.2vw,36px);
    line-height:1.05;
    font-weight:400;
    letter-spacing:-.04em;
}

.ds-product p{
    max-width:340px;
    margin:0;
    color:var(--muted);
    font-size:15px;
    line-height:1.65;
}


/* =========================================================
   WHY SATOMEN
   ========================================================= */

.ds-why{
    padding:155px 0;
    background:var(--ds-dark);
    color:#fff;
}

.ds-why-head{
    margin-bottom:90px;
}

.ds-why-head h2{
    max-width:1100px;
    margin:34px 0 0;
    font-size:clamp(58px,6vw,95px);
    line-height:.88;
    font-weight:400;
    letter-spacing:-.063em;
}

.ds-why-head h2 span{
    color:var(--orange);
}


/* No icons — editorial rows */

.ds-why-list{
    border-top:1px solid rgba(255,255,255,.3);
}

.ds-why-item{
    min-height:185px;
    padding:38px 0;
    display:grid;
    grid-template-columns:minmax(280px,.8fr) minmax(300px,.7fr);
    justify-content:space-between;
    gap:10vw;
    align-items:center;
    border-bottom:1px solid rgba(255,255,255,.2);
}

.ds-why-title h3{
    margin:0;
    font-size:clamp(30px,3vw,46px);
    line-height:1;
    font-weight:400;
    letter-spacing:-.045em;
}

.ds-why-copy{
    justify-self:end;
    width:100%;
    max-width:520px;
}

.ds-why-copy p{
    margin:0;
    color:rgba(255,255,255,.64);
    font-size:16px;
    line-height:1.72;
}


/* =========================================================
   BUILT AROUND YOUR OPERATION
   ========================================================= */

.ds-operation{
    min-height:850px;
    display:grid;
    grid-template-columns:1fr 1fr;
    background:#fff;
}

.ds-operation-image{
    min-height:850px;
    overflow:hidden;
}

.ds-operation-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
}

.ds-operation-content{
    padding:100px var(--pad) 100px clamp(55px,6vw,110px);
    display:flex;
    flex-direction:column;
    justify-content:center;
}

.ds-operation-content > .ds-label{
    margin-bottom:55px;
}


/*
   Heading and copy now use the SAME content width.
   The text is aligned directly with the heading.
*/

.ds-operation-body{
    width:100%;
    max-width:760px;
}

.ds-operation-body h2{
    margin:0;
    font-size:clamp(55px,5.5vw,88px);
    line-height:.88;
    font-weight:400;
    letter-spacing:-.062em;
}

.ds-operation-body h2 span{
    color:var(--sea);
}

.ds-operation-copy{
    width:100%;
    max-width:560px;
    margin-top:55px;
}

.ds-operation-copy p{
    margin:0 0 24px;
    color:var(--muted);
    font-size:17px;
    line-height:1.75;
}


/* =========================================================
   CAPACITY
   ========================================================= */

.ds-capacity{
    padding:150px 0;
    background:var(--ds-warm);
}

.ds-capacity-header{
    padding-bottom:25px;
    display:grid;
    grid-template-columns:1fr 400px;
    gap:60px;
    align-items:start;
    border-bottom:1px solid #c5cac5;
}

.ds-capacity-header > span{
    color:var(--orange);
    font-size:13px;
    line-height:1;
    font-weight:700;
    letter-spacing:.11em;
}

.ds-capacity-header p{
    margin:0;
    color:var(--muted);
    font-size:15px;
    line-height:1.6;
}

.ds-capacity-grid{
    padding-top:75px;
    display:grid;
    grid-template-columns:minmax(0,1.15fr) minmax(300px,.55fr);
    gap:10vw;
}

.ds-capacity-grid h2{
    max-width:930px;
    margin:0;
    font-size:clamp(58px,6vw,94px);
    line-height:.88;
    font-weight:400;
    letter-spacing:-.062em;
}

.ds-capacity-grid h2 span{
    color:var(--sea);
}

.ds-capacity-copy p{
    margin:0 0 25px;
    color:var(--muted);
    font-size:17px;
    line-height:1.75;
}


/* =========================================================
   COMMITMENT
   ========================================================= */

.ds-commitment{
    padding:155px 0;
    background:#fff;
}

.ds-commitment-head{
    margin-bottom:90px;
}

.ds-commitment-head h2{
    max-width:1050px;
    margin:35px 0 0;
    font-size:clamp(58px,6vw,94px);
    line-height:.88;
    font-weight:400;
    letter-spacing:-.062em;
}

.ds-commitment-head h2 span{
    color:var(--sea);
}

.ds-commitment-grid{
    display:grid;
    grid-template-columns:minmax(280px,.7fr) minmax(0,1.3fr);
    gap:10vw;
}

.ds-commitment-intro p{
    max-width:450px;
    margin:0 0 40px;
    color:var(--muted);
    font-size:17px;
    line-height:1.75;
}

.ds-hseq-link{
    display:inline-flex;
    align-items:center;
    gap:40px;
    padding-bottom:10px;
    border-bottom:1px solid var(--ink);
    color:var(--ink);
    font-size:13px;
    font-weight:600;
}

.ds-hseq-link span{
    color:var(--orange);
    font-size:19px;
    transition:transform .25s ease;
}

.ds-hseq-link:hover span{
    transform:translate(4px,-4px);
}

.ds-standards{
    border-top:1px solid var(--ink);
}

.ds-standard{
    min-height:105px;
    display:grid;
    grid-template-columns:180px 1fr;
    gap:30px;
    align-items:center;
    border-bottom:1px solid var(--line);
}

.ds-standard > span{
    color:var(--orange);
    font-size:12px;
    line-height:1;
    font-weight:700;
    letter-spacing:.09em;
}

.ds-standard h3{
    margin:0;
    font-size:clamp(24px,2.3vw,34px);
    line-height:1.1;
    font-weight:400;
    letter-spacing:-.035em;
}


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

@media(max-width:1000px){

    .ds-hero-content{
        grid-template-columns:1fr;
        align-content:center;
        gap:45px;
    }

    .ds-hero-side{
        align-self:auto;
        padding-bottom:0;
    }

    .ds-value-grid,
    .ds-capacity-grid,
    .ds-commitment-grid{
        grid-template-columns:1fr;
        gap:55px;
    }

    .ds-visual-bottom{
        grid-template-columns:1fr;
        gap:35px;
    }

    .ds-visual-bottom p{
        max-width:520px;
    }

    .ds-products-head{
        grid-template-columns:1fr;
        gap:35px;
    }

    .ds-products-head > p{
        max-width:560px;
    }

    .ds-products-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .ds-why-item{
        grid-template-columns:1fr 1fr;
        gap:60px;
    }

    .ds-operation{
        grid-template-columns:1fr;
    }

    .ds-operation-image{
        min-height:600px;
    }

    .ds-operation-content{
        min-height:auto;
        padding:100px var(--pad);
    }

}


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

@media(max-width:650px){

    .ds-label{
        font-size:11px;
    }


    /* HERO */

    .ds-hero,
    .ds-hero-inner{
        min-height:760px;
    }

    .ds-hero-inner{
        padding-top:105px;
        padding-bottom:25px;
    }

    .ds-hero-kicker{
        font-size:11px;
    }

    .ds-hero-content{
        padding-block:40px;
        gap:40px;
    }

    .ds-hero-title h1{
        font-size:clamp(52px,16vw,74px);
        line-height:.82;
    }

    .ds-hero-side p{
        max-width:350px;
        margin-bottom:28px;
        font-size:16px;
    }

    .ds-hero-link{
        font-size:12px;
    }

    .ds-hero-bottom{
        grid-template-columns:repeat(3,1fr);
        gap:12px;
        font-size:9px;
        line-height:1.25;
        letter-spacing:.06em;
    }


    /* VALUE */

    .ds-value{
        padding:90px 0;
    }

    .ds-section-rule span{
        font-size:11px;
    }

    .ds-value-grid{
        padding-top:50px;
        gap:40px;
    }

    .ds-value-title h2{
        font-size:clamp(47px,13.5vw,64px);
    }

    .ds-value-copy .ds-lead{
        font-size:19px;
    }

    .ds-value-copy p{
        font-size:16px;
    }


    /* VISUAL */

    .ds-visual,
    .ds-visual-inner{
        min-height:650px;
    }

    .ds-visual-inner{
        padding-top:50px;
        padding-bottom:50px;
    }

    .ds-visual-label{
        font-size:11px;
    }

    .ds-visual-bottom h2{
        font-size:clamp(47px,13vw,66px);
    }

    .ds-visual-bottom p{
        font-size:16px;
    }


    /* PRODUCTS */

    .ds-products{
        padding:90px 0;
    }

    .ds-products-head{
        margin-bottom:55px;
    }

    .ds-products-head h2{
        margin-top:25px;
        font-size:clamp(47px,13.5vw,64px);
    }

    .ds-products-head > p{
        font-size:16px;
    }

    .ds-products-grid{
        grid-template-columns:1fr;
    }

    .ds-product{
        min-height:245px;
        padding:28px;
    }

    .ds-product h3{
        font-size:28px;
    }


    /* WHY SATOMEN */

    .ds-why{
        padding:90px 0;
    }

    .ds-why-head{
        margin-bottom:55px;
    }

    .ds-why-head h2{
        margin-top:25px;
        font-size:clamp(47px,13.5vw,64px);
    }

    .ds-why-item{
        min-height:auto;
        padding:32px 0;
        grid-template-columns:1fr;
        gap:20px;
    }

    .ds-why-title h3{
        font-size:29px;
    }

    .ds-why-copy{
        justify-self:start;
        max-width:100%;
    }

    .ds-why-copy p{
        font-size:15px;
    }


    /* OPERATION */

    .ds-operation-image{
        min-height:440px;
    }

    .ds-operation-content{
        padding:80px var(--pad);
    }

    .ds-operation-content > .ds-label{
        margin-bottom:35px;
    }

    .ds-operation-body h2{
        font-size:clamp(47px,13.5vw,64px);
    }

    .ds-operation-copy{
        margin-top:40px;
    }

    .ds-operation-copy p{
        font-size:16px;
    }


    /* CAPACITY */

    .ds-capacity{
        padding:90px 0;
    }

    .ds-capacity-header{
        grid-template-columns:1fr;
        gap:18px;
    }

    .ds-capacity-header > span{
        font-size:11px;
    }

    .ds-capacity-grid{
        padding-top:50px;
        gap:40px;
    }

    .ds-capacity-grid h2{
        font-size:clamp(47px,13.5vw,64px);
    }

    .ds-capacity-copy p{
        font-size:16px;
    }


    /* COMMITMENT */

    .ds-commitment{
        padding:90px 0;
    }

    .ds-commitment-head{
        margin-bottom:55px;
    }

    .ds-commitment-head h2{
        margin-top:25px;
        font-size:clamp(47px,13.5vw,64px);
    }

    .ds-commitment-grid{
        gap:50px;
    }

    .ds-commitment-intro p{
        font-size:16px;
    }

    .ds-standard{
        min-height:90px;
        grid-template-columns:105px 1fr;
        gap:15px;
    }

    .ds-standard > span{
        font-size:10px;
    }

    .ds-standard h3{
        font-size:21px;
    }

}





/* =========================================================
   UPSTREAM SUPPORT
   Uses the shared capability design system above
   ========================================================= */




.upstream-services-grid .ds-product:nth-child(4),
.upstream-services-grid .ds-product:nth-child(5){
    grid-column:span 1;
}


/* =========================================================
   UPSTREAM — RESPONSIVE
   ========================================================= */

@media(min-width:1001px){

    .upstream-services-grid{
        grid-template-columns:repeat(6,minmax(0,1fr));
    }

    .upstream-services-grid .ds-product{
        grid-column:span 2;
    }

    .upstream-services-grid .ds-product:nth-child(4){
        grid-column:1 / span 3;
    }

    .upstream-services-grid .ds-product:nth-child(5){
        grid-column:4 / span 3;
    }

}


@media(max-width:1000px){

    .upstream-services-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .upstream-services-grid .ds-product{
        grid-column:auto;
    }

    .upstream-services-grid .ds-product:last-child{
        grid-column:1 / -1;
    }

}


@media(max-width:650px){

    .upstream-services-grid{
        grid-template-columns:1fr;
    }

    .upstream-services-grid .ds-product,
    .upstream-services-grid .ds-product:last-child{
        grid-column:auto;
    }

}


/* =========================================================
   MARINE & OFFSHORE SERVICES
   ========================================================= */


/* =========================================================
   MARINE HERO
   ========================================================= */

.marine-hero{
    position:relative;
    min-height:100svh;
    overflow:hidden;
    background:#031b2c;
    color:#fff;
}

.marine-hero-media,
.marine-hero-overlay{
    position:absolute;
    inset:0;
}

.marine-hero-media img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
}

.marine-hero-overlay{
    background:
        linear-gradient(
            90deg,
            rgba(3,27,44,.96) 0%,
            rgba(3,27,44,.78) 40%,
            rgba(3,27,44,.28) 75%,
            rgba(3,27,44,.12) 100%
        ),
        linear-gradient(
            0deg,
            rgba(3,27,44,.9) 0%,
            transparent 52%
        );
}

.marine-hero-inner{
    position:relative;
    z-index:2;
    min-height:100svh;
    padding:120px var(--pad) 32px;
    display:flex;
    flex-direction:column;
}

.marine-hero-top{
    padding-bottom:20px;
    display:flex;
    justify-content:space-between;
    align-items:center;
    border-bottom:1px solid rgba(255,255,255,.25);
    color:rgba(255,255,255,.7);
    font-size:12px;
    line-height:1;
    font-weight:700;
    letter-spacing:.11em;
}

.marine-hero-top span:first-child{
    color:var(--white);
}

.marine-hero-main{
    flex:1;
    padding-block:55px;
    display:grid;
    grid-template-columns:minmax(0,1.35fr) minmax(300px,.45fr);
    gap:9vw;
    align-items:center;
}

.marine-eyebrow{
    display:block;
    margin-bottom:28px;
    color:rgba(255,255,255,.58);
    font-size:13px;
    font-weight:700;
    letter-spacing:.12em;
}

.marine-hero-copy h1{
    max-width:1100px;
    margin:0;
    font-size:clamp(72px,8.2vw,132px);
    line-height:.8;
    font-weight:400;
    letter-spacing:-.07em;
}

.marine-hero-copy h1 em{
    color:var(--orange);
    font-style:normal;
}

.marine-hero-intro{
    align-self:end;
    padding-bottom:8vh;
}

.marine-hero-intro p{
    max-width:400px;
    margin:0 0 38px;
    color:rgba(255,255,255,.8);
    font-size:18px;
    line-height:1.7;
}

.marine-hero-link{
    width:100%;
    max-width:340px;
    min-height:58px;
    display:flex;
    justify-content:space-between;
    align-items:center;
    border-top:1px solid rgba(255,255,255,.4);
    border-bottom:1px solid rgba(255,255,255,.4);
    color:#fff;
    font-size:13px;
    font-weight:600;
}

.marine-hero-link span{
    color:var(--orange);
    font-size:19px;
    transition:transform .25s ease;
}

.marine-hero-link:hover span{
    transform:translateY(5px);
}

.marine-hero-bottom{
    padding-top:22px;
    display:grid;
    grid-template-columns:repeat(3,1fr);
    border-top:1px solid rgba(255,255,255,.25);
    color:rgba(255,255,255,.64);
    font-size:12px;
    line-height:1;
    font-weight:700;
    letter-spacing:.1em;
}

.marine-hero-bottom span:nth-child(2){
    text-align:center;
}

.marine-hero-bottom span:nth-child(3){
    text-align:right;
}


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

.marine-intro{
    padding:155px 0;
    background:#fff;
}

.marine-intro-label{
    padding-bottom:22px;
    border-bottom:1px solid var(--line);
}

.marine-intro-label span{
    color:var(--orange);
    font-size:13px;
    font-weight:700;
    letter-spacing:.11em;
}

.marine-intro-grid{
    padding-top:80px;
    display:grid;
    grid-template-columns:minmax(0,1.15fr) minmax(320px,.65fr);
    gap:11vw;
}

.marine-intro-title h2{
    margin:0;
    font-size:clamp(58px,6vw,94px);
    line-height:.89;
    font-weight:400;
    letter-spacing:-.062em;
}

.marine-intro-title h2 span{
    color:var(--sea);
}

.marine-intro-copy{
    max-width:550px;
}

.marine-intro-copy p{
    margin:0 0 25px;
    color:var(--muted);
    font-size:17px;
    line-height:1.75;
}

.marine-intro-copy .marine-lead{
    color:var(--ink);
    font-size:21px;
    line-height:1.55;
}


/* =========================================================
   SERVICES
   ========================================================= */

.marine-services{
    padding:150px 0;
    background:#f3f3ef;
}

.marine-services-head{
    margin-bottom:80px;
    display:grid;
    grid-template-columns:1fr 400px;
    gap:80px;
    align-items:end;
}

.marine-services-head > div > span{
    color:var(--orange);
    font-size:13px;
    font-weight:700;
    letter-spacing:.11em;
}

.marine-services-head h2{
    margin:32px 0 0;
    font-size:clamp(58px,5.8vw,90px);
    line-height:.9;
    font-weight:400;
    letter-spacing:-.06em;
}

.marine-services-head h2 em{
    color:var(--sea);
    font-style:normal;
}

.marine-services-head > p{
    margin:0;
    color:var(--muted);
    font-size:17px;
    line-height:1.7;
}

.marine-service-list{
    border-top:1px solid var(--ink);
}

.marine-service{
    min-height:145px;
    display:grid;
    grid-template-columns:180px minmax(280px,1fr) minmax(300px,.7fr);
    gap:40px;
    align-items:center;
    border-bottom:1px solid #c9ceca;
}

.marine-service-type{
    color:var(--orange);
    font-size:12px;
    font-weight:700;
    letter-spacing:.1em;
}

.marine-service h3{
    margin:0;
    font-size:clamp(28px,2.7vw,42px);
    line-height:1.05;
    font-weight:400;
    letter-spacing:-.04em;
}

.marine-service p{
    max-width:440px;
    margin:0;
    color:var(--muted);
    font-size:15px;
    line-height:1.65;
}


/* =========================================================
   MARINE ASSET
   ========================================================= */

.marine-asset{
    min-height:900px;
    display:grid;
    grid-template-columns:1.08fr .92fr;
    background:#031b2c;
    color:#fff;
}

.marine-asset-image{
    position:relative;
    min-height:900px;
    overflow:hidden;
}

.marine-asset-image img{
    width:100%;
    height:100%;
    object-fit:cover;
}

.marine-asset-image-overlay{
    position:absolute;
    inset:0;
    background:
        linear-gradient(
            0deg,
            rgba(3,27,44,.75) 0%,
            transparent 45%
        );
}

.marine-asset-image-label{
    position:absolute;
    left:45px;
    right:45px;
    bottom:38px;
    padding-top:18px;
    display:flex;
    justify-content:space-between;
    border-top:1px solid rgba(255,255,255,.45);
    color:rgba(255,255,255,.78);
    font-size:12px;
    font-weight:700;
    letter-spacing:.1em;
}

.marine-asset-content{
    padding:90px clamp(45px,6vw,100px);
    display:flex;
    flex-direction:column;
    justify-content:space-between;
}

.marine-asset-heading h2{
    margin:35px 0;
    font-size:clamp(52px,5vw,80px);
    line-height:.88;
    font-weight:400;
    letter-spacing:-.06em;
}

.marine-asset-heading h2 span{
    color:var(--orange);
}

.marine-asset-heading > p{
    max-width:520px;
    margin:0;
    color:rgba(255,255,255,.68);
    font-size:17px;
    line-height:1.75;
}

.marine-asset-highlights{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    border-top:1px solid rgba(255,255,255,.28);
}

.marine-highlight{
    padding:30px 20px 0 0;
}

.marine-highlight + .marine-highlight{
    padding-left:25px;
    border-left:1px solid rgba(255,255,255,.2);
}

.marine-highlight strong{
    display:block;
    margin-bottom:10px;
    color:#fff;
    font-size:clamp(38px,4vw,62px);
    line-height:1;
    font-weight:400;
    letter-spacing:-.05em;
}

.marine-highlight span{
    color:var(--orange);
    font-size:11px;
    line-height:1.4;
    font-weight:700;
    letter-spacing:.08em;
}


/* =========================================================
   SPECIFICATIONS
   ========================================================= */

.marine-specs{
    padding:155px 0;
    background:#fff;
}

.marine-specs-head{
    margin-bottom:90px;
    display:grid;
    grid-template-columns:1fr 400px;
    gap:70px;
    align-items:end;
}

.marine-specs-head h2{
    margin:32px 0 0;
    font-size:clamp(58px,6vw,94px);
    line-height:.88;
    font-weight:400;
    letter-spacing:-.062em;
}

.marine-specs-head h2 span{
    color:var(--sea);
}

.marine-specs-head > p{
    margin:0;
    color:var(--muted);
    font-size:17px;
    line-height:1.7;
}

.marine-specs-layout{
    display:grid;
    grid-template-columns:.65fr 1.35fr;
    gap:9vw;
}

.marine-specs-feature{
    min-height:400px;
    padding:35px;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    background:#031b2c;
    color:#fff;
}

.marine-spec-big strong{
    display:block;
    font-size:clamp(75px,8vw,125px);
    line-height:.82;
    font-weight:400;
    letter-spacing:-.07em;
}

.marine-spec-big span{
    display:block;
    margin-top:18px;
    color:var(--orange);
    font-size:14px;
    font-weight:700;
    letter-spacing:.1em;
}

.marine-specs-feature > p{
    margin:0;
    padding-top:20px;
    border-top:1px solid rgba(255,255,255,.3);
    font-size:22px;
}

.marine-specs-table{
    border-top:1px solid var(--ink);
}

.marine-spec-row{
    min-height:70px;
    display:grid;
    grid-template-columns:220px 1fr;
    gap:30px;
    align-items:center;
    border-bottom:1px solid var(--line);
}

.marine-spec-row span{
    color:var(--muted);
    font-size:14px;
}

.marine-spec-row strong{
    font-size:16px;
    font-weight:500;
}


/* =========================================================
   OPERATIONAL ROLE
   ========================================================= */

.marine-role{
    min-height:820px;
    display:grid;
    grid-template-columns:.9fr 1.1fr;
    background:#f3f3ef;
}

.marine-role-content{
    padding:110px clamp(50px,6vw,110px) 110px var(--pad);
    display:flex;
    flex-direction:column;
    justify-content:center;
}

.marine-role-content h2{
    margin:35px 0 55px;
    font-size:clamp(55px,5.5vw,86px);
    line-height:.88;
    font-weight:400;
    letter-spacing:-.06em;
}

.marine-role-content h2 span{
    color:var(--sea);
}

.marine-role-copy{
    max-width:540px;
}

.marine-role-copy p{
    margin:0 0 24px;
    color:var(--muted);
    font-size:17px;
    line-height:1.75;
}

.marine-role-visual{
    min-height:820px;
    overflow:hidden;
}

.marine-role-visual img{
    width:100%;
    height:100%;
    object-fit:cover;
}


/* =========================================================
   OPERATIONAL ROLES
   ========================================================= */

.marine-environment{
    padding:150px 0;
    background:#031b2c;
    color:#fff;
}

.marine-environment-head{
    margin-bottom:85px;
}

.marine-environment-head > span{
    color:var(--orange);
    font-size:13px;
    font-weight:700;
    letter-spacing:.11em;
}

.marine-environment-head h2{
    max-width:1050px;
    margin:35px 0 0;
    font-size:clamp(58px,6vw,94px);
    line-height:.88;
    font-weight:400;
    letter-spacing:-.062em;
}

.marine-environment-head h2 span{
    color:var(--orange);
}

.marine-role-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    border-top:1px solid rgba(255,255,255,.28);
    border-left:1px solid rgba(255,255,255,.2);
}

.marine-role-grid article{
    min-height:320px;
    padding:35px;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    border-right:1px solid rgba(255,255,255,.2);
    border-bottom:1px solid rgba(255,255,255,.2);
}

.marine-role-grid article > span{
    color:var(--orange);
    font-size:12px;
    font-weight:700;
    letter-spacing:.1em;
}

.marine-role-grid h3{
    margin:auto 0 20px;
    font-size:clamp(27px,2.4vw,37px);
    line-height:1.05;
    font-weight:400;
    letter-spacing:-.04em;
}

.marine-role-grid p{
    margin:0;
    color:rgba(255,255,255,.62);
    font-size:15px;
    line-height:1.65;
}


/* =========================================================
   SAFETY
   ========================================================= */

.marine-safety{
    padding:155px 0;
    background:#fff;
}

.marine-safety-grid{
    display:grid;
    grid-template-columns:1.15fr .65fr;
    gap:11vw;
}

.marine-safety-title h2{
    margin:35px 0 0;
    font-size:clamp(58px,6vw,94px);
    line-height:.88;
    font-weight:400;
    letter-spacing:-.062em;
}

.marine-safety-title h2 span{
    color:var(--sea);
}

.marine-safety-content{
    padding-top:45px;
}

.marine-safety-content p{
    margin:0 0 25px;
    color:var(--muted);
    font-size:17px;
    line-height:1.75;
}

.marine-safety-content .ds-hseq-link{
    margin-top:20px;
}


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

@media(max-width:1000px){

    .marine-hero-main{
        grid-template-columns:1fr;
        align-content:center;
        gap:45px;
    }

    .marine-hero-intro{
        align-self:auto;
        padding-bottom:0;
    }

    .marine-intro-grid,
    .marine-specs-layout,
    .marine-safety-grid{
        grid-template-columns:1fr;
        gap:55px;
    }

    .marine-services-head,
    .marine-specs-head{
        grid-template-columns:1fr;
        gap:35px;
    }

    .marine-services-head > p,
    .marine-specs-head > p{
        max-width:550px;
    }

    .marine-service{
        grid-template-columns:130px 1fr;
    }

    .marine-service p{
        grid-column:2;
        padding-bottom:30px;
    }

    .marine-asset{
        grid-template-columns:1fr;
    }

    .marine-asset-image{
        min-height:650px;
    }

    .marine-asset-content{
        min-height:700px;
    }

    .marine-role{
        grid-template-columns:1fr;
    }

    .marine-role-content{
        padding:100px var(--pad);
    }

    .marine-role-visual{
        min-height:600px;
    }

}


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

@media(max-width:650px){

    .marine-hero,
    .marine-hero-inner{
        min-height:760px;
    }

    .marine-hero-inner{
        padding-top:105px;
        padding-bottom:25px;
    }

    .marine-hero-top{
        font-size:11px;
    }

    .marine-hero-main{
        padding-block:40px;
        gap:35px;
    }

    .marine-eyebrow{
        margin-bottom:20px;
        font-size:11px;
    }

    .marine-hero-copy h1{
        font-size:clamp(50px,15vw,72px);
    }

    .marine-hero-intro p{
        max-width:350px;
        font-size:16px;
    }

    .marine-hero-link{
        font-size:12px;
    }

    .marine-hero-bottom{
        gap:10px;
        font-size:10px;
        line-height:1.25;
    }


    /* INTRO */

    .marine-intro{
        padding:90px 0;
    }

    .marine-intro-label span{
        font-size:11px;
    }

    .marine-intro-grid{
        padding-top:50px;
        gap:40px;
    }

    .marine-intro-title h2{
        font-size:clamp(47px,13.5vw,64px);
    }

    .marine-intro-copy .marine-lead{
        font-size:19px;
    }

    .marine-intro-copy p{
        font-size:16px;
    }


    /* SERVICES */

    .marine-services{
        padding:90px 0;
    }

    .marine-services-head{
        margin-bottom:55px;
    }

    .marine-services-head > div > span{
        font-size:11px;
    }

    .marine-services-head h2{
        margin-top:25px;
        font-size:clamp(47px,13.5vw,64px);
    }

    .marine-services-head > p{
        font-size:16px;
    }

    .marine-service{
        min-height:auto;
        padding:30px 0;
        grid-template-columns:1fr;
        gap:15px;
    }

    .marine-service p{
        grid-column:auto;
        padding-bottom:0;
    }

    .marine-service-type{
        font-size:11px;
    }

    .marine-service h3{
        font-size:29px;
    }


    /* ASSET */

    .marine-asset-image{
        min-height:500px;
    }

    .marine-asset-image-label{
        left:24px;
        right:24px;
        bottom:25px;
        font-size:10px;
    }

    .marine-asset-content{
        min-height:auto;
        padding:80px var(--pad);
    }

    .marine-asset-heading h2{
        font-size:clamp(47px,13vw,64px);
    }

    .marine-asset-heading > p{
        font-size:16px;
    }

    .marine-asset-highlights{
        margin-top:70px;
        grid-template-columns:1fr;
    }

    .marine-highlight{
        padding:25px 0;
        border-bottom:1px solid rgba(255,255,255,.2);
    }

    .marine-highlight + .marine-highlight{
        padding-left:0;
        border-left:0;
    }

    .marine-highlight strong{
        font-size:48px;
    }


    /* SPECS */

    .marine-specs{
        padding:90px 0;
    }

    .marine-specs-head{
        margin-bottom:55px;
    }

    .marine-specs-head h2{
        margin-top:25px;
        font-size:clamp(47px,13.5vw,64px);
    }

    .marine-specs-feature{
        min-height:300px;
        padding:28px;
    }

    .marine-spec-big strong{
        font-size:75px;
    }

    .marine-spec-row{
        min-height:78px;
        grid-template-columns:115px 1fr;
        gap:18px;
    }

    .marine-spec-row span{
        font-size:13px;
    }

    .marine-spec-row strong{
        font-size:14px;
    }


    /* ROLE */

    .marine-role-content{
        padding:80px var(--pad);
    }

    .marine-role-content h2{
        font-size:clamp(47px,13.5vw,64px);
    }

    .marine-role-copy p{
        font-size:16px;
    }

    .marine-role-visual{
        min-height:450px;
    }


    /* ENVIRONMENT */

    .marine-environment{
        padding:90px 0;
    }

    .marine-environment-head{
        margin-bottom:55px;
    }

    .marine-environment-head > span{
        font-size:11px;
    }

    .marine-environment-head h2{
        margin-top:25px;
        font-size:clamp(47px,13.5vw,64px);
    }

    .marine-role-grid{
        grid-template-columns:1fr;
    }

    .marine-role-grid article{
        min-height:245px;
        padding:28px;
    }

    .marine-role-grid h3{
        font-size:28px;
    }


    /* SAFETY */

    .marine-safety{
        padding:90px 0;
    }

    .marine-safety-grid{
        gap:40px;
    }

    .marine-safety-title h2{
        margin-top:25px;
        font-size:clamp(47px,13.5vw,64px);
    }

    .marine-safety-content{
        padding-top:0;
    }

    .marine-safety-content p{
        font-size:16px;
    }

}



/* =========================================================
   MARINE GALLERY
   ========================================================= */

.marine-gallery{
    padding:150px 0;
    background:#fff;
}

.marine-gallery-head{
    margin-bottom:70px;
    display:grid;
    grid-template-columns:minmax(0,1fr) 400px;
    gap:80px;
    align-items:end;
}

.marine-gallery-head h2{
    margin:32px 0 0;
    font-size:clamp(58px,6vw,94px);
    line-height:.88;
    font-weight:400;
    letter-spacing:-.062em;
}

.marine-gallery-head h2 span{
    color:var(--sea);
}

.marine-gallery-head > p{
    max-width:420px;
    margin:0;
    color:var(--muted);
    font-size:17px;
    line-height:1.7;
}


/* GALLERY GRID */

.marine-gallery-grid{
    display:grid;
    grid-template-columns:repeat(12,1fr);
    grid-auto-rows:320px;
    gap:16px;
}

.marine-gallery-item{
    grid-column:span 4;
    margin:0;
    overflow:hidden;
    background:#031b2c;
}

.marine-gallery-large{
    grid-column:span 8;
    grid-row:span 2;
}

.marine-gallery-wide{
    grid-column:span 8;
}

.marine-gallery-item img{
    width:100%;
    height:100%;
    display:block;
    object-fit:cover;
    transition:transform .7s cubic-bezier(.16,1,.3,1);
}

.marine-gallery-item:hover img{
    transform:scale(1.035);
}


/* TABLET */

@media(max-width:1000px){

    .marine-gallery{
        padding:110px 0;
    }

    .marine-gallery-head{
        grid-template-columns:1fr;
        gap:30px;
        margin-bottom:55px;
    }

    .marine-gallery-head > p{
        max-width:560px;
    }

    .marine-gallery-grid{
        grid-template-columns:repeat(2,1fr);
        grid-auto-rows:340px;
    }

    .marine-gallery-item,
    .marine-gallery-large,
    .marine-gallery-wide{
        grid-column:auto;
        grid-row:auto;
    }

    .marine-gallery-large{
        grid-column:1 / -1;
        min-height:520px;
    }

}


/* MOBILE */

@media(max-width:650px){

    .marine-gallery{
        padding:90px 0;
    }

    .marine-gallery-head{
        margin-bottom:40px;
        gap:25px;
    }

    .marine-gallery-head h2{
        margin-top:25px;
        font-size:clamp(42px,12vw,54px);
    }

    .marine-gallery-head > p{
        font-size:15px;
        line-height:1.65;
    }

    .marine-gallery-grid{
        display:grid;
        grid-template-columns:1fr;
        grid-auto-rows:auto;
        gap:12px;
    }

    .marine-gallery-item,
    .marine-gallery-large,
    .marine-gallery-wide{
        grid-column:auto;
        grid-row:auto;
        width:100%;
        height:300px;
        min-height:0;
    }

    .marine-gallery-large{
        height:420px;
    }

}



/* =========================================================
   SATOMEN — LOGISTICS & DISTRIBUTION
   Uses the SAME .ds-container gutter as all capabilities
   ========================================================= */


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

.logistics-page{
    --log-dark:#031b2c;
    --log-paper:#f4f4f0;
    --log-warm:#ecece7;
    --log-copy:#667177;
    --log-line:#c9cfcb;

    width:100%;
    overflow:hidden;
    background:#fff;
    color:var(--ink);
}

.logistics-page *,
.logistics-page *::before,
.logistics-page *::after{
    box-sizing:border-box;
}

.logistics-page img{
    display:block;
    width:100%;
    max-width:100%;
}

.logistics-page h1,
.logistics-page h2,
.logistics-page h3,
.logistics-page p{
    margin-top:0;
}

.logistics-label{
    display:block;
    color:var(--orange);
    font-size:13px;
    line-height:1;
    font-weight:700;
    letter-spacing:.11em;
    text-transform:uppercase;
}

.logistics-lead{
    color:var(--ink) !important;
    font-size:21px !important;
    line-height:1.55 !important;
}


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

.logistics-section-meta{
    width:100%;
    padding-bottom:20px;

    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;

    border-bottom:1px solid var(--log-line);

    color:#667177;

    font-size:12px;
    line-height:1;
    font-weight:700;
    letter-spacing:.11em;
}

.logistics-meta-light{
    color:rgba(255,255,255,.66);
    border-color:rgba(255,255,255,.25);
}


/* =========================================================
   HERO
   ========================================================= */

.logistics-hero{
    position:relative;
    min-height:100svh;
    overflow:hidden;

    background:var(--log-dark);
    color:#fff;
}

.logistics-hero-media,
.logistics-hero-overlay{
    position:absolute;
    inset:0;
}

.logistics-hero-media img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
}

.logistics-hero-overlay{
    background:
        linear-gradient(
            90deg,
            rgba(3,27,44,.97) 0%,
            rgba(3,27,44,.82) 37%,
            rgba(3,27,44,.42) 67%,
            rgba(3,27,44,.18) 100%
        ),
        linear-gradient(
            0deg,
            rgba(3,27,44,.94) 0%,
            rgba(3,27,44,.18) 55%,
            rgba(3,27,44,.15) 100%
        );
}


/*
   IMPORTANT:
   .ds-container provides the SAME left/right gutter
   used by Downstream.

   This class therefore ONLY controls vertical layout.
*/

.logistics-hero-wrap{
    position:relative;
    z-index:2;

    min-height:100svh;

    padding-top:120px;
    padding-bottom:32px;

    display:flex;
    flex-direction:column;
}

.logistics-hero-meta{
    padding-bottom:20px;

    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;

    border-bottom:1px solid rgba(255,255,255,.25);

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

    font-size:12px;
    line-height:1;
    font-weight:700;
    letter-spacing:.11em;
}

.logistics-hero-main{
    flex:1;

    padding:55px 0;

    display:grid;
    grid-template-columns:minmax(0,1.4fr) minmax(300px,.48fr);
    gap:8vw;
    align-items:center;
}

.logistics-eyebrow{
    display:block;
    margin-bottom:28px;

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

    font-size:13px;
    line-height:1;
    font-weight:700;
    letter-spacing:.12em;
}

.logistics-hero-heading h1{
    max-width:1050px;
    margin:0;

    font-size:clamp(72px,8.3vw,136px);
    line-height:.79;
    font-weight:400;
    letter-spacing:-.07em;
}

.logistics-hero-heading h1 em{
    color:var(--orange);
    font-style:normal;
}

.logistics-hero-copy{
    align-self:end;
    padding-bottom:7vh;
}

.logistics-hero-copy p{
    max-width:410px;
    margin:0;

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

    font-size:18px;
    line-height:1.7;
}

.logistics-hero-services{
    display:grid;
    grid-template-columns:repeat(4,1fr);

    border-top:1px solid rgba(255,255,255,.25);
}

.logistics-hero-services span{
    min-height:70px;
    padding:23px 20px 0 0;

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

    font-size:12px;
    line-height:1.35;
    font-weight:700;
    letter-spacing:.06em;
}

.logistics-hero-services span + span{
    padding-left:25px;
    border-left:1px solid rgba(255,255,255,.18);
}


/* =========================================================
   INTRODUCTION
   ========================================================= */

.logistics-intro{
    padding:155px 0 165px;
    background:#fff;
}

.logistics-intro-grid{
    padding-top:80px;

    display:grid;
    grid-template-columns:minmax(0,1.12fr) minmax(320px,.65fr);
    gap:11vw;
}

.logistics-intro-heading h2{
    max-width:950px;
    margin:0;

    font-size:clamp(58px,6vw,94px);
    line-height:.89;
    font-weight:400;
    letter-spacing:-.062em;
}

.logistics-intro-heading h2 span{
    color:var(--sea);
}

.logistics-intro-copy{
    max-width:560px;
}

.logistics-intro-copy p{
    margin:0 0 25px;

    color:var(--muted);

    font-size:17px;
    line-height:1.78;
}


/* =========================================================
   MOVEMENT STATEMENT
   ========================================================= */

.logistics-movement{
    position:relative;
    min-height:850px;
    overflow:hidden;

    background:var(--log-dark);
    color:#fff;
}

.logistics-movement-image,
.logistics-movement-overlay{
    position:absolute;
    inset:0;
}

.logistics-movement-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
}

.logistics-movement-overlay{
    background:
        linear-gradient(
            90deg,
            rgba(3,27,44,.94) 0%,
            rgba(3,27,44,.67) 50%,
            rgba(3,27,44,.2) 100%
        ),
        linear-gradient(
            0deg,
            rgba(3,27,44,.93) 0%,
            transparent 58%
        );
}

.logistics-movement-wrap{
    position:relative;
    z-index:2;

    min-height:850px;

    padding-top:70px;
    padding-bottom:70px;

    display:flex;
    flex-direction:column;
    justify-content:space-between;
}

.logistics-movement-bottom{
    display:grid;
    grid-template-columns:minmax(0,1fr) 380px;
    gap:80px;
    align-items:end;
}

.logistics-movement-bottom h2{
    max-width:1050px;
    margin:0;

    font-size:clamp(60px,7vw,112px);
    line-height:.84;
    font-weight:400;
    letter-spacing:-.065em;
}

.logistics-movement-bottom h2 em{
    color:var(--orange);
    font-style:normal;
}

.logistics-movement-bottom p{
    margin:0 0 8px;

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

    font-size:17px;
    line-height:1.7;
}


/* =========================================================
   CORE CAPABILITIES
   ========================================================= */

.logistics-capabilities{
    padding:155px 0;
    background:var(--log-paper);
}

.logistics-capabilities-head{
    margin-bottom:85px;

    display:grid;
    grid-template-columns:minmax(0,1fr) 410px;
    gap:80px;
    align-items:end;
}

.logistics-capabilities-head h2{
    max-width:900px;
    margin:32px 0 0;

    font-size:clamp(56px,5.8vw,90px);
    line-height:.89;
    font-weight:400;
    letter-spacing:-.06em;
}

.logistics-capabilities-head h2 span{
    color:var(--sea);
}

.logistics-capabilities-head > p{
    margin:0;

    color:var(--muted);

    font-size:17px;
    line-height:1.75;
}

.logistics-capability-list{
    border-top:1px solid var(--ink);
}

.logistics-capability{
    min-height:170px;

    display:grid;
    grid-template-columns:150px minmax(280px,1fr) minmax(300px,.75fr);
    gap:45px;
    align-items:center;

    border-bottom:1px solid var(--log-line);
}

.logistics-capability-number{
    color:var(--orange);

    font-size:13px;
    line-height:1;
    font-weight:700;
    letter-spacing:.1em;
}

.logistics-capability h3{
    margin:0;

    font-size:clamp(30px,3vw,46px);
    line-height:1;
    font-weight:400;
    letter-spacing:-.045em;
}

.logistics-capability p{
    max-width:470px;
    margin:0;

    color:var(--muted);

    font-size:15px;
    line-height:1.68;
}


/* =========================================================
   OPERATIONAL FLOW
   ========================================================= */

.logistics-flow{
    padding:155px 0;
    background:#fff;
}

.logistics-flow-heading{
    padding:80px 0 90px;

    display:grid;
    grid-template-columns:minmax(0,1fr) 430px;
    gap:80px;
    align-items:end;
}

.logistics-flow-heading h2{
    max-width:900px;
    margin:0;

    font-size:clamp(58px,6vw,94px);
    line-height:.88;
    font-weight:400;
    letter-spacing:-.062em;
}

.logistics-flow-heading h2 span{
    color:var(--sea);
}

.logistics-flow-heading > p{
    margin:0;

    color:var(--muted);

    font-size:17px;
    line-height:1.75;
}

.logistics-flow-track{
    display:grid;
    grid-template-columns:repeat(4,1fr);

    border-top:1px solid var(--ink);
    border-left:1px solid var(--log-line);
}

.logistics-flow-step{
    min-height:350px;
    padding:32px;

    display:flex;
    flex-direction:column;
    justify-content:space-between;

    border-right:1px solid var(--log-line);
    border-bottom:1px solid var(--log-line);
}

.logistics-flow-step > span{
    color:var(--orange);

    font-size:13px;
    font-weight:700;
    letter-spacing:.1em;
}

.logistics-flow-step h3{
    margin:0 0 18px;

    font-size:clamp(27px,2.5vw,38px);
    line-height:1;
    font-weight:400;
    letter-spacing:-.04em;
}

.logistics-flow-step p{
    margin:0;

    color:var(--muted);

    font-size:15px;
    line-height:1.65;
}


/* =========================================================
   DISTRIBUTION
   ========================================================= */

.logistics-distribution{
    min-height:850px;

    display:grid;
    grid-template-columns:1fr 1fr;

    background:var(--log-paper);
}

.logistics-distribution-image{
    min-height:850px;
    overflow:hidden;
}

.logistics-distribution-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
}

.logistics-distribution-content{
    padding:
        105px
        var(--pad)
        105px
        clamp(55px,6vw,110px);

    display:flex;
    flex-direction:column;
    justify-content:center;
}

.logistics-distribution-content > .logistics-label{
    margin-bottom:55px;
}

.logistics-distribution-body{
    width:100%;
    max-width:760px;
}

.logistics-distribution-body h2{
    margin:0;

    font-size:clamp(53px,5.4vw,86px);
    line-height:.88;
    font-weight:400;
    letter-spacing:-.061em;
}

.logistics-distribution-body h2 span{
    color:var(--sea);
}

.logistics-distribution-copy{
    width:100%;
    max-width:570px;
    margin-top:55px;
}

.logistics-distribution-copy p{
    margin:0 0 24px;

    color:var(--muted);

    font-size:17px;
    line-height:1.75;
}


/* =========================================================
   OPERATIONAL PRIORITIES
   ========================================================= */

.logistics-priorities{
    padding:155px 0;

    background:var(--log-dark);
    color:#fff;
}

.logistics-priorities-head{
    margin-bottom:90px;
}

.logistics-priorities-head h2{
    max-width:1100px;
    margin:34px 0 0;

    font-size:clamp(58px,6vw,95px);
    line-height:.88;
    font-weight:400;
    letter-spacing:-.063em;
}

.logistics-priorities-head h2 span{
    color:var(--orange);
}

.logistics-priority-list{
    border-top:1px solid rgba(255,255,255,.3);
}

.logistics-priority{
    min-height:185px;
    padding:38px 0;

    display:grid;
    grid-template-columns:minmax(280px,.8fr) minmax(300px,.7fr);
    justify-content:space-between;
    gap:10vw;
    align-items:center;

    border-bottom:1px solid rgba(255,255,255,.2);
}

.logistics-priority h3{
    margin:0;

    font-size:clamp(30px,3vw,46px);
    line-height:1;
    font-weight:400;
    letter-spacing:-.045em;
}

.logistics-priority p{
    justify-self:end;

    width:100%;
    max-width:520px;
    margin:0;

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

    font-size:16px;
    line-height:1.72;
}


/* =========================================================
   SUPPLY CHAIN
   ========================================================= */

.logistics-supply{
    background:var(--log-dark);
    color:#fff;
}

.logistics-supply-wrap{
    padding-top:150px;
    padding-bottom:150px;
}

.logistics-supply-grid{
    padding:80px 0 100px;

    display:grid;
    grid-template-columns:minmax(0,1.15fr) minmax(320px,.6fr);
    gap:10vw;
    align-items:end;
}

.logistics-supply-heading h2{
    max-width:1000px;
    margin:0;

    font-size:clamp(58px,6.4vw,100px);
    line-height:.86;
    font-weight:400;
    letter-spacing:-.065em;
}

.logistics-supply-heading h2 em{
    color:var(--orange);
    font-style:normal;
}

.logistics-supply-copy{
    max-width:530px;
}

.logistics-supply-copy p{
    margin:0 0 25px;

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

    font-size:17px;
    line-height:1.75;
}

.logistics-supply-copy .logistics-supply-lead{
    color:#fff;

    font-size:21px;
    line-height:1.55;
}

.logistics-supply-system{
    display:grid;
    grid-template-columns:auto 1fr auto 1fr auto 1fr auto;
    align-items:center;

    padding-top:35px;

    border-top:1px solid rgba(255,255,255,.28);
}

.logistics-system-item{
    min-width:130px;
}

.logistics-system-item span{
    display:block;
    margin-bottom:10px;

    color:var(--orange);

    font-size:12px;
    font-weight:700;
    letter-spacing:.1em;
}

.logistics-system-item strong{
    color:#fff;

    font-size:15px;
    font-weight:600;
    letter-spacing:.05em;
}

.logistics-system-line{
    height:1px;
    margin:0 25px;

    background:rgba(255,255,255,.3);
}


/* =========================================================
   RESPONSIBLE OPERATIONS
   ========================================================= */

.logistics-responsibility{
    padding:155px 0;
    background:#fff;
}

.logistics-responsibility-grid{
    display:grid;
    grid-template-columns:minmax(0,1.15fr) minmax(320px,.65fr);
    gap:11vw;
}

.logistics-responsibility-heading h2{
    max-width:950px;
    margin:35px 0 0;

    font-size:clamp(58px,6vw,94px);
    line-height:.88;
    font-weight:400;
    letter-spacing:-.062em;
}

.logistics-responsibility-heading h2 span{
    color:var(--sea);
}

.logistics-responsibility-copy{
    padding-top:45px;
}

.logistics-responsibility-copy p{
    margin:0 0 25px;

    color:var(--muted);

    font-size:17px;
    line-height:1.75;
}

.logistics-hseq-link{
    margin-top:20px;
    padding-bottom:10px;

    display:inline-flex;
    align-items:center;
    gap:40px;

    border-bottom:1px solid var(--ink);

    color:var(--ink);

    font-size:13px;
    font-weight:600;
}

.logistics-hseq-link b{
    color:var(--orange);

    font-size:19px;
    font-weight:400;

    transition:transform .25s ease;
}

.logistics-hseq-link:hover b{
    transform:translate(4px,-4px);
}


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

@media(max-width:1000px){

    .logistics-hero-main{
        grid-template-columns:1fr;
        align-content:center;
        gap:45px;
    }

    .logistics-hero-copy{
        align-self:auto;
        padding-bottom:0;
    }

    .logistics-hero-copy p{
        max-width:520px;
    }

    .logistics-intro-grid,
    .logistics-supply-grid,
    .logistics-responsibility-grid{
        grid-template-columns:1fr;
        gap:55px;
    }

    .logistics-movement-bottom{
        grid-template-columns:1fr;
        gap:35px;
    }

    .logistics-movement-bottom p{
        max-width:540px;
    }

    .logistics-capabilities-head,
    .logistics-flow-heading{
        grid-template-columns:1fr;
        gap:35px;
    }

    .logistics-capabilities-head > p,
    .logistics-flow-heading > p{
        max-width:560px;
    }

    .logistics-capability{
        grid-template-columns:100px 1fr;
        padding:30px 0;
    }

    .logistics-capability p{
        grid-column:2;
    }

    .logistics-flow-track{
        grid-template-columns:repeat(2,1fr);
    }

    .logistics-distribution{
        grid-template-columns:1fr;
    }

    .logistics-distribution-image{
        min-height:600px;
    }

    .logistics-distribution-content{
        min-height:auto;
        padding:100px var(--pad);
    }

    .logistics-priority{
        grid-template-columns:1fr 1fr;
        gap:60px;
    }

    .logistics-supply-system{
        grid-template-columns:1fr 1fr;
        gap:0;
    }

    .logistics-system-item{
        min-height:110px;
        padding:25px 0;

        border-bottom:1px solid rgba(255,255,255,.2);
    }

    .logistics-system-item:nth-of-type(even){
        padding-left:30px;
    }

    .logistics-system-line{
        display:none;
    }

}


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

@media(max-width:650px){

    .logistics-label{
        font-size:11px;
    }

    .logistics-section-meta{
        gap:20px;

        font-size:11px;
        line-height:1.25;
    }


    /* HERO */

    .logistics-hero,
    .logistics-hero-wrap{
        min-height:760px;
    }

    .logistics-hero-wrap{
        padding-top:105px;
        padding-bottom:25px;
    }

    .logistics-hero-meta{
        font-size:11px;
    }

    .logistics-hero-meta span:last-child{
        display:none;
    }

    .logistics-hero-main{
        padding:40px 0;
        gap:35px;
    }

    .logistics-eyebrow{
        margin-bottom:20px;
        font-size:11px;
    }

    .logistics-hero-heading h1{
        font-size:clamp(50px,15vw,72px);
        line-height:.82;
    }

    .logistics-hero-copy p{
        max-width:350px;
        font-size:16px;
    }

    .logistics-hero-services{
        grid-template-columns:1fr 1fr;
    }

    .logistics-hero-services span{
        min-height:65px;
        padding:18px 15px 15px 0;

        font-size:11px;
    }

    .logistics-hero-services span + span{
        padding-left:15px;
    }

    .logistics-hero-services span:nth-child(3){
        padding-left:0;
        border-left:0;
        border-top:1px solid rgba(255,255,255,.18);
    }

    .logistics-hero-services span:nth-child(4){
        border-top:1px solid rgba(255,255,255,.18);
    }


    /* INTRO */

    .logistics-intro{
        padding:90px 0;
    }

    .logistics-intro-grid{
        padding-top:50px;
        gap:40px;
    }

    .logistics-intro-heading h2{
        font-size:clamp(47px,13.5vw,64px);
    }

    .logistics-lead{
        font-size:19px !important;
    }

    .logistics-intro-copy p{
        font-size:16px;
    }


    /* MOVEMENT */

    .logistics-movement,
    .logistics-movement-wrap{
        min-height:650px;
    }

    .logistics-movement-wrap{
        padding-top:50px;
        padding-bottom:50px;
    }

    .logistics-movement-bottom h2{
        font-size:clamp(47px,13vw,66px);
    }

    .logistics-movement-bottom p{
        font-size:16px;
    }


    /* CAPABILITIES */

    .logistics-capabilities{
        padding:90px 0;
    }

    .logistics-capabilities-head{
        margin-bottom:55px;
    }

    .logistics-capabilities-head h2{
        margin-top:25px;
        font-size:clamp(47px,13.5vw,64px);
    }

    .logistics-capabilities-head > p{
        font-size:16px;
    }

    .logistics-capability{
        min-height:auto;
        padding:30px 0;

        grid-template-columns:1fr;
        gap:15px;
    }

    .logistics-capability p{
        grid-column:auto;
        font-size:15px;
    }

    .logistics-capability h3{
        font-size:29px;
    }


    /* FLOW */

    .logistics-flow{
        padding:90px 0;
    }

    .logistics-flow-heading{
        padding:50px 0 55px;
    }

    .logistics-flow-heading h2{
        font-size:clamp(47px,13.5vw,64px);
    }

    .logistics-flow-heading > p{
        font-size:16px;
    }

    .logistics-flow-track{
        grid-template-columns:1fr;
    }

    .logistics-flow-step{
        min-height:245px;
        padding:28px;
    }

    .logistics-flow-step h3{
        font-size:28px;
    }


    /* DISTRIBUTION */

    .logistics-distribution-image{
        min-height:440px;
    }

    .logistics-distribution-content{
        padding:80px var(--pad);
    }

    .logistics-distribution-content > .logistics-label{
        margin-bottom:35px;
    }

    .logistics-distribution-body h2{
        font-size:clamp(47px,13.5vw,64px);
    }

    .logistics-distribution-copy{
        margin-top:40px;
    }

    .logistics-distribution-copy p{
        font-size:16px;
    }


    /* PRIORITIES */

    .logistics-priorities{
        padding:90px 0;
    }

    .logistics-priorities-head{
        margin-bottom:55px;
    }

    .logistics-priorities-head h2{
        margin-top:25px;
        font-size:clamp(47px,13.5vw,64px);
    }

    .logistics-priority{
        min-height:auto;
        padding:32px 0;

        grid-template-columns:1fr;
        gap:20px;
    }

    .logistics-priority h3{
        font-size:29px;
    }

    .logistics-priority p{
        justify-self:start;
        max-width:100%;

        font-size:15px;
    }


    /* SUPPLY CHAIN */

    .logistics-supply-wrap{
        padding-top:90px;
        padding-bottom:90px;
    }

    .logistics-supply-grid{
        padding:50px 0 60px;
        gap:40px;
    }

    .logistics-supply-heading h2{
        font-size:clamp(47px,13.5vw,64px);
    }

    .logistics-supply-copy .logistics-supply-lead{
        font-size:19px;
    }

    .logistics-supply-copy p{
        font-size:16px;
    }

    .logistics-supply-system{
        grid-template-columns:1fr;
    }

    .logistics-system-item,
    .logistics-system-item:nth-of-type(even){
        min-height:auto;
        padding:22px 0;
    }

    .logistics-system-item span{
        font-size:11px;
    }

    .logistics-system-item strong{
        font-size:14px;
    }


    /* RESPONSIBILITY */

    .logistics-responsibility{
        padding:90px 0;
    }

    .logistics-responsibility-grid{
        gap:40px;
    }

    .logistics-responsibility-heading h2{
        margin-top:25px;
        font-size:clamp(47px,13.5vw,64px);
    }

    .logistics-responsibility-copy{
        padding-top:0;
    }

    .logistics-responsibility-copy p{
        font-size:16px;
    }

}


/* =========================================================
   SATOMEN — PROCUREMENT & INDUSTRIAL SUPPLY
   Uses existing .ds-container gutter
   ========================================================= */


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

.procurement-page{
    --proc-dark:#031b2c;
    --proc-paper:#f4f4f0;
    --proc-warm:#eaeae4;
    --proc-copy:#667177;
    --proc-line:#c7cdc9;

    width:100%;
    overflow:hidden;
    background:#fff;
    color:var(--ink);
}

.procurement-page *,
.procurement-page *::before,
.procurement-page *::after{
    box-sizing:border-box;
}

.procurement-page img{
    display:block;
    width:100%;
    max-width:100%;
}

.procurement-page h1,
.procurement-page h2,
.procurement-page h3,
.procurement-page p{
    margin-top:0;
}

.procurement-label{
    display:block;

    color:var(--orange);

    font-size:13px;
    line-height:1;
    font-weight:700;
    letter-spacing:.11em;
}

.procurement-lead{
    color:var(--ink) !important;

    font-size:21px !important;
    line-height:1.55 !important;
}


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

.procurement-section-meta{
    padding-bottom:20px;

    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:30px;

    border-bottom:1px solid var(--proc-line);

    color:#697378;

    font-size:12px;
    line-height:1;
    font-weight:700;
    letter-spacing:.11em;
}

.procurement-meta-light{
    color:rgba(255,255,255,.68);
    border-color:rgba(255,255,255,.25);
}


/* =========================================================
   HERO
   ========================================================= */

.procurement-hero{
    position:relative;

    min-height:100svh;
    overflow:hidden;

    background:var(--proc-dark);
    color:#fff;
}

.procurement-hero-media,
.procurement-hero-overlay{
    position:absolute;
    inset:0;
}

.procurement-hero-media img{
    height:100%;
    object-fit:cover;
    object-position:center;
}

.procurement-hero-overlay{
    background:
        linear-gradient(
            90deg,
            rgba(3,27,44,.97) 0%,
            rgba(3,27,44,.84) 42%,
            rgba(3,27,44,.36) 74%,
            rgba(3,27,44,.2) 100%
        ),
        linear-gradient(
            0deg,
            rgba(3,27,44,.92),
            transparent 55%
        );
}

.procurement-hero-wrap{
    position:relative;
    z-index:2;

    min-height:100svh;

    padding-top:120px;
    padding-bottom:32px;

    display:flex;
    flex-direction:column;
}

.procurement-hero-meta{
    padding-bottom:20px;

    display:flex;
    justify-content:space-between;
    gap:30px;

    border-bottom:1px solid rgba(255,255,255,.25);

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

    font-size:12px;
    font-weight:700;
    letter-spacing:.11em;
}

.procurement-hero-main{
    flex:1;

    padding:55px 0;

    display:grid;
    grid-template-columns:minmax(0,1.5fr) minmax(300px,.5fr);
    gap:8vw;
    align-items:center;
}

.procurement-eyebrow{
    display:block;
    margin-bottom:27px;

    color:var(--orange);

    font-size:13px;
    font-weight:700;
    letter-spacing:.13em;
}

.procurement-hero-heading h1{
    max-width:1150px;
    margin:0;

    font-size:clamp(66px,7.5vw,124px);
    line-height:.81;
    font-weight:400;
    letter-spacing:-.068em;
}

.procurement-hero-heading h1 em{
    color:var(--orange);
    font-style:normal;
}

.procurement-hero-copy{
    align-self:end;
    padding-bottom:7vh;
}

.procurement-hero-copy p{
    max-width:430px;
    margin:0;

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

    font-size:18px;
    line-height:1.7;
}

.procurement-hero-services{
    display:grid;
    grid-template-columns:repeat(4,1fr);

    border-top:1px solid rgba(255,255,255,.25);
}

.procurement-hero-services span{
    min-height:70px;
    padding:23px 20px 0 0;

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

    font-size:12px;
    font-weight:700;
    letter-spacing:.06em;
}

.procurement-hero-services span + span{
    padding-left:25px;
    border-left:1px solid rgba(255,255,255,.18);
}


/* =========================================================
   INTRODUCTION
   ========================================================= */

.procurement-intro{
    padding:155px 0 165px;
    background:#fff;
}

.procurement-intro-grid{
    padding-top:80px;

    display:grid;
    grid-template-columns:minmax(0,1.15fr) minmax(320px,.65fr);
    gap:10vw;
}

.procurement-intro-heading h2{
    margin:0;

    font-size:clamp(57px,5.9vw,94px);
    line-height:.88;
    font-weight:400;
    letter-spacing:-.062em;
}

.procurement-intro-heading h2 span{
    color:var(--sea);
}

.procurement-intro-copy{
    max-width:570px;
}

.procurement-intro-copy p{
    margin:0 0 25px;

    color:var(--muted);

    font-size:17px;
    line-height:1.78;
}


/* =========================================================
   STATEMENT
   ========================================================= */

.procurement-statement{
    padding:150px 0;

    background:var(--orange);
    color:#fff;
}

.procurement-statement-grid{
    display:grid;
    grid-template-columns:minmax(0,1.2fr) minmax(320px,.55fr);
    gap:10vw;
    align-items:end;
}

.procurement-statement .procurement-label{
    color:rgba(255,255,255,.75);
}

.procurement-statement-copy h2{
    margin:35px 0 0;

    font-size:clamp(58px,6.5vw,104px);
    line-height:.86;
    font-weight:400;
    letter-spacing:-.065em;
}

.procurement-statement-copy h2 em{
    color:var(--proc-dark);
    font-style:normal;
}

.procurement-statement-side{
    max-width:500px;
}

.procurement-statement-line{
    width:100%;
    height:1px;

    margin-bottom:35px;

    background:rgba(255,255,255,.5);
}

.procurement-statement-side p{
    margin:0;

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

    font-size:17px;
    line-height:1.75;
}


/* =========================================================
   SERVICES
   ========================================================= */

.procurement-services{
    padding:155px 0;

    background:var(--proc-paper);
}

.procurement-services-head{
    margin-bottom:85px;
}

.procurement-services-head h2{
    margin:32px 0 0;

    font-size:clamp(58px,6vw,96px);
    line-height:.87;
    font-weight:400;
    letter-spacing:-.064em;
}

.procurement-services-head h2 span{
    color:var(--sea);
}

.procurement-services-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
}

.procurement-service{
    position:relative;

    min-height:520px;
    padding:35px;

    overflow:hidden;

    display:flex;
    flex-direction:column;
    justify-content:space-between;

    background:#fff;
    border:1px solid var(--proc-line);
}

.procurement-service:nth-child(even){
    border-left:0;
}

.procurement-service:nth-child(n+3){
    border-top:0;
}

.procurement-service-top{
    position:relative;
    z-index:3;

    display:flex;
    justify-content:space-between;
    gap:25px;
}

.procurement-service-top span,
.procurement-service-top small{
    font-size:12px;
    line-height:1;
    font-weight:700;
    letter-spacing:.1em;
}

.procurement-service-top span{
    color:var(--orange);
}

.procurement-service-body{
    position:relative;
    z-index:3;
}

.procurement-service h3{
    margin:0 0 28px;

    font-size:clamp(40px,4vw,64px);
    line-height:.92;
    font-weight:400;
    letter-spacing:-.055em;
}

.procurement-service p{
    max-width:450px;
    margin:0;

    color:var(--muted);

    font-size:16px;
    line-height:1.68;
}

.procurement-service-dark{
    background:var(--proc-dark);
    border-color:var(--proc-dark);
    color:#fff;
}

.procurement-service-dark p{
    color:rgba(255,255,255,.68);
}

.procurement-service-orange{
    background:var(--orange);
    border-color:var(--orange);
    color:#fff;
}

.procurement-service-orange .procurement-service-top span{
    color:var(--proc-dark);
}

.procurement-service-orange p{
    color:rgba(255,255,255,.85);
}

.procurement-service-image{
    color:#fff;
}

.procurement-service-image > img{
    position:absolute;
    inset:0;

    width:100%;
    height:100%;

    object-fit:cover;
}

.procurement-service-image-overlay{
    position:absolute;
    z-index:1;
    inset:0;

    background:
        linear-gradient(
            180deg,
            rgba(3,27,44,.28),
            rgba(3,27,44,.92)
        );
}

.procurement-service-image p{
    color:rgba(255,255,255,.78);
}


/* =========================================================
   INDUSTRIAL EQUIPMENT
   ========================================================= */

.procurement-equipment{
    min-height:880px;

    display:grid;
    grid-template-columns:1fr 1fr;

    background:#fff;
}

.procurement-equipment-image{
    min-height:880px;
}

.procurement-equipment-image img{
    height:100%;
    object-fit:cover;
}

.procurement-equipment-content{
    padding:
        110px
        var(--pad)
        110px
        clamp(55px,6vw,110px);

    display:flex;
    flex-direction:column;
    justify-content:center;
}

.procurement-equipment-body{
    max-width:760px;
}

.procurement-equipment-body h2{
    margin:50px 0 0;

    font-size:clamp(52px,5.3vw,86px);
    line-height:.88;
    font-weight:400;
    letter-spacing:-.061em;
}

.procurement-equipment-body h2 span{
    color:var(--sea);
}

.procurement-equipment-copy{
    max-width:560px;
    margin-top:55px;
}

.procurement-equipment-copy p{
    margin:0 0 24px;

    color:var(--muted);

    font-size:17px;
    line-height:1.75;
}


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

.procurement-process{
    padding:155px 0;

    background:var(--proc-warm);
}

.procurement-process-head{
    padding:80px 0 90px;

    display:grid;
    grid-template-columns:minmax(0,1fr) 430px;
    gap:80px;
    align-items:end;
}

.procurement-process-head h2{
    margin:0;

    font-size:clamp(56px,5.8vw,92px);
    line-height:.88;
    font-weight:400;
    letter-spacing:-.062em;
}

.procurement-process-head h2 span{
    color:var(--sea);
}

.procurement-process-head > p{
    margin:0;

    color:var(--muted);

    font-size:17px;
    line-height:1.75;
}

.procurement-process-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);

    border-top:1px solid var(--ink);
    border-left:1px solid var(--proc-line);
}

.procurement-process-grid article{
    min-height:370px;
    padding:30px;

    display:flex;
    flex-direction:column;
    justify-content:space-between;

    border-right:1px solid var(--proc-line);
    border-bottom:1px solid var(--proc-line);
}

.procurement-process-number{
    color:var(--orange);

    font-size:13px;
    font-weight:700;
}

.procurement-process-grid article span{
    display:block;

    margin-bottom:16px;

    color:#70797d;

    font-size:11px;
    font-weight:700;
    letter-spacing:.1em;
}

.procurement-process-grid h3{
    margin:0 0 20px;

    font-size:clamp(28px,2.5vw,39px);
    line-height:1;
    font-weight:400;
    letter-spacing:-.04em;
}

.procurement-process-grid p{
    margin:0;

    color:var(--muted);

    font-size:15px;
    line-height:1.65;
}


/* =========================================================
   CROSS-SECTOR SUPPORT
   ========================================================= */

.procurement-sectors{
    position:relative;

    min-height:900px;
    overflow:hidden;

    background:var(--proc-dark);
    color:#fff;
}

.procurement-sectors-background,
.procurement-sectors-overlay{
    position:absolute;
    inset:0;
}

.procurement-sectors-background img{
    height:100%;
    object-fit:cover;
}

.procurement-sectors-overlay{
    background:
        linear-gradient(
            90deg,
            rgba(3,27,44,.96),
            rgba(3,27,44,.68) 58%,
            rgba(3,27,44,.25)
        ),
        linear-gradient(
            0deg,
            rgba(3,27,44,.92),
            transparent 55%
        );
}

.procurement-sectors-wrap{
    position:relative;
    z-index:2;

    min-height:900px;

    padding-top:70px;
    padding-bottom:50px;

    display:flex;
    flex-direction:column;
}

.procurement-sectors-main{
    flex:1;

    padding:70px 0;

    display:grid;
    grid-template-columns:minmax(0,1fr) 400px;
    gap:80px;
    align-items:center;
}

.procurement-sectors-main h2{
    margin:0;

    font-size:clamp(62px,7vw,112px);
    line-height:.84;
    font-weight:400;
    letter-spacing:-.068em;
}

.procurement-sectors-main h2 em{
    color:var(--orange);
    font-style:normal;
}

.procurement-sectors-copy{
    align-self:end;
    padding-bottom:8vh;
}

.procurement-sectors-copy p{
    margin:0;

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

    font-size:17px;
    line-height:1.72;
}

.procurement-sector-list{
    display:grid;
    grid-template-columns:repeat(4,1fr);

    border-top:1px solid rgba(255,255,255,.3);
}

.procurement-sector-list > div{
    min-height:75px;
    padding:22px 20px 0 0;
}

.procurement-sector-list > div + div{
    padding-left:25px;
    border-left:1px solid rgba(255,255,255,.2);
}

.procurement-sector-list span{
    display:block;

    margin-bottom:8px;

    color:var(--orange);

    font-size:11px;
    font-weight:700;
}

.procurement-sector-list strong{
    font-size:12px;
    font-weight:700;
    letter-spacing:.08em;
}


/* =========================================================
   PROJECT PROCUREMENT
   ========================================================= */

.procurement-projects{
    padding:155px 0;
    background:#fff;
}

.procurement-projects-grid{
    display:grid;
    grid-template-columns:minmax(0,1.1fr) minmax(330px,.65fr);
    gap:10vw;
}

.procurement-projects-heading h2{
    margin:35px 0 0;

    font-size:clamp(58px,6vw,95px);
    line-height:.88;
    font-weight:400;
    letter-spacing:-.063em;
}

.procurement-projects-heading h2 span{
    color:var(--sea);
}

.procurement-projects-content{
    padding-top:45px;
}

.procurement-projects-content > p{
    margin:0 0 25px;

    color:var(--muted);

    font-size:17px;
    line-height:1.75;
}

.procurement-project-lines{
    margin-top:55px;

    border-top:1px solid var(--ink);
}

.procurement-project-lines > div{
    min-height:70px;

    display:grid;
    grid-template-columns:60px 1fr;
    align-items:center;

    border-bottom:1px solid var(--proc-line);
}

.procurement-project-lines span{
    color:var(--orange);

    font-size:12px;
    font-weight:700;
}

.procurement-project-lines strong{
    font-size:15px;
    font-weight:500;
}


/* =========================================================
   PRINCIPLES
   ========================================================= */

.procurement-principles{
    padding:155px 0;
    background:var(--proc-paper);
}

.procurement-principles-head{
    margin-bottom:90px;
}

.procurement-principles-head h2{
    margin:35px 0 0;

    font-size:clamp(57px,6vw,95px);
    line-height:.88;
    font-weight:400;
    letter-spacing:-.063em;
}

.procurement-principles-head h2 span{
    color:var(--sea);
}

.procurement-principles-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);

    border-top:1px solid var(--ink);
    border-left:1px solid var(--proc-line);
}

.procurement-principles-grid article{
    min-height:350px;
    padding:30px;

    display:flex;
    flex-direction:column;
    justify-content:space-between;

    border-right:1px solid var(--proc-line);
    border-bottom:1px solid var(--proc-line);
}

.procurement-principles-grid article > span{
    color:var(--orange);

    font-size:11px;
    font-weight:700;
    letter-spacing:.1em;
}

.procurement-principles-grid h3{
    margin:0 0 25px;

    font-size:clamp(27px,2.5vw,39px);
    line-height:1;
    font-weight:400;
    letter-spacing:-.04em;
}

.procurement-principles-grid p{
    margin:0;

    color:var(--muted);

    font-size:15px;
    line-height:1.65;
}


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

@media(max-width:1000px){

    .procurement-hero-main{
        grid-template-columns:1fr;
        align-content:center;
        gap:45px;
    }

    .procurement-hero-copy{
        align-self:auto;
        padding-bottom:0;
    }

    .procurement-hero-copy p{
        max-width:550px;
    }

    .procurement-intro-grid,
    .procurement-statement-grid,
    .procurement-projects-grid{
        grid-template-columns:1fr;
        gap:55px;
    }

    .procurement-services-grid{
        grid-template-columns:1fr 1fr;
    }

    .procurement-equipment{
        grid-template-columns:1fr;
    }

    .procurement-equipment-image{
        min-height:600px;
    }

    .procurement-equipment-content{
        padding:100px var(--pad);
    }

    .procurement-process-head{
        grid-template-columns:1fr;
        gap:35px;
    }

    .procurement-process-head > p{
        max-width:580px;
    }

    .procurement-process-grid,
    .procurement-principles-grid{
        grid-template-columns:repeat(2,1fr);
    }

    .procurement-sectors-main{
        grid-template-columns:1fr;
        gap:40px;
    }

    .procurement-sectors-copy{
        align-self:auto;
        padding-bottom:0;
        max-width:550px;
    }

}


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

@media(max-width:650px){

    .procurement-label{
        font-size:11px;
    }

    .procurement-section-meta{
        font-size:11px;
    }


    /* HERO */

    .procurement-hero,
    .procurement-hero-wrap{
        min-height:760px;
    }

    .procurement-hero-wrap{
        padding-top:105px;
        padding-bottom:25px;
    }

    .procurement-hero-meta{
        font-size:11px;
    }

    .procurement-hero-meta span:last-child{
        display:none;
    }

    .procurement-hero-main{
        padding:40px 0;
        gap:35px;
    }

    .procurement-eyebrow{
        margin-bottom:20px;
        font-size:11px;
    }

    .procurement-hero-heading h1{
        font-size:clamp(48px,14.5vw,69px);
        line-height:.83;
    }

    .procurement-hero-copy p{
        font-size:16px;
    }

    .procurement-hero-services{
        grid-template-columns:1fr 1fr;
    }

    .procurement-hero-services span{
        min-height:64px;
        padding:17px 12px 12px 0;

        font-size:11px;
    }

    .procurement-hero-services span + span{
        padding-left:12px;
    }

    .procurement-hero-services span:nth-child(3){
        padding-left:0;
        border-left:0;
        border-top:1px solid rgba(255,255,255,.18);
    }

    .procurement-hero-services span:nth-child(4){
        border-top:1px solid rgba(255,255,255,.18);
    }


    /* INTRO */

    .procurement-intro{
        padding:90px 0;
    }

    .procurement-intro-grid{
        padding-top:50px;
        gap:40px;
    }

    .procurement-intro-heading h2{
        font-size:clamp(46px,13vw,62px);
    }

    .procurement-lead{
        font-size:19px !important;
    }

    .procurement-intro-copy p{
        font-size:16px;
    }


    /* STATEMENT */

    .procurement-statement{
        padding:90px 0;
    }

    .procurement-statement-copy h2{
        margin-top:25px;

        font-size:clamp(47px,13vw,64px);
    }

    .procurement-statement-side p{
        font-size:16px;
    }


    /* SERVICES */

    .procurement-services{
        padding:90px 0;
    }

    .procurement-services-head{
        margin-bottom:55px;
    }

    .procurement-services-head h2{
        margin-top:25px;

        font-size:clamp(47px,13vw,64px);
    }

    .procurement-services-grid{
        grid-template-columns:1fr;
    }

    .procurement-service{
        min-height:390px;
        padding:25px;

        border:1px solid var(--proc-line);
        border-bottom:0;
    }

    .procurement-service:nth-child(even),
    .procurement-service:nth-child(n+3){
        border-left:1px solid var(--proc-line);
        border-top:0;
    }

    .procurement-service:last-child{
        border-bottom:1px solid var(--proc-line);
    }

    .procurement-service h3{
        font-size:38px;
    }

    .procurement-service p{
        font-size:15px;
    }

    .procurement-service-top span,
    .procurement-service-top small{
        font-size:11px;
    }


    /* EQUIPMENT */

    .procurement-equipment-image{
        min-height:440px;
    }

    .procurement-equipment-content{
        padding:80px var(--pad);
    }

    .procurement-equipment-body h2{
        margin-top:35px;

        font-size:clamp(46px,13vw,62px);
    }

    .procurement-equipment-copy{
        margin-top:40px;
    }

    .procurement-equipment-copy p{
        font-size:16px;
    }


    /* PROCESS */

    .procurement-process{
        padding:90px 0;
    }

    .procurement-process-head{
        padding:50px 0 55px;
    }

    .procurement-process-head h2{
        font-size:clamp(46px,13vw,62px);
    }

    .procurement-process-head > p{
        font-size:16px;
    }

    .procurement-process-grid{
        grid-template-columns:1fr;
    }

    .procurement-process-grid article{
        min-height:250px;
        padding:26px;
    }

    .procurement-process-grid h3{
        font-size:28px;
    }


    /* SECTORS */

    .procurement-sectors,
    .procurement-sectors-wrap{
        min-height:720px;
    }

    .procurement-sectors-wrap{
        padding-top:50px;
        padding-bottom:35px;
    }

    .procurement-sectors-main{
        padding:50px 0;
    }

    .procurement-sectors-main h2{
        font-size:clamp(49px,14vw,68px);
    }

    .procurement-sectors-copy p{
        font-size:16px;
    }

    .procurement-sector-list{
        grid-template-columns:1fr 1fr;
    }

    .procurement-sector-list > div{
        min-height:65px;
        padding:15px 10px 10px 0;
    }

    .procurement-sector-list > div + div{
        padding-left:12px;
    }

    .procurement-sector-list > div:nth-child(3){
        padding-left:0;
        border-left:0;
        border-top:1px solid rgba(255,255,255,.2);
    }

    .procurement-sector-list > div:nth-child(4){
        border-top:1px solid rgba(255,255,255,.2);
    }


    /* PROJECT PROCUREMENT */

    .procurement-projects{
        padding:90px 0;
    }

    .procurement-projects-heading h2{
        margin-top:25px;

        font-size:clamp(46px,13vw,62px);
    }

    .procurement-projects-content{
        padding-top:0;
    }

    .procurement-projects-content > p{
        font-size:16px;
    }


    /* PRINCIPLES */

    .procurement-principles{
        padding:90px 0;
    }

    .procurement-principles-head{
        margin-bottom:55px;
    }

    .procurement-principles-head h2{
        margin-top:25px;

        font-size:clamp(46px,13vw,62px);
    }

    .procurement-principles-grid{
        grid-template-columns:1fr;
    }

    .procurement-principles-grid article{
        min-height:270px;
        padding:25px;
    }

    .procurement-principles-grid h3{
        font-size:29px;
    }

}


/* =========================================================
   SATOMEN — ENGINEERING & TECHNICAL SUPPORT
   ========================================================= */


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

.engineering-page{
    --eng-dark:#031b2c;
    --eng-paper:#f4f4f0;
    --eng-warm:#ecece7;
    --eng-line:#c7ceca;

    width:100%;
    overflow:hidden;
    background:#fff;
    color:var(--ink);
}

.engineering-page *,
.engineering-page *::before,
.engineering-page *::after{
    box-sizing:border-box;
}

.engineering-page img{
    display:block;
    width:100%;
    max-width:100%;
}

.engineering-page h1,
.engineering-page h2,
.engineering-page h3,
.engineering-page p{
    margin-top:0;
}

.engineering-label{
    display:block;
    color:var(--orange);
    font-size:13px;
    line-height:1;
    font-weight:700;
    letter-spacing:.11em;
}

.engineering-lead{
    color:var(--ink) !important;
    font-size:21px !important;
    line-height:1.55 !important;
}


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

.engineering-section-meta{
    width:100%;
    padding-bottom:20px;

    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;

    border-bottom:1px solid var(--eng-line);

    color:#667177;
    font-size:12px;
    line-height:1;
    font-weight:700;
    letter-spacing:.11em;
}

.engineering-meta-light{
    color:rgba(255,255,255,.67);
    border-color:rgba(255,255,255,.25);
}


/* =========================================================
   HERO
   ========================================================= */

.engineering-hero{
    position:relative;
    min-height:100svh;
    overflow:hidden;

    background:var(--eng-dark);
    color:#fff;
}

.engineering-hero-media,
.engineering-hero-overlay{
    position:absolute;
    inset:0;
}

.engineering-hero-media img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
}

.engineering-hero-overlay{
    background:
        linear-gradient(
            90deg,
            rgba(3,27,44,.97) 0%,
            rgba(3,27,44,.83) 43%,
            rgba(3,27,44,.4) 72%,
            rgba(3,27,44,.18) 100%
        ),
        linear-gradient(
            0deg,
            rgba(3,27,44,.94),
            transparent 58%
        );
}

.engineering-hero-wrap{
    position:relative;
    z-index:2;

    min-height:100svh;

    padding-top:120px;
    padding-bottom:32px;

    display:flex;
    flex-direction:column;
}

.engineering-hero-meta{
    padding-bottom:20px;

    display:flex;
    justify-content:space-between;
    gap:30px;

    border-bottom:1px solid rgba(255,255,255,.25);

    color:rgba(255,255,255,.72);
    font-size:12px;
    font-weight:700;
    letter-spacing:.11em;
}

.engineering-hero-main{
    flex:1;

    padding:55px 0;

    display:grid;
    grid-template-columns:minmax(0,1.5fr) minmax(300px,.5fr);
    gap:8vw;
    align-items:center;
}

.engineering-eyebrow{
    display:block;
    margin-bottom:27px;

    color:var(--orange);
    font-size:13px;
    font-weight:700;
    letter-spacing:.13em;
}

.engineering-hero-heading h1{
    max-width:1150px;
    margin:0;

    font-size:clamp(66px,7.5vw,124px);
    line-height:.81;
    font-weight:400;
    letter-spacing:-.068em;
}

.engineering-hero-heading h1 em{
    color:var(--orange);
    font-style:normal;
}

.engineering-hero-copy{
    align-self:end;
    padding-bottom:7vh;
}

.engineering-hero-copy p{
    max-width:430px;
    margin:0;

    color:rgba(255,255,255,.82);
    font-size:18px;
    line-height:1.7;
}

.engineering-hero-services{
    display:grid;
    grid-template-columns:repeat(4,1fr);

    border-top:1px solid rgba(255,255,255,.25);
}

.engineering-hero-services span{
    min-height:70px;
    padding:23px 20px 0 0;

    color:rgba(255,255,255,.82);
    font-size:12px;
    line-height:1.35;
    font-weight:700;
    letter-spacing:.06em;
}

.engineering-hero-services span + span{
    padding-left:25px;
    border-left:1px solid rgba(255,255,255,.18);
}


/* =========================================================
   INTRODUCTION
   ========================================================= */

.engineering-intro{
    padding:155px 0 165px;
    background:#fff;
}

.engineering-intro-grid{
    padding-top:80px;

    display:grid;
    grid-template-columns:minmax(0,1.15fr) minmax(320px,.65fr);
    gap:clamp(60px,8vw,120px);
}

.engineering-intro-heading h2{
    max-width:900px;
    margin:0;

    font-size:clamp(57px,5.9vw,94px);
    line-height:.88;
    font-weight:400;
    letter-spacing:-.062em;
}

.engineering-intro-heading h2 span{
    color:var(--sea);
}

.engineering-intro-copy{
    max-width:570px;
}

.engineering-intro-copy p{
    margin:0 0 25px;

    color:var(--muted);
    font-size:17px;
    line-height:1.78;
}


/* =========================================================
   INTEGRATED TECHNICAL SUPPORT
   ========================================================= */

.engineering-system{
    padding:150px 0;
    background:var(--eng-warm);
}

.engineering-system-head{
    margin-bottom:80px;
}

.engineering-system-heading{
    margin-top:34px;

    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(300px,430px);
    gap:70px;
    align-items:end;
}

.engineering-system-heading h2{
    max-width:900px;
    margin:0;

    font-size:clamp(58px,6vw,96px);
    line-height:.88;
    font-weight:400;
    letter-spacing:-.062em;
}

.engineering-system-heading h2 span{
    color:var(--sea);
}

.engineering-system-heading p{
    max-width:430px;
    margin:0;

    color:var(--muted);
    font-size:17px;
    line-height:1.75;
}

.engineering-system-list{
    display:grid;
    grid-template-columns:repeat(2,1fr);

    border-top:1px solid var(--ink);
}

.engineering-system-list article{
    min-height:245px;
    padding:38px 40px 38px 0;

    display:grid;
    grid-template-columns:65px 1fr;
    gap:25px;

    border-bottom:1px solid var(--eng-line);
}

.engineering-system-list article:nth-child(odd){
    padding-right:55px;
    border-right:1px solid var(--eng-line);
}

.engineering-system-list article:nth-child(even){
    padding-left:55px;
}

.engineering-system-list article > span{
    padding-top:6px;

    color:var(--orange);
    font-size:12px;
    font-weight:700;
    letter-spacing:.08em;
}

.engineering-system-list h3{
    margin:0 0 20px;

    font-size:clamp(29px,2.7vw,42px);
    line-height:1;
    font-weight:400;
    letter-spacing:-.04em;
}

.engineering-system-list p{
    max-width:440px;
    margin:0;

    color:var(--muted);
    font-size:15px;
    line-height:1.7;
}


/* =========================================================
   CORE CAPABILITIES
   ========================================================= */

.engineering-services{
    padding:155px 0;
    background:#fff;
}

.engineering-services-head{
    margin-bottom:85px;
}

.engineering-services-title{
    margin-top:35px;

    display:grid;
    grid-template-columns:minmax(0,1fr) 400px;
    gap:70px;
    align-items:end;
}

.engineering-services-title h2{
    margin:0;

    font-size:clamp(58px,6vw,96px);
    line-height:.87;
    font-weight:400;
    letter-spacing:-.064em;
}

.engineering-services-title h2 span{
    color:var(--sea);
}

.engineering-services-title p{
    margin:0;

    color:var(--muted);
    font-size:17px;
    line-height:1.75;
}

.engineering-service-list{
    border-top:1px solid var(--ink);
}

.engineering-service{
    min-height:185px;
    padding:35px 0;

    display:grid;
    grid-template-columns:120px minmax(300px,1fr) minmax(300px,.7fr);
    gap:45px;
    align-items:center;

    border-bottom:1px solid var(--eng-line);
}

.engineering-service-number{
    color:var(--orange);
    font-size:13px;
    font-weight:700;
    letter-spacing:.1em;
}

.engineering-service-title span{
    display:block;
    margin-bottom:13px;

    color:#747d81;
    font-size:11px;
    font-weight:700;
    letter-spacing:.1em;
}

.engineering-service-title h3{
    margin:0;

    font-size:clamp(30px,3vw,46px);
    line-height:1;
    font-weight:400;
    letter-spacing:-.045em;
}

.engineering-service > p{
    justify-self:end;

    max-width:480px;
    margin:0;

    color:var(--muted);
    font-size:15px;
    line-height:1.68;
}


/* =========================================================
   PROJECT SUPPORT
   ========================================================= */

.engineering-project{
    min-height:900px;

    display:grid;
    grid-template-columns:1fr 1fr;

    background:var(--eng-paper);
}

.engineering-project-image{
    min-height:900px;
    overflow:hidden;
}

.engineering-project-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
}

.engineering-project-content{
    padding:
        110px
        var(--pad)
        110px
        clamp(55px,6vw,110px);

    display:flex;
    flex-direction:column;
    justify-content:center;
}

.engineering-project-body{
    max-width:760px;
}

.engineering-project-body h2{
    margin:48px 0 0;

    font-size:clamp(52px,5.3vw,86px);
    line-height:.88;
    font-weight:400;
    letter-spacing:-.061em;
}

.engineering-project-body h2 span{
    color:var(--sea);
}

.engineering-project-copy{
    max-width:560px;
    margin-top:55px;
}

.engineering-project-copy p{
    margin:0 0 24px;

    color:var(--muted);
    font-size:17px;
    line-height:1.75;
}


/* =========================================================
   TECHNICAL ADVISORY
   ========================================================= */

.engineering-advisory{
    padding:155px 0;

    background:var(--eng-dark);
    color:#fff;
}

.engineering-advisory-grid{
    padding:80px 0 100px;

    display:grid;
    grid-template-columns:minmax(0,1.15fr) minmax(320px,.6fr);
    gap:clamp(60px,8vw,120px);
    align-items:end;
}

.engineering-advisory-grid h2{
    margin:0;

    font-size:clamp(60px,6.5vw,104px);
    line-height:.85;
    font-weight:400;
    letter-spacing:-.066em;
}

.engineering-advisory-grid h2 em{
    color:var(--orange);
    font-style:normal;
}

.engineering-advisory-copy{
    max-width:530px;
}

.engineering-advisory-copy p{
    margin:0 0 25px;

    color:rgba(255,255,255,.64);
    font-size:17px;
    line-height:1.75;
}

.engineering-advisory-copy .engineering-advisory-lead{
    color:#fff;
    font-size:21px;
    line-height:1.55;
}

.engineering-advisory-strip{
    display:grid;
    grid-template-columns:repeat(4,1fr);

    border-top:1px solid rgba(255,255,255,.28);
}

.engineering-advisory-strip > div{
    min-height:100px;
    padding:25px 20px 0 0;
}

.engineering-advisory-strip > div + div{
    padding-left:25px;
    border-left:1px solid rgba(255,255,255,.2);
}

.engineering-advisory-strip span{
    display:block;
    margin-bottom:12px;

    color:var(--orange);
    font-size:11px;
    font-weight:700;
}

.engineering-advisory-strip strong{
    font-size:13px;
    font-weight:600;
    letter-spacing:.08em;
}


/* =========================================================
   MAINTENANCE COORDINATION
   ========================================================= */

.engineering-maintenance{
    padding:155px 0;
    background:var(--eng-warm);
}

.engineering-maintenance-grid{
    padding-top:80px;

    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(340px,520px);
    gap:clamp(60px,8vw,120px);
    align-items:start;
}

.engineering-maintenance-heading h2{
    max-width:850px;
    margin:0;

    font-size:clamp(58px,6vw,96px);
    line-height:.88;
    font-weight:400;
    letter-spacing:-.062em;
}

.engineering-maintenance-heading h2 span{
    color:var(--sea);
}

.engineering-maintenance-content{
    max-width:520px;
    padding-top:8px;
}

.engineering-maintenance-content > p{
    margin:0 0 25px;

    color:var(--muted);
    font-size:17px;
    line-height:1.75;
}

.engineering-maintenance-list{
    margin-top:55px;
    border-top:1px solid var(--ink);
}

.engineering-maintenance-list > div{
    min-height:72px;

    display:grid;
    grid-template-columns:55px 1fr;
    gap:20px;
    align-items:center;

    border-bottom:1px solid var(--eng-line);
}

.engineering-maintenance-list span{
    color:var(--orange);
    font-size:12px;
    font-weight:700;
}

.engineering-maintenance-list strong{
    color:var(--ink);
    font-size:15px;
    font-weight:500;
}


/* =========================================================
   OPERATIONAL SUPPORT
   ========================================================= */

.engineering-operation{
    position:relative;

    min-height:880px;
    overflow:hidden;

    background:var(--eng-dark);
    color:#fff;
}

.engineering-operation-media,
.engineering-operation-overlay{
    position:absolute;
    inset:0;
}

.engineering-operation-media img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
}

.engineering-operation-overlay{
    background:
        linear-gradient(
            90deg,
            rgba(3,27,44,.96),
            rgba(3,27,44,.67) 58%,
            rgba(3,27,44,.24)
        ),
        linear-gradient(
            0deg,
            rgba(3,27,44,.9),
            transparent 55%
        );
}

.engineering-operation-wrap{
    position:relative;
    z-index:2;

    min-height:880px;

    padding-top:70px;
    padding-bottom:70px;

    display:flex;
    flex-direction:column;
}

.engineering-operation-main{
    flex:1;

    padding-top:80px;

    display:grid;
    grid-template-columns:minmax(0,1.2fr) minmax(300px,.55fr);
    gap:clamp(60px,8vw,120px);
    align-items:end;
}

.engineering-operation-main h2{
    margin:0;

    font-size:clamp(60px,6.6vw,106px);
    line-height:.84;
    font-weight:400;
    letter-spacing:-.067em;
}

.engineering-operation-main h2 em{
    color:var(--orange);
    font-style:normal;
}

.engineering-operation-main > div{
    padding-bottom:20px;
}

.engineering-operation-main p{
    max-width:500px;
    margin:0 0 25px;

    color:rgba(255,255,255,.73);
    font-size:17px;
    line-height:1.72;
}


/* =========================================================
   INTEGRATED CAPABILITY
   Tighter content composition
   ========================================================= */

.engineering-integrated{
    padding:155px 0;
    background:#fff;
}

.engineering-integrated-grid{
    width:100%;
    max-width:1180px;
    margin:0 auto;

    display:grid;
    grid-template-columns:minmax(0,1.05fr) minmax(360px,.8fr);
    gap:65px;
    align-items:start;
}

.engineering-integrated-heading h2{
    max-width:680px;
    margin:35px 0 0;

    font-size:clamp(54px,5vw,82px);
    line-height:.89;
    font-weight:400;
    letter-spacing:-.058em;
}

.engineering-integrated-heading h2 span{
    color:var(--sea);
}

.engineering-integrated-content{
    max-width:520px;
    padding-top:45px;
}

.engineering-integrated-content > p{
    margin:0 0 24px;

    color:var(--muted);
    font-size:17px;
    line-height:1.75;
}

.engineering-integrated-list{
    margin-top:45px;
    border-top:1px solid var(--ink);
}

.engineering-integrated-list > div{
    min-height:70px;

    display:grid;
    grid-template-columns:110px 1fr;
    gap:20px;
    align-items:center;

    border-bottom:1px solid var(--eng-line);
}

.engineering-integrated-list span{
    color:var(--orange);
    font-size:11px;
    font-weight:700;
    letter-spacing:.08em;
}

.engineering-integrated-list strong{
    font-size:15px;
    line-height:1.4;
    font-weight:500;
}


/* =========================================================
   OPERATING PRINCIPLES
   ========================================================= */

.engineering-principles{
    padding:155px 0;
    background:var(--eng-paper);
}

.engineering-principles-head{
    margin-bottom:90px;
}

.engineering-principles-head h2{
    max-width:1050px;
    margin:35px 0 0;

    font-size:clamp(57px,6vw,96px);
    line-height:.87;
    font-weight:400;
    letter-spacing:-.064em;
}

.engineering-principles-head h2 span{
    color:var(--sea);
}

.engineering-principles-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);

    border-top:1px solid var(--ink);
    border-left:1px solid var(--eng-line);
}

.engineering-principles-grid article{
    min-height:355px;
    padding:30px;

    display:flex;
    flex-direction:column;
    justify-content:space-between;

    border-right:1px solid var(--eng-line);
    border-bottom:1px solid var(--eng-line);
}

.engineering-principles-grid article > span{
    color:var(--orange);
    font-size:11px;
    line-height:1.3;
    font-weight:700;
    letter-spacing:.08em;
}

.engineering-principles-grid h3{
    margin:0 0 25px;

    font-size:clamp(27px,2.5vw,39px);
    line-height:1;
    font-weight:400;
    letter-spacing:-.04em;
}

.engineering-principles-grid p{
    margin:0;

    color:var(--muted);
    font-size:15px;
    line-height:1.65;
}


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

@media(max-width:1000px){

    .engineering-hero-main{
        grid-template-columns:1fr;
        align-content:center;
        gap:45px;
    }

    .engineering-hero-copy{
        align-self:auto;
        padding-bottom:0;
    }

    .engineering-hero-copy p{
        max-width:550px;
    }


    .engineering-intro-grid,
    .engineering-system-heading,
    .engineering-advisory-grid,
    .engineering-maintenance-grid,
    .engineering-operation-main,
    .engineering-integrated-grid{
        grid-template-columns:1fr;
        gap:45px;
    }


    .engineering-intro-copy,
    .engineering-system-heading p,
    .engineering-advisory-copy,
    .engineering-maintenance-content,
    .engineering-operation-main > div,
    .engineering-integrated-content{
        max-width:600px;
    }


    /* INTEGRATED TECHNICAL SUPPORT */

    .engineering-system-list{
        grid-template-columns:1fr;
    }

    .engineering-system-list article,
    .engineering-system-list article:nth-child(odd),
    .engineering-system-list article:nth-child(even){
        padding:35px 0;
        border-right:0;
    }


    /* SERVICES */

    .engineering-services-title{
        grid-template-columns:1fr;
        gap:35px;
    }

    .engineering-services-title p{
        max-width:560px;
    }

    .engineering-service{
        grid-template-columns:90px 1fr;
    }

    .engineering-service > p{
        grid-column:2;
        justify-self:start;
    }


    /* PROJECT */

    .engineering-project{
        grid-template-columns:1fr;
    }

    .engineering-project-image{
        min-height:600px;
    }

    .engineering-project-content{
        padding:100px var(--pad);
    }


    /* OPERATION */

    .engineering-operation-main > div{
        padding-bottom:0;
    }


    /* INTEGRATED */

    .engineering-integrated-grid{
        max-width:800px;
        margin:0;
    }

    .engineering-integrated-content{
        padding-top:0;
    }


    /* PRINCIPLES */

    .engineering-principles-grid{
        grid-template-columns:repeat(2,1fr);
    }

}


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

@media(max-width:650px){

    .engineering-label,
    .engineering-section-meta{
        font-size:11px;
    }


    /* HERO */

    .engineering-hero,
    .engineering-hero-wrap{
        min-height:760px;
    }

    .engineering-hero-wrap{
        padding-top:105px;
        padding-bottom:25px;
    }

    .engineering-hero-meta{
        font-size:11px;
    }

    .engineering-hero-meta span:last-child{
        display:none;
    }

    .engineering-hero-main{
        padding:40px 0;
        gap:35px;
    }

    .engineering-eyebrow{
        margin-bottom:20px;
        font-size:11px;
    }

    .engineering-hero-heading h1{
        font-size:clamp(47px,14vw,67px);
        line-height:.83;
    }

    .engineering-hero-copy p{
        max-width:350px;
        font-size:16px;
    }

    .engineering-hero-services{
        grid-template-columns:1fr 1fr;
    }

    .engineering-hero-services span{
        min-height:64px;
        padding:17px 12px 12px 0;

        font-size:11px;
    }

    .engineering-hero-services span + span{
        padding-left:12px;
    }

    .engineering-hero-services span:nth-child(3){
        padding-left:0;
        border-left:0;
        border-top:1px solid rgba(255,255,255,.18);
    }

    .engineering-hero-services span:nth-child(4){
        border-top:1px solid rgba(255,255,255,.18);
    }


    /* INTRO */

    .engineering-intro{
        padding:90px 0;
    }

    .engineering-intro-grid{
        padding-top:50px;
        gap:40px;
    }

    .engineering-intro-heading h2{
        font-size:clamp(46px,13vw,62px);
    }

    .engineering-lead{
        font-size:19px !important;
    }

    .engineering-intro-copy p{
        font-size:16px;
    }


    /* INTEGRATED TECHNICAL SUPPORT */

    .engineering-system{
        padding:90px 0;
    }

    .engineering-system-head{
        margin-bottom:55px;
    }

    .engineering-system-heading{
        margin-top:25px;
        gap:30px;
    }

    .engineering-system-heading h2{
        font-size:clamp(46px,13vw,62px);
    }

    .engineering-system-heading p{
        font-size:16px;
    }

    .engineering-system-list article{
        min-height:auto;

        grid-template-columns:42px 1fr;
        gap:15px;

        padding:30px 0;
    }

    .engineering-system-list h3{
        margin-bottom:15px;
        font-size:29px;
    }

    .engineering-system-list p{
        font-size:15px;
    }


    /* SERVICES */

    .engineering-services{
        padding:90px 0;
    }

    .engineering-services-head{
        margin-bottom:55px;
    }

    .engineering-services-title{
        margin-top:25px;
    }

    .engineering-services-title h2{
        font-size:clamp(46px,13vw,62px);
    }

    .engineering-services-title p{
        font-size:16px;
    }

    .engineering-service{
        min-height:auto;
        padding:30px 0;

        grid-template-columns:1fr;
        gap:14px;
    }

    .engineering-service > p{
        grid-column:auto;
    }

    .engineering-service-title h3{
        font-size:29px;
    }


    /* PROJECT */

    .engineering-project-image{
        min-height:440px;
    }

    .engineering-project-content{
        padding:80px var(--pad);
    }

    .engineering-project-body h2{
        margin-top:35px;
        font-size:clamp(46px,13vw,62px);
    }

    .engineering-project-copy{
        margin-top:40px;
    }

    .engineering-project-copy p{
        font-size:16px;
    }


    /* ADVISORY */

    .engineering-advisory{
        padding:90px 0;
    }

    .engineering-advisory-grid{
        padding:50px 0 60px;
        gap:40px;
    }

    .engineering-advisory-grid h2{
        font-size:clamp(47px,13.5vw,64px);
    }

    .engineering-advisory-copy .engineering-advisory-lead{
        font-size:19px;
    }

    .engineering-advisory-copy p{
        font-size:16px;
    }

    .engineering-advisory-strip{
        grid-template-columns:1fr 1fr;
    }

    .engineering-advisory-strip > div{
        min-height:80px;
        padding:20px 10px 15px 0;
    }

    .engineering-advisory-strip > div + div{
        padding-left:15px;
    }

    .engineering-advisory-strip > div:nth-child(3){
        padding-left:0;
        border-left:0;
        border-top:1px solid rgba(255,255,255,.2);
    }

    .engineering-advisory-strip > div:nth-child(4){
        border-top:1px solid rgba(255,255,255,.2);
    }


    /* MAINTENANCE */

    .engineering-maintenance{
        padding:90px 0;
    }

    .engineering-maintenance-grid{
        padding-top:50px;
        gap:40px;
    }

    .engineering-maintenance-heading h2{
        font-size:clamp(46px,13vw,62px);
    }

    .engineering-maintenance-content{
        padding-top:0;
    }

    .engineering-maintenance-content > p{
        font-size:16px;
    }

    .engineering-maintenance-list{
        margin-top:40px;
    }

    .engineering-maintenance-list > div{
        min-height:68px;
        grid-template-columns:45px 1fr;
        gap:15px;
    }


    /* OPERATION */

    .engineering-operation,
    .engineering-operation-wrap{
        min-height:700px;
    }

    .engineering-operation-wrap{
        padding-top:50px;
        padding-bottom:50px;
    }

    .engineering-operation-main{
        padding-top:50px;
        gap:40px;
    }

    .engineering-operation-main h2{
        font-size:clamp(47px,13.5vw,64px);
    }

    .engineering-operation-main p{
        font-size:16px;
    }


    /* INTEGRATED CAPABILITY */

    .engineering-integrated{
        padding:90px 0;
    }

    .engineering-integrated-grid{
        width:100%;
        max-width:none;
        gap:40px;
    }

    .engineering-integrated-heading h2{
        margin-top:25px;
        max-width:100%;

        font-size:clamp(46px,13vw,62px);
    }

    .engineering-integrated-content{
        max-width:100%;
        padding-top:0;
    }

    .engineering-integrated-content > p{
        font-size:16px;
    }

    .engineering-integrated-list{
        margin-top:40px;
    }

    .engineering-integrated-list > div{
        min-height:68px;

        grid-template-columns:90px 1fr;
        gap:15px;
    }


    /* PRINCIPLES */

    .engineering-principles{
        padding:90px 0;
    }

    .engineering-principles-head{
        margin-bottom:55px;
    }

    .engineering-principles-head h2{
        margin-top:25px;

        font-size:clamp(46px,13vw,62px);
    }

    .engineering-principles-grid{
        grid-template-columns:1fr;
    }

    .engineering-principles-grid article{
        min-height:270px;
        padding:25px;
    }

    .engineering-principles-grid h3{
        font-size:29px;
    }

}

/* =========================================================
   SATOMEN — ALL CAPABILITIES
   FINAL RESPONSIVE UNIFORMITY PATCH
   Downstream / Upstream / Marine / Logistics /
   Procurement / Engineering
   Desktop remains unchanged.
========================================================= */

@media (max-width:768px){

    /* SAME GUTTER SYSTEM USED ACROSS THE SITE */
    .ds-container,
    .ds-hero-inner,
    .marine-hero-inner{
        padding-left:var(--pad) !important;
        padding-right:var(--pad) !important;
    }

    /* =====================================================
       DOWNSTREAM + UPSTREAM
    ===================================================== */
    .ds-hero,
    .ds-hero-inner{
        min-height:100svh !important;
    }

    .ds-hero-inner{
        padding-top:105px !important;
        padding-bottom:28px !important;
    }

    .ds-hero-kicker{
        padding-bottom:16px !important;
        font-size:10px !important;
        line-height:1.35 !important;
        gap:20px !important;
    }

    .ds-hero-content{
        grid-template-columns:1fr !important;
        gap:30px !important;
        padding:38px 0 !important;
        align-content:center !important;
    }

    .ds-hero-title h1{
        max-width:100% !important;
        font-size:clamp(46px,12.5vw,61px) !important;
        line-height:.87 !important;
        letter-spacing:-.055em !important;
        overflow-wrap:normal !important;
        word-break:normal !important;
    }

    .ds-hero-side{
        align-self:auto !important;
        padding-bottom:0 !important;
    }

    .ds-hero-side p{
        max-width:430px !important;
        margin-bottom:24px !important;
        font-size:15px !important;
        line-height:1.65 !important;
    }

    .ds-hero-link{
        max-width:100% !important;
        min-height:54px !important;
        font-size:12px !important;
    }

    .ds-hero-bottom{
        grid-template-columns:1fr !important;
        gap:9px !important;
        padding-top:16px !important;
        font-size:10px !important;
        line-height:1.35 !important;
    }

    .ds-hero-bottom span{
        text-align:left !important;
    }

    .ds-value,
    .ds-products,
    .ds-why{
        padding-top:90px !important;
        padding-bottom:90px !important;
    }

    .ds-section-rule{
        padding-bottom:16px !important;
    }

    .ds-section-rule span,
    .ds-label,
    .ds-visual-label{
        font-size:10px !important;
        line-height:1.35 !important;
    }

    .ds-value-grid{
        grid-template-columns:1fr !important;
        gap:36px !important;
        padding-top:48px !important;
    }

    .ds-value-title h2,
    .ds-products-head h2,
    .ds-why-head h2{
        max-width:100% !important;
        font-size:clamp(40px,10.8vw,52px) !important;
        line-height:.92 !important;
        letter-spacing:-.045em !important;
        overflow-wrap:normal !important;
        word-break:normal !important;
    }

    .ds-value-copy{
        max-width:100% !important;
    }

    .ds-value-copy p{
        font-size:15px !important;
        line-height:1.68 !important;
    }

    .ds-value-copy .ds-lead{
        font-size:18px !important;
        line-height:1.5 !important;
    }

    .ds-visual,
    .ds-visual-inner{
        min-height:620px !important;
    }

    .ds-visual-inner{
        padding:55px var(--pad) !important;
    }

    .ds-visual-bottom{
        grid-template-columns:1fr !important;
        gap:25px !important;
    }

    .ds-visual-bottom h2{
        font-size:clamp(40px,10.8vw,52px) !important;
        line-height:.9 !important;
    }

    .ds-visual-bottom p{
        max-width:100% !important;
        font-size:15px !important;
        line-height:1.65 !important;
    }

    .ds-products-head{
        grid-template-columns:1fr !important;
        gap:28px !important;
    }

    .ds-products-head p{
        max-width:100% !important;
        font-size:15px !important;
        line-height:1.65 !important;
    }

    .ds-products-grid,
    .upstream-services-grid{
        grid-template-columns:1fr !important;
    }


    /* =====================================================
       MARINE
    ===================================================== */
    .marine-hero,
    .marine-hero-inner{
        min-height:100svh !important;
    }

    .marine-hero-inner{
        padding-top:105px !important;
        padding-bottom:28px !important;
    }

    .marine-hero-top{
        font-size:10px !important;
        line-height:1.35 !important;
        padding-bottom:16px !important;
    }

    .marine-hero-main{
        grid-template-columns:1fr !important;
        gap:30px !important;
        align-content:center !important;
    }

    .marine-hero-copy h1{
        max-width:100% !important;
        font-size:clamp(44px,11.8vw,58px) !important;
        line-height:.88 !important;
        letter-spacing:-.05em !important;
    }

    .marine-hero-intro p{
        font-size:15px !important;
        line-height:1.65 !important;
    }

    .marine-hero-link{
        max-width:100% !important;
        font-size:12px !important;
    }

    .marine-hero-bottom{
        grid-template-columns:1fr !important;
        gap:9px !important;
        font-size:10px !important;
        line-height:1.35 !important;
    }

    .marine-hero-bottom span{
        text-align:left !important;
    }

    .marine-intro,
    .marine-services,
    .marine-specs{
        padding-top:90px !important;
        padding-bottom:90px !important;
    }

    .marine-intro-grid,
    .marine-services-head,
    .marine-specs-head{
        grid-template-columns:1fr !important;
        gap:34px !important;
    }

    .marine-intro-title h2,
    .marine-services-head h2,
    .marine-asset-heading h2,
    .marine-specs-head h2{
        font-size:clamp(40px,10.8vw,52px) !important;
        line-height:.92 !important;
    }

    .marine-intro-copy p,
    .marine-services-head > p,
    .marine-asset-heading p,
    .marine-specs-head > p{
        font-size:15px !important;
        line-height:1.65 !important;
    }

    .marine-intro-copy .marine-lead{
        font-size:18px !important;
        line-height:1.5 !important;
    }

    .marine-service-list{
        grid-template-columns:1fr !important;
    }

    .marine-asset{
        grid-template-columns:1fr !important;
    }

    .marine-asset-image{
        min-height:430px !important;
    }

    .marine-asset-content{
        padding:80px var(--pad) !important;
    }

    .marine-asset-highlights{
        grid-template-columns:1fr !important;
    }

    .marine-specs-layout{
        grid-template-columns:1fr !important;
        gap:45px !important;
    }


    /* =====================================================
       LOGISTICS
    ===================================================== */
    .logistics-hero,
    .logistics-hero-wrap{
        min-height:100svh !important;
    }

    .logistics-hero-wrap{
        padding-top:105px !important;
        padding-bottom:28px !important;
    }

    .logistics-hero-meta,
    .logistics-section-meta{
        font-size:10px !important;
        line-height:1.35 !important;
    }

    .logistics-hero-main{
        grid-template-columns:1fr !important;
        gap:30px !important;
        align-content:center !important;
    }

    .logistics-hero-heading h1{
        font-size:clamp(46px,12.3vw,60px) !important;
        line-height:.88 !important;
    }

    .logistics-hero-copy p{
        font-size:15px !important;
        line-height:1.65 !important;
    }

    .logistics-hero-services{
        grid-template-columns:1fr 1fr !important;
        gap:10px 18px !important;
        font-size:9px !important;
        line-height:1.35 !important;
    }

    .logistics-intro,
    .logistics-capabilities,
    .logistics-flow{
        padding-top:90px !important;
        padding-bottom:90px !important;
    }

    .logistics-intro-grid,
    .logistics-capabilities-head,
    .logistics-flow-heading{
        grid-template-columns:1fr !important;
        gap:34px !important;
    }

    .logistics-intro-heading h2,
    .logistics-capabilities-head h2,
    .logistics-flow-heading h2,
    .logistics-movement-bottom h2{
        font-size:clamp(40px,10.8vw,52px) !important;
        line-height:.92 !important;
    }

    .logistics-intro-copy p,
    .logistics-capabilities-head > p,
    .logistics-flow-heading p,
    .logistics-movement-bottom p{
        font-size:15px !important;
        line-height:1.65 !important;
    }

    .logistics-intro-copy .logistics-lead{
        font-size:18px !important;
    }

    .logistics-movement{
        min-height:620px !important;
    }

    .logistics-movement-wrap{
        min-height:620px !important;
    }

    .logistics-movement-bottom{
        grid-template-columns:1fr !important;
        gap:25px !important;
    }

    .logistics-capability-list,
    .logistics-flow-track{
        grid-template-columns:1fr !important;
    }


    /* =====================================================
       PROCUREMENT
    ===================================================== */
    .procurement-hero,
    .procurement-hero-wrap{
        min-height:100svh !important;
    }

    .procurement-hero-wrap{
        padding-top:105px !important;
        padding-bottom:28px !important;
    }

    .procurement-hero-meta{
        font-size:10px !important;
        line-height:1.35 !important;
    }

    .procurement-hero-main{
        grid-template-columns:1fr !important;
        gap:30px !important;
        align-content:center !important;
    }

    .procurement-hero-heading h1{
        font-size:clamp(43px,11.5vw,56px) !important;
        line-height:.89 !important;
    }

    .procurement-hero-copy p{
        font-size:15px !important;
        line-height:1.65 !important;
    }

    .procurement-hero-services{
        grid-template-columns:1fr 1fr !important;
        gap:10px 18px !important;
        font-size:9px !important;
        line-height:1.35 !important;
    }

    .procurement-intro,
    .procurement-statement,
    .procurement-services,
    .procurement-process{
        padding-top:90px !important;
        padding-bottom:90px !important;
    }

    .procurement-intro-grid,
    .procurement-statement-grid{
        grid-template-columns:1fr !important;
        gap:34px !important;
    }

    .procurement-intro-heading h2,
    .procurement-statement-copy h2,
    .procurement-services-head h2,
    .procurement-equipment-body h2{
        font-size:clamp(40px,10.8vw,52px) !important;
        line-height:.92 !important;
    }

    .procurement-intro-copy p,
    .procurement-statement-side p,
    .procurement-equipment-copy p{
        font-size:15px !important;
        line-height:1.65 !important;
    }

    .procurement-intro-copy .procurement-lead,
    .procurement-equipment-copy .procurement-lead{
        font-size:18px !important;
    }

    .procurement-label{
        font-size:10px !important;
        line-height:1.35 !important;
    }

    .procurement-services-grid{
        grid-template-columns:1fr !important;
    }

    .procurement-equipment{
        grid-template-columns:1fr !important;
    }

    .procurement-equipment-image{
        min-height:430px !important;
    }

    .procurement-equipment-content{
        padding:80px var(--pad) !important;
    }


    /* =====================================================
       ENGINEERING
    ===================================================== */
    .engineering-hero,
    .engineering-hero-wrap{
        min-height:100svh !important;
    }

    .engineering-hero-wrap{
        padding-top:105px !important;
        padding-bottom:28px !important;
    }

    .engineering-hero-meta,
    .engineering-section-meta{
        font-size:10px !important;
        line-height:1.35 !important;
    }

    .engineering-hero-main{
        grid-template-columns:1fr !important;
        gap:30px !important;
        align-content:center !important;
    }

    .engineering-hero-heading h1{
        font-size:clamp(43px,11.5vw,56px) !important;
        line-height:.89 !important;
    }

    .engineering-hero-copy p{
        font-size:15px !important;
        line-height:1.65 !important;
    }

    .engineering-hero-services{
        grid-template-columns:1fr 1fr !important;
        gap:10px 18px !important;
        font-size:9px !important;
        line-height:1.35 !important;
    }

    .engineering-intro,
    .engineering-system,
    .engineering-services{
        padding-top:90px !important;
        padding-bottom:90px !important;
    }

    .engineering-intro-grid,
    .engineering-system-heading,
    .engineering-services-title{
        grid-template-columns:1fr !important;
        gap:34px !important;
    }

    .engineering-intro-heading h2,
    .engineering-system-heading h2,
    .engineering-services-title h2,
    .engineering-project-body h2{
        font-size:clamp(40px,10.8vw,52px) !important;
        line-height:.92 !important;
    }

    .engineering-intro-copy p,
    .engineering-system-heading p,
    .engineering-services-title p,
    .engineering-project-copy p{
        font-size:15px !important;
        line-height:1.65 !important;
    }

    .engineering-intro-copy .engineering-lead,
    .engineering-project-copy .engineering-lead{
        font-size:18px !important;
    }

    .engineering-label{
        font-size:10px !important;
        line-height:1.35 !important;
    }

    .engineering-system-list,
    .engineering-service-list{
        grid-template-columns:1fr !important;
    }

    .engineering-project{
        grid-template-columns:1fr !important;
    }

    .engineering-project-image{
        min-height:430px !important;
    }

    .engineering-project-content{
        padding:80px var(--pad) !important;
    }
}


/* iPhone SE / narrow phones */
@media (max-width:480px){

    .ds-hero-title h1,
    .logistics-hero-heading h1{
        font-size:clamp(43px,11.5vw,53px) !important;
    }

    .marine-hero-copy h1,
    .procurement-hero-heading h1,
    .engineering-hero-heading h1{
        font-size:clamp(40px,10.7vw,49px) !important;
    }

    .ds-value-title h2,
    .ds-products-head h2,
    .ds-why-head h2,
    .ds-visual-bottom h2,
    .marine-intro-title h2,
    .marine-services-head h2,
    .marine-asset-heading h2,
    .marine-specs-head h2,
    .logistics-intro-heading h2,
    .logistics-capabilities-head h2,
    .logistics-flow-heading h2,
    .logistics-movement-bottom h2,
    .procurement-intro-heading h2,
    .procurement-statement-copy h2,
    .procurement-services-head h2,
    .procurement-equipment-body h2,
    .engineering-intro-heading h2,
    .engineering-system-heading h2,
    .engineering-services-title h2,
    .engineering-project-body h2{
        font-size:clamp(38px,10.2vw,47px) !important;
    }
}
