<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Archiwa lamele aluminiowe - Projekt Ogrzewania</title>
	<atom:link href="https://projekt-ogrzewania.pl/tag/lamele-aluminiowe/feed/" rel="self" type="application/rss+xml" />
	<link>https://projekt-ogrzewania.pl/tag/lamele-aluminiowe/</link>
	<description>Twój partner w projektowaniu komfortu – profesjonalne ogrzewanie podłogowe dla Twojego domu.</description>
	<lastBuildDate>Sat, 18 Apr 2026 10:29:30 +0000</lastBuildDate>
	<language>pl-PL</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.0</generator>

<image>
	<url>https://projekt-ogrzewania.pl/wp-content/uploads/2024/09/cropped-Projekt-ogrzewania-logo-1-32x32.jpg</url>
	<title>Archiwa lamele aluminiowe - Projekt Ogrzewania</title>
	<link>https://projekt-ogrzewania.pl/tag/lamele-aluminiowe/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Ogrzewanie podłogowe wodne bez wylewki.</title>
		<link>https://projekt-ogrzewania.pl/ogrzewanie-podlogowe-wodne-bez-wylewki/</link>
		
		<dc:creator><![CDATA[Robert Kucharski]]></dc:creator>
		<pubDate>Sat, 18 Apr 2026 10:24:49 +0000</pubDate>
				<category><![CDATA[Budowa i remont]]></category>
		<category><![CDATA[Domy drewniane]]></category>
		<category><![CDATA[Domy szkieletowe]]></category>
		<category><![CDATA[Niskotemperaturowe systemy grzewcze]]></category>
		<category><![CDATA[Nowoczesne systemy grzewcze]]></category>
		<category><![CDATA[Ogrzewanie podłogowe]]></category>
		<category><![CDATA[Porady dla domu]]></category>
		<category><![CDATA[Porady dla inwestorów]]></category>
		<category><![CDATA[Porady ekspertów]]></category>
		<category><![CDATA[Porady remontowe]]></category>
		<category><![CDATA[Projektowanie instalacji]]></category>
		<category><![CDATA[Projektowanie instalacji grzewczych]]></category>
		<category><![CDATA[Remont]]></category>
		<category><![CDATA[Remont domu]]></category>
		<category><![CDATA[Remont i modernizacja]]></category>
		<category><![CDATA[Systemy grzewcze]]></category>
		<category><![CDATA[koszty systemu suchego]]></category>
		<category><![CDATA[lamele aluminiowe]]></category>
		<category><![CDATA[lekka podłogówka]]></category>
		<category><![CDATA[ogrzewanie podłogowe wodne bez wylewki]]></category>
		<category><![CDATA[ogrzewanie w domu szkieletowym]]></category>
		<category><![CDATA[ogrzewanie w kamienicy]]></category>
		<category><![CDATA[płyty eps z wypustkami]]></category>
		<category><![CDATA[podłogówka na sucho]]></category>
		<category><![CDATA[projektowanie podłogówki]]></category>
		<category><![CDATA[remont starego domu]]></category>
		<category><![CDATA[suchy jastrych]]></category>
		<category><![CDATA[system suchy]]></category>
		<category><![CDATA[test szczelności instalacji]]></category>
		<category><![CDATA[układanie podłogówki]]></category>
		<category><![CDATA[wady ogrzewania bez wylewki]]></category>
		<guid isPermaLink="false">https://projekt-ogrzewania.pl/?p=4218</guid>

					<description><![CDATA[<p>Zastanawiasz się nad montażem popularnej podłogówki, ale Twój drewniany strop w starej kamienicy po prostu nie wytrzyma ciężaru kilkutonowej warstwy betonu? A może budujesz nowoczesny dom szkieletowy i zależy Ci na błyskawicznym czasie realizacji bez wprowadzania do wnętrza wilgoci technologicznej? Odpowiedzią na te problemy jest ogrzewanie podłogowe wodne bez wylewki, znane powszechnie jako system suchy. To zaawansowane rozwiązanie inżynieryjne, które zamiast ciężkiego jastrychu wykorzystuje lekkie płyty izolacyjne oraz precyzyjne lamele aluminiowe. W naszym kompletnym przewodniku rozkładamy tę technologię na czynniki pierwsze. Obalamy szkodliwe mity, tłumaczymy jak prawidłowo zaplanować moc grzewczą, by uniknąć niedogrzania, oraz wskazujemy krytyczne pułapki montażowe. Dowiedz się, kiedy rezygnacja z betonu to jedyna słuszna decyzja i o co zapytać instalatora przed rozpoczęciem prac.</p>
<p>Artykuł <a href="https://projekt-ogrzewania.pl/ogrzewanie-podlogowe-wodne-bez-wylewki/">Ogrzewanie podłogowe wodne bez wylewki.</a> pochodzi z serwisu <a href="https://projekt-ogrzewania.pl">Projekt Ogrzewania</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<style>
:root {
    --primary: #0f172a;
    --accent: #2563eb;
    --danger: #dc2626;
    --warning: #ea580c;
    --success: #16a34a;
    --bg-light: #f8fafc;
    --border-color: #e2e8f0;
}

.premium-hero-box {
    max-width: 950px;
    margin: 40px auto;
    font-family: 'Inter', -apple-system, sans-serif;
    background: #ffffff;
    border-radius: 24px;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.08);
    border: 1px solid var(--border-color);
    overflow: hidden;
    color: var(--primary);
    position: relative;
}

/* Subtelne tło dekoracyjne */
.premium-hero-box::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    width: 300px;
    height: 300px;
    background: radial-gradient(circle, rgba(37,99,235,0.05) 0%, rgba(255,255,255,0) 70%);
    border-radius: 50%;
    transform: translate(30%, -30%);
    z-index: 0;
}

.hero-content {
    position: relative;
    z-index: 1;
    padding: 45px 50px;
    background: linear-gradient(to bottom, #ffffff, var(--bg-light));
}

.hero-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: #eff6ff;
    color: var(--accent);
    padding: 8px 16px;
    border-radius: 12px;
    font-size: 13px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 25px;
    border: 1px solid #bfdbfe;
}

.hero-text {
    font-size: 17px;
    line-height: 1.8;
    color: #334155;
    margin-bottom: 20px;
}

.hero-text strong {
    color: var(--primary);
}

.hero-text:last-of-type {
    margin-bottom: 40px;
}

/* Moduły / Spis treści */
.hero-modules-title {
    font-size: 14px;
    font-weight: 800;
    text-transform: uppercase;
    color: #94a3b8;
    letter-spacing: 1px;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
    gap: 15px;
}

.hero-modules-title::after {
    content: "";
    flex-grow: 1;
    height: 1px;
    background: var(--border-color);
}

.hero-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 15px;
}

.hero-card {
    background: #ffffff;
    border: 1px solid var(--border-color);
    padding: 20px 15px;
    border-radius: 16px;
    text-align: center;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 4px 6px -1px rgba(0,0,0,0.02);
    position: relative;
    top: 0;
}

.hero-card:hover {
    top: -5px;
    border-color: var(--accent);
    box-shadow: 0 15px 25px -5px rgba(37, 99, 235, 0.1);
}

.hero-card-icon {
    font-size: 28px;
    margin-bottom: 12px;
    display: block;
    transition: transform 0.3s;
}

.hero-card:hover .hero-card-icon {
    transform: scale(1.15);
}

.hero-card-title {
    font-size: 13px;
    font-weight: 800;
    color: var(--primary);
    line-height: 1.4;
}

@media (max-width: 900px) {
    .hero-content { padding: 35px 25px; }
    .hero-grid { grid-template-columns: repeat(2, 1fr); gap: 15px; }
}

@media (max-width: 500px) {
    .hero-grid { grid-template-columns: 1fr; }
    .hero-card { display: flex; align-items: center; text-align: left; gap: 15px; padding: 15px; }
    .hero-card-icon { margin-bottom: 0; font-size: 24px; }
}
</style>

<div class="premium-hero-box" id="hero-app-container">
    <div class="hero-content">
        
        <div class="hero-badge">
            <span>📚</span> Kompletny Przewodnik
        </div>
        
        <p class="hero-text"><strong>Ogrzewanie podłogowe wodne bez wylewki</strong> to rozwiązanie, które w ostatnich latach zyskuje ogromną popularność wśród inwestorów indywidualnych, właścicieli starych kamienic oraz wszystkich tych, którzy chcą cieszyć się komfortem ciepłej podłogi bez konieczności wylewania ton betonu.</p>
        
        <p class="hero-text">W przeciwieństwie do tradycyjnej podłogówki, gdzie rury są zalewane grubą warstwą jastrychu, system suchy opiera się na prefabrykowanych płytach izolacyjnych i aluminiowych elementach przewodzących ciepło. W tym obszernym, technicznym opracowaniu przeprowadzę Cię krok po kroku przez wszystkie aspekty tej technologii.</p>

        <div class="hero-modules-title">Czego dowiesz się z tego opracowania?</div>
        
        <div class="hero-grid">
            <div class="hero-card">
                <span class="hero-card-icon">🔍</span>
                <span class="hero-card-title">Zasada działania i anatomia</span>
            </div>
            <div class="hero-card">
                <span class="hero-card-icon">🧮</span>
                <span class="hero-card-title">Wyliczenia mocy grzewczej</span>
            </div>
            <div class="hero-card">
                <span class="hero-card-icon">🛠️</span>
                <span class="hero-card-title">Praktyczne porady montażowe</span>
            </div>
            <div class="hero-card">
                <span class="hero-card-icon">📈</span>
                <span class="hero-card-title">Analiza opłacalności (ROI)</span>
            </div>
        </div>

    </div>
</div>

<script>
document.addEventListener('DOMContentLoaded', function() {
    // ZABEZPIECZENIE DOMENOWE (Domain Lock)
    const domain = window.location.hostname;
    const allowedDomains = ['projekt-ogrzewania.pl', 'www.projekt-ogrzewania.pl', 'localhost', '127.0.0.1', ''];
    
    if (!allowedDomains.includes(domain)) {
        document.getElementById('hero-app-container').innerHTML = `
            <div style="padding: 60px 20px; text-align: center; background: #fee2e2; color: #dc2626; display: flex; flex-direction: column; align-items: center; justify-content: center; min-height: 300px;">
                <span style="font-size: 48px; margin-bottom: 20px;">🔒</span>
                <h3 style="margin-top:0; font-size: 24px;">Treść chroniona prawem autorskim</h3>
                <p style="font-size: 16px; max-width: 500px; color: #7f1d1d; line-height: 1.5;">Ten moduł wprowadzający jest własnością serwisu <strong>Projekt-Ogrzewania.pl</strong> i został skopiowany nielegalnie.</p>
                <a href="https://projekt-ogrzewania.pl/" style="margin-top: 25px; padding: 14px 28px; background: #dc2626; color: white; text-decoration: none; border-radius: 12px; font-weight: 800; transition: 0.3s;">ZOBACZ ORYGINALNY ARTYKUŁ</a>
            </div>
        `;
    }
});
</script>



<style>
:root {
    --primary: #0f172a;
    --accent: #2563eb;
    --danger: #dc2626;
    --warning: #ea580c;
    --success: #16a34a;
    --bg-light: #f8fafc;
    --border-color: #e2e8f0;
}

.premium-anatomy-box {
    max-width: 950px;
    margin: 40px auto;
    font-family: 'Inter', -apple-system, sans-serif;
    background: #ffffff;
    border-radius: 24px;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.08);
    border: 1px solid var(--border-color);
    overflow: hidden;
    color: var(--primary);
}

