
        :root {
            --primary: #d32f2f;
            --primary-gradient: linear-gradient(135deg, #d32f2f 0%, #b71c1c 100%);
            --dark: #121212;
            --light: #f8f9fa;
            --white: #ffffff;
            --gray: #6c757d;
            --success: #28a745;
            --shadow-soft: 0 10px 40px -10px rgba(0,0,0,0.08);
            --shadow-hover: 0 20px 50px -10px rgba(211, 47, 47, 0.2);
            --whatsapp-color: #25D366;
        }

        * { margin: 0; padding: 0; box-sizing: border-box; font-family: 'Manrope', sans-serif; }
        body { background: var(--white); color: var(--dark); line-height: 1.6; overflow-x: hidden; font-size: 16px; }
        html { scroll-behavior: smooth; }
        a { text-decoration: none; transition: 0.3s; color: inherit; }
        ul { list-style: none; }

        /* --- ANIMACJE --- */
        .reveal { opacity: 0; transform: translateY(30px); transition: all 0.8s ease-out; }
        .reveal.active { opacity: 1; transform: translateY(0); }
        .fade-in-up { animation: fadeInUp 0.8s ease-out forwards; opacity: 0; transform: translateY(20px); }
        .delay-1 { animation-delay: 0.2s; }
        .delay-2 { animation-delay: 0.4s; }
        .delay-3 { animation-delay: 0.6s; }
        @keyframes fadeInUp { to { opacity: 1; transform: translateY(0); } }
        
        /* --- PULSUJĄCA KROPKA --- */
        .pulse-dot {
            width: 8px; height: 8px; background: #4ade80; border-radius: 50%;
            display: inline-block; margin-right: 6px;
            box-shadow: 0 0 0 rgba(74, 222, 128, 0.7);
            animation: pulse 2s infinite;
        }
        @keyframes pulse {
            0% { box-shadow: 0 0 0 0 rgba(74, 222, 128, 0.7); }
            70% { box-shadow: 0 0 0 6px rgba(74, 222, 128, 0); }
            100% { box-shadow: 0 0 0 0 rgba(74, 222, 128, 0); }
        }

        /* --- TOP BAR --- */
        .top-bar {
            background: #0a0a0a; color: #eee; font-size: 0.85rem; padding: 10px 0; text-align: center; letter-spacing: 0.5px;
        }
        .top-bar-content { display: flex; justify-content: center; gap: 25px; align-items: center; flex-wrap: wrap; }
        .status-badge { display: flex; align-items: center; background: rgba(255,255,255,0.1); padding: 2px 10px; border-radius: 12px; font-weight: 700; font-size: 0.75rem; color: #4ade80; }

        /* --- NAVBAR --- */
        header { 
            background: rgba(255,255,255,0.95); backdrop-filter: blur(10px); 
            padding: 15px 0; position: sticky; top: 0; z-index: 1000; 
            border-bottom: 1px solid rgba(0,0,0,0.05);
        }
        .container { max-width: 1200px; margin: auto; padding: 0 20px; }
        .nav-wrapper { display: flex; justify-content: space-between; align-items: center; }
        .logo img { height: 50px; display: block; }
        
        .nav-menu { display: flex; gap: 30px; align-items: center; }
        .nav-menu a { font-weight: 600; color: var(--dark); font-size: 0.95rem; }
        .nav-menu a:hover { color: var(--primary); }
        
        .nav-cta {
            background: var(--primary-gradient); color: white !important;
            padding: 10px 24px; border-radius: 50px; font-weight: 800;
            display: flex; align-items: center; gap: 8px; font-size: 1.1rem;
            box-shadow: 0 4px 15px rgba(211, 47, 47, 0.3);
        }
        .nav-cta:hover { transform: scale(1.05); box-shadow: 0 6px 20px rgba(211, 47, 47, 0.4); }

        /* --- HERO --- */
        .hero {
            background: linear-gradient(rgba(0,0,0,0.7), rgba(0,0,0,0.6)), url('../img/serwis-mobilny.webp');
            background-size: cover; background-position: center; background-attachment: fixed;
            height: 85vh; min-height: 600px; display: flex; align-items: center; text-align: center; color: white;
            position: relative;
        }
        .hero-content { max-width: 800px; margin: auto; }
        .badge-hero {
            background: rgba(255,255,255,0.1); border: 1px solid rgba(255,255,255,0.2);
            padding: 5px 15px; border-radius: 50px; font-size: 0.8rem; text-transform: uppercase; letter-spacing: 1px;
            font-weight: 700; margin-bottom: 20px; display: inline-block; backdrop-filter: blur(5px);
        }
        .hero h1 { font-size: 3.5rem; font-weight: 800; line-height: 1.1; margin-bottom: 20px; letter-spacing: -1px; }
        .hero p { font-size: 1.3rem; font-weight: 300; opacity: 0.9; margin-bottom: 40px; }
        
        .btn-group { display: flex; gap: 15px; justify-content: center; flex-wrap: wrap; }
        .btn { padding: 18px 40px; border-radius: 50px; font-weight: 700; font-size: 1.1rem; border: none; cursor: pointer; display: flex; align-items: center; gap: 10px; }
        .btn-main { background: var(--primary-gradient); color: white; box-shadow: 0 10px 30px rgba(211, 47, 47, 0.4); }
        .btn-main:hover { transform: translateY(-3px); }
        .btn-sec { background: rgba(255,255,255,0.15); color: white; backdrop-filter: blur(10px); border: 1px solid rgba(255,255,255,0.3); }
        .btn-sec:hover { background: rgba(255,255,255,0.25); }

        /* --- TRUST BAR --- */
        .brands-strip { padding: 30px 0; border-bottom: 1px solid #eee; background: #fff; }
        .brands-wrapper { display: flex; justify-content: center; gap: 40px; flex-wrap: wrap; opacity: 0.4; filter: grayscale(100%); }
        .brand-name { font-weight: 900; font-size: 1.5rem; font-style: italic; color: #000; letter-spacing: -1px; }

        /* --- SEKCJE --- */
        .section { padding: 90px 0; }
        .bg-gray { background: #f9f9f9; }
        .sec-header { text-align: center; margin-bottom: 60px; }
        .sec-header h2 { font-size: 2.5rem; font-weight: 800; margin-bottom: 15px; letter-spacing: -0.5px; }
        .sec-header p { color: var(--gray); font-size: 1.1rem; max-width: 650px; margin: auto; text-wrap: balance; }
        .sec-line { width: 60px; height: 4px; background: var(--primary); margin: 0 auto 20px; border-radius: 2px; }

        /* --- CARDS --- */
        .cards-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 30px; }
        .card { 
            background: white; padding: 40px 30px; border-radius: 20px; text-align: center;
            box-shadow: var(--shadow-soft); transition: 0.4s; border: 1px solid transparent;
        }
        .card:hover { transform: translateY(-10px); box-shadow: var(--shadow-hover); border-color: rgba(211, 47, 47, 0.1); }
        
        .card-icon { 
            width: 80px; height: 80px; background: rgba(211, 47, 47, 0.05); color: var(--primary);
            border-radius: 50%; display: flex; align-items: center; justify-content: center; margin: 0 auto 25px;
            transition: 0.4s;
        }
        .card:hover .card-icon { background: var(--primary); color: white; transform: scale(1.1); }
        .card-icon svg { width: 40px; height: 40px; fill: currentColor; }
        .card h3 { font-size: 1.4rem; font-weight: 700; margin-bottom: 15px; }
        .card p { color: var(--gray); font-size: 0.95rem; }

        /* --- FEATURES & WARRANTY --- */
        .split-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 60px; align-items: center; }
        .feature-item { display: flex; gap: 15px; margin-bottom: 20px; align-items: flex-start; }
        .check-icon { 
            background: var(--primary); color: white; width: 24px; height: 24px; 
            border-radius: 50%; display: flex; align-items: center; justify-content: center; 
            font-size: 0.8rem; flex-shrink: 0; margin-top: 3px;
        }
        
        .warranty-badge {
            background: var(--primary-gradient); color: white; padding: 50px; 
            border-radius: 30px; text-align: center; box-shadow: 0 20px 60px rgba(211, 47, 47, 0.3);
            position: relative; overflow: hidden;
        }
        .warranty-badge::before { content: ''; position: absolute; width: 150%; height: 150%; background: radial-gradient(circle, rgba(255,255,255,0.1) 0%, transparent 60%); top: -25%; left: -25%; }
        .warranty-big { font-size: 3.5rem; font-weight: 900; line-height: 1; }
        .warranty-sub { font-size: 1.1rem; text-transform: uppercase; letter-spacing: 2px; margin-bottom: 20px; display: block; opacity: 0.9; }
        .warranty-small { background: rgba(255,255,255,0.2); padding: 8px 20px; border-radius: 50px; font-size: 0.85rem; font-weight: 700; backdrop-filter: blur(5px); }

        /* --- EXTRA: objawy / dlaczego my / porównanie / kroki / ceny / opinie / oferta --- */

        .symptoms-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
            gap: 20px;
        }
        .symptom-box {
            background: #fff;
            padding: 18px 20px;
            border-radius: 14px;
            border: 1px solid #eee;
            font-weight: 600;
            font-size: 0.98rem;
            box-shadow: 0 8px 25px rgba(0,0,0,0.04);
        }

        .benefits-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
            gap: 25px;
        }
        .benefit-box {
            background: #fff;
            padding: 24px 24px 20px;
            border-radius: 18px;
            border: 1px solid #eee;
            box-shadow: 0 10px 30px rgba(0,0,0,0.05);
            text-align: left;
        }
        .benefit-box h3 { font-size: 1.1rem; margin-bottom: 10px; }
        .benefit-box p { font-size: 0.95rem; color: var(--gray); }

        .compare-wrapper { overflow-x: auto; -webkit-overflow-scrolling: touch; }
        .compare-table {
            width: 100%;
            border-collapse: collapse;
            margin-top: 10px;
            font-size: 0.95rem;
            min-width: 600px;
        }
        .compare-table th,
        .compare-table td {
            border: 1px solid #e3e3e3;
            padding: 10px 12px;
            text-align: center;
        }
        .compare-table th {
            background: #f5f5f5;
            font-weight: 800;
        }
        .compare-table td:first-child,
        .compare-table th:first-child {
            text-align: left;
        }

        .steps-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
            gap: 25px;
        }
        .step-box {
            background: #fff;
            padding: 28px 24px;
            border-radius: 18px;
            box-shadow: 0 12px 30px rgba(0,0,0,0.06);
            border: 1px solid #eee;
            text-align: center;
        }
        .step-number {
            width: 34px;
            height: 34px;
            border-radius: 50%;
            background: var(--primary-gradient);
            color: #fff;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            font-weight: 800;
            margin-bottom: 10px;
        }

        .pricing-list {
            display: flex;
            flex-direction: column;
            gap: 12px;
            max-width: 700px;
            margin: 0 auto;
        }
        .pricing-item {
            background: #fff;
            border-radius: 12px;
            padding: 14px 18px;
            border: 1px solid #eee;
            font-weight: 600;
            font-size: 0.98rem;
            display: flex;
            justify-content: space-between;
            align-items: center;
        }

        .reviews-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
            gap: 20px;
        }
        .review-box {
            background: #fff;
            border-radius: 16px;
            border: 1px solid #eee;
            padding: 18px 18px 20px;
            font-size: 0.95rem;
            box-shadow: 0 8px 24px rgba(0,0,0,0.05);
        }

        .special-offer {
            max-width: 800px;
            margin: 0 auto;
            background: #fff5f5;
            border-radius: 20px;
            padding: 30px 24px;
            border: 1px solid rgba(211,47,47,0.2);
            text-align: center;
        }
        .special-offer h3 { margin-bottom: 10px; }
        .special-offer p { margin-bottom: 15px; color: #555; }
        .special-offer small { display:block; margin-top:5px; color:#777; }

        /* --- FAQ --- */
        details { background: white; border-radius: 12px; margin-bottom: 15px; border: 1px solid #eee; overflow: hidden; transition: 0.3s; }
        details[open] { border-color: rgba(211,47,47,0.2); box-shadow: 0 5px 15px rgba(0,0,0,0.05); }
        summary { padding: 22px 30px; font-weight: 700; cursor: pointer; list-style: none; position: relative; font-size: 1.05rem; }
        summary::-webkit-details-marker { display: none; }
        summary::after { content: '+'; position: absolute; right: 30px; font-size: 1.5rem; font-weight: 300; color: var(--primary); transition: 0.3s; }
        details[open] summary::after { transform: rotate(45deg); }
        .faq-answer { padding: 0 30px 30px; color: var(--gray); line-height: 1.7; }

        /* --- KONTAKT --- */
        .contact-sec { background: #1a1a1a; color: white; position: relative; }
        .contact-grid { display: grid; grid-template-columns: 1fr 1.5fr; gap: 0; border-radius: 30px; overflow: hidden; background: #222; box-shadow: 0 30px 60px rgba(0,0,0,0.3); }
        
        .contact-info { padding: 60px; background: #222; display: flex; flex-direction: column; justify-content: center; }
        .contact-row { display: flex; align-items: center; gap: 20px; margin-bottom: 40px; }
        .contact-row:last-child { margin-bottom: 0; }
        .c-ico { width: 50px; height: 50px; background: rgba(255,255,255,0.05); border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 1.2rem; color: var(--primary); flex-shrink: 0; }
        .c-dat { overflow: hidden; }
        .c-dat h4 { font-size: 0.8rem; text-transform: uppercase; color: #888; margin-bottom: 5px; letter-spacing: 1px; }
        .c-dat p, .c-dat a { font-size: 1.3rem; font-weight: 700; color: white; line-height: 1.3; word-break: break-all; }
        .c-dat a:hover { color: var(--primary); }
        
        .map-box { min-height: 400px; width: 100%; filter: grayscale(100%); transition: 0.5s; }
        .map-box:hover { filter: grayscale(0%); }
        .map-box iframe { width: 100%; height: 100%; border: 0; }

        /* --- FOOTER --- */
        footer { background: #000; color: #555; padding: 40px 0; text-align: center; font-size: 0.85rem; border-top: 1px solid #222; }

        /* --- FLOATERS --- */
        .sticky-mobile-bar { 
            display: none; position: fixed; bottom: 0; left: 0; width: 100%; 
            background: var(--primary-gradient); z-index: 2000; 
            box-shadow: 0 -5px 20px rgba(0,0,0,0.2); padding: 15px 0;
        }
        .sticky-mobile-bar a { 
            color: white; font-weight: 800; font-size: 1.2rem; display: flex; 
            justify-content: center; align-items: center; gap: 10px; text-transform: uppercase; 
        }

        .whatsapp-float {
            position: fixed; bottom: 30px; right: 30px;
            background: var(--whatsapp-color); color: white;
            width: 60px; height: 60px; border-radius: 50%;
            display: flex; align-items: center; justify-content: center;
            font-size: 2rem; box-shadow: 0 5px 20px rgba(37, 211, 102, 0.4);
            z-index: 1999; transition: 0.3s;
        }
        .whatsapp-float:hover { transform: scale(1.1); }

        
/* Uporzadkowanie i rozszerzenie oryginalnego stylu AKU Poznan. */
:root{--gray:#59636c}
html{scroll-padding-top:100px}
body{min-width:280px}
img{max-width:100%;height:auto}
svg{width:22px;height:22px;flex-shrink:0}
a:focus-visible,button:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid #d32f2f;outline-offset:5px}
.skip-link{position:fixed;left:16px;top:-100px;z-index:10000;background:#fff;color:#121212;padding:12px 20px;border:2px solid #d32f2f;border-radius:12px;font-weight:700}
.skip-link:focus{top:12px}
.top-bar{font-size:.78rem;letter-spacing:.15px}
.top-bar-content{gap:20px}
header{border-top:3px solid var(--primary);backdrop-filter:none}
.nav-wrapper{gap:20px}
.logo{display:flex;align-items:center;gap:11px;flex-shrink:0;color:var(--dark)}
.logo img{height:50px;width:50px;object-fit:contain}
.logo span{font-size:1.05rem;line-height:1.2;font-weight:800;letter-spacing:.2px}
.logo small{display:block;font-size:.57rem;letter-spacing:1.7px;margin-top:4px;color:#656565}
.nav-menu{gap:20px}
.nav-menu a,.nav-services summary{font-size:.86rem;font-weight:700}
.nav-menu [aria-current=page]{color:var(--primary)}
.nav-cta{white-space:nowrap;gap:7px;padding:11px 16px}
.nav-cta svg{width:17px;height:17px}
.nav-services{position:relative;overflow:visible;border:0;background:none;border-radius:0;margin:0}
.nav-services[open]{box-shadow:none}
.nav-services summary{padding:10px 14px 10px 0;color:var(--dark);list-style:none}
.nav-services summary::after{content:'⌄';right:0;top:7px;font-size:.9rem;font-weight:700}
.nav-services[open] summary::after{transform:rotate(180deg)}
.nav-dropdown{position:absolute;top:100%;left:-20px;background:#fff;min-width:250px;padding:12px;border:1px solid #eee;border-radius:14px;box-shadow:var(--shadow-soft);z-index:20;display:grid;gap:2px}
.nav-dropdown a{padding:10px 12px;border-radius:8px}
.nav-dropdown a:hover{background:#fff2f2}
.burger,.drawer-close{display:none;border:0;background:transparent;color:var(--primary);cursor:pointer;padding:9px}
.drawer-overlay[hidden]{display:none}
.drawer-overlay{position:fixed;inset:0;z-index:5500;background:rgba(0,0,0,.45)}
.menu-open header{z-index:6000}
.hero{background-image:linear-gradient(rgba(0,0,0,.70),rgba(0,0,0,.62)),url('../img/serwis-mobilny.webp');background-attachment:scroll;height:78vh;min-height:590px;max-height:900px;padding:55px 0}
.hero-content{width:100%;max-width:860px;padding:0 24px}
.hero h1{font-size:clamp(2.4rem,5vw,3.5rem)}
.hero p{max-width:740px;margin-left:auto;margin-right:auto}
.hero .hero-note{font-size:.85rem;margin-top:25px;margin-bottom:0;font-weight:500;opacity:.9}
.brands-wrapper{gap:34px;opacity:.6}
.brand-name{font-size:1.2rem}
.section{padding:76px 0}
.sec-header{margin-bottom:40px}
.sec-header h2{font-size:clamp(1.7rem,3vw,2.5rem)}
.sec-header p{font-size:1rem;max-width:740px}
.eyebrow{display:block;font-size:.75rem;font-weight:800;letter-spacing:1px;text-transform:uppercase;color:var(--primary);margin-bottom:12px}
.cards-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.card{padding:32px 25px}
.card h3{font-size:1.18rem;line-height:1.4;margin-bottom:12px}
.card-icon{width:64px;height:64px;margin-bottom:20px}
.card-icon svg{width:31px;height:31px;fill:none;stroke:currentColor}
.link-card{display:flex;flex-direction:column}
.link-card p{flex:1}
.link-card .text-link{margin-top:22px}
.card:hover{transform:translateY(-4px)}
.text-link{font-size:.9rem;color:var(--primary);font-weight:800;display:inline-flex;gap:8px;align-items:center}
.text-link svg{width:18px;height:18px}
.section-action{display:flex;justify-content:center;margin-top:32px}
.btn-outline{background:#fff;border:1px solid #ddd;color:var(--dark)}
.btn-outline:hover{border-color:var(--primary);color:var(--primary)}
.btn{font-size:1rem;max-width:100%;line-height:1.45;text-align:center;justify-content:center}
.btn svg{width:20px;height:20px}
.feature-list{margin:25px 0}
.feature-list li{display:flex;gap:12px;margin-bottom:15px;font-weight:600;font-size:.95rem}
.feature-list svg{color:var(--primary);width:20px;height:20px;margin-top:3px}
.split-heading{font-size:clamp(1.7rem,3vw,2.35rem);line-height:1.25;margin-bottom:20px}
.split-grid{gap:45px}
.warranty-badge::before{pointer-events:none}
.warranty-badge .eyebrow{color:#fff;opacity:.85}
.equipment-title{font-size:clamp(2.2rem,4vw,3.5rem);line-height:1.15;font-weight:800;margin:22px 0}
.warranty-badge p{font-size:.9rem;margin-bottom:25px;color:#fff}
.warranty-badge .btn{position:relative}
.benefits-grid,.steps-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.guide-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.benefit-box h3{line-height:1.45}
.step-box h3{font-size:1.15rem;margin-bottom:12px}
.step-box p{font-size:.95rem;color:var(--gray)}
.area-tags{display:flex;flex-wrap:wrap;gap:10px;list-style:none}
.area-tags li{padding:9px 14px;border-radius:9px;background:#f6f6f6;border:1px solid #e8e8e8;font-size:.88rem;font-weight:600}
.area-featured{justify-content:center}
.area-group{margin-top:35px}
.area-group h3{margin-bottom:15px;font-size:1.15rem}
.muted{color:var(--gray)}
.center{text-align:center;margin-top:25px}
.faq-wrap{max-width:860px}
summary{padding:20px 55px 20px 24px;font-size:1rem}
summary::after{right:24px;top:15px}
.faq-answer{padding:0 24px 24px;color:var(--gray)}
.contact-sec h2{color:#fff}
.contact-sec .sec-header p{color:#c2c2c2}
.contact-cards{display:grid;grid-template-columns:1fr 1.4fr 1fr;gap:30px}
.contact-cards>div{padding:24px;border:1px solid #444;border-radius:16px;background:#222;min-width:0}
.contact-cards .eyebrow{color:#ff8787;font-size:.7rem}
.contact-cards p{font-size:.9rem;margin:14px 0 0;color:#c2c2c2}
.contact-phone{font-size:1.65rem;line-height:1.35;font-weight:800;color:#fff}
.email-link{font-size:.94rem;font-weight:700;color:#fff;overflow-wrap:anywhere}
.light{color:#ff9999;margin-top:12px}
footer{padding:55px 0 25px;color:#b5b5b5;text-align:left}
.footer-grid{display:grid;grid-template-columns:1.3fr 1fr .8fr 1fr;gap:32px}
.footer-grid>div{min-width:0}
.footer-grid h2{font-size:.85rem;margin-bottom:18px;color:#fff}
.footer-grid a:not(.logo){display:block;font-size:.8rem;margin-bottom:9px;line-height:1.5}
.footer-grid a:hover{color:#fff}
.footer-grid p{font-size:.8rem;margin-top:20px;line-height:1.8}
.footer-logo{color:#fff}
.footer-logo small{color:#aaa}
.footer-social{display:flex;gap:10px;margin-top:20px}
.footer-grid .footer-social a{display:flex;align-items:center;justify-content:center;width:35px;height:35px;border:1px solid #444;border-radius:50%}
.footer-social svg{stroke:none;fill:currentColor;width:18px;height:18px}
.footer-bottom{display:flex;justify-content:space-between;gap:20px;margin-top:35px;padding-top:22px;border-top:1px solid #292929;font-size:.73rem;flex-wrap:wrap}
.sticky-mobile-bar{display:none;padding:0}
.sticky-mobile-bar a{font-size:.95rem;gap:9px;padding:15px 18px calc(15px + env(safe-area-inset-bottom));text-transform:none}
.sticky-mobile-bar svg{width:18px;height:18px}
.whatsapp-float{width:54px;height:54px;bottom:24px;right:24px;z-index:1900}
.whatsapp-float svg{stroke:none;fill:#fff;width:28px;height:28px}
.breadcrumbs{display:flex;gap:9px;flex-wrap:wrap;padding-top:25px;font-size:.75rem;color:#626262;line-height:1.7}
.breadcrumbs a:hover{color:var(--primary)}
.page-hero{background:#f7f7f7;border-bottom:1px solid #e9e9e9;padding:55px 0 60px;margin-top:20px}
.page-hero h1{font-size:clamp(2rem,4.4vw,3.15rem);line-height:1.16;letter-spacing:-.7px;max-width:920px;margin-bottom:22px;overflow-wrap:break-word}
.page-hero p{font-size:1.12rem;color:#535c65;max-width:860px}
.page-hero .btn-group{justify-content:flex-start;margin-top:28px}
.content-section{padding-top:55px}
.article-grid{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(0,1fr);gap:55px;align-items:start}
.article-body{min-width:0}
.article-body>section{margin-bottom:34px}
.article-body h2{font-size:1.45rem;line-height:1.35;margin-bottom:14px;letter-spacing:-.2px}
.article-body p{font-size:1rem;color:#454d55;line-height:1.85}
.article-body>p{margin-bottom:20px}
.article-aside{position:sticky;top:115px}
.aside-card{background:#fafafa;border:1px solid #e6e6e6;border-top:3px solid var(--primary);padding:27px;border-radius:16px}
.aside-card h2{font-size:1.3rem;line-height:1.3;margin-bottom:16px}
.aside-card p{font-size:.9rem;color:var(--gray);margin-bottom:22px}
.aside-card .btn{font-size:.9rem;padding:15px 18px;width:100%}
.aside-card .text-link{margin-top:22px}
.aside-photo{margin-top:22px;border-radius:15px;overflow:hidden}
.aside-photo img{display:block;width:100%;height:auto}
.contact-inline{padding:25px;background:#fff5f5;border:1px solid #f1d7d7;border-radius:15px;margin-top:30px}
.contact-inline a{color:var(--primary);font-weight:700;overflow-wrap:anywhere}
.contact-inline p{margin-bottom:10px}
.compare-table{min-width:550px;margin-top:0}
.compare-table td,.compare-table th{text-align:left;font-size:.9rem;line-height:1.65}
.compact{padding-top:25px}
.special-offer h2{font-size:1.6rem;margin-bottom:15px}
.special-offer .btn{display:inline-flex;margin-top:8px}
.error-page{padding-top:80px;padding-bottom:90px}
@media(max-width:1100px){.nav-menu{gap:14px}.nav-menu a,.nav-services summary{font-size:.8rem}.logo span{font-size:.95rem}}
@media(max-width:1040px){
 .nav-wrapper{min-height:50px}
 .js .burger{display:block;flex-shrink:0}
 .burger svg{width:28px;height:28px}
 .nav-menu{width:100%;flex-wrap:wrap}
 .nav-wrapper{flex-wrap:wrap}
 .js .nav-wrapper{flex-wrap:nowrap}
 .js .nav-menu{position:fixed;inset:0 0 0 auto;width:min(360px,90vw);height:100dvh;overflow-y:auto;overscroll-behavior:contain;display:none;flex-direction:column;align-items:stretch;flex-wrap:nowrap;padding:22px;background:#fff;gap:7px;box-shadow:-10px 0 30px rgba(0,0,0,.15);z-index:6001}
 .js .nav-menu[data-open=true]{display:flex}
 .js .drawer-close{display:block;align-self:flex-end}
 .nav-menu>a{padding:12px;font-size:1rem;border-radius:8px}
 .nav-services{width:100%}
 .nav-services summary{font-size:1rem;padding:12px 28px 12px 12px}
 .nav-services summary::after{right:12px;top:10px}
 .nav-dropdown{position:static;min-width:0;box-shadow:none;border:0;background:#f6f6f6;padding:6px}
 .nav-dropdown a{font-size:.87rem}
 .nav-cta{justify-content:center;margin-top:10px}
 .cards-grid,.benefits-grid,.guide-grid,.steps-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .split-grid{gap:30px}
 .article-grid{gap:30px;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr)}
 .contact-cards{grid-template-columns:1fr 1fr}
 .contact-cards>div:last-child{grid-column:1/-1}
 .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:768px){
 html{scroll-padding-top:90px}
 .container{padding-left:20px;padding-right:20px}
 .top-bar{padding:8px 0}
 .top-bar-content{gap:4px 12px;font-size:.68rem}
 .top-bar-content span:first-child{width:100%}
 header{padding:11px 0}
 .logo img{width:45px;height:45px}
 .logo span{font-size:.96rem}
 .logo small{font-size:.54rem}
 .hero{background-image:linear-gradient(rgba(0,0,0,.72),rgba(0,0,0,.65)),url('../img/serwis-mobilny-768.webp');height:auto;min-height:570px;max-height:none;padding:58px 0}
 .hero-content{padding:0 20px}
 .hero h1{font-size:clamp(1.9rem,8.8vw,2.2rem);letter-spacing:-.7px}
 .hero p{font-size:1.15rem;font-weight:300;margin-bottom:26px}
 .hero .hero-note{font-size:.78rem}
 .badge-hero{font-size:.66rem;letter-spacing:.55px}
 .btn-group{flex-direction:column;align-items:stretch;width:100%}
 .btn{padding:16px 22px;width:100%;font-size:.94rem}
 .brands-strip{padding:25px 0}
 .brands-wrapper{gap:14px 24px}
 .brand-name{font-size:1rem}
 .section{padding:52px 0}
 .sec-header{margin-bottom:30px}
 .sec-header h2{font-size:1.8rem}
 .split-grid,.article-grid{grid-template-columns:1fr}
 .warranty-badge{padding:35px 25px}
 .feature-list li{font-size:.9rem}
 .equipment-title{font-size:2.8rem}
 .article-aside{position:static;display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start}
 .aside-photo{margin-top:0}
 .contact-cards{gap:18px}
 .contact-phone{font-size:1.45rem}
 .email-link{font-size:.87rem}
 .page-hero{padding:37px 0 43px;margin-top:16px}
 .page-hero h1{font-size:2rem;letter-spacing:-.5px}
 .page-hero p{font-size:1rem}
 .article-body h2{font-size:1.3rem}
 .article-body p{font-size:.96rem}
 .sticky-mobile-bar{display:block}
 .whatsapp-float{bottom:calc(78px + env(safe-area-inset-bottom));right:17px;width:48px;height:48px}
 footer{padding-bottom:calc(95px + env(safe-area-inset-bottom))}
 .footer-grid{gap:30px 20px}
 .footer-bottom{font-size:.7rem}
 .compact{padding-top:15px}
 .special-offer h2{font-size:1.45rem}
}
@media(max-width:560px){
 .cards-grid,.benefits-grid,.steps-grid,.guide-grid{grid-template-columns:1fr}
 .card{text-align:left;align-items:flex-start;padding:28px 24px}
 .card-icon{margin-left:0}
 .contact-cards,.article-aside{grid-template-columns:1fr}
 .contact-cards>div:last-child{grid-column:auto}
 .aside-photo{display:none}
 .footer-grid{grid-template-columns:1fr 1fr;gap:28px 18px}
 .footer-grid>div:first-child{grid-column:1/-1}
 .footer-grid h2{font-size:.8rem}
 .area-tags{gap:8px}
 .area-tags li{padding:7px 10px;font-size:.79rem}
 .breadcrumbs{font-size:.68rem}
 summary{font-size:.92rem;padding-left:20px;padding-right:47px}
 .faq-answer{font-size:.92rem;padding-left:20px;padding-right:20px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
@media print{.top-bar,header,.whatsapp-float,.sticky-mobile-bar,.drawer-overlay,.article-aside,.section-action{display:none!important}body{color:#000;background:#fff}.hero,.page-hero{background:#fff!important;color:#000;height:auto;min-height:0}.hero p,.hero-note{color:#000!important}.section{padding:20px 0}a{color:#000}.article-grid{display:block}footer{padding:20px 0}.btn-group{display:none}.card{box-shadow:none;border:1px solid #ddd}}

.warranty-badge .warranty-note{font-size:.8rem;line-height:1.65;margin:20px 0 0;color:#fff}

.section-action{gap:14px;flex-wrap:wrap}
.article-sources{border-top:1px solid #e5e5e5;padding-top:25px}
.article-sources ul{padding-left:20px;list-style:disc}
.article-sources li{font-size:.84rem;line-height:1.8;margin:9px 0}
.article-sources a{color:#a51f1f;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
.article-body .article-sources p{font-size:.82rem;color:#555}

/* Przywrocone sekcje strony glownej. */
.table-scroll-hint{display:none;color:#636b72;font-size:.8rem;line-height:1.6;margin-bottom:13px}
.restored-compare{max-width:100%;border-radius:10px;scrollbar-color:#d32f2f #eeeeee;overscroll-behavior-x:contain}
.restored-compare .compare-table{min-width:740px;margin:0}
.restored-compare .compare-table th,.restored-compare .compare-table td{line-height:1.65;vertical-align:middle;text-align:center;padding:15px 14px}
.restored-compare .compare-table th:first-child,.restored-compare .compare-table td:first-child{text-align:left;min-width:210px}
.restored-compare .compare-table th:last-child,.restored-compare .compare-table td:last-child{background:#fff2f2;font-weight:700}
.comparison-note{font-size:.8rem;color:#667079;line-height:1.75;margin-top:17px}
#objawy .symptom-box{border-left:3px solid var(--primary)}
@media(max-width:768px){.table-scroll-hint{display:block}.restored-compare .compare-table th,.restored-compare .compare-table td{padding:13px 11px;font-size:.84rem}}
