/* =====================================================
   MARKETING PAGE — content-only stylesheet.
   Scoped under .ps-marketing; see property-sp.css for
   the rationale (keeps this off the real global
   header/footer + :root). Header/footer-only rules from
   the source design (.top-header, .marketing-nav-*,
   .marketing-footer-*) are intentionally not ported —
   Vendor's own header/footer stay in place.
===================================================== */

.ps-marketing {
    --mk-black: #141414;
    --mk-black-soft: #242424;

    --mk-green: #7fae35;
    --mk-green-dark: #5f8e22;

    --mk-lemon: #dff46a;
    --mk-lemon-strong: #cbea4e;
    --mk-lemon-soft: #eef9b5;
    --mk-lemon-pale: #f7fbd8;

    --mk-yellow: #f4d64f;
    --mk-yellow-soft: #fff2a6;

    --mk-text: #3e3e3e;
    --mk-muted: #676767;

    --mk-border: #cddc7d;

    color: var(--mk-black);
    background: var(--mk-lemon-pale);
    overflow-x: hidden;
}

.ps-marketing * { box-sizing: border-box; }
.ps-marketing a { text-decoration: none; }
.ps-marketing button { font-family: inherit; cursor: pointer; }
.ps-marketing section { position: relative; }


/* HERO */

