@import url('style.css');

.brand-name {
    color: var(--bs-primary);
}

.services-bg {
    background-color: #e7e7e7;
}

.fetured-product .dz-media img {
    width: 100%;
    height: 312px;
    object-fit: contain;
}


.banner-slider .item {
    height: 550px !important;
    background-repeat: no-repeat;
    background-position: center left;
    background-size: cover;
}

@media(max-width:560px) {
    .banner-slider .item {
        height: 340px !important;
    }
}/* Move slider text slightly to the left */
.banner-slider .hero-content {
    padding-left: 80px !important;   /* adjust 40–100px as needed */
}


.fetured-product .dz-media {
    background-color: #fff;
}

.who-we-are-bg {
    /* background-color: #e7e7e7; */
    padding: 30px 30px 0;
    color: #566593;
    border-radius: 15px;
    padding-bottom: 0
}

.product-list .product-item {
    font-size: 20px;
    font-weight: 500;
    line-height: normal;
}

.swiper-facebook-slider .facebook-slider-wrapper img{
    position:relative;
    transition:all 0.3s ease-in-out;
}
.swiper-facebook-slider .facebook-slider-wrapper img:hover{
    transform:scale(1.1);
}

.product-list .table-borderless>:not(caption)>*>* {
    background-color: transparent;
    padding: 0;
}

.who-we-are .right-div .top {
    border-bottom: 3px dashed #dbdbdb;
}

.mission-vision {
    padding-top: 70px !important;
    /* padding-bottom: 200px !important; */
}

@media (max-width:768px) {
    .mission-vision {
        padding-top: 70px;
        padding-bottom: 70px;
    }
}
/* ===== Brand strip – simple professional ticker ===== */

.dz-marquee.style-1 {
    background: #fff9f4 !important;      /* very soft tint */
    padding: 10px 0 12px !important;
    border-top: 1px solid rgba(0,0,0,0.03);
    border-bottom: 1px solid rgba(0,0,0,0.03);
}

/* keep smooth scrolling */
.dz-marquee.style-1 .marquee-list {
    animation-duration: 26s;
}

/* brand names – clean text only */
.dz-marquee.style-1 .marquee-list .item {
    display: inline-block;
    margin: 0 28px;
    padding: 0;
    background: transparent;
    border: 0;
    box-shadow: none;
    color: #444444 !important;
    font-size: 14px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.14em;
}

/* subtle dot separator instead of star / boxes */
.dz-marquee.style-1 .marquee-list .item:after {
    content: "•";
    display: inline-block;
    margin-left: 28px;
    font-size: 14px;
    color: #f08a5b;
}

.dz-marquee.style-1 .marquee-list .item:last-child:after {
    content: "";
    margin: 0;
}

@media (max-width: 767.98px) {
    .dz-marquee.style-1 {
        padding: 8px 0 10px !important;
    }
    .dz-marquee.style-1 .marquee-list .item {
        margin: 0 18px;
        font-size: 12px;
        letter-spacing: 0.12em;
    }
    .dz-marquee.style-1 .marquee-list .item:after {
        margin-left: 18px;
    }
}
/* ============================================
   BRAND STRIP – PREMIUM CORPORATE DESIGN
   ============================================ */

/* SECTION WRAPPER */
.brand-strip {
    background: #ffffff;
    padding: 20px 0 0;
    border-bottom: 1px solid rgba(0,0,0,0.08);
}

/* HEADING AREA */
.brand-strip-header {
    text-align: center;
    margin-bottom: 10px;
}

.brand-strip-label {
    display: block;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 0.18em;
    font-weight: 500;
    color: #8c8c8c;
    margin-bottom: 5px;
}

.brand-strip-title {
    font-size: 22px;
    font-weight: 600;
    color: #222;
    margin: 0;
}

/* ============================================
   PREMIUM DARK BRAND STRIP (FINAL FIX)
   ============================================ */

.brand-strip {
    background: #ffffff;
    padding: 25px 0 0;
}

.brand-strip-header {
    text-align: center;
    margin-bottom: 5px;
}

.brand-strip-label {
    display: block;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.16em;
    color: #888;
    font-weight: 500;
    margin-bottom: 4px;
}

.brand-strip-title {
    font-size: 20px;
    font-weight: 600;
    color: #222;
    margin: 0;
}

/* ========== DARK GRADIENT BAR ========== */
.dz-marquee.style-1 {
    position: relative;
    padding: 14px 0;
    background: linear-gradient(
        to right,
        rgba(0,0,0,0.45),
        rgba(0,0,0,0.20),
        rgba(0,0,0,0)
    ) !important;
    min-height: 58px;
}

/* Smooth movement */
.dz-marquee.style-1 .marquee-list {
    animation-duration: 30s !important;
}

/* BRAND TEXT */
.dz-marquee.style-1 .marquee-list .item {
    display: inline-block;
    margin: 0 45px;
    color: #ffffff !important;
    font-size: 15px;
    font-weight: 500;
    letter-spacing: 0.04em;
}

/* CLEAN DOT SEPARATOR */
.dz-marquee.style-1 .marquee-list .item:after {
    content: "•";
    font-size: 18px;
    color: rgba(255,255,255,0.6);
    margin-left: 45px;
}

.dz-marquee.style-1 .marquee-list .item:last-child:after {
    content: "";
    margin: 0;
}

/* MOBILE OPTIMIZATION */
@media (max-width: 767px) {
    .dz-marquee.style-1 .marquee-list .item {
        margin: 0 25px;
        font-size: 14px;
    }
    .dz-marquee.style-1 .marquee-list .item:after {
        margin-left: 25px;
        font-size: 16px;
    }
}
/* Improve "Our Partners / Trusted by leading global brands" styling */
.brand-strip-header,
.partners-heading {
    text-align: center;
    padding: 25px 0 15px;
}

.brand-strip-label,
.partners-eyebrow {
    display: inline-block;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.22em;
    color: #A0A0A0;
    font-weight: 600;
    margin-bottom: 6px;
}

/* Main title */
.brand-strip-title,
.partners-title {
    font-size: 26px;
    font-weight: 700;
    color: #222;
    margin: 0;
    position: relative;
    display: inline-block;
    padding-bottom: 10px;
}

/* Underline accent */
.brand-strip-title::after,
.partners-title::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 0;
    transform: translateX(-50%);
    width: 60px;
    height: 3px;
    background: linear-gradient(90deg, #C64540, #F28A5B);
    border-radius: 3px;
    opacity: 0.8;
}/* Shift hero text a bit to the left on the slider */
.banner-slider .content-wrapper {
    justify-content: flex-start !important;
}

.banner-slider .hero-content {
    margin-left: -40px !important;   /* adjust -40px to -20 / -60 as you like */
}/* ============================
   WHY CHOOSE US – PREMIUM LOOK
   ============================ */

