.elementor-kit-7{--e-global-color-primary:#33343F;--e-global-color-secondary:#5F6176;--e-global-color-text:#45465A;--e-global-color-accent:#E1202C;--e-global-color-mmreddk:#B8141F;--e-global-color-mmsoft:#FDE8E9;--e-global-color-mmdark:#1B1C22;--e-global-color-mmpaper:#F4F4F6;--e-global-color-mmgray:#C8C9D3;--e-global-color-mmmuted:#6F7088;--e-global-color-mmline:#DCDDE3;--e-global-color-mmwhite:#FFFFFF;--e-global-typography-primary-font-family:"Poppins";--e-global-typography-primary-font-weight:700;--e-global-typography-secondary-font-family:"Poppins";--e-global-typography-secondary-font-weight:600;--e-global-typography-text-font-family:"Poppins";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Poppins";--e-global-typography-accent-font-weight:600;background-color:#FFFFFF;color:#45465A;font-family:"Poppins", Sans-serif;font-size:16px;font-weight:400;line-height:1.7em;}.elementor-kit-7 button,.elementor-kit-7 input[type="button"],.elementor-kit-7 input[type="submit"],.elementor-kit-7 .elementor-button{background-color:#E1202C;font-family:"Poppins", Sans-serif;font-size:16px;font-weight:600;line-height:1.2em;color:#FFFFFF;border-radius:999px 999px 999px 999px;padding:15px 28px 15px 28px;}.elementor-kit-7 button:hover,.elementor-kit-7 button:focus,.elementor-kit-7 input[type="button"]:hover,.elementor-kit-7 input[type="button"]:focus,.elementor-kit-7 input[type="submit"]:hover,.elementor-kit-7 input[type="submit"]:focus,.elementor-kit-7 .elementor-button:hover,.elementor-kit-7 .elementor-button:focus{background-color:#B8141F;color:#FFFFFF;}.elementor-kit-7 e-page-transition{background-color:#FFBC7D;}.elementor-kit-7 a{color:#E1202C;}.elementor-kit-7 a:hover{color:#B8141F;}.elementor-kit-7 h1{color:#33343F;font-family:"Poppins", Sans-serif;font-size:64px;font-weight:800;line-height:1.08em;letter-spacing:-2px;}.elementor-kit-7 h2{color:#33343F;font-family:"Poppins", Sans-serif;font-size:44px;font-weight:700;line-height:1.15em;letter-spacing:-1px;}.elementor-kit-7 h3{color:#33343F;font-family:"Poppins", Sans-serif;font-size:22px;font-weight:700;line-height:1.25em;}.elementor-kit-7 h4{color:#33343F;font-family:"Poppins", Sans-serif;font-size:18px;font-weight:700;line-height:1.3em;}.elementor-kit-7 h6{color:#E1202C;font-family:"Poppins", Sans-serif;font-size:13px;font-weight:600;}.elementor-kit-7 label{font-family:"Poppins", Sans-serif;font-size:14px;font-weight:600;}.elementor-kit-7 input:not([type="button"]):not([type="submit"]),.elementor-kit-7 textarea,.elementor-kit-7 .elementor-field-textual{background-color:#F4F4F6;border-style:solid;border-width:2px 2px 2px 2px;border-color:#DCDDE3;border-radius:12px 12px 12px 12px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1200px;}.e-con{--container-max-width:1200px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-kit-7 h1{font-size:48px;}.elementor-kit-7 h2{font-size:36px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-7 h1{font-size:38px;}.elementor-kit-7 h2{font-size:30px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* =========================================================
   MAN-MED — efekty wizualne strony.
   Treści, kolory tekstów, ikony i zdjęcia edytujesz w Elementorze.
   Ten arkusz odpowiada za dekoracje (cienie, animacje, tła).
   Elementor → Ustawienia witryny → Własny CSS
   ========================================================= */
:root { --mm-red:#E1202C; --mm-red-dark:#B8141F; --mm-soft:#FDE8E9; --mm-ink:#33343F; --mm-ink3:#1B1C22; --mm-paper:#F4F4F6; --mm-line:#DCDDE3; --mm-gray:#C8C9D3; --mm-muted:#6F7088; --mm-shadow:0 1px 2px rgba(27,28,34,.06),0 12px 32px -12px rgba(27,28,34,.18); --mm-shadow-lg:0 30px 60px -24px rgba(27,28,34,.35); }
html { scroll-behavior:smooth; scroll-padding-top:110px; }
body { overflow-x:clip; -webkit-font-smoothing:antialiased; }
::selection { background:var(--mm-red); color:#fff; }

/* Nagłówki pomocnicze (eyebrow) */
.mm-eyebrow .elementor-heading-title { display:inline-flex; align-items:center; gap:10px; font-size:.8rem !important; font-weight:600 !important; letter-spacing:.18em; text-transform:uppercase; }
.mm-eyebrow .elementor-heading-title::before { content:""; width:28px; height:2px; background:currentColor; border-radius:2px; }
.mm-head--center .mm-eyebrow .elementor-heading-title::after { content:""; width:28px; height:2px; background:currentColor; border-radius:2px; }
.mm-head { max-width:780px; gap:8px; }
.mm-lead { font-size:1.12rem; max-width:62ch; }
.mm-head--center .mm-lead { margin-inline:auto; }
.mm-lead p:last-child, .mm-card-text p:last-child { margin-bottom:0; }

/* Logo tekstowe */
.mm-logo .elementor-heading-title { font-size:1.85rem !important; font-weight:800 !important; letter-spacing:-.06em; line-height:1; color:var(--mm-ink); }
.mm-footer .mm-logo .elementor-heading-title { color:#fff; }
.mm-logo .elementor-heading-title span { color:var(--mm-red); }
.mm-logo-tag .elementor-heading-title { font-size:.6rem !important; font-weight:600 !important; letter-spacing:.14em; text-transform:uppercase; color:var(--mm-muted); line-height:1; }
.mm-logo .elementor-heading-title a, .mm-logo-tag .elementor-heading-title a { color:inherit; }

/* Przyciski */
.mm-btn .elementor-button { transition:transform .2s ease, box-shadow .2s ease, background-color .2s, color .2s; }
.mm-btn .elementor-button:hover { transform:translateY(-2px); box-shadow:0 12px 24px -10px rgba(225,32,44,.55); }

/* Pasek górny i nagłówek */
.mm-topbar .elementor-icon-list-text { font-size:13px; }
.mm-header { transition:box-shadow .3s; }
.mm-header.elementor-sticky--effects { box-shadow:0 10px 30px -18px rgba(27,28,34,.35); background-color:rgba(255,255,255,.94) !important; backdrop-filter:saturate(1.6) blur(14px); -webkit-backdrop-filter:saturate(1.6) blur(14px); }
.mm-header-phone .elementor-button { font-weight:700; }
.mm-nav .elementor-nav-menu--dropdown { border-radius:0 0 18px 18px; box-shadow:0 30px 40px -20px rgba(27,28,34,.35); }

/* Hero */
.mm-dots { position:relative; isolation:isolate; }
.mm-dots::after { content:""; position:absolute; inset:0; z-index:0; pointer-events:none; opacity:.55;
  background-image:radial-gradient(rgba(255,255,255,.09) 1.2px, transparent 1.2px); background-size:22px 22px;
  -webkit-mask-image:linear-gradient(180deg,#000,transparent 85%); mask-image:linear-gradient(180deg,#000,transparent 85%); }
.mm-dots > .e-con-inner { position:relative; z-index:1; }
.mm-h1 .elementor-heading-title { font-size:clamp(2.3rem,5.4vw,4.2rem) !important; font-weight:800 !important; letter-spacing:-.035em; line-height:1.08; }
.mm-accent { color:var(--mm-red); position:relative; white-space:nowrap; }
.mm-accent::after { content:""; position:absolute; left:0; right:0; bottom:.06em; height:.14em; background:var(--mm-red); opacity:.28; border-radius:4px; }
.mm-hero-badge p { display:inline-flex; align-items:center; gap:10px; margin:0; padding:7px 16px 7px 8px; border-radius:999px; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.14); }
.mm-badge { background:var(--mm-red); color:#fff; border-radius:999px; padding:2px 10px; font-weight:600; }
.mm-hero { padding-bottom:170px !important; }
.mm-hero::before { content:"" !important; position:absolute !important; left:0 !important; right:0 !important; top:auto !important; bottom:-1px !important; width:100% !important; height:clamp(40px,6vw,90px) !important; opacity:1 !important; mix-blend-mode:normal !important; border-radius:0 !important; z-index:2; pointer-events:none;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 90' preserveAspectRatio='none'%3E%3Cpath fill='%23fff' d='M0 60c240 30 480 30 720 0s480-30 720 0v30H0z'/%3E%3C/svg%3E") center bottom / 100% 100% no-repeat; }
.mm-hero-art img { width:100%; filter:drop-shadow(0 40px 60px rgba(0,0,0,.45)); animation:mm-float 7s ease-in-out infinite; }
.mm-trust .elementor-icon-list-text { font-size:14px; }
.mm-chips { position:absolute !important; inset:0; pointer-events:none; }
.mm-chips .elementor-widget-container, .mm-chips { width:100%; }
.mm-chip { position:absolute; display:flex; align-items:center; gap:12px; padding:12px 18px 12px 12px; border-radius:16px; background:#fff; color:var(--mm-ink); box-shadow:var(--mm-shadow-lg); font-size:.85rem; line-height:1.3; }
.mm-chip b { display:block; font-size:1.05rem; }
.mm-chip__ico { width:42px; height:42px; border-radius:12px; display:grid; place-items:center; background:var(--mm-soft); color:var(--mm-red); font-size:20px; font-weight:700; flex:none; }
.mm-chip--a { left:-2%; top:10%; animation:mm-float 6s ease-in-out infinite reverse; }
.mm-chip--b { right:-2%; bottom:10%; animation:mm-float 8s ease-in-out infinite; }
.mm-split > .e-con:has(.mm-hero-art) { position:relative; }
@keyframes mm-float { 50% { transform:translateY(-12px); } }
@media (max-width:480px) { .mm-chip { font-size:.72rem; padding:8px 12px 8px 8px; } .mm-chip b { font-size:.9rem; } .mm-chip__ico { width:32px; height:32px; } .mm-accent { white-space:normal; } }

/* Hero podstron */
.mm-pagehero { position:relative; }
.mm-pagehero .mm-h1 { max-width:18ch; }
.mm-crumbs p { margin:0; } .mm-crumbs a { color:#fff; } .mm-crumbs a:hover { color:var(--mm-red); } .mm-crumbs span { opacity:.5; margin:0 6px; }
.mm-bigtext { position:absolute !important; right:-2vw; bottom:-.2em; z-index:-1; pointer-events:none; user-select:none; width:auto !important; }
.mm-bigtext .elementor-heading-title { font-size:clamp(6rem,18vw,16rem) !important; font-weight:800 !important; letter-spacing:-.06em; line-height:1; color:transparent !important; -webkit-text-stroke:1.5px rgba(255,255,255,.1); }

/* Statystyki */
.mm-stats-wrap { position:relative; z-index:3; margin-top:-90px; }
.mm-stats { background:#fff; border-radius:20px; box-shadow:var(--mm-shadow-lg); overflow:hidden; gap:0 !important; }
.mm-counter { padding:30px 28px; border-right:1px solid var(--mm-line); height:100%; }
.mm-counter:last-child { border-right:0; }
.mm-counter .elementor-counter { align-items:flex-start; }
.mm-counter .elementor-counter-number-wrapper { justify-content:flex-start; }
.mm-counter .elementor-counter-number-suffix { color:var(--mm-red); }
.mm-counter .elementor-counter-title { text-align:left; line-height:1.4; margin-top:8px; }
@media (max-width:1024px) { .mm-counter:nth-child(2) { border-right:0; } .mm-counter:nth-child(-n+2) { border-bottom:1px solid var(--mm-line); } }

/* Karty */
.mm-card { position:relative; background:#fff; border:1px solid var(--mm-line); border-radius:20px; padding:30px; transition:transform .3s ease, box-shadow .3s ease, border-color .3s; }
.e-con.mm-card { padding:32px; }
.mm-card:hover { transform:translateY(-6px); box-shadow:var(--mm-shadow); border-color:transparent; }
.mm-card--shadow { box-shadow:var(--mm-shadow); }
.mm-card--feature { overflow:hidden; }
.mm-card--feature::after { content:""; position:absolute; right:-60px; top:-60px; width:160px; height:160px; border-radius:50%; background:var(--mm-paper); z-index:0; transition:transform .4s; }
.mm-card--feature:hover::after { transform:scale(1.3); }
.mm-card--feature .elementor-icon-box-wrapper { position:relative; z-index:1; }
.mm-ib .elementor-icon { border-radius:16px !important; transition:background-color .3s, color .3s, transform .3s; }
.mm-card:hover .elementor-view-stacked .elementor-icon, .mm-card.elementor-view-stacked:hover .elementor-icon { background-color:var(--mm-red) !important; color:#fff !important; fill:#fff !important; transform:rotate(-6deg); }
.mm-card:hover .elementor-view-stacked .elementor-icon svg, .mm-card.elementor-view-stacked:hover .elementor-icon svg { fill:#fff !important; }
.mm-card--link .elementor-icon-box-title::after { content:" →"; color:var(--mm-red); }
.mm-card-text a { color:var(--mm-red); font-weight:500; }
.mm-card-text ul { list-style:none; padding:0; margin:0; display:grid; gap:12px; }
.mm-card-text ul li { position:relative; padding-left:28px; }
.mm-card-text ul li::before { content:"✓"; position:absolute; left:0; top:1px; width:20px; height:20px; border-radius:50%; background:var(--mm-red); color:#fff; font-size:11px; display:grid; place-items:center; }
.mm-who--yes { border-top:5px solid var(--mm-red); } .mm-who--no { border-top:5px solid var(--mm-ink); } .mm-who--when { border-top:5px solid var(--mm-gray); }
.mm-ib--title .elementor-icon-box-description { display:none; }

/* Odbiorcy (Komu świadczymy usługi) */
.mm-client { padding:20px; border-radius:16px; background:#fff; border:1px solid var(--mm-line); transition:transform .25s, border-color .25s, box-shadow .25s; height:100%; }
.mm-client:hover { transform:translateY(-4px); border-color:var(--mm-red); box-shadow:var(--mm-shadow); }
.mm-client--dark { background:rgba(255,255,255,.05); border-color:rgba(255,255,255,.1); }
.mm-client:hover .elementor-icon { background-color:var(--mm-red) !important; color:#fff !important; fill:#fff !important; }
.mm-client:hover .elementor-icon svg { fill:#fff !important; }
.mm-client .elementor-icon-box-title { margin:0 !important; line-height:1.35; }
.mm-client .elementor-icon-box-description { display:none; }
.mm-client .elementor-icon { border-radius:14px !important; }

/* Lista z ptaszkami */
.mm-checklist .elementor-icon-list-icon { width:24px; height:24px; min-width:24px; border-radius:50%; background:var(--mm-red); display:grid !important; place-items:center; }
.mm-checklist .elementor-icon-list-icon i, .mm-checklist .elementor-icon-list-icon svg { color:#fff !important; fill:#fff !important; font-size:11px !important; width:11px !important; }
.mm-checklist .elementor-icon-list-item { align-items:flex-start !important; }
.mm-checklist .elementor-icon-list-text { padding-inline-start:12px !important; }

/* Zdjęcia */
.mm-photo { position:relative; }
.mm-photo img { border-radius:20px; box-shadow:var(--mm-shadow-lg); aspect-ratio:4/3; object-fit:cover; width:100%; }
.mm-photo--logo img { aspect-ratio:auto; }
.mm-photo::before { content:""; position:absolute; inset:24px -24px -24px 24px; border-radius:20px; border:2px solid var(--mm-red); z-index:-1; }
.mm-photo-badge { position:absolute !important; left:-18px; bottom:26px; width:auto !important; z-index:2; }
.mm-photo-badge .elementor-heading-title { background:var(--mm-red); color:#fff; border-radius:16px; padding:18px 22px; box-shadow:var(--mm-shadow-lg); font-size:15px; font-weight:500; line-height:1.2; }
.mm-photo-badge b { display:block; font-size:2.2rem; font-weight:800; letter-spacing:-.04em; }
.mm-split > .e-con:has(.mm-photo-badge) { position:relative; }
.mm-illu img, .mm-map img { border-radius:20px; width:100%; }
.mm-map img { border:1px solid var(--mm-line); }
@media (max-width:767px) { .mm-photo::before { inset:14px -10px -14px 10px; } .mm-photo-badge { left:10px; } }

/* Pasek z typami odpadów */
.mm-marquee-wrap { overflow:hidden; padding:24px 0 !important; margin:-24px 0; z-index:2; }
.mm-marquee { background:var(--mm-red); color:#fff; padding:18px 0; transform:rotate(-1.2deg); margin:0 -20px; overflow:hidden; }
.mm-marquee__track { display:flex; gap:48px; width:max-content; animation:mm-scroll 38s linear infinite; font-weight:700; font-size:1.05rem; letter-spacing:.04em; text-transform:uppercase; white-space:nowrap; }
.mm-marquee__track span { display:inline-flex; align-items:center; gap:48px; }
.mm-marquee__track span::after { content:"✚"; opacity:.6; }
@keyframes mm-scroll { to { transform:translateX(-50%); } }

/* Proces */
.mm-steps { position:relative; counter-reset:mm-step; }
.mm-steps::before { content:""; position:absolute; top:36px; left:12%; right:12%; height:2px; background:repeating-linear-gradient(90deg,var(--mm-red) 0 10px,transparent 10px 20px); opacity:.5; }
.mm-step .elementor-icon-box-wrapper { text-align:center !important; }
.mm-step .elementor-icon-box-icon { display:flex; justify-content:center; }
.mm-step .elementor-icon { position:relative; width:74px; height:74px; border-radius:50% !important; background:#fff !important; border:2px solid var(--mm-line); box-shadow:0 0 0 8px #fff; display:grid !important; place-items:center; padding:0 !important; }
.mm-step .elementor-icon::after { counter-increment:mm-step; content:counter(mm-step); position:absolute; top:-6px; right:-6px; width:26px; height:26px; border-radius:50%; background:var(--mm-red); color:#fff; font:700 .8rem/26px Poppins,sans-serif; text-align:center; }
.mm-step .elementor-icon i, .mm-step .elementor-icon svg { color:var(--mm-red) !important; fill:var(--mm-red) !important; }
.mm-step .elementor-icon-box-description { font-size:15px; }
@media (max-width:1024px) { .mm-steps::before { display:none; } }

/* Tagi miast */
.mm-tags { display:flex; flex-wrap:wrap; gap:10px; }
.mm-tag { display:inline-flex; align-items:center; gap:8px; padding:8px 16px; border-radius:999px; background:#fff; border:1px solid var(--mm-line); font-weight:500; font-size:.92rem; color:var(--mm-ink); }
.mm-tag::before { content:"●"; color:var(--mm-red); font-size:.6rem; }
.mm-tag--main { background:var(--mm-ink); color:#fff; border-color:var(--mm-ink); }

/* CTA */
.mm-cta { position:relative; overflow:hidden; isolation:isolate; }
.mm-cta::after { content:"+"; position:absolute; right:26%; top:-60px; z-index:-1; font-size:18rem; font-weight:800; line-height:1; color:rgba(255,255,255,.08); pointer-events:none; }
.mm-cta-phone .elementor-button { font-size:clamp(1.3rem,2.6vw,2rem) !important; font-weight:800 !important; letter-spacing:-.02em; padding:14px 26px 14px 14px; }
.mm-cta-phone .elementor-button-icon { width:50px; height:50px; border-radius:50%; background:var(--mm-red); color:#fff; display:grid; place-items:center; }
.mm-cta-phone .elementor-button-icon svg { fill:#fff; }

@media (max-width:767px) { .mm-cta::after { display:none; } }

/* Długie treści (prawo, RODO) */
.mm-prose { font-size:1.04rem; }
.mm-prose h2 { font-size:clamp(1.4rem,2.4vw,1.9rem); margin:1.6em 0 .5em; color:var(--mm-ink); }
.mm-prose h2:first-child { margin-top:0; }
.mm-prose h3 { margin:1.4em 0 .5em; color:var(--mm-ink); }
.mm-prose a { color:var(--mm-red); font-weight:500; }
.mm-prose ul { list-style:none; padding:0; margin:0 0 1.2em; display:grid; gap:10px; }
.mm-prose ul li { position:relative; padding-left:28px; }
.mm-prose ul li::before { content:""; position:absolute; left:4px; top:.65em; width:10px; height:10px; border-radius:3px; background:var(--mm-red); transform:rotate(45deg); }
.mm-prose blockquote { margin:28px 0; padding:26px 30px 26px 34px; background:var(--mm-paper); border-radius:12px; border-left:5px solid var(--mm-red); font-size:1.08rem; font-weight:500; color:var(--mm-ink); }
.mm-prose blockquote cite { display:block; margin-top:10px; font-size:.85rem; font-style:normal; font-weight:600; color:var(--mm-muted); }
.mm-dropcap > p:first-of-type::first-letter, .mm-dropcap h2 + p::first-letter { float:left; font-size:4.2rem; line-height:.85; font-weight:800; color:var(--mm-red); margin:.08em .12em 0 0; }
.mm-aside-box--dark .elementor-icon-box-title { color:#fff !important; }

/* Oś czasu */
.mm-timeline { list-style:none; position:relative; display:grid; gap:20px; padding:0 0 0 26px; margin:0; }
.mm-timeline::before { content:""; position:absolute; left:6px; top:6px; bottom:6px; width:2px; background:var(--mm-line); }
.mm-timeline li { position:relative; font-size:.92rem; line-height:1.5; color:var(--mm-muted); }
.mm-timeline li::before { content:""; position:absolute; left:-26px; top:4px; width:14px; height:14px; border-radius:50%; background:#fff; border:3px solid var(--mm-red); }
.mm-timeline b { display:block; color:var(--mm-ink); font-size:1.05rem; }

/* Lista numerowana */
.mm-numbered { list-style:none; counter-reset:mm-n; display:grid; gap:16px; padding:0; margin:0 0 1em; }
.mm-numbered li { counter-increment:mm-n; position:relative; padding:22px 24px 22px 80px; background:#fff; border:1px solid var(--mm-line); border-radius:16px; }
.mm-numbered li::before { content:counter(mm-n, decimal-leading-zero); position:absolute; left:22px; top:20px; width:42px; height:42px; border-radius:12px; background:var(--mm-ink); color:#fff; font-weight:700; display:grid; place-items:center; font-size:.95rem; }
.mm-numbered a { color:var(--mm-red); }

/* Kary */
.mm-penalty { border-radius:20px; background:rgba(255,255,255,.05); border:1px solid rgba(255,255,255,.1); transition:border-color .25s, transform .25s; }
.mm-penalty:hover { border-color:var(--mm-red); transform:translateY(-4px); }
.mm-penalty__amount .elementor-heading-title { font-size:1.35rem !important; font-weight:800 !important; letter-spacing:-.02em; }
.mm-penalty__type .elementor-heading-title { font-size:.78rem !important; font-weight:600 !important; text-transform:uppercase; letter-spacing:.1em; margin-bottom:8px; }
.mm-penalty p { margin:0; }
.mm-source a { color:#fff; }

/* Kody odpadów */
.mm-codes-tools { display:flex; flex-wrap:wrap; gap:14px; align-items:center; justify-content:space-between; margin-bottom:6px; }
.mm-search { position:relative; flex:1 1 320px; max-width:460px; }
.mm-search::before { content:"⌕"; position:absolute; left:18px; top:50%; transform:translateY(-52%); font-size:22px; color:var(--mm-muted); pointer-events:none; }
.mm-search input { width:100%; padding:15px 18px 15px 50px !important; border-radius:999px !important; border:2px solid var(--mm-line) !important; font:500 1rem Poppins,sans-serif; color:var(--mm-ink); background:#fff; }
.mm-search input:focus { outline:none; border-color:var(--mm-red) !important; }
.mm-filters { display:flex; flex-wrap:wrap; gap:8px; }
.mm-filter { padding:10px 18px !important; border-radius:999px !important; border:2px solid var(--mm-line) !important; background:#fff !important; font:600 .9rem Poppins,sans-serif !important; color:var(--mm-ink) !important; cursor:pointer; transition:all .2s; }
.mm-filter:hover { border-color:var(--mm-ink) !important; }
.mm-filter.is-active { background:var(--mm-ink) !important; border-color:var(--mm-ink) !important; color:#fff !important; }
.mm-filter[data-filter="hazard"].is-active { background:var(--mm-red) !important; border-color:var(--mm-red) !important; }
.mm-codes-count { font-size:.9rem; color:var(--mm-muted); margin:10px 0 0; }
.mm-codes-empty { text-align:center; padding:40px 20px; color:var(--mm-muted); } .mm-codes-empty a { color:var(--mm-red); font-weight:600; }
.mm-code { background:#fff; border:1px solid var(--mm-line); border-radius:16px; transition:border-color .2s, box-shadow .2s, transform .2s; }
.mm-code:hover { border-color:var(--mm-ink); box-shadow:var(--mm-shadow); transform:translateY(-2px); }
.mm-code__id { flex:none !important; width:auto !important; }
.mm-code__id .elementor-heading-title { font-weight:800 !important; font-size:1.05rem !important; font-variant-numeric:tabular-nums; padding:10px 14px; border-radius:12px; background:var(--mm-paper); color:var(--mm-ink) !important; white-space:nowrap; min-width:118px; text-align:center; }
.mm-code--hazard .mm-code__id .elementor-heading-title { background:var(--mm-red); color:#fff !important; }
.mm-code__desc { flex:1 1 auto !important; }
.mm-code__desc p { margin:0; font-size:.95rem; line-height:1.55; }
.mm-code__desc::after { content:"Odpad inny niż niebezpieczny"; display:block; margin-top:10px; font-size:.72rem; font-weight:600; text-transform:uppercase; letter-spacing:.08em; color:var(--mm-muted); }
.mm-code--hazard .mm-code__desc::after { content:"⚠ Odpad niebezpieczny"; color:var(--mm-red); }
.mm-legend p { display:flex; align-items:center; gap:10px; margin:0; padding:18px 22px; border-radius:14px; background:var(--mm-soft); color:var(--mm-red-dark); font-weight:500; }
.mm-legend b { font-size:1.4rem; line-height:1; }
@media (max-width:520px) { .mm-code { flex-direction:column !important; } }

/* Zespół */
.mm-avatar img { width:140px !important; height:140px; border-radius:50%; object-fit:cover; box-shadow:0 0 0 6px #fff, 0 0 0 8px var(--mm-line); margin:0 auto 14px; }
.mm-member .mm-btn { width:100%; margin-top:10px; }
.mm-member .mm-btn .elementor-button { width:100%; }

/* Kontakt */
.mm-contact-card { padding:20px 22px; border-radius:18px; background:#fff; border:1px solid var(--mm-line); transition:border-color .2s, transform .2s, box-shadow .2s; }
.mm-contact-card:hover { border-color:var(--mm-red); transform:translateX(4px); box-shadow:var(--mm-shadow); }
.mm-contact-card .elementor-icon { border-radius:14px !important; }
.mm-contact-card .elementor-icon-box-title { font-size:.82rem !important; font-weight:500 !important; color:var(--mm-muted) !important; margin:0 !important; }
.mm-contact-card .elementor-icon-box-description { font-size:1.1rem !important; font-weight:700; color:var(--mm-ink) !important; word-break:break-word; }
.mm-form-card { box-shadow:var(--mm-shadow-lg); border:1px solid var(--mm-line); }
.mm-form .elementor-field-group .elementor-field { transition:border-color .2s, background-color .2s; }
.mm-form .elementor-field-group .elementor-field:focus { border-color:var(--mm-red) !important; background:#fff !important; }
.mm-form .elementor-field-type-acceptance label { font-size:.82rem; font-weight:400 !important; color:var(--mm-muted) !important; }
.mm-form .elementor-field-type-acceptance a { color:var(--mm-red); }
.mm-form .elementor-button { font-weight:600; padding:16px 26px; }
.mm-gmap iframe { border-radius:20px; }

/* Stopka */
.mm-footer-links .elementor-icon-list-item a { transition:color .2s; }
.mm-footer-bottom { border-top:1px solid rgba(255,255,255,.08); }
.mm-footer-bottom p { margin:0; } .mm-footer-bottom a { color:inherit; } .mm-footer-bottom a:hover { color:#fff; }
.mm-footer-about .mm-logo-tag { margin-bottom:6px; }

/* Pływający telefon (mobile) i „do góry” */
.mm-fab { position:fixed !important; right:16px; bottom:16px; z-index:90; width:auto !important; }
.mm-fab .elementor-button { width:60px; height:60px; padding:0; border-radius:50% !important; display:grid; place-items:center; font-size:24px; box-shadow:0 14px 30px -8px rgba(225,32,44,.7); }
.mm-fab .elementor-button-text { display:none; }
.mm-fab .elementor-button-icon { margin:0 !important; }
.mm-fab .elementor-button-icon svg { width:24px; height:24px; fill:#fff; }
.mm-to-top-wrap { position:absolute !important; width:auto !important; }
.mm-to-top { position:fixed; right:20px; bottom:20px; z-index:89; width:48px; height:48px; border:0 !important; border-radius:14px !important; background:var(--mm-ink) !important; color:#fff !important; font-size:20px !important; line-height:1; padding:0 !important; cursor:pointer; opacity:0; visibility:hidden; transform:translateY(10px); transition:all .3s; }
.mm-to-top.is-visible { opacity:1; visibility:visible; transform:none; }
@media (max-width:767px) { .mm-to-top { bottom:90px; right:22px; } }

@media (prefers-reduced-motion:reduce) { .mm-hero-art img, .mm-chip, .mm-marquee__track { animation:none !important; } html { scroll-behavior:auto; } }

/* Ukrycie przycisku „do góry” motywu Astra (strona ma własny) */
#ast-scroll-top { display:none !important; }

/* Proporcje ilustracji SVG */
.mm-hero-art img { aspect-ratio:640/520; height:auto !important; }
.mm-illu img { aspect-ratio:4/3; height:auto !important; }
.mm-map img { aspect-ratio:5/4; height:auto !important; }
.mm-counter .elementor-counter-title { line-height:1.4 !important; }
.mm-split > .e-con > .elementor-element, .mm-illu, .mm-map, .mm-hero-art, .mm-photo, .mm-avatar { flex-shrink:0; }
.mm-logo-wrap { width:auto !important; flex:none !important; }
.mm-logo-tag .elementor-heading-title { white-space:nowrap; }/* End custom CSS */