/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */

#what-we-do img {
    border: 2px solid #fff;
    padding: 12px;
}

/* ============================================================
   CLIENT FEEDBACK FIXES - 06/23/2026
   ============================================================ */

/* ---- HERO SLIDER: slide text area bigger on desktop ---- */
@media (min-width: 1025px) {
    .elementor-34 .elementor-element.elementor-element-73ac8fd .swiper-slide-contents {
        max-width: 45% !important;
    }
    /* Slide heading color: PMS 285 blue */
    .elementor-34 .elementor-element.elementor-element-73ac8fd .elementor-slide-heading {
        color: #0971CE !important;
    }
    /* Sub-title (IMPACT, PEOPLE, CONFIDENCE) stays green */
    .elementor-34 .elementor-element.elementor-element-73ac8fd .sub-titl {
        color: #638E20 !important;
    }
}
@media (max-width: 767px) {
    .elementor-34 .elementor-element.elementor-element-73ac8fd .swiper-slide-contents {
        max-width: 90% !important;
    }
}

/* ---- TRUSTED BY ICONIC BRANDS: bold ---- */
.elementor-element-fefb3fc .elementor-heading-title {
    font-weight: 900 !important;
}

/* ---- BRAND LOGOS: fix hover filter for black logos (Mercedes, Disney, Universal) ---- */
/* Keep the blue filter on idle; on hover show original color (not black) */
.slider-img .elementor-image-carousel img {
    filter: invert(1) grayscale(1) brightness(0.4) sepia(1) hue-rotate(200deg) saturate(10) brightness(0.5) !important;
    transition: filter 0.4s ease !important;
    width: 120px !important;
    height: 80px !important;
    object-fit: contain !important;
}
/* Tablet */
@media (max-width: 1024px) {
    .slider-img .elementor-image-carousel img {
        width: 90px !important;
        height: 60px !important;
    }
}
/* Mobile */
@media (max-width: 767px) {
    .slider-img .elementor-image-carousel img {
        width: 70px !important;
        height: 50px !important;
    }
}
.slider-img .elementor-image-carousel img:hover {
    /* Show the original logo color on hover instead of going black */
    filter: none !important;
}
/* Rolls Royce: force blue tint before hover (applied via CSS since it's a PNG) */
.slider-img .elementor-image-carousel .swiper-slide:has(img[src*="rolls-royce"]) img {
    filter: invert(1) grayscale(1) brightness(0.4) sepia(1) hue-rotate(200deg) saturate(10) brightness(0.5) !important;
}

/* ---- WHAT WE DO heading: bold ---- */
.elementor-element-85b7f25 .elementor-heading-title {
    font-weight: 900 !important;
}

/* ---- WHAT WE DO image boxes: titles PMS 285 + bold; text inside box ---- */
.elementor-element-a09e4ec .elementor-image-box-title,
.elementor-element-073999d .elementor-image-box-title,
.elementor-element-454af17 .elementor-image-box-title {
    color: #0971CE !important;
    font-weight: 900 !important;
    font-family: "Eurostile-Bold", Sans-serif !important;
}
/* Ensure text content stays inside the image box column boundary */
.elementor-element-0a19d71,
.elementor-element-21709f4,
.elementor-element-6ac544a {
    overflow: hidden;
}
.elementor-element-0a19d71 .elementor-image-box-content,
.elementor-element-21709f4 .elementor-image-box-content,
.elementor-element-6ac544a .elementor-image-box-content {
    overflow: hidden;
    padding-right: 20px !important;
}

/* ---- COMPANY STORES heading: PMS 285 bold ---- */
.elementor-element-b270192 .elementor-heading-title {
    color: #0971CE !important;
    font-family: "Eurostile-Bold", Sans-serif !important;
    font-weight: 900 !important;
}

/* ---- TOP CATEGORIES badges: REMOVE NEW/BEST SELLER/POPULAR/TOP PICK ---- */
/* Actual plugin class: mst-ps-badge */
.mst-ps-badge,
.mst-ps-badge--navy,
.mst-ps-badge--red,
[class*="mst-ps-badge"] {
    display: none !important;
}

