.jp-forwarding {
        color: #162033;
        background: #f5f7fb;
    }

    .jp-forwarding__section {
        padding: 30px 0;
    }

    .jp-forwarding__section--white {
        background: #fff;
    }

    .jp-forwarding__section--soft {
        background: #eef5fc;
    }

    .jp-forwarding__intro {
        padding: 50px 0 20px;
        margin-top: -40px;
    }

    .jp-forwarding__lead {
        max-width: 920px;
        margin: 22px auto 0;
        color: #4f5f74;
        font-size: 17px;
        line-height: 1.85;
        text-align: center;
    }

    .jp-service-seo-title {
        max-width: 980px;
        margin: 28px auto 0;
        color: #100466;
        font-size: clamp(28px, 3vw, 40px);
        font-weight: 850;
        line-height: 1.25;
        letter-spacing: -0.02em;
        text-align: center;
        text-wrap: balance;
    }

    .jp-service-seo-title + .jp-forwarding__lead {
        margin-top: 12px;
    }

    .jp-forwarding-hero {
        position: relative;
        overflow: hidden;
        border: 1px solid #d9e5f3;
        border-radius: 20px;
        background: #100466;
        box-shadow: 0 22px 52px rgba(16, 4, 102, 0.16);
    }

    .jp-forwarding-hero__image {
        display: block;
        width: 100%;
        height: auto;
    }

    .jp-forwarding-hero__content {
        position: absolute;
        z-index: 2;
        top: clamp(22px, 5vw, 58px);
        left: clamp(18px, 4.5vw, 54px);
        width: min(47%, 520px);
    }

    .jp-forwarding-hero__content .jp-forwarding__eyebrow {
        margin-bottom: 10px;
        color: #e36f24;
        text-shadow: none;
    }

    /* Hero title is separate from the SEO title used below image-based banners. */
    .jp-forwarding-hero__title {
        margin: 0;
        color: #fff;
        font-size: clamp(28px, 4vw, 52px);
        font-weight: 850;
        line-height: 1.18;
        letter-spacing: -0.025em;
        text-shadow: 0 4px 20px rgba(0, 0, 0, 0.48);
        text-wrap: balance;
    }

    .jp-forwarding-hero__actions {
        position: absolute;
        z-index: 2;
        top: clamp(180px, 20vw, 290px);
        left: clamp(18px, 4.5vw, 54px);
        display: flex;
        flex-wrap: wrap;
        gap: 10px;
    }

    .jp-forwarding__eyebrow {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        margin-bottom: 12px;
        color: #e36f24;
        font-size: 14px;
        font-weight: 800;
        letter-spacing: 0.05em;
        text-transform: uppercase;
    }

    .jp-forwarding__actions {
        display: flex;
        flex-wrap: wrap;
        gap: 12px;
        margin-top: 26px;
    }

    .jp-forwarding__button {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 9px;
        min-height: 48px;
        padding: 12px 20px;
        border: 1px solid #100466;
        border-radius: 9px;
        color: #fff;
        background: #100466;
        font-size: 15px;
        font-weight: 750;
        line-height: 1.25;
        text-decoration: none;
        transition: transform 0.2s ease, background-color 0.2s ease, color 0.2s ease;
    }

    .jp-forwarding__button:hover {
        color: #fff;
        background: #e36f24;
        border-color: #e36f24;
        transform: translateY(-2px);
    }

    .jp-forwarding__button--secondary {
        color: #100466;
        background: #fff;
    }

    .jp-forwarding__button--secondary:hover {
        color: #fff;
    }

    .jp-forwarding-hero__actions .jp-forwarding__button {
        min-height: 44px;
        border-color: #100466;
        color: #fff;
        background: #100466;
        box-shadow: 0 8px 22px rgba(16, 4, 102, 0.18);
    }

    .jp-forwarding-hero__actions .jp-forwarding__button--secondary {
        border-color: #100466;
        color: #100466;
        background: rgba(255, 255, 255, 0.96);
    }

    .jp-forwarding-hero__actions .jp-forwarding__button:hover {
        border-color: #e36f24;
        color: #fff;
        background: #e36f24;
    }

    .jp-forwarding__heading {
        max-width: 780px;
        margin: 0 auto 38px;
        text-align: center;
    }

    .jp-forwarding__heading h2 {
        margin: 0 0 14px;
        color: #100466;
        font-size: clamp(29px, 3vw, 42px);
        font-weight: 850;
        line-height: 1.25;
    }

    .jp-forwarding__heading p {
        margin: 0;
        color: #5b687a;
        font-size: 16px;
        line-height: 1.75;
    }

    .jp-forwarding-benefits,
    .jp-forwarding-process {
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 20px;
    }

    .jp-forwarding-card,
    .jp-forwarding-step {
        height: 100%;
        padding: 28px 24px;
        border: 1px solid #e3e9f1;
        border-radius: 14px;
        background: #fff;
        box-shadow: 0 14px 34px rgba(22, 32, 51, 0.06);
    }

    .jp-forwarding-card__icon,
    .jp-forwarding-step__number {
        display: inline-grid;
        width: 52px;
        height: 52px;
        margin-bottom: 19px;
        border-radius: 13px;
        color: #e36f24;
        background: #fff2e9;
        font-size: 21px;
        place-items: center;
    }

    .jp-forwarding-card h3,
    .jp-forwarding-step h3 {
        margin: 0 0 10px;
        color: #162033;
        font-size: 20px;
        font-weight: 800;
        line-height: 1.35;
    }

    .jp-forwarding-card p,
    .jp-forwarding-step p {
        margin: 0;
        color: #687384;
        font-size: 15px;
        line-height: 1.72;
    }

    .jp-forwarding-step {
        position: relative;
    }

    .jp-forwarding-step__number {
        color: #fff;
        background: #100466;
        font-size: 18px;
        font-weight: 850;
    }

    .jp-forwarding__center-action {
        display: flex;
        justify-content: center;
        margin-top: 34px;
    }

    .jp-forwarding-audience {
        display: grid;
        grid-template-columns: minmax(0, 1fr) minmax(300px, 0.78fr);
        gap: 34px;
        align-items: center;
        padding: 40px;
        border-radius: 18px;
        color: #fff;
        background: linear-gradient(135deg, #100466 0%, #21168a 100%);
        box-shadow: 0 20px 45px rgba(16, 4, 102, 0.2);
    }

    .jp-forwarding-audience .jp-forwarding__eyebrow {
        color: #ffd829;
    }

    .jp-forwarding-audience h2 {
        margin: 0 0 20px;
        color: #fff;
        font-size: clamp(28px, 3vw, 40px);
        font-weight: 850;
        line-height: 1.3;
    }

    .jp-forwarding-audience__list {
        display: grid;
        gap: 13px;
        margin: 0;
        padding: 0;
        list-style: none;
    }

    .jp-forwarding-audience__list li {
        display: flex;
        gap: 10px;
        align-items: flex-start;
        color: rgba(255, 255, 255, 0.9);
        font-size: 15px;
        line-height: 1.65;
    }

    .jp-forwarding-audience__list i {
        margin-top: 5px;
        color: #ffd829;
    }

    .jp-forwarding-audience__action {
        display: grid;
        min-height: 220px;
        padding: 30px;
        border: 1px solid rgba(255, 255, 255, 0.2);
        border-radius: 16px;
        background: rgba(255, 255, 255, 0.1);
        place-items: center;
        text-align: center;
    }

    .jp-forwarding-audience__action i {
        color: #ffd829;
        font-size: 52px;
    }

    .jp-forwarding-audience__action .jp-forwarding__button {
        border-color: #fff;
        color: #100466;
        background: #fff;
    }

    .jp-forwarding-faq {
        display: grid;
        gap: 14px;
        max-width: 920px;
        margin: 0 auto;
    }

    .jp-forwarding-faq details {
        padding: 0 22px;
        border: 1px solid #e0e7ef;
        border-radius: 12px;
        background: #fff;
        box-shadow: 0 8px 24px rgba(22, 32, 51, 0.04);
    }

    .jp-forwarding-faq summary {
        position: relative;
        padding: 20px 34px 20px 0;
        color: #162033;
        cursor: pointer;
        font-size: 17px;
        font-weight: 800;
        line-height: 1.45;
        list-style: none;
    }

    .jp-forwarding-faq summary::-webkit-details-marker {
        display: none;
    }

    .jp-forwarding-faq summary::after {
        position: absolute;
        top: 50%;
        right: 0;
        color: #e36f24;
        content: '+';
        font-size: 27px;
        font-weight: 500;
        transform: translateY(-50%);
    }

    .jp-forwarding-faq details[open] summary::after {
        content: '−';
    }

    .jp-forwarding-faq details p {
        margin: 0;
        padding: 0 0 21px;
        color: #667386;
        font-size: 15px;
        line-height: 1.75;
    }

    .jp-forwarding-final {
        padding: 48px;
        border-radius: 18px;
        color: #fff;
        background: linear-gradient(135deg, #e36f24 0%, #f08a3f 100%);
        text-align: center;
        box-shadow: 0 20px 44px rgba(227, 111, 36, 0.2);
    }

    .jp-forwarding-final h2 {
        margin: 0 0 12px;
        color: #fff;
        font-size: clamp(30px, 3.5vw, 44px);
        font-weight: 850;
    }

    .jp-forwarding-final p {
        max-width: 720px;
        margin: 0 auto;
        color: rgba(255, 255, 255, 0.92);
        font-size: 17px;
        line-height: 1.75;
    }

    .jp-forwarding-final .jp-forwarding__actions {
        justify-content: center;
    }

    .jp-forwarding-final .jp-forwarding__button {
        border-color: #fff;
        color: #100466;
        background: #fff;
    }

    .jp-forwarding-final .jp-forwarding__button--secondary {
        color: #fff;
        background: transparent;
    }

    @media (max-width: 1100px) {

        .jp-forwarding-benefits,
        .jp-forwarding-process {
            grid-template-columns: repeat(2, minmax(0, 1fr));
        }
    }

    @media (max-width: 991px) {
        .jp-forwarding-audience {
            grid-template-columns: 1fr;
        }
    }

    @media (max-width: 767px) {
        .jp-forwarding__intro {
            margin-top: 0;
            padding: 24px 0 42px;
        }

        .jp-forwarding-hero {
            display: flex;
            flex-direction: column;
            overflow: hidden;
            border-radius: 14px;
            background: #fff;
        }

        .jp-forwarding-hero__image {
            order: 1;
        }

        .jp-forwarding-hero__content {
            position: static;
            order: 2;
            width: auto;
            padding: 22px 20px 0;
        }

        .jp-forwarding-hero__content .jp-forwarding__eyebrow {
            margin-bottom: 7px;
            color: #e36f24;
            font-size: 11px;
            text-shadow: none;
        }

        .jp-forwarding-hero__title {
            color: #100466;
            font-size: clamp(24px, 6vw, 34px);
            line-height: 1.25;
            text-shadow: none;
        }

        .jp-forwarding-hero__actions {
            position: static;
            order: 3;
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 10px;
            padding: 16px 20px 22px;
        }

        .jp-forwarding-hero__actions .jp-forwarding__button {
            width: 100%;
            min-width: 0;
            min-height: 44px;
            padding: 10px 12px;
            font-size: 13px;
            text-align: center;
        }

        .jp-forwarding-hero__actions .jp-forwarding__button--secondary {
            border-color: #100466;
            color: #100466;
            background: #fff;
        }
    }

    @media (max-width: 575px) {
        .jp-forwarding__section {
            padding: 58px 0;
        }

        .jp-forwarding__intro {
            margin-top: 0;
            padding: 20px 0 38px;
        }

        .jp-service-seo-title {
            margin-top: 20px;
            padding: 0 4px;
            font-size: clamp(25px, 7vw, 32px);
        }

        .jp-service-seo-title + .jp-forwarding__lead {
            margin-top: 10px;
        }

        .jp-forwarding-audience,
        .jp-forwarding-final {
            padding: 27px 22px;
            border-radius: 13px;
        }

        .jp-forwarding-hero {
            border-radius: 13px;
        }

        .jp-forwarding-hero__actions {
            grid-template-columns: 1fr;
            gap: 8px;
            padding: 14px 16px 18px;
        }

        .jp-forwarding-hero__actions .jp-forwarding__button {
            width: 100%;
            min-width: 0;
            min-height: 42px;
            padding: 9px 12px;
            font-size: 13px;
        }

        .jp-forwarding-hero__content {
            width: auto;
            padding: 18px 16px 0;
        }

        .jp-forwarding-hero__content .jp-forwarding__eyebrow {
            gap: 5px;
            margin-bottom: 6px;
            font-size: 10px;
            letter-spacing: 0.02em;
        }

        .jp-forwarding-hero__title {
            font-size: clamp(23px, 7vw, 30px);
            line-height: 1.25;
        }

        .jp-forwarding-benefits,
        .jp-forwarding-process {
            grid-template-columns: 1fr;
        }

        .jp-forwarding__actions,
        .jp-forwarding__button {
            width: 100%;
        }

        .jp-forwarding-faq details {
            padding: 0 18px;
        }
    }

/* =========================================================
   Page variants
   Both jp-shipping.php and jp-shopping.php use this stylesheet.
   ========================================================= */

.jp-service-page--shipping .jp-forwarding-hero__content .jp-forwarding__eyebrow {
    color: #f5c64d;
    text-shadow: 0 2px 12px rgba(0, 0, 0, 0.42);
}

.jp-service-page--shipping .jp-forwarding-hero__actions .jp-forwarding__button {
    border-color: #fff;
    color: #100466;
    background: rgba(255, 255, 255, 0.96);
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.22);
    backdrop-filter: blur(5px);
}

.jp-service-page--shipping .jp-forwarding-hero__actions .jp-forwarding__button--secondary {
    border-color: rgba(255, 255, 255, 0.75);
    color: #fff;
    background: rgba(16, 4, 102, 0.78);
}

.jp-service-page--shipping .jp-forwarding-audience p {
    color: #fff;
}

@media (max-width: 767px) {
    .jp-service-page--shipping .jp-forwarding-hero__content .jp-forwarding__eyebrow {
        color: #e36f24;
        text-shadow: none;
    }

    .jp-service-page--shipping .jp-forwarding-hero__actions .jp-forwarding__button {
        border-color: #100466;
        color: #fff;
        background: #100466;
        box-shadow: 0 8px 22px rgba(16, 4, 102, 0.18);
        backdrop-filter: none;
    }

    .jp-service-page--shipping .jp-forwarding-hero__actions .jp-forwarding__button--secondary {
        border-color: #100466;
        color: #100466;
        background: #fff;
    }
}
