/* ============================================================
   PAN ENGINEERS — PREMIUM LAYER (v3.0)
   Loads LAST. Refines the existing Sky Blue brand into a
   world-class, executive look. No content / layout changes —
   pure visual polish (type, depth, glass, motion, focus, a11y).
============================================================ */

:root {
    /* refined depth system */
    --pm-ink:          #06263b;
    --pm-glass:        rgba(255, 255, 255, 0.72);
    --pm-hairline:     rgba(12, 74, 110, 0.10);
    --pm-shadow-xs:    0 1px 2px rgba(6, 38, 59, .06);
    --pm-shadow-sm:    0 2px 6px rgba(6, 38, 59, .06), 0 8px 24px rgba(6, 38, 59, .06);
    --pm-shadow-md:    0 4px 12px rgba(6, 38, 59, .07), 0 18px 48px rgba(6, 38, 59, .10);
    --pm-shadow-lg:    0 8px 20px rgba(6, 38, 59, .08), 0 32px 80px rgba(3, 105, 161, .18);
    --pm-glow:         0 0 0 1px rgba(56, 189, 248, .35), 0 12px 40px rgba(14, 165, 233, .35);
    --pm-grad-brand:   linear-gradient(135deg, #38bdf8 0%, #0ea5e9 45%, #0369a1 100%);
    --pm-grad-deep:    linear-gradient(135deg, #042a3d 0%, #073952 40%, #0369a1 100%);
    --pm-ease:         cubic-bezier(.22, 1, .36, 1);
    --pm-radius:       18px;
}

/* ---------- Base typography & rendering ---------- */
html { text-rendering: optimizeLegibility; }
body {
    font-feature-settings: "cv02", "cv03", "cv04", "cv11", "ss01";
    letter-spacing: -0.005em;
    background:
        radial-gradient(1200px 600px at 100% -10%, rgba(14,165,233,.06), transparent 60%),
        radial-gradient(900px 500px at -10% 30%, rgba(56,189,248,.05), transparent 60%),
        #fff;
}
h1, h2, h3, h4, .section-title, .cta-headline, .hero-dual-title {
    letter-spacing: -0.025em;
    text-wrap: balance;
}
p { text-wrap: pretty; }

::selection { background: rgba(14,165,233,.28); color: var(--pm-ink); }
::-webkit-scrollbar { width: 10px; }
::-webkit-scrollbar-track { background: #eef7fd; }
::-webkit-scrollbar-thumb {
    background: linear-gradient(#38bdf8, #0369a1);
    border-radius: 10px; border: 2px solid #eef7fd;
}

/* Accessible, elegant focus ring */
:focus-visible {
    outline: 2px solid #38bdf8;
    outline-offset: 3px;
    border-radius: 8px;
}

/* ---------- Scroll progress bar (JS-driven) ---------- */
.pm-progress {
    position: fixed; top: 0; left: 0; height: 3px; width: 100%;
    z-index: 100000; pointer-events: none;
    transform-origin: 0 50%; transform: scaleX(0);
    background: linear-gradient(90deg, #7dd3fc, #0ea5e9, #0369a1);
    box-shadow: 0 0 12px rgba(14,165,233,.7);
}

/* ---------- Header: glass, slim on scroll ---------- */
.pe-header {
    background: linear-gradient(120deg, rgba(4,42,61,.94) 0%, rgba(3,105,161,.92) 55%, rgba(2,132,199,.92) 100%);
    backdrop-filter: saturate(160%) blur(18px);
    -webkit-backdrop-filter: saturate(160%) blur(18px);
    border-bottom: 1px solid rgba(255,255,255,.14);
    box-shadow: 0 1px 0 rgba(255,255,255,.06) inset, 0 10px 40px rgba(4,42,61,.28);
    transition: background .4s var(--pm-ease), box-shadow .4s var(--pm-ease), height .4s var(--pm-ease);
}
.pe-header.scrolled {
    background: rgba(4,42,61,.88);
    border-bottom: 1px solid rgba(125,211,252,.35);
    box-shadow: 0 12px 48px rgba(4,42,61,.45);
}
.pe-header .header-inner { transition: height .4s var(--pm-ease); }
.pe-header.scrolled .header-inner { height: 68px; }
.pe-header .pe-logo img { transition: height .4s var(--pm-ease), transform .4s var(--pm-ease); }
.pe-header.scrolled .pe-logo img { height: 48px !important; }

.nav-link { font-weight: 600; letter-spacing: .01em; }
.nav-link .nav-underline,
.nav-underline {
    height: 2px; border-radius: 2px;
    background: linear-gradient(90deg, #7dd3fc, #fff);
    box-shadow: 0 0 10px rgba(125,211,252,.8);
}

.nav-dropdown {
    border-radius: 16px !important;
    border: 1px solid rgba(125,211,252,.35) !important;
    background: rgba(4,42,61,.97) !important;
    backdrop-filter: blur(16px);
    box-shadow: 0 24px 60px rgba(0,0,0,.45), 0 0 30px rgba(14,165,233,.18) !important;
}
.nav-dropdown a { color: rgba(255,255,255,.92) !important; transition: background .25s var(--pm-ease), padding-left .25s var(--pm-ease), color .25s; }
.nav-dropdown a:hover { padding-left: 24px; color: #7dd3fc !important; background: rgba(56,189,248,.16); }

.header-cta-btn, .catalogue-download-btn {
    border-radius: 999px !important;
    background: linear-gradient(135deg, #ffffff 0%, #e0f2fe 100%) !important;
    color: #0369a1 !important;
    font-weight: 700;
    box-shadow: 0 6px 20px rgba(0,0,0,.18), inset 0 1px 0 #fff;
    transition: transform .35s var(--pm-ease), box-shadow .35s var(--pm-ease);
}
.header-cta-btn:hover, .catalogue-download-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 12px 30px rgba(0,0,0,.28), inset 0 1px 0 #fff;
}
.header-catalogue-menu {
    border-radius: 18px !important;
    border: 1px solid var(--pm-hairline) !important;
    box-shadow: var(--pm-shadow-lg) !important;
    overflow: hidden;
}
.h-cat-item { transition: background .25s var(--pm-ease), transform .25s var(--pm-ease); }
.h-cat-item:hover { transform: translateX(4px); }
.phone-icon { box-shadow: 0 0 0 4px rgba(125,211,252,.18); }

/* ---------- Buttons ---------- */
.btn-primary, .cta-download-btn, .card-btn, .cat-primary-btn, .earth-btn, .tractor-btn {
    border-radius: 999px;
    letter-spacing: .01em;
    box-shadow: 0 10px 28px rgba(14,165,233,.35), inset 0 1px 0 rgba(255,255,255,.35);
    transition: transform .4s var(--pm-ease), box-shadow .4s var(--pm-ease), filter .4s;
    position: relative; overflow: hidden; isolation: isolate;
}
.btn-primary::after, .cta-download-btn::after {
    content: ""; position: absolute; inset: 0; z-index: -1;
    background: linear-gradient(105deg, transparent 30%, rgba(255,255,255,.45) 50%, transparent 70%);
    transform: translateX(-120%); transition: transform .8s var(--pm-ease);
}
.btn-primary:hover, .cta-download-btn:hover {
    transform: translateY(-3px);
    box-shadow: 0 18px 44px rgba(14,165,233,.5), inset 0 1px 0 rgba(255,255,255,.4);
}
.btn-primary:hover::after, .cta-download-btn:hover::after { transform: translateX(120%); }
.btn-primary:active, .cta-download-btn:active { transform: translateY(-1px) scale(.98); }
.btn-primary svg, .btn-outline-dark svg { transition: transform .4s var(--pm-ease); }
.btn-primary:hover svg, .btn-outline-dark:hover svg { transform: translateX(5px); }

.btn-outline, .btn-outline-dark, .cta-call-btn {
    border-radius: 999px;
    backdrop-filter: blur(8px);
    transition: transform .4s var(--pm-ease), background .3s, box-shadow .4s var(--pm-ease), border-color .3s;
}
.btn-outline-dark { border: 1.5px solid rgba(3,105,161,.35); }
.btn-outline-dark:hover {
    transform: translateY(-2px);
    border-color: #0ea5e9;
    box-shadow: 0 10px 30px rgba(14,165,233,.22);
}

/* ---------- Section headings ---------- */
.section-tag {
    background: linear-gradient(135deg, rgba(14,165,233,.12), rgba(56,189,248,.06));
    border: 1px solid rgba(14,165,233,.28);
    letter-spacing: .28em;
    box-shadow: 0 2px 10px rgba(14,165,233,.10), inset 0 1px 0 rgba(255,255,255,.7);
}
.section-title { color: var(--pm-ink); }
.section-title .highlight {
    background: var(--pm-grad-brand);
    -webkit-background-clip: text; background-clip: text;
    -webkit-text-fill-color: transparent; color: transparent;
}
.section-desc { color: #52667a; }

/* ---------- Hero ---------- */
.pe-hero-dual { position: relative; }
.pe-hero-dual::after {
    content: ""; position: absolute; inset: 0; pointer-events: none;
    background:
        radial-gradient(700px 400px at 80% 0%, rgba(56,189,248,.18), transparent 60%),
        radial-gradient(600px 400px at 0% 100%, rgba(3,105,161,.25), transparent 60%);
    mix-blend-mode: screen;
}
.hero-badge {
    backdrop-filter: blur(12px);
    border: 1px solid rgba(255,255,255,.28) !important;
    box-shadow: 0 8px 30px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.25);
}
.hero-cat-card {
    border-radius: 24px !important;
    box-shadow: 0 20px 60px rgba(4,42,61,.35);
    transition: box-shadow .5s var(--pm-ease), border-color .4s ease !important;
    transform: none !important;
}
.hero-cat-card:hover {
    transform: none !important;
    box-shadow: 0 28px 80px rgba(3,105,161,.5), 0 0 0 1px rgba(125,211,252,.5) !important;
}
.hero-cat-img { transition: transform 1.2s var(--pm-ease) !important; }
.hero-cat-card:hover .hero-cat-img { transform: scale(1.06) !important; }
.hero-stats-box {
    backdrop-filter: blur(18px) saturate(150%);
    -webkit-backdrop-filter: blur(18px) saturate(150%);
    border: 1px solid rgba(255,255,255,.22) !important;
    box-shadow: 0 24px 70px rgba(4,42,61,.35), inset 0 1px 0 rgba(255,255,255,.3) !important;
    border-radius: 22px !important;
}
.hsb-num { font-variant-numeric: tabular-nums; letter-spacing: -.02em; }

/* ---------- About ---------- */
.collage-main {
    border-radius: 28px !important;
    box-shadow: var(--pm-shadow-lg) !important;
    outline: 1px solid rgba(255,255,255,.6); outline-offset: -1px;
    transform: none !important;
}
.collage-main img { transition: transform 1.2s var(--pm-ease) !important; }
.collage-main:hover img { transform: scale(1.04) !important; }
.collage-badge-est {
    background: var(--pm-grad-deep) !important;
    box-shadow: 0 16px 40px rgba(3,105,161,.45), 0 0 0 6px rgba(255,255,255,.9) !important;
}
.qs-item {
    padding: 18px 12px; border-radius: 16px;
    background: linear-gradient(180deg, #fff, #f3faff);
    border: 1px solid var(--pm-hairline);
    box-shadow: var(--pm-shadow-xs);
    transition: box-shadow .4s var(--pm-ease), border-color .3s;
}
.qs-item:hover { box-shadow: var(--pm-shadow-md); border-color: rgba(14,165,233,.4); }
.qs-num {
    font-variant-numeric: tabular-nums;
    background: var(--pm-grad-brand);
    -webkit-background-clip: text; background-clip: text;
    -webkit-text-fill-color: transparent;
}
.check-row svg { filter: drop-shadow(0 2px 6px rgba(14,165,233,.4)); }

/* ---------- Cards: Why-us / Products ---------- */
.why-card {
    border-radius: var(--pm-radius);
    border: 1px solid var(--pm-hairline);
    background: linear-gradient(180deg, #ffffff 0%, #f5fbff 100%);
    box-shadow: var(--pm-shadow-sm);
    transition: box-shadow .5s var(--pm-ease), border-color .4s ease !important;
    position: relative;
    transform: none !important;
}
.why-card:hover {
    transform: none !important;
    box-shadow: var(--pm-shadow-lg) !important;
    border-color: rgba(14,165,233,.45) !important;
}
.why-icon {
    border-radius: 16px;
    box-shadow: 0 8px 22px rgba(14,165,233,.22);
    transition: transform .5s var(--pm-ease), box-shadow .5s var(--pm-ease), background .4s;
}
.why-card:hover .why-icon { box-shadow: 0 14px 34px rgba(14,165,233,.5); transform: rotate(-4deg) scale(1.06); }

.product-card .card-inner, .product-card-inner {
    border-radius: 20px !important;
    box-shadow: var(--pm-shadow-sm);
    border: 1px solid var(--pm-hairline);
    transition: box-shadow .4s var(--pm-ease), border-color .3s;
}
.product-card:hover .card-inner {
    box-shadow: var(--pm-shadow-lg) !important;
    border-color: rgba(14,165,233,.4) !important;
}
.product-card, .product-card .card-image-bg { transition-timing-function: var(--pm-ease); }

/* Spotlight following cursor on cards (JS sets --mx/--my) */
.pm-spot { position: relative; }
.pm-spot::before {
    content: ""; position: absolute; inset: 0; border-radius: inherit; pointer-events: none;
    background: radial-gradient(360px circle at var(--mx, 50%) var(--my, 50%), rgba(56,189,248,.22), transparent 60%);
    opacity: 0; transition: opacity .4s; z-index: 1;
}
.pm-spot:hover::before { opacity: 1; }

/* ---------- Brands marquee ---------- */
.trust-marquee-wrap {
    -webkit-mask-image: linear-gradient(90deg, transparent, #000 10%, #000 90%, transparent);
            mask-image: linear-gradient(90deg, transparent, #000 10%, #000 90%, transparent);
}

/* ---------- Gallery strip ---------- */
.gs-item { border-radius: 20px !important; overflow: hidden; box-shadow: var(--pm-shadow-md); transition: box-shadow .5s var(--pm-ease), border-color .3s; transform: none !important; }
.gs-item:hover { transform: none !important; box-shadow: var(--pm-shadow-lg); }
.gs-item img { transition: transform 1.2s var(--pm-ease); }
.gs-item:hover img { transform: scale(1.08); }

/* ---------- Big CTA ---------- */
.pe-big-cta {
    background:
        radial-gradient(800px 400px at 15% 0%, rgba(56,189,248,.35), transparent 60%),
        radial-gradient(700px 400px at 100% 100%, rgba(14,165,233,.30), transparent 60%),
        var(--pm-grad-deep) !important;
    position: relative; overflow: hidden;
}
.cta-headline { text-shadow: 0 8px 40px rgba(0,0,0,.35); }
.cta-headline em {
    font-style: normal;
    background: linear-gradient(90deg, #bae6fd, #ffffff);
    -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent;
}
.cta-trust-badges span {
    padding: 8px 16px; border-radius: 999px;
    background: rgba(255,255,255,.08);
    border: 1px solid rgba(255,255,255,.18);
    backdrop-filter: blur(8px);
}
.cta-call-btn { border: 1.5px solid rgba(255,255,255,.4); background: rgba(255,255,255,.08); }
.cta-call-btn:hover { background: rgba(255,255,255,.18); box-shadow: 0 14px 38px rgba(0,0,0,.28); }

/* ---------- Footer ---------- */
.pe-footer {
    background:
        radial-gradient(800px 300px at 50% -10%, rgba(14,165,233,.18), transparent 60%),
        linear-gradient(180deg, #06263b 0%, #031a29 100%) !important;
    border-top: 1px solid rgba(125,211,252,.25);
}
.footer-nav a, .footer-social a { transition: color .3s, background .3s; }
.footer-nav a:hover { color: #7dd3fc; }
.footer-social a:hover { color: #38bdf8; }

/* ---------- Inner pages (about / products / catalogue / gallery / contact) ---------- */
.form-group input, .form-group textarea, .form-group select {
    border-radius: 14px !important;
    border: 1.5px solid #dbe7f1 !important;
    background: #fbfdff !important;
    transition: border-color .3s, box-shadow .3s, background .3s;
}
.form-group input:focus, .form-group textarea:focus, .form-group select:focus {
    border-color: #0ea5e9 !important;
    background: #fff !important;
    box-shadow: 0 0 0 4px rgba(14,165,233,.16) !important;
    outline: none;
}
.timeline-item .timeline-content,
.timeline-item .t-card { border-radius: 18px; box-shadow: var(--pm-shadow-sm); }
.contact-item { transition: box-shadow .4s var(--pm-ease), border-color .3s; }
.contact-item:hover { box-shadow: var(--pm-shadow-md); }
.filter-tab { border-radius: 999px !important; transition: all .35s var(--pm-ease); }
.gallery-img-wrap { border-radius: 18px; overflow: hidden; }
.gallery-img-wrap img { transition: transform 1.1s var(--pm-ease); }
.gallery-img-wrap:hover img { transform: scale(1.07); }
img { image-rendering: auto; }

/* ---------- Smoother scroll-reveal ---------- */
.scroll-reveal {
    transform: translateY(32px) scale(.985);
    filter: blur(6px);
    transition: opacity .9s var(--pm-ease), transform .9s var(--pm-ease), filter .9s var(--pm-ease) !important;
}
.scroll-reveal.visible, .scroll-reveal.revealed, .scroll-reveal.in-view, .scroll-reveal.active {
    filter: none;
}

/* ---------- Preloader ---------- */
.pe-preloader { background: var(--pm-grad-deep) !important; }
html.pm-seen .pe-preloader { display: none !important; }
.preloader-fill { background: linear-gradient(90deg, #7dd3fc, #fff) !important; box-shadow: 0 0 16px rgba(125,211,252,.9); }

/* ---------- Mobile refinements ---------- */
@media (max-width: 768px) {
    .pe-header.scrolled .header-inner { height: 62px; }
    .why-card:hover, .gs-item:hover, .hero-cat-card:hover { transform: none !important; }
    .scroll-reveal { filter: none; transform: translateY(24px); }
    .btn-primary, .cta-download-btn { width: 100%; justify-content: center; }
}

/* ============================================================
   PREMIUM v2 — dramatic hero, dark "Why us", rhythm & depth
============================================================ */

/* Spotlight must not break cards that already own ::before */
.pm-spot::before { height: auto; transform: none; bottom: auto; right: auto; width: 100%; height: 100%; top: 0; left: 0; }

/* ---------- HERO: clean white (kept light) with soft sky glow ---------- */
.pe-hero-dual {
    background:
        radial-gradient(900px 480px at 15% 0%, rgba(14,165,233,.10), transparent 60%),
        radial-gradient(800px 480px at 100% 10%, rgba(56,189,248,.10), transparent 60%),
        #ffffff !important;
}
.hero-cat-card { box-shadow: 0 24px 70px rgba(6,38,59,.22), 0 2px 6px rgba(6,38,59,.08) !important; }
.hero-stats-box { background: #fff !important; border: 1px solid var(--pm-hairline) !important; box-shadow: var(--pm-shadow-md) !important; }

/* ---------- Section heading accent bar ---------- */
.section-header .section-title::after {
    content: ""; display: block; width: 72px; height: 4px; border-radius: 4px;
    margin: 22px auto 0; background: var(--pm-grad-brand);
    box-shadow: 0 6px 20px rgba(14,165,233,.5);
}

/* ---------- About: offset frame + floating depth ---------- */
.about-img-collage { position: relative; }
.about-img-collage .collage-main { position: relative; z-index: 1; }
.about-img-collage .collage-badge-est { z-index: 2; }
.about-lead { font-size: 19px; line-height: 1.8; color: #3f566b; }
.about-quick-stats {
    background: transparent !important; border: 0 !important; box-shadow: none !important;
    gap: 16px;
}
.check-row { padding: 6px 0; }

/* ---------- Brands: monochrome -> colour on hover ---------- */
.brand-logo-card {
    border-radius: 20px !important;
    box-shadow: var(--pm-shadow-sm);
    transition: box-shadow .5s var(--pm-ease), border-color .4s ease !important;
    transform: none !important;
}
.brand-logo-card:hover { transform: none !important; box-shadow: var(--pm-shadow-lg) !important; border-color: rgba(14,165,233,.45) !important; }
.brand-img-wrap img { filter: grayscale(1) contrast(1.05) opacity(.72); transition: filter .5s var(--pm-ease), transform .5s var(--pm-ease) !important; }
.brand-logo-card:hover .brand-img-wrap img { filter: none; transform: scale(1.06); }

/* ---------- WHY US: light, with numbered cards ---------- */
.pe-why-us {
    background:
        radial-gradient(800px 400px at 0% 0%, rgba(14,165,233,.08), transparent 60%),
        linear-gradient(180deg, #f3faff 0%, #ffffff 100%) !important;
}
.why-grid { counter-reset: pmwhy; }
.why-card::after {
    counter-increment: pmwhy; content: "0" counter(pmwhy);
    position: absolute; right: 22px; top: 14px;
    font-family: var(--font-display); font-weight: 800; font-size: 60px; line-height: 1;
    color: rgba(14,165,233,.10); letter-spacing: -.03em; pointer-events: none;
    transition: color .5s var(--pm-ease);
}
.why-card:hover::after { color: rgba(14,165,233,.25); }
.why-card h4 { color: var(--pm-ink); font-size: 20px; }
.why-icon { background: linear-gradient(135deg, #0ea5e9, #0369a1) !important; color: #fff !important; }
.why-icon svg { stroke: #fff; }

/* ---------- Gallery strip ---------- */
.pe-gallery-strip { background: linear-gradient(180deg, #f3faff 0%, #ffffff 100%) !important; }
.gallery-scroll-track {
    -webkit-mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent);
            mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent);
}
.gs-item span { backdrop-filter: blur(10px); }

/* ---------- CTA: glowing orbs ---------- */
.pe-big-cta::before, .pe-big-cta::after {
    content: ""; position: absolute; border-radius: 50%; pointer-events: none;
    filter: blur(70px); opacity: .55;
}
.pe-big-cta::before { width: 420px; height: 420px; left: -120px; top: -120px; background: #38bdf8; animation: pm-float 12s ease-in-out infinite; }
.pe-big-cta::after  { width: 380px; height: 380px; right: -100px; bottom: -140px; background: #0ea5e9; animation: pm-float 15s ease-in-out infinite reverse; }
@keyframes pm-float { 50% { transform: translate(40px, 30px) scale(1.12); } }
.pe-big-cta .container { position: relative; z-index: 2; }
.cta-download-btn {
    background: #fff !important; color: #0369a1 !important;
    box-shadow: 0 16px 50px rgba(0,0,0,.35), 0 0 0 6px rgba(255,255,255,.12) !important;
}

/* ---------- Footer accent ---------- */
.pe-footer { position: relative; }
.pe-footer::before {
    content: ""; position: absolute; top: 0; left: 0; right: 0; height: 2px;
    background: linear-gradient(90deg, transparent, #38bdf8, #ffffff, #38bdf8, transparent);
    box-shadow: 0 0 24px rgba(56,189,248,.8);
}


/* ---------- TYPOGRAPHY v2: Plus Jakarta Sans (display) + Inter (text) ---------- */
.hero-dual-title { font-size: clamp(40px, 5vw, 72px); line-height: 1.06; font-weight: 800; letter-spacing: -0.025em; }
.title-dim { font-size: .48em; letter-spacing: .28em; font-weight: 700; }
.hero-dual-sub { font-weight: 600; letter-spacing: .06em; }
.section-title { font-size: clamp(32px, 4.2vw, 52px); font-weight: 800; line-height: 1.12; }
.cta-headline { font-weight: 800; line-height: 1.1; }
.section-tag { font-family: var(--font-primary); font-weight: 700; letter-spacing: .2em; }
.hsb-num, .qs-num, .why-card::after { font-family: var(--font-display); font-weight: 800; letter-spacing: -.03em; }
.why-card h4, .cat-title, .card-title, .product-card-title { font-family: var(--font-display); font-weight: 700; letter-spacing: -.02em; }
.nav-link, .btn-primary, .cta-download-btn, .cta-call-btn, .header-cta-btn, .card-btn, .cat-primary-btn { font-family: var(--font-primary); font-weight: 600; }
.footer-nav h4 { font-family: var(--font-display); letter-spacing: .14em; }
body { font-size: 16px; }
p, li { font-weight: 400; }

/* ---------- Motion safety ---------- */
@media (prefers-reduced-motion: reduce) {
    .scroll-reveal { filter: none !important; transform: none !important; opacity: 1 !important; }
    .pm-progress { display: none; }
}

/* ---------- Print ---------- */
@media print {
    .pe-header, .pm-progress, .pe-preloader, .cookie-banner { display: none !important; }
}