/* ---- TOP CATEGORIES product cards: Eurostile font ---- */
.mst-ps-wrap,
.mst-ps-wrap *,
.mst-ps-title,
.mst-ps-card-title,
.mst-ps-card-desc,
.mst-ps-card-meta,
.mst-ps-card-cta {
    font-family: "Eurostile", Sans-serif !important;
}
/* Top Categories heading also Eurostile */
.mst-ps-title {
    font-family: "Eurostile-Bold", Sans-serif !important;
    font-weight: 900 !important;
}
/* "Ask for Quote" links */
.mst-ps-card-cta {
    font-family: "Eurostile", Sans-serif !important;
    font-weight: 600 !important;
}

/* ---- POPULAR RESOURCES: reduce section size ---- */
/* The accordion section (25275e0) had padding 50px - reduce for tighter design match */
@media (min-width: 1025px) {
    .elementor-element-25275e0 > .elementor-element-populated {
        padding: 30px 40px 30px 40px !important;
    }
    .elementor-element-49d1bb4 .elementor-heading-title {
        font-size: 24px !important;
        margin-bottom: 16px !important;
    }
    /* Reduce accordion item spacing */
    .elementor-element-1e1be9d {
        --n-accordion-item-title-space-between: 8px !important;
        padding-top: 10px !important;
    }
    /* Image (271a699) should fill height */
    .elementor-element-271a699 {
        min-height: auto !important;
    }
    .elementor-element-d7b83ad img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
    }
}

/* ---- SHOP PROMOTIONAL: images fill columns (no gap) ---- */
/* c3e1ee8 = col 1 image, 2fa7abd = col 3 image, da1cbc1 = col 4 image */
.elementor-element-c3e1ee8 > .elementor-element-populated,
.elementor-element-2fa7abd > .elementor-element-populated,
.elementor-element-da1cbc1 > .elementor-element-populated {
    padding: 0 !important;
    overflow: hidden;
}
.elementor-element-32139a6 > .elementor-container {
    gap: 0 !important;
    column-gap: 0 !important;
}
.elementor-element-32139a6 .elementor-column-gap-default .elementor-column > .elementor-element-populated {
    padding: 0;
}

/* ---- 2026 CELEBRATION / JOIN SALES: Eurostile font ---- */
.elementor-element-f8c063b,
.elementor-element-f8c063b h3,
.elementor-element-f8c063b p,
.elementor-element-f257f58,
.elementor-element-f257f58 h3,
.elementor-element-f257f58 p {
    font-family: "Eurostile", Sans-serif !important;
}

/* ---- GET IN TOUCH: Eurostile font ---- */
.elementor-element-3c26232 .elementor-heading-title,
.elementor-element-bc38637 .elementor-button {
    font-family: "Eurostile", Sans-serif !important;
}

/* ---- FOOTER divider line: extend to full viewport width ---- */
/* The f60cddd inner section has a 5px border-top/bottom - extend it */
.elementor-element-f60cddd {
    margin-left: calc(-50vw + 50%) !important;
    margin-right: calc(-50vw + 50%) !important;
    padding-left: calc(50vw - 50%) !important;
    padding-right: calc(50vw - 50%) !important;
    width: 100vw !important;
    max-width: 100vw !important;
}

/* ---- LARGE SCREEN (1680px+): constrain non-full-width sections ---- */
@media (min-width: 1680px) {
    .promo-sec {
        height: 456px;
    }
    /* Constrain all section containers except the 5 full-width ones */
    .elementor-34 .elementor-section > .elementor-container {
        max-width: 1600px !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }
    /* These 5 sections must be truly full-width — override the constraint above */
    .elementor-element-7542a16e > .elementor-container,
    .elementor-element-af807d6 > .elementor-container,
    .elementor-element-a9c3dc5 > .elementor-container,
    .elementor-element-47f4704 > .elementor-container,
    .elementor-element-b15ce6d > .elementor-container {
        max-width: 100% !important;
        width: 100% !important;
    }
    /* Also ensure their inner sections are full width */
    .elementor-element-c4795fd > .elementor-container,
    .elementor-element-78412f3 > .elementor-container,
    .elementor-element-68b145f > .elementor-container,
    .elementor-element-32139a6 > .elementor-container {
        max-width: 100% !important;
        width: 100% !important;
    }
    /* Hero slide content width */
    .elementor-34 .elementor-element.elementor-element-73ac8fd .swiper-slide-contents {
        max-width: 45% !important;
    }
}