/* Soft gradient background for the whole section */
.content-inner.mission-vision.who-we-are {
    background: linear-gradient(135deg, #fffaf4 0%, #ffffff 40%, #f8fbff 100%);
}

/* Big, confident heading */
.mission-vision .section-head.style-3 .title {
    font-size: 52px;
    line-height: 1.05;
    font-weight: 700;
    letter-spacing: 0.01em;
    margin-bottom: 10px;
}

/* Center the heading on tablet/mobile */
@media (max-width: 991.98px) {
    .mission-vision .section-head.style-3 {
        text-align: center;
    }
    .mission-vision .section-head.style-3 .title {
        margin-bottom: 24px;
    }
}

/* Middle card (text + illustration) */
.who-we-are-bg {
    background: #ffffff;
    padding: 32px 32px 0;
    color: #566593;
    border-radius: 24px;
    box-shadow: 0 18px 45px rgba(15, 23, 42, 0.08);
    position: relative;
    overflow: hidden;
}

/* Subtle colour glow behind the content */
.who-we-are-bg::before {
    content: "";
    position: absolute;
    inset: -40%;
    background: radial-gradient(circle at 0 0, rgba(240, 138, 91, 0.18), transparent 60%);
    opacity: 0.9;
    pointer-events: none;
}

/* Illustration styling */
.who-we-are-bg .dz-media {
    margin-top: 24px;
    border-radius: 18px 18px 0 0;
    overflow: hidden;
}

.who-we-are-bg .dz-media img {
    transform: scale(1.02);
    transition: transform 0.6s ease;
}

.who-we-are-bg:hover .dz-media img {
    transform: scale(1.06);
}

/* Right-hand benefits card */
.who-we-are .right-div {
    background: #ffffff;
    border-radius: 24px;
    box-shadow: 0 18px 45px rgba(15, 23, 42, 0.08);
    border: 1px solid rgba(0, 0, 0, 0.03);
}

.who-we-are .right-div .top {
    border-bottom: 3px dashed #e2e2e2;
    margin-bottom: 18px;
}

/* Bullet list – clean premium dots instead of default styling */
.who-we-are .right-div .list-check-circle-small {
    margin-bottom: 0;
    padding-left: 0;
    list-style: none;
}

.who-we-are .right-div .list-check-circle-small li {
    position: relative;
    padding-left: 26px;
    margin-bottom: 10px;
    font-size: 15px;
    color: #333;
}

.who-we-are .right-div .list-check-circle-small li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 9px;
    width: 10px;
    height: 10px;
    border-radius: 999px;
    border: 2px solid #f08a5b;
}
/* Hover interaction for "Why Choose Us" bullet points */
@media (hover: hover) {
    .who-we-are .right-div ul li {
        position: relative;
        padding: 10px 18px 10px 32px;
        border-radius: 12px;
        transition:
            background-color 0.25s ease,
            transform 0.25s ease,
            box-shadow 0.25s ease,
            color 0.25s ease;
    }

    /* base bullet (in case theme already adds one, this will refine it) */
    .who-we-are .right-div ul li::before {
        content: "";
        position: absolute;
        left: 14px;
        top: 50%;
        transform: translateY(-50%);
        width: 9px;
        height: 9px;
        border-radius: 50%;
        background: radial-gradient(circle, #ff9f6b 0%, #f56a3f 60%, #c43821 100%);
        box-shadow: 0 0 0 0 rgba(245,106,63,0.35);
        transition:
            transform 0.25s ease,
            box-shadow 0.25s ease;
    }

    /* hover state */
    .who-we-are .right-div ul li:hover {
        background-color: #fff7ef;
        transform: translateX(4px);
        box-shadow: 0 8px 20px rgba(15,23,42,0.08);
        color: #222;
        font-weight: 500;
    }

    .who-we-are .right-div ul li:hover::before {
        transform: translateY(-50%) scale(1.4);
        box-shadow: 0 0 0 6px rgba(245,106,63,0.18);
    }
}
.single-product .product-details .product-title {
    font-size: 32px;
    font-weight: bold;
    color: #333;
}

/* ----------------------------- */
/* Add NEW CSS BELOW THIS LINE   */
/* ----------------------------- */


/* Premium gradient background for Our Products section */
.fetured-product {
    background: linear-gradient(135deg, #ffffff 0%, #f2f2f2 40%, #e9e9e9 100%);
    border-radius: 20px;
    padding-top: 70px !important;
    padding-bottom: 70px !important;
}

/* Premium card hover effect */
.shop-card {
    transition: all 0.35s ease;
    border-radius: 18px;
}

.shop-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 20px 35px rgba(0,0,0,0.12);
}

/* Product title hover animation */
.shop-card .title a {
    position: relative;
    transition: color 0.3s ease;
}

.shop-card .title a:hover {
    color: #E45C52; /* premium gold */
}

.shop-card .title a:after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -3px;
    width: 0;
    height: 2px;
    background: #d59b35;
    transition: width 0.3s ease;
}

.shop-card .title a:hover:after {
    width: 100%;
}
/* ================================
   OUR DIVISONS – PREMIUM STYLE (OPTION 2)
   ================================ */

.services-home-section {
    /* soft premium background */
    background: radial-gradient(circle at top left, #fff7f2 0%, #ffffff 35%, #f9f3ef 70%, #f4ece6 100%);
    padding-top: 80px;
    padding-bottom: 90px;
}

/* Heading */
.services-home-section .section-head.style-3 .title {
    font-size: 40px;
    letter-spacing: 0.03em;
    text-transform: none;
    color: #111827;
    position: relative;
}

.services-home-section .section-head.style-3 .title::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: -18px;
    transform: translateX(-50%);
    width: 72px;
    height: 3px;
    border-radius: 999px;
    background: linear-gradient(90deg, #f1635f, #f89f6f); /* IFG coral */
}

/* Wrapper spacing */
.dz-flex-wrapper.dz-flex-swiper {
    padding-top: 40px;
}

/* Each card */
.dz-flex-wrapper .dz-flex-item {
    background: rgba(255, 255, 255, 0.9);
    border-radius: 24px;
    overflow: hidden;
    border: 1px solid rgba(148, 163, 184, 0.25);
    box-shadow: 0 16px 40px rgba(15, 23, 42, 0.06);
    transition:
        transform 0.35s ease,
        box-shadow 0.35s ease,
        border-color 0.35s ease,
        background 0.35s ease;
}

/* Top image area */
.dz-flex-wrapper .dz-flex-item .dz-flex-head {
    position: relative;
    min-height: 260px;
    background-size: cover;
    background-position: center;
}

/* subtle dark overlay on image */
.dz-flex-wrapper .dz-flex-item .dz-flex-head::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(
        135deg,
        rgba(0, 0, 0, 0.15) 0%,
        rgba(0, 0, 0, 0.0) 60%
    );
}

/* Title inside image */
.dz-flex-wrapper .dz-flex-item .dz-flex-head .title {
    position: absolute;
    left: 24px;
    bottom: 24px;
    margin: 0;
    color: #ffffff;
    font-size: 22px;
    font-weight: 600;
    text-shadow: 0 6px 20px rgba(15, 23, 42, 0.6);
}

/* Card body */
.dz-flex-wrapper .dz-flex-item .dz-flex-info {
    padding: 24px 26px 26px;
}

.dz-flex-wrapper .dz-flex-item .dz-title {
    font-size: 20px;
    margin-bottom: 8px;
    color: #111827;
}

.dz-flex-wrapper .dz-flex-item .text {
    font-size: 15px;
    line-height: 1.7;
    color: #4b5563;
}