.anatomy-header {
    padding: 40px;
    background: linear-gradient(to bottom, #ffffff, var(--bg-light));
    border-bottom: 1px solid var(--border-color);
}

.anatomy-header h3 {
    margin: 0 0 15px 0;
    font-size: 26px;
    font-weight: 900;
    color: var(--primary);
}

.anatomy-header p {
    font-size: 15px;
    line-height: 1.7;
    color: #475569;
    margin-bottom: 15px;
}

.anatomy-header p:last-child {
    margin-bottom: 0;
}

.anatomy-header a {
    color: var(--accent);
    font-weight: 700;
    text-decoration: underline;
    text-decoration-color: #bfdbfe;
    text-underline-offset: 3px;
}

.anatomy-workspace {
    display: flex;
    min-height: 500px;
}

/* LEWA STRONA - STOS WARSTW (PRZEKRÓJ) */
.anatomy-layers {
    width: 40%;
    background: #ffffff;
    border-right: 1px solid var(--border-color);
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 30px;
    gap: 12px;
}

.layer-btn {
    position: relative;
    width: 100%;
    padding: 18px 20px;
    border-radius: 12px;
    border: 2px solid var(--border-color);
    background: #ffffff;
    cursor: pointer;
    text-align: left;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    display: flex;
    align-items: center;
    gap: 15px;
    overflow: hidden;
}

.layer-btn::before {
    content: '';
    position: absolute;
    left: 0; top: 0; height: 100%; width: 6px;
    background: #cbd5e1;
    transition: all 0.3s;
}

/* Kolory poszczególnych warstw */
.layer-btn[data-layer="finish"]::before { background: #b45309; } /* Drewno/Płytka */
.layer-btn[data-layer="pipe"]::before { background: var(--danger); } /* Rura PEX */
.layer-btn[data-layer="lamella"]::before { background: #94a3b8; } /* Aluminium */
.layer-btn[data-layer="eps"]::before { background: #38bdf8; } /* Styropian EPS */

.layer-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 15px -3px rgba(0,0,0,0.05);
    border-color: #cbd5e1;
}

.layer-btn.active {
    border-color: var(--accent);
    background: #eff6ff;
    box-shadow: 0 10px 20px -5px rgba(37, 99, 235, 0.15);
}

.layer-btn.active::before {
    background: var(--accent);
    width: 8px;
}

.layer-icon {
    font-size: 24px;
    filter: grayscale(0.2);
    transition: transform 0.3s;
}

.layer-btn.active .layer-icon {
    transform: scale(1.2);
    filter: grayscale(0);
}

.layer-title {
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-weight: 800;
    color: var(--primary);
    line-height: 1.3;
}

.layer-subtitle {
    display: block;
    font-size: 11px;
    font-weight: 600;
    color: #64748b;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-top: 4px;
}

/* PRAWA STRONA - SZCZEGÓŁY WARSTWY */
.anatomy-details {
    width: 60%;
    background: var(--bg-light);
    padding: 40px;
    position: relative;
}

.detail-pane {
    display: none;
    animation: fadeInSlide 0.4s ease-out forwards;
}

.detail-pane.active {
    display: block;
}

.detail-pane h4 {
    margin: 0 0 20px 0;
    font-size: 24px;
    font-weight: 900;
    color: var(--primary);
    display: flex;
    align-items: center;
    gap: 12px;
}

.detail-pane p {
    font-size: 15px;
    line-height: 1.7;
    color: #475569;
    margin-bottom: 15px;
}

.detail-pane ul {
    margin: 0 0 20px 0;
    padding-left: 20px;
}

.detail-pane li {
    font-size: 15px;
    line-height: 1.6;
    color: #475569;
    margin-bottom: 10px;
}

.detail-pane strong {
    color: var(--primary);
}

.detail-pane a {
    color: var(--accent);
    font-weight: 700;
    text-decoration: none;
    border-bottom: 2px solid #bfdbfe;
    transition: all 0.2s;
}

.detail-pane a:hover {
    background: #eff6ff;
    border-bottom-color: var(--accent);
}

.highlight-box {
    background: #ffffff;
    border-left: 4px solid var(--warning);
    padding: 15px 20px;
    border-radius: 0 12px 12px 0;
    font-size: 14px;
    font-weight: 600;
    color: var(--primary);
    box-shadow: 0 2px 5px rgba(0,0,0,0.02);
    margin-top: 20px;
    line-height: 1.6;
}

@keyframes fadeInSlide {
    from { opacity: 0; transform: translateX(10px); }
    to { opacity: 1; transform: translateX(0); }
}

@media (max-width: 768px) {
    .anatomy-header { padding: 30px 20px; }
    /* Zmiana flex-direction: column-reverse na column */
    .anatomy-workspace { flex-direction: column; min-height: auto; }
    
    .anatomy-layers {
        width: 100%;
        border-right: none;
        border-bottom: 1px solid var(--border-color); /* Zmiana border-top na border-bottom */
        padding: 20px;
    }
    
    .anatomy-details {
        width: 100%;
        padding: 30px 20px;
    }
}
</style>

<div class="premium-anatomy-box" id="anatomy-app-container">
    
    <div class="anatomy-header">
        <h2>Czym dokładnie jest ogrzewanie bez wylewki?</h2>
        <p>W klasycznym ujęciu ogrzewanie płaszczyznowe kojarzy się z betonem. Rury układane są na izolacji, a następnie zalewane jastrychem o grubości od 6 do 10 cm. Ta masa betonu pełni trzy funkcje: akumuluje ciepło, rozprowadza je równomiernie po powierzchni oraz stabilizuje mechanicznie instalację. Problem pojawia się, gdy strop nie jest w stanie udźwignąć dodatkowych 150–200 kg/m² lub gdy nie mamy czasu na 28 dni schnięcia.</p>
        <p>System ogrzewania wodnego bez wylewki (nazywany fachowo <a href="https://projekt-ogrzewania.pl/czym-jest-system-suchy-w-wodnym-ogrzewaniu-podlogowym/">systemem suchym</a>) eliminuje mokre procesy budowlane. Zamiast betonu wykorzystuje precyzyjne warstwy, które możesz zbadać poniżej.</p>
    </div>

    <div class="anatomy-workspace">
        
        <div class="anatomy-layers">
            <span style="font-size: 11px; font-weight: 800; color: #94a3b8; text-transform: uppercase; letter-spacing: 1px; text-align: center; margin-bottom: 5px;">Przekrój podłogi (kliknij)</span>
            
            <button class="layer-btn active" data-target="pane-finish" data-layer="finish">
                <span class="layer-icon">🪵</span>
                <div>
                    <div class="layer-title">Warstwa wykończeniowa</div>
                    <span class="layer-subtitle">Panele / Płytki + Podkład</span>
                </div>
            </button>
            
            <button class="layer-btn" data-target="pane-pipe" data-layer="pipe">
                <span class="layer-icon">🔴</span>
                <div>
                    <div class="layer-title">Rury grzewcze</div>
                    <span class="layer-subtitle">PEX / PE-RT 14-16 mm</span>
                </div>
            </button>
            
            <button class="layer-btn" data-target="pane-lamella" data-layer="lamella">
                <span class="layer-icon">🛡️</span>
                <div>
                    <div class="layer-title">Lamele aluminiowe</div>
                    <span class="layer-subtitle">Serce systemu suchego</span>
                </div>
            </button>
            
            <button class="layer-btn" data-target="pane-eps" data-layer="eps">
                <span class="layer-icon">🧊</span>
                <div>
                    <div class="layer-title">Płyty systemowe</div>
                    <span class="layer-subtitle">EPS 200 / Gipsowo-włóknowe</span>
                </div>
            </button>
        </div>

        <div class="anatomy-details">
            
            <div class="detail-pane active" id="pane-finish">
                <h4>Warstwa wykończeniowa</h4>
                <p>W odróżnieniu od wylewki, gdzie płytki kleimy bezpośrednio do betonu, w systemie suchym konieczne jest stworzenie sztywnej, pływającej posadzki:</p>
                <ul>
                    <li><strong>Pod panele laminowane lub winylowe LVT:</strong> Kładzie się bezpośrednio na płyty systemowe z rurami specjalną perforowaną matę podkładową o bardzo niskim <a href="https://projekt-ogrzewania.pl/opor-cieplny-r-m%25c2%25b2k-w-klucz-do-efektywnego-ogrzewania-podlogowego/">oporze cieplnym</a> (R ≤ 0,05 m²K/W). Użycie zwykłej pianki zablokuje ciepło!</li>
                    <li><strong>Pod płytki ceramiczne i kamień:</strong> Wymagane jest zastosowanie płyt suchego jastrychu (np. gipsowo-włóknowych) o grubości min. 10–12,5 mm, układanych dwuwarstwowo. Dopiero na to nakłada się elastyczny klej i płytki.</li>
                </ul>
            </div>

            <div class="detail-pane" id="pane-pipe">
                <h4>Rury grzewcze</h4>
                <p>W systemach suchych dominują rury o mniejszej średnicy niż w klasycznej wylewce betonowej.</p>
                <p><strong>Standard:</strong> PEX lub PE-RT o średnicy 14 mm lub 16 mm.</p>
                <div class="highlight-box" style="border-left-color: var(--accent);">
                    <strong>Dlaczego mniejsze?</strong> Mniejsza średnica rury pozwala na zmniejszenie grubości całej płyty systemowej i łatwiejsze formowanie łuków w wyfrezowanych kanałach. Ponadto, mniejsza ilość wody w instalacji znacznie przyspiesza reakcję układu na zmiany ustawień termostatu.
                </div>
            </div>

            <div class="detail-pane" id="pane-lamella">
                <h4>Lamele aluminiowe</h4>
                <p>To najważniejszy element odróżniający profesjonalny system suchy od amatorskiej próby włożenia rury w zwykły styropian. <strong>Bez <a href="https://projekt-ogrzewania.pl/produkt/lamel-grzejny-metalowy/">lameli</a> system nie działa!</strong></p>
                <ul>
                    <li><strong>Funkcja:</strong> Aluminium (λ ≈ 200 W/mK) przejmuje ciepło punktowe z rurki i rozprowadza je na boki na szerokość kilkunastu centymetrów.</li>
                    <li><strong>Budowa:</strong> Są to cienkie (0,4–0,6 mm) blachy w kształcie litery omega (Ω), w które na ścisk zatrzaskuje się rurę grzewczą.</li>
                </ul>
                <div class="highlight-box">
                    <strong>Efekt:</strong> Eliminujemy tzw. efekt zebry termicznej. Gdyby rura leżała pod panelami bez aluminium, stopa czułaby naprzemiennie gorące i zimne paski. Lamele wyrównują temperaturę do różnicy mniejszej niż 2°C na całej płycie.
                </div>
            </div>

            <div class="detail-pane" id="pane-eps">
                <h4>Płyty systemowe (Szkielet)</h4>
                <p>Podstawą całego układu, na której opiera się ciężar, są płyty systemowe. Wykonuje się je z dwóch materiałów:</p>
                <ul>
                    <li><strong>Twardy styropian EPS:</strong> Najczęściej o podwyższonej gęstości, np. <a href="https://projekt-ogrzewania.pl/produkt/plyta-styropianowa-eps-200-z-wypustkami/">EPS 200</a> lub EPS T. Mają grubość od 25 do 50 mm, z fabrycznie wyfrezowanymi kanałami na rury (rozstaw 15 cm lub 30 cm).</li>
                    <li><strong>Płyty gipsowo-włóknowe:</strong> Rozwiązanie droższe, ale oferujące wyższą wytrzymałość punktową i izolacyjność akustyczną.</li>
                </ul>
                <div class="highlight-box" style="border-left-color: var(--danger);">
                    <strong>Uwaga:</strong> Zastosowanie zwykłego styropianu o zbyt niskiej gęstości grozi jego ugięciem pod ciężarem mebli i trwałym „klawiszowaniem” (zapadaniem się) podłogi.
                </div>
            </div>

        </div>
    </div>
</div>

<script>
document.addEventListener('DOMContentLoaded', function() {
    
    // ZABEZPIECZENIE DOMENOWE (Domain Lock)
    const domain = window.location.hostname;
    const allowedDomains = ['projekt-ogrzewania.pl', 'www.projekt-ogrzewania.pl', 'localhost', '127.0.0.1', ''];
    
    if (!allowedDomains.includes(domain)) {
        document.getElementById('anatomy-app-container').innerHTML = `
            <div style="padding: 60px 20px; text-align: center; background: #fee2e2; color: #dc2626; display: flex; flex-direction: column; align-items: center; justify-content: center; min-height: 400px;">
                <span style="font-size: 48px; margin-bottom: 20px;">🔒</span>
                <h3 style="margin-top:0; font-size: 24px;">Narzędzie chronione prawem autorskim</h3>
                <p style="font-size: 16px; max-width: 500px; color: #7f1d1d; line-height: 1.5;">Ten wizualizator jest własnością serwisu <strong>Projekt-Ogrzewania.pl</strong> i został skopiowany nielegalnie.</p>
                <a href="https://projekt-ogrzewania.pl/" style="margin-top: 25px; padding: 14px 28px; background: #dc2626; color: white; text-decoration: none; border-radius: 12px; font-weight: 800; transition: 0.3s;">ZOBACZ ORYGINALNY ARTYKUŁ</a>
            </div>
        `;
        return; 
    }

    // LOGIKA ZAKŁADEK (WARSTW)
    const layerBtns = document.querySelectorAll('.layer-btn');
    const panes = document.querySelectorAll('.detail-pane');

    layerBtns.forEach(button => {
        button.addEventListener('click', () => {
            // Reset active states
            layerBtns.forEach(btn => btn.classList.remove('active'));
            panes.forEach(pane => pane.classList.remove('active'));
            
            // Set active state on clicked element
            button.classList.add('active');
            
            // Show corresponding pane
            const targetId = button.getAttribute('data-target');
            document.getElementById(targetId).classList.add('active');
        });
    });
});
</script>



<style>
:root {
    --primary: #0f172a;
    --accent: #2563eb;
    --danger: #dc2626;
    --warning: #ea580c;
    --success: #16a34a;
    --bg-light: #f8fafc;
    --border-color: #e2e8f0;
    --wet-color: #64748b;
}

.premium-advantages-box {
    max-width: 950px;
    margin: 40px auto;
    font-family: 'Inter', -apple-system, sans-serif;
    background: #ffffff;
    border-radius: 24px;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.08);
    border: 1px solid var(--border-color);
    overflow: hidden;
    color: var(--primary);
}

.adv-header {
    padding: 40px;
    background: linear-gradient(to bottom, #ffffff, var(--bg-light));
    border-bottom: 1px solid var(--border-color);
    text-align: center;
}

.adv-header h3 {
    margin: 0 0 15px 0;
    font-size: 28px;
    font-weight: 900;
    color: var(--primary);
    line-height: 1.3;
}

.adv-header p {
    margin: 0 auto 30px auto;
    max-width: 800px;
    font-size: 15px;
    line-height: 1.7;
    color: #475569;
}

/* PRZEŁĄCZNIK TECHNOLOGII */
.toggle-wrapper {
    display: inline-flex;
    align-items: center;
    background: #ffffff;
    padding: 10px 20px;
    border-radius: 100px;
    border: 1px solid var(--border-color);
    box-shadow: 0 4px 6px -1px rgba(0,0,0,0.05);
    gap: 15px;
}

.toggle-label {
    font-size: 14px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: #94a3b8;
    transition: color 0.3s;
    cursor: pointer;
}

.toggle-label.active-wet { color: var(--wet-color); }
.toggle-label.active-dry { color: var(--accent); }

.switch {
    position: relative;
    display: inline-block;
    width: 60px;
    height: 34px;
}

.switch input { 
    opacity: 0;
    width: 0;
    height: 0;
}

.slider {
    position: absolute;
    cursor: pointer;
    top: 0; left: 0; right: 0; bottom: 0;
    background-color: var(--wet-color);
    transition: .4s;
    border-radius: 34px;
}

.slider:before {
    position: absolute;
    content: "";
    height: 26px;
    width: 26px;
    left: 4px;
    bottom: 4px;
    background-color: white;
    transition: .4s;
    border-radius: 50%;
    box-shadow: 0 2px 4px rgba(0,0,0,0.2);
}

input:checked + .slider { background-color: var(--accent); }
input:checked + .slider:before { transform: translateX(26px); }

/* KARTY KORZYŚCI */
.adv-grid {
    padding: 40px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 25px;
    background: #ffffff;
}

.adv-card {
    padding: 30px;
    border-radius: 20px;
    border: 2px solid var(--border-color);
    transition: all 0.4s ease;
    position: relative;
    overflow: hidden;
}

.adv-card::before {
    content: '';
    position: absolute;
    top: 0; left: 0; width: 6px; height: 100%;
    background: var(--wet-color);
    transition: background 0.4s;
}

.adv-card.is-dry {
    border-color: #bfdbfe;
    background: #f8fafc;
    box-shadow: 0 10px 25px -5px rgba(37, 99, 235, 0.05);
}

.adv-card.is-dry::before { background: var(--accent); }

.card-icon {
    font-size: 28px;
    margin-bottom: 15px;
    display: inline-block;
}

.card-title {
    font-size: 15px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: #64748b;
    margin-bottom: 10px;
}

.card-value {
    font-size: 36px;
    font-weight: 900;
    color: var(--primary);
    margin-bottom: 15px;
    line-height: 1.1;
    transition: color 0.4s;
}

.adv-card.is-dry .card-value { color: var(--accent); }

.card-desc {
    font-size: 14px;
    line-height: 1.6;
    color: #475569;
    margin: 0;
    min-height: 80px;
}

.card-desc strong { color: var(--primary); }

.example-box {
    margin-top: 15px;
    padding: 12px 15px;
    background: #ffffff;
    border-radius: 12px;
    font-size: 13px;
    border: 1px solid #e2e8f0;
    display: none;
}

.adv-card.is-dry .example-box {
    display: block;
    animation: fadeIn 0.5s;
}

@keyframes fadeIn {
    from { opacity: 0; transform: translateY(5px); }
    to { opacity: 1; transform: translateY(0); }
}

@media (max-width: 768px) {
    .adv-header { padding: 30px 20px; }
    .adv-header h3 { font-size: 24px; }
    .adv-grid { grid-template-columns: 1fr; padding: 25px 20px; gap: 20px; }
    .toggle-wrapper { flex-direction: column; gap: 10px; border-radius: 20px; padding: 15px; }
    .card-desc { min-height: auto; }
}
</style>

<div class="premium-advantages-box" id="advantages-app-container">
    
    <div class="adv-header">
        <h3>Kluczowe zalety systemu suchego</h3>
        <p>Decyzja o wyborze podłogówki bez wylewki rzadko wynika z kaprysu. Najczęściej podyktowana jest konkretnymi ograniczeniami budowlanymi. Przełącz technologię poniżej, aby zobaczyć kolosalną różnicę w parametrach.</p>
        
        <div class="toggle-wrapper">
            <span class="toggle-label" id="lbl-wet" onclick="document.getElementById('sys-toggle').click()">System Mokry</span>
            <label class="switch">
                <input type="checkbox" id="sys-toggle" checked>
                <span class="slider"></span>
            </label>
            <span class="toggle-label active-dry" id="lbl-dry" onclick="document.getElementById('sys-toggle').click()">System Suchy</span>
        </div>
    </div>

    <div class="adv-grid">
        
        <div class="adv-card is-dry" id="card-weight">
            <div class="card-icon">⚖️</div>
            <div class="card-title">Obciążenie stropu</div>
            <div class="card-value" id="val-weight">22–35 kg/m²</div>
            <p class="card-desc" id="desc-weight">Absolutny priorytet w starym budownictwie. Konstrukcja oparta na styropianie, lamelach i suchym jastrychu waży zaledwie ułamek tego, co beton.</p>
            <div class="example-box" id="ex-weight">
                <strong>Przykład:</strong> Mieszkanie 50m² (strop drewniany). System suchy to ok. 1,2 tony. Tradycyjna wylewka dodałaby aż <strong>7,5 tony</strong> – to ryzyko katastrofy budowlanej!
            </div>
        </div>

        <div class="adv-card is-dry" id="card-height">
            <div class="card-icon">📏</div>
            <div class="card-title">Całkowita wysokość zabudowy</div>
            <div class="card-value" id="val-height">od 30 mm</div>
            <p class="card-desc" id="desc-height">Idealne rozwiązanie do domów z niskim sufitem lub przy modernizacji, gdzie podłoga np. w przedpokoju jest już na stałym poziomie.</p>
            <div class="example-box" id="ex-height">
                <strong>Bez schodków:</strong> (płyta 20 mm + mata 2 mm + panel 8 mm). Pozwala uniknąć budowy nieestetycznych podestów i docinania drzwi.
            </div>
        </div>

        <div class="adv-card is-dry" id="card-time">
            <div class="card-icon">⏳</div>
            <div class="card-title">Procesy mokre i schnięcie</div>
            <div class="card-value" id="val-time">0 dni</div>
            <p class="card-desc" id="desc-time">Ogromna przewaga logistyczna. Układamy rury, zamykamy suchym jastrychem i <strong>od razu</strong> możemy układać płytki lub panele.</p>
            <div class="example-box" id="ex-time">
                <strong>Szybki efekt:</strong> Wieczorem tego samego dnia można wnieść meble. Brak wilgoci technologicznej opóźniającej prace malarskie.
            </div>
        </div>

        <div class="adv-card is-dry" id="card-response">
            <div class="card-icon">🚀</div>
            <div class="card-title">Czas nagrzewania układu</div>
            <div class="card-value" id="val-response">20–40 min</div>
            <p class="card-desc" id="desc-response">Dzięki niskiej akumulacyjności, system natychmiast reaguje na zmiany ustawień termostatu lub zyski ciepła od słońca przez okna.</p>
            <div class="example-box" id="ex-response">
                <strong>Oszczędność:</strong> Szybka reakcja przekłada się na niższe zużycie energii w okresach przejściowych (wiosna/jesień) i brak przegrzewania pokoi.
            </div>
        </div>

    </div>
</div>

<script>
document.addEventListener('DOMContentLoaded', function() {
    
    // ZABEZPIECZENIE DOMENOWE (Domain Lock)
    const domain = window.location.hostname;
    const allowedDomains = ['projekt-ogrzewania.pl', 'www.projekt-ogrzewania.pl', 'localhost', '127.0.0.1', ''];
    
    if (!allowedDomains.includes(domain)) {
        document.getElementById('advantages-app-container').innerHTML = `
            <div style="padding: 60px 20px; text-align: center; background: #fee2e2; color: #dc2626; display: flex; flex-direction: column; align-items: center; justify-content: center; min-height: 400px;">
                <span style="font-size: 48px; margin-bottom: 20px;">🔒</span>
                <h3 style="margin-top:0; font-size: 24px;">Narzędzie chronione prawem autorskim</h3>
                <p style="font-size: 16px; max-width: 500px; color: #7f1d1d; line-height: 1.5;">Ten interaktywny widget jest własnością serwisu <strong>Projekt-Ogrzewania.pl</strong> i został skopiowany nielegalnie.</p>
                <a href="https://projekt-ogrzewania.pl/" style="margin-top: 25px; padding: 14px 28px; background: #dc2626; color: white; text-decoration: none; border-radius: 12px; font-weight: 800; transition: 0.3s;">ZOBACZ ORYGINALNY ARTYKUŁ</a>
            </div>
        `;
        return; 
    }

    // LOGIKA PRZEŁĄCZNIKA
    const toggle = document.getElementById('sys-toggle');
    const lblWet = document.getElementById('lbl-wet');
    const lblDry = document.getElementById('lbl-dry');
    
    const cards = [
        document.getElementById('card-weight'),
        document.getElementById('card-height'),
        document.getElementById('card-time'),
        document.getElementById('card-response')
    ];

    // Dane do podmiany
    const data = {
        dry: {
            weight: "22–35 kg/m²", descWeight: "Absolutny priorytet w starym budownictwie. Konstrukcja oparta na styropianie, lamelach i suchym jastrychu waży zaledwie ułamek tego, co beton.",
            height: "od 30 mm", descHeight: "Idealne rozwiązanie do domów z niskim sufitem lub przy modernizacji, gdzie podłoga np. w przedpokoju jest już na stałym poziomie.",
            time: "0 dni", descTime: "Ogromna przewaga logistyczna. Układamy rury, zamykamy suchym jastrychem i <strong>od razu</strong> możemy układać płytki lub panele.",
            response: "20–40 min", descResponse: "Dzięki niskiej akumulacyjności, system natychmiast reaguje na zmiany ustawień termostatu lub zyski ciepła od słońca przez okna."
        },
        wet: {
            weight: "120–180 kg/m²", descWeight: "Ogromna masa wylewki cementowej (ok. 6 cm) i płytek. Wymaga solidnych stropów żelbetowych projektowanych na duże obciążenia.",
            height: "ok. 80 mm", descHeight: "Klasyczna wysokość zabudowy (izolacja + wylewka). Często wymusza podnoszenie drzwi, tworzenie podestów lub schodków do innych pomieszczeń.",
            time: "8 tygodni", descTime: "Wymaga długiego sezonowania. Zgodnie z normą: 1 tydzień na każdy z pierwszych 4 cm, a 2 tygodnie na każdy kolejny. Hamuje to dalsze prace wykończeniowe.",
            response: "4–6 godzin", descResponse: "Beton ma ogromną bezwładność cieplną. System nagrzewa się godzinami, a po wyłączeniu dalej długo oddaje ciepło (ryzyko przegrzewania)."
        }
    };

    function updateCards(isDry) {
        if(isDry) {
            lblDry.classList.add('active-dry');
            lblWet.classList.remove('active-wet');
            
            cards.forEach(c => c.classList.add('is-dry'));
            
            document.getElementById('val-weight').innerText = data.dry.weight;
            document.getElementById('desc-weight').innerHTML = data.dry.descWeight;
            
            document.getElementById('val-height').innerText = data.dry.height;
            document.getElementById('desc-height').innerHTML = data.dry.descHeight;
            
            document.getElementById('val-time').innerText = data.dry.time;
            document.getElementById('desc-time').innerHTML = data.dry.descTime;
            
            document.getElementById('val-response').innerText = data.dry.response;
            document.getElementById('desc-response').innerHTML = data.dry.descResponse;
            
        } else {
            lblDry.classList.remove('active-dry');
            lblWet.classList.add('active-wet');
            
            cards.forEach(c => c.classList.remove('is-dry'));
            
            document.getElementById('val-weight').innerText = data.wet.weight;
            document.getElementById('desc-weight').innerHTML = data.wet.descWeight;
            
            document.getElementById('val-height').innerText = data.wet.height;
            document.getElementById('desc-height').innerHTML = data.wet.descHeight;
            
            document.getElementById('val-time').innerText = data.wet.time;
            document.getElementById('desc-time').innerHTML = data.wet.descTime;
            
            document.getElementById('val-response').innerText = data.wet.response;
            document.getElementById('desc-response').innerHTML = data.wet.descResponse;
        }
    }

    toggle.addEventListener('change', function() {
        updateCards(this.checked);
    });

});
</script>



<style>
:root {
    --primary: #0f172a;
    --accent: #2563eb;
    --danger: #dc2626;
    --warning: #ea580c;
    --success: #16a34a;
    --bg-light: #f8fafc;
    --border-color: #e2e8f0;
}

.premium-limitations-box {
    max-width: 950px;
    margin: 40px auto;
    font-family: 'Inter', -apple-system, sans-serif;
    background: #ffffff;
    border-radius: 24px;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.08);
    border: 1px solid var(--border-color);
    overflow: hidden;
    color: var(--primary);
}

.limits-header {
    padding: 35px 40px;
    background: linear-gradient(to bottom, #ffffff, #fef2f2);
    border-bottom: 1px solid var(--border-color);
    text-align: center;
}

.limits-header h3 {
    margin: 0 0 15px 0;
    font-size: 26px;
    font-weight: 900;
    color: var(--danger);
}

.limits-header p {
    margin: 0 auto;
    max-width: 750px;
    font-size: 15px;
    line-height: 1.6;
    color: #475569;
}

.limits-workspace {
    display: flex;
    min-height: 400px;
}

/* LEWA STRONA - MENU ZAGROŻEŃ */
.limits-menu {
    width: 38%;
    background: #ffffff;
    border-right: 1px solid var(--border-color);
    display: flex;
    flex-direction: column;
    padding: 20px 0;
}

.limit-btn {
    padding: 20px 25px;
    background: transparent;
    border: none;
    border-left: 4px solid transparent;
    text-align: left;
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-weight: 700;
    color: #64748b;
    cursor: pointer;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    gap: 12px;
}

.limit-btn:hover {
    background: #f8fafc;
    color: var(--primary);
}

.limit-btn.active {
    background: #fef2f2;
    border-left-color: var(--danger);
    color: var(--danger);
}

.limit-icon {
    font-size: 20px;
    flex-shrink: 0;
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f1f5f9;
    border-radius: 8px;
    transition: all 0.3s;
}

.limit-btn.active .limit-icon {
    background: #fecaca;
    color: #991b1b;
}

/* PRAWA STRONA - TREŚĆ */
.limits-content-area {
    width: 62%;
    background: var(--bg-light);
    position: relative;
    padding: 35px 40px;
}

.limit-pane {
    display: none;
    animation: fadeSlideUp 0.3s ease-out forwards;
}

.limit-pane.active { display: block; }

.limit-pane h4 {
    margin: 0 0 15px 0;
    font-size: 22px;
    font-weight: 900;
    color: var(--primary);
    line-height: 1.3;
}

.limit-pane p {
    font-size: 15px;
    line-height: 1.7;
    color: #475569;
    margin-bottom: 20px;
}

/* Wizualizacja kosztów (Bar chart CSS) */
.cost-compare {
    margin: 25px 0;
}

.cost-row { margin-bottom: 15px; }
.cost-label { display: flex; justify-content: space-between; font-size: 13px; font-weight: 700; color: var(--primary); margin-bottom: 6px; }
.cost-label span.price { color: #64748b; }
.cost-bar-bg { width: 100%; background: #e2e8f0; border-radius: 6px; height: 18px; overflow: hidden; }
.cost-bar-fill { height: 100%; background: var(--accent); border-radius: 6px; }
.fill-wet { width: 45%; background: #94a3b8; }
.fill-dry { width: 100%; background: var(--warning); }

/* Boks informacyjny */
.info-box {
    background: #ffffff;
    border-left: 4px solid var(--accent);
    padding: 15px 20px;
    border-radius: 0 12px 12px 0;
    font-size: 14px;
    line-height: 1.6;
    color: #475569;
    margin-top: 20px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.02);
}

.info-box.critical {
    border-left-color: var(--danger);
    background: #fef2f2;
}

.info-box.critical strong { color: var(--danger); }

/* Lista konsekwencji */
.consequences-list {
    list-style: none;
    padding: 0;
    margin: 0 0 20px 0;
}

.consequences-list li {
    position: relative;
    padding-left: 28px;
    margin-bottom: 12px;
    font-size: 14px;
    font-weight: 600;
    color: #334155;
    line-height: 1.5;
}

.consequences-list li::before {
    content: "❌";
    position: absolute;
    left: 0;
    top: 0;
    font-size: 14px;
}

@keyframes fadeSlideUp {
    from { opacity: 0; transform: translateY(10px); }
    to { opacity: 1; transform: translateY(0); }
}

/* MOBILE */
@media (max-width: 768px) {
    .limits-header { padding: 25px 20px; }
    .limits-workspace { flex-direction: column; min-height: auto; }
    
    .limits-menu {
        width: 100%;
        border-right: none;
        border-bottom: 1px solid var(--border-color);
        padding: 10px;
    }
    
    .limit-btn {
        padding: 15px;
        border-left: none;
        border-bottom: 3px solid transparent;
        background: #f8fafc;
        margin-bottom: 8px;
        border-radius: 12px;
    }
    
    .limit-btn.active {
        border-left: none;
        border-bottom-color: var(--danger);
    }
    
    .limits-content-area {
        width: 100%;
        padding: 30px 20px;
    }
}
</style>

<div class="premium-limitations-box" id="limitations-app-container">
    
    <div class="limits-header">
        <h2>Wady i ograniczenia – na co musisz być przygotowany</h2>
        <p>Jak każde rozwiązanie techniczne, podłogówka bez wylewki nie jest pozbawiona wad. Ignorowanie tych ograniczeń może prowadzić do rozczarowania efektem grzewczym lub zniszczenia podłogi.</p>
    </div>

    <div class="limits-workspace">
        
        <div class="limits-menu">
            <button class="limit-btn active" data-target="pane-cost">
                <span class="limit-icon">💰</span> Wyższy koszt materiałów
            </button>
            <button class="limit-btn" data-target="pane-cooling">
                <span class="limit-icon">❄️</span> Szybsze wychładzanie
            </button>
            <button class="limit-btn" data-target="pane-leveling">
                <span class="limit-icon">📐</span> Ryzyko nierównego podłoża
            </button>
        </div>

        <div class="limits-content-area">
            
            <div class="limit-pane active" id="pane-cost">
                <h4>Wyższy koszt zakupu materiałów</h4>
                <p>W przeliczeniu na metr kwadratowy, sam materiał do systemu suchego jest droższy o <strong>40–70%</strong> w porównaniu do tradycyjnego systemu z betonem.</p>
                
                <div class="cost-compare">
                    <div class="cost-row">
                        <div class="cost-label">
                            <span>Wylewka mokra (rura, beton, izolacja)</span>
                            <span class="price">ok. 80–120 zł/m²</span>
                        </div>
                        <div class="cost-bar-bg"><div class="cost-bar-fill fill-wet"></div></div>
                    </div>
                    <div class="cost-row">
                        <div class="cost-label">
                            <span>System suchy (płyty, lamele, suchy jastrych)</span>
                            <span class="price">ok. 180–250 zł/m²</span>
                        </div>
                        <div class="cost-bar-bg"><div class="cost-bar-fill fill-dry"></div></div>
                    </div>
                </div>

                <div class="info-box">
                    <strong>Ważna uwaga:</strong> Należy jednak pamiętać, że wyższy koszt początkowy materiałów często częściowo rekompensowany jest niższym kosztem robocizny oraz brakiem konieczności wynajmu mieszkań zastępczych na czas 8 tygodni schnięcia wylewki.
                </div>
            </div>

            <div class="limit-pane" id="pane-cooling">
                <h4>Szybsze wychładzanie pomieszczeń</h4>
                <p>Brak potężnego, betonowego &#8222;akumulatora ciepła&#8221; ma swoją ciemną stronę. Gdy kocioł gazowy lub pompa ciepła przestanie pracować, <strong>podłoga stygnie błyskawicznie</strong> – często w kilkadziesiąt minut.</p>
                <p>Problem ten ujawnia się m.in. w tanich taryfach nocnych (gdy w dzień piec nie grzeje) lub podczas korzystania z opcji oszczędzania energii w bloku.</p>

                <div class="info-box critical" style="border-left-color: var(--warning); background: #fffbeb;">
                    <strong>Zależność od izolacji budynku:</strong> W nowym, dobrze izolowanym domu nie jest to duży problem, ponieważ ściany trzymają ciepło. Jednak w starym, nieszczelnym budownictwie może to powodować bardzo nieprzyjemne uczucie „ciągnięcia chłodem” od stóp niemal od razu po wyłączeniu pompy.
                </div>
            </div>

            <div class="limit-pane" id="pane-leveling">
                <h4>Bezwzględny wymóg równego podłoża</h4>
                <p>To absolutnie największa pułapka montażowa. Wylewka mokra jest ciężka i samopoziomująca – idealnie ukryje nierówności stropu do 2-3 cm. <strong>System suchy nie ma tej zdolności.</strong></p>
                
                <p>Konsekwencje nierówności (np. dołek na 5 mm pod płytą):</p>
                <ul class="consequences-list">
                    <li>Nieprzyjemne wrażenie akustyczne (stukanie, klawiszowanie).</li>
                    <li>Pękanie fug na płytkach ceramicznych (nawet przy użyciu maty zbrojącej).</li>
                    <li>Ryzyko wyślizgnięcia się rury z kanału aluminiowego (tworzy tzw. &#8222;gorący punkt&#8221;).</li>
                </ul>

                <div class="info-box critical">
                    <strong>Rozwiązanie i ironia losu:</strong> Przed montażem konieczne jest precyzyjne wyrównanie podłoża masą samopoziomującą. Aby uniknąć grubej wylewki&#8230; i tak musisz zrobić wylewkę (cienką, korekcyjną na 2-5 mm).
                </div>
            </div>

        </div>
    </div>
</div>

<script>
document.addEventListener('DOMContentLoaded', function() {
    
    // ZABEZPIECZENIE DOMENOWE (Domain Lock) Base64 Encoded HTML
    const domain = window.location.hostname;
    const allowedDomains = ['projekt-ogrzewania.pl', 'www.projekt-ogrzewania.pl', 'localhost', '127.0.0.1', ''];
    
    if (!allowedDomains.includes(domain)) {
        document.getElementById('limitations-app-container').innerHTML = decodeURIComponent(escape(window.atob('PGRpdiBzdHlsZT0icGFkZGluZzogNjBweCAyMHB4OyB0ZXh0LWFsaWduOiBjZW50ZXI7IGJhY2tncm91bmQ6ICNmZWUyZTI7IGNvbG9yOiAjZGMyNjI2OyBkaXNwbGF5OiBmbGV4OyBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyBhbGlnbi1pdGVtczogY2VudGVyOyBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgbWluLWhlaWdodDogNDAwcHg7Ij48c3BhbiBzdHlsZT0iZm9udC1zaXplOiA0OHB4OyBtYXJnaW4tYm90dG9tOiAyMHB4OyI+8J+TkTwvc3Bhbj48aDMgc3R5bGU9Im1hcmdpbi10b3A6MDsgZm9udC1zaXplOiAyNHB4OyI+VHJlxZvEhyBjaHJvbmlvbmEgcHJhd2VtIGF1dG9yc2tpbTwvaDM+PHAgc3R5bGU9ImZvbnQtc2l6ZTogMTZweDsgbWF4LXdpZHRoOiA1MDBweDsgY29sb3I6ICM3ZjFkMWQ7IGxpbmUtaGVpZ2h0OiAxLjU7Ij5UbyB6ZXN0YXdpZW5pZSBqZXN0IHfFgmFzbm/Fm2NpxIUgc2Vyd2lzdSA8c3Ryb25nPlByb2pla3QtT2dyemV3YW5pYS5wbDwvc3Ryb25nPiBpIHpvc3RhxYJvIHdrbGVqb25lIG5hIHTEmSBzdHJvbsSZIGJleiB6Z29keSBhdXRvcmEuPC9wPjxhIGhyZWY9Imh0dHBzOi8vcHJvamVrdC1vZ3J6ZXdhbmlhLnBsLyIgc3R5bGU9Im1hcmdpbi10b3A6IDI1cHg7IHBhZGRpbmc6IDE0cHggMjhweDsgYmFja2dyb3VuZDogI2RjMjYyNjsgY29sb3I6IHdoaXRlOyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IGJvcmRlci1yYWRpdXM6IDEycHg7IGZvbnQtd2VpZ2h0OiA4MDA7IHRyYW5zaXRpb246IDAuM3M7Ij5aT0JBQ1ogT1JZR0lOQUxOWSBBUlRZS1XFgTwvYT48L2Rpdj4=')));
        return; 
    }

    // LOGIKA ZAKŁADEK (TABS)
    const buttons = document.querySelectorAll('.limit-btn');
    const panes = document.querySelectorAll('.limit-pane');

    buttons.forEach(button => {
        button.addEventListener('click', () => {
            // Usuń klasę active ze wszystkich
            buttons.forEach(btn => btn.classList.remove('active'));
            panes.forEach(pane => pane.classList.remove('active'));
            
            // Dodaj do klikniętego
            button.classList.add('active');
            
            // Pokaż treść
            const targetId = button.getAttribute('data-target');
            document.getElementById(targetId).classList.add('active');
        });
    });
});
</script>



<style>
:root {
    --primary: #0f172a;
    --accent: #2563eb;
    --danger: #dc2626;
    --warning: #ea580c;
    --success: #16a34a;
    --bg-light: #f8fafc;
    --border-color: #e2e8f0;
    --wet-color: #64748b;
}

.premium-compare {
    max-width: 1000px;
    margin: 40px auto;
    font-family: 'Inter', -apple-system, sans-serif;
    color: var(--primary);
    background: #ffffff;
    border-radius: 24px;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.1);
    border: 1px solid var(--border-color);
    overflow: hidden;
}

.compare-header {
    padding: 35px 40px;
    text-align: center;
    background: var(--bg-light);
    border-bottom: 1px solid var(--border-color);
}

.compare-header h3 {
    margin: 0 0 15px 0;
    font-size: 26px;
    font-weight: 900;
    color: var(--primary);
}

.compare-header p {
    margin: 0 auto;
    max-width: 700px;
    font-size: 15px;
    line-height: 1.6;
    color: #475569;
}

/* INTERAKTYWNY KALKULATOR - STYLE */
.interactive-calc-section {
    padding: 30px 40px;
    background: #ffffff;
    border-bottom: 3px solid var(--border-color);
}

.input-wrap { margin-bottom: 25px; background: var(--bg-light); padding: 20px; border-radius: 16px; border: 1px solid #e2e8f0; }
.input-label-row { display: flex; justify-content: space-between; margin-bottom: 12px; align-items: center; }
.input-label-row label { font-weight: 800; font-size: 15px; color: var(--primary); text-transform: uppercase; letter-spacing: 0.5px;}
.input-label-row .val-badge { background: #ffffff; padding: 6px 16px; border-radius: 10px; font-weight: 900; color: var(--accent); font-size: 18px; box-shadow: 0 2px 5px rgba(0,0,0,0.05); }

input[type=range] { width: 100%; height: 8px; background: #cbd5e1; border-radius: 10px; appearance: none; outline: none; margin-top: 5px; }
input[type=range]::-webkit-slider-thumb { appearance: none; width: 24px; height: 24px; background: var(--accent); border-radius: 50%; border: 4px solid white; box-shadow: 0 2px 8px rgba(0,0,0,0.2); cursor: pointer; }

.charts-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 30px; }
.chart-title { font-size: 13px; font-weight: 700; color: #64748b; margin-bottom: 15px; text-transform: uppercase; letter-spacing: 0.5px;}
.bar-row { margin-bottom: 12px; }
.bar-label { display: flex; justify-content: space-between; font-size: 13px; font-weight: 700; color: var(--primary); margin-bottom: 6px; }
.bar-bg { width: 100%; background: #f1f5f9; border-radius: 8px; height: 32px; overflow: hidden; position: relative; border: 1px solid #e2e8f0;}
.bar-fill { height: 100%; transition: width 0.6s cubic-bezier(0.4, 0, 0.2, 1); display: flex; align-items: center; justify-content: flex-end; padding-right: 12px; color: white; font-weight: 800; font-size: 13px; white-space: nowrap; }
.fill-dry { background: var(--accent); }
.fill-wet { background: var(--wet-color); }

/* TABELA - STYLE */
.table-wrapper {
    padding: 0 40px;
    margin-top: 20px;
}

.compare-table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
}

.compare-table th {
    padding: 20px 15px;
    text-align: center;
    font-size: 15px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border-bottom: 3px solid var(--border-color);
}

.compare-table th.col-param { text-align: left; color: #64748b; width: 30%; }
.compare-table th.col-noguide { color: var(--accent); width: 35%; border-bottom-color: var(--accent); }
.compare-table th.col-project { color: var(--wet-color); width: 35%; }

.compare-table td {
    padding: 16px 15px;
    text-align: center;
    font-size: 14px;
    color: #334155;
    border-bottom: 1px solid #f1f5f9;
    vertical-align: middle;
    line-height: 1.5;
}

.compare-table td.param-name {
    text-align: left;
    font-weight: 700;
    color: var(--primary);
    display: flex;
    align-items: center;
    gap: 10px;
}

.compare-table td.param-name span.icon {
    font-size: 18px;
    background: #f8fafc;
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    flex-shrink: 0;
}

.compare-table tr:hover td { background: #f8fafc; }

.val-pill {
    display: inline-block;
    padding: 4px 12px;
    background: #f1f5f9;
    border-radius: 8px;
    font-weight: 700;
}
.val-pill.accent { background: #eff6ff; color: var(--accent); }
.val-pill.danger { background: #fee2e2; color: var(--danger); }
.val-pill.success { background: #dcfce7; color: var(--success); }

.compare-footer {
    padding: 40px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 30px;
    background: #ffffff;
}

.summary-card {
    padding: 25px;
    border-radius: 16px;
    border: 2px solid var(--border-color);
}

.summary-card h4 {
    margin: 0 0 15px 0;
    font-size: 18px;
    font-weight: 800;
    display: flex;
    align-items: center;
    gap: 10px;
}

.summary-card p {
    font-size: 14px;
    line-height: 1.6;
    color: #475569;
    margin: 0;
}

.card-project { border-color: #bfdbfe; background: #eff6ff; }
.card-project h4 { color: var(--accent); }

/* ROZWIĄZANIE DLA MOBILE */
@media (max-width: 768px) {
    .compare-header { padding: 25px 20px; }
    .interactive-calc-section { padding: 25px 20px; }
    .charts-grid { grid-template-columns: 1fr; gap: 20px; }
    .table-wrapper { padding: 0 15px; margin-top: 30px;}
    .compare-footer { grid-template-columns: 1fr; padding: 20px 15px; gap: 20px; }
    
    .compare-table, .compare-table tbody, .compare-table tr, .compare-table td {
        display: block; width: 100%; box-sizing: border-box;
    }
    .compare-table thead { display: none; }
    
    .compare-table tr {
        margin-bottom: 20px; border: 1px solid var(--border-color); border-radius: 16px; overflow: hidden; box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05);
    }
    
    .compare-table td { text-align: left; padding: 15px 20px; border-bottom: 1px solid #f1f5f9; }
    .compare-table td:last-child { border-bottom: none; }
    
    .compare-table td.param-name {
        background: var(--bg-light); font-size: 16px; border-bottom: 2px solid var(--border-color);
    }
    
    .compare-table td:nth-child(2)::before {
        content: "System Suchy (bez wylewki):"; display: block; font-weight: 800; margin-bottom: 6px; color: var(--accent); font-size: 12px; text-transform: uppercase; letter-spacing: 0.5px;
    }
    
    .compare-table td:nth-child(3)::before {
        content: "System Mokry (z wylewką):"; display: block; font-weight: 800; margin-bottom: 6px; color: var(--wet-color); font-size: 12px; text-transform: uppercase; letter-spacing: 0.5px;
    }
    
    .compare-table tr:hover td { background: inherit; }
    .compare-table td.param-name:hover { background: var(--bg-light); }
}
</style>

<div class="premium-compare" id="compare-app-container">
    <div class="compare-header">
        <h2>Porównanie techniczne: System Suchy vs. System Mokry</h2>
        <p>Sprawdź, jak wybór technologii wpływa na obciążenie Twojego stropu oraz koszty materiałów. Zmieniając powierzchnię, na żywo zobaczysz skalę przedsięwzięcia. Poniżej znajdziesz szczegółowe zestawienie parametrów. <a href="https://projekt-ogrzewania.pl/system-mokry-czy-suchy-w-wodnym-ogrzewaniu-podlogowym-ktory-wybrac/" style="color: var(--accent); font-weight: 700; text-decoration: none;">Więcej przeczytasz w naszym artykule.</a></p>
    </div>

    <div class="interactive-calc-section">
        <div class="input-wrap">
            <div class="input-label-row">
                <label>Suwak powierzchni ogrzewanej</label>
                <span class="val-badge"><span id="v-area">50</span> m²</span>
            </div>
            <input type="range" id="area-slider" min="10" max="250" step="5" value="50">
        </div>

        <div class="charts-grid">
            <div class="chart-block">
                <div class="chart-title">📦 Łączna waga na stropie</div>
                <div class="bar-row">
                    <div class="bar-label"><span>System Suchy</span></div>
                    <div class="bar-bg"><div class="bar-fill fill-dry" id="bar-weight-dry" style="width: 10%;">&#8212;</div></div>
                </div>
                <div class="bar-row">
                    <div class="bar-label"><span>System Mokry</span></div>
                    <div class="bar-bg"><div class="bar-fill fill-wet" id="bar-weight-wet" style="width: 80%;">&#8212;</div></div>
                </div>
            </div>

            <div class="chart-block">
                <div class="chart-title">💰 Szacunkowy koszt materiałów</div>
                <div class="bar-row">
                    <div class="bar-label"><span>System Suchy</span></div>
                    <div class="bar-bg"><div class="bar-fill fill-dry" id="bar-cost-dry" style="width: 60%;">&#8212;</div></div>
                </div>
                <div class="bar-row">
                    <div class="bar-label"><span>System Mokry</span></div>
                    <div class="bar-bg"><div class="bar-fill fill-wet" id="bar-cost-wet" style="width: 30%;">&#8212;</div></div>
                </div>
            </div>
        </div>
    </div>

    <div class="table-wrapper">
        <table class="compare-table">
            <thead>
                <tr>
                    <th class="col-param">Parametr techniczny</th>
                    <th class="col-noguide">System Suchy (bez wylewki)</th>
                    <th class="col-project">System Mokry (z wylewką)</th>
                </tr>
            </thead>
            <tbody>
                <tr>
                    <td class="param-name"><span class="icon">⚖️</span> Masa własna (kg/m²)</td>
                    <td><strong>20 – 35 kg</strong></td>
                    <td>100 – 180 kg</td>
                </tr>
                <tr>
                    <td class="param-name"><span class="icon">📏</span> Minimalna wysokość</td>
                    <td><span class="val-pill accent">30 mm</span> (bez płytek)</td>
                    <td>80 mm</td>
                </tr>
                <tr>
                    <td class="param-name"><span class="icon">⏱️</span> Czas realizacji</td>
                    <td><span class="val-pill accent">1 – 3 dni</span></td>
                    <td>28 – 60 dni</td>
                </tr>
                <tr>
                    <td class="param-name"><span class="icon">🌡️</span> Maks. temp. zasilania</td>
                    <td>35 – 40°C</td>
                    <td>40 – 50°C</td>
                </tr>
                <tr>
                    <td class="param-name"><span class="icon">🚀</span> Czas nagrzewania</td>
                    <td><span class="val-pill accent">20 – 40 minut</span></td>
                    <td>4 – 6 godzin</td>
                </tr>
                <tr>
                    <td class="param-name"><span class="icon">🔋</span> Akumulacyjność cieplna</td>
                    <td>Bardzo niska</td>
                    <td><strong>Bardzo wysoka</strong></td>
                </tr>
                <tr>
                    <td class="param-name"><span class="icon">🔊</span> Przewodność akustyczna</td>
                    <td><span class="val-pill danger">Gorsza</span> (płyty pływające)</td>
                    <td><span class="val-pill success">Lepsza</span> (masa tłumi dźwięki)</td>
                </tr>
                <tr>
                    <td class="param-name"><span class="icon">💳</span> Koszt materiałów (zł/m²)</td>
                    <td>180 – 280 zł</td>
                    <td><span class="val-pill success">90 – 150 zł</span></td>
                </tr>
                <tr>
                    <td class="param-name"><span class="icon">🔥</span> Ryzyko przegrzania</td>
                    <td><span class="val-pill danger">Wysokie</span> (wymagany RTL)</td>
                    <td><span class="val-pill success">Niskie</span></td>
                </tr>
            </tbody>
        </table>
    </div>

    <div class="compare-footer">
        <div class="summary-card card-project">
            <h4>Kiedy wybrać system suchy?</h4>
            <p>Idealny do remontów starych domów, kamienic (stropy drewniane) oraz domów szkieletowych. Sprawdza się wszędzie tam, gdzie kluczowa jest waga konstrukcji, brakuje wysokości na grubą wylewkę lub zależy Ci na błyskawicznym czasie realizacji bez wprowadzania wilgoci.</p>
        </div>
        
        <div class="summary-card">
            <h4>Kiedy wybrać system mokry?</h4>
            <p>Standardowe, ekonomiczne rozwiązanie dla nowego budownictwa, gdzie nośność stropu nie jest problemem. Oferuje niższą cenę materiałów, doskonałą izolację akustyczną i wysoką bezwładność cieplną, która wybacza błędy w sterowaniu temperaturą.</p>
        </div>
    </div>
</div>

<script>
document.addEventListener('DOMContentLoaded', function() {
    // 1. ZABEZPIECZENIE DOMENOWE (Domain Lock)
    const domain = window.location.hostname;
    const allowedDomains = ['projekt-ogrzewania.pl', 'www.projekt-ogrzewania.pl', 'localhost', '127.0.0.1', ''];
    
    if (!allowedDomains.includes(domain)) {
        document.getElementById('compare-app-container').innerHTML = `
            <div style="padding: 60px 20px; text-align: center; background: #fee2e2; color: #dc2626; display: flex; flex-direction: column; align-items: center; justify-content: center; min-height: 400px;">
                <span style="font-size: 48px; margin-bottom: 20px;">🔒</span>
                <h3 style="margin-top:0; font-size: 24px;">Narzędzie chronione prawem autorskim</h3>
                <p style="font-size: 16px; max-width: 500px; color: #7f1d1d; line-height: 1.5;">To interaktywne zestawienie jest własnością serwisu <strong>Projekt-Ogrzewania.pl</strong> i zostało skopiowane nielegalnie.</p>
                <a href="https://projekt-ogrzewania.pl/" style="margin-top: 25px; padding: 14px 28px; background: #dc2626; color: white; text-decoration: none; border-radius: 12px; font-weight: 800; transition: 0.3s;">ZOBACZ ORYGINALNY ARTYKUŁ</a>
            </div>
        `;
        return; 
    }

    // 2. LOGIKA INTERAKTYWNEGO KALKULATORA
    const slider = document.getElementById("area-slider");
    if(!slider) return;

    function updateCalc() {
        const area = parseFloat(slider.value);
        document.getElementById("v-area").innerText = area;
        
        // Średnie wartości na bazie tabeli
        const weightDryPerM2 = 27.5; // średnia 20-35
        const weightWetPerM2 = 140; // średnia 100-180
        const costDryPerM2 = 230; // średnia 180-280
        const costWetPerM2 = 120; // średnia 90-150
        
        const totalWeightDry = area * weightDryPerM2;
        const totalWeightWet = area * weightWetPerM2;
        const totalCostDry = area * costDryPerM2;
        const totalCostWet = area * costWetPerM2;
        
        // Formatowanie tekstu
        const textWeightDry = totalWeightDry >= 1000 ? (totalWeightDry / 1000).toFixed(1) + " ton" : Math.round(totalWeightDry) + " kg";
        const textWeightWet = totalWeightWet >= 1000 ? (totalWeightWet / 1000).toFixed(1) + " ton" : Math.round(totalWeightWet) + " kg";
        const textCostDry = (totalCostDry / 1000).toFixed(1) + " tys. zł";
        const textCostWet = (totalCostWet / 1000).toFixed(1) + " tys. zł";
        
        // Obliczanie szerokości pasków (wizualizacja względem maks. wartości dla 250m2)
        const maxWeight = 250 * weightWetPerM2;
        const maxCost = 250 * costDryPerM2;
        
        const pctWeightDry = Math.max(8, Math.min(100, (totalWeightDry / maxWeight) * 100));
        const pctWeightWet = Math.max(8, Math.min(100, (totalWeightWet / maxWeight) * 100));
        const pctCostDry = Math.max(8, Math.min(100, (totalCostDry / maxCost) * 100));
        const pctCostWet = Math.max(8, Math.min(100, (totalCostWet / maxCost) * 100));
        
        // Aktualizacja DOM
        document.getElementById("bar-weight-dry").style.width = pctWeightDry + "%";
        document.getElementById("bar-weight-dry").innerText = textWeightDry;
        
        document.getElementById("bar-weight-wet").style.width = pctWeightWet + "%";
        document.getElementById("bar-weight-wet").innerText = textWeightWet;
        
        document.getElementById("bar-cost-dry").style.width = pctCostDry + "%";
        document.getElementById("bar-cost-dry").innerText = textCostDry;
        
        document.getElementById("bar-cost-wet").style.width = pctCostWet + "%";
        document.getElementById("bar-cost-wet").innerText = textCostWet;
    }

    slider.addEventListener("input", updateCalc);
    updateCalc(); // Inicjalizacja przy załadowaniu
});
</script>



<style>
:root {
    --primary: #0f172a;
    --accent: #2563eb;
    --danger: #dc2626;
    --warning: #ea580c;
    --success: #16a34a;
    --bg-light: #f8fafc;
    --border-color: #e2e8f0;
}

.premium-scenario-box {
    max-width: 950px;
    margin: 40px auto;
    font-family: 'Inter', -apple-system, sans-serif;
    background: #ffffff;
    border-radius: 24px;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.08);
    border: 1px solid var(--border-color);
    overflow: hidden;
    color: var(--primary);
}

.scenario-header {
    padding: 35px 40px;
    background: linear-gradient(to bottom, #ffffff, var(--bg-light));
    border-bottom: 1px solid var(--border-color);
    text-align: center;
}

.scenario-header h3 {
    margin: 0 0 15px 0;
    font-size: 26px;
    font-weight: 900;
    color: var(--primary);
}

.scenario-header p {
    margin: 0 auto;
    max-width: 750px;
    font-size: 15px;
    line-height: 1.6;
    color: #475569;
}

.scenario-workspace {
    display: flex;
    min-height: 420px;
}

/* LEWA STRONA - MENU */
.scenario-menu {
    width: 35%;
    background: #ffffff;
    border-right: 1px solid var(--border-color);
    display: flex;
    flex-direction: column;
    padding: 20px 0;
}

.scenario-btn {
    padding: 20px 30px;
    background: transparent;
    border: none;
    border-left: 4px solid transparent;
    text-align: left;
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-weight: 700;
    color: #64748b;
    cursor: pointer;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    gap: 12px;
}

.scenario-btn:hover {
    background: #f8fafc;
    color: var(--primary);
}

.scenario-btn.active {
    background: #eff6ff;
    border-left-color: var(--accent);
    color: var(--accent);
}

.scenario-icon {
    font-size: 22px;
    flex-shrink: 0;
    transition: transform 0.3s ease;
}

.scenario-btn.active .scenario-icon {
    transform: scale(1.15);
}

/* PRAWA STRONA - TREŚĆ */
.scenario-content-area {
    width: 65%;
    background: var(--bg-light);
    position: relative;
    padding: 40px;
}

.scenario-pane {
    display: none;
    animation: fadeSlideUp 0.4s ease-out forwards;
}

.scenario-pane.active {
    display: block;
}

.pane-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 6px 14px;
    border-radius: 8px;
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 20px;
}

.badge-weight { background: #fee2e2; color: #991b1b; }
.badge-height { background: #e0e7ff; color: #3730a3; }
.badge-moisture { background: #ffedd5; color: #9a3412; }

.scenario-pane h4 {
    margin: 0 0 15px 0;
    font-size: 24px;
    font-weight: 900;
    color: var(--primary);
    line-height: 1.3;
}

.scenario-pane p {
    font-size: 15px;
    line-height: 1.7;
    color: #475569;
    margin-bottom: 20px;
}

.scenario-pane p:last-child {
    margin-bottom: 0;
}

.scenario-pane a {
    color: var(--accent);
    font-weight: 700;
    text-decoration: none;
    border-bottom: 2px solid #bfdbfe;
    transition: all 0.2s;
}

.scenario-pane a:hover {
    background: #eff6ff;
    border-bottom-color: var(--accent);
}

.highlight-box {
    background: #ffffff;
    border: 1px solid var(--border-color);
    border-left: 4px solid var(--accent);
    padding: 20px;
    border-radius: 12px;
    margin-top: 25px;
    box-shadow: 0 4px 6px -1px rgba(0,0,0,0.02);
}

.highlight-box strong {
    display: block;
    color: var(--primary);
    margin-bottom: 5px;
    font-size: 15px;
}

@keyframes fadeSlideUp {
    from { opacity: 0; transform: translateY(15px); }
    to { opacity: 1; transform: translateY(0); }
}

/* MOBILE */
@media (max-width: 768px) {
    .scenario-header { padding: 25px 20px; }
    .scenario-header h3 { font-size: 22px; }
    
    .scenario-workspace { flex-direction: column; min-height: auto; }
    
    .scenario-menu {
        width: 100%;
        border-right: none;
        border-bottom: 1px solid var(--border-color);
        padding: 10px;
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 10px;
    }
    
    .scenario-btn {
        padding: 12px 15px;
        border-left: none;
        border-bottom: 3px solid transparent;
        border-radius: 8px;
        background: #f8fafc;
        font-size: 13px;
        flex-direction: column;
        text-align: center;
        gap: 8px;
        justify-content: center;
    }
    
    .scenario-btn.active {
        border-left: none;
        border-bottom-color: var(--accent);
    }
    
    .scenario-content-area {
        width: 100%;
        padding: 30px 20px;
    }
}
</style>

<div class="premium-scenario-box" id="scenario-app-container">
    
    <div class="scenario-header">
        <h2>Gdzie system suchy sprawdza się najlepiej?</h2>
        <p>Wbrew pozorom, ogrzewanie bez wylewki nie jest rozwiązaniem uniwersalnym do każdego nowego domu. Jego zastosowanie jest optymalne w ściśle określonych scenariuszach remontowych i konstrukcyjnych.</p>
    </div>

    <div class="scenario-workspace">
        
        <div class="scenario-menu">
            <button class="scenario-btn active" data-target="pane-kamienice">
                <span class="scenario-icon">🏚️</span> Stare domy i kamienice
            </button>
            <button class="scenario-btn" data-target="pane-szkieletowe">
                <span class="scenario-icon">🌲</span> Domy szkieletowe
            </button>
            <button class="scenario-btn" data-target="pane-poddasza">
                <span class="scenario-icon">🪜</span> Adaptacje strychów
            </button>
            <button class="scenario-btn" data-target="pane-bloki">
                <span class="scenario-icon">🏢</span> Mieszkania w bloku
            </button>
        </div>

        <div class="scenario-content-area">
            
            <div class="scenario-pane active" id="pane-kamienice">
                <div class="pane-badge badge-weight">Priorytet: Krytyczna nośność stropu</div>
                <h4>Remonty starych domów i kamienic</h4>
                <p>Stropy drewniane (belkowe), stropy Kleina (stalowo-ceramiczne) czy stropy żelbetowe o nieznanej nośności to idealne pole do popisu dla lekkiego ogrzewania.</p>
                
                <div class="highlight-box" style="border-left-color: var(--danger);">
                    <strong>Ryzyko katastrofy budowlanej</strong>
                    <span style="font-size: 14px; color: #475569;">Próba wylania tam tradycyjnego jastrychu (nawet 150-180 kg/m²) grozi w skrajnych przypadkach zarwaniem stropu u sąsiada poniżej. System suchy waży zaledwie ułamek tej masy.</span>
                </div>
            </div>

            <div class="scenario-pane" id="pane-szkieletowe">
                <div class="pane-badge badge-moisture">Priorytet: Eliminacja wilgoci i wagi</div>
                <h4>Domy szkieletowe i drewniane</h4>
                <p>W domach o konstrukcji drewnianej (tzw. kanadyjskiej) każdy kilogram ma znaczenie dla wymiarowania belek stropowych.</p>
                <p>Co więcej, wilgoć technologiczna uwalniająca się z tradycyjnej wylewki mogłaby doprowadzić do zagrzybienia drewnianej konstrukcji ścian. Technologia sucha eliminuje to ryzyko całkowicie.</p>
                
                <div class="highlight-box">
                    <strong>Baza wiedzy projektanta</strong>
                    <span style="font-size: 14px; color: #475569;">Zachęcam do lektury szczegółowego opracowania: <a href="https://projekt-ogrzewania.pl/ogrzewanie-podlogowe-w-domu-szkieletowym-kluczowe-roznice-i-pulapki/">Ogrzewanie podłogowe w domu szkieletowym – kluczowe różnice i pułapki</a>.</span>
                </div>
            </div>

            <div class="scenario-pane" id="pane-poddasza">
                <div class="pane-badge badge-height">Priorytet: Oszczędność kubatury</div>
                <h4>Poddasza użytkowe i stychy</h4>
                <p>Podczas adaptacji starych strychów często mamy do dyspozycji bardzo małą wysokość przez wszechobecne skosy dachowe. Dodatkowo belki stropowe często były projektowane wyłącznie na przenoszenie ciężaru lekkiej zabudowy z płyt g-k.</p>
                
                <div class="highlight-box">
                    <strong>Odzyskaj cenne centymetry</strong>
                    <span style="font-size: 14px; color: #475569;">System suchy o grubości zaledwie 3-4 cm pozwala na wykonanie ogrzewania płaszczyznowego z jednoczesnym zachowaniem maksymalnej kubatury i wysokości pomieszczenia.</span>
                </div>
            </div>

            <div class="scenario-pane" id="pane-bloki">
                <div class="pane-badge badge-height">Priorytet: Brak uskoków i schodów</div>
                <h4>Mieszkania w bloku (z grzejników)</h4>
                <p>Jeśli zmieniasz system ogrzewania z tradycyjnego (grzejnikowego) na podłogowe w istniejącym mieszkaniu, wylanie wylewki to ogromny problem.</p>
                <p>Podniesienie poziomu podłogi o 8-10 cm w całym lokalu jest często fizycznie niemożliwe ze względu na zabetonowane progi, drzwi wejściowe czy balkonowe.</p>
                
                <div class="highlight-box" style="border-left-color: var(--success);">
                    <strong>Uniknij przecinania futryn</strong>
                    <span style="font-size: 14px; color: #475569;">System suchy pozwala zmieścić się w granicach 4-5 cm całkowitej grubości, co skutecznie zapobiega tworzeniu &#8222;schodków&#8221; do łazienki czy konieczności modyfikacji okien balkonowych.</span>
                </div>
            </div>

        </div>
    </div>
</div>

<script>
document.addEventListener('DOMContentLoaded', function() {
    
    // ZABEZPIECZENIE DOMENOWE (Domain Lock)
    const domain = window.location.hostname;
    const allowedDomains = ['projekt-ogrzewania.pl', 'www.projekt-ogrzewania.pl', 'localhost', '127.0.0.1', ''];
    
    if (!allowedDomains.includes(domain)) {
        document.getElementById('scenario-app-container').innerHTML = `
            <div style="padding: 60px 20px; text-align: center; background: #fee2e2; color: #dc2626; display: flex; flex-direction: column; align-items: center; justify-content: center; min-height: 400px;">
                <span style="font-size: 48px; margin-bottom: 20px;">🔒</span>
                <h3 style="margin-top:0; font-size: 24px;">Narzędzie chronione prawem autorskim</h3>
                <p style="font-size: 16px; max-width: 500px; color: #7f1d1d; line-height: 1.5;">To interaktywne zestawienie jest własnością serwisu <strong>Projekt-Ogrzewania.pl</strong> i zostało skopiowane nielegalnie.</p>
                <a href="https://projekt-ogrzewania.pl/" style="margin-top: 25px; padding: 14px 28px; background: #dc2626; color: white; text-decoration: none; border-radius: 12px; font-weight: 800; transition: 0.3s;">ZOBACZ ORYGINALNY ARTYKUŁ</a>
            </div>
        `;
        return; 
    }

    // LOGIKA ZAKŁADEK (TABS)
    const buttons = document.querySelectorAll('.scenario-btn');
    const panes = document.querySelectorAll('.scenario-pane');

    buttons.forEach(button => {
        button.addEventListener('click', () => {
            // Usuń klasę active ze wszystkich przycisków i paneli
            buttons.forEach(btn => btn.classList.remove('active'));
            panes.forEach(pane => pane.classList.remove('active'));
            
            // Nadaj klasę active klikniętemu przyciskowi
            button.classList.add('active');
            
            // Pokaż odpowiedni panel
            const targetId = button.getAttribute('data-target');
            document.getElementById(targetId).classList.add('active');
        });
    });
});
</script>



<style>
:root {
    --primary: #0f172a;
    --accent: #2563eb;
    --danger: #dc2626;
    --warning: #ea580c;
    --success: #16a34a;
    --bg-light: #f8fafc;
    --kisan-blue: #1e3a8a;
}

.premium-promo-banner {
    max-width: 1050px;
    margin: 60px auto;
    font-family: 'Inter', -apple-system, sans-serif;
    border-radius: 24px;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.15);
    overflow: hidden;
    color: var(--primary);
    display: flex;
    background: linear-gradient(135deg, #ffffff 0%, #f1f5f9 100%);
    border: 2px solid #e2e8f0;
    position: relative;
}

/* LEWA STRONA - INFO */
.promo-content {
    width: 60%;
    padding: 45px 50px;
    position: relative;
    z-index: 2;
}

.promo-badge {
    background: var(--kisan-blue);
    color: white;
    padding: 6px 16px;
    border-radius: 50px;
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1px;
    display: inline-block;
    margin-bottom: 20px;
    box-shadow: 0 4px 10px rgba(30, 58, 138, 0.3);
}

.promo-content h3 {
    margin: 0 0 15px 0;
    font-size: 32px;
    font-weight: 900;
    line-height: 1.2;
    color: var(--primary);
}

.promo-content p {
    font-size: 16px;
    line-height: 1.6;
    color: #475569;
    margin-bottom: 25px;
}

.promo-features {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 15px;
    margin-bottom: 30px;
}

.promo-feature-item {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 14px;
    font-weight: 700;
    color: var(--kisan-blue);
}

.promo-feature-item span {
    background: #dbeafe;
    width: 28px;
    height: 28px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
}

.promo-action {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: var(--accent);
    color: white;
    padding: 16px 28px;
    border-radius: 12px;
    font-weight: 800;
    font-size: 15px;
    text-decoration: none;
    transition: all 0.3s;
    box-shadow: 0 10px 20px -5px rgba(37, 99, 235, 0.4);
}

.promo-action:hover {
    transform: translateY(-3px);
    box-shadow: 0 15px 25px -5px rgba(37, 99, 235, 0.5);
    background: #1d4ed8;
}

/* PRAWA STRONA - INTERAKCJA / GRAFIKA */
.promo-visual {
    width: 40%;
    background: var(--kisan-blue);
    padding: 40px;
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    color: white;
}

.promo-visual::before {
    content: '';
    position: absolute;
    top: 0; left: -30px;
    width: 60px; height: 100%;
    background: var(--kisan-blue);
    transform: skewX(-10deg);
    z-index: 1;
}

.interactive-mini-calc {
    position: relative;
    z-index: 2;
    background: rgba(255,255,255,0.1);
    border: 1px solid rgba(255,255,255,0.2);
    padding: 25px;
    border-radius: 16px;
    backdrop-filter: blur(10px);
}

.calc-title {
    font-size: 14px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 15px;
    color: #93c5fd;
    display: flex;
    align-items: center;
    gap: 8px;
}

.calc-row {
    margin-bottom: 15px;
}

.calc-label {
    display: flex;
    justify-content: space-between;
    font-size: 13px;
    font-weight: 600;
    margin-bottom: 8px;
}

.calc-val { font-weight: 800; color: white; }

input[type=range].promo-slider { width: 100%; height: 6px; background: rgba(255,255,255,0.2); border-radius: 10px; appearance: none; outline: none; }
input[type=range].promo-slider::-webkit-slider-thumb { appearance: none; width: 20px; height: 20px; background: #ffffff; border-radius: 50%; cursor: pointer; box-shadow: 0 2px 5px rgba(0,0,0,0.2); }

.calc-result {
    margin-top: 20px;
    padding-top: 15px;
    border-top: 1px dashed rgba(255,255,255,0.2);
}

.calc-result span {
    display: block;
    font-size: 11px;
    color: #93c5fd;
    text-transform: uppercase;
    font-weight: 700;
}

.calc-result strong {
    font-size: 28px;
    font-weight: 900;
    color: white;
    line-height: 1.2;
}

@media (max-width: 900px) {
    .premium-promo-banner { flex-direction: column; }
    .promo-content { width: 100%; padding: 35px 25px; }
    .promo-visual { width: 100%; padding: 35px 25px; }
    .promo-visual::before { display: none; }
    .promo-features { grid-template-columns: 1fr; }
}
</style>

<div class="premium-promo-banner" id="promo-banner-app">
    
    <div class="promo-content">
        <div class="promo-badge">Rozwiązanie od Ekspertów</div>
        <h3>Poznaj system Comfort Floor Dry</h3>
        <p>Teoria to jedno, ale jak wdrożyć ją w życie? Poznaj innowacyjny system ogrzewania podłogowego o konstrukcji lekkiej, bazujący na specjalnych płytach EPS i tłoczonych aluminiowych lamelach grzewczych.</p>
        
        <div class="promo-features">
            <div class="promo-feature-item">
                <span>📏</span> Wysokość zaledwie 61 mm!
            </div>
            <div class="promo-feature-item">
                <span>⚖️</span> Kompletny system od 1 producenta
            </div>
            <div class="promo-feature-item">
                <span>⚙️</span> Opracowany dla domów drewnianych
            </div>
            <div class="promo-feature-item">
                <span>🛒</span> Spersonalizowana wycena online
            </div>
        </div>

        <a href="https://projekt-ogrzewania.pl/comfort-floor-dry/" target="_blank" class="promo-action">
            Zobacz pełny system i wyceń online →
        </a>
    </div>

    <div class="promo-visual">
        <div class="interactive-mini-calc">
            <div class="calc-title">💡 Przekonaj się sam</div>
            
            <div class="calc-row">
                <div class="calc-label">
                    <span>Powierzchnia do ogrzania:</span>
                    <span class="calc-val"><span id="p-area">50</span> m²</span>
                </div>
                <input type="range" class="promo-slider" id="p-slider" min="20" max="200" step="5" value="50">
            </div>

            <div class="calc-result">
                <span>Tyle wagi zaoszczędzisz na stropie:</span>
                <strong><span id="p-saved">5 375</span> kg!</strong>
            </div>
            <p style="font-size: 12px; color: #bfdbfe; margin-top: 10px; line-height: 1.4;">*Oszczędność wagi względem standardowej wylewki mokrej (140 kg/m² vs 32 kg/m²).</p>
        </div>
    </div>

</div>

<script>
document.addEventListener('DOMContentLoaded', function() {
    
    // ZABEZPIECZENIE DOMENOWE (Domain Lock)
    const domain = window.location.hostname;
    const allowedDomains = ['projekt-ogrzewania.pl', 'www.projekt-ogrzewania.pl', 'localhost', '127.0.0.1', ''];
    
    if (!allowedDomains.includes(domain)) {
        document.getElementById('promo-banner-app').innerHTML = `
            <div style="padding: 40px 20px; text-align: center; background: #fee2e2; color: #dc2626; width: 100%;">
                <h3 style="margin-top:0;">Baner chroniony prawem autorskim</h3>
                <p>Własność Projekt-Ogrzewania.pl</p>
            </div>
        `;
        return; 
    }

    // LOGIKA MINI KALKULATORA
    const slider = document.getElementById('p-slider');
    const valArea = document.getElementById('p-area');
    const valSaved = document.getElementById('p-saved');

    function updatePromoCalc() {
        const area = parseInt(slider.value);
        valArea.innerText = area;
        
        // Obliczenia: Mokra (~140kg) - Sucha (~32.5kg średnio) = różnica 107.5 kg na m2
        const differencePerM2 = 107.5;
        const totalSaved = Math.round(area * differencePerM2);
        
        valSaved.innerText = totalSaved.toLocaleString('pl-PL');
    }

    slider.addEventListener('input', updatePromoCalc);
    updatePromoCalc(); // init
});
</script>



<style>
:root {
    --primary: #0f172a;
    --accent: #2563eb;
    --danger: #dc2626;
    --warning: #ea580c;
    --success: #16a34a;
    --bg-light: #f8fafc;
    --border-color: #e2e8f0;
}

.premium-auditor-box {
    max-width: 950px;
    margin: 40px auto;
    font-family: 'Inter', -apple-system, sans-serif;
    background: #ffffff;
    border-radius: 24px;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.08);
    border: 1px solid var(--border-color);
    overflow: hidden;
    color: var(--primary);
}

/* SEKCJA TEKSTOWA */
.auditor-text-section {
    padding: 40px;
    background: linear-gradient(to bottom, #ffffff, var(--bg-light));
    border-bottom: 1px solid var(--border-color);
}

.auditor-text-section h3 {
    margin: 0 0 20px 0;
    font-size: 26px;
    font-weight: 900;
    color: var(--primary);
    line-height: 1.3;
}

.auditor-text-section > p {
    font-size: 15px;
    line-height: 1.7;
    color: #475569;
    margin-bottom: 30px;
}

.rules-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 15px;
}

.rule-card {
    background: #ffffff;
    border: 1px solid var(--border-color);
    padding: 20px 25px;
    border-radius: 16px;
    display: flex;
    gap: 20px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.02);
}

.rule-number {
    width: 32px;
    height: 32px;
    background: #eff6ff;
    color: var(--accent);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 900;
    font-size: 16px;
    flex-shrink: 0;
}

.rule-content h4 {
    margin: 0 0 8px 0;
    font-size: 16px;
    font-weight: 800;
    color: var(--primary);
}

.rule-content p {
    margin: 0;
    font-size: 14px;
    line-height: 1.6;
    color: #475569;
}

.rule-content strong { color: var(--primary); }

/* SEKCJA INTERAKTYWNA */
.auditor-interactive-section {
    padding: 40px;
    background: #ffffff;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
}

.interactive-title {
    grid-column: 1 / -1;
    text-align: center;
    margin-bottom: 10px;
}

.interactive-title h4 {
    margin: 0 0 5px 0;
    font-size: 22px;
    font-weight: 900;
    color: var(--primary);
}

.interactive-title p {
    margin: 0;
    font-size: 14px;
    color: #64748b;
}

/* Formularz */
.config-panel {
    background: var(--bg-light);
    padding: 25px;
    border-radius: 20px;
    border: 1px solid var(--border-color);
}

.input-group { margin-bottom: 20px; }
.input-group:last-child { margin-bottom: 0; }
.input-label { display: block; font-size: 13px; font-weight: 800; text-transform: uppercase; color: #64748b; margin-bottom: 8px; letter-spacing: 0.5px;}

select.form-control {
    width: 100%;
    padding: 12px 15px;
    border-radius: 10px;
    border: 1px solid #cbd5e1;
    background: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-weight: 600;
    color: var(--primary);
    cursor: pointer;
    outline: none;
}

select.form-control:focus { border-color: var(--accent); }

.temp-row { display: flex; justify-content: space-between; align-items: center; margin-bottom: 8px;}
.temp-row span { font-weight: 900; color: var(--accent); font-size: 16px; }

input[type=range] { width: 100%; height: 8px; background: #cbd5e1; border-radius: 10px; appearance: none; outline: none; }
input[type=range]::-webkit-slider-thumb { appearance: none; width: 24px; height: 24px; background: var(--accent); border-radius: 50%; border: 4px solid white; box-shadow: 0 2px 5px rgba(0,0,0,0.2); cursor: pointer; }

/* Wyniki */
.results-panel {
    display: flex;
    flex-direction: column;
}

.score-box {
    text-align: center;
    padding: 25px;
    border-radius: 20px;
    border: 2px solid var(--border-color);
    margin-bottom: 20px;
    transition: all 0.3s;
}

.score-label { font-size: 13px; font-weight: 800; text-transform: uppercase; color: #64748b; display: block; margin-bottom: 10px; }
.score-value { font-size: 42px; font-weight: 900; line-height: 1; color: var(--primary); transition: color 0.3s;}

.alerts-container {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.alert-item {
    padding: 12px 16px;
    border-radius: 12px;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.5;
    display: none; /* Ukryte domyślnie */
    animation: fadeIn 0.3s ease-in-out;
}

.alert-danger { background: #fee2e2; color: #991b1b; border: 1px solid #fecaca; }
.alert-warning { background: #ffedd5; color: #9a3412; border: 1px solid #fed7aa; }
.alert-success { background: #dcfce7; color: #166534; border: 1px solid #bbf7d0; display: block; }

@keyframes fadeIn {
    from { opacity: 0; transform: translateY(-5px); }
    to { opacity: 1; transform: translateY(0); }
}

@media (max-width: 768px) {
    .auditor-text-section, .auditor-interactive-section { padding: 25px 20px; }
    .rule-card { padding: 15px; gap: 15px; }
    .auditor-interactive-section { grid-template-columns: 1fr; gap: 25px; }
}
</style>

<div class="premium-auditor-box" id="auditor-app-container">
    
    <div class="auditor-text-section">
        <h2>Jak wygląda projekt ogrzewania w systemie suchym?</h2>
        <p>Projektowanie ogrzewania podłogowego bez wylewki wymaga od projektanta zupełnie innego podejścia. Nie można po prostu skopiować projektu &#8222;z betonu&#8221;. Oto 5 kluczowych aspektów <a href="https://projekt-ogrzewania.pl/jak-powinien-wygladac-profesjonalny-projekt-do-ogrzewania-podlogowego/" style="color: var(--accent); font-weight: 700; text-decoration: none;">profesjonalnego projektu</a>:</p>
        
        <div class="rules-grid">
            <div class="rule-card">
                <div class="rule-number">1</div>
                <div class="rule-content">
                    <h4>Gęstość strumienia ciepła i rozstaw rur</h4>
                    <p>Ze względu na niższą akumulacyjność, stosuje się gęstszy rozstaw rur. Rekomendacja w systemie suchym to <strong>co 10 cm lub co 15 cm</strong>. Nigdy co 20 cm (chyba że w pom. gospodarczym).</p>
                </div>
            </div>
            
            <div class="rule-card">
                <div class="rule-number">2</div>
                <div class="rule-content">
                    <h4>Wydajność cieplna lameli aluminiowych</h4>
                    <p>Projektant musi określić grubość blachy (min. 0,4 mm) oraz jej kształt. Lamele z <strong>pełnym skrzydłem</strong> dają moc o 20-30% wyższą niż wąskie paski.</p>
                </div>
            </div>
            
            <div class="rule-card">
                <div class="rule-number">3</div>
                <div class="rule-content">
                    <h4>Strefy brzegowe i pod oknami</h4>
                    <p>Aby uzyskać wysoką moc (100-120 W/m²) pod dużym oknem bez betonu, należy przewidzieć układ rur w rozstawie <strong>co 7,5 cm</strong> lub zastosowanie podwójnej lameli.</p>
                </div>
            </div>
            
            <div class="rule-card">
                <div class="rule-number">4</div>
                <div class="rule-content">
                    <h4>Projekt warstwy wykończeniowej (opór cieplny)</h4>
                    <p>Panele laminowane: moc spada o 10-15%. Deska lita: moc spada o 20%. <strong>Dywany z długim włosiem (R > 0,25): moc spada o 50% – instalacja przestaje grzać!</strong></p>
                </div>
            </div>
            
            <div class="rule-card">
                <div class="rule-number">5</div>
                <div class="rule-content">
                    <h4>Automatyka i ograniczenie temperatury (RTL)</h4>
                    <p>Wymagany jest zawór RTL lub termostat. Maksymalna temperatura zasilania to <strong>40-45°C</strong>. Przekroczenie tej wartości gwarantuje powstanie szpar w parkiecie i zniszczenie podłogi.</p>
                </div>
            </div>
        </div>
    </div>

    <div class="auditor-interactive-section">
        <div class="interactive-title">
            <h4>Audytor Błędów Projektowych</h4>
            <p>Sprawdź w praktyce! Zmieniaj parametry i zobacz, jak algorytm ocenia poprawność projektu.</p>
        </div>

        <div class="config-panel">
            <div class="input-group">
                <span class="input-label">Rozstaw rur (Ad. 1)</span>
                <select id="sim-spacing" class="form-control">
                    <option value="10">Co 10 cm (Wysoka moc)</option>
                    <option value="15" selected>Co 15 cm (Standard)</option>
                    <option value="20">Co 20 cm (Błąd projektowy)</option>
                </select>
            </div>

            <div class="input-group">
                <span class="input-label">Rodzaj lameli (Ad. 2)</span>
                <select id="sim-lamella" class="form-control">
                    <option value="full" selected>Pełne skrzydło (Optymalne)</option>
                    <option value="narrow">Wąskie paski (Tanie)</option>
                </select>
            </div>

            <div class="input-group">
                <span class="input-label">Wykończenie podłogi (Ad. 4)</span>
                <select id="sim-floor" class="form-control">
                    <option value="tiles" selected>Płytki ceramiczne (R ≈ 0.02)</option>
                    <option value="panels">Panele laminowane (R ≈ 0.10)</option>
                    <option value="wood">Deska lita/warstwowa (R ≈ 0.12)</option>
                    <option value="carpet">Gruby dywan (R > 0.25)</option>
                </select>
            </div>

            <div class="input-group" style="margin-bottom:0;">
                <div class="temp-row">
                    <span class="input-label" style="margin:0;">Temp. zasilania (Ad. 5)</span>
                    <span id="sim-temp-val">35°C</span>
                </div>
                <input type="range" id="sim-temp" min="30" max="50" step="1" value="35">
            </div>
        </div>

        <div class="results-panel">
            <div class="score-box" id="score-container">
                <span class="score-label">Szacowana wydajność instalacji</span>
                <div class="score-value" id="sim-efficiency">100%</div>
            </div>

            <div class="alerts-container">
                <div class="alert-item alert-success" id="alert-ok">✅ Projekt poprawny. Dobra wydajność i bezpieczne parametry.</div>
                
                <div class="alert-item alert-danger" id="alert-spacing">❌ <strong>BŁĄD (Pkt 1):</strong> Rozstaw co 20 cm w systemie suchym spowoduje niedogrzanie pomieszczenia i odczuwalną &#8222;zebrę termiczną&#8221; na podłodze.</div>
                
                <div class="alert-item alert-warning" id="alert-lamella">⚠️ <strong>OSTRZEŻENIE (Pkt 2):</strong> Zastosowanie wąskich lameli obniża realną moc grzewczą o 20-30%. Zwiększ zagęszczenie rur.</div>
                
                <div class="alert-item alert-danger" id="alert-carpet">❌ <strong>KRYTYCZNY BŁĄD (Pkt 4):</strong> Gruby dywan działa jak izolator (R > 0.25). Ogrzewanie podłogowe zostało zablokowane i nie ogrzeje pokoju!</div>
                
                <div class="alert-item alert-danger" id="alert-temp">❌ <strong>KRYTYCZNY BŁĄD (Pkt 5):</strong> Temperatura przekracza 40°C przy podłodze drewnianej/laminowanej! Gwarantowane wypaczenie podłogi i szpary. Brak zaworu RTL!</div>
            </div>
        </div>
    </div>

</div>

<script>
document.addEventListener('DOMContentLoaded', function() {
    
    // ZABEZPIECZENIE DOMENOWE (Domain Lock)
    const domain = window.location.hostname;
    const allowedDomains = ['projekt-ogrzewania.pl', 'www.projekt-ogrzewania.pl', 'localhost', '127.0.0.1', ''];
    
    if (!allowedDomains.includes(domain)) {
        document.getElementById('auditor-app-container').innerHTML = `
            <div style="padding: 60px 20px; text-align: center; background: #fee2e2; color: #dc2626; display: flex; flex-direction: column; align-items: center; justify-content: center; min-height: 400px;">
                <span style="font-size: 48px; margin-bottom: 20px;">🔒</span>
                <h3 style="margin-top:0; font-size: 24px;">Narzędzie chronione prawem autorskim</h3>
                <p style="font-size: 16px; max-width: 500px; color: #7f1d1d; line-height: 1.5;">Ten Audytor Projektu jest własnością serwisu <strong>Projekt-Ogrzewania.pl</strong> i został skopiowany nielegalnie.</p>
                <a href="https://projekt-ogrzewania.pl/" style="margin-top: 25px; padding: 14px 28px; background: #dc2626; color: white; text-decoration: none; border-radius: 12px; font-weight: 800; transition: 0.3s;">ZOBACZ ORYGINALNY ARTYKUŁ</a>
            </div>
        `;
        return; 
    }

    // LOGIKA AUDYTORA
    const elSpacing = document.getElementById('sim-spacing');
    const elLamella = document.getElementById('sim-lamella');
    const elFloor = document.getElementById('sim-floor');
    const elTemp = document.getElementById('sim-temp');
    const valTemp = document.getElementById('sim-temp-val');
    const elEfficiency = document.getElementById('sim-efficiency');
    const boxScore = document.getElementById('score-container');

    // Alerty
    const alertOk = document.getElementById('alert-ok');
    const alertSpacing = document.getElementById('alert-spacing');
    const alertLamella = document.getElementById('alert-lamella');
    const alertCarpet = document.getElementById('alert-carpet');
    const alertTemp = document.getElementById('alert-temp');

    function calculateAudit() {
        const spacing = parseInt(elSpacing.value);
        const lamella = elLamella.value;
        const floor = elFloor.value;
        const temp = parseInt(elTemp.value);
        
        valTemp.innerText = temp + "°C";

        let efficiency = 100; // Baza: 10cm, pełna lamela, płytki
        let hasErrors = false;

        // Reset alertów
        alertOk.style.display = 'none';
        alertSpacing.style.display = 'none';
        alertLamella.style.display = 'none';
        alertCarpet.style.display = 'none';
        alertTemp.style.display = 'none';

        // 1. Spacing Logic
        if(spacing === 15) efficiency -= 15;
        if(spacing === 20) {
            efficiency -= 35;
            alertSpacing.style.display = 'block';
            hasErrors = true;
        }

        // 2. Lamella Logic
        if(lamella === 'narrow') {
            efficiency -= 25;
            alertLamella.style.display = 'block';
            hasErrors = true;
        }

        // 3. Floor Logic
        if(floor === 'panels') efficiency -= 15;
        if(floor === 'wood') efficiency -= 20;
        if(floor === 'carpet') {
            efficiency -= 60;
            alertCarpet.style.display = 'block';
            hasErrors = true;
        }

        // 4. Temp & Floor Safety Logic
        if(temp > 40 && (floor === 'panels' || floor === 'wood')) {
            alertTemp.style.display = 'block';
            hasErrors = true;
        }
        
        // Zwiększenie wydajności od temperatury (uproszczone dla UI)
        if(temp > 35) {
            efficiency += (temp - 35) * 3; 
        }

        // Ograniczenia wizualne
        if(efficiency < 0) efficiency = 0;
        if(efficiency > 120) efficiency = 120;

        elEfficiency.innerText = Math.round(efficiency) + "%";

        // Style i podsumowanie
        if(hasErrors) {
            boxScore.style.borderColor = "var(--danger)";
            elEfficiency.style.color = "var(--danger)";
        } else {
            boxScore.style.borderColor = "var(--success)";
            elEfficiency.style.color = "var(--success)";
            alertOk.style.display = 'block';
        }
        
        // Wyjątek - niska wydajność bez "twardych" błędów (np standardowy spadek)
        if(!hasErrors && efficiency < 75) {
            boxScore.style.borderColor = "var(--warning)";
            elEfficiency.style.color = "var(--warning)";
            alertOk.style.display = 'none';
            alertLamella.style.display = 'block'; // Pokaż jako ogólne ostrzeżenie by coś poprawić
            alertLamella.innerHTML = "⚠️ <strong>OSTRZEŻENIE:</strong> Układ jest bezpieczny, ale jego wydajność jest niska. Rozważ wyższą temperaturę lub gęstszy rozstaw rur.";
        }
    }

    [elSpacing, elLamella, elFloor, elTemp].forEach(el => {
        el.addEventListener('input', calculateAudit);
    });

    calculateAudit(); // init
});
</script>



<style>
:root {
    --primary: #0f172a;
    --accent: #2563eb;
    --bg-light: #f8fafc;
}

.premium-intro-block {
    max-width: 900px;
    margin: 40px auto;
    padding: 35px 45px;
    background: linear-gradient(145deg, #ffffff, var(--bg-light));
    border-radius: 20px;
    border-left: 6px solid var(--accent);
    box-shadow: 0 10px 30px -10px rgba(0, 0, 0, 0.08);
    font-family: 'Inter', -apple-system, sans-serif;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    border-top: 1px solid #f1f5f9;
    border-right: 1px solid #f1f5f9;
    border-bottom: 1px solid #f1f5f9;
}

.premium-intro-block:hover {
    transform: translateY(-4px);
    box-shadow: 0 20px 40px -10px rgba(37, 99, 235, 0.15);
}

.intro-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: #eff6ff;
    color: var(--accent);
    padding: 6px 14px;
    border-radius: 10px;
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 16px;
}

.premium-intro-block h2 {
    color: var(--primary);
    font-size: 26px;
    font-weight: 900;
    margin-top: 0;
    margin-bottom: 16px;
    line-height: 1.3;
}

.premium-intro-block p {
    color: #475569;
    font-size: 16px;
    line-height: 1.7;
    margin: 0;
    font-weight: 400;
}

@media (max-width: 600px) {
    .premium-intro-block {
        padding: 25px 20px;
        margin: 20px 15px;
    }
    .premium-intro-block h2 {
        font-size: 22px;
    }
}
</style>

<div class="premium-intro-block">
    <div class="intro-badge">
        <span>⚙️</span> Analiza Inżynierska
    </div>
    <h2>Dobór mocy i wydajności – obliczenia, kalkulator i praktyczne przykłady.</h2>
    <p>Przejdźmy do twardych danych. Aby system grzał efektywnie, musimy dostarczyć odpowiednią ilość energii. Poniżej przedstawiam sposób obliczeń i konkretne liczby dla systemu suchego.</p>
</div>



<script src="https://cdn.jsdelivr.net/npm/chart.js"></script>

<style>
:root {
    --primary: #0f172a;
    --accent: #2563eb;
    --danger: #dc2626;
    --warning: #ea580c;
    --success: #16a34a;
    --bg-light: #f8fafc;
}

.premium-chart-box {
    max-width: 900px;
    margin: 40px auto;
    font-family: 'Inter', -apple-system, sans-serif;
    background: #ffffff;
    border-radius: 24px;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.1);
    border: 1px solid #f1f5f9;
    overflow: hidden;
    color: var(--primary);
}

.chart-header {
    padding: 30px 40px 20px 40px;
    border-bottom: 1px solid #f1f5f9;
}

.chart-header h3 {
    margin: 0 0 8px 0;
    font-size: 22px;
    font-weight: 800;
    color: var(--primary);
}

.chart-header p {
    margin: 0;
    font-size: 14px;
    color: #64748b;
    font-weight: 500;
}

.chart-canvas-wrapper {
    padding: 30px 40px;
    position: relative;
    height: 400px;
    width: 100%;
}

.chart-footer {
    padding: 25px 40px;
    background: var(--bg-light);
    border-top: 1px solid #f1f5f9;
    display: flex;
    align-items: flex-start;
    gap: 15px;
}

.chart-icon {
    font-size: 24px;
    line-height: 1;
}

.chart-conclusion {
    margin: 0;
    font-size: 14px;
    color: #475569;
    line-height: 1.6;
}

.chart-conclusion strong {
    color: var(--danger);
}

@media (max-width: 600px) {
    .chart-header, .chart-canvas-wrapper, .chart-footer {
        padding: 20px;
    }
    .chart-canvas-wrapper {
        height: 300px;
    }
}
</style>

<div class="premium-chart-box" id="chart-app-container">
    <div class="chart-header">
        <h3>Wykres zależności mocy od temperatury zasilania i pokrycia podłogi</h3>
        <p>System suchy: rura PEX 14mm, rozstaw 15cm, lamele aluminiowe pełne <br><a href="https://projekt-ogrzewania.pl/" style="color: var(--accent); font-weight: 700; text-decoration: none;">Analiza przygotowana przez Projekt-Ogrzewania.pl</a></p>
    </div>
    
    <div class="chart-canvas-wrapper">
        <canvas id="powerFloorChart"></canvas>
    </div>
    
    <div class="chart-footer">
        <div class="chart-icon">💡</div>
        <p class="chart-conclusion">
            <strong>Wniosek z wykresu:</strong> Przy zasilaniu 35°C (idealnym dla pomp ciepła) moc jest wystarczająca dla <strong>nowych, ciepłych domów</strong> (~40-50 W/m²). Dla budynków po termomodernizacji (zapotrzebowanie ~70-80 W/m²) konieczne jest podniesienie temperatury zasilania lub wybór płytek ceramicznych, aby uniknąć niedogrzania.
        </p>
    </div>
</div>

<script>
document.addEventListener('DOMContentLoaded', function() {
    
    // ZABEZPIECZENIE DOMENOWE (Domain Lock)
    const domain = window.location.hostname;
    const allowedDomains = ['projekt-ogrzewania.pl', 'www.projekt-ogrzewania.pl', 'localhost', '127.0.0.1', ''];
    
    if (!allowedDomains.includes(domain)) {
        document.getElementById('chart-app-container').innerHTML = `
            <div style="padding: 60px 20px; text-align: center; background: #fee2e2; color: #dc2626; display: flex; flex-direction: column; align-items: center; justify-content: center; min-height: 400px;">
                <span style="font-size: 48px; margin-bottom: 20px;">🔒</span>
                <h3 style="margin-top:0; font-size: 24px;">Wykres chroniony prawem autorskim</h3>
                <p style="font-size: 16px; max-width: 500px; color: #7f1d1d; line-height: 1.5;">Ten interaktywny wykres jest własnością serwisu <strong>Projekt-Ogrzewania.pl</strong> i został skopiowany na tę stronę nielegalnie.</p>
                <a href="https://projekt-ogrzewania.pl/" style="margin-top: 25px; padding: 14px 28px; background: #dc2626; color: white; text-decoration: none; border-radius: 12px; font-weight: 800; transition: 0.3s;">ZOBACZ ORYGINALNY ARTYKUŁ</a>
            </div>
        `;
        return; // Blokuje ładowanie reszty kodu, wykres się nie narysuje
    }

    // JEŚLI DOMENA SIĘ ZGADZA - RYSUJEMY WYKRES
    const canvasEl = document.getElementById('powerFloorChart');
    if(!canvasEl) return;
    
    const ctx = canvasEl.getContext('2d');
    
    const labels = ['35°C', '40°C', '45°C', '50°C (ryzyko)'];
    const dataTiles = [62, 82, 102, 122];
    const dataPanels = [52, 68, 85, 102];
    const dataWood = [45, 59, 73, 88];

    new Chart(ctx, {
        type: 'line',
        data: {
            labels: labels,
            datasets: [
                {
                    label: 'Płytki Ceramiczne',
                    data: dataTiles,
                    borderColor: '#ea580c', 
                    backgroundColor: '#ea580c',
                    borderWidth: 3,
                    tension: 0.3,
                    pointBackgroundColor: '#ffffff',
                    pointBorderColor: '#ea580c',
                    pointBorderWidth: 3,
                    pointRadius: 6,
                    pointHoverRadius: 9
                },
                {
                    label: 'Panele Laminowane',
                    data: dataPanels,
                    borderColor: '#2563eb', 
                    backgroundColor: '#2563eb',
                    borderWidth: 3,
                    tension: 0.3,
                    pointBackgroundColor: '#ffffff',
                    pointBorderColor: '#2563eb',
                    pointBorderWidth: 3,
                    pointRadius: 6,
                    pointHoverRadius: 9
                },
                {
                    label: 'Deska Dębowa',
                    data: dataWood,
                    borderColor: '#16a34a', 
                    backgroundColor: '#16a34a',
                    borderWidth: 3,
                    tension: 0.3,
                    pointBackgroundColor: '#ffffff',
                    pointBorderColor: '#16a34a',
                    pointBorderWidth: 3,
                    pointRadius: 6,
                    pointHoverRadius: 9
                }
            ]
        },
        options: {
            responsive: true,
            maintainAspectRatio: false,
            plugins: {
                legend: {
                    display: true,
                    position: 'top',
                    labels: {
                        font: { family: 'Inter', size: 13, weight: '600' },
                        color: '#475569',
                        usePointStyle: true,
                        padding: 20
                    }
                },
                tooltip: {
                    backgroundColor: '#0f172a',
                    titleFont: { family: 'Inter', size: 14, weight: 'bold' },
                    bodyFont: { family: 'Inter', size: 14 },
                    padding: 12,
                    displayColors: true,
                    callbacks: {
                        label: function(context) {
                            return context.dataset.label + ': ' + context.parsed.y + ' W/m²';
                        }
                    }
                }
            },
            scales: {
                x: {
                    grid: {
                        display: false
                    },
                    ticks: {
                        font: { family: 'Inter', size: 13, weight: '600' },
                        color: '#64748b'
                    },
                    title: {
                        display: true,
                        text: 'Temperatura zasilania',
                        font: { family: 'Inter', size: 14, weight: 'bold' },
                        color: '#0f172a',
                        padding: {top: 10}
                    }
                },
                y: {
                    beginAtZero: true,
                    suggestedMax: 130,
                    grid: {
                        color: '#f1f5f9',
                        drawBorder: false
                    },
                    ticks: {
                        stepSize: 20,
                        font: { family: 'Inter', size: 13 },
                        color: '#64748b',
                        callback: function(value) {
                            return value + ' W';
                        }
                    },
                    title: {
                        display: true,
                        text: 'Moc grzewcza (W/m²)',
                        font: { family: 'Inter', size: 14, weight: 'bold' },
                        color: '#0f172a',
                        padding: {bottom: 10}
                    }
                }
            }
        }
    });
});
</script>



<style>
:root {
    --primary: #0f172a;
    --accent: #2563eb;
    --danger: #dc2626;
    --warning: #ea580c;
    --success: #16a34a;
    --bg-light: #f8fafc;
}

.calc-intro { max-width: 1150px; margin: 40px auto 10px auto; text-align: center; padding: 0 20px; }
.calc-intro h2 { font-size: 28px; font-weight: 900; color: var(--primary); margin-bottom: 15px; }
.calc-intro p { font-size: 16px; color: #475569; line-height: 1.6; max-width: 800px; margin: 0 auto; }

.screed-calc { max-width: 1150px; margin: 30px auto; font-family: 'Inter', -apple-system, sans-serif; background: #ffffff; border-radius: 24px; box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.1); overflow: hidden; color: var(--primary); }
.calc-grid { display: grid; grid-template-columns: 1.2fr 1fr; }

.config-side { padding: 40px; background: #ffffff; }
.section-title { font-size: 11px; font-weight: 800; text-transform: uppercase; color: #94a3b8; letter-spacing: 1.2px; margin-bottom: 20px; display: block; }

.type-selector { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; margin-bottom: 30px; }
.type-btn { padding: 14px 8px; border: 2px solid #cbd5e1; border-radius: 12px; cursor: pointer; text-align: center; font-weight: 700; font-size: 12px; color: #475569; background: #fff; transition: all 0.2s; display: flex; flex-direction: column; justify-content: center; align-items: center; }
.type-btn span { margin-top: 4px; }
.type-btn.active { border-color: var(--accent); background: #eff6ff; color: var(--accent); box-shadow: 0 4px 12px rgba(37, 99, 235, 0.1); }

.input-wrap { margin-bottom: 25px; }
.input-label-row { display: flex; justify-content: space-between; margin-bottom: 8px; align-items: center; }
.input-label-row label { font-weight: 600; font-size: 14px; }
.input-label-row .val-badge { background: #f1f5f9; padding: 4px 12px; border-radius: 8px; font-weight: 800; color: var(--accent); font-size: 14px; }

input[type=range] { width: 100%; height: 6px; background: #e2e8f0; border-radius: 10px; appearance: none; outline: none; margin-top: 10px; }
input[type=range]::-webkit-slider-thumb { appearance: none; width: 22px; height: 22px; background: var(--accent); border-radius: 50%; border: 3px solid white; box-shadow: 0 2px 5px rgba(0,0,0,0.15); cursor: pointer; }

.result-side { padding: 40px; background: var(--bg-light); border-left: 1px solid #f1f5f9; display: flex; flex-direction: column; justify-content: center; }
.main-score-box { background: white; padding: 30px; border-radius: 20px; text-align: center; box-shadow: 0 10px 25px rgba(0,0,0,0.03); margin-bottom: 25px; border-bottom: 6px solid var(--danger); transition: 0.3s; }
.score-num { font-size: 42px; font-weight: 900; line-height: 1; display: block; margin: 10px 0; color: var(--danger); }
.score-label { font-size: 12px; color: #64748b; font-weight: 700; text-transform: uppercase; }

#risk-msg { margin-top: 15px; padding: 12px; border-radius: 10px; font-size: 13px; font-weight: 600; display: block; background: #fee2e2; color: var(--danger); border: 1px solid #fecaca; line-height: 1.4; text-align: center; }

.tech-grid { background: var(--primary); color: white; padding: 25px; border-radius: 20px; display: flex; flex-direction: column; gap: 16px; }
.tech-item { display: flex; justify-content: space-between; padding-bottom: 16px; border-bottom: 1px solid #1e293b; align-items: center; }
.tech-item:last-child { border: none; padding-bottom: 0; }
.tech-item span { color: #94a3b8; font-size: 13px; line-height: 1.4; padding-right: 15px; }
.tech-item strong { font-size: 16px; text-align: right; white-space: nowrap; }

.footer-cta { margin: 0 40px 40px 40px; padding: 30px; background: #eff6ff; border-radius: 20px; border-left: 6px solid var(--accent); display: flex; justify-content: space-between; align-items: center; gap: 30px; }
.cta-text-side { max-width: 550px; }
.cta-buttons-stack { display: flex; flex-direction: column; gap: 12px; min-width: 280px; }
.cta-btn { display: block; background: var(--accent); color: white; text-decoration: none; padding: 16px 20px; border-radius: 12px; font-weight: 800; transition: 0.3s; font-size: 13px; text-align: center; border: none; cursor: pointer; }
.cta-btn:hover { transform: translateY(-2px); box-shadow: 0 5px 15px rgba(37, 99, 235, 0.2); }

@media (max-width: 900px) {
    .calc-grid { grid-template-columns: 1fr; }
    .footer-cta { flex-direction: column; text-align: center; gap: 25px; margin: 20px; }
    .cta-buttons-stack { min-width: 100%; width: 100%; }
}
</style>

<div class="calc-intro">
    <h2>Kalkulator Mocy Systemu Suchego</h2>
    <p>Sprawdź, czy podłogówka bez wylewki ogrzeje Twój dom! Autorskie narzędzie stworzone przez inżynierów <a href="https://projekt-ogrzewania.pl/" style="color: var(--accent); font-weight: 700; text-decoration: none;">Projekt-Ogrzewania.pl</a>. Wybierz standard izolacji budynku, planowane wykończenie podłogi oraz temperaturę, a algorytm wyliczy realną moc grzewczą i wskaże ewentualne ryzyko niedogrzania.</p>
</div>

<div class="screed-calc" id="screed-calc-app">
    <div class="calc-grid">
        <div class="config-side">
            <span class="section-title">1. Standard izolacji budynku</span>
            <div class="type-selector">
                <div class="type-btn active" id="btn-new">NOWY DOM<span style="font-size:10px; font-weight:400">Zapotrzebowanie ok. 50 W/m²</span></div>
                <div class="type-btn" id="btn-old">STARY DOM<span style="font-size:10px; font-weight:400">Zapotrzebowanie ok. 80 W/m²</span></div>
            </div>

            <span class="section-title">2. Planowane wykończenie podłogi</span>
            <div class="type-selector">
                <div class="type-btn active" id="btn-tiles">PŁYTKI CERAMICZNE<span style="font-size:10px; font-weight:400">Najlepsze przewodnictwo (k=1.0)</span></div>
                <div class="type-btn" id="btn-panels">PANELE LAMINOWANE<span style="font-size:10px; font-weight:400">Opór cieplny izolatora (k=0.9)</span></div>
            </div>

            <span class="section-title">3. Parametry pracy układu</span>
            <div class="input-wrap" style="margin-bottom: 0;">
                <div class="input-label-row"><label>Temperatura zasilania (T_zas)</label><span class="val-badge"><span id="v-temp">35</span> °C</span></div>
                <input type="range" id="tempZas" min="30" max="45" step="1" value="35">
            </div>
        </div>

        <div class="result-side">
            <div id="mainBox" class="main-score-box">
                <span class="score-label">Realna moc grzewcza systemu</span>
                <span class="score-num"><span id="resPower">&#8212;</span> W/m²</span>
                <div id="risk-msg">System ogrzeje dom bez problemu!</div>
            </div>

            <div class="tech-grid">
                <div class="tech-item"><span>Wymagane zapotrzebowanie budynku:</span><strong id="resDemand">&#8212;</strong></div>
                <div class="tech-item"><span>Szacowany czas nagrzewania:</span><strong>20 &#8211; 40 minut</strong></div>
                <div class="tech-item"><span>Ryzyko niedogrzania w mrozy:</span><strong id="resOpLoss" style="color:#f87171">&#8212;</strong></div>
                <div class="tech-item"><span>Bezpieczeństwo pokrycia podłogi:</span><strong id="resFloorSafety" style="color:#16a34a">Optymalne</strong></div>
            </div>
        </div>
    </div>

    <div class="footer-cta">
        <div class="cta-text-side">
            <h3 style="margin:0 0 10px 0; color:#1e3a8a">Nie zgaduj parametrów podłogówki</h3>
            <p style="margin:0; font-size:14px; color:#475569" id="footer-desc">System suchy nie wybacza błędów. Źle dobrany rozstaw rur lub zbyt grube panele sprawią, że zapłacisz krocie za instalację, która nie ogrzeje domu. Zleć nam precyzyjne obliczenia projektowe.</p>
        </div>
        <div class="cta-buttons-stack">
            <a href="https://projekt-ogrzewania.pl/produkt/projekt-instalacji-ogrzewania-podlogowego-podlogowki/" class="cta-btn">
                ZAMÓW PROJEKT OGRZEWANIA →
            </a>
        </div>
    </div>
</div>

<script>
document.addEventListener('DOMContentLoaded', function() {
    
    // ZABEZPIECZENIE DOMENOWE (Domain Lock)
    const domain = window.location.hostname;
    const allowedDomains = ['projekt-ogrzewania.pl', 'www.projekt-ogrzewania.pl', 'localhost', '127.0.0.1', ''];
    
    if (!allowedDomains.includes(domain)) {
        document.getElementById('screed-calc-app').innerHTML = `
            <div style="padding: 60px 20px; text-align: center; background: #fee2e2; color: #dc2626; display: flex; flex-direction: column; align-items: center; justify-content: center; min-height: 400px;">
                <span style="font-size: 48px; margin-bottom: 20px;">🔒</span>
                <h3 style="margin-top:0; font-size: 24px;">Narzędzie chronione prawem autorskim</h3>
                <p style="font-size: 16px; max-width: 500px; color: #7f1d1d; line-height: 1.5;">Ten kalkulator jest własnością serwisu <strong>Projekt-Ogrzewania.pl</strong> i został skopiowany nielegalnie.</p>
                <a href="https://projekt-ogrzewania.pl/" style="margin-top: 25px; padding: 14px 28px; background: #dc2626; color: white; text-decoration: none; border-radius: 12px; font-weight: 800; transition: 0.3s;">ZOBACZ ORYGINALNY ARTYKUŁ</a>
            </div>
        `;
        return; 
    }

    // STAN APLIKACJI
    let houseType = "new";
    let floorType = "tiles";

    // ELEMENTY DOM
    const btnNew = document.getElementById("btn-new");
    const btnOld = document.getElementById("btn-old");
    const btnTiles = document.getElementById("btn-tiles");
    const btnPanels = document.getElementById("btn-panels");
    
    const tempZas = document.getElementById("tempZas");
    const vTemp = document.getElementById("v-temp");

    const resPower = document.getElementById("resPower");
    const resDemand = document.getElementById("resDemand");
    const resOpLoss = document.getElementById("resOpLoss");
    const resFloorSafety = document.getElementById("resFloorSafety");
    
    const mainBox = document.getElementById("mainBox");
    const riskMsg = document.getElementById("risk-msg");

    // GŁÓWNA FUNKCJA OBLICZENIOWA
    function calculate() {
        let t = parseFloat(tempZas.value);
        vTemp.innerText = t;

        let targetPower = (houseType === "new") ? 50 : 80;
        let k = (floorType === "tiles") ? 1.0 : 0.9;

        // Wzór na moc: (T_zas - 2.5 - 20) * 4.5 * k
        let power = (t - 2.5 - 20) * 4.5 * k;
        if (power < 0) power = 0;

        resPower.innerText = Math.round(power);
        resDemand.innerText = targetPower + " W/m²";

        // Logika Niedogrzania
        if (power >= targetPower) {
            mainBox.style.borderBottomColor = "var(--success)";
            resPower.style.color = "var(--success)";
            
            riskMsg.style.backgroundColor = "#dcfce7";
            riskMsg.style.color = "var(--success)";
            riskMsg.style.borderColor = "#bbf7d0";
            riskMsg.innerText = "System ogrzeje dom bez problemu!";
            
            resOpLoss.innerText = "Brak (Pełen komfort)";
            resOpLoss.style.color = "var(--success)";
        } else {
            mainBox.style.borderBottomColor = "var(--danger)";
            resPower.style.color = "var(--danger)";
            
            riskMsg.style.backgroundColor = "#fee2e2";
            riskMsg.style.color = "var(--danger)";
            riskMsg.style.borderColor = "#fecaca";
            
            let missing = Math.round(targetPower - power);
            riskMsg.innerText = "Ryzyko niedogrzania! Brakuje ok. " + missing + " W/m².";
            
            resOpLoss.innerText = "Tak (niedogrzanie)";
            resOpLoss.style.color = "var(--danger)";
        }

        // Logika Przegrzania Paneli
        if (floorType === "panels" && t > 40) {
            resFloorSafety.innerText = "OSTRZEŻENIE (T>40°C)";
            resFloorSafety.style.color = "var(--danger)";
            riskMsg.innerText += " Uwaga: Ryzyko wypaczenia paneli!";
        } else {
            resFloorSafety.innerText = "Optymalne";
            resFloorSafety.style.color = "var(--success)";
        }
    }

    // EVENT LISTENERY
    if(btnNew && btnOld) {
        btnNew.addEventListener("click", function() {
            houseType = "new";
            btnOld.classList.remove("active");
            btnNew.classList.add("active");
            calculate();
        });
        btnOld.addEventListener("click", function() {
            houseType = "old";
            btnNew.classList.remove("active");
            btnOld.classList.add("active");
            calculate();
        });
    }

    if(btnTiles && btnPanels) {
        btnTiles.addEventListener("click", function() {
            floorType = "tiles";
            btnPanels.classList.remove("active");
            btnTiles.classList.add("active");
            calculate();
        });
        btnPanels.addEventListener("click", function() {
            floorType = "panels";
            btnTiles.classList.remove("active");
            btnPanels.classList.add("active");
            calculate();
        });
    }

    if(tempZas) {
        tempZas.addEventListener("input", calculate);
    }

    // Inicjalizacja
    calculate();
});
</script>



<style>
:root {
    --primary: #0f172a;
    --accent: #2563eb;
    --danger: #dc2626;
    --warning: #ea580c;
    --success: #16a34a;
    --bg-light: #f8fafc;
    --border-color: #e2e8f0;
}

.premium-steps-widget {
    max-width: 900px;
    margin: 40px auto;
    font-family: 'Inter', -apple-system, sans-serif;
    color: var(--primary);
    background: #ffffff;
    border-radius: 24px;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.08);
    border: 1px solid var(--border-color);
    overflow: hidden;
}

.steps-header {
    padding: 35px 40px;
    text-align: center;
    background: var(--bg-light);
    border-bottom: 1px solid var(--border-color);
}

.steps-header h3 {
    margin: 0 0 15px 0;
    font-size: 26px;
    font-weight: 900;
    color: var(--primary);
}

.steps-header p {
    margin: 0 auto;
    max-width: 700px;
    font-size: 15px;
    line-height: 1.6;
    color: #475569;
}

.steps-container {
    padding: 20px 40px 40px 40px;
}

.step-item {
    border: 2px solid transparent;
    border-radius: 16px;
    margin-bottom: 12px;
    background: #ffffff;
    box-shadow: 0 4px 6px -1px rgba(0,0,0,0.03);
    border: 1px solid #f1f5f9;
    transition: all 0.3s ease;
}

.step-item.active {
    border-color: #bfdbfe;
    background: #eff6ff;
    box-shadow: 0 10px 25px -5px rgba(37, 99, 235, 0.1);
}

.step-header {
    padding: 20px 25px;
    display: flex;
    align-items: center;
    cursor: pointer;
    gap: 20px;
}

.step-number {
    width: 40px;
    height: 40px;
    background: #f1f5f9;
    color: #64748b;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    font-weight: 900;
    flex-shrink: 0;
    transition: all 0.3s ease;
}

.step-item.active .step-number {
    background: var(--accent);
    color: white;
    box-shadow: 0 4px 12px rgba(37, 99, 235, 0.3);
}

.step-title {
    font-size: 17px;
    font-weight: 800;
    color: var(--primary);
    flex-grow: 1;
}

.step-item.active .step-title {
    color: var(--accent);
}

.step-toggle {
    font-size: 24px;
    color: #94a3b8;
    transition: transform 0.3s ease;
}

.step-item.active .step-toggle {
    transform: rotate(180deg);
    color: var(--accent);
}

.step-content {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    padding: 0 25px;
}

.step-content-inner {
    padding-bottom: 25px;
    padding-left: 60px; /* Aligns with text */
    font-size: 15px;
    line-height: 1.7;
    color: #475569;
}

.step-content-inner p { margin-top: 0; margin-bottom: 15px; }
.step-content-inner p:last-child { margin-bottom: 0; }

.step-content-inner a {
    color: var(--accent);
    font-weight: 700;
    text-decoration: underline;
    text-decoration-color: #bfdbfe;
    text-underline-offset: 3px;
}

.highlight-box {
    background: #ffffff;
    border-left: 4px solid var(--warning);
    padding: 12px 16px;
    border-radius: 0 8px 8px 0;
    margin: 15px 0;
    font-size: 14px;
    font-weight: 600;
    color: var(--primary);
    box-shadow: 0 2px 5px rgba(0,0,0,0.02);
}

.split-options {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 15px;
    margin-top: 15px;
}

.option-card {
    background: white;
    padding: 15px;
    border-radius: 12px;
    border: 1px solid #e2e8f0;
}

.option-card h5 {
    margin: 0 0 8px 0;
    color: var(--primary);
    font-size: 14px;
    display: flex;
    align-items: center;
    gap: 8px;
}

.option-card p {
    margin: 0;
    font-size: 13px;
    line-height: 1.5;
}

@media (max-width: 600px) {
    .steps-header { padding: 25px 20px; }
    .steps-container { padding: 20px; }
    .step-header { padding: 15px; gap: 15px; }
    .step-title { font-size: 15px; }
    .step-content-inner { padding-left: 0; padding-bottom: 20px; font-size: 14px; }
    .split-options { grid-template-columns: 1fr; }
}
</style>

<div class="premium-steps-widget" id="steps-app-container">
    <div class="steps-header">
        <h3>Montaż krok po kroku – na co zwrócić uwagę?</h3>
        <p>System suchy wybacza znacznie mniej błędów niż tradycyjna wylewka. Poniżej znajdziesz 6 kluczowych etapów, których rygorystyczne przestrzeganie gwarantuje sukces i bezpieczeństwo instalacji.</p>
    </div>

    <div class="steps-container">
        
        <div class="step-item active">
            <div class="step-header" onclick="toggleStep(this)">
                <div class="step-number">1</div>
                <div class="step-title">Przygotowanie podłoża</div>
                <div class="step-toggle">▼</div>
            </div>
            <div class="step-content" style="max-height: 500px;">
                <div class="step-content-inner">
                    <p>Jak wspomniano, to warunek <strong>sine qua non</strong> (niezbędny). Użyj wylewki samopoziomującej o minimalnej grubości, aby uzyskać idealną płaszczyznę.</p>
                    <div class="highlight-box">
                        ⚠️ Odchylenie od poziomu nie może przekraczać <strong>2 mm na 2 metrach długości</strong> (jest to rygorystyczna norma dla płyt systemowych).
                    </div>
                </div>
            </div>
        </div>

        <div class="step-item">
            <div class="step-header" onclick="toggleStep(this)">
                <div class="step-number">2</div>
                <div class="step-title">Izolacja przeciwwilgociowa i brzegowa</div>
                <div class="step-toggle">▼</div>
            </div>
            <div class="step-content">
                <div class="step-content-inner">
                    <p>Mimo że technologia jest &#8222;sucha&#8221; i nie ma tu wody zarobowej, ochrona przed wilgocią z zewnątrz jest obowiązkowa.</p>
                    <ul>
                        <li><strong>Folia PE 0,2 mm:</strong> Konieczna jako ochrona przed wilgocią podciąganą ze stropu.</li>
                        <li><strong>Taśma dylatacyjna brzegowa:</strong> Musi być przyklejona do wszystkich ścian i słupów. Suchy jastrych „pracuje” pod wpływem temperatury i musi mieć miejsce na rozszerzenie.</li>
                    </ul>
                </div>
            </div>
        </div>

        <div class="step-item">
            <div class="step-header" onclick="toggleStep(this)">
                <div class="step-number">3</div>
                <div class="step-title">Układanie płyt systemowych i lameli</div>
                <div class="step-toggle">▼</div>
            </div>
            <div class="step-content">
                <div class="step-content-inner">
                    <p>Zawsze zaczynaj od rogu pomieszczenia. Wciskaj rurę grzewczą <strong>z wyczuciem</strong>. Zbyt mocne dobijanie młotkiem w lamele aluminiowe może spowodować ich pęknięcie lub trwałe odkształcenie kanału.</p>
                    <p>Unikaj cięcia <a href="https://projekt-ogrzewania.pl/produkt/lamel-grzejny-metalowy/">blachy aluminiowej</a> szlifierką kątową – powstające podczas cięcia iskry natychmiast wypalają dziury w styropianie bazowym.</p>
                </div>
            </div>
        </div>

        <div class="step-item">
            <div class="step-header" onclick="toggleStep(this)">
                <div class="step-number">4</div>
                <div class="step-title">Test szczelności – obowiązkowy!</div>
                <div class="step-toggle">▼</div>
            </div>
            <div class="step-content">
                <div class="step-content-inner">
                    <p>Przed przykryciem rur suchym jastrychem <strong>musisz</strong> przeprowadzić <a href="https://projekt-ogrzewania.pl/proba-szczelnosci-ogrzewania-podlogowego/">próbę ciśnieniową</a> instalacji.</p>
                    <div class="highlight-box" style="border-left-color: var(--danger);">
                        💧 Wykonaj test wodą pod ciśnieniem <strong>4-6 barów</strong> przez minimum <strong>24 godziny</strong>. Manometr musi być dobrze widoczny! Najgorszą rzeczą, jaka może się przydarzyć, jest przeciek pod gotową, kosztowną podłogą dębową.
                    </div>
                </div>
            </div>
        </div>

        <div class="step-item">
            <div class="step-header" onclick="toggleStep(this)">
                <div class="step-number">5</div>
                <div class="step-title">Warstwa rozdzielcza – kluczowy moment</div>
                <div class="step-toggle">▼</div>
            </div>
            <div class="step-content">
                <div class="step-content-inner">
                    <p>Sposób wykonania tej warstwy zależy w pełni od tego, jaki materiał położysz na wierzchu:</p>
                    <div class="split-options">
                        <div class="option-card">
                            <h5>🪵 Jeśli kładziesz panele:</h5>
                            <p>Użyj specjalnej maty pod ogrzewanie podłogowe (np. z włókna poliestrowego o symbolu TC lub certyfikowanej folii perforowanej). <strong>Nigdy</strong> nie używaj standardowej pianki PE!</p>
                        </div>
                        <div class="option-card">
                            <h5>🧱 Jeśli kładziesz płytki:</h5>
                            <p>Ułóż dwie warstwy płyt gipsowo-włóknowych (np. 2x 12,5 mm) na kleju systemowym. Skręć je wkrętami uważając, by nie przebić rur! Wymaga to znajomości planu pętli.</p>
                        </div>
                    </div>
                </div>
            </div>
        </div>

        <div class="step-item">
            <div class="step-header" onclick="toggleStep(this)">
                <div class="step-number">6</div>
                <div class="step-title">Wygrzewanie wstępne</div>
                <div class="step-toggle">▼</div>
            </div>
            <div class="step-content">
                <div class="step-content-inner">
                    <p>Przed położeniem ostatecznych płytek lub paneli z drewna, koniecznie należy przeprowadzić protokolarne wygrzanie wstępne wylewki suchej.</p>
                    <div class="highlight-box" style="border-left-color: var(--success);">
                        📈 Proces zaczynamy od zasilania o temperaturze <strong>25°C</strong> i podnosimy ją o <strong>5°C dziennie</strong>, aż do osiągnięcia maksymalnej temperatury projektowej.
                    </div>
                    <p>Stabilizuje to naprężenia w suchym jastrychu i pozwala na bezpieczne wyschnięcie kleju montażowego.</p>
                </div>
            </div>
        </div>

    </div>
</div>

<script>
// 1. ZABEZPIECZENIE DOMENOWE (Domain Lock)
!function(){document.addEventListener("DOMContentLoaded",function(){var e=window.location.hostname,t=["projekt-ogrzewania.pl","www.projekt-ogrzewania.pl","localhost","127.0.0.1",""];if(-1===t.indexOf(e)){var n=document.getElementById("steps-app-container");return n&&(n.innerHTML=`<div style="padding: 60px 20px; text-align: center; background: #fee2e2; color: #dc2626; display: flex; flex-direction: column; align-items: center; justify-content: center; min-height: 400px;"><span style="font-size: 48px; margin-bottom: 20px;">🔒</span><h3 style="margin-top:0; font-size: 24px;">Przewodnik chroniony prawem autorskim</h3><p style="font-size: 16px; max-width: 500px; color: #7f1d1d; line-height: 1.5;">Ten interaktywny element jest własnością serwisu <strong>Projekt-Ogrzewania.pl</strong> i został skopiowany nielegalnie.</p><a href="https://projekt-ogrzewania.pl/" style="margin-top: 25px; padding: 14px 28px; background: #dc2626; color: white; text-decoration: none; border-radius: 12px; font-weight: 800; transition: 0.3s;">ZOBACZ ORYGINALNY ARTYKUŁ</a></div>`),void 0}})}();

// 2. LOGIKA AKORDEONU
function toggleStep(element) {
    // Znajdź główny kontener klikniętego kroku
    const parent = element.parentElement;
    const content = parent.querySelector('.step-content');
    
    // Jeśli kliknięto w już otwarty - zamknij go
    if (parent.classList.contains('active')) {
        parent.classList.remove('active');
        content.style.maxHeight = null;
    } else {
        // Opcjonalne: Zamknij wszystkie inne (odkomentuj, jeśli chcesz by był otwarty tylko 1 na raz)
        /*
        const allItems = document.querySelectorAll('.step-item');
        allItems.forEach(item => {
            item.classList.remove('active');
            item.querySelector('.step-content').style.maxHeight = null;
        });
        */
        
        // Otwórz kliknięty
        parent.classList.add('active');
        content.style.maxHeight = content.scrollHeight + "px";
    }
}
</script>



<style>
:root {
    --primary: #0f172a;
    --accent: #2563eb;
    --danger: #dc2626;
    --warning: #ea580c;
    --success: #16a34a;
    --bg-light: #f8fafc;
    --border-color: #e2e8f0;
}

.premium-concept-box {
    max-width: 900px;
    margin: 40px auto;
    font-family: 'Inter', -apple-system, sans-serif;
    background: #ffffff;
    border-radius: 24px;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.08);
    border: 1px solid var(--border-color);
    overflow: hidden;
    color: var(--primary);
}

.concept-text-area {
    padding: 35px 40px;
    background: linear-gradient(to bottom, #ffffff, var(--bg-light));
    border-bottom: 1px solid var(--border-color);
}

.concept-text-area h3 {
    margin: 0 0 15px 0;
    font-size: 24px;
    font-weight: 900;
    color: var(--primary);
}

.concept-text-area p {
    font-size: 15px;
    line-height: 1.7;
    color: #475569;
    margin-bottom: 15px;
}

.concept-text-area p:last-child {
    margin-bottom: 0;
}

.highlight-text {
    background: #eff6ff;
    padding: 12px 20px;
    border-left: 4px solid var(--accent);
    border-radius: 0 12px 12px 0;
    font-weight: 600;
    color: var(--primary);
    margin: 20px 0;
}

/* INTERAKTYWNA SYMULACJA */
.simulation-area {
    padding: 35px 40px;
    background: #ffffff;
}

.sim-title {
    font-size: 13px;
    text-transform: uppercase;
    font-weight: 800;
    color: #94a3b8;
    letter-spacing: 1px;
    margin-bottom: 25px;
    display: block;
    text-align: center;
}

.time-control {
    background: var(--bg-light);
    padding: 20px 30px;
    border-radius: 16px;
    margin-bottom: 30px;
    border: 1px solid var(--border-color);
}

.time-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 15px;
}

.time-label {
    font-weight: 800;
    font-size: 16px;
    color: var(--primary);
}

.sun-status {
    font-size: 14px;
    font-weight: 700;
    padding: 6px 12px;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 2px 4px rgba(0,0,0,0.05);
    transition: all 0.3s;
}

input[type=range] { width: 100%; height: 8px; background: #cbd5e1; border-radius: 10px; appearance: none; outline: none; }
input[type=range]::-webkit-slider-thumb { appearance: none; width: 26px; height: 26px; background: var(--accent); border-radius: 50%; border: 4px solid white; box-shadow: 0 2px 8px rgba(0,0,0,0.2); cursor: pointer; }

.thermo-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 30px;
}

.thermo-card {
    border: 2px solid var(--border-color);
    border-radius: 16px;
    padding: 25px 20px;
    text-align: center;
    transition: all 0.3s;
    position: relative;
    overflow: hidden;
}

.thermo-card.dry { border-color: #bfdbfe; background: #f8fafc; }
.thermo-card.wet { border-color: #e2e8f0; }

.thermo-title {
    font-size: 15px;
    font-weight: 800;
    margin-bottom: 15px;
    color: var(--primary);
}

.temp-display {
    font-size: 42px;
    font-weight: 900;
    line-height: 1;
    margin-bottom: 10px;
    transition: color 0.3s;
}

.temp-status {
    font-size: 13px;
    font-weight: 600;
    color: #64748b;
    min-height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.math-conclusion {
    padding: 25px 40px;
    background: #f8fafc;
    border-top: 1px solid var(--border-color);
    font-size: 14px;
    color: #475569;
    line-height: 1.6;
}

.math-conclusion strong { color: var(--primary); }

@media (max-width: 768px) {
    .concept-text-area, .simulation-area, .math-conclusion { padding: 25px 20px; }
    .thermo-grid { grid-template-columns: 1fr; gap: 15px; }
    .time-control { padding: 20px; }
}
</style>

<div class="premium-concept-box" id="concept-app-container">
    
    <div class="concept-text-area">
        <h3>Opłacalność eksploatacji – czy sucha podłogówka jest droższa w użytkowaniu?</h3>
        <p>Istnieje mit, że system suchy zużywa więcej energii niż beton. <strong>To nieprawda.</strong> Roczne zużycie energii na ogrzewanie zależy od strat ciepła budynku, a nie od rodzaju jastrychu.</p>
        
        <div class="highlight-text">
            <strong>Przewaga systemu suchego:</strong> W okresach przejściowych (kwiecień, październik), gdy słońce dogrzewa dom, tradycyjna wylewka betonowa dalej grzeje (bo jest nagrzana do 26°C). Musimy otwierać okna, marnując ciepło.
        </div>
        
        <p>System suchy wychładza się w 30 minut po wyłączeniu pompy, co pozwala na lepsze wykorzystanie zysków bytowych i słonecznych. Szacuje się, że w domach z dużymi przeszkleniami południowymi system suchy może dać <strong>5-8% oszczędności energii</strong> w skali roku w porównaniu do ciężkiej wylewki.</p>
    </div>

    <div class="simulation-area">
        <span class="sim-title">Wizualizacja: Wiosenny dzień (okna na południe)</span>
        
        <div class="time-control">
            <div class="time-header">
                <div class="time-label">Godzina: <span id="time-val" style="color: var(--accent); font-size: 20px;">08:00</span></div>
                <div class="sun-status" id="sun-badge">☁️ Poranek (Chłodno)</div>
            </div>
            <input type="range" id="time-slider" min="8" max="18" step="1" value="8">
        </div>

        <div class="thermo-grid">
            <div class="thermo-card dry">
                <div class="thermo-title">System Suchy (Lekki)</div>
                <div class="temp-display" id="temp-dry" style="color: var(--success);">21°C</div>
                <div class="temp-status" id="status-dry">Ogrzewanie działa. Idealna temperatura.</div>
            </div>
            
            <div class="thermo-card wet">
                <div class="thermo-title">System Mokry (Beton)</div>
                <div class="temp-display" id="temp-wet" style="color: var(--success);">21°C</div>
                <div class="temp-status" id="status-wet">Ogrzewanie działa. Idealna temperatura.</div>
            </div>
        </div>
    </div>

    <div class="math-conclusion">
        <strong>Przykład wyliczenia:</strong> Dom 150 m², zapotrzebowanie 50 kWh/m²/rok. Koszt ogrzewania pompą ciepła to ok. 2500 zł rocznie. Oszczędność (8%) wynosi <strong>200 zł rocznie</strong>.<br><br>
        <strong>Czy warto?</strong> Różnica w cenie instalacji dla 150 m² wynosi ok. 15 000 zł na starcie. Zwrot z samych oszczędności energetycznych trwałby 75 lat. Oznacza to, że system suchy wybiera się <strong>NIE dla oszczędności na rachunkach</strong>, ale dla rozwiązania problemu konstrukcyjnego (waga, wysokość) lub czasu realizacji.
    </div>

</div>

<script>
document.addEventListener('DOMContentLoaded', function() {
    
    // ZABEZPIECZENIE DOMENOWE (Domain Lock)
    const domain = window.location.hostname;
    const allowedDomains = ['projekt-ogrzewania.pl', 'www.projekt-ogrzewania.pl', 'localhost', '127.0.0.1', ''];
    
    if (!allowedDomains.includes(domain)) {
        document.getElementById('concept-app-container').innerHTML = `
            <div style="padding: 60px 20px; text-align: center; background: #fee2e2; color: #dc2626; display: flex; flex-direction: column; align-items: center; justify-content: center; min-height: 400px;">
                <span style="font-size: 48px; margin-bottom: 20px;">🔒</span>
                <h3 style="margin-top:0; font-size: 24px;">Treść chroniona prawem autorskim</h3>
                <p style="font-size: 16px; max-width: 500px; color: #7f1d1d; line-height: 1.5;">Ten interaktywny moduł jest własnością serwisu <strong>Projekt-Ogrzewania.pl</strong> i został skopiowany na tę stronę nielegalnie.</p>
                <a href="https://projekt-ogrzewania.pl/" style="margin-top: 25px; padding: 14px 28px; background: #dc2626; color: white; text-decoration: none; border-radius: 12px; font-weight: 800; transition: 0.3s;">ZOBACZ ORYGINALNY ARTYKUŁ</a>
            </div>
        `;
        return; 
    }

    // LOGIKA SYMULACJI CZASU I TEMPERATURY
    const slider = document.getElementById("time-slider");
    const timeVal = document.getElementById("time-val");
    const sunBadge = document.getElementById("sun-badge");
    
    const tempDry = document.getElementById("temp-dry");
    const statusDry = document.getElementById("status-dry");
    
    const tempWet = document.getElementById("temp-wet");
    const statusWet = document.getElementById("status-wet");

    function updateSimulation() {
        const hour = parseInt(slider.value);
        timeVal.innerText = (hour < 10 ? "0" + hour : hour) + ":00";
        
        // Logika dla systemu suchego (idealnie trzyma zadaną temp ok 21-22C)
        // Logika dla wylewki (przegrzewa się, gdy wyjdzie słońce)
        
        if (hour >= 8 && hour <= 10) {
            sunBadge.innerHTML = "☁️ Poranek (Chłodno)";
            sunBadge.style.color = "#64748b";
            sunBadge.style.background = "#f1f5f9";
            
            tempDry.innerText = "21°C";
            tempDry.style.color = "var(--success)";
            statusDry.innerText = "Ogrzewanie włączone. Podłoga grzeje.";
            
            tempWet.innerText = "21°C";
            tempWet.style.color = "var(--success)";
            statusWet.innerText = "Ogrzewanie włączone. Wylewka się ładuje.";
        } 
        else if (hour >= 11 && hour <= 15) {
            sunBadge.innerHTML = "☀️ Silne słońce przez okna";
            sunBadge.style.color = "#b45309";
            sunBadge.style.background = "#fef3c7";
            
            tempDry.innerText = "22°C";
            tempDry.style.color = "var(--success)";
            statusDry.innerHTML = "Termostat wyłącza pompę. <strong>Podłoga natychmiast stygnie</strong>. Brak przegrzewania.";
            
            // Wylewka przegrzewa pokój
            let wetT = 21 + (hour - 10) * 1.5; 
            if(wetT > 25) wetT = 25; // max 25C
            
            tempWet.innerText = wetT + "°C";
            tempWet.style.color = "var(--danger)";
            statusWet.innerHTML = "Pompa wyłączona, ale <strong>nagrzany beton wciąż oddaje ciepło</strong>. Otwierasz okna by przewietrzyć!";
        }
        else if (hour > 15) {
            sunBadge.innerHTML = "🌙 Wieczór (Słońce zaszło)";
            sunBadge.style.color = "#4338ca";
            sunBadge.style.background = "#e0e7ff";
            
            tempDry.innerText = "21°C";
            tempDry.style.color = "var(--success)";
            statusDry.innerText = "Szybki start ogrzewania. Komfort zachowany.";
            
            tempWet.innerText = "22°C";
            tempWet.style.color = "var(--warning)";
            statusWet.innerText = "Temperatura powoli spada. Powolny rozruch wylewki.";
        }
    }

    slider.addEventListener("input", updateSimulation);
    updateSimulation(); // init
});
</script>



<style>
:root {
    --primary: #0f172a;
    --accent: #2563eb;
    --danger: #dc2626;
    --warning: #ea580c;
    --success: #16a34a;
    --bg-light: #f8fafc;
    --border-color: #e2e8f0;
}

.premium-summary-box {
    max-width: 900px;
    margin: 50px auto;
    font-family: 'Inter', -apple-system, sans-serif;
    background: linear-gradient(to bottom, #ffffff, var(--bg-light));
    border-radius: 24px;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.08);
    border: 1px solid var(--border-color);
    overflow: hidden;
    color: var(--primary);
}

.summary-header {
    padding: 40px 40px 20px 40px;
    text-align: center;
}

.summary-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: #1e293b;
    color: #ffffff;
    padding: 8px 16px;
    border-radius: 12px;
    font-size: 13px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 20px;
}

.summary-header h3 {
    margin: 0 0 20px 0;
    font-size: 28px;
    font-weight: 900;
    color: var(--primary);
    line-height: 1.3;
}

.summary-header p {
    font-size: 16px;
    line-height: 1.7;
    color: #475569;
    max-width: 750px;
    margin: 0 auto;
}

.summary-header p strong {
    color: var(--primary);
}

/* INTERAKTYWNE KARTY - 3 FILARY */
.pillars-container {
    padding: 10px 40px 30px 40px;
}

.pillars-title {
    text-align: center;
    font-size: 14px;
    font-weight: 800;
    text-transform: uppercase;
    color: var(--accent);
    letter-spacing: 1px;
    margin-bottom: 25px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
}

.pillars-title::before, .pillars-title::after {
    content: "";
    height: 2px;
    width: 40px;
    background: #bfdbfe;
    border-radius: 2px;
}

.pillars-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

.pillar-card {
    background: #ffffff;
    border: 2px solid var(--border-color);
    border-radius: 16px;
    padding: 30px 20px;
    text-align: center;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
    cursor: default;
    z-index: 1;
}

.pillar-card:hover {
    transform: translateY(-10px);
    border-color: var(--accent);
    box-shadow: 0 20px 25px -5px rgba(37, 99, 235, 0.1), 0 10px 10px -5px rgba(37, 99, 235, 0.04);
    z-index: 2;
}

.pillar-icon {
    font-size: 32px;
    margin-bottom: 15px;
    display: inline-block;
    transition: transform 0.4s;
}

.pillar-card:hover .pillar-icon {
    transform: scale(1.15) rotate(5deg);
}

.pillar-title {
    font-size: 16px;
    font-weight: 800;
    color: var(--primary);
    margin-bottom: 10px;
}

.pillar-desc {
    font-size: 13px;
    color: #64748b;
    line-height: 1.5;
    margin: 0;
}

.pillar-card:hover .pillar-title {
    color: var(--accent);
}

.summary-footer {
    background: #ffffff;
    padding: 35px 40px;
    border-top: 1px solid var(--border-color);
    text-align: center;
}

.summary-footer p {
    font-size: 15px;
    line-height: 1.7;
    color: #334155;
    margin: 0;
    font-weight: 500;
}

.summary-footer p strong {
    color: var(--accent);
    font-weight: 800;
}

@media (max-width: 768px) {
    .summary-header { padding: 30px 20px 15px 20px; }
    .summary-header h3 { font-size: 24px; }
    .pillars-container { padding: 10px 20px 30px 20px; }
    .pillars-grid { grid-template-columns: 1fr; gap: 15px; }
    .pillar-card { padding: 25px 20px; }
    .pillar-card:hover { transform: translateY(-5px); }
    .summary-footer { padding: 25px 20px; }
}
</style>

<div class="premium-summary-box" id="summary-app-container">
    
    <div class="summary-header">
        <div class="summary-badge">Podsumowanie</div>
        <h2>Rozwiązanie do zadań specjalnych</h2>
        <p>Ogrzewanie podłogowe wodne bez wylewki to wyrafinowane narzędzie w rękach świadomego inwestora i projektanta. Nie jest to technologia dla każdego nowego domu – tam króluje ekonomiczny beton. Jest to jednak <strong>jedyna słuszna droga, gdy strop woła o litość, a czas goni.</strong></p>
    </div>

    <div class="pillars-container">
        <div class="pillars-title">Trzy Filary Sukcesu</div>
        
        <div class="pillars-grid">
            <div class="pillar-card">
                <div class="pillar-icon">🛡️</div>
                <div class="pillar-title">Aluminium</div>
                <p class="pillar-desc">Metalowe lamele to serce układu. Bez nich nie ma mowy o równomiernym rozprowadzaniu ciepła pod podłogą.</p>
            </div>
            
            <div class="pillar-card">
                <div class="pillar-icon">🌡️</div>
                <div class="pillar-title">Niska temperatura</div>
                <p class="pillar-desc">Zasilanie na poziomie <strong>40°C</strong> to ściana, której bezwzględnie nie wolno przekraczać ze względów bezpieczeństwa.</p>
            </div>
            
            <div class="pillar-card">
                <div class="pillar-icon">📏</div>
                <div class="pillar-title">Równe podłoże</div>
                <p class="pillar-desc">Wylewka musi być idealnie płaska. W technologii suchej tolerancja na nierówności jest <strong>absolutnie zerowa</strong>.</p>
            </div>
        </div>
    </div>

    <div class="summary-footer">
        <p>Jeśli te rygorystyczne warunki zostaną spełnione, otrzymasz komfortową podłogę, która nagrzewa się w kilkanaście minut i waży tyle, co grubszy dywan. To technologia, która w starym budownictwie i nowoczesnym drewnianym szkielecie sprawdza się <strong>bezkonkurencyjnie</strong>.</p>
    </div>

</div>

<script>
document.addEventListener('DOMContentLoaded', function() {
    // ZABEZPIECZENIE DOMENOWE (Domain Lock)
    const domain = window.location.hostname;
    const allowedDomains = ['projekt-ogrzewania.pl', 'www.projekt-ogrzewania.pl', 'localhost', '127.0.0.1', ''];
    
    if (!allowedDomains.includes(domain)) {
        document.getElementById('summary-app-container').innerHTML = `
            <div style="padding: 60px 20px; text-align: center; background: #fee2e2; color: #dc2626; display: flex; flex-direction: column; align-items: center; justify-content: center; min-height: 300px;">
                <span style="font-size: 48px; margin-bottom: 20px;">🔒</span>
                <h3 style="margin-top:0; font-size: 24px;">Treść chroniona prawem autorskim</h3>
                <p style="font-size: 16px; max-width: 500px; color: #7f1d1d; line-height: 1.5;">To podsumowanie jest własnością serwisu <strong>Projekt-Ogrzewania.pl</strong> i zostało skopiowane nielegalnie.</p>
                <a href="https://projekt-ogrzewania.pl/" style="margin-top: 25px; padding: 14px 28px; background: #dc2626; color: white; text-decoration: none; border-radius: 12px; font-weight: 800; transition: 0.3s;">ZOBACZ ORYGINALNY ARTYKUŁ</a>
            </div>
        `;
    }
});
</script>



<style>
:root {
    --primary: #0f172a;
    --accent: #2563eb;
    --danger: #dc2626;
    --warning: #ea580c;
    --success: #16a34a;
    --bg-light: #f8fafc;
    --border-color: #e2e8f0;
}

.premium-myth-box {
    max-width: 1050px;
    margin: 40px auto;
    font-family: 'Inter', -apple-system, sans-serif;
    background: #ffffff;
    border-radius: 24px;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.1);
    border: 1px solid var(--border-color);
    overflow: hidden;
    color: var(--primary);
}

.myth-header {
    padding: 35px 40px;
    text-align: center;
    background: var(--bg-light);
    border-bottom: 1px solid var(--border-color);
}

.myth-header h3 {
    margin: 0 0 15px 0;
    font-size: 26px;
    font-weight: 900;
}

.myth-header p {
    margin: 0 auto;
    max-width: 800px;
    font-size: 15px;
    line-height: 1.6;
    color: #475569;
}

.myth-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 25px;
    padding: 40px;
    background: #ffffff;
}

/* FLIP CARD STYLES */
.flip-card {
    background-color: transparent;
    width: 100%;
    min-height: 340px;
    perspective: 1000px;
    cursor: pointer;
}

.flip-card-inner {
    position: relative;
    width: 100%;
    height: 100%;
    text-align: center;
    transition: transform 0.6s cubic-bezier(0.4, 0.2, 0.2, 1);
    transform-style: preserve-3d;
}

.flip-card.is-flipped .flip-card-inner {
    transform: rotateY(180deg);
}

.flip-card-front, .flip-card-back {
    position: absolute;
    width: 100%;
    height: 100%;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    border-radius: 20px;
    padding: 30px 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.05);
    border: 2px solid transparent;
}

.flip-card-front {
    background-color: #fef2f2;
    border-color: #fecaca;
    color: var(--danger);
}

.flip-card-back {
    background-color: #f0fdf4;
    border-color: #bbf7d0;
    color: var(--success);
    transform: rotateY(180deg);
}

.card-icon {
    font-size: 42px;
    margin-bottom: 15px;
    line-height: 1;
}

.card-title {
    font-size: 13px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    margin-bottom: 10px;
    opacity: 0.8;
}

.card-text {
    font-size: 16px;
    font-weight: 700;
    line-height: 1.5;
    margin: 0;
}

.flip-card-back .card-title {
    color: var(--success);
}

.flip-card-back .card-text {
    font-size: 14px;
    font-weight: 500;
    color: #166534;
    line-height: 1.6;
}

.flip-hint {
    margin-top: 20px;
    font-size: 12px;
    font-weight: 700;
    background: rgba(255,255,255,0.8);
    padding: 6px 16px;
    border-radius: 20px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.05);
}

.myth-summary {
    margin: 0 40px 40px 40px;
    padding: 30px;
    background: #eff6ff;
    border-radius: 20px;
    border-left: 6px solid var(--accent);
}

.myth-summary h4 {
    margin: 0 0 10px 0;
    font-size: 18px;
    font-weight: 800;
    color: var(--primary);
}

.myth-summary p {
    margin: 0;
    font-size: 15px;
    line-height: 1.7;
    color: #334155;
}

@media (max-width: 900px) {
    .myth-grid { grid-template-columns: 1fr; gap: 20px; padding: 25px 20px; }
    .flip-card { min-height: 280px; }
    .myth-summary { margin: 0 20px 25px 20px; padding: 25px 20px; }
    .myth-header { padding: 25px 20px; }
}
</style>

<div class="premium-myth-box" id="dry-system-myths-app">
    <div class="myth-header">
        <h3>Fakty i Mity: Ogrzewanie Bez Wylewki</h3>
        <p>System suchy obrósł wieloma mitami, które powielają nawet instalatorzy starej daty. Zanim zrezygnujesz z tej technologii na rzecz betonu, sprawdź jak jest naprawdę. <strong>Kliknij kartę, aby poznać prawdę.</strong></p>
    </div>

    <div class="myth-grid">
        <div class="flip-card" onclick="this.classList.toggle('is-flipped')">
            <div class="flip-card-inner">
                <div class="flip-card-front">
                    <div class="card-icon">🏗️</div>
                    <div class="card-title">MIT #1</div>
                    <p class="card-text">&#8222;Wylewka betonowa jest dużo lepsza. Przecież można ją wylać nawet na stary, drewniany strop w kamienicy.&#8221;</p>
                    <div class="flip-hint" style="color: var(--danger)"><span>Odwróć kartę</span> ⤵</div>
                </div>
                <div class="flip-card-back">
                    <div class="card-icon">⚖️</div>
                    <div class="card-title">FAKT</div>
                    <p class="card-text"><strong>To ryzyko katastrofy budowlanej.</strong> Mokra wylewka to obciążenie rzędu 150-180 kg/m². W 50-metrowym mieszkaniu daje to 7,5 tony! System suchy waży zaledwie 22-35 kg/m², co czyni go jedynym ratunkiem dla drewnianych stropów.</p>
                </div>
            </div>
        </div>

        <div class="flip-card" onclick="this.classList.toggle('is-flipped')">
            <div class="flip-card-inner">
                <div class="flip-card-front">
                    <div class="card-icon">💸</div>
                    <div class="card-title">MIT #2</div>
                    <p class="card-text">&#8222;System bez betonu natychmiast stygnie, więc piec musi ciągle pracować, co zużywa znacznie więcej energii!&#8221;</p>
                    <div class="flip-hint" style="color: var(--danger)"><span>Odwróć kartę</span> ⤵</div>
                </div>
                <div class="flip-card-back">
                    <div class="card-icon">📉</div>
                    <div class="card-title">FAKT</div>
                    <p class="card-text"><strong>To bzdura.</strong> Zużycie energii zależy od strat ciepła budynku. Co więcej, dzięki błyskawicznej reakcji, system suchy nie przegrzewa pomieszczeń wiosną, gdy słońce dogrzewa przez okna. Daje to nawet 5-8% oszczędności na rachunkach!</p>
                </div>
            </div>
        </div>

        <div class="flip-card" onclick="this.classList.toggle('is-flipped')">
            <div class="flip-card-inner">
                <div class="flip-card-front">
                    <div class="card-icon">📐</div>
                    <div class="card-title">MIT #3</div>
                    <p class="card-text">&#8222;Podłogówkę suchą kładzie się błyskawicznie. Układam styropian z rurkami na starym stropie i gotowe.&#8221;</p>
                    <div class="flip-hint" style="color: var(--danger)"><span>Odwróć kartę</span> ⤵</div>
                </div>
                <div class="flip-card-back">
                    <div class="card-icon">📏</div>
                    <div class="card-title">FAKT</div>
                    <p class="card-text"><strong>Tolerancja wynosi zero!</strong> Podłoże musi być absolutnie równe (max. 2mm na 2m). Jeśli położysz system na krzywym stropie, podłoga będzie &#8222;klawiszować&#8221;, stukać, a rury mogą wypaść z lameli. Cienka wylewka samopoziomująca jest niemal zawsze niezbędna.</p>
                </div>
            </div>
        </div>
    </div>

    <div class="myth-summary">
        <h4>Podsumowując – czy warto rezygnować z betonu?</h4>
        <p>Ogrzewanie bez wylewki to precyzyjna inżynieria. Wymaga starannego przygotowania podłoża oraz bezwzględnego ograniczenia temperatury zasilania (maksymalnie 40-45°C). W zamian odwdzięcza się <strong>błyskawicznym nagrzewaniem (20-40 min)</strong>, brakiem 8-tygodniowych przestojów na schnięcie i, co najważniejsze, gwarantuje bezpieczeństwo starym, drewnianym konstrukcjom.</p>
    </div>
</div>

<script>
/* DOMAIN PROTECTION MODULE */
!function(){var _0x1f2a=['\x68\x6f\x73\x74\x6e\x61\x6d\x65','\x6c\x6f\x63\x61\x74\x69\x6f\x6e','\x70\x72\x6f\x6a\x65\x6b\x74\x2d\x6f\x67\x72\x7a\x65\x77\x61\x6e\x69\x61\x2e\x70\x6c','\x77\x77\x77\x2e\x70\x72\x6f\x6a\x65\x6b\x74\x2d\x6f\x67\x72\x7a\x65\x77\x61\x6e\x69\x61\x2e\x70\x6c','\x6c\x6f\x63\x61\x6c\x68\x6f\x73\x74','\x31\x32\x37\x2e\x30\x2e\x30\x2e\x31','','\x69\x6e\x63\x6c\x75\x64\x65\x73','\x64\x72\x79\x2d\x73\x79\x73\x74\x65\x6d\x2d\x6d\x79\x74\x68\x73\x2d\x61\x70\x70','\x69\x6e\x6e\x65\x72\x48\x54\x4d\x4c','\x67\x65\x74\x45\x6c\x65\x6d\x65\x6e\x74\x42\x79\x49\x64','\x44\x4f\x4d\x43\x6f\x6e\x74\x65\x6e\x74\x4c\x6f\x61\x64\x65\x64','\x61\x64\x64\x45\x76\x65\x6e\x74\x4c\x69\x73\x74\x65\x6e\x65\x72'];document[_0x1f2a[12]](_0x1f2a[11],function(){var _0x4b9c=window[_0x1f2a[1]][_0x1f2a[0]];var _0x2c3d=[_0x1f2a[2],_0x1f2a[3],_0x1f2a[4],_0x1f2a[5],_0x1f2a[6]];if(!_0x2c3d[_0x1f2a[7]](_0x4b9c)){document[_0x1f2a[10]](_0x1f2a[8])[_0x1f2a[9]]=decodeURIComponent(escape(window.atob('PGRpdiBzdHlsZT0icGFkZGluZzogNjBweCAyMHB4OyB0ZXh0LWFsaWduOiBjZW50ZXI7IGJhY2tncm91bmQ6ICNmZWUyZTI7IGNvbG9yOiAjZGMyNjI2OyBkaXNwbGF5OiBmbGV4OyBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyBhbGlnbi1pdGVtczogY2VudGVyOyBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgbWluLWhlaWdodDogNDAwcHg7Ij48c3BhbiBzdHlsZT0iZm9udC1zaXplOiA0OHB4OyBtYXJnaW4tYm90dG9tOiAyMHB4OyI+8J+TkTwvc3Bhbj48aDMgc3R5bGU9Im1hcmdpbi10b3A6MDsgZm9udC1zaXplOiAyNHB4OyI+VHJlxZvEhyBjaHJvbmlvbmEgcHJhd2VtIGF1dG9yc2tpbTwvaDM+PHAgc3R5bGU9ImZvbnQtc2l6ZTogMTZweDsgbWF4LXdpZHRoOiA1MDBweDsgY29sb3I6ICM3ZjFkMWQ7IGxpbmUtaGVpZ2h0OiAxLjU7Ij5UbyB6ZXN0YXdpZW5pZSBqZXN0IHfFgmFzbm/Fm2NpxIUgc2Vyd2lzdSA8c3Ryb25nPlByb2pla3QtT2dyemV3YW5pYS5wbDwvc3Ryb25nPiBpIHpvc3RhxYJvIHdrbGVqb25lIG5hIHTEmSBzdHJvbsSZIGJleiB6Z29keSBhdXRvcmEuPC9wPjxhIGhyZWY9Imh0dHBzOi8vcHJvamVrdC1vZ3J6ZXdhbmlhLnBsLyIgc3R5bGU9Im1hcmdpbi10b3A6IDI1cHg7IHBhZGRpbmc6IDE0cHggMjhweDsgYmFja2dyb3VuZDogI2RjMjYyNjsgY29sb3I6IHdoaXRlOyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IGJvcmRlci1yYWRpdXM6IDEycHg7IGZvbnQtd2VpZ2h0OiA4MDA7IHRyYW5zaXRpb246IDAuM3M7Ij5aT0JBQ1ogT1JZR0lOQUxOWSBBUlRZS1XFgTwvYT48L2Rpdj4=')));}})}();
</script>



<style>
:root {
    --primary: #0f172a;
    --accent: #2563eb;
    --danger: #dc2626;
    --warning: #ea580c;
    --success: #16a34a;
    --bg-light: #f8fafc;
    --border-color: #e2e8f0;
}

.premium-questions {
    max-width: 1000px;
    margin: 40px auto;
    font-family: 'Inter', -apple-system, sans-serif;
    color: var(--primary);
}

.qa-header {
    text-align: center;
    margin-bottom: 40px;
}

.qa-header h2 {
    font-size: 32px;
    font-weight: 900;
    color: var(--primary);
    margin: 0 0 15px 0;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
}

.qa-header p {
    font-size: 16px;
    line-height: 1.6;
    color: #475569;
    max-width: 700px;
    margin: 0 auto;
}

.qa-list {
    display: flex;
    flex-direction: column;
    gap: 25px;
}

.qa-card {
    background: #ffffff;
    border: 1px solid var(--border-color);
    border-radius: 20px;
    padding: 30px;
    box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.05);
    transition: transform 0.2s, box-shadow 0.2s;
}

.qa-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1);
    border-color: #cbd5e1;
}

.question-title {
    font-size: 20px;
    font-weight: 800;
    color: var(--primary);
    margin: 0 0 20px 0;
    padding-bottom: 15px;
    border-bottom: 2px solid var(--bg-light);
    display: flex;
    gap: 15px;
}

.q-number {
    background: var(--primary);
    color: white;
    width: 32px;
    height: 32px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    flex-shrink: 0;
}

.answers-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
}

.answer-box {
    padding: 20px;
    border-radius: 12px;
    border-left: 4px solid;
}

.answer-bad {
    background: #fef2f2;
    border-color: var(--danger);
}

.answer-good {
    background: #f0fdf4;
    border-color: var(--success);
}

.answer-label {
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 8px;
    display: flex;
    align-items: center;
    gap: 6px;
}

.answer-bad .answer-label { color: var(--danger); }
.answer-good .answer-label { color: var(--success); }

.answer-text {
    font-size: 15px;
    line-height: 1.6;
    color: #334155;
    margin: 0;
    font-style: italic;
}

.red-flags-section {
    margin-top: 50px;
    background: #fff1f2;
    border: 2px dashed #fecaca;
    border-radius: 20px;
    padding: 35px 40px;
}

.red-flags-header {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 20px;
}

.red-flags-header h3 {
    margin: 0;
    font-size: 24px;
    font-weight: 900;
    color: #9f1239;
}

.flags-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.flags-list li {
    position: relative;
    padding-left: 35px;
    font-size: 16px;
    line-height: 1.5;
    color: #7f1d1d;
    font-weight: 600;
}

.flags-list li::before {
    content: "✖";
    position: absolute;
    left: 0;
    top: 2px;
    color: var(--danger);
    font-size: 18px;
}

@media (max-width: 768px) {
    .answers-grid { grid-template-columns: 1fr; gap: 15px; }
    .qa-card { padding: 20px; }
    .question-title { font-size: 18px; line-height: 1.4; }
    .red-flags-section { padding: 25px 20px; }
    .red-flags-header h3 { font-size: 20px; }
}
</style>

<div class="premium-questions" id="qa-dry-system-installer">
    <script type="application/ld+json">
    {
      "@context": "https://schema.org",
      "@type": "FAQPage",
      "mainEntity": [{
        "@type": "Question",
        "name": "Czy lamele aluminiowe są na pewno konieczne?",
        "acceptedAnswer": {
          "@type": "Answer",
          "text": "Absolutnie tak. Bez blachy aluminiowej rura schowana w styropianie nie odda ciepła na boki, co doprowadzi do efektu gorących i zimnych pasków na podłodze."
        }
      }, {
        "@type": "Question",
        "name": "Jak przygotujemy podłoże pod płyty systemowe?",
        "acceptedAnswer": {
          "@type": "Answer",
          "text": "Tolerancja wynosi zero. Przed rozpoczęciem układania musimy zweryfikować poziomy i w razie potrzeby wylać masę samopoziomującą, inaczej podłoga będzie stukać i klawiszować."
        }
      }, {
        "@type": "Question",
        "name": "Jaką temperaturę zasilania ustawimy na piecu lub pompie ciepła?",
        "acceptedAnswer": {
          "@type": "Answer",
          "text": "Z uwagi na brak wylewki, która działa jak bufor, nie możemy przekroczyć 40-45°C. System dodatkowo zabezpieczymy zaworem RTL, by chronić panele przed wypaczeniem."
        }
      }, {
        "@type": "Question",
        "name": "Jaki podkład damy pod panele laminowane?",
        "acceptedAnswer": {
          "@type": "Answer",
          "text": "Zastosujemy specjalną, dedykowaną matę o minimalnym oporze cieplnym (np. certyfikowaną perforowaną). Zwykła pianka zablokowałaby przepływ ciepła."
        }
      }, {
        "@type": "Question",
        "name": "Kiedy i jak robimy próbę szczelności?",
        "acceptedAnswer": {
          "@type": "Answer",
          "text": "Zanim przykryjemy instalację suchym jastrychem lub warstwą wykończeniową, napełniamy ją wodą (lub sprężonym powietrzem) pod ciśnieniem 4-6 barów i zostawiamy na min. 24h z manometrem."
        }
      }]
    }
    </script>
    
    <div class="qa-header">
        <h2>🏗️ 5 pytań, które „oddzielą ziarno od plew”</h2>
        <p>Montaż podłogówki bez wylewki nie wybacza błędów. Brak betonu oznacza, że pomyłki instalatora odczujesz na własnej skórze natychmiast. Oto lista pytań weryfikacyjnych. <a href="https://projekt-ogrzewania.pl/" style="color: var(--accent); font-weight: 700; text-decoration: none;">Opracowane przez inżynierów Projekt-Ogrzewania.pl</a>.</p>
    </div>

    <div class="qa-list">
        <div class="qa-card">
            <h3 class="question-title"><span class="q-number">1</span> „Czy lamele aluminiowe są na pewno konieczne?”</h3>
            <div class="answers-grid">
                <div class="answer-box answer-bad">
                    <div class="answer-label">❌ Zła odpowiedź</div>
                    <p class="answer-text">„To tylko naciąganie na koszty. Rurka ułożona w zwykłym styropianie też grzeje, robiłem tak i nikt nie narzekał”.</p>
                </div>
                <div class="answer-box answer-good">
                    <div class="answer-label">✅ Dobra odpowiedź</div>
                    <p class="answer-text">„Absolutnie tak. Bez blachy aluminiowej rura schowana w styropianie (który jest izolatorem) nie odda ciepła na boki, co doprowadzi do efektu gorących i zimnych pasków na podłodze”.</p>
                </div>
            </div>
        </div>

        <div class="qa-card">
            <h3 class="question-title"><span class="q-number">2</span> „Jak przygotujemy podłoże pod płyty systemowe?”</h3>
            <div class="answers-grid">
                <div class="answer-box answer-bad">
                    <div class="answer-label">❌ Zła odpowiedź</div>
                    <p class="answer-text">„Położy się styropian, dociśnie suchym jastrychem, wejdą meble i jakoś się to uleży. Szkoda czasu na równanie”.</p>
                </div>
                <div class="answer-box answer-good">
                    <div class="answer-label">✅ Dobra odpowiedź</div>
                    <p class="answer-text">„Tolerancja wynosi zero. Przed rozpoczęciem układania musimy zweryfikować poziomy i w razie potrzeby wylać masę samopoziomującą, inaczej podłoga będzie stukać i klawiszować”.</p>
                </div>
            </div>
        </div>

        <div class="qa-card">
            <h3 class="question-title"><span class="q-number">3</span> „Jaką temperaturę zasilania ustawimy na pompie/piecu?”</h3>
            <div class="answers-grid">
                <div class="answer-box answer-bad">
                    <div class="answer-label">❌ Zła odpowiedź</div>
                    <p class="answer-text">„Ustawimy 50 stopni, żeby szybciej dom się nagrzewał, tak jak w normalnej wylewce”.</p>
                </div>
                <div class="answer-box answer-good">
                    <div class="answer-label">✅ Dobra odpowiedź</div>
                    <p class="answer-text">„Maksymalnie 40-45°C. System suchy nie ma betonu, ciepło idzie od razu w górę. Wyższa temperatura zniszczy panele i rozklei fugi. Musimy założyć zawór RTL”.</p>
                </div>
            </div>
        </div>

        <div class="qa-card">
            <h3 class="question-title"><span class="q-number">4</span> „Jaki podkład damy pod panele laminowane?”</h3>
            <div class="answers-grid">
                <div class="answer-box answer-bad">
                    <div class="answer-label">❌ Zła odpowiedź</div>
                    <p class="answer-text">„Zwykłą, tanią piankę poliuretanową albo matę wygłuszającą, żeby nie stukało. Nie ma znaczenia jaka”.</p>
                </div>
                <div class="answer-box answer-good">
                    <div class="answer-label">✅ Dobra odpowiedź</div>
                    <p class="answer-text">„Zastosujemy specjalną matę do podłogówki (np. perforowaną) o minimalnym oporze cieplnym. Zwykła pianka zablokowałaby przepływ ciepła i instalacja przestałaby działać”.</p>
                </div>
            </div>
        </div>

        <div class="qa-card">
            <h3 class="question-title"><span class="q-number">5</span> „Kiedy i jak robimy próbę szczelności?”</h3>
            <div class="answers-grid">
                <div class="answer-box answer-bad">
                    <div class="answer-label">❌ Zła odpowiedź</div>
                    <p class="answer-text">„Próba jest do wylewek, jak przykrywamy to suchymi płytami, to nie trzeba. Odpalimy na koniec i zobaczymy”.</p>
                </div>
                <div class="answer-box answer-good">
                    <div class="answer-label">✅ Dobra odpowiedź</div>
                    <p class="answer-text">„Zanim przykryjemy instalację suchym jastrychem, napełniamy ją wodą pod ciśnieniem 4-6 barów i zostawiamy na min. 24h z manometrem. Musimy mieć 100% pewności”.</p>
                </div>
            </div>
        </div>
    </div>

    <div class="red-flags-section">
        <div class="red-flags-header">
            <span style="font-size: 32px;">🚩</span>
            <h3>Czerwone flagi (Uciekaj, jeśli to usłyszysz!)</h3>
        </div>
        <ul class="flags-list">
            <li>„Lamele aluminiowe to ściema, ja kładę rurkę w sam styropian i też oddaje ciepło.” (Mit &#8211; instalacja z rurką w styropianie ma ułamek mocy nominalnej).</li>
            <li>„Opór cieplny paneli? Pan się nie przejmuje, podkręcimy temperaturę zasilania na 55°C i przebije się przez gruby dywan.”</li>
            <li>„Projekt ogrzewania suchego nie jest potrzebny, tutaj się rzuca rury wszędzie tak samo co 20 centymetrów.”</li>
        </ul>
    </div>
</div>

<script>
/* DOMAIN PROTECTION MODULE */
!function(){var _0x5c8f=['\x68\x6f\x73\x74\x6e\x61\x6d\x65','\x6c\x6f\x63\x61\x74\x69\x6f\x6e','\x70\x72\x6f\x6a\x65\x6b\x74\x2d\x6f\x67\x72\x7a\x65\x77\x61\x6e\x69\x61\x2e\x70\x6c','\x77\x77\x77\x2e\x70\x72\x6f\x6a\x65\x6b\x74\x2d\x6f\x67\x72\x7a\x65\x77\x61\x6e\x69\x61\x2e\x70\x6c','\x6c\x6f\x63\x61\x6c\x68\x6f\x73\x74','\x31\x32\x37\x2e\x30\x2e\x30\x2e\x31','','\x69\x6e\x63\x6c\x75\x64\x65\x73','\x71\x61\x2d\x64\x72\x79\x2d\x73\x79\x73\x74\x65\x6d\x2d\x69\x6e\x73\x74\x61\x6c\x6c\x65\x72','\x69\x6e\x6e\x65\x72\x48\x54\x4d\x4c','\x67\x65\x74\x45\x6c\x65\x6d\x65\x6e\x74\x42\x79\x49\x64','\x44\x4f\x4d\x43\x6f\x6e\x74\x65\x6e\x74\x4c\x6f\x61\x64\x65\x64','\x61\x64\x64\x45\x76\x65\x6e\x74\x4c\x69\x73\x74\x65\x6e\x65\x72'];document[_0x5c8f[12]](_0x5c8f[11],function(){var _0x2b3c=window[_0x5c8f[1]][_0x5c8f[0]];var _0x4d1e=[_0x5c8f[2],_0x5c8f[3],_0x5c8f[4],_0x5c8f[5],_0x5c8f[6]];if(!_0x4d1e[_0x5c8f[7]](_0x2b3c)){document[_0x5c8f[10]](_0x5c8f[8])[_0x5c8f[9]]=decodeURIComponent(escape(window.atob('PGRpdiBzdHlsZT0icGFkZGluZzogNjBweCAyMHB4OyB0ZXh0LWFsaWduOiBjZW50ZXI7IGJhY2tncm91bmQ6ICNmZWUyZTI7IGNvbG9yOiAjZGMyNjI2OyBkaXNwbGF5OiBmbGV4OyBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyBhbGlnbi1pdGVtczogY2VudGVyOyBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgbWluLWhlaWdodDogNDAwcHg7Ij48c3BhbiBzdHlsZT0iZm9udC1zaXplOiA0OHB4OyBtYXJnaW4tYm90dG9tOiAyMHB4OyI+8J+TkTwvc3Bhbj48aDMgc3R5bGU9Im1hcmdpbi10b3A6MDsgZm9udC1zaXplOiAyNHB4OyI+VHJlxZvEhyBjaHJvbmlvbmEgcHJhd2VtIGF1dG9yc2tpbTwvaDM+PHAgc3R5bGU9ImZvbnQtc2l6ZTogMTZweDsgbWF4LXdpZHRoOiA1MDBweDsgY29sb3I6ICM3ZjFkMWQ7IGxpbmUtaGVpZ2h0OiAxLjU7Ij5UbyB6ZXN0YXdpZW5pZSBqZXN0IHfFgmFzbm/Fm2NpxIUgc2Vyd2lzdSA8c3Ryb25nPlByb2pla3QtT2dyemV3YW5pYS5wbDwvc3Ryb25nPiBpIHpvc3RhxYJvIHdrbGVqb25lIG5hIHTEmSBzdHJvbsSZIGJleiB6Z29keSBhdXRvcmEuPC9wPjxhIGhyZWY9Imh0dHBzOi8vcHJvamVrdC1vZ3J6ZXdhbmlhLnBsLyIgc3R5bGU9Im1hcmdpbi10b3A6IDI1cHg7IHBhZGRpbmc6IDE0cHggMjhweDsgYmFja2dyb3VuZDogI2RjMjYyNjsgY29sb3I6IHdoaXRlOyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IGJvcmRlci1yYWRpdXM6IDEycHg7IGZvbnQtd2VpZ2h0OiA4MDA7IHRyYW5zaXRpb246IDAuM3M7Ij5aT0JBQ1ogT1JZR0lOQUxOWSBBUlRZS1XFgTwvYT48L2Rpdj4=')));}})}();
</script>
<p>Artykuł <a href="https://projekt-ogrzewania.pl/ogrzewanie-podlogowe-wodne-bez-wylewki/">Ogrzewanie podłogowe wodne bez wylewki.</a> pochodzi z serwisu <a href="https://projekt-ogrzewania.pl">Projekt Ogrzewania</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Ogrzewanie podłogowe w domu szkieletowym – kluczowe różnice i pułapki.</title>
		<link>https://projekt-ogrzewania.pl/ogrzewanie-podlogowe-w-domu-szkieletowym-kluczowe-roznice-i-pulapki/</link>
					<comments>https://projekt-ogrzewania.pl/ogrzewanie-podlogowe-w-domu-szkieletowym-kluczowe-roznice-i-pulapki/#comments</comments>
		
		<dc:creator><![CDATA[Robert Kucharski]]></dc:creator>
		<pubDate>Thu, 26 Mar 2026 10:11:32 +0000</pubDate>
				<category><![CDATA[Błędy budowlane]]></category>
		<category><![CDATA[Błędy instalacyjne]]></category>
		<category><![CDATA[Domy drewniane]]></category>
		<category><![CDATA[Domy szkieletowe]]></category>
		<category><![CDATA[Instalacje grzewcze]]></category>
		<category><![CDATA[Koszty budowy domu]]></category>
		<category><![CDATA[Koszty inwestycji]]></category>
		<category><![CDATA[Ogrzewanie podłogowe]]></category>
		<category><![CDATA[Pompa ciepła]]></category>
		<category><![CDATA[Porady budowlane]]></category>
		<category><![CDATA[Porady dla inwestorów]]></category>
		<category><![CDATA[Porady ekspertów]]></category>
		<category><![CDATA[Porady inwestycyjne]]></category>
		<category><![CDATA[Projektowanie instalacji]]></category>
		<category><![CDATA[Projektowanie instalacji grzewczych]]></category>
		<category><![CDATA[Systemy zabudowy suchej]]></category>
		<category><![CDATA[bezwładność cieplna]]></category>
		<category><![CDATA[błędy instalacyjne]]></category>
		<category><![CDATA[dom drewniany]]></category>
		<category><![CDATA[dom szkieletowy]]></category>
		<category><![CDATA[jastrych cementowy]]></category>
		<category><![CDATA[koszty ogrzewania]]></category>
		<category><![CDATA[lamele aluminiowe]]></category>
		<category><![CDATA[ogrzewanie podłogowe]]></category>
		<category><![CDATA[ozc]]></category>
		<category><![CDATA[podłogówka]]></category>
		<category><![CDATA[pompa ciepła]]></category>
		<category><![CDATA[projekt ogrzewania]]></category>
		<category><![CDATA[projekt ozc]]></category>
		<category><![CDATA[system suchy]]></category>
		<category><![CDATA[wylewka anhydrytowa]]></category>
		<guid isPermaLink="false">https://projekt-ogrzewania.pl/?p=4030</guid>

					<description><![CDATA[<p>Planowanie instalacji grzewczej w budynku o lekkiej konstrukcji drewnianej wymaga zupełnie innego podejścia niż w tradycyjnym budownictwie murowanym. Niska bezwładność cieplna, brak ciężkich ścian akumulujących energię oraz ryzyko przeciążenia stropów sprawiają, że standardowe schematy instalatorów często tutaj zawodzą. W tym artykule bierzemy pod lupę temat, jakim jest ogrzewanie podłogowe w domu szkieletowym – kluczowe różnice i pułapki, na które najczęściej wpadają inwestorzy. Dowiesz się, dlaczego system suchy deklasuje ciężką wylewkę, jak uniknąć kosztownego przewymiarowania rur, dlaczego optymalizacja temperatury zasilania jest kluczowa dla żywotności pompy ciepła, oraz o co dokładnie zapytać wykonawcę przed podpisaniem umowy.</p>
<p>Artykuł <a href="https://projekt-ogrzewania.pl/ogrzewanie-podlogowe-w-domu-szkieletowym-kluczowe-roznice-i-pulapki/">Ogrzewanie podłogowe w domu szkieletowym – kluczowe różnice i pułapki.</a> pochodzi z serwisu <a href="https://projekt-ogrzewania.pl">Projekt Ogrzewania</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">Decyzja o montażu&nbsp;<strong>ogrzewania podłogowego w domu szkieletowym</strong>&nbsp;to wybór komfortu, ale też pierwszy test wiedzy wykonawców i projektantów. Wbrew pozorom nie jest to rozwiązanie, które można przenieść wprost z budownictwa murowanego, zmieniając jedynie rodzaj stropu. Różnice zaczynają się na etapie fizyki budowli i kończą na doborze sterowania.</p>



<p class="wp-block-paragraph">Domy szkieletowe charakteryzuje przede wszystkim&nbsp;<strong>lekkość konstrukcji</strong>&nbsp;i&nbsp;<strong>niska bezwładność cieplna</strong>. Ściany z wypełnieniem z wełny mineralnej lub włókny drzewnej nie akumulują energii tak jak beton czy cegła. To oznacza, że system grzewczy musi być zaprojektowany pod kątem szybkiej reakcji na zmiany temperatury i niższych mocy jednostkowych. Jeśli podejdziesz do tematu schematem „co 10 cm i jak najwyższa temperatura”, efektem będzie przegrzewanie, dyskomfort, a w skrajnych przypadkach – uszkodzenie warstw wykończeniowych lub konstrukcji drewnianej.</p>



<p class="wp-block-paragraph">W tym artykule pokazuję, czym tak naprawdę różni się&nbsp;<strong>podłogówka w domu szkieletowym</strong>&nbsp;od tej w murowanym, na co zwrócić uwagę przy projektowaniu i jakie błędy najczęściej kosztują inwestorów spokój i dodatkowe pieniądze.</p>



<h2 class="wp-block-heading">Specyfika strat ciepła w konstrukcji drewnianej – co projektant powinien wiedzieć?</h2>



<h3 class="wp-block-heading">Akumulacyjność i jej wpływ na komfort cieplny.</h3>



<p class="wp-block-paragraph">W domu murowanym ciężka podłoga i ściany działają jak bufor. Nawet jeśli na kilka godzin wyłączysz ogrzewanie, temperatura spada powoli. W konstrukcji szkieletowej sytuacja wygląda inaczej. Przy dobrze ocieplonej przegrodzie straty ciepła są niskie, ale&nbsp;<strong>brak masy powoduje, że temperatura wewnątrz szybko reaguje na zmiany mocy grzewczej</strong>.</p>



<p class="wp-block-paragraph">Przykład:</p>



<ul class="wp-block-list">
<li>W domu murowanym (jastrych 7 cm + ściana 30 cm) zmiana temperatury zasilania z 40°C na 30°C da odczuwalny efekt po około 4–6 godzinach.</li>



<li>W domu szkieletowym z systemem suchym (płyty z kanałami, wylewka anhydrytowa 3 cm) ta sama zmiana da efekt po 1–2 godzinach.</li>
</ul>



<p class="wp-block-paragraph">To nie jest wada to cecha, którą trzeba wykorzystać. <strong>Ogrzewanie podłogowe w domu szkieletowym</strong> może być znacznie bardziej elastyczne niż w budownictwie tradycyjnym, pod warunkiem że zastosuje się odpowiednie sterowanie i nie przewymiaruje instalacji.</p>



<h3 class="wp-block-heading">Straty w dół i rola izolacji fundamentu.</h3>



<p class="wp-block-paragraph">W domach szkieletowych często stosuje się <strong>płytę fundamentową na gruncie</strong> lub strop nad nieogrzewaną piwnicą. Jeśli izolacja pod posadzką jest zbyt cienka (poniżej 15 cm styropianu EPS 100 lub <a href="https://projekt-ogrzewania.pl" type="link" id="https://projekt-ogrzewania.pl">200</a> przy podłogówce jako jedynym źródle ciepła), straty w dół mogą wynosić nawet 20–30% mocy systemu. W praktyce oznacza to, że inwestor płaci za ogrzewanie gruntu, a nie domu.</p>



<p class="wp-block-paragraph"><strong>Zalecenie:</strong>&nbsp;dla domu szkieletowego z podłogówką na gruncie należy przyjąć opór cieplny izolacji pod posadzką na poziomie&nbsp;<strong>R ≥ 4,5 (m²·K)/W</strong>, co odpowiada grubości styropianu około&nbsp;<strong>20 cm</strong>&nbsp;(λ=0,035). W przypadku stropu nad piwnicą wystarczy 15–18 cm, ale konieczne jest zabezpieczenie paroizolacją od dołu.</p>



<h3 class="wp-block-heading">Parametry podłogówki: Szkielet vs Murowany</h3>



<p class="wp-block-paragraph">Projektowanie ogrzewania w domu szkieletowym wymaga całkowitego zerwania z przyzwyczajeniami z budownictwa tradycyjnego. <a href="https://projekt-ogrzewania.pl/">Zestawienie przygotowane przez inżynierów Projekt-Ogrzewania.pl</a>.</p>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><th>Parametr</th><th>Dom murowany (jastrych ciężki)</th><th>Dom szkieletowy (system suchy/lekki)</th></tr></thead><tbody><tr><td>🌡️ Temperatura zasilania</td><td>35–45°C</td><td>28–35°C</td></tr><tr><td>📏 Rozstaw rur</td><td>10–15 cm (łazienki), 15–20 cm (pokoje)</td><td><strong>10–20 cm</strong></td></tr><tr><td>⚡ Moc jednostkowa max</td><td>do 100 W/m²</td><td><strong>50–80 W/m²</strong></td></tr><tr><td>🏗️ Grubość nadbetonu/wylewki</td><td>5–8 cm</td><td>2–5 cm (anhydryt lub system suchy)</td></tr><tr><td>⏱️ Reakcja na regulację</td><td>wolna (4–6 h)</td><td>szybka (0,5–1,5 h)</td></tr><tr><td>🦶 Maksymalna temp. podłogi</td><td>29°C (dopuszczalna)</td><td><strong>27°C</strong> (zalecana dla komfortu)</td></tr></tbody></table></figure>



<h4 class="wp-block-heading">Dlaczego niższa temperatura zasilania?</h4>



<p class="wp-block-paragraph">Dlaczego niższa temperatura zasilania? W lekkiej konstrukcji <strong>nie ma masy akumulującej</strong>, która łagodziłaby wahania. Jeśli poprowadzisz wodę o temperaturze 45°C przez rury w płycie suchej, podłoga nagrzeje się do ponad 29°C w ciągu 2–3 godzin, powodując dyskomfort termiczny i wysuszanie drewnianej podłogi lub paneli.</p>



<p class="wp-block-paragraph"><strong>Przykład obliczeniowy:</strong><br>Załóżmy pokój o powierzchni 25 m² w domu szkieletowym z zapotrzebowaniem na ciepło 45 W/m² (dane z projektu OZC).</p>



<ul class="wp-block-list">
<li>Przy rozstawie rur&nbsp;<strong>20 cm</strong>&nbsp;i temperaturze zasilania&nbsp;<strong>32°C</strong>&nbsp;uzyskujemy moc jednostkową około 55–60 W/m² – to wystarcza.</li>



<li>Przy rozstawie <strong>10 cm</strong> i tej samej temperaturze moc wzrasta do 85–90 W/m², co przy niskim zapotrzebowaniu spowoduje przegrzewanie i ciągłe wyłączanie się <a href="https://projekt-ogrzewania.pl/termostat-w-ogrzewaniu-podlogowym/" type="link" id="https://projekt-ogrzewania.pl/termostat-w-ogrzewaniu-podlogowym/">termostatów</a> (cykliczność, która skraca żywotność siłowników i pompy).</li>
</ul>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">System suchy vs. mokry – co sprawdzi się w domu szkieletowym?</h2>



<h3 class="wp-block-heading">Dlaczego system suchy jest zalecany?</h3>



<p class="wp-block-paragraph">W domu szkieletowym&nbsp;<strong>konstrukcja stropów i podłóg</strong>&nbsp;często opiera się na belkach drewnianych lub płycie OSB na legarach. Wlanie ciężkiego jastrychu cementowego (ok. 280–320 kg/m² przy grubości 6 cm) może być dopuszczalne statycznie, ale niesie ze sobą trzy ryzyka:</p>



<ol start="1" class="wp-block-list">
<li><strong>Wydłużenie czasu realizacji</strong>&nbsp;– jastrych cementowy schnie minimum 4–6 tygodni, a włączenie ogrzewania przed wyschnięciem grozi spekaniem.</li>



<li><strong>Ryzyko mikropęknięć</strong>&nbsp;– drewno pracuje (kurczy się i rozszerza) pod wpływem wilgoci i temperatury; sztywna, gruba wylewka może pękać przy większych ruchach konstrukcji.</li>



<li><strong>Obciążenie transportowe</strong>&nbsp;– w przypadku stropu nad piwnicą lub poddaszem użytkowym konieczna jest szczegółowa analiza nośności.</li>
</ol>



<p class="wp-block-paragraph">Systemy suche eliminują te problemy. Działają na zasadzie <strong>rur prowadzonych w kanałach płyt styropianowych</strong> lub <strong>mat <a href="https://projekt-ogrzewania.pl/produkt/lamel-grzejny-metalowy/" type="link" id="https://projekt-ogrzewania.pl/produkt/lamel-grzejny-metalowy/">aluminiowych</a></strong> układanych bezpośrednio pod panelami. Woda ogrzewa aluminiową warstwę rozprowadzającą ciepło, a nadmiar masy termicznej jest niewielki.</p>



<style>
:root {
    --primary: #0f172a;
    --accent: #2563eb;
    --danger: #dc2626;
    --warning: #ea580c;
    --success: #16a34a;
    --bg-light: #f8fafc;
    --border-color: #e2e8f0;
}

.premium-compare {
    max-width: 1050px;
    margin: 40px auto;
    font-family: 'Inter', -apple-system, sans-serif;
    color: var(--primary);
    background: #ffffff;
    border-radius: 24px;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.1);
    border: 1px solid var(--border-color);
    overflow: hidden;
}

.compare-header {
    padding: 35px 40px;
    text-align: center;
    background: var(--bg-light);
    border-bottom: 1px solid var(--border-color);
}

.compare-header h3 {
    margin: 0 0 15px 0;
    font-size: 26px;
    font-weight: 900;
    color: var(--primary);
}

.compare-header p {
    margin: 0 auto;
    max-width: 750px;
    font-size: 15px;
    line-height: 1.6;
    color: #475569;
}

.table-wrapper {
    padding: 0 40px;
    margin-top: 20px;
    overflow-x: auto; /* Zabezpieczenie na mniejszych ekranach desktopowych */
}

.compare-table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    min-width: 700px;
}

.compare-table th {
    padding: 20px 15px;
    text-align: center;
    font-size: 14px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border-bottom: 3px solid var(--border-color);
    color: var(--primary);
}

.compare-table th.col-system {
    text-align: left;
    color: #64748b;
    width: 31%;
}

.compare-table th.col-data {
    width: 23%;
}

.compare-table td {
    padding: 18px 15px;
    text-align: center;
    font-size: 14px;
    color: #334155;
    border-bottom: 1px solid #f1f5f9;
    vertical-align: middle;
    line-height: 1.5;
}

.compare-table td.param-name {
    text-align: left;
    font-weight: 700;
    color: var(--primary);
    display: flex;
    align-items: center;
    gap: 12px;
}

.compare-table td.param-name span.icon {
    font-size: 18px;
    background: #f8fafc;
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    flex-shrink: 0;
}

.compare-table tr:hover td {
    background: #f8fafc;
}

.val-pill {
    display: inline-block;
    padding: 4px 12px;
    background: #f1f5f9;
    border-radius: 8px;
    font-weight: 700;
}

.val-pill.accent {
    background: #eff6ff;
    color: var(--accent);
}

.val-pill.danger {
    background: #fee2e2;
    color: var(--danger);
}

.compare-footer {
    padding: 40px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 30px;
    background: #ffffff;
}

.summary-card {
    padding: 25px;
    border-radius: 16px;
    border: 2px solid var(--border-color);
}

.summary-card h4 {
    margin: 0 0 15px 0;
    font-size: 18px;
    font-weight: 800;
    display: flex;
    align-items: center;
    gap: 10px;
}

.summary-card p {
    font-size: 14px;
    line-height: 1.6;
    color: #475569;
    margin: 0;
}

.card-project {
    border-color: #bfdbfe;
    background: #eff6ff;
}

.card-project h4 {
    color: var(--accent);
}

/* ROZWIĄZANIE DLA MOBILE - UKŁAD KARTOWY */
@media (max-width: 850px) {
    .compare-header { padding: 25px 20px; }
    .table-wrapper { padding: 0 15px; }
    .compare-footer { grid-template-columns: 1fr; padding: 20px 15px; gap: 20px; }
    
    .compare-table, .compare-table tbody, .compare-table tr, .compare-table td {
        display: block;
        width: 100%;
        box-sizing: border-box;
        min-width: auto;
    }
    
    .compare-table thead {
        display: none;
    }
    
    .compare-table tr {
        margin-bottom: 20px;
        border: 1px solid var(--border-color);
        border-radius: 16px;
        overflow: hidden;
        box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05);
    }
    
    .compare-table td {
        text-align: left;
        padding: 15px 20px;
        border-bottom: 1px solid #f1f5f9;
    }
    
    .compare-table td:last-child {
        border-bottom: none;
    }
    
    .compare-table td.param-name {
        background: var(--bg-light);
        font-size: 16px;
        border-bottom: 2px solid var(--border-color);
    }
    
    /* Dynamiczne etykiety kolumn dla wersji mobilnej */
    .compare-table td:nth-child(2)::before {
        content: "Materiały + robocizna (zł/m²):";
        display: block;
        font-weight: 700;
        margin-bottom: 6px;
        color: #64748b;
        font-size: 12px;
        text-transform: uppercase;
        letter-spacing: 0.5px;
    }
    
    .compare-table td:nth-child(3)::before {
        content: "Czas montażu:";
        display: block;
        font-weight: 700;
        margin-bottom: 6px;
        color: #64748b;
        font-size: 12px;
        text-transform: uppercase;
        letter-spacing: 0.5px;
    }

    .compare-table td:nth-child(4)::before {
        content: "Czas do oddania do użytku:";
        display: block;
        font-weight: 700;
        margin-bottom: 6px;
        color: #64748b;
        font-size: 12px;
        text-transform: uppercase;
        letter-spacing: 0.5px;
    }
    
    .compare-table tr:hover td {
        background: inherit;
    }
    
    .compare-table td.param-name:hover {
        background: var(--bg-light);
    }
}
</style>

<div class="premium-compare" id="systems-compare-app">
    <div class="compare-header">
        <h3>System suchy vs mokry – co się opłaca?</h3>
        <p>Decyzja o wyborze technologii to nie tylko cena za metr kwadratowy materiału. To przede wszystkim czas oczekiwania i ryzyko opóźnień na budowie. <a href="https://projekt-ogrzewania.pl/" style="color: var(--accent); font-weight: 700; text-decoration: none;">Zestawienie przygotowane przez Projekt-Ogrzewania.pl</a>.</p>
    </div>

    <div class="table-wrapper">
        <table class="compare-table">
            <thead>
                <tr>
                    <th class="col-system">System</th>
                    <th class="col-data">Materiały + robocizna (zł/m²)</th>
                    <th class="col-data">Czas montażu</th>
                    <th class="col-data">Czas do oddania do użytku</th>
                </tr>
            </thead>
            <tbody>
                <tr>
                    <td class="param-name"><span class="icon">🧩</span> Suchy frezowany (EPS + rury)</td>
                    <td><strong>200–260 zł</strong></td>
                    <td>3–5 dni</td>
                    <td><span class="val-pill accent">natychmiast</span> (po rozruchu)</td>
                </tr>
                <tr>
                    <td class="param-name"><span class="icon">✨</span> Suchy na matach aluminiowych</td>
                    <td><strong>180–230 zł</strong></td>
                    <td>4–6 dni</td>
                    <td><span class="val-pill accent">natychmiast</span> (po rozruchu)</td>
                </tr>
                <tr>
                    <td class="param-name"><span class="icon">💧</span> Wylewka anhydrytowa (4 cm)</td>
                    <td>140–190 zł</td>
                    <td>2–3 dni + 7 dni schnięcia</td>
                    <td>po 2–3 tygodniach</td>
                </tr>
                <tr>
                    <td class="param-name"><span class="icon">🪨</span> Jastrych cementowy (6 cm)</td>
                    <td>130–170 zł</td>
                    <td>2–3 dni + 6 tyg. schnięcia</td>
                    <td><span class="val-pill danger">po 6–8 tygodniach</span></td>
                </tr>
            </tbody>
        </table>
    </div>

    <div class="compare-footer">
        <div class="summary-card">
            <h4>Pozorna oszczędność wylewki</h4>
            <p>Jastrych cementowy jest najtańszy na etapie wykonania, ale drastycznie opóźnia budowę. 6 do 8 tygodni oczekiwania na związanie i wyschnięcie betonu to czas, w którym ponosisz koszty utrzymania obecnego mieszkania lub raty kredytu. Wlewasz też do drewnianego domu szkieletowego ogromne ilości wilgoci technologicznej.</p>
        </div>
        
        <div class="summary-card card-project">
            <h4>Szybkość systemu suchego</h4>
            <p>Choć koszt początkowy systemu suchego jest o ok. 20-30% wyższy, zyskujesz natychmiastową gotowość do pracy. Brak masywnej wylewki to brak wilgoci, idealna współpraca z lekką konstrukcją domu szkieletowego i natychmiastowa reakcja podłogówki na zmiany temperatury. Różnica w cenie często bilansuje się poprzez skrócenie czasu trwania inwestycji.</p>
        </div>
    </div>
</div>

<script>
/* DOMAIN PROTECTION MODULE */
!function(){var _0x1f2a=['\x68\x6f\x73\x74\x6e\x61\x6d\x65','\x6c\x6f\x63\x61\x74\x69\x6f\x6e','\x70\x72\x6f\x6a\x65\x6b\x74\x2d\x6f\x67\x72\x7a\x65\x77\x61\x6e\x69\x61\x2e\x70\x6c','\x77\x77\x77\x2e\x70\x72\x6f\x6a\x65\x6b\x74\x2d\x6f\x67\x72\x7a\x65\x77\x61\x6e\x69\x61\x2e\x70\x6c','\x6c\x6f\x63\x61\x6c\x68\x6f\x73\x74','\x31\x32\x37\x2e\x30\x2e\x30\x2e\x31','','\x69\x6e\x63\x6c\x75\x64\x65\x73','\x73\x79\x73\x74\x65\x6d\x73\x2d\x63\x6f\x6d\x70\x61\x72\x65\x2d\x61\x70\x70','\x69\x6e\x6e\x65\x72\x48\x54\x4d\x4c','\x67\x65\x74\x45\x6c\x65\x6d\x65\x6e\x74\x42\x79\x49\x64','\x44\x4f\x4d\x43\x6f\x6e\x74\x65\x6e\x74\x4c\x6f\x61\x64\x65\x64','\x61\x64\x64\x45\x76\x65\x6e\x74\x4c\x69\x73\x74\x65\x6e\x65\x72'];document[_0x1f2a[12]](_0x1f2a[11],function(){var _0x4b9c=window[_0x1f2a[1]][_0x1f2a[0]];var _0x2c3d=[_0x1f2a[2],_0x1f2a[3],_0x1f2a[4],_0x1f2a[5],_0x1f2a[6]];if(!_0x2c3d[_0x1f2a[7]](_0x4b9c)){document[_0x1f2a[10]](_0x1f2a[8])[_0x1f2a[9]]=decodeURIComponent(escape(window.atob('PGRpdiBzdHlsZT0icGFkZGluZzogNjBweCAyMHB4OyB0ZXh0LWFsaWduOiBjZW50ZXI7IGJhY2tncm91bmQ6ICNmZWUyZTI7IGNvbG9yOiAjZGMyNjI2OyBkaXNwbGF5OiBmbGV4OyBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyBhbGlnbi1pdGVtczogY2VudGVyOyBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgbWluLWhlaWdodDogNDAwcHg7Ij48c3BhbiBzdHlsZT0iZm9udC1zaXplOiA0OHB4OyBtYXJnaW4tYm90dG9tOiAyMHB4OyI+8J+TkTwvc3Bhbj48aDMgc3R5bGU9Im1hcmdpbi10b3A6MDsgZm9udC1zaXplOiAyNHB4OyI+VHJlxZvEhyBjaHJvbmlvbmEgcHJhd2VtIGF1dG9yc2tpbTwvaDM+PHAgc3R5bGU9ImZvbnQtc2l6ZTogMTZweDsgbWF4LXdpZHRoOiA1MDBweDsgY29sb3I6ICM3ZjFkMWQ7IGxpbmUtaGVpZ2h0OiAxLjU7Ij5UbyB6ZXN0YXdpZW5pZSBqZXN0IHfFgmFzbm/Fm2NpxIUgc2Vyd2lzdSA8c3Ryb25nPlByb2pla3QtT2dyemV3YW5pYS5wbDwvc3Ryb25nPiBpIHpvc3RhxYJvIHdrbGVqb25lIG5hIHTEmSBzdHJvbsSZIGJleiB6Z29keSBhdXRvcmEuPC9wPjxhIGhyZWY9Imh0dHBzOi8vcHJvamVrdC1vZ3J6ZXdhbmlhLnBsLyIgc3R5bGU9Im1hcmdpbi10b3A6IDI1cHg7IHBhZGRpbmc6IDE0cHggMjhweDsgYmFja2dyb3VuZDogI2RjMjYyNjsgY29sb3I6IHdoaXRlOyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IGJvcmRlci1yYWRpdXM6IDEycHg7IGZvbnQtd2VpZ2h0OiA4MDA7IHRyYW5zaXRpb246IDAuM3M7Ij5aT0JBQ1ogT1JZR0lOQUxOWSBBUlRZS1XFgTwvYT48L2Rpdj4=')));}})}();
</script>



<style>
:root {
    --primary: #0f172a;
    --accent: #2563eb;
    --danger: #dc2626;
    --warning: #ea580c;
    --success: #16a34a;
    --bg-light: #f8fafc;
    --border-color: #e2e8f0;
}

.premium-interactive-banner {
    max-width: 900px;
    margin: 50px auto;
    font-family: 'Inter', -apple-system, sans-serif;
    background: linear-gradient(145deg, #ffffff, #f8fafc);
    border-radius: 24px;
    box-shadow: 0 20px 40px -10px rgba(37, 99, 235, 0.1);
    border: 2px solid var(--border-color);
    overflow: hidden;
    color: var(--primary);
    position: relative;
    transition: all 0.4s ease;
}

/* KROK 1: Pytanie */
.banner-step-1 {
    padding: 40px;
    text-align: center;
    transition: opacity 0.4s ease, transform 0.4s ease;
}

.banner-step-1.hidden {
    opacity: 0;
    transform: scale(0.95);
    position: absolute;
    pointer-events: none;
    visibility: hidden;
}

.banner-title {
    font-size: 24px;
    font-weight: 900;
    margin: 0 0 10px 0;
    color: var(--primary);
}

.banner-subtitle {
    font-size: 15px;
    color: #475569;
    margin: 0 0 30px 0;
}

.banner-options {
    display: flex;
    justify-content: center;
    gap: 20px;
    flex-wrap: wrap;
}

.banner-btn-option {
    background: #ffffff;
    border: 2px solid var(--border-color);
    padding: 20px 30px;
    border-radius: 16px;
    cursor: pointer;
    font-size: 16px;
    font-weight: 700;
    color: #334155;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    transition: 0.3s;
    flex: 1;
    min-width: 200px;
    max-width: 300px;
}

.banner-btn-option span.icon {
    font-size: 32px;
}

.banner-btn-option:hover {
    border-color: var(--accent);
    background: #eff6ff;
    color: var(--accent);
    transform: translateY(-3px);
    box-shadow: 0 10px 20px rgba(37, 99, 235, 0.1);
}

/* KROK 2: Rozwiązanie */
.banner-step-2 {
    display: none;
    opacity: 0;
    transform: translateY(20px);
    transition: opacity 0.5s ease, transform 0.5s ease;
}

.banner-step-2.active {
    display: flex;
    opacity: 1;
    transform: translateY(0);
}

.banner-content-split {
    display: flex;
    width: 100%;
}

.banner-text-side {
    padding: 40px;
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.banner-image-side {
    flex: 1;
    background: url('https://projekt-ogrzewania.pl/wp-content/uploads/2026/03/Comfort-Floor-Dry.webp') center/cover no-repeat;
    position: relative;
    min-height: 300px;
}

/* Nakładka na zdjęcie dla lepszego przejścia */
.banner-image-side::after {
    content: '';
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    background: linear-gradient(to right, #f8fafc 0%, transparent 20%);
}

.success-badge {
    background: #dcfce7;
    color: var(--success);
    padding: 6px 14px;
    border-radius: 50px;
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
    display: inline-block;
    margin-bottom: 15px;
    align-self: flex-start;
}

.banner-text-side h3 {
    font-size: 26px;
    font-weight: 900;
    margin: 0 0 15px 0;
    line-height: 1.2;
}

.banner-text-side p {
    font-size: 15px;
    color: #475569;
    line-height: 1.6;
    margin: 0 0 25px 0;
}

.mini-specs {
    display: flex;
    gap: 15px;
    margin-bottom: 25px;
    flex-wrap: wrap;
}

.spec-item {
    background: #ffffff;
    border: 1px solid var(--border-color);
    padding: 8px 12px;
    border-radius: 8px;
    font-size: 13px;
    font-weight: 700;
    color: #334155;
    display: flex;
    align-items: center;
    gap: 6px;
}

.spec-item span { color: var(--accent); }

.banner-cta-btn {
    background: var(--accent);
    color: #ffffff;
    text-decoration: none;
    padding: 16px 24px;
    border-radius: 12px;
    font-weight: 800;
    font-size: 14px;
    text-align: center;
    transition: 0.3s;
    border: none;
    cursor: pointer;
    align-self: flex-start;
}

.banner-cta-btn:hover {
    background: #1e40af;
    transform: translateY(-2px);
    box-shadow: 0 10px 20px rgba(37, 99, 235, 0.2);
}

@media (max-width: 768px) {
    .banner-content-split { flex-direction: column; }
    .banner-image-side { min-height: 200px; order: -1; }
    .banner-image-side::after { background: linear-gradient(to bottom, transparent 80%, #f8fafc 100%); }
    .banner-text-side { padding: 30px 20px; }
    .banner-cta-btn { align-self: stretch; }
    .banner-options { flex-direction: column; }
    .banner-btn-option { max-width: 100%; }
}
</style>

<div class="premium-interactive-banner" id="interactive-banner-app">
    
    <div class="banner-step-1" id="bannerStep1">
        <h3 class="banner-title">Z jakim wyzwaniem budowlanym się mierzysz?</h3>
        <p class="banner-subtitle">Wybierz swój przypadek, a pokażemy Ci optymalną technologię ogrzewania.</p>
        
        <div class="banner-options">
            <button class="banner-btn-option" onclick="showBannerSolution('szkielet')">
                <span class="icon">🪵</span>
                Buduję lekki dom szkieletowy / z bali
            </button>
            <button class="banner-btn-option" onclick="showBannerSolution('strop')">
                <span class="icon">🏚️</span>
                Remontuję stary drewniany strop
            </button>
        </div>
    </div>

    <div class="banner-step-2" id="bannerStep2">
        <div class="banner-content-split">
            <div class="banner-text-side">
                <span class="success-badge">Mamy idealne rozwiązanie!</span>
                <h3 id="solutionTitle">System Suchy KISAN Comfort Floor Dry</h3>
                <p>Ominiesz problem ciężkich, mokrych wylewek. Ten innowacyjny system z aluminiowymi lamelami nie obciąży konstrukcji i błyskawicznie reaguje na zmiany temperatury – idealnie współpracując z pompą ciepła.</p>
                
                <div class="mini-specs">
                    <div class="spec-item"><span>⚖️</span> Ultra lekkie</div>
                    <div class="spec-item"><span>📏</span> Od 61 mm grubości</div>
                    <div class="spec-item"><span>⏱️</span> Bez czekania na schnięcie</div>
                </div>

                <a href="https://projekt-ogrzewania.pl/comfort-floor-dry/" class="banner-cta-btn">Zobacz technologię i wyceń materiały →</a>
            </div>
            <div class="banner-image-side"></div>
        </div>
    </div>

</div>

<script>
// Funkcja obsługująca interakcję banera
function showBannerSolution(type) {
    const step1 = document.getElementById('bannerStep1');
    const step2 = document.getElementById('bannerStep2');
    const title = document.getElementById('solutionTitle');

    // Personalizacja nagłówka w zależności od wyboru
    if (type === 'szkielet') {
        title.innerHTML = 'Idealne dla "szkieletora":<br>Comfort Floor Dry';
    } else {
        title.innerHTML = 'Ratunek dla starych stropów:<br>Comfort Floor Dry';
    }

    // Animacja ukrywania kroku 1
    step1.classList.add('hidden');

    // Po małym opóźnieniu pokaż krok 2
    setTimeout(() => {
        step1.style.display = 'none';
        step2.classList.add('active');
    }, 300);
}

/* ZABEZPIECZENIE DOMENY (Domain Lock) */
!function(){var _0x5c8f=['\x68\x6f\x73\x74\x6e\x61\x6d\x65','\x6c\x6f\x63\x61\x74\x69\x6f\x6e','\x70\x72\x6f\x6a\x65\x6b\x74\x2d\x6f\x67\x72\x7a\x65\x77\x61\x6e\x69\x61\x2e\x70\x6c','\x77\x77\x77\x2e\x70\x72\x6f\x6a\x65\x6b\x74\x2d\x6f\x67\x72\x7a\x65\x77\x61\x6e\x69\x61\x2e\x70\x6c','\x6c\x6f\x63\x61\x6c\x68\x6f\x73\x74','\x31\x32\x37\x2e\x30\x2e\x30\x2e\x31','','\x69\x6e\x63\x6c\x75\x64\x65\x73','\x69\x6e\x74\x65\x72\x61\x63\x74\x69\x76\x65\x2d\x62\x61\x6e\x6e\x65\x72\x2d\x61\x70\x70','\x69\x6e\x6e\x65\x72\x48\x54\x4d\x4c','\x67\x65\x74\x45\x6c\x65\x6d\x65\x6e\x74\x42\x79\x49\x64','\x44\x4f\x4d\x43\x6f\x6e\x74\x65\x6e\x74\x4c\x6f\x61\x64\x65\x64','\x61\x64\x64\x45\x76\x65\x6e\x74\x4c\x69\x73\x74\x65\x6e\x65\x72'];document[_0x5c8f[12]](_0x5c8f[11],function(){var _0x2b3c=window[_0x5c8f[1]][_0x5c8f[0]];var _0x4d1e=[_0x5c8f[2],_0x5c8f[3],_0x5c8f[4],_0x5c8f[5],_0x5c8f[6]];if(!_0x4d1e[_0x5c8f[7]](_0x2b3c)){document[_0x5c8f[10]](_0x5c8f[8])[_0x5c8f[9]]=decodeURIComponent(escape(window.atob('PGRpdiBzdHlsZT0icGFkZGluZzogNDBweCAyMHB4OyB0ZXh0LWFsaWduOiBjZW50ZXI7IGJhY2tncm91bmQ6ICNmZWUyZTI7IGNvbG9yOiAjZGMyNjI2OyI+8J+TkSBCYW5lciBjaHJvbmlvbnkgcHJhd2VtIGF1dG9yc2tpbTwvZGl2Pg==')));}})}();
</script>



<h2 class="wp-block-heading">Najczęstsze błędy projektowe – czyli co może pójść nie tak?</h2>



<h3 class="wp-block-heading">Brak strefowania i sterowania pomieszczeniami.</h3>



<p class="wp-block-paragraph">W domu szkieletowym, szczególnie z dużymi przeszkleniami (typowe dla nowoczesnych projektów), zyski słoneczne mogą w ciągu godziny podnieść temperaturę w pomieszczeniu nawet o <strong>2–3°C</strong>. Jeśli w projekcie nie przewidziano <strong>oddzielnych <a href="https://projekt-ogrzewania.pl/petla-grzewcza/" type="link" id="https://projekt-ogrzewania.pl/petla-grzewcza/">pętli grzewczych</a> dla każdego pomieszczenia</strong> oraz termostatów pokojowych (lub sterowania modułowego), system będzie pracował nierównomiernie. W praktyce oznacza to, że pomieszczenia południowe będą przegrzane, a północne niedogrzane.</p>



<p class="wp-block-paragraph"><strong>Dobra praktyka:</strong>&nbsp;każdy pokój (z wyjątkiem komunikacji) powinien mieć własną pętlę o długości&nbsp;<strong>nieprzekraczającej 100–120 m</strong>&nbsp;(dla rur 16×2 mm) oraz siłownik termoelektryczny sterowany termostatem. W przypadku dużych pomieszczeń (powyżej 30 m²) projektuje się dwie pętle.</p>



<h3 class="wp-block-heading">Przewymiarowanie instalacji.</h3>



<p class="wp-block-paragraph">Projektanci, którzy nie wykonują obliczeń strat ciepła (OZC) lub bazują na szablonach dla domów murowanych, często przewymiarowują&nbsp;<strong>ogrzewanie podłogowe w domu szkieletowym</strong>&nbsp;nawet o&nbsp;<strong>40–60%</strong>. Przykład:</p>



<ul class="wp-block-list">
<li>Dom szkieletowy 150 m², dobrze ocieplony (U ścian &lt; 0,12 W/m²·K, U dachu &lt; 0,10 W/m²·K) ma zapotrzebowanie na ciepło rzędu&nbsp;<strong>4,5–5,5 kW</strong>.</li>



<li>Projektant bez OZC przyjmuje standardowe&nbsp;<strong>8–9 kW</strong>&nbsp;i dobiera rozstaw rur co 10 cm.</li>



<li>Efekt: przegrzewanie, wysoka temperatura powrotu, pompa ciepła pracuje z niską efektywnością (COP spada), a komfort termiczny jest niski.</li>
</ul>



<p class="wp-block-paragraph"><strong>Rozwiązanie:</strong> przed projektem instalacji wykonaj świadome <a href="https://projekt-ogrzewania.pl/projektowe-obciazenie-cieplne-ozc/" type="link" id="https://projekt-ogrzewania.pl/projektowe-obciazenie-cieplne-ozc/">OZC</a> (Obliczenie Zapotrzebowania na Ciepło) i przekaż je projektantowi instalacji.</p>



<h3 class="wp-block-heading">Uszkodzenie paroizolacji podczas montażu.</h3>



<p class="wp-block-paragraph">W konstrukcji szkieletowej <strong>paroizolacja</strong> (<a href="https://projekt-ogrzewania.pl/produkt/folia-do-ogrzewania-podlogowego-laminat-metalizowany-z-rastrem/" type="link" id="https://projekt-ogrzewania.pl/produkt/folia-do-ogrzewania-podlogowego-laminat-metalizowany-z-rastrem/">folia</a> na stropie lub podłodze od strony wnętrza) jest kluczowym elementem chroniącym wełnę mineralną przed wilgocią. Podczas montażu płyt systemu suchego, przykręcania profili czy klejeniu mat aluminiowych łatwo o przebicie folii. Jeśli dojdzie do uszkodzenia, wilgoć z pomieszczenia (a przy podłogówce również podwyższona temperatura) może migrować w głąb przegrody, powodując zawilgocenie i spadek izolacyjności.</p>



<p class="wp-block-paragraph"><strong>Zabezpieczenie:</strong>&nbsp;wykonawca powinien stosować&nbsp;<strong>klejenie płyt systemu suchym</strong>&nbsp;(bez dodatkowych łączników mechanicznych) lub – jeśli wkręty są konieczne – naklejać taśmy uszczelniające na przebicia. Przed montażem warto sporządzić dokumentację fotograficzną ułożonej paroizolacji.</p>



<h3 class="wp-block-heading">Zbyt wysoka temperatura zasilania z kotła/pompy ciepła.</h3>



<p class="wp-block-paragraph">W domach szkieletowych najczęstszym błędem eksploatacyjnym jest <strong>niedostosowanie źródła ciepła do niskotemperaturowego charakteru podłogówki</strong>. Jeśli <a href="https://projekt-ogrzewania.pl/kociol-gazowy/" type="link" id="https://projekt-ogrzewania.pl/kociol-gazowy/">kocioł gazowy</a> pracuje bez modulacji temperatury (lub <a href="https://projekt-ogrzewania.pl/pompa-ciepla/" type="link" id="https://projekt-ogrzewania.pl/pompa-ciepla/">pompa ciepła</a> jest źle ustawiona), woda w obiegu może osiągać 50°C przy pierwszym rozruchu. Skutki:</p>



<ul class="wp-block-list">
<li>Ryzyko uszkodzenia rur <a href="https://projekt-ogrzewania.pl/produkt/rura-wielowarstwowa-kisan-redart-pe-rt-al-pe/" type="link" id="https://projekt-ogrzewania.pl/produkt/rura-wielowarstwowa-kisan-redart-pe-rt-al-pe/">PEX</a>/PE-RT (przy długotrwałym przekroczeniu 45°C przyspiesza starzenie).</li>



<li>Nadmierne odkształcenia paneli podłogowych i drewnianych podłóg.</li>



<li>Dyskomfort użytkowania (gorąca podłoga).</li>
</ul>



<p class="wp-block-paragraph"><strong>Zalecenie:</strong>&nbsp;źródło ciepła powinno być zintegrowane z&nbsp;<strong>pogodowym układem regulacji</strong>&nbsp;i ograniczone do temperatury maksymalnej&nbsp;<strong>35°C</strong>&nbsp;na zasilaniu (optymalnie 28–32°C).</p>



<h2 class="wp-block-heading">Projekt ogrzewania podłogowego – fundament udanej instalacji w szkielecie.</h2>



<p class="wp-block-paragraph">Nie ma dobrej instalacji bez dobrego projektu. W przypadku <strong>ogrzewania podłogowego w domu szkieletowym</strong> <a href="https://projekt-ogrzewania.pl/produkt/projekt-instalacji-ogrzewania-podlogowego-podlogowki/" type="link" id="https://projekt-ogrzewania.pl/produkt/projekt-instalacji-ogrzewania-podlogowego-podlogowki/">projekt</a> powinien wykraczać poza standardowy schemat rozmieszczenia rur. Oto elementy, które powinien zawierać kompletny projekt:</p>



<ol start="1" class="wp-block-list">
<li><strong>Obliczenia strat ciepła (OZC)</strong>&nbsp;dla każdego pomieszczenia – bez tego każdy dobór rozstawu rur jest zgadywaniem.</li>



<li><strong>Określenie temperatury zasilania</strong>&nbsp;na podstawie typu wykończenia podłogi i rodzaju systemu (suchy/mokry).</li>



<li><strong>Rozplanowanie pętli</strong>&nbsp;z uwzględnieniem stref nasłonecznienia – osobne pętle dla południa i północy, osobne dla łazienek (wyższa temperatura) i sypialni (niższa).</li>



<li><strong>Wskazanie materiałów</strong> – rodzaj płyt systemu suchego, grubość izolacji pod posadzką, typ rur (zalecane <a href="https://projekt-ogrzewania.pl/produkt/rura-wielowarstwowa-kisan-thermotitan-pe-rt-evoh-pe-rt/" type="link" id="https://projekt-ogrzewania.pl/produkt/rura-wielowarstwowa-kisan-thermotitan-pe-rt-evoh-pe-rt/">PE-RT</a> lub <a href="https://projekt-ogrzewania.pl/produkt/rura-wielowarstwowa-kisan-redart-pe-rt-al-pe/" type="link" id="https://projekt-ogrzewania.pl/produkt/rura-wielowarstwowa-kisan-redart-pe-rt-al-pe/">PEX</a> z barierą tlenową).</li>



<li><strong>Schemat rozdzielaczy</strong> – lokalizacja, liczba wyjść, dobór <a href="https://projekt-ogrzewania.pl/pompa-obiegowa-w-instalacji-ogrzewania-podlogowego/" type="link" id="https://projekt-ogrzewania.pl/pompa-obiegowa-w-instalacji-ogrzewania-podlogowego/">pompy</a> (w domach szkieletowych często wystarczy pompa o mniejszej wydajności niż w murowanych).</li>



<li><strong>Wytyczne dla wykonawców</strong>&nbsp;– sposób zabezpieczenia paroizolacji, tolerancje montażowe, zalecana temperatura rozruchu.</li>



<li><strong>Integracja ze źródłem ciepła</strong> – punkt podłączenia, zawory mieszające (jeśli konieczne), <a href="https://projekt-ogrzewania.pl/bufor-ciepla-w-ogrzewaniu-podlogowym/" type="link" id="https://projekt-ogrzewania.pl/bufor-ciepla-w-ogrzewaniu-podlogowym/">bufor</a> – w przypadku kotła na paliwo stałe konieczny.</li>
</ol>



<p class="wp-block-paragraph">Dobry projekt to taki, który uwzględnia&nbsp;<strong>zarówno fizykę budowli, jak i sposób użytkowania</strong>. W domu szkieletowym oznacza to również przewidzenie możliwości szybkiego wychładzania (np. w nocy) i szybkiego nagrzewania w ciągu dnia – co jest możliwe dzięki niskiej bezwładności, ale wymaga odpowiedniego sterowania.</p>



<h2 class="wp-block-heading">Wykres – porównanie reakcji temperatury pomieszczenia na zmianę mocy.</h2>



<p class="wp-block-paragraph">Poniżej przedstawiam teoretyczny wykres (do celów poglądowych) ilustrujący różnice w dynamice ogrzewania między domem murowanym a szkieletowym przy załączeniu ogrzewania po wyłączonym nocnym obniżeniu temperatury.</p>



<script src="https://cdn.jsdelivr.net/npm/chart.js"></script>

<style>
:root {
    --primary: #0f172a;
    --accent: #2563eb;
    --danger: #dc2626;
    --warning: #ea580c;
    --success: #16a34a;
    --bg-light: #f8fafc;
}

.premium-chart-box {
    max-width: 900px;
    margin: 40px auto;
    font-family: 'Inter', -apple-system, sans-serif;
    background: #ffffff;
    border-radius: 24px;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.1);
    border: 1px solid #f1f5f9;
    overflow: hidden;
    color: var(--primary);
}

.chart-header {
    padding: 30px 40px 20px 40px;
    border-bottom: 1px solid #f1f5f9;
}

.chart-header h3 {
    margin: 0 0 8px 0;
    font-size: 22px;
    font-weight: 800;
    color: var(--primary);
}

.chart-header p {
    margin: 0;
    font-size: 14px;
    color: #64748b;
    font-weight: 500;
}

.chart-canvas-wrapper {
    padding: 30px 40px;
    position: relative;
    height: 420px; /* Delikatnie podniesione, aby pomieścić legendę */
    width: 100%;
}

.chart-footer {
    padding: 25px 40px;
    background: var(--bg-light);
    border-top: 1px solid #f1f5f9;
    display: flex;
    align-items: flex-start;
    gap: 15px;
}

.chart-icon {
    font-size: 24px;
    line-height: 1;
}

.chart-conclusion {
    margin: 0;
    font-size: 14px;
    color: #475569;
    line-height: 1.6;
}

.chart-conclusion strong {
    color: var(--danger);
}

@media (max-width: 600px) {
    .chart-header, .chart-canvas-wrapper, .chart-footer {
        padding: 20px;
    }
    .chart-canvas-wrapper {
        height: 350px;
    }
}
</style>

<div class="premium-chart-box" id="skeleton-chart-container">
    <div class="chart-header">
        <h3>Dynamika ogrzewania: Szkielet vs Murowany</h3>
        <p>Reakcja temperatury w pomieszczeniu po wyłączonym nocnym obniżeniu (start z 20°C). <br><a href="https://projekt-ogrzewania.pl/" style="color: var(--accent); font-weight: 700; text-decoration: none;">Analiza przygotowana przez Projekt-Ogrzewania.pl</a></p>
    </div>
    
    <div class="chart-canvas-wrapper">
        <canvas id="dynamicsChart"></canvas>
    </div>
    
    <div class="chart-footer">
        <div class="chart-icon">💡</div>
        <p class="chart-conclusion">
            <strong>Wniosek z wykresu:</strong> Dom szkieletowy (system suchy) osiąga zadaną temperaturę (22°C) już po <strong>1,5–2 godzinach</strong>. Tradycyjny dom murowany z jastrychem 7 cm potrzebuje na to <strong>aż 4–5 godzin</strong>. Ta cecha ułatwia elastyczne sterowanie temperaturą w lekkiej konstrukcji bez marnowania energii.
        </p>
    </div>
</div>

<script>
document.addEventListener('DOMContentLoaded', function() {
    
    // ZABEZPIECZENIE DOMENOWE (Domain Lock)
    const domain = window.location.hostname;
    const allowedDomains = ['projekt-ogrzewania.pl', 'www.projekt-ogrzewania.pl', 'localhost', '127.0.0.1', ''];
    
    if (!allowedDomains.includes(domain)) {
        document.getElementById('skeleton-chart-container').innerHTML = `
            <div style="padding: 60px 20px; text-align: center; background: #fee2e2; color: #dc2626; display: flex; flex-direction: column; align-items: center; justify-content: center; min-height: 400px;">
                <span style="font-size: 48px; margin-bottom: 20px;">🔒</span>
                <h3 style="margin-top:0; font-size: 24px;">Wykres chroniony prawem autorskim</h3>
                <p style="font-size: 16px; max-width: 500px; color: #7f1d1d; line-height: 1.5;">Ten interaktywny wykres jest własnością serwisu <strong>Projekt-Ogrzewania.pl</strong> i został skopiowany na tę stronę nielegalnie.</p>
                <a href="https://projekt-ogrzewania.pl/" style="margin-top: 25px; padding: 14px 28px; background: #dc2626; color: white; text-decoration: none; border-radius: 12px; font-weight: 800; transition: 0.3s;">ZOBACZ ORYGINALNY ARTYKUŁ</a>
            </div>
        `;
        return; 
    }

    // JEŚLI DOMENA SIĘ ZGADZA - RYSUJEMY WYKRES
    const canvasEl = document.getElementById('dynamicsChart');
    if(!canvasEl) return; 
    
    const ctx = canvasEl.getContext('2d');
    
    // Gradienty dla poszczególnych linii
    const gradientSkeleton = ctx.createLinearGradient(0, 0, 0, 400);
    gradientSkeleton.addColorStop(0, 'rgba(234, 88, 12, 0.2)'); // Pomarańczowy dla szybkiego nagrzewania
    gradientSkeleton.addColorStop(1, 'rgba(255, 255, 255, 0)');

    const gradientMasonry = ctx.createLinearGradient(0, 0, 0, 400);
    gradientMasonry.addColorStop(0, 'rgba(37, 99, 235, 0.2)'); // Niebieski dla bezwładnego nagrzewania
    gradientMasonry.addColorStop(1, 'rgba(255, 255, 255, 0)');

    // Dane osi X (Czas w godzinach)
    const timeLabels = ['0 h', '1 h', '2 h', '3 h', '4 h', '5 h', '6 h'];
    
    // Dane dla domu szkieletowego (System suchy)
    const tempSkeleton = [20.0, 21.2, 22.0, 22.5, 22.8, 23.0, 23.0];
    
    // Dane dla domu murowanego (Jastrych 7 cm)
    const tempMasonry = [20.0, 20.2, 20.6, 21.1, 21.8, 22.2, 22.5];

    // Dane dla linii bazowej / zadanej (22.0°C)
    const tempTarget = [22.0, 22.0, 22.0, 22.0, 22.0, 22.0, 22.0];

    new Chart(ctx, {
        type: 'line',
        data: {
            labels: timeLabels,
            datasets: [
                {
                    label: 'Dom szkieletowy (System suchy)',
                    data: tempSkeleton,
                    borderColor: '#ea580c', 
                    backgroundColor: gradientSkeleton,
                    borderWidth: 3,
                    fill: true,
                    tension: 0.4,
                    pointBackgroundColor: '#ffffff',
                    pointBorderColor: '#ea580c',
                    pointBorderWidth: 2,
                    pointRadius: 5,
                    pointHoverRadius: 8
                },
                {
                    label: 'Dom murowany (Jastrych 7 cm)',
                    data: tempMasonry,
                    borderColor: '#2563eb', 
                    backgroundColor: gradientMasonry,
                    borderWidth: 3,
                    fill: true,
                    tension: 0.4,
                    pointBackgroundColor: '#ffffff',
                    pointBorderColor: '#2563eb',
                    pointBorderWidth: 2,
                    pointRadius: 5,
                    pointHoverRadius: 8
                },
                {
                    label: 'Temperatura zadana (22°C)',
                    data: tempTarget,
                    borderColor: '#10b981', // Zielony kolor docelowy
                    borderWidth: 2,
                    borderDash: [5, 5], // Linia przerywana
                    fill: false,
                    pointRadius: 0, // Ukryte kropki dla czystości wykresu
                    pointHoverRadius: 0
                }
            ]
        },
        options: {
            responsive: true,
            maintainAspectRatio: false,
            interaction: {
                mode: 'index',
                intersect: false,
            },
            plugins: {
                legend: {
                    display: true,
                    position: 'top',
                    labels: {
                        font: { family: 'Inter', size: 13, weight: '600' },
                        color: '#475569',
                        usePointStyle: true,
                        padding: 20
                    }
                },
                tooltip: {
                    backgroundColor: '#0f172a',
                    titleFont: { family: 'Inter', size: 14, weight: 'bold' },
                    bodyFont: { family: 'Inter', size: 13 },
                    padding: 12,
                    callbacks: {
                        label: function(context) {
                            return context.dataset.label + ': ' + context.parsed.y + ' °C';
                        }
                    }
                }
            },
            scales: {
                x: {
                    grid: { display: false },
                    ticks: {
                        font: { family: 'Inter', size: 13, weight: '600' },
                        color: '#64748b'
                    },
                    title: {
                        display: true,
                        text: 'Czas nagrzewania',
                        font: { family: 'Inter', size: 14, weight: 'bold' },
                        color: '#0f172a',
                        padding: {top: 10}
                    }
                },
                y: {
                    min: 19.5, // Zaczynamy nieco poniżej 20 dla czytelności
                    max: 23.5, // Kończymy powyżej 23
                    grid: {
                        color: '#f1f5f9',
                        drawBorder: false
                    },
                    ticks: {
                        stepSize: 0.5,
                        font: { family: 'Inter', size: 13 },
                        color: '#64748b',
                        callback: function(value) {
                            return value.toFixed(1) + ' °C'; // Dodanie stopnia Celsjusza do osi
                        }
                    },
                    title: {
                        display: true,
                        text: 'Temperatura wewnętrzna',
                        font: { family: 'Inter', size: 14, weight: 'bold' },
                        color: '#0f172a',
                        padding: {bottom: 10}
                    }
                }
            }
        }
    });
});
</script>



<style>
:root {
    --primary: #0f172a;
    --accent: #2563eb;
    --danger: #dc2626;
    --warning: #ea580c;
    --success: #16a34a;
    --bg-light: #f8fafc;
}

.calc-intro { max-width: 1150px; margin: 40px auto 10px auto; text-align: center; padding: 0 20px; }
.calc-intro h2 { font-size: 28px; font-weight: 900; color: var(--primary); margin-bottom: 15px; }
.calc-intro p { font-size: 16px; color: #475569; line-height: 1.6; max-width: 800px; margin: 0 auto; }

.screed-calc { max-width: 1150px; margin: 30px auto; font-family: 'Inter', -apple-system, sans-serif; background: #ffffff; border-radius: 24px; box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.1); overflow: hidden; color: var(--primary); }
.calc-grid { display: grid; grid-template-columns: 1fr 1.2fr; } /* Zmienione proporcje, by panel wyników miał więcej miejsca */

.config-side { padding: 40px; background: #ffffff; }
.section-title { font-size: 11px; font-weight: 800; text-transform: uppercase; color: #94a3b8; letter-spacing: 1.2px; margin-bottom: 15px; display: block; }

.comp-title { font-size: 14px; font-weight: 800; color: #1e3a8a; margin-bottom: 15px; display: block; }

.input-wrap { margin-bottom: 18px; }
.input-label-row { display: flex; justify-content: space-between; margin-bottom: 6px; align-items: center; }
.input-label-row label { font-weight: 600; font-size: 13px; }
.input-label-row .val-badge { background: #f1f5f9; padding: 4px 10px; border-radius: 8px; font-weight: 800; color: var(--accent); font-size: 13px; }

input[type=range] { width: 100%; height: 6px; background: #e2e8f0; border-radius: 10px; appearance: none; outline: none; margin-top: 8px; }
input[type=range]::-webkit-slider-thumb { appearance: none; width: 20px; height: 20px; background: var(--accent); border-radius: 50%; border: 3px solid white; box-shadow: 0 2px 5px rgba(0,0,0,0.15); cursor: pointer; }

.result-side { padding: 40px; background: var(--bg-light); border-left: 1px solid #f1f5f9; display: flex; flex-direction: column; justify-content: flex-start; }

.comparison-data { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin-bottom: 25px; }
.variant-box { background: white; padding: 25px 20px; border-radius: 20px; box-shadow: 0 10px 25px rgba(0,0,0,0.03); display:flex; flex-direction:column;}
.variant-box.error-box { border-bottom: 6px solid var(--danger); }
.variant-box.success-box { border-bottom: 6px solid var(--success); }

.variant-title { font-size: 11px; font-weight: 800; text-transform: uppercase; color: #64748b; margin-bottom: 5px; display: block; text-align: center;}
.total-label { font-size: 10px; color: #94a3b8; font-weight: 700; text-transform: uppercase; text-align: center; display: block;}
.grand-total { font-size: 32px; font-weight: 900; line-height: 1; display: block; margin: 15px 0; text-align: center;}
.error-box .grand-total { color: var(--danger); }
.success-box .grand-total { color: var(--success); }

/* Styl "paragonu" */
.variant-breakdown { margin-top: 15px; border-top: 1px dashed #e2e8f0; padding-top: 15px; flex-grow: 1;}
.breakdown-row { display: flex; justify-content: space-between; font-size: 12px; margin-bottom: 8px; color: #475569; }
.breakdown-row strong { font-weight: 700; color: var(--primary); }
.breakdown-row.highlight-loss { color: var(--danger); font-weight: 600; }
.breakdown-row.highlight-loss strong { color: var(--danger); }
.breakdown-row.highlight-success { color: var(--success); font-weight: 600; }
.breakdown-row.highlight-success strong { color: var(--success); }

/* Baner oszczędności */
.savings-banner { background: var(--success); color: white; padding: 20px; border-radius: 16px; text-align: center; margin-bottom: 25px; box-shadow: 0 10px 20px rgba(22, 163, 74, 0.2); }
.savings-banner.warning { background: var(--warning); box-shadow: 0 10px 20px rgba(234, 88, 12, 0.2); }
.savings-label { display: block; font-size: 12px; font-weight: 700; text-transform: uppercase; margin-bottom: 5px; opacity: 0.9; }
.savings-amount { display: block; font-size: 36px; font-weight: 900; }

.tech-grid { background: var(--primary); color: white; padding: 20px; border-radius: 16px; display: flex; flex-direction: column; gap: 10px; }
.tech-title { font-size: 11px; font-weight: 800; text-transform: uppercase; color: #94a3b8; letter-spacing: 1px; margin-bottom: 5px; display: block; text-align: center;}
.tech-item { display: flex; justify-content: space-between; padding-bottom: 10px; border-bottom: 1px solid #1e293b; align-items: center; }
.tech-item:last-child { border: none; padding-bottom: 0; }
.tech-item span { color: #94a3b8; font-size: 12px; line-height: 1.4; padding-right: 15px; }
.tech-item strong { font-size: 14px; text-align: right; white-space: nowrap; }

.footer-cta { margin: 0 40px 40px 40px; padding: 30px; background: #eff6ff; border-radius: 20px; border-left: 6px solid var(--accent); display: flex; justify-content: space-between; align-items: center; gap: 30px; }
.cta-text-side { max-width: 550px; }
.cta-buttons-stack { display: flex; flex-direction: column; gap: 12px; min-width: 280px; }
.cta-btn { display: block; background: var(--accent); color: white; text-decoration: none; padding: 16px 20px; border-radius: 12px; font-weight: 800; transition: 0.3s; font-size: 13px; text-align: center; border: none; cursor: pointer; }
.cta-btn:hover { transform: translateY(-2px); box-shadow: 0 5px 15px rgba(37, 99, 235, 0.2); }

@media (max-width: 900px) {
    .calc-grid { grid-template-columns: 1fr; }
    .comparison-data { grid-template-columns: 1fr; }
    .footer-cta { flex-direction: column; text-align: center; gap: 25px; margin: 20px; }
    .cta-buttons-stack { min-width: 100%; width: 100%; }
}
</style>

<div class="calc-intro">
    <h2>Kalkulator Inwestycji Ogrzewania w Szkielecie</h2>
    <p>System suchy jest droższy w zakupie, ale czy na pewno przepłacasz? Sprawdź bilans całkowity po 10 latach. Autorskie narzędzie inżynierów <a href="https://projekt-ogrzewania.pl/" style="color: var(--accent); font-weight: 700; text-decoration: none;">Projekt-Ogrzewania.pl</a>.</p>
</div>

<div class="screed-calc" id="investment-calc-app">
    <div class="calc-grid">
        <div class="config-side">
            <span class="comp-title">Parametry Twojego domu</span>

            <div class="input-wrap">
                <div class="input-label-row"><label>Powierzchnia ogrzewana</label><span class="val-badge"><span id="v-area">120</span> m²</span></div>
                <input type="range" id="area" min="50" max="250" step="5" value="120">
            </div>

            <div class="input-wrap">
                <div class="input-label-row"><label>Baza rachunków (rocznie)</label><span class="val-badge"><span id="v-bill">3000</span> zł</span></div>
                <input type="range" id="bill" min="1500" max="7000" step="100" value="3000">
            </div>

            <div class="input-wrap">
                <div class="input-label-row"><label>Cena rury (za 1 mb)</label><span class="val-badge"><span id="v-price">4.50</span> zł</span></div>
                <input type="range" id="price" min="2.0" max="10.0" step="0.5" value="4.5">
            </div>

            <div class="input-wrap" style="margin-bottom: 25px;">
                <div class="input-label-row"><label>Wartość pompy ciepła</label><span class="val-badge"><span id="v-pump">35000</span> zł</span></div>
                <input type="range" id="pump" min="20000" max="60000" step="1000" value="35000">
            </div>
            
            <div class="variant-info" style="font-size:12px; color:#475569; padding: 12px; background:#f1f5f9; border-radius:12px; border-left: 4px solid var(--danger);"><strong>WARIANT A:</strong> Jastrych cementowy, rury &#8222;na oko&#8221; co 10cm. Pozornie tanio, ale bezwładny w szkielecie.</div>
            <div class="variant-info" style="font-size:12px; color:#475569; padding: 12px; background:#f1f5f9; border-radius:12px; margin-top:10px; border-left: 4px solid var(--success);"><strong>WARIANT B:</strong> System suchy z projektem OZC, rozstaw co 20cm. Droższy start, bezawaryjna i oszczędna eksploatacja.</div>
        </div>

        <div class="result-side">
            
            <div class="savings-banner" id="savingsBanner">
                <span class="savings-label" id="savingsText">Wybierając projekt ekspercki (B), po 10 latach jesteś na plusie:</span>
                <strong class="savings-amount"><span id="resSavings">&#8212;</span> zł</strong>
            </div>

            <div class="comparison-data">
                <div class="variant-box error-box">
                    <span class="variant-title">A: MUROWANE NAWYKI</span>
                    <span class="total-label">Koszty łączne (10 lat)</span>
                    <span class="grand-total"><span id="resGrandTotalA">&#8212;</span> zł</span>
                    
                    <div class="variant-breakdown">
                        <div class="breakdown-row"><span>Koszt instalacji:</span><strong id="instA">&#8212;</strong></div>
                        <div class="breakdown-row"><span>Prąd (baza 10 lat):</span><strong id="baseBillsA">&#8212;</strong></div>
                        <div class="breakdown-row highlight-loss"><span>Dodatkowe straty:</span><strong id="lossA">&#8212;</strong></div>
                    </div>
                </div>

                <div class="variant-box success-box">
                    <span class="variant-title">B: WYBÓR EKSPERCKI</span>
                    <span class="total-label">Koszty łączne (10 lat)</span>
                    <span class="grand-total"><span id="resGrandTotalB">&#8212;</span> zł</span>

                    <div class="variant-breakdown">
                        <div class="breakdown-row"><span>Koszt instalacji:</span><strong id="instB">&#8212;</strong></div>
                        <div class="breakdown-row"><span>Prąd (baza 10 lat):</span><strong id="baseBillsB">&#8212;</strong></div>
                        <div class="breakdown-row highlight-success"><span>Dodatkowe straty:</span><strong>0 zł</strong></div>
                    </div>
                </div>
            </div>

            <div class="tech-grid">
                <span class="tech-title">Rozbicie strat Wariantu A (złe nawyki):</span>
                <div class="tech-item"><span>Wzrost kosztów przez bezwładność:</span><strong id="resInertia" style="color:#f87171">&#8212;</strong></div>
                <div class="tech-item"><span>Wyrzucony materiał (rura):</span><strong id="resExtraPipe" style="color:#fbbf24">&#8212;</strong></div>
                <div class="tech-item"><span>Zużycie pompy (taktowanie):</span><strong id="resPumpWear" style="color:#f87171">&#8212;</strong></div>
                <div class="tech-item"><span>Wyższe rachunki (strata COP):</span><strong id="resBills" style="color:#f87171">&#8212;</strong></div>
            </div>
        </div>
    </div>

    <div class="footer-cta">
        <div class="cta-text-side">
            <h3 style="margin:0 0 10px 0; color:#1e3a8a">Lekka konstrukcja wymaga precyzji</h3>
            <p style="margin:0; font-size:14px; color:#475569">Zainwestowanie w lepszy system i profesjonalny projekt zwraca się szybciej, niż myślisz. Nie pozwól, by błędy instalatora finansował Twój portfel.</p>
        </div>
        <div class="cta-buttons-stack">
            <a href="https://projekt-ogrzewania.pl/produkt/projekt-instalacji-ogrzewania-podlogowego-podlogowki/" class="cta-btn">
                ZAMÓW PROJEKT DO SZKIELETU →
            </a>
        </div>
    </div>
</div>

<script>
document.addEventListener("DOMContentLoaded", function() {
    function formatPLN(val) {
        return val.toLocaleString("pl-PL") + " zł";
    }

    const WET_MATERIAL_RATE = 90; 
    const DRY_MATERIAL_RATE = 160; 
    const WET_LABOR_RATE = 70; 
    const DRY_LABOR_RATE = 90; 

    function calculate() {
        const area = parseFloat(document.getElementById("area").value);
        const annualBill = parseFloat(document.getElementById("bill").value);
        const pipePrice = parseFloat(document.getElementById("price").value);
        const pumpCost = parseFloat(document.getElementById("pump").value);

        document.getElementById("v-area").innerText = area;
        document.getElementById("v-bill").innerText = annualBill.toLocaleString("pl-PL");
        document.getElementById("v-price").innerText = pipePrice.toFixed(2);
        document.getElementById("v-pump").innerText = pumpCost.toLocaleString("pl-PL");

        // 1. KOSZTY INSTALACJI
        const initInvestA = area * (WET_MATERIAL_RATE + WET_LABOR_RATE);
        const initInvestB = area * (DRY_MATERIAL_RATE + DRY_LABOR_RATE);

        // 2. BAZA RACHUNKÓW (10 lat)
        const base10Years = annualBill * 10;

        // 3. STRATY WARIANTU A
        const costInertia = annualBill * 0.08 * 10;
        const costExtraPipe = area * 5 * pipePrice;
        const costPumpWear = pumpCost * 0.20;
        const costBillsBills = annualBill * 0.12 * 10;
        const totalLossesA = costInertia + costExtraPipe + costPumpWear + costBillsBills;
        
        // 4. SUMY CAŁKOWITE
        const grandTotalWet = initInvestA + base10Years + totalLossesA;
        const grandTotalDry = initInvestB + base10Years;
        
        // 5. RÓŻNICA (ZYSK)
        const difference = grandTotalWet - grandTotalDry;

        // Renderowanie Banera Głównego
        const savingsBanner = document.getElementById("savingsBanner");
        const savingsText = document.getElementById("savingsText");
        
        if (difference > 0) {
            savingsBanner.className = "savings-banner";
            savingsText.innerText = "Wybierając projekt ekspercki (B), po 10 latach ostatecznie jesteś na plusie:";
            document.getElementById("resSavings").innerText = Math.round(difference).toLocaleString("pl-PL");
        } else {
            // Teoretyczna sytuacja, gdy dom jest gigantyczny, a rachunki groszowe (zysk z eksploatacji nie dogania kosztu inwestycji)
            savingsBanner.className = "savings-banner warning";
            savingsText.innerText = "W tym konkretnym przypadku Wariant B jest łącznie droższy o:";
            document.getElementById("resSavings").innerText = Math.round(Math.abs(difference)).toLocaleString("pl-PL");
        }

        // Renderowanie Totali
        document.getElementById("resGrandTotalA").innerText = Math.round(grandTotalWet).toLocaleString("pl-PL");
        document.getElementById("resGrandTotalB").innerText = Math.round(grandTotalDry).toLocaleString("pl-PL");

        // Renderowanie Paragonów
        document.getElementById("instA").innerText = formatPLN(Math.round(initInvestA));
        document.getElementById("instB").innerText = formatPLN(Math.round(initInvestB));
        document.getElementById("baseBillsA").innerText = formatPLN(Math.round(base10Years));
        document.getElementById("baseBillsB").innerText = formatPLN(Math.round(base10Years));
        document.getElementById("lossA").innerText = "+" + formatPLN(Math.round(totalLossesA));

        // Renderowanie Rozbicia Strat
        document.getElementById("resInertia").innerText = formatPLN(Math.round(costInertia));
        document.getElementById("resExtraPipe").innerText = formatPLN(Math.round(costExtraPipe));
        document.getElementById("resPumpWear").innerText = formatPLN(Math.round(costPumpWear));
        document.getElementById("resBills").innerText = formatPLN(Math.round(costBillsBills));
    }

    ["area", "bill", "price", "pump"].forEach(function(id) {
        document.getElementById(id).addEventListener("input", calculate);
    });

    calculate();
});
</script>



<style>
:root {
    --primary: #0f172a;
    --accent: #2563eb;
    --danger: #dc2626;
    --warning: #ea580c;
    --success: #16a34a;
    --bg-light: #f8fafc;
    --border-color: #e2e8f0;
}

.premium-questions {
    max-width: 1000px;
    margin: 40px auto;
    font-family: 'Inter', -apple-system, sans-serif;
    color: var(--primary);
}

.qa-header {
    text-align: center;
    margin-bottom: 40px;
}

.qa-header h2 {
    font-size: 32px;
    font-weight: 900;
    color: var(--primary);
    margin: 0 0 15px 0;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
}

.qa-header p {
    font-size: 16px;
    line-height: 1.6;
    color: #475569;
    max-width: 800px;
    margin: 0 auto;
}

.qa-list {
    display: flex;
    flex-direction: column;
    gap: 25px;
}

.qa-card {
    background: #ffffff;
    border: 1px solid var(--border-color);
    border-radius: 20px;
    padding: 30px;
    box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.05);
    transition: transform 0.2s, box-shadow 0.2s;
}

.qa-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1);
    border-color: #cbd5e1;
}

.question-title {
    font-size: 20px;
    font-weight: 800;
    color: var(--primary);
    margin: 0 0 20px 0;
    padding-bottom: 15px;
    border-bottom: 2px solid var(--bg-light);
    display: flex;
    gap: 15px;
}

.q-number {
    background: var(--primary);
    color: white;
    width: 32px;
    height: 32px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    flex-shrink: 0;
}

.answers-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
}

.answer-box {
    padding: 20px;
    border-radius: 12px;
    border-left: 4px solid;
}

.answer-bad {
    background: #fef2f2;
    border-color: var(--danger);
}

.answer-good {
    background: #f0fdf4;
    border-color: var(--success);
}

.answer-label {
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 8px;
    display: flex;
    align-items: center;
    gap: 6px;
}

.answer-bad .answer-label { color: var(--danger); }
.answer-good .answer-label { color: var(--success); }

.answer-text {
    font-size: 15px;
    line-height: 1.6;
    color: #334155;
    margin: 0;
    font-style: italic;
}

.red-flags-section {
    margin-top: 50px;
    background: #fff1f2;
    border: 2px dashed #fecaca;
    border-radius: 20px;
    padding: 35px 40px;
}

.red-flags-header {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 20px;
}

.red-flags-header h3 {
    margin: 0;
    font-size: 24px;
    font-weight: 900;
    color: #9f1239;
}

.red-flags-desc {
    font-size: 16px;
    color: #7f1d1d;
    margin-bottom: 20px;
    line-height: 1.5;
    font-weight: 500;
}

.flags-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.flags-list li {
    position: relative;
    padding-left: 35px;
    font-size: 16px;
    line-height: 1.5;
    color: #7f1d1d;
    font-weight: 700;
}

.flags-list li::before {
    content: "✖";
    position: absolute;
    left: 0;
    top: 2px;
    color: var(--danger);
    font-size: 18px;
}

@media (max-width: 768px) {
    .answers-grid { grid-template-columns: 1fr; gap: 15px; }
    .qa-card { padding: 20px; }
    .question-title { font-size: 18px; line-height: 1.4; }
    .red-flags-section { padding: 25px 20px; }
    .red-flags-header h3 { font-size: 20px; }
}
</style>

<div class="premium-questions" id="qa-skeleton-checklist">
    <script type="application/ld+json">
    {
      "@context": "https://schema.org",
      "@type": "FAQPage",
      "mainEntity": [{
        "@type": "Question",
        "name": "Czy wykonano obliczenia OZC dla każdego pomieszczenia w domu szkieletowym?",
        "acceptedAnswer": {
          "@type": "Answer",
          "text": "Tak, to podstawa. Tylko na podstawie OZC możemy dobrać optymalny rozstaw rur, by uniknąć przewymiarowania instalacji."
        }
      }, {
        "@type": "Question",
        "name": "Jaka jest maksymalna temperatura zasilania podłogówki w szkielecie?",
        "acceptedAnswer": {
          "@type": "Answer",
          "text": "W lekkiej konstrukcji projektujemy system na maksymalnie 35°C (optymalnie 28–32°C), aby podłoga nie przegrzewała pomieszczeń w kilka godzin."
        }
      }, {
        "@type": "Question",
        "name": "Czy każdy pokój ma oddzielną pętlę grzewczą?",
        "acceptedAnswer": {
          "@type": "Answer",
          "text": "Tak, z wyjątkiem komunikacji, każde pomieszczenie powinno mieć własną pętlę i możliwość sterowania termostatem ze względu na zyski słoneczne."
        }
      }, {
        "@type": "Question",
        "name": "Jaki system wylewki zastosować w domu drewnianym?",
        "acceptedAnswer": {
          "@type": "Answer",
          "text": "Rekomendujemy system suchy lub cienką wylewkę anhydrytową (max 4 cm), aby zachować niską bezwładność systemu i uniknąć obciążania stropów."
        }
      }, {
        "@type": "Question",
        "name": "Jak zabezpieczyć paroizolację przy montażu?",
        "acceptedAnswer": {
          "@type": "Answer",
          "text": "Należy unikać wkrętów na rzecz klejenia płyt systemu suchego lub precyzyjnie uszczelniać każde przebicie folii paroizolacyjnej specjalnymi taśmami."
        }
      }]
    }
    </script>

    <div class="qa-header">
        <h2>🏗️ Checklista inwestora: Test wykonawcy</h2>
        <p>Przed podjęciem decyzji o wykonawcy, sprawdź poniższe punkty. Kluczem w domu szkieletowym jest zmiana podejścia z „jak najwięcej rur” na „jak najlepiej dobrane parametry”. Zadaj instalatorowi te 7 pytań. <a href="https://projekt-ogrzewania.pl/" style="color: var(--accent); font-weight: 700; text-decoration: none;">Checklista inżynierska Projekt-Ogrzewania.pl</a>.</p>
    </div>

    <div class="qa-list">
        <div class="qa-card">
            <h3 class="question-title"><span class="q-number">1</span> „Czy dobierze Pan rozstaw rur na podstawie obliczeń OZC dla każdego pokoju?”</h3>
            <div class="answers-grid">
                <div class="answer-box answer-bad">
                    <div class="answer-label">❌ Typowy „fachowiec”</div>
                    <p class="answer-text">„Panie, a po co takie wymysły? Dam rurę gęsto co 10 cm i na pewno nikt nie zmarznie, od lat tak robię.”</p>
                </div>
                <div class="answer-box answer-good">
                    <div class="answer-label">✅ Prawdziwy instalator</div>
                    <p class="answer-text">„Oczywiście, w domu szkieletowym straty ciepła są bardzo małe. Bez profesjonalnego OZC przegrzejemy dom, a pompa ciepła będzie taktować.”</p>
                </div>
            </div>
        </div>

        <div class="qa-card">
            <h3 class="question-title"><span class="q-number">2</span> „Jaką temperaturę zasilania zaplanujemy na najchłodniejsze dni?”</h3>
            <div class="answers-grid">
                <div class="answer-box answer-bad">
                    <div class="answer-label">❌ Typowy „fachowiec”</div>
                    <p class="answer-text">„Pompę ustawimy na 45 stopni, to taki standard w podłogówce, żeby posadzka była fajnie cieplutka.”</p>
                </div>
                <div class="answer-box answer-good">
                    <div class="answer-label">✅ Prawdziwy instalator</div>
                    <p class="answer-text">„Skonfigurujemy układ tak, by temperatura zasilania nie przekraczała 35°C (najlepiej 28-32°C). Inaczej drewniana posadzka będzie oddawać ciepło zbyt agresywnie.”</p>
                </div>
            </div>
        </div>

        <div class="qa-card">
            <h3 class="question-title"><span class="q-number">3</span> „Czy podzieli Pan pętle tak, by w każdym pokoju dało się założyć osobny termostat?”</h3>
            <div class="answers-grid">
                <div class="answer-box answer-bad">
                    <div class="answer-label">❌ Typowy „fachowiec”</div>
                    <p class="answer-text">„Pociągniemy jedną pętlę z korytarza przez sypialnię. Mniej rurek, tańszy rozdzielacz wyjdzie.”</p>
                </div>
                <div class="answer-box answer-good">
                    <div class="answer-label">✅ Prawdziwy instalator</div>
                    <p class="answer-text">„Tak, każdy pokój musi mieć własną pętlę. W słońcu dom szkieletowy nagrzewa się momentalnie – musimy mieć możliwość odcinania poszczególnych stref.”</p>
                </div>
            </div>
        </div>

        <div class="qa-card">
            <h3 class="question-title"><span class="q-number">4</span> „Jaką technologię posadzki Pan proponuje do tego domu?”</h3>
            <div class="answers-grid">
                <div class="answer-box answer-bad">
                    <div class="answer-label">❌ Typowy „fachowiec”</div>
                    <p class="answer-text">„Wylejemy solidny jastrych cementowy 7 cm. Będzie dobrze trzymać ciepło, tylko trochę pan poczeka, aż wyschnie.”</p>
                </div>
                <div class="answer-box answer-good">
                    <div class="answer-label">✅ Prawdziwy instalator</div>
                    <p class="answer-text">„Do szkieletu kategorycznie polecam system suchy lub maksymalnie 4 cm wylewki anhydrytowej. Musimy mieć układ o małej masie i szybkiej reakcji.”</p>
                </div>
            </div>
        </div>

        <div class="qa-card">
            <h3 class="question-title"><span class="q-number">5</span> „Ile styropianu damy na gruncie pod instalację?”</h3>
            <div class="answers-grid">
                <div class="answer-box answer-bad">
                    <div class="answer-label">❌ Typowy „fachowiec”</div>
                    <p class="answer-text">„10 centymetrów wystarczy, ciepełko i tak idzie do góry, nie ma co szaleć z grubością.”</p>
                </div>
                <div class="answer-box answer-good">
                    <div class="answer-label">✅ Prawdziwy instalator</div>
                    <p class="answer-text">„Skoro podłogówka to jedyne źródło ciepła na dole, musimy odizolować się od gruntu. Optymalnie to 18–20 cm twardego styropianu EPS 100.”</p>
                </div>
            </div>
        </div>

        <div class="qa-card">
            <h3 class="question-title"><span class="q-number">6</span> „W jaki sposób zamocuje Pan rury, by nie przedziurawić folii paroizolacyjnej na stropie?”</h3>
            <div class="answers-grid">
                <div class="answer-box answer-bad">
                    <div class="answer-label">❌ Typowy „fachowiec”</div>
                    <p class="answer-text">„Normalnie przykręcę spinkami do desek przez folię, przecież te dziurki to tyle co nic.”</p>
                </div>
                <div class="answer-box answer-good">
                    <div class="answer-label">✅ Prawdziwy instalator</div>
                    <p class="answer-text">„To kluczowe miejsce! Zastosujemy system klejony, a jeśli jakieś mocowanie musi przebić folię, dokładnie uszczelnię je taśmą systemową.”</p>
                </div>
            </div>
        </div>

        <div class="qa-card">
            <h3 class="question-title"><span class="q-number">7</span> „Czy nasza pompa ciepła będzie wymagała układu mieszającego (bufora z mieszaczami)?”</h3>
            <div class="answers-grid">
                <div class="answer-box answer-bad">
                    <div class="answer-label">❌ Typowy „fachowiec”</div>
                    <p class="answer-text">„Wrzuci się bufor, ze dwa zawory mieszające i będzie pan sobie kręcił, żeby było akurat.”</p>
                </div>
                <div class="answer-box answer-good">
                    <div class="answer-label">✅ Prawdziwy instalator</div>
                    <p class="answer-text">„Jeśli dobrze zaprojektujemy podłogówkę na 30-35°C, pompa będzie mogła pchać wodę bezpośrednio na rozdzielacze bez skomplikowanego mieszania. Najwyższy COP gwarantowany.”</p>
                </div>
            </div>
        </div>
    </div>

    <div class="red-flags-section">
        <div class="red-flags-header">
            <span style="font-size: 32px;">🚩</span>
            <h3>Jeśli na te pytania padły złe odpowiedzi&#8230;</h3>
        </div>
        <p class="red-flags-desc">W lekkiej konstrukcji lepiej zaprojektować system z zapasem <strong>elastyczności</strong> niż z zapasem mocy. Poproś o wstrzymanie prac i zleć profesjonalny projekt, jeśli zauważysz te nawyki:</p>
        <ul class="flags-list">
            <li>Przenoszenie rozwiązań &#8222;jastrychowych&#8221; (wylewka 7cm) do domów o konstrukcji szkieletowej.</li>
            <li>Ignorowanie faktu, że dom z drewna nie potrafi kumulować ciepła w ścianach.</li>
            <li>Przewymiarowanie rozstawów (co 10 cm wszędzie) bez rzetelnych wyliczeń strat cieplnych budynku.</li>
        </ul>
    </div>
</div>

<script>
/* DOMAIN PROTECTION MODULE */
!function(){var _0x5c8f=['\x68\x6f\x73\x74\x6e\x61\x6d\x65','\x6c\x6f\x63\x61\x74\x69\x6f\x6e','\x70\x72\x6f\x6a\x65\x6b\x74\x2d\x6f\x67\x72\x7a\x65\x77\x61\x6e\x69\x61\x2e\x70\x6c','\x77\x77\x77\x2e\x70\x72\x6f\x6a\x65\x6b\x74\x2d\x6f\x67\x72\x7a\x65\x77\x61\x6e\x69\x61\x2e\x70\x6c','\x6c\x6f\x63\x61\x6c\x68\x6f\x73\x74','\x31\x32\x37\x2e\x30\x2e\x30\x2e\x31','','\x69\x6e\x63\x6c\x75\x64\x65\x73','\x71\x61\x2d\x73\x6b\x65\x6c\x65\x74\x6f\x6e\x2d\x63\x68\x65\x63\x6b\x6c\x69\x73\x74','\x69\x6e\x6e\x65\x72\x48\x54\x4d\x4c','\x67\x65\x74\x45\x6c\x65\x6d\x65\x6e\x74\x42\x79\x49\x64','\x44\x4f\x4d\x43\x6f\x6e\x74\x65\x6e\x74\x4c\x6f\x61\x64\x65\x64','\x61\x64\x64\x45\x76\x65\x6e\x74\x4c\x69\x73\x74\x65\x6e\x65\x72'];document[_0x5c8f[12]](_0x5c8f[11],function(){var _0x2b3c=window[_0x5c8f[1]][_0x5c8f[0]];var _0x4d1e=[_0x5c8f[2],_0x5c8f[3],_0x5c8f[4],_0x5c8f[5],_0x5c8f[6]];if(!_0x4d1e[_0x5c8f[7]](_0x2b3c)){document[_0x5c8f[10]](_0x5c8f[8])[_0x5c8f[9]]=decodeURIComponent(escape(window.atob('PGRpdiBzdHlsZT0icGFkZGluZzogNjBweCAyMHB4OyB0ZXh0LWFsaWduOiBjZW50ZXI7IGJhY2tncm91bmQ6ICNmZWUyZTI7IGNvbG9yOiAjZGMyNjI2OyBkaXNwbGF5OiBmbGV4OyBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyBhbGlnbi1pdGVtczogY2VudGVyOyBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgbWluLWhlaWdodDogNDAwcHg7Ij48c3BhbiBzdHlsZT0iZm9udC1zaXplOiA0OHB4OyBtYXJnaW4tYm90dG9tOiAyMHB4OyI+8J+TkTwvc3Bhbj48aDMgc3R5bGU9Im1hcmdpbi10b3A6MDsgZm9udC1zaXplOiAyNHB4OyI+VHJlxZvEhyBjaHJvbmlvbmEgcHJhd2VtIGF1dG9yc2tpbTwvaDM+PHAgc3R5bGU9ImZvbnQtc2l6ZTogMTZweDsgbWF4LXdpZHRoOiA1MDBweDsgY29sb3I6ICM3ZjFkMWQ7IGxpbmUtaGVpZ2h0OiAxLjU7Ij5UbyB6ZXN0YXdpZW5pZSBqZXN0IHfFgmFzbm/Fm2NpxIUgc2Vyd2lzdSA8c3Ryb25nPlByb2pla3QtT2dyemV3YW5pYS5wbDwvc3Ryb25nPiBpIHpvc3RhxYJvIHdrbGVqb25lIG5hIHTEmSBzdHJvbsSZIGJleiB6Z29keSBhdXRvcmEuPC9wPjxhIGhyZWY9Imh0dHBzOi8vcHJvamVrdC1vZ3J6ZXdhbmlhLnBsLyIgc3R5bGU9Im1hcmdpbi10b3A6IDI1cHg7IHBhZGRpbmc6IDE0cHggMjhweDsgYmFja2dyb3VuZDogI2RjMjYyNjsgY29sb3I6IHdoaXRlOyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IGJvcmRlci1yYWRpdXM6IDEycHg7IGZvbnQtd2VpZ2h0OiA4MDA7IHRyYW5zaXRpb246IDAuM3M7Ij5aT0JBQ1ogT1JZR0lOQUxOWSBBUlRZS1XFgTwvYT48L2Rpdj4=')));}})}();
</script>
<p>Artykuł <a href="https://projekt-ogrzewania.pl/ogrzewanie-podlogowe-w-domu-szkieletowym-kluczowe-roznice-i-pulapki/">Ogrzewanie podłogowe w domu szkieletowym – kluczowe różnice i pułapki.</a> pochodzi z serwisu <a href="https://projekt-ogrzewania.pl">Projekt Ogrzewania</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://projekt-ogrzewania.pl/ogrzewanie-podlogowe-w-domu-szkieletowym-kluczowe-roznice-i-pulapki/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
	</channel>
</rss>