/* Hero swiper slide height - large screens */
@media (min-width: 1025px) {
    .elementor-34 .elementor-element.elementor-element-73ac8fd .swiper-slide {
        height: 950px !important;
        transition-duration: calc(5000ms * 1.2) !important;
    }
}
/* ---- MOBILE: brand logo carousel - ensure it animates (fix scroll stop issue) ---- */
@media (max-width: 767px) {
    .elementor-element-656a8a7 .swiper-wrapper {
        transition-timing-function: linear !important;
    }
    /* Ensure autoplay keeps running on touch devices */
    .elementor-element-656a8a7 .swiper-container {
        pointer-events: none;
    }
    .elementor-element-656a8a7 .swiper-container a,
    .elementor-element-656a8a7 .swiper-container button {
        pointer-events: auto;
    }
}

/* ============================================================
   FULL-WIDTH SECTIONS — CSS-only stretch, bypasses Elementor JS
   Elementor's stretch JS can miscalculate when body has
   overflow-x:hidden or a scrollbar offset. We override with
   pure CSS using negative margin + 100vw technique.
   Sections: Hero Banner, 4 Icons, Trusted Brands,
             Popular Resources, Shop Promotional
   ============================================================ */
.elementor-element-7542a16e,
.elementor-element-af807d6,
.elementor-element-a9c3dc5,
.elementor-element-47f4704,
.elementor-element-b15ce6d {
    width: 100vw !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
    left: 0 !important;
    position: relative !important;
    max-width: 100vw !important;
    box-sizing: border-box !important;
}
.elementor-element-7542a16e > .elementor-container,
.elementor-element-af807d6 > .elementor-container,
.elementor-element-a9c3dc5 > .elementor-container,
.elementor-element-47f4704 > .elementor-container,
.elementor-element-b15ce6d > .elementor-container,
.elementor-element-c4795fd > .elementor-container,
.elementor-element-78412f3 > .elementor-container,
.elementor-element-68b145f > .elementor-container,
.elementor-element-32139a6 > .elementor-container {
    max-width: 100% !important;
    width: 100% !important;
}

/* ============================================================

   Breakpoints:
     desktop    > 1024px
     tablet     768px – 1024px
     mobile     < 768px
   ============================================================ */

/* ----------------------------------------------------------
   1. GLOBAL — prevent horizontal scroll on all screen sizes
   ---------------------------------------------------------- */
/* body overflow-x removed - it breaks 100vw stretch calc */
.elementor-section {
    max-width: 100%;
}
img, .elementor-widget-image img {
    max-width: 100%;
    height: auto;
}
.elementor-widget-text-editor {
    max-width: 100% !important;
}

/* ============================================================
   DESKTOP FIXES  (> 1024px)
   ============================================================ */

/* ----------------------------------------------------------
   D1. HERO SLIDER
   - Slide content max-width 26% is too narrow on wide screens;
     PDF shows text taking ~45% of the left half.
   - Slide height 750px matches design.
   ---------------------------------------------------------- */
@media (min-width: 1025px) {
    .elementor-34 .elementor-element.elementor-element-73ac8fd .swiper-slide-contents {
        max-width: 44% !important;
    }
}

/* ----------------------------------------------------------
   D2. WHAT WE DO heading — left-pad matches PDF indentation
   ---------------------------------------------------------- */
@media (min-width: 1025px) {
    .elementor-element-85b7f25 {
        padding-left: 50px !important;
    }
}

/* ----------------------------------------------------------
   D3. WHAT WE DO — 3 image-box columns desktop gap fix
   .cell_img_box padding-right: 100px clips text on 1200-1400px
   screens. Reduce to a safe value that still gives breathing room.
   ---------------------------------------------------------- */
@media (min-width: 1025px) {
    .cell_img_box .elementor-image-box-content {
        padding-right: 32px !important;
    }
}