/* Round arrow button inside card */
.dz-flex-wrapper .dz-flex-item .btn-primary {
    background: linear-gradient(135deg, #f1635f, #f89f6f);
    border-color: transparent;
    box-shadow: 0 10px 25px rgba(241, 99, 95, 0.35);
}

.dz-flex-wrapper .dz-flex-item .btn-primary:hover {
    box-shadow: 0 14px 32px rgba(241, 99, 95, 0.45);
    transform: translateY(-1px);
}

/* Hover effect for whole card */
.dz-flex-wrapper .dz-flex-item:hover {
    transform: translateY(-12px);
    box-shadow: 0 22px 60px rgba(15, 23, 42, 0.12);
    border-color: rgba(241, 99, 95, 0.6); /* coral highlight */
}

.dz-flex-wrapper .dz-flex-item:hover .dz-flex-head::before {
    background: linear-gradient(
        135deg,
        rgba(0, 0, 0, 0.30) 0%,
        rgba(0, 0, 0, 0.05) 60%
    );
}

/* Responsive tweaks */
@media (max-width: 767.98px) {
    .services-home-section .section-head.style-3 .title {
        font-size: 30px;
    }

    .dz-flex-wrapper .dz-flex-item .dz-flex-head {
        min-height: 220px;
    }
}/* =========================================
   OUR DIVISIONS – CLEAN CORPORATE STYLE
   ========================================= */

/* Section background + heading */
.services-home-section {
    padding-top: 80px;
    padding-bottom: 90px;
    background: linear-gradient(180deg, #fdf7ef 0%, #ffffff 40%, #f4f6fb 100%);
}

.services-home-section .section-head.style-3 .title {
    font-size: 34px;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: #111827;
    margin-bottom: 6px;
}

.services-home-section .section-head.style-3 .title::after {
    content: "";
    display: block;
    width: 72px;
    height: 3px;
    margin: 18px auto 0;
    border-radius: 999px;
    background: linear-gradient(90deg, #E45C52, #f6a452); /* IFG coral */
}

/* Keep original layout, just make the card look premium */
.services-home-section .dz-flex-wrapper .dz-flex-item {
    border-radius: 24px;
    overflow: hidden;
    background: #ffffff;
    border: 1px solid rgba(148, 163, 184, 0.25);
    box-shadow: 0 16px 40px rgba(15, 23, 42, 0.06);
    transition:
        box-shadow 0.3s ease,
        transform 0.3s ease,
        border-color 0.3s ease;
}

/* Hover / active state – subtle lift */
.services-home-section .dz-flex-wrapper .dz-flex-item:hover,
.services-home-section .dz-flex-wrapper .dz-flex-item.swiper-slide-active {
    transform: translateY(-8px);
    box-shadow: 0 22px 60px rgba(15, 23, 42, 0.12);
    border-color: #E45C52;
}

/* LEFT VERTICAL TABS – keep shape, change to neutral/dark corporate overlay */
.services-home-section .dz-flex-wrapper .dz-flex-head {
    background-size: cover;
    background-position: center;
    position: relative;
}

.services-home-section .dz-flex-wrapper .dz-flex-head::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg,
        rgba(15, 23, 42, 0.85),
        rgba(15, 23, 42, 0.55)
    );
}

/* vertical title inside tab */
.services-home-section .dz-flex-wrapper .dz-flex-head .title {
    color: #ffffff;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

/* MAIN CONTENT (big card on the right) */
.services-home-section .dz-flex-wrapper .dz-flex-info {
    background-color: #ffffff;
    border-radius: 24px;
}

/* big “00 / 01 / 02” number in background – lighter, more corporate */
.services-home-section .dz-flex-wrapper .dz-flex-info::before {
    color: #e5e7eb;
    opacity: 0.7;
}

/* title & text inside card */
.services-home-section .dz-flex-wrapper .dz-flex-info .dz-title {
    font-size: 22px;
    font-weight: 600;
    color: #111827;
}

.services-home-section .dz-flex-wrapper .dz-flex-info .text {
    font-size: 15px;
    line-height: 1.7;
    color: #4b5563;
}
/* ===== IFG INTRO TEXT – CLEAN CORPORATE ===== */

/* Keep same background colour as the rest of that area */
section.pt-5.bg-light {
    padding-top: 56px;
    padding-bottom: 40px;
    background-color: #fdf4e5; /* your existing beige */
    box-shadow: none;
}

/* No card, no shadow – just nicely constrained text */
section.pt-5.bg-light .info-content {
    max-width: 960px;
    margin: 0 auto;
    padding: 0;
    background: none;
}

/* Remove any decorative before/after from theme */
section.pt-5.bg-light .section-head.style-1 {
    margin-bottom: 0;
    text-align: left;
}
section.pt-5.bg-light .section-head.style-1::before,
section.pt-5.bg-light .section-head.style-1::after {
    display: none;
}

/* Main paragraph */
section.pt-5.bg-light .section-head.style-1 h2 {
    font-size: 18px;
    line-height: 1.8;
    font-weight: 400;
    color: #1f2933;          /* dark grey, not pure black */
    margin: 0;
}

/* Highlight only the company name */
section.pt-5.bg-light .section-head.style-1 .brand-name {
    font-weight: 600;
    color: #E45C52;          /* your logo coral */
}

/* Center text on mobile, left on desktop */
@media (max-width: 991.98px) {
    section.pt-5.bg-light .section-head.style-1 h2 {
        text-align: center;
    }
}
@media (min-width: 992px) {
    section.pt-5.bg-light .section-head.style-1 h2 {
        text-align: left;
    }
}
/* ================================
   IFG INTRO – PREMIUM MICRO INTERACTIONS
   ================================ */

/* Fade-in + Slide Up on Load */
.ifg-intro {
    opacity: 0;
    transform: translateY(10px);
    transition: opacity 0.8s ease, transform 0.8s ease;
}

.ifg-intro.visible {
    opacity: 1;
    transform: translateY(0);
}

/* Soft Corporate Hover Background */
.ifg-intro:hover {
    background: rgba(228, 92, 82, 0.05);   /* very soft brand tint */
    border-radius: 8px;
    padding: 4px 8px;
    transition: background 0.4s ease;
}

/* Animated Underline for Brand Name */
.ifg-highlight {
    position: relative;
    cursor: default;
}

.ifg-highlight::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -3px;
    width: 0%;
    height: 2px;
    background-color: #E45C52;  /* IFG coral color */
    transition: width 0.4s ease;
}

.ifg-highlight:hover::after {
    width: 100%;
}
/* Reusable section heading (same as Our Divisions) */
.section-heading {
    text-align: center;
    font-size: 42px;
    font-weight: 700;
    color: #000;
    letter-spacing: 0.5px;
    margin-bottom: 25px;
    position: relative;
}

.section-heading::after {
    content: "";
    display: block;
    width: 60px;
    height: 3px;
    background-color: #E45C52; /* IFG Coral */
    margin: 12px auto 0 auto;
    border-radius: 2px;
}
/* ---------- Global section titles (About Us, Our Divisions, Our Products, etc.) ---------- */

.section-head.style-3 {
    margin-bottom: 40px;
}

.section-head.style-3 .title {
    font-size: 42px;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: #111827;             /* dark corporate text */
    position: relative;
    display: inline-block;
}

/* Thin line + small capsule accent under title */
.section-head.style-3 .title::after {
    content: "";
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: -18px;
    width: 110px;
    height: 2px;
    background: linear-gradient(90deg, #f9735b, #fbbf77);
}

.section-head.style-3 .title::before {
    content: "";
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: -23px;
    width: 26px;
    height: 6px;
    border-radius: 999px;
    background: #fff;
    box-shadow: 0 0 0 1px rgba(0,0,0,0.04);
}

/* Subtle hover/scroll interaction */
.section-head.style-3 .title:hover {
    letter-spacing: 0.09em;
    transform: translateY(-1px);
    transition: all 0.25s ease;
}
/* =====================================================
   UNIFIED STYLE FOR BIG SECTION HEADINGS
   (ABOUT US, OUR DIVISONS, etc.)
   ===================================================== */

.section-head.style-3 .title {
    font-size: 48px !important;
    line-height: 1.2 !important;
    font-weight: 700 !important;
    letter-spacing: 0.18em !important;
    text-transform: uppercase !important;
    color: #111827 !important;
    position: relative !important;
    display: inline-block !important;
}

/* underline */
.section-head.style-3 .title::after {
    content: "" !important;
    position: absolute !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    bottom: -18px !important;
    width: 110px !important;
    height: 2px !important;
    background: linear-gradient(90deg, #f9735b, #fbbf77) !important;
}

/* small white capsule */
.section-head.style-3 .title::before {
    content: "" !important;
    position: absolute !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    bottom: -23px !important;
    width: 26px !important;
    height: 6px !important;
    border-radius: 999px !important;
    background: #ffffff !important;
    box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.05) !important;
}
.section-head.text-left,
.section-head {
    text-align: center !important;
}
.global-brand-title {
    text-align: center !important;
    width: 100%;
}
.brand-strip-center {
    width: 100%;
    text-align: center;
}

.brand-strip-center .brand-strip-label {
    display: block;
    text-align: center;
}

.brand-strip-center .brand-strip-title {
    text-align: center;
}
/* ===============================
   CORPORATE FOOTER REFINEMENT
   =============================== */

/* Main footer background + text */
.site-footer.style-2.footer-dark {
    background-color: #07121e;          /* deeper, more corporate navy */
    background-image: radial-gradient(circle at top left, #12325d 0, #07121e 55%, #020712 100%);
    color: #c9d6f2;
}

/* Logo area spacing */
.site-footer.style-2 .footer-head .fh-inner {
    padding-top: 32px;
    padding-bottom: 16px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

/* Footer titles – cleaner corporate look */
.site-footer.style-2 .footer-title {
    font-size: 18px;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: #ffffff;
    margin-bottom: 18px;
}

/* Soft divider under titles */
.site-footer.style-2 .footer-title::after {
    content: "";
    display: block;
    width: 40px;
    height: 2px;
    margin-top: 10px;
    background: linear-gradient(90deg, #f9735b, #fbbf77);
}

/* Footer top spacing */
.site-footer.style-2 .footer-top {
    padding: 40px 0 20px;
}

/* Newsletter text */
.site-footer.style-2 .widget_about p {
    color: #c9d6f2;
    font-size: 14px;
    max-width: 260px;
}

/* Newsletter input + button */
.site-footer.style-2 .widget_about .form-control.form-btn-square {
    border-radius: 999px 0 0 999px;
    border: 1px solid rgba(255, 255, 255, 0.16);
    background-color: rgba(4, 15, 35, 0.8);
    color: #e5ecff;
    font-size: 14px;
}

.site-footer.style-2 .widget_about .form-control::placeholder {
    color: #8c9ac4;
    font-size: 13px;
}

.site-footer.style-2 .widget_about .input-group-addon .btn {
    border-radius: 0 999px 999px 0;
    background: linear-gradient(90deg, #f9735b, #fbbf77);
    border: none;
}

/* Link lists */
.site-footer.style-2 .widget_services ul li {
    margin-bottom: 6px;
}

.site-footer.style-2 .widget_services ul li a {
    font-size: 14px;
    color: #c9d6f2;
    text-decoration: none;
    transition: color 0.2s ease, transform 0.2s ease;
}

.site-footer.style-2 .widget_services ul li a span {
    border-bottom: 1px solid transparent;
    transition: border-color 0.2s ease;
}

.site-footer.style-2 .widget_services ul li a:hover {
    color: #ffffff;
    transform: translateX(2px);
}

.site-footer.style-2 .widget_services ul li a:hover span {
    border-color: rgba(249, 115, 91, 0.7);
}

/* Contact / address text */
.site-footer.style-2 .widget-address li,
.site-footer.style-2 .widget-address li span {
    color: #d0dcff;
    font-size: 14px;
}

/* Footer bottom */
.site-footer.style-2 .footer-bottom {
    background: rgba(0, 0, 0, 0.15);
}

.site-footer.style-2 .fb-inner {
    border-top: 1px solid rgba(255, 255, 255, 0.08);
    padding: 15px 0;
    font-size: 14px;
}

.site-footer.style-2 .fb-inner .copyright-text {
    opacity: 0.9;
}

/* Remove playful heart if it ever shows */
footer .footer-bottom .heart {
    display: none !important;
}

/* Mobile tweaks */
@media (max-width: 991px) {
    .site-footer.style-2 .footer-top {
        padding: 30px 0 10px;
    }
    .site-footer.style-2 .fb-inner {
        text-align: center;
        font-size: 13px;
    }
}
/* NEWS & EVENTS SECTION */
.news-events-section {
    background: #fdf4e5; /* same beige as other sections */
}

.news-events-feed {
    display: flex;
    justify-content: center;
}

.news-events-feed .fb-page,
.news-events-feed iframe {
    width: 100% !important;
    max-width: 600px !important;
}
#news-events .fb-page {
    margin: 0 auto;
    max-width: 1000px;
}
.fb-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 30px;
}

.fb-card {
    background: white;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 6px 20px rgba(0,0,0,0.08);
    transition: 0.3s;
}

.fb-card:hover {
    transform: translateY(-5px);
}

.fb-img {
    width: 100%;
    height: 240px;
    object-fit: cover;
}

.fb-text {
    padding: 20px;
}

.fb-text p {
    font-size: 16px;
    color: #333;
}

.fb-text a {
    color: #ec6f66;
    font-weight: 600;
    text-decoration: none;
}

.fb-text a:hover {
    text-decoration: underline;
}
.fb-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 30px;
}

.fb-card { /* ... */ }
.fb-img { /* ... */ }
.fb-text { /* ... */ }
``` :contentReference[oaicite:1]{index=1}  
/* Reduce section title size across homepage */
.section-head .title,
.section-head.style-1 .title,
.section-head.style-2 .title,
.section-head.style-3 .title {
    font-size: 40px !important;
    line-height: 1.2 !important;
}

@media (max-width: 992px) {
    .section-head .title {
        font-size: 34px !important;
    }
}

@media (max-width: 576px) {
    .section-head .title {
        font-size: 28px !important;
    }
}
/* Slider title animation */
@keyframes sliderTextFadeUp {
    0% {
        opacity: 0;
        transform: translateY(25px);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

.slider-title-animate {
    animation: sliderTextFadeUp 0.9s ease-out forwards;
    opacity: 0; /* so animation begins properly */
}
/* ============================
   Testimonials
   ============================ */

.testimonials {
    padding: 90px 0;
    background: #fff6ea; /* same cream tone as other sections */
}

.testimonials .section-head .title {
    /* will sit nicely with your 40px heading size */
    font-size: 40px;
    letter-spacing: 0.16em;
}

/* Grid layout */
.testimonials-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 32px;
    margin-top: 40px;
}

@media (max-width: 991.98px) {
    .testimonials-grid {
        grid-template-columns: 1fr;
    }
}

/* Card */
.testimonial-card {
    position: relative;
    background: #ffffff;
    border-radius: 24px;
    padding: 32px 28px 30px;
    box-shadow: 0 20px 45px rgba(14, 31, 53, 0.08);
    overflow: hidden;
    transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.testimonial-card::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, rgba(244, 107, 91, 0.06), rgba(12, 34, 64, 0.02));
    opacity: 0;
    transition: opacity 0.25s ease;
}

.testimonial-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 26px 60px rgba(14, 31, 53, 0.14);
}

.testimonial-card:hover::before {
    opacity: 1;
}

/* quote icon in corner */
.testimonial-card::after {
    content: "“";
    position: absolute;
    right: 26px;
    top: 16px;
    font-size: 70px;
    font-weight: 700;
    color: rgba(12, 34, 64, 0.06);
    pointer-events: none;
}

/* Header (logo + stars) */
.tc-header {
    position: relative;
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 20px;
    z-index: 1;
}

.tc-logo img {
    width: 70px;
    max-height: 70px;
    object-fit: contain;
    filter: drop-shadow(0 6px 12px rgba(0, 0, 0, 0.08));
}

.tc-meta {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.tc-stars {
    font-size: 14px;
    letter-spacing: 2px;
    color: #ffb347; /* warm star colour */
}

.tc-company {
    margin: 0;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    color: #7c889a;
}

/* Quote text */
.tc-quote {
    position: relative;
    z-index: 1;
    font-size: 15px;
    line-height: 1.7;
    color: #1b2635;
    margin-bottom: 26px;
}

/* Footer (name + role) */
.tc-footer {
    position: relative;
    z-index: 1;
    border-top: 1px solid rgba(15, 32, 62, 0.06);
    padding-top: 16px;
}

.tc-name {
    font-weight: 600;
    font-size: 15px;
    color: #0c223f;
    margin-bottom: 4px;
}

.tc-role {
    font-size: 13px;
    color: #8b94a4;
    margin-bottom: 0;
}
/* ============================
   Partner CTA
   ============================ */

.ifg-cta {
    background: #ffffff;
    padding: 80px 0;
}

@media (max-width: 991.98px) {
    .ifg-cta {
        padding: 60px 0;
    }
}

.ifg-cta-image img {
    width: 80%;
    border-radius: 24px;
    display: block;
    box-shadow: 0 28px 60px rgba(14, 31, 53, 0.18);
    object-fit: cover;
}

/* Text side */
.ifg-cta-content {
    max-width: 520px;
    margin-left: auto;
    margin-right: auto;
}

.ifg-cta-title {
    font-size: 30px;              /* same as other main headings */
    font-weight: 700;
    letter-spacing: 0.06em;
    line-height: 1.25;
    color: #081323;
    margin-bottom: 22px;
}

.ifg-cta-body {
    font-size: 15px;
    line-height: 1.8;
    color: #4b5665;
    margin-bottom: 26px;
}

/* Button tweaks so it feels like the rest of the site */
.ifg-cta-btn {
    padding: 10px 32px;
    border-radius: 999px;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    background: #f46b5b;              /* your coral tone */
    border-color: #f46b5b;
}

.ifg-cta-btn:hover,
.ifg-cta-btn:focus {
    background: #e65041;
    border-color: #e65041;
}

/* Center text on mobile */
@media (max-width: 991.98px) {
    .ifg-cta-content {
        text-align: center;
    }

    .ifg-cta-title {
        font-size: 32px;
    }
}
/* =========================
   ABOUT PAGE
   ========================= */
.about-page {
    background: #fff7ec; /* matches your home beige */
}

.about-intro-row {
    margin-top: 1rem;
}

.about-badge {
    display: inline-block;
    font-size: 12px;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: #8b8f9a;
    margin-bottom: 0.75rem;
}

.about-subtitle {
    font-size: 28px;
    font-weight: 600;
    color: #0c1630;
    margin-bottom: 0.75rem;
}

.about-lead {
    font-size: 16px;
    line-height: 1.7;
    color: #4d5565;
    margin-bottom: 0;
}

.about-highlight-box {
    background: #ffffff;
    border-radius: 24px;
    padding: 24px 28px;
    box-shadow: 0 18px 40px rgba(12, 22, 48, 0.08);
    border: 1px solid rgba(255, 124, 92, 0.15); /* subtle orange border */
    font-size: 10px;
    line-height: 1.8;
    color: #4d5565;
}

/* Mission / Vision cards */
.about-mission-vision {
    background: linear-gradient(180deg, #fff7ec 0%, #ffffff 100%);
}

.about-card {
    background: #ffffff;
    border-radius: 24px;
    padding: 28px 30px;
    box-shadow: 0 18px 40px rgba(12, 22, 48, 0.06);
    border: 1px solid rgba(12, 22, 48, 0.04);
    height: 100%;
    position: relative;
    overflow: hidden;
}

.about-card::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, rgba(255, 124, 92, 0.08), transparent);
    opacity: 0;
    transition: opacity 0.25s ease;
}

.about-card:hover::before {
    opacity: 1;
}

.about-card-label {
    display: inline-block;
    font-size: 12px;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: #ff7c5c;
    margin-bottom: 0.5rem;
}

.about-card-title {
    font-size: 20px;
    font-weight: 600;
    color: #0c1630;
    margin-bottom: 0.75rem;
}

.about-card p {
    position: relative;
    z-index: 1;
    font-size: 15px;
    line-height: 1.8;
    color: #4d5565;
}

/* CTA section reused across pages */
.about-cta-section {
    background: #041127;
    color: #ffffff;
}

.about-cta-wrapper {
    border-radius: 28px;
    padding: 32px 32px;
    background: radial-gradient(circle at top left, #ff7c5c 0%, #041127 45%, #020816 100%);
}

.about-cta-title {
    font-size: 22px;
    font-weight: 600;
    margin-bottom: 0.5rem;
}

.about-cta-text {
    margin-bottom: 0;
    opacity: 0.85;
}

.about-cta-section .btn-primary {
    background: #ffffff;
    color: #041127;
    border-color: #ffffff;
    padding-inline: 32px;
    border-radius: 999px;
    font-weight: 500;
}

.about-cta-section .btn-primary:hover {
    background: #ff7c5c;
    border-color: #ff7c5c;
    color: #ffffff;
}
.about-hero-img {
    width: 100%;
    border-radius: 22px;
    box-shadow: 0 20px 45px rgba(0,0,0,0.12);
}

.about-card-img {
    width: 100%;
    border-radius: 20px;
    box-shadow: 0 15px 40px rgba(0,0,0,0.10);
}

.about-card {
    background: #fff;
    border-radius: 24px;
    position: relative;
    box-shadow: 0 15px 40px rgba(0,0,0,0.06);
}

.about-card-bg {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0.07;
    border-radius: 24px;
    inset: 0;
    z-index: 0;
}

.about-card > * {
    position: relative;
    z-index: 2;
}
/* === About hero overall layout === */
.about-hero {
    padding: 80px 0;
}

.about-hero .container {
    max-width: 1200px;           /* keep it same width as other sections */
}

/* Make text breathe a bit more */
.about-hero .about-hero-text {
    padding-right: 40px;
}

/* === Image block – reduce size & make it premium === */
.about-hero-image {
    position: relative;
    height: 440px;               /* FIXED, not full page */
    max-height: 480px;
    border-radius: 24px;
    overflow: hidden;
    background-size: cover;
    background-position: center center;   /* crop nicely */
    box-shadow: 0 24px 60px rgba(15, 23, 42, 0.18);
}

/* Soft dark overlay so white text would also work if needed */
.about-hero-image::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(
        135deg,
        rgba(0, 0, 0, 0.15),
        rgba(0, 0, 0, 0.05)
    );
    pointer-events: none;
}

/* === Responsive tweaks === */
@media (max-width: 991.98px) {
    .about-hero {
        padding: 60px 0;
    }

    .about-hero .about-hero-text {
        padding-right: 0;
        margin-bottom: 28px;
    }

    .about-hero-image {
        height: 320px;
        border-radius: 20px;
    }
}

@media (max-width: 575.98px) {
    .about-hero {
        padding: 50px 0;
    }

    .about-hero-image {
        height: 260px;
        border-radius: 18px;
    }
}
.about-hero-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;   /* crop instead of squashing */
    display: block;
}
/* ========= ABOUT SECTION LAYOUT ========= */
.about-hero {
    padding: 100px 0;
}

/* Ensures text has breathing room */
.about-hero-text {
    padding-right: 50px;
}

/* ========= IMAGE STYLING (HALF HEIGHT) ========= */
.about-hero-img {
    width: 100%;
    height: 390px;            /* 🔥 FINAL VALUE: Half of full-height */
    object-fit: cover;        /* Keeps it clean and cropped properly */
    border-radius: 24px;      /* Soft premium rounding */
    box-shadow: 0 18px 40px rgba(15, 23, 42, 0.12);
    display: block;
}

/* ========= RESPONSIVE ========= */
@media (max-width: 991.98px) {
    .about-hero-text {
        padding-right: 0;
        margin-bottom: 20px;
    }

    .about-hero-img {
        height: 200px;       /* Slightly smaller for tablets */
        border-radius: 18px;
    }
}

@media (max-width: 575.98px) {
    .about-hero-img {
        height: 160px;       /* Mobile-friendly */
        border-radius: 14px;
    }
}
.about-hero-section p {
    margin-top: 18px;      /* creates uniform spacing between heading & text */
    line-height: 1.75;     /* improves readability */
}
/* ===== Generic service sections (Warehousing page) ===== */

.service-hero-section {
    padding: 100px 0;
}

.service-hero-img {
    width: 100%;
    height: 390px;
    object-fit: cover;
    border-radius: 24px;
    box-shadow: 0 18px 40px rgba(15, 23, 42, 0.12);
    display: block;
}

.service-section {
    padding-top: 80px;
    padding-bottom: 80px;
}

/* Feature cards (4 icons row) */

.feature-card {
    background: #ffffff;
    border-radius: 22px;
    padding: 24px 22px 26px;
    box-shadow: 0 18px 40px rgba(15, 23, 42, 0.06);
    height: 100%;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.feature-card h5 {
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    font-size: 0.9rem;
    color: #0f172a;
}

.feature-card p {
    margin-bottom: 0;
    font-size: 0.9rem;
}

/* Round icon circle matching your navy + accent gradient */

.feature-icon {
    width: 44px;
    height: 44px;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 8px;
    background: radial-gradient(circle at 0% 0%, #ff7b55, #0b2340);
    color: #ffffff;
    font-size: 1.1rem;
}

/* Temperature badges */

.temp-badges {
    justify-content: flex-start;
}

.temp-badge {
    border-radius: 999px;
    background: #f3f4f6;
    padding: 8px 18px;
    display: inline-flex;
    align-items: baseline;
    gap: 8px;
    font-size: 0.9rem;
}

.temp-badge .label {
    font-weight: 600;
    color: #111827;
}

.temp-badge .value {
    font-weight: 500;
    color: #ff7b55;   /* matches your underline accent */
}

/* Responsive spacing tweaks */

@media (max-width: 991.98px) {
    .service-hero-section {
        padding: 70px 0;
    }
}

@media (max-width: 575.98px) {
    .service-hero-section {
        padding: 60px 0;
    }
    .service-hero-img {
        height: 260px;
        border-radius: 20px;
    }
}
/* ===== OUR CLIENTS (Premium Card Style — Larger Logos) ===== */

.client-card {
    background: #ffffff;
    border-radius: 22px;
    height: 150px; /* Increased card height */
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 25px;
    box-shadow: 0 14px 35px rgba(15, 23, 42, 0.08);
    transition: all 0.25s ease;
}

/* Bigger logo size */
.client-card img {
    max-width: 100%;
    max-height: 130px; /* Increased from 55px → 90px */
    object-fit: contain;
    filter: grayscale(1);
    opacity: 0.75;
    transition: all 0.25s ease;
}

.client-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 22px 50px rgba(15, 23, 42, 0.18);
}

.client-card:hover img {
    filter: grayscale(0);
    opacity: 1;
}

/* Responsive */
@media (max-width: 767.98px) {
    .client-card {
        height: 130px;
        padding: 20px;
    }

    .client-card img {
        max-height: 70px; /* Mobile resized */
    }
}
/* ========== LAVAZZA PAGE – CLEAN CORPORATE STYLE ========== */

/* Hero */
.lavazza-hero-section {
    padding: 80px 0;
}

.lavazza-label {
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.16em;
    color: #6b7280;
    display: inline-block;
    margin-bottom: 10px;
}

.lavazza-hero-lead {
    font-size: 1.02rem;
    color: #111827;
    margin-bottom: 12px;
}

.lavazza-hero-image {
    border-radius: 24px;
    overflow: hidden;
    box-shadow: 0 24px 60px rgba(15, 23, 42, 0.18);
    height: 380px;
}

.lavazza-hero-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* About block */
.lavazza-about-section {
    padding-top: 60px;
    padding-bottom: 80px;
}

.lavazza-about-media img {
    border-radius: 24px;
}

/* Products */
.lavazza-products-section {
    padding-top: 70px;
    padding-bottom: 90px;
}

.lavazza-product-card {
    background: #ffffff;
    border-radius: 24px;
    padding: 22px 22px 24px;
    box-shadow: 0 18px 40px rgba(15, 23, 42, 0.06);
    height: 100%;
    display: flex;
    flex-direction: column;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.lavazza-product-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 24px 60px rgba(15, 23, 42, 0.12);
}

.lavazza-product-media {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 14px;
}

.lavazza-product-media img {
    max-width: 100%;
    max-height: 140px;
    object-fit: contain;
}

.lavazza-product-title {
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: #0f172a;
    margin-bottom: 10px;
}

.lavazza-product-meta {
    list-style: none;
    padding: 0;
    margin: 0 0 10px 0;
    font-size: 13px;
    color: #4b5563;
}

.lavazza-product-meta li span {
    font-weight: 600;
}

.lavazza-product-text {
    font-size: 13px;
    color: #374151;
    margin-bottom: 0;
}

/* CTA */
.lavazza-cta-section {
    padding-top: 0;
    padding-bottom: 80px;
}

.lavazza-cta-box {
    border-radius: 28px;
    overflow: hidden;
    background: radial-gradient(circle at 0% 0%, #ff7b55, #071b38);
    color: #ffffff;
    box-shadow: 0 24px 60px rgba(15, 23, 42, 0.3);
}

.lavazza-cta-box .dz-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.lavazza-cta-box .title {
    color: #ffffff;
}

.lavazza-cta-box p {
    color: rgba(249, 250, 251, 0.9);
}

/* Responsive tweaks */
@media (max-width: 991.98px) {
    .lavazza-hero-section {
        padding: 60px 0;
    }
    .lavazza-hero-image {
        height: 320px;
        margin-top: 10px;
    }
}

@media (max-width: 575.98px) {
    .lavazza-hero-section {
        padding: 50px 0;
    }
    .lavazza-hero-image {
        height: 260px;
        border-radius: 20px;
    }
    .lavazza-product-card {
        border-radius: 20px;
    }
}
/* ========== LAVAZZA HISTORY SECTION ========== */

.lavazza-history-section {
    padding-top: 70px;
    padding-bottom: 80px;
}

.lavazza-history-card p {
    margin-bottom: 0.85rem;
    color: #374151;
    font-size: 0.95rem;
    line-height: 1.7;
}

.lavazza-history-acquisitions h6 {
    font-size: 0.9rem;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    color: #6b7280;
}

.lavazza-history-acquisitions ul {
    list-style: none;
    padding-left: 0;
    margin: 0 0 0.75rem 0;
}

.lavazza-history-acquisitions ul li {
    position: relative;
    padding-left: 18px;
    font-size: 0.95rem;
    color: #111827;
    margin-bottom: 4px;
}

.lavazza-history-acquisitions ul li::before {
    content: "•";
    position: absolute;
    left: 0;
    top: 0;
    color: #d97757; /* warm accent matching your palette */
}

/* Responsive tweak */
@media (max-width: 991.98px) {
    .lavazza-history-section {
        padding-top: 60px;
        padding-bottom: 60px;
    }
}
/* ===================== BRAND GRID NEW STYLE ===================== */

.brands-section {
    padding: 60px 0 80px;
}

.brand-card {
    background: #ffffff;
    border-radius: 16px;
    padding: 20px 15px;
    text-align: center;
    box-shadow: 0 6px 22px rgba(0,0,0,0.06);
    transition: all 0.3s ease;
    height: 100%;
}

.brand-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 14px 32px rgba(0,0,0,0.12);
}

.brand-card-img {
    height: 110px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 12px;
    padding: 10px;
    border-radius: 14px;
    overflow: hidden;
    background: #f8f8f8;
}

.brand-card-img.white-bg {
    background: #ffffff;
}

.brand-card-img img {
    max-height: 90px;
    object-fit: contain;
    width: auto;
    display: block;
}

.brand-card-title {
    font-size: 16px;
    font-weight: 600;
    margin-top: 6px;
}

.brand-card-title a {
    color: #222;
    text-decoration: none;
    transition: color 0.25s ease;
}

.brand-card-title a:hover {
    color: #d97757; /* warm accent matching your brand */
}
/* ========= DIVISION / FOOD SERVICE HERO (same style as retail/wholesale) ========= */

.division-hero-section {
    padding: 80px 0;
}

.division-label {
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.16em;
    color: #6b7280;
    display: inline-block;
    margin-bottom: 8px;
}

.division-hero-lead {
    font-size: 1.02rem;
    color: #111827;
    margin-bottom: 12px;
}

.division-hero-image {
    border-radius: 24px;
    overflow: hidden;
    box-shadow: 0 24px 60px rgba(15, 23, 42, 0.18);
    height: 380px;
}

.division-hero-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* Specific spacing tuning for Foodservice page if needed */
.foodservice-hero {
    background-color: #f9fafb;
}

/* Responsive */
@media (max-width: 991.98px) {
    .division-hero-section {
        padding: 60px 0;
    }
    .division-hero-image {
        height: 320px;
        margin-top: 10px;
    }
}

@media (max-width: 575.98px) {
    .division-hero-section {
        padding: 50px 0;
    }
    .division-hero-image {
        height: 260px;
        border-radius: 20px;
    }
}
/* ================= HERO ================= */
.contact-hero-section {
    padding: 80px 0;
}

.contact-hero-image {
    border-radius: 24px;
    overflow: hidden;
    height: 380px;
    box-shadow: 0 24px 60px rgba(15, 23, 42, 0.18);
}

.contact-hero-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* ================= CONTACT CARDS ================= */
.contact-card {
    border-radius: 22px;
    padding: 25px;
    box-shadow: 0 20px 45px rgba(0,0,0,0.06);
    transition: 0.3s ease;
}

.contact-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 28px 60px rgba(0,0,0,0.08);
}

/* ================= FAQ ================= */
.faq-card {
    background: #fff;
    padding: 25px;
    border-radius: 18px;
    margin-bottom: 18px;
    box-shadow: 0 15px 40px rgba(0,0,0,0.05);
}

.faq-card h5 {
    margin-bottom: 8px;
    font-weight: 600;
}

/* Responsive */
@media (max-width: 991.98px) {
    .contact-hero-section { padding: 60px 0; }
    .contact-hero-image { height: 300px; }
}

@media (max-width: 575.98px) {
    .contact-hero-section { padding: 40px 0; }
    .contact-hero-image { height: 240px; }
}
/* ========== COMMON INQUIRIES – ACCORDION STYLE ========== */

.faq-section {
    padding-top: 60px;
    padding-bottom: 70px;
}

.faq-accordion {
    max-width: 900px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

/* Remove default marker */
.faq-item summary {
    list-style: none;
}

.faq-item summary::-webkit-details-marker {
    display: none;
}

/* Summary (question row) */
.faq-item summary {
    cursor: pointer;
    background: #ffffff;
    border-radius: 16px;
    padding: 14px 18px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    box-shadow: 0 12px 30px rgba(15,23,42,0.06);
    border: 1px solid rgba(148,163,184,0.3);
    transition: all 0.2s ease;
}

.faq-item summary span {
    font-size: 0.96rem;
    font-weight: 500;
    color: #0f172a;
    padding-right: 16px;
}

/* Icon */
.faq-item summary i {
    font-size: 16px;
    color: #6b7280;
    transition: transform 0.2s ease, color 0.2s ease;
}

/* Answer */
.faq-answer {
    padding: 0 18px 12px 18px;
}

.faq-answer p {
    margin: 8px 0 0 0;
    font-size: 0.9rem;
    color: #4b5563;
}

/* Hover */
.faq-item summary:hover {
    box-shadow: 0 16px 40px rgba(15,23,42,0.1);
    border-color: #d97757;
}

/* When open: rotate arrow & stronger border */
.faq-item[open] summary i {
    transform: rotate(180deg);
    color: #d97757;
}

.faq-item[open] summary {
    border-color: #d97757;
}
    
/* Mobile */
@media (max-width: 575.98px) {
    .faq-section {
        padding-top: 40px;
        padding-bottom: 50px;
    }
    .faq-item summary span {
        font-size: 0.9rem;
    }
}
/* ---------- PRODUCTS PAGE CUSTOM STYLES ---------- */

/* Hero section */
.shop-hero {
    padding: 90px 0 70px;
    background: #fdf5ec; /* beige tone like rest of site */
}

.shop-hero .title {
    font-size: 42px;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: #041123;
    margin-bottom: 18px;
}

.shop-hero .hero-kicker {
    display: inline-block;
    width: 90px;
    height: 3px;
    border-radius: 999px;
    background: linear-gradient(90deg, #ff7a3c, #f6b555);
    margin-bottom: 26px;
}

.shop-hero p {
    font-size: 16px;
    line-height: 1.7;
    color: #4b5670;
    max-width: 560px;
}

.shop-hero-image {
    border-radius: 28px;
    overflow: hidden;
    box-shadow: 0 26px 70px rgba(15, 23, 42, 0.18);
    background: #0b1630;
}

.shop-hero-image img {
    width: 100%;
    height: 360px;
    object-fit: cover;
    display: block;
}

@media (max-width: 991.98px) {
    .shop-hero {
        padding: 70px 0 50px;
    }

    .shop-hero-image img {
        height: 280px;
    }
}

@media (max-width: 575.98px) {
    .shop-hero {
        padding: 60px 0 40px;
    }

    .shop-hero .title {
        font-size: 32px;
        letter-spacing: 0.14em;
    }
}

/* Filter / search bar */
.product-toolbar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 30px;
}

.product-toolbar .toolbar-left {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.filter-pill {
    border-radius: 999px;
    border: 1px solid rgba(15, 23, 42, 0.08);
    background: #ffffff;
    padding: 6px 16px;
    font-size: 13px;
    font-weight: 500;
    color: #4b5670;
    cursor: pointer;
    transition: all 0.2s ease;
}

.filter-pill.active,
.filter-pill:hover {
    background: #041123;
    color: #ffffff;
    border-color: #041123;
}

.product-toolbar .search-box {
    position: relative;
    min-width: 220px;
}

.product-toolbar .search-box input {
    border-radius: 999px;
    border: 1px solid rgba(15, 23, 42, 0.12);
    padding: 8px 38px 8px 16px;
    font-size: 13px;
}

.product-toolbar .search-box i {
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 15px;
    color: #9aa3b8;
}

/* Product cards */
.product-card {
    background: #ffffff;
    border-radius: 22px;
    box-shadow: 0 18px 48px rgba(15, 23, 42, 0.09);
    overflow: hidden;
    height: 100%;
    display: flex;
    flex-direction: column;
    transition: transform 0.2s ease, box-shadow 0.2s ease, translate 0.2s ease;
}

.product-card .dz-media {
    overflow: hidden;
    border-bottom: 1px solid rgba(15, 23, 42, 0.03);
    background: #f8fafc;
}

.product-card .dz-media img {
    width: 100%;
    height: 230px;
    object-fit: contain;
    padding: 20px 24px 10px;
    transition: transform 0.25s ease;
}

.product-card .dz-info {
    padding: 18px 20px 18px;
}

.product-card .dz-title {
    font-size: 15px;
    font-weight: 600;
    color: #041123;
    margin-bottom: 6px;
}

.product-card .dz-meta {
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.16em;
    color: #9aa3b8;
    margin-bottom: 8px;
}

.product-card .dz-text {
    font-size: 13px;
    color: #4b5670;
    margin-bottom: 10px;
}

.product-card .btn-link {
    font-size: 13px;
    font-weight: 500;
}

.product-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 26px 70px rgba(15, 23, 42, 0.14);
}

.product-card:hover .dz-media img {
    transform: scale(1.05);
}

/* Small category label */
.product-tag {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    padding: 2px 10px;
    font-size: 11px;
    font-weight: 500;
    background: rgba(4, 17, 35, 0.04);
    color: #4b5670;
    margin-bottom: 6px;
}
.section-head.style-3 h2.title {
    font-size: 30px !important;   /* change size here */
    line-height: 1.2 !important;
}
/* 3D-style highlight box for IFG text */
.ifg-highlight-box {
    background: #ffffff;
    border-radius: 24px;
    padding: 24px 28px;
    border: 1px solid rgba(0, 0, 0, 0.04);
    box-shadow: 0 18px 45px rgba(0, 0, 0, 0.06);
    position: relative;
}

/* subtle depth layer */
.ifg-highlight-box::before {
    content: "";
    position: absolute;
    inset: 10px -8px -8px 8px;
    border-radius: 26px;
    background: rgba(255, 255, 255, 0.6);
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.03);
    z-index: -1;
}

/* text inside the box – slightly smaller */
.ifg-standard-text {
    font-size: 18px;
    line-height: 1.7;
    margin: 0;
}

/* keep IFG in brand red */
.ifg-standard-text .brand-name {
    color: #d7263d;      /* match your existing red */
    font-weight: 600;
}
/* Make testimonial cards same height and align footer */
.testimonial-card {
    display: flex;
    flex-direction: column;
    height: 100%;
}

.testimonial-card .tc-quote {
    flex-grow: 1; /* This makes the text area expand equally */
}

/* Footer always stays aligned at bottom */
.testimonial-card .tc-footer {
    margin-top: auto;
}
/* Certification Card – Logo Only */
.certification-card {
    background: #ffffff;
    border-radius: 24px;
    padding: 40px;
    box-shadow: 0 20px 45px rgba(0, 0, 0, 0.06);
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Logo container */
.certification-logo {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.certification-logo img {
    max-width: 120px;      /* Adjust logo size if needed */
    max-height: 120px;     /* Ensures it stays clean */
    object-fit: contain;
}
/* Full certification card (logo + text) */
.certification-card {
    background: #ffffff;
    border-radius: 24px;
    padding: 32px;
    box-shadow: 0 20px 45px rgba(0, 0, 0, 0.06);
    height: 100%;
    display: flex;
    flex-direction: column;
}

/* Logo container */
.certification-logo {
    width: 150px;        /* increase size */
    height: 150px;
    border-radius: 16px;
    background: #ffffff; /* cleaner background for certification logos */
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 20px;
    overflow: hidden;
    padding: 10px;       /* prevents edges from touching border */
}

/* Logo fills more space */
.certification-logo img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}


/* Title styling (matches existing bold titles) */
.certification-card .feature-title {
    font-weight: 700;
    font-size: 16px;
    margin-bottom: 12px;
}

/* Description styling */
.certification-card .feature-text {
    color: #666;
    font-size: 14px;
    line-height: 1.6;
}
/* Center all content inside the certification card */
.certification-card {
    text-align: center;
}

/* Makes the title look balanced under the logo */
.certification-card .feature-title {
    margin-left: auto;
    margin-right: auto;
}

/* Same for the description */
.certification-card .feature-text {
    margin-left: auto;
    margin-right: auto;
}
.merged-card {
    background: #ffffff;
    border-radius: 20px;
    padding: 40px;
    box-shadow: 0 15px 40px rgba(0,0,0,0.06);
    margin-top: 30px;
}

/* IMAGE BOX */
.freezer-img-box img {
    width: 100%;
    max-width: 280px;
    border-radius: 12px;
    object-fit: cover;
}

/* TITLES */
.section-title {
    font-size: 24px;
    font-weight: 700;
    color: #111;
}

.section-subtitle {
    font-size: 20px;
    font-weight: 700;
    margin-top: 25px;
}

/* DESCRIPTION TEXT */
.section-desc {
    color: #555;
    font-size: 15px;
    line-height: 1.7;
    max-width: 500px;
}

/* TEMPERATURE BADGES */
.temperature-tags {
    margin-top: 15px;
}

.temp-badge {
    display: inline-block;
    background: #f7f7f7;
    padding: 10px 20px;
    border-radius: 30px;
    margin-right: 10px;
    margin-bottom: 10px;
    font-size: 14px;
    color: #333;
    box-shadow: 0 3px 8px rgba(0,0,0,0.05);
}
.merged-card {
    background: #ffffff;
    border-radius: 20px;
    padding: 40px;
    box-shadow: 0 15px 40px rgba(0,0,0,0.06);
    margin-top: 30px;
}

.freezer-img-box img {
    width: 100%;
    max-width: 380px;      /* increased from 280px */
    border-radius: 12px;
    object-fit: cover;
}

.section-title {
    font-size: 24px;
    font-weight: 700;
}

.section-subtitle {
    font-size: 20px;
    font-weight: 700;
    margin-top: 25px;
}

.section-desc {
    color: #555;
    font-size: 15px;
    line-height: 1.7;
}

.temperature-tags {
    margin-top: 15px;
}

.temp-badge {
    display: inline-block;
    background: #f7f7f7;
    padding: 10px 20px;
    border-radius: 30px;
    margin-right: 10px;
    margin-bottom: 10px;
    font-size: 14px;
    color: #333;
    box-shadow: 0 3px 8px rgba(0,0,0,0.05);
}
/* Wrapper card */
.cold-storage-card {
    background: #ffffff;
    border-radius: 24px;
    padding: 40px 40px 32px;
    box-shadow: 0 18px 45px rgba(0, 0, 0, 0.06);
}

/* Left text */
.cs-title {
    font-size: 24px;
    font-weight: 700;
    margin-bottom: 10px;
}

.cs-subtitle {
    font-size: 18px;
    font-weight: 700;
    margin-top: 22px;
    margin-bottom: 8px;
}

.cs-text {
    font-size: 15px;
    line-height: 1.7;
    color: #555;
    max-width: 540px;
}

/* Right column – interactive temp cards */
.temp-zones-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 16px;
}

.temp-zone-item {
    background: #f8f8fb;
    border-radius: 18px;
    padding: 16px 18px 14px;
    transition: all 0.25s ease;
    cursor: default;
}

.temp-zone-item:hover {
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.08);
    transform: translateY(-3px);
    background: #ffffff;
}

/* Header row inside each chip */
.temp-zone-header {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    margin-bottom: 8px;
}

.temp-label {
    font-weight: 700;
    font-size: 14px;
    color: #182031;
}

.temp-value {
    font-size: 13px;
    font-weight: 500;
    color: #ff7d6b;
}

/* Colored bar for visual temperature band */
.temp-bar {
    height: 5px;
    border-radius: 999px;
    margin-bottom: 8px;
    background: #e5e5ef;
}

.temp-bar.frozen {
    background: linear-gradient(90deg, #4f8cff, #9fd6ff);
}

.temp-bar.chilled {
    background: linear-gradient(90deg, #4fc3f7, #a5f3fc);
}

.temp-bar.ambient {
    background: linear-gradient(90deg, #ffb74d, #ffe082);
}

.temp-note {
    font-size: 13px;
    color: #747a89;
    margin: 0;
}

/* Responsive tweaks */
@media (max-width: 991.98px) {
    .cold-storage-card {
        padding: 28px 20px 24px;
    }
}
/* Corporate card box */
.cold-storage-card {
    background: #ffffff;
    border-radius: 24px;
    padding: 40px 40px 32px;
    box-shadow: 0 18px 45px rgba(0, 0, 0, 0.08);
}

/* Left Text Area */
.cs-title {
    font-size: 26px;
    font-weight: 700;
    margin-bottom: 10px;
}

.cs-subtitle {
    font-size: 18px;
    font-weight: 700;
    margin-top: 25px;
    margin-bottom: 10px;
}

.cs-text {
    font-size: 15px;
    line-height: 1.7;
    color: #444;
}

/* Temperature cards */
.temp-zones-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 16px;
    margin-top: 12px;
}

.temp-zone-item {
    background: #f8f8fb;
    border-radius: 18px;
    padding: 16px 18px;
    transition: all 0.25s ease;
}

.temp-zone-item:hover {
    background: #ffffff;
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.08);
    transform: translateY(-3px);
}

/* Header row */
.temp-zone-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.temp-label {
    font-weight: 700;
}

.temp-value {
    color: #ff7d6b;
    font-weight: 600;
}

/* Temperature bar indicators */
.temp-bar {
    height: 5px;
    border-radius: 30px;
    margin: 8px 0;
}

.temp-bar.frozen {
    background: linear-gradient(90deg, #4f8cff, #9fd6ff);
}
.temp-bar.chilled {
    background: linear-gradient(90deg, #4fc3f7, #a5f3fc);
}
.temp-bar.ambient {
    background: linear-gradient(90deg, #ffb74d, #ffe082);
}

.temp-note {
    font-size: 13px;
    color: #777;
}

/* Image section */
.cold-storage-image img {
    width: 100%;
    border-radius: 20px;
    object-fit: cover;
    box-shadow: 0 10px 25px rgba(0,0,0,0.12);
}
.fb-card {
    background: #ffffff;
    border-radius: 20px;
    padding: 20px;
    box-shadow: 0 10px 25px rgba(0,0,0,0.07);
    height: 100%;
    display: flex;
    flex-direction: column;
}

/* Image stays at top */
.fb-img {
    width: 100%;
    border-radius: 16px;
    margin-bottom: 18px;
}

/* Text area expands to fill space */
.fb-text {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}

/* Push the Facebook link to the bottom */
.fb-text a {
    margin-top: auto;       /* <— THIS aligns all links */
    font-weight: 600;
    color: #e85d5d;
    text-decoration: none;
}

.fb-text a:hover {
    color: #c94a4a;
}
/* Card look */
.product-search-card {
    border-radius: 24px;
    padding: 22px 22px 18px;
    box-shadow: 0 18px 45px rgba(0, 0, 0, 0.06);
    background: #ffffff;
}

/* Intro pills */
.product-pills {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 18px;
}

.product-pills .pill {
    border: none;
    padding: 6px 14px;
    font-size: 13px;
    border-radius: 999px;
    background: #f4f5fb;
    color: #333;
    cursor: pointer;
    transition: background 0.2s ease, color 0.2s ease, box-shadow 0.2s ease;
}

.product-pills .pill.active,
.product-pills .pill:hover {
    background: #151b2c;
    color: #fff;
    box-shadow: 0 8px 18px rgba(0, 0, 0, 0.12);
}

/* Search bar */
.product-search-form .search-wrapper {
    position: relative;
    margin-top: 10px;
}

.product-search-form .form-control {
    border-radius: 999px;
    padding: 10px 40px 10px 38px;
    border: 1px solid #e0e2ee;
    font-size: 14px;
    transition: box-shadow 0.2s ease, border-color 0.2s ease;
}

.product-search-form .form-control:focus {
    border-color: #ff7d6b;
    box-shadow: 0 0 0 3px rgba(255, 125, 107, 0.15);
    outline: none;
}

.search-icon {
    position: absolute;
    left: 12px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 16px;
    color: #999;
}

.clear-btn {
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    border: none;
    background: transparent;
    color: #b0b4c3;
    cursor: pointer;
    padding: 0;
    display: none;
}

.clear-btn i {
    font-size: 16px;
}

/* Outer container */
.product-search-box {
    background: transparent;
    padding: 20px 24px 10px;
}

/* Title */
.product-search-box .title {
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 10px;
}

/* Shell around input – this is what animates */
.psb-wrapper {
    position: relative;
    border-radius: 999px;
    background: #ffffff;
    border: 1px solid #dde1ee;
    box-shadow: 0 4px 14px rgba(15, 23, 42, 0.06);
    transition: border-color 0.25s ease, box-shadow 0.25s ease,
                transform 0.25s ease;
    display: flex;
    align-items: center;
    padding-inline: 14px;
}

/* Icon */
.psb-icon {
    color: #9ca3b5;
    font-size: 18px;
    margin-right: 6px;
    transition: color 0.25s ease, transform 0.25s ease;
}

/* Input */
.psb-input {
    border: none;
    outline: none;
    width: 100%;
    padding: 12px 0;
    font-size: 14px;
    color: #0f172a;
    background: transparent;
}

/* Placeholder style */
.psb-input::placeholder {
    color: #9ca3b5;
}

/* Hover state */
.psb-wrapper:hover {
    box-shadow: 0 10px 26px rgba(15, 23, 42, 0.12);
    transform: translateY(-1px);
}

/* Focus state – when input is active */
.psb-wrapper:focus-within {
    border-color: #ff7d6b;
    box-shadow: 0 0 0 2px rgba(255, 125, 107, 0.2);
    transform: translateY(-2px);
}

.psb-wrapper:focus-within .psb-icon {
    color: #ff7d6b;
    transform: translateY(-1px);
}
/* Feature Card – Corporate Style */
.feature-card {
    background: #ffffff;
    border-radius: 22px;
    padding: 35px 28px;
    text-align: left;
    box-shadow: 0 8px 22px rgba(0,0,0,0.06);
    transition: all 0.35s ease;
    height: 100%;
    position: relative;
}

/* Hover Effect */
.feature-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 16px 35px rgba(0,0,0,0.12);
}

/* Icon Wrapper */
.feature-icon {
    width: 65px;
    height: 65px;
    border-radius: 18px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 18px;
    font-size: 28px;
    color: #fff;

    background: linear-gradient(135deg, #EC6B4F 0%, #3C4CAD 100%);
    transition: all 0.35s ease;
}

/* Icon animation on hover */
.feature-card:hover .feature-icon {
    transform: scale(1.08);
    box-shadow: 0 8px 22px rgba(60, 76, 173, 0.3);
}

/* Titles */
.feature-card h5 {
    font-weight: 700;
    margin-bottom: 10px;
    font-size: 18px;
    color: #0a0a0a;
}

/* Description */
.feature-card p {
    color: #555;
    font-size: 15px;
    line-height: 1.6;
}

/* Certification logo card */
.certification-card {
    text-align: center;
    padding-top: 45px !important;
}

.certification-logo img {
    width: 110px;
    margin-bottom: 25px;
    transition: all 0.3s ease;
}

.certification-card:hover img {
    transform: scale(1.07);
}
/* Fix TUV logo size */
.certification-logo {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 12px;
}

.certification-logo img.tuv-logo {
    width: 180px;     /* try 160–220px based on what looks best */
    max-width: 100%;
    height: auto;
    object-fit: contain;
}

/* FIX card height so the row does NOT collapse */
.certification-card {
    min-height: 260px;  /* adjust if needed */
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
}
.service-hero-img {
    border-radius: 32px;
    box-shadow: 0 18px 45px rgba(15, 23, 42, 0.18);
    max-width: 100%;
    height: auto;
}
.hero-banner {
    background-size: cover;
    background-position: center;
    position: relative;
}

.hero-banner::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(
        to right,
        rgba(0, 0, 0, 0.65) 0%,
        rgba(0, 0, 0, 0.45) 50%,
        rgba(0, 0, 0, 0.15) 100%
    );
    z-index: 1;
}

.hero-banner .content-container {
    position: relative;
    z-index: 2;
}

.hero-banner h1,
.hero-banner .content-bx {
    color: #ffffff;
}
/* Fix PRODUCTS title alignment in category page */
.section-head.style-3 {
    text-align: left;
}

.section-head.style-3 .title {
    padding-left: 0;
}

.section-head.style-3 .title:after {
    left: 0;
    transform: none;
}
/* Chatbot toggle button */
#chatbot-toggle{
    position:fixed;
    bottom:20px;
    right:20px;
    width:56px;
    height:56px;
    background:#0b5ed7;
    color:#fff;
    font-size:24px;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    cursor:pointer;
    z-index:9999;
}

/* Widget container */
#chatbot-widget{
    position:fixed;
    bottom:90px;
    right:20px;
    width:320px;
    max-height:480px;
    background:#fff;
    border-radius:12px;
    box-shadow:0 10px 40px rgba(0,0,0,.2);
    display:none;
    flex-direction:column;
    z-index:9999;
}

/* Header */
.chatbot-header{
    background:#0b5ed7;
    color:#fff;
    padding:12px 14px;
    font-weight:600;
    display:flex;
    justify-content:space-between;
    align-items:center;
}

/* Body */
.chatbot-body{
    padding:12px;
    overflow-y:auto;
    flex:1;
}

/* Footer */
.chatbot-footer{
    display:flex;
    border-top:1px solid #eee;
}

.chatbot-footer input{
    flex:1;
    border:none;
    padding:10px;
    outline:none;
}

.chatbot-footer button{
    background:#0b5ed7;
    color:#fff;
    border:none;
    padding:10px 14px;
    cursor:pointer;
}

/* Messages */
.bot-message, .user-message{
    margin-bottom:10px;
    padding:10px 12px;
    border-radius:10px;
    max-width:85%;
    font-size:14px;
}

.bot-message{
    background:#f1f3f6;
}

.user-message{
    background:#0b5ed7;
    color:#fff;
    margin-left:auto;
}

/* WhatsApp Button */
.whatsapp-btn{
    display:inline-block;
    margin-top:8px;
    padding:8px 12px;
    background:#25D366;
    color:#fff;
    border-radius:6px;
    text-decoration:none;
    font-weight:600;
}
@media (max-width: 767px) {
  .wow {
    animation: none !important;
    visibility: visible !important;
  }
}

/* ==================================================
   OUR DIVISIONS – MOBILE FIX (FINAL)
   Disable Swiper completely on mobile
================================================== */
@media (max-width: 768px) {

  .dz-flex-swiper {
    overflow: visible !important;
  }

  .dz-flex-swiper.swiper {
    overflow: visible !important;
  }

  .dz-flex-swiper .swiper-wrapper {
    display: block !important;
    transform: none !important;
    height: auto !important;
    min-height: auto !important;
  }

  .dz-flex-swiper .swiper-slide {
    width: 100% !important;
    height: auto !important;
    min-height: auto !important;
    margin-bottom: 32px;
    transform: none !important;
  }

  /* Prevent hidden slides */
  .dz-flex-swiper .swiper-slide:not(.swiper-slide-active) {
    opacity: 1 !important;
  }
}
/* FIX: Our Divisions mobile swiper */
@media (max-width: 991px) {

    .dz-flex-swiper {
        overflow: hidden !important;
    }

    .dz-flex-item {
        width: 100% !important;
        max-width: 100% !important;
    }

    .dz-flex-head,
    .dz-flex-info {
        width: 100%;
    }

    .swiper-wrapper {
        align-items: stretch;
    }
}