.ps-marketing .marketing-hero {
    position: relative; padding: 46px 0 34px; overflow: hidden;
    background:
        radial-gradient(circle at 88% 14%, rgba(244, 214, 79, 0.35), transparent 18%),
        radial-gradient(circle at 8% 88%, rgba(255, 255, 255, 0.42), transparent 22%),
        linear-gradient(125deg, #d3ec57, #e6f38a 42%, #f5fac6 70%, #c9e942);
}

.ps-marketing .marketing-hero::before {
    content: ""; position: absolute; width: 440px; height: 440px; right: -180px; top: -220px;
    border-radius: 50%; border: 55px solid rgba(20, 20, 20, 0.035);
}

.ps-marketing .marketing-hero::after {
    content: ""; position: absolute; width: 180px; height: 180px; left: -80px; top: 80px;
    transform: rotate(28deg); border-radius: 36px; background: rgba(255, 255, 255, 0.12);
}

.ps-marketing .marketing-hero-row { min-height: 430px; }
.ps-marketing .marketing-hero-content { position: relative; z-index: 5; }

.ps-marketing .marketing-eyebrow { display: flex; align-items: center; gap: 8px; margin-bottom: 12px; color: var(--mk-green-dark); font-size: 12px; font-weight: 800; letter-spacing: 1.5px; }
.ps-marketing .marketing-eyebrow span { width: 30px; height: 3px; background: var(--mk-black); }

.ps-marketing .marketing-hero h1 { max-width: 710px; margin-bottom: 18px; font-size: 54px; line-height: 1.06; font-weight: 800; letter-spacing: -0.8px; }
.ps-marketing .marketing-hero h1 span { display: block; position: relative; width: fit-content; color: var(--mk-green-dark); }
.ps-marketing .marketing-hero h1 span::after { content: ""; position: absolute; left: 0; bottom: -5px; width: 52%; height: 7px; border-radius: 99px; background: rgba(244, 214, 79, 0.55); }

.ps-marketing .marketing-hero-content > p { max-width: 610px; margin-bottom: 22px; color: #3d3d3d; font-size: 16px; line-height: 1.72; }

.ps-marketing .marketing-hero-actions { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.ps-marketing .hero-dark-btn { padding: 13px 20px; border: none; border-radius: 9px; background: var(--mk-black); color: #ffffff; font-size: 14px; font-weight: 700; box-shadow: 0 10px 20px rgba(0, 0, 0, 0.13); transition: 0.25s ease; }
.ps-marketing .hero-dark-btn:hover { background: var(--mk-green-dark); transform: translateY(-2px); }
.ps-marketing .hero-light-btn { padding: 12px 18px; border: 1px solid rgba(95, 142, 34, 0.38); border-radius: 9px; background: rgba(255, 255, 255, 0.52); color: var(--mk-black); font-size: 14px; font-weight: 700; backdrop-filter: blur(8px); transition: 0.25s ease; display: inline-block; }
.ps-marketing .hero-light-btn:hover { background: var(--mk-yellow-soft); transform: translateY(-2px); }

.ps-marketing .marketing-hero-meta { display: flex; gap: 32px; margin-top: 28px; flex-wrap: wrap; }
.ps-marketing .marketing-hero-meta > div { position: relative; padding-left: 14px; }
.ps-marketing .marketing-hero-meta > div::before { content: ""; position: absolute; left: 0; top: 1px; bottom: 1px; width: 4px; border-radius: 99px; background: linear-gradient(180deg, var(--mk-black), var(--mk-yellow)); }
.ps-marketing .marketing-hero-meta strong { display: block; font-size: 14px; }
.ps-marketing .marketing-hero-meta span { display: block; margin-top: 4px; color: #505050; font-size: 11px; }


/* HERO VISUAL */

.ps-marketing .marketing-hero-visual { position: relative; max-width: 620px; margin-left: auto; }
.ps-marketing .marketing-hero-visual::before { content: ""; position: absolute; width: 160px; height: 160px; top: -28px; right: -26px; border-radius: 50%; background: linear-gradient(145deg, rgba(244, 214, 79, 0.55), rgba(203, 234, 78, 0.12)); filter: blur(2px); }
.ps-marketing .marketing-hero-visual::after { content: ""; position: absolute; width: 110px; height: 110px; left: -28px; bottom: -20px; border: 18px solid rgba(95, 142, 34, 0.12); border-radius: 50%; }

.ps-marketing .campaign-feature-card { position: relative; z-index: 3; padding: 10px; border: 1px solid rgba(95, 142, 34, 0.3); border-radius: 24px; background: linear-gradient(145deg, rgba(246, 251, 206, 0.94), rgba(220, 243, 110, 0.94)); box-shadow: 0 26px 55px rgba(74, 100, 22, 0.18); transform: rotate(-1deg); transition: transform 0.3s ease, box-shadow 0.3s ease; }
.ps-marketing .campaign-feature-card:hover { transform: rotate(0deg) translateY(-4px); box-shadow: 0 32px 65px rgba(74, 100, 22, 0.22); }
.ps-marketing .campaign-feature-image { position: relative; height: 255px; overflow: hidden; border-radius: 18px; }
.ps-marketing .campaign-feature-image::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 50%, rgba(0, 0, 0, 0.14)); }
.ps-marketing .campaign-feature-image img { width: 100%; height: 100%; display: block; object-fit: cover; transition: transform 0.5s ease; }
.ps-marketing .campaign-feature-card:hover .campaign-feature-image img { transform: scale(1.04); }
.ps-marketing .campaign-feature-image span { position: absolute; top: 14px; left: 14px; z-index: 2; padding: 7px 11px; border-radius: 999px; background: var(--mk-black); color: var(--mk-lemon); font-size: 10px; font-weight: 800; letter-spacing: 1px; box-shadow: 0 8px 16px rgba(0, 0, 0, 0.18); }
.ps-marketing .campaign-feature-content { padding: 19px 15px 12px; }
.ps-marketing .campaign-feature-content small { display: block; color: var(--mk-green-dark); font-size: 11px; font-weight: 800; letter-spacing: 1px; }
.ps-marketing .campaign-feature-content h3 { margin: 8px 0; font-size: 24px; line-height: 1.35; font-weight: 700; }
.ps-marketing .campaign-feature-content p { margin-bottom: 12px; color: #4d4d4d; font-size: 13px; line-height: 1.65; }
.ps-marketing .campaign-feature-content button { padding: 0; border: none; background: none; color: var(--mk-green-dark); font-size: 12px; font-weight: 700; }


/* HERO DECOR */

.ps-marketing .marketing-hero-circle { position: absolute; border-radius: 50%; }
.ps-marketing .circle-one { width: 260px; height: 260px; top: -160px; right: 4%; background: rgba(244, 214, 79, 0.22); }
.ps-marketing .circle-two { width: 170px; height: 170px; bottom: -100px; left: 2%; background: rgba(255, 255, 255, 0.24); }
.ps-marketing .marketing-dot-pattern { position: absolute; width: 115px; height: 115px; right: 1%; bottom: 25px; opacity: 0.2; background-image: radial-gradient(var(--mk-black) 1px, transparent 1px); background-size: 11px 11px; }


/* SECTION HEADING (shared) */

.ps-marketing .section-heading { position: relative; max-width: 720px; margin: 0 auto 26px; text-align: center; }
.ps-marketing .section-heading::before { content: ""; position: absolute; width: 70px; height: 70px; left: -110px; top: 0; border: 12px solid rgba(95, 142, 34, 0.05); border-radius: 50%; }
.ps-marketing .section-heading > span { color: var(--mk-green-dark); font-size: 11px; font-weight: 800; letter-spacing: 1.4px; }
.ps-marketing .section-heading h2 { margin: 6px 0 8px; font-size: 37px; font-weight: 700; }
.ps-marketing .section-heading h2 strong { color: var(--mk-green-dark); }
.ps-marketing .section-heading p { max-width: 630px; margin: auto; color: #4a4a4a; font-size: 15px; line-height: 1.7; }


/* CAMPAIGNS */

.ps-marketing .campaigns-section { padding: 40px 0 50px; overflow: hidden; background: radial-gradient(circle at 10% 30%, rgba(203, 234, 78, 0.32), transparent 22%), linear-gradient(180deg, #eef8ae, #f7fbd8); }
.ps-marketing .campaigns-section::before { content: ""; position: absolute; width: 240px; height: 240px; right: -130px; top: 60px; transform: rotate(38deg); border-radius: 40px; background: rgba(244, 214, 79, 0.12); }

.ps-marketing .campaign-filter-row { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-bottom: 26px; flex-wrap: wrap; }
.ps-marketing .campaign-filter-group { display: flex; flex-wrap: wrap; gap: 8px; }
.ps-marketing .campaign-filter { padding: 9px 14px; border: 1px solid #b1c85a; border-radius: 999px; background: rgba(255, 255, 255, 0.45); color: #343434; font-size: 12px; font-weight: 700; box-shadow: 0 4px 10px rgba(70, 90, 20, 0.04); transition: 0.25s ease; }
.ps-marketing .campaign-filter.active, .ps-marketing .campaign-filter:hover { background: var(--mk-black); border-color: var(--mk-black); color: #ffffff; transform: translateY(-1px); }
.ps-marketing .campaign-view-all { padding: 0; border: none; background: none; color: var(--mk-green-dark); font-size: 12px; font-weight: 700; }

.ps-marketing .campaign-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }
.ps-marketing .campaign-card { position: relative; overflow: hidden; border: 1px solid rgba(95, 142, 34, 0.24); border-radius: 16px; background: linear-gradient(145deg, rgba(237, 248, 167, 0.94), rgba(249, 251, 220, 0.96)); box-shadow: 0 8px 22px rgba(70, 100, 20, 0.05); transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease; }
.ps-marketing .campaign-card::before { content: ""; position: absolute; width: 95px; height: 95px; right: -35px; bottom: -35px; border-radius: 50%; background: rgba(203, 234, 78, 0.24); transition: transform 0.3s ease; }
.ps-marketing .campaign-card:hover::before { transform: scale(1.5); }
.ps-marketing .campaign-card:hover { transform: translateY(-7px); border-color: var(--mk-green-dark); box-shadow: 0 18px 36px rgba(76, 105, 20, 0.16); }
.ps-marketing .campaign-card-large { grid-column: span 2; }
.ps-marketing .campaign-image { position: relative; height: 185px; overflow: hidden; }
.ps-marketing .campaign-card-large .campaign-image { height: 275px; }
.ps-marketing .campaign-image::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 60%, rgba(0, 0, 0, 0.12)); }
.ps-marketing .campaign-image img { width: 100%; height: 100%; display: block; object-fit: cover; transition: transform 0.4s ease; }
.ps-marketing .campaign-card:hover .campaign-image img { transform: scale(1.055); }
.ps-marketing .campaign-image span { position: absolute; top: 12px; left: 12px; z-index: 2; padding: 6px 10px; border-radius: 999px; background: var(--mk-black); color: var(--mk-lemon); font-size: 10px; font-weight: 800; }
.ps-marketing .campaign-content { position: relative; z-index: 2; padding: 18px; }
.ps-marketing .campaign-content small { display: block; margin-bottom: 7px; color: var(--mk-green-dark); font-size: 10px; font-weight: 800; letter-spacing: 0.8px; }
.ps-marketing .campaign-content h3 { margin-bottom: 8px; font-size: 19px; line-height: 1.4; font-weight: 700; }
.ps-marketing .campaign-card-large .campaign-content h3 { font-size: 25px; }
.ps-marketing .campaign-content p { margin-bottom: 12px; color: #4f4f4f; font-size: 13px; line-height: 1.65; }
.ps-marketing .campaign-content button { padding: 0; border: none; background: none; color: var(--mk-green-dark); font-size: 12px; font-weight: 700; }
.ps-marketing .campaign-card.hidden { display: none; }


/* BRAND STORIES */

.ps-marketing .brand-stories-section { padding: 44px 0; overflow: hidden; background: radial-gradient(circle at 90% 20%, rgba(244, 214, 79, 0.28), transparent 22%), linear-gradient(135deg, #d8ef68, #edf8ad 50%, #f6fad2); }
.ps-marketing .brand-stories-section::before { content: ""; position: absolute; width: 180px; height: 180px; left: -80px; bottom: 30px; border-radius: 50%; border: 28px solid rgba(20, 20, 20, 0.035); }
.ps-marketing .brand-story-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 30px; margin-bottom: 26px; flex-wrap: wrap; }
.ps-marketing .brand-story-heading > div > span { color: var(--mk-green-dark); font-size: 11px; font-weight: 800; letter-spacing: 1.4px; }
.ps-marketing .brand-story-heading h2 { margin: 6px 0 0; font-size: 37px; font-weight: 700; }
.ps-marketing .brand-story-heading h2 strong { color: var(--mk-green-dark); }
.ps-marketing .brand-story-heading > p { max-width: 430px; margin: 0; color: #474747; font-size: 14px; line-height: 1.65; }

.ps-marketing .brand-story-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.ps-marketing .brand-story-card { position: relative; min-height: 250px; padding: 22px; overflow: hidden; border: 1px solid rgba(95, 142, 34, 0.25); border-radius: 16px; background: linear-gradient(145deg, #f5fad0, #e4f384); box-shadow: 0 10px 24px rgba(70, 100, 20, 0.07); transition: transform 0.3s ease, box-shadow 0.3s ease; }
.ps-marketing .brand-story-card:hover { transform: translateY(-7px); box-shadow: 0 18px 35px rgba(70, 100, 20, 0.14); }
.ps-marketing .green-story { background: linear-gradient(145deg, #d8ef7a, #f3f9c4); }
.ps-marketing .brand-story-number { position: absolute; top: 8px; right: 14px; color: rgba(0, 0, 0, 0.08); font-size: 58px; font-weight: 800; }
.ps-marketing .brand-story-icon { width: 50px; height: 50px; display: flex; align-items: center; justify-content: center; margin-bottom: 15px; border-radius: 13px; background: var(--mk-black); color: var(--mk-lemon); font-size: 21px; box-shadow: 0 8px 16px rgba(0, 0, 0, 0.1); transition: transform 0.25s ease; }
.ps-marketing .brand-story-card:hover .brand-story-icon { transform: rotate(-5deg) scale(1.06); }
.ps-marketing .green-story .brand-story-icon { background: var(--mk-green-dark); color: #ffffff; }
.ps-marketing .brand-story-card h3 { margin-bottom: 8px; font-size: 19px; font-weight: 700; }
.ps-marketing .brand-story-card p { margin-bottom: 14px; color: #4d4d4d; font-size: 13px; line-height: 1.65; }
.ps-marketing .brand-story-card a { color: var(--mk-green-dark); font-size: 12px; font-weight: 700; }


/* MARKETING CHANNELS */

.ps-marketing .marketing-channels-section { padding: 44px 0 50px; overflow: hidden; background: linear-gradient(180deg, #eef9ad, #d9ef68); }
.ps-marketing .marketing-channels-section::after { content: ""; position: absolute; width: 240px; height: 240px; right: -130px; bottom: -120px; border-radius: 50%; background: rgba(255, 255, 255, 0.18); }
.ps-marketing .channel-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.ps-marketing .channel-card { position: relative; min-height: 220px; padding: 23px; overflow: hidden; border: 1px solid rgba(95, 142, 34, 0.22); border-radius: 16px; background: linear-gradient(145deg, #f5fad2, #e2f17c); transition: 0.3s ease; }
.ps-marketing .channel-card::after { content: ""; position: absolute; width: 90px; height: 90px; right: -35px; top: -35px; border-radius: 50%; background: rgba(255, 255, 255, 0.18); }
.ps-marketing .channel-card:hover { transform: translateY(-7px); box-shadow: 0 16px 30px rgba(76, 105, 20, 0.15); }
.ps-marketing .green-channel { background: linear-gradient(145deg, #d9ef75, #f7fad3); }
.ps-marketing .channel-icon { width: 52px; height: 52px; display: flex; align-items: center; justify-content: center; margin-bottom: 14px; border-radius: 13px; background: var(--mk-black); color: var(--mk-lemon); font-size: 22px; transition: transform 0.25s ease; }
.ps-marketing .channel-card:hover .channel-icon { transform: translateY(-3px) rotate(-4deg); }
.ps-marketing .green-channel .channel-icon { background: var(--mk-green-dark); color: #ffffff; }
.ps-marketing .channel-card > span { color: var(--mk-green-dark); font-size: 10px; font-weight: 800; letter-spacing: 1px; }
.ps-marketing .channel-card h3 { margin: 7px 0; font-size: 20px; font-weight: 700; }
.ps-marketing .channel-card p { margin: 0; color: #4d4d4d; font-size: 13px; line-height: 1.65; }


/* MARKETING IMPACT */

.ps-marketing .marketing-impact-section { padding: 44px 0; overflow: hidden; background: radial-gradient(circle at 90% 10%, rgba(203, 234, 78, 0.08), transparent 22%), linear-gradient(130deg, #111111, #1b1d10 60%, #202513); }
.ps-marketing .marketing-impact-section::before { content: ""; position: absolute; width: 210px; height: 210px; left: -120px; top: -90px; border: 34px solid rgba(223, 244, 106, 0.04); border-radius: 50%; }
.ps-marketing .marketing-impact-inner { display: grid; grid-template-columns: 1fr 1fr; gap: 50px; align-items: center; }
.ps-marketing .impact-copy > span { color: var(--mk-lemon); font-size: 11px; font-weight: 800; letter-spacing: 1.4px; }
.ps-marketing .impact-copy h2 { margin: 8px 0 11px; color: #ffffff; font-size: 37px; line-height: 1.25; }
.ps-marketing .impact-copy p { max-width: 580px; margin-bottom: 16px; color: #d0d0d0; font-size: 14px; line-height: 1.7; }
.ps-marketing .impact-copy button { padding: 11px 16px; border: none; border-radius: 8px; background: var(--mk-lemon); color: var(--mk-black); font-size: 12px; font-weight: 700; box-shadow: 0 8px 18px rgba(223, 244, 106, 0.12); transition: 0.25s ease; }
.ps-marketing .impact-copy button:hover { background: var(--mk-yellow); transform: translateY(-2px); }
.ps-marketing .impact-stats { display: grid; grid-template-columns: repeat(3, 1fr); gap: 11px; }
.ps-marketing .impact-stats > div { position: relative; min-height: 140px; display: flex; flex-direction: column; align-items: center; justify-content: center; overflow: hidden; padding: 15px; border: 1px solid #56642c; border-radius: 15px; background: linear-gradient(145deg, #242a18, #191c11); text-align: center; transition: transform 0.25s ease; }
.ps-marketing .impact-stats > div:hover { transform: translateY(-5px); }
.ps-marketing .impact-stats > div::after { content: ""; position: absolute; width: 70px; height: 70px; right: -26px; bottom: -28px; border-radius: 50%; background: rgba(223, 244, 106, 0.07); }
.ps-marketing .impact-stats .impact-yellow { background: linear-gradient(145deg, #353d1b, #222714); }
.ps-marketing .impact-stats strong { position: relative; z-index: 2; color: var(--mk-lemon); font-size: 31px; }
.ps-marketing .impact-stats span { position: relative; z-index: 2; max-width: 110px; margin-top: 5px; color: #d2d2d2; font-size: 11px; line-height: 1.45; }


/* GALLERY */

.ps-marketing .marketing-gallery-section { padding: 44px 0 50px; overflow: hidden; background: radial-gradient(circle at 10% 10%, rgba(203, 234, 78, 0.25), transparent 20%), linear-gradient(180deg, #e8f593, #f5fad1); }
.ps-marketing .gallery-grid { display: grid; grid-template-columns: repeat(3, 1fr); grid-auto-rows: 210px; gap: 16px; }
.ps-marketing .gallery-card { position: relative; overflow: hidden; border-radius: 16px; border: 1px solid rgba(95, 142, 34, 0.26); box-shadow: 0 12px 28px rgba(58, 80, 20, 0.1); transition: transform 0.3s ease, box-shadow 0.3s ease; }
.ps-marketing .gallery-card:hover { transform: translateY(-5px); box-shadow: 0 20px 36px rgba(58, 80, 20, 0.15); }
.ps-marketing .gallery-large { grid-column: span 2; grid-row: span 2; }
.ps-marketing .gallery-card img { width: 100%; height: 100%; display: block; object-fit: cover; transition: transform 0.45s ease; }
.ps-marketing .gallery-card:hover img { transform: scale(1.07); }
.ps-marketing .gallery-overlay { position: absolute; left: 0; right: 0; bottom: 0; padding: 45px 18px 18px; color: #ffffff; background: linear-gradient(transparent, rgba(0, 0, 0, 0.82)); }
.ps-marketing .gallery-overlay span { color: var(--mk-lemon); font-size: 10px; font-weight: 800; letter-spacing: 1px; }
.ps-marketing .gallery-overlay h3 { margin: 5px 0 0; font-size: 18px; font-weight: 700; }
.ps-marketing .gallery-large .gallery-overlay h3 { font-size: 25px; }


/* CTA */

.ps-marketing .marketing-cta-section { padding: 38px 0; overflow: hidden; background: radial-gradient(circle at 90% 30%, rgba(255, 255, 255, 0.22), transparent 22%), linear-gradient(135deg, #cdea50, #e8f590 55%, #f4d64f); }
.ps-marketing .marketing-cta-section::before { content: ""; position: absolute; width: 180px; height: 180px; left: -80px; bottom: -100px; border-radius: 50%; border: 28px solid rgba(20, 20, 20, 0.04); }
.ps-marketing .marketing-cta-inner { position: relative; z-index: 2; display: flex; align-items: center; justify-content: space-between; gap: 30px; padding: 30px 34px; border: 1px solid rgba(0, 0, 0, 0.09); border-radius: 20px; background: rgba(255, 255, 255, 0.28); backdrop-filter: blur(8px); box-shadow: 0 14px 34px rgba(80, 100, 20, 0.12); flex-wrap: wrap; }
.ps-marketing .marketing-cta-inner > div > span { color: var(--mk-green-dark); font-size: 11px; font-weight: 800; letter-spacing: 1.2px; }
.ps-marketing .marketing-cta-inner h2 { margin: 7px 0; font-size: 31px; }
.ps-marketing .marketing-cta-inner p { margin: 0; color: #444444; font-size: 13px; }
.ps-marketing .marketing-cta-inner button { padding: 13px 18px; border: none; border-radius: 9px; background: var(--mk-black); color: #ffffff; font-size: 12px; font-weight: 700; box-shadow: 0 9px 20px rgba(0, 0, 0, 0.14); transition: 0.25s ease; }
.ps-marketing .marketing-cta-inner button:hover { background: var(--mk-green-dark); transform: translateY(-2px); }


/* RESPONSIVE */

@media (max-width: 991px) {
    .ps-marketing .marketing-hero-content { margin-bottom: 28px; }
    .ps-marketing .marketing-hero h1 { font-size: 45px; }
    .ps-marketing .marketing-hero-visual { margin: auto; }
    .ps-marketing .campaign-feature-card { transform: none; }
    .ps-marketing .campaign-grid { grid-template-columns: repeat(2, 1fr); }
    .ps-marketing .campaign-card-large { grid-column: span 2; }
    .ps-marketing .brand-story-grid { grid-template-columns: repeat(2, 1fr); }
    .ps-marketing .channel-grid { grid-template-columns: repeat(2, 1fr); }
    .ps-marketing .marketing-impact-inner { grid-template-columns: 1fr; gap: 25px; }
    .ps-marketing .gallery-grid { grid-template-columns: repeat(2, 1fr); }
    .ps-marketing .gallery-large { grid-column: span 2; }
    .ps-marketing .marketing-cta-inner { flex-direction: column; align-items: flex-start; }
}

@media (max-width: 767px) {
    .ps-marketing .marketing-hero { padding: 30px 0 24px; }
    .ps-marketing .marketing-hero h1 { font-size: 36px; }
    .ps-marketing .marketing-hero-content > p { font-size: 14px; }
    .ps-marketing .marketing-hero-meta { flex-direction: column; gap: 10px; }
    .ps-marketing .campaign-feature-image { height: 220px; }
    .ps-marketing .campaign-filter-row { flex-direction: column; align-items: flex-start; }
    .ps-marketing .campaign-grid { grid-template-columns: 1fr; }
    .ps-marketing .campaign-card-large { grid-column: span 1; }
    .ps-marketing .campaign-card-large .campaign-image { height: 220px; }
    .ps-marketing .campaign-image { height: 210px; }
    .ps-marketing .brand-story-heading { flex-direction: column; align-items: flex-start; }
    .ps-marketing .brand-story-grid { grid-template-columns: 1fr; }
    .ps-marketing .channel-grid { grid-template-columns: 1fr; }
    .ps-marketing .impact-stats { grid-template-columns: 1fr; }
    .ps-marketing .gallery-grid { grid-template-columns: 1fr; grid-auto-rows: 220px; }
    .ps-marketing .gallery-large { grid-column: span 1; grid-row: span 1; }
}

@media (max-width: 500px) {
    .ps-marketing .marketing-hero h1 { font-size: 32px; }
    .ps-marketing .marketing-hero-actions { flex-direction: column; align-items: stretch; }
    .ps-marketing .hero-dark-btn, .ps-marketing .hero-light-btn { text-align: center; }
    .ps-marketing .campaign-feature-image { height: 190px; }
    .ps-marketing .section-heading h2, .ps-marketing .brand-story-heading h2 { font-size: 30px; }
    .ps-marketing .impact-copy h2 { font-size: 29px; }
}

@media (prefers-reduced-motion: reduce) {
    .ps-marketing *, .ps-marketing *::before, .ps-marketing *::after {
        animation: none !important;
        transition: none !important;
    }
}