/* ----------------------------------------------------------
   D4. COMPANY STORES SIMPLIFIED (HTML widget id: 0bcf20b)
   The internal stage is max-width: 1560px with
   .app-window margin-left: 288px (sidebar width).
   On screens < 1600px this overflows.
   Scale it to fit within the Elementor section.
   ---------------------------------------------------------- */
.elementor-element-0bcf20b .elementor-html {
    overflow-x: hidden;
}
.elementor-element-0bcf20b .stage {
    width: 100% !important;
    max-width: 100% !important;
    padding: 24px 16px 40px !important;
}
.elementor-element-0bcf20b body {
    padding: 0 !important;
}

/* ----------------------------------------------------------
   D5. 2026 CELEBRATION / JOIN SALES — desktop 50/50 split
   Elementor tablet media sets d2de20f + 235859f to 40% each
   leaving a 20% gap. On desktop they should each be 50%.
   ---------------------------------------------------------- */
@media (min-width: 1025px) {
    .elementor-element-d2de20f {
        width: 50% !important;
    }
    .elementor-element-235859f {
        width: 50% !important;
    }
}

/* ----------------------------------------------------------
   D6. POPULAR RESOURCES — equal-height columns desktop
   Image col (271a699) + accordion col (25275e0) should be
   equal height and the image should cover its column.
   ---------------------------------------------------------- */
@media (min-width: 1025px) {
    .elementor-element-68b145f > .elementor-container {
        align-items: stretch;
    }
    .elementor-element-271a699 > .elementor-element-populated {
        padding: 0 !important;
    }
    .elementor-element-d7b83ad img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
        display: block;
    }
    .elementor-element-25275e0 > .elementor-element-populated {
        padding: 30px 40px 30px 40px !important;
    }
}

/* ----------------------------------------------------------
   D7. SHOP PROMOTIONAL PRODUCTS — correct 4-col layout
   On desktop: col 1 = image (25%), col 2 = text (25%),
   col 3 = image (25%), col 4 = image (25%) — all equal.
   Elementor sets them correctly at 25% each. Ensure min-height
   so image cols cover their area like the design.
   ---------------------------------------------------------- */
@media (min-width: 1025px) {
    .elementor-element-c3e1ee8 > .elementor-element-populated,
    .elementor-element-2fa7abd > .elementor-element-populated,
    .elementor-element-da1cbc1 > .elementor-element-populated {
        min-height: 400px !important;
    }
    .elementor-element-32139a6 > .elementor-container {
        align-items: stretch;
    }
}

/* ----------------------------------------------------------
   D8. LOOKING FOR IDEAS / LET'S CONNECT — blue banner
   50/50 split. Both headings vertically centered.
   ---------------------------------------------------------- */
@media (min-width: 1025px) {
    .elementor-element-8b5c905 > .elementor-container {
        align-items: center;
    }
    .elementor-element-39be437,
    .elementor-element-6fc862b {
        width: 50% !important;
    }
}

/* ----------------------------------------------------------
   D9. LARGE DESKTOP (> 1440px) — constrain content width
   Only constrain boxed sections; full-width sections and their
   inner containers are explicitly exempted below.
   ---------------------------------------------------------- */
@media (min-width: 1441px) {
    .elementor-34 .elementor-section.elementor-section-boxed > .elementor-container {
        max-width: 1440px;
    }
    /* Outer full-width sections */
    .elementor-element-7542a16e > .elementor-container,
    .elementor-element-af807d6 > .elementor-container,
    .elementor-element-a9c3dc5 > .elementor-container,
    .elementor-element-47f4704 > .elementor-container,
    .elementor-element-b15ce6d > .elementor-container,
    /* Inner sections nested inside the full-width sections */
    .elementor-element-c4795fd > .elementor-container,
    .elementor-element-78412f3 > .elementor-container,
    .elementor-element-68b145f > .elementor-container,
    .elementor-element-32139a6 > .elementor-container {
        max-width: 100% !important;
        width: 100% !important;
    }
}

/* ----------------------------------------------------------
   2. HERO SLIDER – full bleed on all devices
   ---------------------------------------------------------- */
.elementor-widget-slides .elementor-slides-wrapper {
    width: 100%;
}

/* ----------------------------------------------------------
   3. "4 ICONS" ROW
   (Relationship Driven / Creative / Operationally Sound / Built For Impact)
   Section inner id: c4795fd — 4 columns at 25% each
   Tablet: 2x2 grid. Mobile: 1 per row centered
   ---------------------------------------------------------- */
@media (max-width: 1024px) {
    .elementor-element-c4795fd > .elementor-container {
        flex-wrap: wrap;
    }
    .elementor-element-e150356,
    .elementor-element-aa907d5,
    .elementor-element-7969269,
    .elementor-element-c2c76b8 {
        width: 50% !important;
        max-width: 50% !important;
    }
}
@media (max-width: 767px) {
    .elementor-element-c4795fd > .elementor-container {
        flex-wrap: wrap;
    }
    .elementor-element-e150356,
    .elementor-element-aa907d5,
    .elementor-element-7969269,
    .elementor-element-c2c76b8 {
        width: 100% !important;
        max-width: 100% !important;
    }
    .elementor-element-e150356 .elementor-image-box-wrapper,
    .elementor-element-aa907d5 .elementor-image-box-wrapper,
    .elementor-element-7969269 .elementor-image-box-wrapper,
    .elementor-element-c2c76b8 .elementor-image-box-wrapper {
        text-align: center;
        justify-content: center;
    }
}

/* ----------------------------------------------------------
   4. TRUSTED BRANDS LOGO CAROUSEL heading alignment
   ---------------------------------------------------------- */
@media (max-width: 767px) {
    .elementor-element-fefb3fc .elementor-heading-title {
        text-align: center;
    }
}

/* ----------------------------------------------------------
   5. "WHAT WE DO" – 3 image-box columns (33% each)
   Inner section: 5dec995
   Tablet: horizontal card layout. Mobile: stacked full width
   ---------------------------------------------------------- */
@media (max-width: 1024px) {
    .elementor-element-5dec995 > .elementor-container {
        flex-wrap: wrap;
    }
    .elementor-element-0a19d71,
    .elementor-element-21709f4,
    .elementor-element-6ac544a {
        width: 100% !important;
        max-width: 100% !important;
        margin-bottom: 30px;
    }
    .elementor-element-0a19d71 .elementor-image-box-wrapper,
    .elementor-element-21709f4 .elementor-image-box-wrapper,
    .elementor-element-6ac544a .elementor-image-box-wrapper {
        flex-direction: row;
        align-items: flex-start;
        text-align: left;
    }
    .elementor-element-0a19d71 .elementor-image-box-img,
    .elementor-element-21709f4 .elementor-image-box-img,
    .elementor-element-6ac544a .elementor-image-box-img {
        width: 45% !important;
        margin-right: 20px;
        margin-bottom: 0;
        flex-shrink: 0;
    }
    .elementor-element-0a19d71 .elementor-image-box-content,
    .elementor-element-21709f4 .elementor-image-box-content,
    .elementor-element-6ac544a .elementor-image-box-content {
        width: 55%;
        padding-right: 0 !important;
    }
}
@media (max-width: 767px) {
    .elementor-element-0a19d71 .elementor-image-box-wrapper,
    .elementor-element-21709f4 .elementor-image-box-wrapper,
    .elementor-element-6ac544a .elementor-image-box-wrapper {
        flex-direction: column;
        align-items: flex-start;
    }
    .elementor-element-0a19d71 .elementor-image-box-img,
    .elementor-element-21709f4 .elementor-image-box-img,
    .elementor-element-6ac544a .elementor-image-box-img {
        width: 100% !important;
        margin-right: 0;
        margin-bottom: 16px;
    }
    .elementor-element-0a19d71 .elementor-image-box-content,
    .elementor-element-21709f4 .elementor-image-box-content,
    .elementor-element-6ac544a .elementor-image-box-content {
        width: 100%;
        padding-right: 0 !important;
        padding-left: 2px !important;
    }
    .cell_img_box .elementor-image-box-content {
        padding-left: 2px !important;
        padding-right: 0 !important;
    }
}

/* ----------------------------------------------------------
   6. MST PRODUCT SHOWCASE (shortcode)
   ---------------------------------------------------------- */
@media (max-width: 767px) {
    .elementor-element-24fa57b {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
}

/* ----------------------------------------------------------
   7. COMPANY STORES SIMPLIFIED (HTML widget id: 0bcf20b)
   Internal layout built with grid — make responsive
   ---------------------------------------------------------- */
.elementor-element-0bcf20b .elementor-html {
    overflow-x: hidden;
}
@media (max-width: 1024px) {
    .elementor-element-0bcf20b .app-window {
        margin-left: 0 !important;
    }
    .elementor-element-0bcf20b .content {
        grid-template-columns: 1fr !important;
    }
    .elementor-element-0bcf20b .grid {
        grid-template-columns: repeat(3, 1fr) !important;
    }
    .elementor-element-0bcf20b .banners {
        grid-template-columns: 1fr 1fr !important;
    }
    .elementor-element-0bcf20b .product-card {
        position: static !important;
        width: 100% !important;
        max-width: 420px;
        margin: 0 auto 24px;
    }
}
@media (max-width: 767px) {
    .elementor-element-0bcf20b .topbar {
        height: auto !important;
        flex-wrap: wrap !important;
        gap: 10px !important;
        padding: 12px 16px !important;
    }
    .elementor-element-0bcf20b .search {
        order: 3 !important;
        flex-basis: 100% !important;
        max-width: none !important;
    }
    .elementor-element-0bcf20b .content {
        grid-template-columns: 1fr !important;
        gap: 20px !important;
        padding: 20px 16px 24px !important;
    }
    .elementor-element-0bcf20b .grid {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 12px !important;
    }
    .elementor-element-0bcf20b .banners {
        grid-template-columns: 1fr !important;
    }
    .elementor-element-0bcf20b .sidebar {
        display: none !important;
    }
    .elementor-element-0bcf20b .product-card {
        position: static !important;
        width: 100% !important;
        max-width: 100% !important;
        border-radius: 16px;
        padding: 20px 16px 24px !important;
    }
}

/* ----------------------------------------------------------
   8. LOOKING FOR IDEAS / LET'S CONNECT
   Inner section: 8b5c905 — cols: 39be437 + 6fc862b (50/50)
   ---------------------------------------------------------- */
@media (max-width: 767px) {
    .elementor-element-8b5c905 > .elementor-container {
        flex-wrap: wrap;
    }
    .elementor-element-39be437,
    .elementor-element-6fc862b {
        width: 100% !important;
        max-width: 100% !important;
    }
    .elementor-element-50ac370 .elementor-heading-title,
    .elementor-element-dff3984 .elementor-heading-title {
        text-align: center;
    }
}

/* ----------------------------------------------------------
   9. POPULAR RESOURCES
   Inner: 68b145f — image col 271a699 (50) + accordion col 25275e0 (50)
   Tablet: image 40% / accordion 60%. Mobile: stack, accordion first
   ---------------------------------------------------------- */
@media (max-width: 1024px) {
    .elementor-element-68b145f > .elementor-container {
        flex-wrap: wrap;
    }
    .elementor-element-271a699 {
        width: 40% !important;
        max-width: 40% !important;
    }
    .elementor-element-25275e0 {
        width: 60% !important;
        max-width: 60% !important;
    }
}
@media (max-width: 767px) {
    .elementor-element-271a699,
    .elementor-element-25275e0 {
        width: 100% !important;
        max-width: 100% !important;
    }
    .elementor-element-271a699 {
        order: 2;
    }
    .elementor-element-25275e0 {
        order: 1;
    }
    .elementor-element-49d1bb4 .elementor-heading-title {
        font-size: 22px !important;
    }
}

/* ----------------------------------------------------------
   10. SHOP PROMOTIONAL – 4 promo-sec columns
   Inner: 32139a6 — 4 cols 25% each (c3e1ee8, 1fce0c9, 2fa7abd, da1cbc1)
   Mobile: image full width on top, text cards side-by-side below
   ---------------------------------------------------------- */
@media (max-width: 1024px) {
    .elementor-element-32139a6 > .elementor-container {
        flex-wrap: wrap;
    }
    .elementor-element-c3e1ee8 {
        width: 100% !important;
        max-width: 100% !important;
        order: 1;
    }
    .elementor-element-1fce0c9,
    .elementor-element-2fa7abd,
    .elementor-element-da1cbc1 {
        width: 33.333% !important;
        max-width: 33.333% !important;
        order: 2;
    }
    .elementor-element-1fce0c9 {
        padding-left: 20px !important;
    }
}
@media (max-width: 767px) {
    .elementor-element-c3e1ee8 {
        width: 100% !important;
        max-width: 100% !important;
        order: 1;
    }
    .elementor-element-1fce0c9 {
        width: 100% !important;
        max-width: 100% !important;
        order: 2;
        padding: 30px 16px !important;
    }
    .elementor-element-2fa7abd {
        width: 50% !important;
        max-width: 50% !important;
        order: 3;
    }
    .elementor-element-da1cbc1 {
        width: 50% !important;
        max-width: 50% !important;
        order: 4;
    }
}

/* ----------------------------------------------------------
   11. "2026 CELEBRATION / JOIN OUR SALES TEAM" 2-col footer cards
   Inner: f60cddd — cols d2de20f + 235859f (50/50)
   Large left padding (120px / 60px) breaks mobile
   ---------------------------------------------------------- */
@media (max-width: 1024px) {
    .elementor-element-d2de20f {
        padding-left: 40px !important;
    }
    .elementor-element-235859f {
        padding-left: 30px !important;
    }
}
@media (max-width: 767px) {
    .elementor-element-f60cddd > .elementor-container {
        flex-wrap: wrap;
    }
    .elementor-element-d2de20f,
    .elementor-element-235859f {
        width: 100% !important;
        max-width: 100% !important;
        padding: 30px 20px !important;
    }
}

/* ----------------------------------------------------------
   12. "LET'S FIND THE RIGHT SOLUTION" CTA
   ---------------------------------------------------------- */
@media (max-width: 767px) {
    .elementor-element-3c26232 .elementor-heading-title {
        font-size: 28px !important;
        line-height: 1.3 !important;
    }
}

/* ----------------------------------------------------------
   13. INSTAGRAM FEED grid fix on mobile
   ---------------------------------------------------------- */
@media (max-width: 767px) {
    .sbi_item {
        width: 33.333% !important;
    }
}


#slider-gp .elementor-column-gap-default {
    max-width: 100% !important;
}

#popular-resources .elementor-column-gap-default{
    max-width: 100% !important;
}

#shop-promotional .elementor-column-gap-default{
    max-width: 100% !important;
}
#browse-products .elementor-column-gap-no {
    max-width: 100% !important;
}

@media (min-width: 1680px) {
.promo-sec {
    height: 456px !important;
}
}
/* ============================================================
   FOOTER + LET'S FIND - both stretch full width, same left alignment
   Content starts at padding-left: 120px from viewport edge on both
   ============================================================ */

/* Make Let's find inner section full width */
.elementor-element-f60cddd > .elementor-container {
    max-width: 100% !important;
    width: 100% !important;
}
/* Let's find column padding */
.elementor-element-d2de20f > .elementor-element-populated {
    padding-left: 120px !important;
}
.elementor-element-235859f > .elementor-element-populated {
    padding-left: 60px !important;
}

/* Footer stretch full-width */
.elementor-element-1b4ac69 {
    width: 100vw !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
    position: relative !important;
    max-width: 100vw !important;
    box-sizing: border-box !important;
}
.elementor-element-1b4ac69 > .elementor-container {
    max-width: 100% !important;
    width: 100% !important;
}
/* Footer inner column padding matches 'Let's find' (120px from left) */
.elementor-element-c101668 > .elementor-element-populated {
    padding-left: 120px !important;
    padding-right: 120px !important;
}
@media (max-width: 1024px) {
    .elementor-element-f60cddd > .elementor-container,
    .elementor-element-c101668 > .elementor-element-populated {
        padding-left: 40px !important;
        padding-right: 40px !important;
    }
    .elementor-element-d2de20f > .elementor-element-populated {
        padding-left: 40px !important;
    }
}
@media (max-width: 767px) {
    .elementor-element-c101668 > .elementor-element-populated {
        padding-left: 20px !important;
        padding-right: 20px !important;
    }
    .elementor-element-d2de20f > .elementor-element-populated {
        padding-left: 20px !important;
    }
}


/* ============================================================
   PDF FEEDBACK CHANGES - 06/23/2026
   ============================================================ */

/* PAGE 2: Hero navy blue to PMS 285 */
.elementor-34 .elementor-element-73ac8fd .elementor-slide-heading {
    color: #0971CE !important;
}

/* PAGE 2: Hero bigger height on desktop */
@media (min-width: 1025px) {
    .elementor-34 .elementor-element-73ac8fd .swiper-slide {
        min-height: 700px !important;
    }
}

/* PAGE 3+4: Trusted By Iconic Brands BOLD + Eurostile */
.elementor-element-fefb3fc .elementor-heading-title {
    font-weight: 900 !important;
    font-family: "Eurostile-Bold", sans-serif !important;
}

/* PAGE 4: Rolls Royce blue before hover - already handled above */
/* PAGE 4: Mercedes Disney Universal keep blue on hover too */
.slider-img .elementor-image-carousel .swiper-slide:has(img[src*="mercedes"]) img:hover,
.slider-img .elementor-image-carousel .swiper-slide:has(img[src*="disney"]) img:hover,
.slider-img .elementor-image-carousel .swiper-slide:has(img[src*="universal"]) img:hover {
    filter: invert(1) grayscale(1) brightness(0.4) sepia(1) hue-rotate(200deg) saturate(10) brightness(0.5) !important;
}

/* PAGE 5: What We DO BOLD + Eurostile */
.elementor-element-85b7f25 .elementor-heading-title {
    font-weight: 900 !important;
    font-family: "Eurostile-Bold", sans-serif !important;
}

/* PAGE 5: Image box titles PMS 285 + BOLD + Eurostile */
.elementor-element-a09e4ec .elementor-image-box-title,
.elementor-element-073999d .elementor-image-box-title,
.elementor-element-454af17 .elementor-image-box-title {
    color: #0971CE !important;
    font-weight: 900 !important;
    font-family: "Eurostile-Bold", sans-serif !important;
}

/* PAGE 5: Text stays inside box */
.elementor-element-a09e4ec .elementor-image-box-description,
.elementor-element-073999d .elementor-image-box-description,
.elementor-element-454af17 .elementor-image-box-description {
    word-wrap: break-word !important;
    max-width: 100% !important;
    padding: 0 10px !important;
}

/* PAGE 6: Remove product badges */
.woocommerce-badge, .onsale, .mst-badge, .product-badge {
    display: none !important;
}

/* PAGE 6: Top Categories heading Eurostile */
.elementor-element-b270192 .elementor-heading-title {
    font-family: "Eurostile-Bold", sans-serif !important;
    font-weight: 900 !important;
}

/* PAGE 7: Company Stores Simplified PMS 285 + BOLD */
.elementor-element-50ac370 .elementor-heading-title {
    color: #0971CE !important;
    font-weight: 900 !important;
    font-family: "Eurostile-Bold", sans-serif !important;
}

/* PAGE 8: Popular Resources heading smaller */
.elementor-element-49d1bb4 .elementor-heading-title {
    font-size: 22px !important;
}

/* PAGE 9: Shop Promotional heading PMS 285 + BOLD + Eurostile */
.elementor-element-cf78089 .elementor-heading-title {
    font-family: "Eurostile-Bold", sans-serif !important;
    color: #0971CE !important;
    font-weight: 900 !important;
}

/* PAGE 11: Celebration + Join Sales Team Eurostile */
.elementor-element-f8c063b, .elementor-element-f8c063b * {
    font-family: "Eurostile", sans-serif !important;
}
.elementor-element-f257f58, .elementor-element-f257f58 * {
    font-family: "Eurostile", sans-serif !important;
}

/* PAGE 11: Lets find right solution Eurostile */
.elementor-element-3c26232 .elementor-heading-title {
    font-family: "Eurostile-Bold", sans-serif !important;
    font-weight: 900 !important;
}

/* PAGE 11: Footer divider line extend to full width edge */
.elementor-24 .elementor-element-bfe75db {
    padding-left: 0 !important;
    padding-right: 0 !important;
}
.elementor-24 .elementor-element-bfe75db > .elementor-container {
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}
