<?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 Domowe systemy grzewcze - Projekt Ogrzewania</title>
	<atom:link href="https://projekt-ogrzewania.pl/category/domowe-systemy-grzewcze/feed/" rel="self" type="application/rss+xml" />
	<link>https://projekt-ogrzewania.pl/category/domowe-systemy-grzewcze/</link>
	<description>Twój partner w projektowaniu komfortu – profesjonalne ogrzewanie podłogowe dla Twojego domu.</description>
	<lastBuildDate>Tue, 15 Sep 2026 06:48:22 +0000</lastBuildDate>
	<language>pl-PL</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.1.2</generator>

<image>
	<url>https://projekt-ogrzewania.pl/wp-content/uploads/2024/09/cropped-Projekt-ogrzewania-logo-1-32x32.jpg</url>
	<title>Archiwa Domowe systemy grzewcze - Projekt Ogrzewania</title>
	<link>https://projekt-ogrzewania.pl/category/domowe-systemy-grzewcze/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Jak często trzeba serwisować ogrzewanie podłogowe?</title>
		<link>https://projekt-ogrzewania.pl/jak-czesto-trzeba-serwisowac-ogrzewanie-podlogowe/</link>
		
		<dc:creator><![CDATA[Robert Kucharski]]></dc:creator>
		<pubDate>Sun, 12 Oct 2025 12:21:11 +0000</pubDate>
				<category><![CDATA[Domowe systemy grzewcze]]></category>
		<category><![CDATA[Instalacje grzewcze]]></category>
		<category><![CDATA[Konserwacja systemów grzewczych]]></category>
		<category><![CDATA[Ogrzewanie podłogowe]]></category>
		<category><![CDATA[Poradniki domowe]]></category>
		<category><![CDATA[Poradniki instalacyjne]]></category>
		<category><![CDATA[Poradniki techniczne]]></category>
		<category><![CDATA[Porady dla domu]]></category>
		<category><![CDATA[Porady techniczne]]></category>
		<category><![CDATA[Serwis i konserwacja]]></category>
		<category><![CDATA[Systemy grzewcze]]></category>
		<category><![CDATA[częstotliwość serwisu ogrzewania]]></category>
		<category><![CDATA[jak dbać o ogrzewanie podłogowe]]></category>
		<category><![CDATA[konserwacja ogrzewania podłogowego]]></category>
		<category><![CDATA[koszt serwisu ogrzewania]]></category>
		<category><![CDATA[ogrzewanie podłogowe wodne]]></category>
		<category><![CDATA[płukanie instalacji grzewczej]]></category>
		<category><![CDATA[przegląd instalacji grzewczej]]></category>
		<category><![CDATA[rozdzielacz ogrzewania podłogowego]]></category>
		<category><![CDATA[serwis ogrzewania podłogowego]]></category>
		<category><![CDATA[zapowietrzone ogrzewanie podłogowe]]></category>
		<guid isPermaLink="false">https://projekt-ogrzewania.pl/?p=2801</guid>

					<description><![CDATA[<p>Ogrzewanie podłogowe to synonim komfortu i efektywnego rozprowadzania ciepła. Jednak, aby przez lata cieszyć się jego bezawaryjną pracą, niezbędna jest odpowiednia profilaktyka. Wielu inwestorów zastanawia się więc, jak często trzeba serwisować ogrzewanie podłogowe i czy naprawdę jest to konieczne. Odpowiedź jest kluczowa dla zdrowia całej instalacji. Regularne przeglądy to nie fanaberia, a konieczność, która pozwala uniknąć kosztownych awarii w środku sezonu grzewczego, zapewnia optymalną wydajność i znacząco wydłuża żywotność wszystkich komponentów systemu. W naszym artykule znajdziesz szczegółowy harmonogram prac serwisowych.</p>
<p>Artykuł <a href="https://projekt-ogrzewania.pl/jak-czesto-trzeba-serwisowac-ogrzewanie-podlogowe/">Jak często trzeba serwisować ogrzewanie podłogowe?</a> pochodzi z serwisu <a href="https://projekt-ogrzewania.pl">Projekt Ogrzewania</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<style>
#rk-service-guide{--dark:#102536;--navy:#14384d;--blue:#078fbe;--cyan:#25c7d8;--cyan-soft:#e8fbff;--orange:#ff6a3d;--orange-soft:#fff1eb;--green:#16836b;--green-soft:#eaf8f3;--yellow:#e6ad2f;--yellow-soft:#fff8df;--red:#d94b3d;--red-soft:#fff0ee;--ink:#1f2c37;--text:#475967;--muted:#6b7e8a;--line:#d5e4eb;--soft:#f4f9fb;--white:#fff;width:100%;max-width:1180px;margin:34px auto 72px;color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:18px;line-height:1.75}
#rk-service-guide,#rk-service-guide *{box-sizing:border-box}#rk-service-guide img,#rk-service-guide svg{display:block;max-width:100%}#rk-service-guide a{color:var(--blue);text-decoration-thickness:1px;text-underline-offset:3px}#rk-service-guide p{margin:0 0 18px}#rk-service-guide ul,#rk-service-guide ol{margin:0 0 20px;padding-left:24px}#rk-service-guide li+li{margin-top:8px}#rk-service-guide strong{color:var(--dark)}#rk-service-guide section[id]{scroll-margin-top:28px}
#rk-service-guide .rk-shell{position:relative;overflow:hidden;background:var(--white);border:1px solid var(--line);border-radius:28px;box-shadow:0 24px 65px rgba(16,37,54,.10)}#rk-service-guide .rk-progress-track{position:absolute;top:0;left:0;right:0;z-index:6;height:6px;background:rgba(255,255,255,.15)}#rk-service-guide .rk-progress{width:0;height:100%;background:linear-gradient(90deg,var(--cyan),var(--orange))}
#rk-service-guide .rk-hero{position:relative;overflow:hidden;color:#fff;background:radial-gradient(circle at 88% 18%,rgba(37,199,216,.24),transparent 29%),radial-gradient(circle at 8% 110%,rgba(255,106,61,.20),transparent 33%),linear-gradient(130deg,#0f2738 0%,#143e53 58%,#102536 100%)}#rk-service-guide .rk-hero:after{content:"";position:absolute;top:-55%;right:-7%;width:310px;height:620px;border:34px solid rgba(255,255,255,.05);border-radius:50%;transform:rotate(-15deg)}#rk-service-guide .rk-hero-inner{position:relative;z-index:2;padding:72px 72px 64px}#rk-service-guide .rk-eyebrow,#rk-service-guide .rk-kicker{display:inline-flex;align-items:center;gap:9px;color:var(--blue);font-size:.72rem;font-weight:900;letter-spacing:.08em;line-height:1.35;text-transform:uppercase}#rk-service-guide .rk-eyebrow{color:#8cf3ff}#rk-service-guide .rk-eyebrow b{width:9px;height:9px;border-radius:99px;background:var(--orange);box-shadow:0 0 0 7px rgba(255,106,61,.14)}#rk-service-guide .rk-hero-title{max-width:980px;margin:18px 0 20px;color:#fff;font-size:clamp(2rem,4.5vw,4rem);font-weight:950;letter-spacing:-.045em;line-height:1.02}#rk-service-guide .rk-hero-lead{max-width:900px;margin-bottom:28px;color:#dceef4;font-size:1.09rem;line-height:1.68}#rk-service-guide .rk-meta{display:flex;flex-wrap:wrap;gap:11px 24px;color:#b9d5df;font-size:.76rem;font-weight:750}#rk-service-guide .rk-meta span{display:inline-flex;align-items:center;gap:8px}#rk-service-guide .rk-meta i{width:7px;height:7px;border-radius:99px;background:var(--cyan)}
#rk-service-guide .rk-nav{padding:24px 34px 25px;border-bottom:1px solid var(--line);background:#fbfdfe}#rk-service-guide .rk-nav strong{display:block;margin:0 0 12px;color:var(--muted);font-size:.68rem;font-weight:900;letter-spacing:.07em;text-transform:uppercase}#rk-service-guide .rk-nav-links{display:flex;flex-wrap:wrap;gap:8px}#rk-service-guide .rk-nav a{display:inline-flex;align-items:center;min-height:39px;padding:8px 14px;color:var(--dark);font-size:.72rem;font-weight:850;line-height:1.25;text-decoration:none;background:#edf5f8;border:1px solid transparent;border-radius:999px;transition:.2s ease}#rk-service-guide .rk-nav a:hover,#rk-service-guide .rk-nav a:focus-visible{color:var(--blue);border-color:var(--cyan);background:var(--cyan-soft);transform:translateY(-1px)}
#rk-service-guide .rk-section{padding:68px 72px;border-bottom:1px solid var(--line)}#rk-service-guide .rk-section:nth-of-type(even){background:#fcfeff}#rk-service-guide h2{max-width:960px;margin:9px 0 21px;color:var(--dark);font-size:clamp(1.65rem,3.2vw,2.65rem);font-weight:950;letter-spacing:-.035em;line-height:1.12}#rk-service-guide h3{margin:0 0 10px;color:var(--dark);font-size:1.14rem;font-weight:900;letter-spacing:-.015em;line-height:1.28}#rk-service-guide h4{margin:0 0 8px;color:var(--dark);font-size:.92rem;font-weight:900;line-height:1.35}#rk-service-guide .rk-intro{max-width:950px;color:var(--text);font-size:1.05rem}
#rk-service-guide .rk-answer{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(260px,.75fr);overflow:hidden;margin:30px 0;border:1px solid var(--line);border-radius:20px}#rk-service-guide .rk-answer-main{padding:30px;background:var(--cyan-soft)}#rk-service-guide .rk-answer-side{padding:30px;background:var(--dark)}#rk-service-guide .rk-answer-side h3{color:#fff}#rk-service-guide .rk-answer-side p{color:#d7e9ef}#rk-service-guide .rk-grid-2,#rk-service-guide .rk-grid-3,#rk-service-guide .rk-grid-4{display:grid;gap:18px;margin-top:26px}#rk-service-guide .rk-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}#rk-service-guide .rk-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}#rk-service-guide .rk-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}#rk-service-guide .rk-card{padding:25px;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 12px 30px rgba(16,37,54,.045)}#rk-service-guide .rk-card p:last-child{margin-bottom:0}#rk-service-guide .rk-card-number{display:block;margin-bottom:15px;color:var(--blue);font-size:.66rem;font-weight:950;letter-spacing:.06em;text-transform:uppercase}
#rk-service-guide .rk-notice{margin:26px 0 0;padding:20px 22px;border:1px solid var(--line);border-left:5px solid var(--blue);border-radius:14px;background:var(--cyan-soft)}#rk-service-guide .rk-notice.is-orange{border-left-color:var(--orange);background:var(--orange-soft)}#rk-service-guide .rk-notice.is-green{border-left-color:var(--green);background:var(--green-soft)}#rk-service-guide .rk-notice.is-yellow{border-left-color:var(--yellow);background:var(--yellow-soft)}#rk-service-guide .rk-notice p:last-child{margin-bottom:0}
#rk-service-guide .rk-tool{overflow:hidden;margin-top:30px;color:#eaf6fa;background:var(--dark);border:1px solid #305269;border-radius:24px;box-shadow:0 22px 46px rgba(16,37,54,.18)}#rk-service-guide .rk-tool strong,#rk-service-guide .rk-tool h3,#rk-service-guide .rk-tool h4{color:#fff}#rk-service-guide .rk-tool p{color:#c7dce4}#rk-service-guide .rk-tool-head{display:flex;align-items:flex-start;justify-content:space-between;gap:26px;padding:30px 34px;background:linear-gradient(135deg,#14384d,#174d61);border-bottom:1px solid #31566c}#rk-service-guide .rk-tool-head p{max-width:790px;margin:5px 0 0;font-size:.82rem}#rk-service-guide .rk-reset{flex:0 0 auto;min-height:42px;padding:9px 16px;color:#dff8fc;font:inherit;font-size:.72rem;font-weight:850;cursor:pointer;border:1px solid #50778a;border-radius:999px;background:rgba(255,255,255,.06)}#rk-service-guide .rk-input-panel{padding:28px 34px 32px;border-bottom:1px solid #31566c}#rk-service-guide .rk-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}#rk-service-guide .rk-field{min-width:0}#rk-service-guide .rk-field label{display:block;min-height:42px;margin-bottom:7px;color:#ecf8fb;font-size:.69rem;font-weight:850;line-height:1.35}#rk-service-guide .rk-field select{width:100%;height:46px;margin:0;padding:9px 12px;color:var(--dark);font:inherit;font-size:.80rem;background:#fff;border:1px solid #a9c0cb;border-radius:9px;outline:none}#rk-service-guide .rk-field select:focus{border-color:var(--cyan);box-shadow:0 0 0 3px rgba(37,199,216,.16)}
#rk-service-guide .rk-live{padding:26px 34px;border-bottom:1px solid #31566c;background:#112c3e}#rk-service-guide .rk-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}#rk-service-guide .rk-summary-card{min-width:0;padding:16px 14px;background:#17384a;border:1px solid #3b6074;border-radius:13px}#rk-service-guide .rk-summary-card span{display:block;min-height:34px;color:#9db9c4;font-size:.58rem;font-weight:800;line-height:1.35;text-transform:uppercase}#rk-service-guide .rk-summary-card strong{display:block;margin-top:7px;color:#fff;font-size:.94rem;line-height:1.2;overflow-wrap:anywhere}#rk-service-guide .rk-decision{margin:28px 34px 18px;padding:25px 26px;background:#173344;border:1px solid #3d6073;border-left:6px solid var(--cyan);border-radius:17px}#rk-service-guide .rk-decision.is-ok{border-left-color:var(--green)}#rk-service-guide .rk-decision.is-warn{border-left-color:var(--orange)}#rk-service-guide .rk-decision.is-stop{border-left-color:var(--red)}#rk-service-guide .rk-decision span{display:block;margin-bottom:7px;color:#8facb8;font-size:.61rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase}#rk-service-guide .rk-decision h3{font-size:1.28rem}#rk-service-guide .rk-decision p{margin:0;font-size:.77rem}
#rk-service-guide .rk-visual-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;padding:0 34px 18px;align-items:stretch}#rk-service-guide .rk-visual-card{display:flex;flex-direction:column;min-width:0;padding:22px;background:#173344;border:1px solid #3d6073;border-radius:17px}#rk-service-guide .rk-visual-card>p{margin-bottom:15px;font-size:.71rem}#rk-service-guide .rk-action-list{display:grid;gap:10px;margin-top:auto}#rk-service-guide .rk-action{position:relative;padding:13px 13px 13px 42px;color:#cfe2e9;font-size:.69rem;background:#102b3c;border:1px solid #35576a;border-radius:10px}#rk-service-guide .rk-action:before{content:"✓";position:absolute;left:12px;top:12px;display:grid;place-items:center;width:21px;height:21px;color:#fff;font-size:.62rem;font-weight:950;background:var(--green);border-radius:50%}#rk-service-guide .rk-timeline{display:grid;gap:12px;margin-top:auto}#rk-service-guide .rk-time{display:grid;grid-template-columns:105px minmax(0,1fr);gap:12px;align-items:start;padding:13px;background:#102b3c;border:1px solid #35576a;border-radius:10px}#rk-service-guide .rk-time b{color:#7ee7f2;font-size:.64rem;text-transform:uppercase}#rk-service-guide .rk-time span{color:#cfe2e9;font-size:.68rem;line-height:1.5}
#rk-service-guide .rk-diagnostics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;padding:0 34px 30px}#rk-service-guide .rk-diagnostic{padding:18px;background:#173344;border:1px solid #3d6073;border-left:5px solid var(--cyan);border-radius:13px}#rk-service-guide .rk-diagnostic.is-warn{border-left-color:var(--orange)}#rk-service-guide .rk-diagnostic.is-alert{border-left-color:var(--red)}#rk-service-guide .rk-diagnostic.is-ok{border-left-color:var(--green)}#rk-service-guide .rk-diagnostic span{display:block;margin-bottom:6px;color:#8facb8;font-size:.57rem;font-weight:850;letter-spacing:.05em;text-transform:uppercase}#rk-service-guide .rk-diagnostic strong{display:block;margin-bottom:7px;font-size:.86rem}#rk-service-guide .rk-diagnostic p{margin:0;color:#bdd1d9;font-size:.67rem;line-height:1.55}#rk-service-guide .rk-tool-note{margin:0;padding:0 34px 28px;color:#91adb8;font-size:.62rem}
#rk-service-guide .rk-cta{position:relative;overflow:hidden;margin:0;padding:46px 54px;color:#fff;background:linear-gradient(135deg,#102536,#165267)}#rk-service-guide .rk-cta:after{content:"";position:absolute;right:-90px;bottom:-120px;width:310px;height:310px;border:34px solid rgba(37,199,216,.10);border-radius:50%}#rk-service-guide .rk-cta>*{position:relative;z-index:2}#rk-service-guide .rk-cta h2{color:#fff}#rk-service-guide .rk-cta p{max-width:930px;color:#d6e8ee}#rk-service-guide .rk-cta-button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;margin-top:10px;padding:13px 23px;color:#fff!important;font-size:.82rem;font-weight:950;line-height:1.25;text-align:center;text-decoration:none!important;background:linear-gradient(135deg,var(--orange),#ff8a46);border:1px solid rgba(255,255,255,.22);border-radius:11px;box-shadow:0 12px 26px rgba(255,106,61,.24);transition:.2s ease}#rk-service-guide .rk-cta-button:hover{transform:translateY(-2px)}#rk-service-guide .rk-disclosure{display:block;max-width:850px;margin-top:12px;color:#9ebbc6;font-size:.60rem}
#rk-service-guide .rk-table-wrap{margin-top:28px}#rk-service-guide .rk-table{width:100%;border-collapse:separate;border-spacing:0;overflow:hidden;font-size:.81rem;border:1px solid var(--line);border-radius:16px}#rk-service-guide .rk-table th,#rk-service-guide .rk-table td{padding:15px 16px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}#rk-service-guide .rk-table th{color:#fff;font-size:.68rem;line-height:1.35;background:var(--dark)}#rk-service-guide .rk-table td{color:var(--text);background:#fff}#rk-service-guide .rk-table tbody tr:last-child td{border-bottom:0}#rk-service-guide .rk-table td strong{display:block}
#rk-service-guide .rk-errors{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:27px}#rk-service-guide .rk-error{display:grid;grid-template-columns:88px minmax(0,1fr);gap:17px;align-items:start;padding:20px;background:#fff;border:1px solid var(--line);border-radius:15px}#rk-service-guide .rk-error b{padding:8px;color:var(--red);font-size:.61rem;text-align:center;background:var(--red-soft);border-radius:8px}#rk-service-guide .rk-error p{margin:0;font-size:.81rem}#rk-service-guide .rk-checklist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin-top:26px}#rk-service-guide .rk-checkitem{position:relative;padding:15px 16px 15px 47px;color:var(--text);font-size:.80rem;background:#fff;border:1px solid var(--line);border-radius:12px}#rk-service-guide .rk-checkitem:before{content:"✓";position:absolute;left:15px;top:14px;display:grid;place-items:center;width:23px;height:23px;color:#fff;font-size:.65rem;font-weight:950;background:var(--green);border-radius:99px}
#rk-service-guide .rk-faq{display:grid;gap:11px;margin-top:26px}#rk-service-guide .rk-faq details{overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:13px}#rk-service-guide .rk-faq summary{position:relative;padding:19px 56px 19px 20px;color:var(--dark);font-size:.87rem;font-weight:900;cursor:pointer;list-style:none}#rk-service-guide .rk-faq summary::-webkit-details-marker{display:none}#rk-service-guide .rk-faq summary:after{content:"+";position:absolute;right:18px;top:50%;display:grid;place-items:center;width:27px;height:27px;color:var(--blue);font-size:1.1rem;background:var(--cyan-soft);border-radius:99px;transform:translateY(-50%)}#rk-service-guide .rk-faq details[open] summary:after{content:"−"}#rk-service-guide .rk-faq-answer{padding:0 20px 19px;color:var(--text);font-size:.83rem}#rk-service-guide .rk-source-box{margin-top:25px;padding:25px;background:var(--soft);border:1px solid var(--line);border-radius:15px}#rk-service-guide .rk-update{margin-top:15px;color:var(--muted);font-size:.67rem;font-weight:800}
#rk-service-guide .rk-author{margin:0;background:#f7fbfd;border-bottom:1px solid var(--line)}#rk-service-guide .rk-author>input{position:absolute;opacity:0;pointer-events:none}#rk-service-guide .rk-author-head{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:38px 52px 24px}#rk-service-guide .rk-author-head h2{margin-bottom:5px}#rk-service-guide .rk-author-head p{margin:0;color:var(--muted);font-size:.77rem}#rk-service-guide .rk-author-mark{color:var(--blue);font-size:.64rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase}#rk-service-guide .rk-author-layout{display:grid;grid-template-columns:300px minmax(0,1fr);border-top:1px solid var(--line)}#rk-service-guide .rk-author-side{padding:28px;text-align:center;background:var(--dark)}#rk-service-guide .rk-author-photo{width:150px;height:150px;margin:0 auto 17px;overflow:hidden;border:5px solid rgba(255,255,255,.12);border-radius:50%}#rk-service-guide .rk-author-photo img{width:100%;height:100%;object-fit:cover}#rk-service-guide .rk-author-name{color:#fff;font-size:1.1rem;font-weight:950}#rk-service-guide .rk-author-role{margin-top:6px;color:#afc9d3;font-size:.67rem;line-height:1.55}#rk-service-guide .rk-author-social-label{margin-top:24px;color:#87a6b2;font-size:.57rem;font-weight:900;letter-spacing:.05em;text-transform:uppercase}#rk-service-guide .rk-author-social{display:flex;justify-content:center;gap:9px;margin-top:10px}#rk-service-guide .rk-author-social a{display:grid;place-items:center;width:41px;height:41px;color:#cde2e9;border:1px solid #446577;border-radius:50%}#rk-service-guide .rk-author-social svg{width:18px;height:18px;fill:currentColor}#rk-service-guide .rk-author-main{padding:28px 34px 34px}#rk-service-guide .rk-author-quote{position:relative;margin:0 0 23px;padding:23px 24px 23px 63px;background:#fff;border:1px solid var(--line);border-radius:14px}#rk-service-guide .rk-author-quote:before{content:"“";position:absolute;left:20px;top:2px;color:var(--cyan);font-family:Georgia,serif;font-size:4rem;line-height:1}#rk-service-guide .rk-author-quote p{margin:0;color:var(--dark);font-size:.86rem;font-weight:750}#rk-service-guide .rk-author-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}#rk-service-guide .rk-author-tab{padding:9px 13px;color:var(--muted);font-size:.62rem;font-weight:900;cursor:pointer;background:#e8f1f5;border-radius:999px}#rk-service-guide .rk-author-panel{display:none;color:var(--text);font-size:.79rem}#rk-service-guide #rk-service-author-about:checked~.rk-author-layout .rk-author-panel-about,#rk-service-guide #rk-service-author-exp:checked~.rk-author-layout .rk-author-panel-exp,#rk-service-guide #rk-service-author-sites:checked~.rk-author-layout .rk-author-panel-sites{display:block}#rk-service-guide #rk-service-author-about:checked~.rk-author-layout label[for="rk-service-author-about"],#rk-service-guide #rk-service-author-exp:checked~.rk-author-layout label[for="rk-service-author-exp"],#rk-service-guide #rk-service-author-sites:checked~.rk-author-layout label[for="rk-service-author-sites"]{color:#fff;background:var(--blue)}#rk-service-guide .rk-site-links{display:flex;flex-wrap:wrap;gap:9px}#rk-service-guide .rk-site-links a{padding:8px 12px;font-size:.65rem;font-weight:850;text-decoration:none;background:var(--cyan-soft);border-radius:999px}#rk-service-guide .rk-final-cta{padding-top:58px;padding-bottom:58px}
#rk-service-guide .rk-author-lead{color:var(--dark);font-size:.88rem;font-weight:750}#rk-service-guide .rk-author-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:20px 0}#rk-service-guide .rk-author-fact{padding:14px 15px;background:#fff;border:1px solid var(--line);border-radius:11px}#rk-service-guide .rk-author-fact b{display:block;margin-bottom:4px;color:var(--blue);font-size:.58rem;letter-spacing:.05em;text-transform:uppercase}#rk-service-guide .rk-author-fact span{display:block;color:var(--dark);font-size:.71rem;font-weight:800;line-height:1.45}#rk-service-guide .rk-author-topics{display:flex;flex-wrap:wrap;gap:7px;margin:14px 0 18px;padding:0;list-style:none}#rk-service-guide .rk-author-topics li{margin:0;padding:7px 10px;color:var(--navy);font-size:.61rem;font-weight:800;background:var(--cyan-soft);border-radius:999px}#rk-service-guide .rk-author-method{margin-top:17px;padding:15px 17px;background:var(--green-soft);border-left:4px solid var(--green);border-radius:10px}#rk-service-guide .rk-author-method strong{display:block;margin-bottom:4px;font-size:.68rem}#rk-service-guide .rk-author-method p{margin:0;font-size:.70rem;line-height:1.55}
@media(max-width:980px){#rk-service-guide .rk-hero-inner,#rk-service-guide .rk-section{padding-left:42px;padding-right:42px}#rk-service-guide .rk-fields{grid-template-columns:repeat(2,minmax(0,1fr))}#rk-service-guide .rk-grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}#rk-service-guide .rk-grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}#rk-service-guide .rk-author-layout{grid-template-columns:255px minmax(0,1fr)}}
@media(max-width:760px){#rk-service-guide{margin:18px auto 46px;font-size:16px}#rk-service-guide .rk-shell{border-radius:18px}#rk-service-guide .rk-hero-inner{padding:54px 24px 42px}#rk-service-guide .rk-hero-title{font-size:clamp(2rem,11vw,3rem)}#rk-service-guide .rk-nav{padding:20px 18px}#rk-service-guide .rk-nav a{min-height:36px;padding:7px 11px;font-size:.66rem}#rk-service-guide .rk-section{padding:48px 22px}#rk-service-guide .rk-answer,#rk-service-guide .rk-grid-2,#rk-service-guide .rk-grid-3,#rk-service-guide .rk-grid-4,#rk-service-guide .rk-errors,#rk-service-guide .rk-checklist,#rk-service-guide .rk-visual-grid,#rk-service-guide .rk-diagnostics,#rk-service-guide .rk-author-layout{grid-template-columns:1fr}#rk-service-guide .rk-tool-head{display:block;padding:25px 20px}#rk-service-guide .rk-reset{margin-top:8px}#rk-service-guide .rk-input-panel,#rk-service-guide .rk-live{padding-left:20px;padding-right:20px}#rk-service-guide .rk-fields{grid-template-columns:1fr}#rk-service-guide .rk-field label{min-height:0}#rk-service-guide .rk-summary{grid-template-columns:repeat(2,minmax(0,1fr))}#rk-service-guide .rk-decision{margin-left:20px;margin-right:20px}#rk-service-guide .rk-visual-grid,#rk-service-guide .rk-diagnostics{padding-left:20px;padding-right:20px}#rk-service-guide .rk-tool-note{padding-left:20px;padding-right:20px}#rk-service-guide .rk-cta{padding:42px 24px}#rk-service-guide .rk-cta-button{width:100%}#rk-service-guide .rk-author-head{display:block;padding:34px 22px 22px}#rk-service-guide .rk-author-main{padding:24px 20px}#rk-service-guide .rk-author-facts{grid-template-columns:1fr}#rk-service-guide .rk-table{border:0;background:transparent}#rk-service-guide .rk-table thead{display:none}#rk-service-guide .rk-table tbody,#rk-service-guide .rk-table tr,#rk-service-guide .rk-table td{display:block;width:100%}#rk-service-guide .rk-table tr{overflow:hidden;margin-bottom:14px;border:1px solid var(--line);border-radius:14px;box-shadow:0 8px 22px rgba(16,37,54,.05)}#rk-service-guide .rk-table td{display:grid;grid-template-columns:minmax(105px,.75fr) minmax(0,1.25fr);gap:13px;padding:13px 15px;border-bottom:1px solid var(--line)}#rk-service-guide .rk-table td:before{content:attr(data-label);color:var(--muted);font-size:.61rem;font-weight:900;line-height:1.35;text-transform:uppercase}#rk-service-guide .rk-table td:last-child{border-bottom:0}}
@media(max-width:430px){#rk-service-guide .rk-summary{grid-template-columns:1fr 1fr}#rk-service-guide .rk-summary-card{padding:13px 11px}#rk-service-guide .rk-time{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){#rk-service-guide *,#rk-service-guide *:before,#rk-service-guide *:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
</style>

<article id="rk-service-guide" aria-label="Jak często serwisować ogrzewanie podłogowe">
<div class="rk-shell">
<div class="rk-progress-track" aria-hidden="true"><div class="rk-progress" id="rk-service-progress"></div></div>
<header class="rk-hero"><div class="rk-hero-inner"><span class="rk-eyebrow"><b aria-hidden="true"></b> Serwis • diagnostyka • hydraulika</span><div class="rk-hero-title">Podłogówki nie serwisuje się według jednego kalendarza. Najpierw sprawdza się objawy i wymagania urządzeń.</div><p class="rk-hero-lead">Zobacz, co kontrolować przed sezonem, kiedy reagować natychmiast oraz dlaczego sprawnej instalacji nie należy rutynowo płukać, odpowietrzać ani ponownie regulować.</p><div class="rk-meta"><span><i aria-hidden="true"></i>Czytanie: około 24 minut</span><span><i aria-hidden="true"></i>Asystent serwisu bez fikcyjnego kalkulatora</span><span><i aria-hidden="true"></i>Aktualizacja: 30 sierpnia 2026 r.</span></div></div></header>
<nav class="rk-nav" aria-label="Spis treści artykułu"><strong>Na skróty — wszystkie główne części poradnika</strong><div class="rk-nav-links"><a href="#rk-service-answer">Szybka odpowiedź</a><a href="#rk-service-scope">Zakres serwisu</a><a href="#rk-service-obligation">Czy obowiązkowy?</a><a href="#rk-service-schedule">Harmonogram</a><a href="#rk-service-user">Kontrola użytkownika</a><a href="#rk-service-tool-section">Asystent</a><a href="#rk-service-result">Odczyt wyniku</a><a href="#rk-service-manifold">Rozdzielacz</a><a href="#rk-service-pump">Pompa</a><a href="#rk-service-controls">Sterowanie</a><a href="#rk-service-pressure">Ciśnienie</a><a href="#rk-service-air">Odpowietrzanie</a><a href="#rk-service-flushing">Płukanie</a><a href="#rk-service-medium">Medium</a><a href="#rk-service-warning">Objawy</a><a href="#rk-service-records">Dane dla serwisu</a><a href="#rk-service-protocol">Protokół</a><a href="#rk-service-errors">Błędy</a><a href="#rk-service-faq">FAQ</a><a href="#rk-service-sources">Źródła</a></div></nav>
<main>
<section class="rk-section" id="rk-service-answer"><span class="rk-kicker">Szybka odpowiedź</span><h2>Jak często trzeba serwisować ogrzewanie podłogowe?</h2><div class="rk-answer"><div class="rk-answer-main"><p><strong>Nie istnieje jeden termin serwisu właściwy dla całej podłogówki.</strong> Źródło ciepła obsługuje się według jego instrukcji, wymagań gwarancyjnych i przepisów. Dostępne elementy hydrauliczne oraz automatykę warto skontrolować przed sezonem. Pętle, medium i nastawy diagnozuje się po ingerencji albo po wystąpieniu objawów — nie tylko dlatego, że minęły trzy lub pięć lat.</p><p>Jeżeli instalacja jest szczelna, przepływy są zgodne z dokumentacją, pomieszczenia osiągają zadane temperatury i nie pojawiają się błędy, nie należy profilaktycznie przestawiać rotametrów, dolewać wody ani wykonywać chemicznego płukania.</p></div><aside class="rk-answer-side"><h3>Najważniejsza zasada</h3><p>Serwis powinien zachować prawidłowe nastawy i wykrywać przyczynę problemu. Nie może tworzyć nowych problemów przez przypadkową regulację sprawnego układu.</p></aside></div><div class="rk-notice is-green"><p><strong>Praktyczne minimum:</strong> przed sezonem sprawdź reakcję wszystkich stref, stabilność ciśnienia, pracę pompy, widoczne połączenia rozdzielacza oraz komunikaty źródła ciepła. Zakres obsługi urządzenia ustal z jego dokumentacji.</p></div></section>

<section class="rk-section" id="rk-service-scope"><span class="rk-kicker">Trzy różne obszary</span><h2>Serwis źródła ciepła a kontrola podłogówki</h2><p class="rk-intro">Kocioł, pompa ciepła i wodne pętle podłogowe tworzą jeden system, ale nie mają identycznych czynności ani terminów obsługi.</p><div class="rk-grid-3"><div class="rk-card"><span class="rk-card-number">01 • urządzenie</span><h3>Źródło ciepła</h3><p>Zakres wynika z instrukcji, warunków gwarancji, konstrukcji urządzenia oraz właściwych przepisów. Może obejmować czynności niedotyczące samej podłogówki.</p></div><div class="rk-card"><span class="rk-card-number">02 • hydraulika</span><h3>Rozdzielacz i obieg</h3><p>Kontroluje się dostępne połączenia, przepływy, zawory, pompę, odpowietrzniki, separator oraz zachowanie ciśnienia.</p></div><div class="rk-card"><span class="rk-card-number">03 • automatyka</span><h3>Termostaty i siłowniki</h3><p>Sprawdza się, czy polecenie z termostatu dociera do listwy i czy właściwy siłownik rzeczywiście otwiera odpowiednią pętlę.</p></div></div><div class="rk-notice"><p>Kontrola palnika, spalin albo elementów pompy ciepła nie powinna być opisywana jako uniwersalny „serwis rur w podłodze”. Każdy obszar wymaga odpowiednich kompetencji i procedury.</p></div></section>

<section class="rk-section" id="rk-service-obligation"><span class="rk-kicker">Zalecenie to nie zawsze obowiązek</span><h2>Czy coroczny przegląd podłogówki jest obowiązkowy?</h2><p>Coroczna kontrola użytkowa przed sezonem jest rozsądną praktyką, ale nie należy przedstawiać jej jako jednego ustawowego obowiązku obejmującego każdą domową instalację podłogową. Osobne wymagania mogą dotyczyć instalacji gazowej, przewodów kominowych, źródła ciepła albo warunków gwarancji.</p><p>Właściciel powinien połączyć trzy poziomy wymagań:</p><ul><li>obowiązki wynikające z przepisów właściwych dla budynku i urządzeń,</li><li>harmonogram określony w dokumentacji producenta źródła i wyposażenia,</li><li>kontrolę działania podłogówki wynikającą z jej rzeczywistego stanu.</li></ul><div class="rk-notice is-yellow"><p><strong>Nie używamy zdania „każdą podłogówkę trzeba obowiązkowo serwisować raz w roku”.</strong> Poprawne jest zalecenie kontroli przed sezonem, z wyraźnym oddzieleniem jej od prawnych i gwarancyjnych wymagań dotyczących konkretnych urządzeń.</p></div></section>

<section class="rk-section" id="rk-service-schedule"><span class="rk-kicker">Zdarzenia zamiast sztywnej daty</span><h2>Harmonogram serwisu ogrzewania podłogowego</h2><div class="rk-table-wrap"><table class="rk-table"><thead><tr><th>Moment</th><th>Zakres kontroli</th><th>Czego nie robić automatycznie</th></tr></thead><tbody><tr><td data-label="Moment"><strong>Na bieżąco</strong></td><td data-label="Zakres">Obserwacja komfortu, komunikatów, wycieków i nietypowych dźwięków</td><td data-label="Nie robić">Nie dopuszczać stale wody bez znalezienia ubytku</td></tr><tr><td data-label="Moment"><strong>Przed sezonem</strong></td><td data-label="Zakres">Test stref, pompy, siłowników, ciśnienia i widocznych elementów rozdzielacza</td><td data-label="Nie robić">Nie zmieniać sprawdzonych nastaw przepływu</td></tr><tr><td data-label="Moment"><strong>Według instrukcji</strong></td><td data-label="Zakres">Źródło ciepła, filtry, separatory i elementy wymagające obsługi</td><td data-label="Nie robić">Nie przenosić jednego interwału na wszystkie urządzenia</td></tr><tr><td data-label="Moment"><strong>Po ingerencji</strong></td><td data-label="Zakres">Szczelność, odpowietrzenie, ciśnienie, przepływy i zgodność ustawień</td><td data-label="Nie robić">Nie uruchamiać bez protokołu nowych nastaw</td></tr><tr><td data-label="Moment"><strong>Po objawie</strong></td><td data-label="Zakres">Diagnostyka przyczyny hydraulicznej, elektrycznej albo jakości medium</td><td data-label="Nie robić">Nie płukać i nie odpowietrzać „na próbę”</td></tr></tbody></table></div></section>

<section class="rk-section" id="rk-service-user"><span class="rk-kicker">Bez rozbierania instalacji</span><h2>Co użytkownik może sprawdzić samodzielnie?</h2><p>Użytkownik nie musi regulować układu, aby wcześnie zauważyć zmianę. Największą wartość daje porównanie z wcześniejszym, prawidłowym stanem.</p><div class="rk-grid-4"><div class="rk-card"><h3>Ciśnienie</h3><p>Zapisz odczyt przy podobnej temperaturze instalacji. Ważniejszy od jednej liczby jest trend i częstotliwość uzupełniania.</p></div><div class="rk-card"><h3>Przepływy</h3><p>Porównaj rotametry z protokołem lub zdjęciem nastaw, gdy wszystkie właściwe strefy są otwarte.</p></div><div class="rk-card"><h3>Reakcja stref</h3><p>Sprawdź, czy termostat wywołuje żądanie i czy odpowiedni siłownik reaguje po czasie wymaganym dla jego konstrukcji.</p></div><div class="rk-card"><h3>Widoczne elementy</h3><p>Szukaj wilgoci, osadu, śladów korozji, uszkodzeń przewodów i niepokojących komunikatów.</p></div></div><div class="rk-notice is-orange"><p><strong>Nie zdejmuj zabezpieczeń urządzeń gazowych ani elektrycznych i nie obracaj przypadkowo rotametrów.</strong> Zdjęcie rozdzielacza oraz zapis wartości przed ingerencją często są dla diagnostyki cenniejsze niż samodzielna próba naprawy.</p></div></section>

<section class="rk-section" id="rk-service-tool-section"><span class="rk-kicker">Interaktywny asystent</span><h2>Sprawdź, jakiej reakcji wymaga Twoja instalacja</h2><p class="rk-intro">To nie jest kalkulator terminów. Asystent porządkuje objawy i kieruje do obserwacji, kontroli przedsezonowej albo diagnostyki. Nie rozpoznaje usterki bez pomiarów.</p><div class="rk-tool" id="rk-service-tool"><div class="rk-tool-head"><div><h3>Asystent serwisu i diagnostyki podłogówki</h3><p>Wybierz stan faktyczny. Wynik zmieni się natychmiast i pokaże, czego nie należy robić bez rozpoznania przyczyny.</p></div><button class="rk-reset" id="rk-service-reset" type="button">Przywróć przykład</button></div><div class="rk-input-panel"><div class="rk-fields">
<div class="rk-field"><label for="rk-service-source">Źródło ciepła</label><select id="rk-service-source"><option value="heatpump">Pompa ciepła</option><option value="gas" selected>Kocioł gazowy</option><option value="solid">Kocioł na paliwo stałe</option><option value="other">Inne / nie wiem</option></select></div>
<div class="rk-field"><label for="rk-service-operation">Ogólna praca instalacji</label><select id="rk-service-operation"><option value="normal" selected>Działa prawidłowo</option><option value="uneven">Nierówne temperatury</option><option value="noheat">Brak ogrzewania</option></select></div>
<div class="rk-field"><label for="rk-service-pressure-input">Zachowanie ciśnienia</label><select id="rk-service-pressure-input"><option value="stable" selected>Stabilne</option><option value="slow">Powoli spada</option><option value="rapid">Gwałtownie spada</option><option value="unknown">Nie wiem</option></select></div>
<div class="rk-field"><label for="rk-service-leak">Widoczne ślady wycieku</label><select id="rk-service-leak"><option value="none" selected>Brak</option><option value="moist">Wilgoć / ślady</option><option value="visible">Aktywny wyciek</option></select></div>
<div class="rk-field"><label for="rk-service-flow">Przepływy na rotametrach</label><select id="rk-service-flow"><option value="normal" selected>Stabilne / zgodne</option><option value="changed">Zmieniły się</option><option value="zero">Jedna lub więcej pętli: zero</option><option value="unknown">Brak danych</option></select></div>
<div class="rk-field"><label for="rk-service-noise">Dźwięki instalacji</label><select id="rk-service-noise"><option value="none" selected>Brak nietypowych</option><option value="gurgle">Bulgotanie</option><option value="whistle">Szum / gwizd</option><option value="mechanical">Hałas mechaniczny pompy</option></select></div>
<div class="rk-field"><label for="rk-service-controls-input">Automatyka i siłowniki</label><select id="rk-service-controls-input"><option value="normal" selected>Reagują prawidłowo</option><option value="one">Problem jednej strefy</option><option value="many">Wiele stref nie reaguje</option><option value="unknown">Nie sprawdzono</option></select></div>
<div class="rk-field"><label for="rk-service-intervention">Ostatnia ingerencja</label><select id="rk-service-intervention"><option value="none" selected>Brak ostatnich zmian</option><option value="refill">Opróżnienie / napełnienie</option><option value="modernization">Modernizacja / wymiana elementu</option></select></div>
<div class="rk-field"><label for="rk-service-medium-input">Medium w instalacji</label><select id="rk-service-medium-input"><option value="water" selected>Znana woda instalacyjna</option><option value="antifreeze">Płyn niezamarzający</option><option value="unknown">Nieznane</option></select></div>
<div class="rk-field"><label for="rk-service-documentation">Dokumentacja nastaw</label><select id="rk-service-documentation"><option value="yes" selected>Projekt / protokół jest</option><option value="photo">Tylko zdjęcia / częściowe dane</option><option value="no">Brak</option></select></div>
<div class="rk-field"><label for="rk-service-last">Ostatnia kontrola działania</label><select id="rk-service-last"><option value="recent" selected>W bieżącym lub poprzednim sezonie</option><option value="old">Dawniej</option><option value="unknown">Nie wiadomo</option></select></div>
<div class="rk-field"><label for="rk-service-source-due">Serwis źródła według instrukcji</label><select id="rk-service-source-due"><option value="current" selected>Aktualny</option><option value="due">Termin zbliża się / minął</option><option value="unknown">Nie sprawdzono</option></select></div>
</div></div>
<div class="rk-live" aria-live="polite"><div class="rk-summary"><div class="rk-summary-card"><span>Poziom reakcji</span><strong id="rk-service-level">—</strong></div><div class="rk-summary-card"><span>Najbliższy krok</span><strong id="rk-service-next">—</strong></div><div class="rk-summary-card"><span>Regulacja przepływów</span><strong id="rk-service-balance">—</strong></div><div class="rk-summary-card"><span>Płukanie instalacji</span><strong id="rk-service-flush-out">—</strong></div></div></div>
<div class="rk-decision" id="rk-service-decision-card"><span>Wynik asystenta</span><h3 id="rk-service-decision-title">—</h3><p id="rk-service-decision-text">—</p></div>
<div class="rk-visual-grid"><div class="rk-visual-card"><h3>Zalecana kolejność</h3><p>Lista aktualizuje się zgodnie z wybranymi objawami.</p><div class="rk-action-list" id="rk-service-actions"></div></div><div class="rk-visual-card"><h3>Harmonogram zdarzeniowy</h3><p>Nie wyznacza daty płukania. Pokazuje momenty, w których kontrola ma techniczne uzasadnienie.</p><div class="rk-timeline"><div class="rk-time"><b>Na bieżąco</b><span>Obserwuj komunikaty, komfort, wycieki i nietypowe dźwięki.</span></div><div class="rk-time"><b>Przed sezonem</b><span>Przetestuj źródło, pompę, strefy, ciśnienie i rozdzielacz.</span></div><div class="rk-time"><b>Po ingerencji</b><span>Sprawdź szczelność, powietrze, przepływy i zapis nowych nastaw.</span></div><div class="rk-time"><b>Po objawie</b><span>Najpierw diagnozuj przyczynę; nie wykonuj przypadkowego płukania.</span></div></div></div></div>
<div class="rk-diagnostics"><div class="rk-diagnostic" id="rk-service-safety-card"><span>Bezpieczeństwo</span><strong id="rk-service-safety-title">—</strong><p id="rk-service-safety-text">—</p></div><div class="rk-diagnostic" id="rk-service-hyd-card"><span>Hydraulika</span><strong id="rk-service-hyd-title">—</strong><p id="rk-service-hyd-text">—</p></div><div class="rk-diagnostic" id="rk-service-doc-card"><span>Dokumentacja</span><strong id="rk-service-doc-title">—</strong><p id="rk-service-doc-text">—</p></div></div><p class="rk-tool-note">Asystent nie mierzy ciśnienia, temperatur, przepływów ani parametrów elektrycznych. Wynik ma charakter edukacyjny i nie zastępuje oględzin.</p></div></section>

<section class="rk-cta rk-sales-cta" aria-label="Zamów projekt lub korektę hydrauliki"><span class="rk-kicker" style="color:#79e8f3">Gdy problem wraca mimo kolejnych interwencji</span><h2>Nie każda usterka oznacza konieczność płukania</h2><p>Powtarzające się zapowietrzanie, brak przepływu albo nierówne temperatury mogą wynikać z niewłaściwej pompy, oporu krytycznej pętli, średnicy magistrali, błędnych nastaw lub braku równoważenia. Bez długości obwodów, wymaganych przepływów i strat ciśnienia serwis często kończy się regulacją metodą prób.</p><a class="rk-cta-button" href="https://projekt-ogrzewania.pl/produkt/projekt-instalacji-ogrzewania-podlogowego-podlogowki/">Zamów projekt lub korektę hydrauliki instalacji</a><small class="rk-disclosure">Projekt nie zastępuje naprawy awaryjnej. Przy aktywnym wycieku, błędzie urządzenia albo zagrożeniu bezpieczeństwa najpierw potrzebny jest właściwy serwis na miejscu.</small></section>

<section class="rk-section" id="rk-service-result"><span class="rk-kicker">Interpretacja</span><h2>Jak czytać wynik asystenta serwisu?</h2><div class="rk-grid-4"><div class="rk-card"><h3>Obserwacja</h3><p>Instalacja nie pokazuje nieprawidłowości. Zachowaj wartości bazowe i wykonaj zwykłą kontrolę przed sezonem.</p></div><div class="rk-card"><h3>Kontrola planowa</h3><p>Nie ma objawu awaryjnego, ale termin źródła lub dokumentacja wymagają uzupełnienia.</p></div><div class="rk-card"><h3>Diagnostyka</h3><p>Zmiana przepływu, temperatury albo automatyki wymaga pomiarów przed regulacją czy płukaniem.</p></div><div class="rk-card"><h3>Pilna reakcja</h3><p>Aktywny wyciek, szybki spadek ciśnienia lub brak ogrzewania przy mrozie wymagają zabezpieczenia i kontaktu z serwisem.</p></div></div><div class="rk-notice"><p>Wynik wskazuje <strong>poziom reakcji</strong>, a nie nazwę uszkodzonego elementu. Ten sam objaw może mieć przyczynę hydrauliczną, elektryczną, automatyczną albo wynikać z pracy źródła ciepła.</p></div></section>
<section class="rk-section" id="rk-service-manifold"><span class="rk-kicker">Dostępny punkt kontroli</span><h2>Jak sprawdzić rozdzielacz i rotametry?</h2><p>Rozdzielacz pozwala porównać pracę równoległych pętli, ale sam odczyt rotametru nie wyjaśnia przyczyny zmiany. Kontrolę wykonuje się przy znanym stanie pompy, otwartych właściwych strefach i ustabilizowanej pracy.</p><div class="rk-grid-3"><div class="rk-card"><h3>Oględziny</h3><p>Sprawdź połączenia, ślady wilgoci, osady, stan izolacji, odpowietrzniki i zawory serwisowe.</p></div><div class="rk-card"><h3>Porównanie</h3><p>Zestaw wskazania ze zdjęciem lub protokołem. Różne pętle nie muszą mieć identycznych przepływów.</p></div><div class="rk-card"><h3>Reakcja zaworów</h3><p>Sprawdź, czy zawór nie pozostał zamknięty i czy siłownik otrzymuje sygnał. Nie odkręcaj rotametru bez rozpoznania.</p></div></div><p>Jeżeli potrzebujesz prawidłowej metody odczytu i ustawiania, zobacz poradnik: <a href="https://projekt-ogrzewania.pl/rotametr-wskaznik-przeplywu-w-rozdzielaczu-ogrzewania-podlogowego/">rotametr w ogrzewaniu podłogowym</a>. Budowę całego zespołu rozwija opracowanie o <a href="https://projekt-ogrzewania.pl/rozdzielacz-do-podlogowki-kluczowy-element-systemu-ogrzewania-podlogowego/">rozdzielaczu do podłogówki</a>.</p></section>

<section class="rk-section" id="rk-service-pump"><span class="rk-kicker">Nie tylko „czy się obraca”</span><h2>Co kontrolować przy pompie obiegowej?</h2><p>Pompa powinna zapewnić sumę przepływów przy oporze obiegu krytycznego. Serwis nie polega na automatycznym ustawieniu najwyższego biegu. Zbyt duża dyspozycja może powodować szum i niepotrzebne zużycie energii, a zbyt mała — ograniczać przepływy w wymagających obwodach.</p><div class="rk-grid-2"><div class="rk-card"><h3>Sprawdź przed zmianą nastawy</h3><ul><li>tryb pracy i aktualne ustawienie,</li><li>liczbę faktycznie otwartych pętli,</li><li>przepływy na rozdzielaczu,</li><li>stan filtra i separatora,</li><li>temperatury zasilania oraz powrotu.</li></ul><h4>Zmiana nastawy pompy</h4><p>Ma sens dopiero po porównaniu przepływów i oporu obiegu krytycznego z wymaganym punktem pracy.</p></div><div class="rk-card"><h3>Sygnały do diagnostyki</h3><ul><li>hałas mechaniczny albo wibracje,</li><li>duży szum przepływu,</li><li>brak wskazań mimo otwartych zaworów,</li><li>częste błędy źródła związane z przepływem,</li><li>gwałtowna zmiana po modernizacji.</li></ul><h4>Najwyższy bieg nie jest testem naprawczym</h4><p>Może chwilowo zmienić objaw, ale nie rozstrzyga, czy przyczyną jest pompa, zawór, powietrze albo nadmierny opór.</p></div></div><p>Dobór punktu pracy omawia <a href="https://projekt-ogrzewania.pl/kalkulator-doboru-pompy-obiegowej-w-ogrzewaniu-podlogowym/">kalkulator doboru pompy obiegowej w podłogówce</a>.</p></section>

<section class="rk-section" id="rk-service-controls"><span class="rk-kicker">Termostat nie otwiera rury bezpośrednio</span><h2>Jak sprawdzić siłowniki i sterowanie strefowe?</h2><p>Test powinien prześledzić cały łańcuch: termostat — listwa — zasilanie — siłownik — trzpień zaworu — przepływ. Brak grzania jednej strefy nie oznacza automatycznie zapowietrzonej pętli.</p><div class="rk-table-wrap"><table class="rk-table"><thead><tr><th>Objaw</th><th>Co zweryfikować</th><th>Częsty błąd</th></tr></thead><tbody><tr><td data-label="Objaw"><strong>Jedna strefa nie grzeje</strong></td><td data-label="Weryfikacja">Żądanie termostatu, kanał listwy, siłownik, trzpień i przepływ</td><td data-label="Błąd">Natychmiastowe płukanie pętli</td></tr><tr><td data-label="Objaw"><strong>Wiele stref nie reaguje</strong></td><td data-label="Weryfikacja">Zasilanie listwy, bezpiecznik, tryb źródła i sygnał pompy</td><td data-label="Błąd">Regulowanie każdego rotametru osobno</td></tr><tr><td data-label="Objaw"><strong>Strefa przegrzewa</strong></td><td data-label="Weryfikacja">Pozycję zaworu, zgodność siłownika, konfigurację termostatu i bezwładność</td><td data-label="Błąd">Założenie, że większa temperatura podłogi oznacza większą sprawność</td></tr></tbody></table></div><div class="rk-notice is-yellow"><p>Siłownik typu NC jest zwykle zamknięty bez zasilania, a jego pełne otwarcie może wymagać kilku minut. Stan trzeba oceniać zgodnie z dokumentacją konkretnego rozwiązania.</p></div></section>

<section class="rk-section" id="rk-service-pressure"><span class="rk-kicker">Liczy się punkt odniesienia</span><h2>Jak interpretować ciśnienie w instalacji?</h2><p>Nie ma jednej prawidłowej wartości 1,0–1,5 bara dla każdego domu. Ciśnienie napełnienia zależy od wysokości statycznej, miejsca manometru, ciśnienia wstępnego naczynia, temperatury oraz wymagań źródła ciepła.</p><div class="rk-grid-3"><div class="rk-card"><h3>Stabilna wartość</h3><p>Porównuj ją w podobnej temperaturze. Niewielka zmiana podczas nagrzewania jest naturalna.</p></div><div class="rk-card"><h3>Powolny spadek</h3><p>Sprawdź widoczne połączenia, odpowietrzniki, zawór bezpieczeństwa i naczynie. Nie dolewaj w nieskończoność.</p></div><div class="rk-card"><h3>Duży skok</h3><p>Znaczna różnica między zimnym i ciepłym układem może wskazywać między innymi na problem z naczyniem przeponowym.</p></div></div><div class="rk-notice is-orange"><p><strong>Gwałtowny spadek lub aktywny wyciek wymaga pilnej reakcji.</strong> Zabezpiecz urządzenia zgodnie z instrukcją i skontaktuj się z właściwym serwisem. Nie zakrywaj widocznej nieszczelności kolejnym uzupełnieniem wody.</p></div></section>

<section class="rk-section" id="rk-service-air"><span class="rk-kicker">Objaw nie jest przyczyną</span><h2>Czy podłogówkę trzeba odpowietrzać co roku?</h2><p>Nie. Szczelna, prawidłowo napełniona instalacja nie powinna wymagać sezonowego odpowietrzania pętli. Jednorazowa obecność powietrza po napełnieniu lub naprawie jest czymś innym niż regularnie powracający problem.</p><div class="rk-grid-2"><div class="rk-card"><h3>Kiedy odpowietrzenie ma sens?</h3><ul><li>po opróżnieniu i ponownym napełnieniu,</li><li>po wymianie elementu obiegu,</li><li>gdy pomiary i objawy wskazują na powietrze,</li><li>podczas prawidłowego uruchomienia nowych pętli.</li></ul></div><div class="rk-card"><h3>Gdy problem powraca</h3><ul><li>sprawdź stabilność ciśnienia,</li><li>stan naczynia i odpowietrzników,</li><li>możliwość zasysania powietrza,</li><li>częste dopuszczanie świeżej wody,</li><li>procesy zachodzące w medium.</li></ul></div></div><p>Odpowietrzanie usuwa nagromadzony gaz, ale nie naprawia automatycznie zaworu, siłownika, pompy ani błędnej hydrauliki.</p></section>

<section class="rk-section" id="rk-service-flushing"><span class="rk-kicker">Nie według kalendarza</span><h2>Co ile lat płukać ogrzewanie podłogowe?</h2><p><strong>Nie należy ustalać rutynowego płukania co 3–5 lat dla każdej instalacji.</strong> Prawidłowo wykonany, szczelny i czysty układ zamknięty może pracować bez okresowego opróżniania. Każde napełnienie świeżą wodą zmienia warunki chemiczne i może wprowadzić tlen oraz zanieczyszczenia.</p><h3>Kiedy rozważyć płukanie?</h3><ul><li>zanieczyszczenia są widoczne w filtrze lub separatorze i potwierdzone diagnostyką,</li><li>przepływ pozostaje ograniczony mimo sprawnego zaworu oraz prawidłowej pracy pompy,</li><li>doszło do zmieszania nieznanych albo niekompatybilnych mediów,</li><li>instalacja została przebudowana lub otwarta podczas naprawy,</li><li>występują problemy z zaworami, wymiennikiem albo elementami wrażliwymi na osad.</li></ul><h4>Czyszczenie mechaniczne czy chemiczne?</h4><p>Metodę dobiera się do rodzaju zanieczyszczeń, materiałów i elementów instalacji. Sam brak przepływu nie jest jeszcze podstawą do zastosowania środka chemicznego.</p><div class="rk-notice is-yellow"><p>Czyszczenie chemiczne wymaga rozpoznania materiałów i rodzaju zanieczyszczeń. Zbyt agresywny preparat, niepełne wypłukanie lub przypadkowe dodatki mogą pogorszyć stan układu.</p></div></section>

<section class="rk-section" id="rk-service-medium"><span class="rk-kicker">Woda i płyn niezamarzający</span><h2>Czy medium grzewcze trzeba okresowo wymieniać?</h2><p>Wody w szczelnej instalacji nie wymienia się tylko dlatego, że upłynął określony czas. Płyn niezamarzający kontroluje się według parametrów i kryteriów właściwych dla konkretnego produktu. Dotyczy to między innymi stężenia, ochrony przed zamarzaniem, pH oraz stanu dodatków.</p><div class="rk-grid-3"><div class="rk-card"><h3>Znana woda</h3><p>Kontroluj szczelność układu i wymagane parametry. Ograniczaj dopuszczanie świeżej wody.</p></div><div class="rk-card"><h3>Płyn niezamarzający</h3><p>Termin badania i kryteria wymiany wynikają z dokumentacji preparatu oraz warunków pracy.</p></div><div class="rk-card"><h3>Medium nieznane</h3><p>Nie dolewaj przypadkowego inhibitora ani glikolu. Najpierw zidentyfikuj medium i materiały.</p></div></div><p>Dobór, napełnianie i wpływ właściwości medium na hydraulikę wyjaśnia artykuł <a href="https://projekt-ogrzewania.pl/czym-napelnic-instalacje-ogrzewania-podlogowego/">czym napełnić instalację ogrzewania podłogowego</a>.</p></section>

<section class="rk-section" id="rk-service-warning"><span class="rk-kicker">Nie czekaj na coroczny termin</span><h2>Objawy wymagające szybkiej reakcji</h2><div class="rk-table-wrap"><table class="rk-table"><thead><tr><th>Objaw</th><th>Pierwsza reakcja</th><th>Czego nie przesądza</th></tr></thead><tbody><tr><td data-label="Objaw"><strong>Aktywny wyciek</strong></td><td data-label="Reakcja">Zabezpiecz układ według instrukcji i wezwij właściwy serwis</td><td data-label="Nie przesądza">Miejsca uszkodzenia pętli w posadzce</td></tr><tr><td data-label="Objaw"><strong>Szybki spadek ciśnienia</strong></td><td data-label="Reakcja">Przerwij rutynowe dopuszczanie i ustal miejsce utraty medium</td><td data-label="Nie przesądza">Automatycznie nieszczelnej rury pod podłogą</td></tr><tr><td data-label="Objaw"><strong>Brak przepływu pętli</strong></td><td data-label="Reakcja">Sprawdź zawór, siłownik, pompę, powietrze i opory</td><td data-label="Nie przesądza">Konieczności chemicznego płukania</td></tr><tr><td data-label="Objaw"><strong>Nierówne temperatury</strong></td><td data-label="Reakcja">Porównaj sterowanie, przepływy, okładziny i warunki pomieszczeń</td><td data-label="Nie przesądza">Zapowietrzenia albo osadu</td></tr><tr><td data-label="Objaw"><strong>Hałas pompy</strong></td><td data-label="Reakcja">Sprawdź warunki hydrauliczne i stan urządzenia</td><td data-label="Nie przesądza">Wyłącznie obecności powietrza</td></tr></tbody></table></div><div class="rk-notice is-orange"><p>Przy braku ogrzewania podczas mrozu, komunikacie bezpieczeństwa źródła, zapachu gazu albo zagrożeniu elektrycznym postępuj zgodnie z instrukcją awaryjną właściwego urządzenia i korzystaj z odpowiednich służb lub serwisu.</p></div></section>

<section class="rk-section" id="rk-service-records"><span class="rk-kicker">Dane skracają diagnostykę</span><h2>Co zapisać przed wezwaniem serwisanta?</h2><div class="rk-checklist"><div class="rk-checkitem">Zdjęcie całego rozdzielacza i widocznych połączeń</div><div class="rk-checkitem">Odczyt ciśnienia przy znanej temperaturze układu</div><div class="rk-checkitem">Przepływy wszystkich pętli przy określonych strefach</div><div class="rk-checkitem">Temperaturę zasilania i powrotu, jeśli są dostępne</div><div class="rk-checkitem">Kody błędów i moment ich występowania</div><div class="rk-checkitem">Pomieszczenia niedogrzane lub przegrzane</div><div class="rk-checkitem">Datę ostatniego napełnienia albo ingerencji</div><div class="rk-checkitem">Rodzaj medium oraz znane dodatki</div><div class="rk-checkitem">Ustawienie pompy i tryb źródła ciepła</div><div class="rk-checkitem">Projekt, długości pętli i wcześniejszy protokół nastaw</div></div><p class="rk-update">Zdjęcia należy wykonać przed przestawieniem zaworów. Po zmianie trudno odtworzyć prawidłowy stan bazowy.</p></section>

<section class="rk-section" id="rk-service-protocol"><span class="rk-kicker">Efekt przeglądu</span><h2>Co powinien zawierać protokół serwisu?</h2><p>Dobry protokół nie kończy się zdaniem „instalacja sprawna”. Pozwala porównać stan w kolejnych sezonach i odtworzyć wszystkie wykonane zmiany.</p><div class="rk-grid-2"><div class="rk-card"><h3>Stan przed pracami</h3><ul><li>zgłoszone objawy i warunki ich występowania,</li><li>ciśnienie i temperatury,</li><li>przepływy oraz otwarte strefy,</li><li>ustawienie pompy i źródła,</li><li>rodzaj medium.</li></ul></div><div class="rk-card"><h3>Wynik i zmiany</h3><ul><li>wykonane pomiary i ustalona przyczyna,</li><li>wymienione lub oczyszczone elementy,</li><li>nowe nastawy z uzasadnieniem,</li><li>parametry po stabilizacji,</li><li>zalecenia i termin wynikający z dokumentacji.</li></ul></div></div></section>

<section class="rk-section" id="rk-service-errors"><span class="rk-kicker">Czego unikać</span><h2>Najczęstsze błędy podczas serwisowania podłogówki</h2><div class="rk-errors"><div class="rk-error"><b>BŁĄD 01</b><p>Obowiązkowe płukanie co kilka lat bez potwierdzenia zanieczyszczeń lub ograniczenia przepływu.</p></div><div class="rk-error"><b>BŁĄD 02</b><p>Ustawienie identycznego przepływu na wszystkich pętlach zamiast wartości wynikających z obciążeń.</p></div><div class="rk-error"><b>BŁĄD 03</b><p>Coroczne odpowietrzanie bez szukania przyczyny powracającego powietrza.</p></div><div class="rk-error"><b>BŁĄD 04</b><p>Uznanie zakresu 1,0–1,5 bara za właściwy dla każdego budynku i każdego źródła.</p></div><div class="rk-error"><b>BŁĄD 05</b><p>Dolewanie świeżej wody przy każdym spadku ciśnienia bez kontroli nieszczelności i naczynia.</p></div><div class="rk-error"><b>BŁĄD 06</b><p>Regulacja pompy i rotametrów bez zapisania wcześniejszych nastaw oraz warunków pracy.</p></div><div class="rk-error"><b>BŁĄD 07</b><p>Diagnozowanie zimniejszego fragmentu podłogi wyłącznie dotykiem i bez znajomości przebiegu rur.</p></div><div class="rk-error"><b>BŁĄD 08</b><p>Mieszanie nieznanych inhibitorów lub płynów zamiast identyfikacji medium.</p></div></div></section>

<section class="rk-section" id="rk-service-faq"><span class="rk-kicker">Najczęstsze pytania</span><h2>FAQ: serwis i konserwacja ogrzewania podłogowego</h2><div class="rk-faq"><details><summary>Czy ogrzewanie podłogowe trzeba serwisować co roku?</summary><div class="rk-faq-answer">Przedsezonowa kontrola działania jest rozsądna, ale zakres i obowiązkowość serwisu zależą od źródła, dokumentacji oraz stanu instalacji. Same pętle nie wymagają corocznej ingerencji.</div></details><details><summary>Czy podłogówkę trzeba co roku odpowietrzać?</summary><div class="rk-faq-answer">Nie. Powracające powietrze wymaga znalezienia przyczyny, a nie tylko cyklicznego usuwania objawu.</div></details><details><summary>Co ile lat płukać ogrzewanie podłogowe?</summary><div class="rk-faq-answer">Nie według jednego interwału. Płukanie wykonuje się po rozpoznaniu zanieczyszczeń, ograniczenia przepływu, nieznanego medium albo po określonej ingerencji.</div></details><details><summary>Czy trzeba wymieniać wodę w podłogówce?</summary><div class="rk-faq-answer">Nie tylko z powodu wieku. Szczelnego układu nie należy niepotrzebnie opróżniać i napełniać świeżą wodą.</div></details><details><summary>Jakie powinno być ciśnienie w podłogówce?</summary><div class="rk-faq-answer">Wartość zależy od wysokości instalacji, naczynia, temperatury, miejsca pomiaru i wymagań źródła. Nie istnieje jeden prawidłowy zakres dla wszystkich domów.</div></details><details><summary>Dlaczego ciśnienie w instalacji spada?</summary><div class="rk-faq-answer">Możliwy jest wyciek, problem z naczyniem, odpowietrznikiem, zaworem bezpieczeństwa lub inny ubytek. Częste dolewanie nie zastępuje diagnostyki.</div></details><details><summary>Czy zimna pętla oznacza zapowietrzenie?</summary><div class="rk-faq-answer">Nie zawsze. Przyczyną może być zawór, siłownik, pompa, opór, zabrudzenie, automatyka albo brak zapotrzebowania.</div></details><details><summary>Czy wszystkie rotametry powinny pokazywać tyle samo?</summary><div class="rk-faq-answer">Nie. Wymagany przepływ zależy od mocy i parametrów konkretnej pętli. Nastawy powinny wynikać z projektu lub obliczeń.</div></details><details><summary>Czy płyn niezamarzający wymienia się co 3–5 lat?</summary><div class="rk-faq-answer">Nie ma jednego terminu. Stan i kryteria wymiany ocenia się według dokumentacji konkretnego produktu oraz wyników kontroli.</div></details><details><summary>Czy nierówno ciepła podłoga oznacza awarię?</summary><div class="rk-faq-answer">Nie musi. Wpływają na nią przebieg rur, zabudowa, okładzina, nasłonecznienie, sterowanie i różne obciążenia pomieszczeń.</div></details><details><summary>Kiedy wezwać serwis natychmiast?</summary><div class="rk-faq-answer">Przy aktywnym wycieku, szybkim spadku ciśnienia, błędzie bezpieczeństwa, braku ogrzewania podczas mrozu albo zagrożeniu gazowym lub elektrycznym.</div></details><details><summary>Czy po serwisie trzeba ponownie ustawić przepływy?</summary><div class="rk-faq-answer">Tylko gdy ingerencja je zmieniła albo diagnostyka wykazała nieprawidłowe nastawy. Sprawnych ustawień nie należy resetować profilaktycznie.</div></details></div></section>

<section class="rk-section" id="rk-service-sources"><span class="rk-kicker">Podstawa techniczna</span><h2>Źródła i zakres odpowiedzialności</h2><p>Wymagania konkretnego kotła, pompy ciepła, pompy obiegowej, armatury i medium zawsze należy sprawdzić w aktualnej dokumentacji właściwego modelu. Poniższe oficjalne materiały porządkują ogólne zasady kontroli oraz eksploatacji.</p><div class="rk-source-box"><ul><li><a href="https://www.gov.pl/web/gunb/kontrole-stanu-technicznego-obiektow" target="_blank" rel="noopener nofollow">Główny Urząd Nadzoru Budowlanego — kontrole stanu technicznego obiektów</a></li><li><a href="https://eur-lex.europa.eu/legal-content/PL/TXT/HTML/?uri=CELEX%3A32024L1275" target="_blank" rel="noopener nofollow">EUR-Lex — dyrektywa UE 2024/1275 dotycząca charakterystyki energetycznej budynków</a></li><li><a href="https://www.vdi.de/en/home/vdi-standards/details/vdi-2035-blatt-1-prevention-of-damage-in-water-heating-installations-scale-formation-and-waterside-corrosion" target="_blank" rel="noopener nofollow">VDI 2035 Blatt 1 — ograniczanie osadów i korozji w wodnych instalacjach grzewczych</a></li><li><a href="https://www.iso.org/standard/74685.html" target="_blank" rel="noopener nofollow">ISO 11855-5:2021 — instalacja systemów ogrzewania i chłodzenia płaszczyznowego</a></li></ul></div><p class="rk-update">Materiał edukacyjny. Nie zastępuje instrukcji urządzeń, oględzin, pomiarów ani interwencji wymaganej w sytuacji awaryjnej.</p></section>
</main>

<section class="rk-author" aria-labelledby="rk-service-author-heading"><input type="radio" name="rk-service-author-tabs" id="rk-service-author-about" checked><input type="radio" name="rk-service-author-tabs" id="rk-service-author-exp"><input type="radio" name="rk-service-author-tabs" id="rk-service-author-sites"><div class="rk-author-head"><div><h2 id="rk-service-author-heading">Autor opracowania</h2><p>Treść techniczna przygotowana i zaktualizowana przez autora zajmującego się projektowaniem wodnych instalacji grzewczych.</p></div><span class="rk-author-mark">Projekt Ogrzewania</span></div><div class="rk-author-layout"><aside class="rk-author-side"><div class="rk-author-photo"><img decoding="async" src="https://projekt-ogrzewania.pl/wp-content/uploads/2026/04/PO-Robert-Kucharski.webp" alt="Robert Kucharski — projektant instalacji sanitarnych i specjalista HVAC" width="150" height="150" loading="lazy"></div><div class="rk-author-name">Robert Kucharski</div><div class="rk-author-role">Projektant instalacji sanitarnych<br>specjalista HVAC i ogrzewania podłogowego</div><div class="rk-author-social-label">Profile autora</div><div class="rk-author-social"><a href="https://www.linkedin.com/in/robert-kucharski-38069b48/" target="_blank" rel="noopener nofollow me" aria-label="Robert Kucharski na LinkedIn"><svg viewBox="0 0 24 24" aria-hidden="true"><path d="M4.98 3.5C4.98 4.88 3.87 6 2.5 6S.02 4.88.02 3.5 1.13 1 2.5 1s2.48 1.12 2.48 2.5zM.5 8h4V24h-4V8zm7 0h3.83v2.19h.05c.53-1.01 1.84-2.19 3.78-2.19 4.04 0 4.79 2.66 4.79 6.12V24h-4v-8.76c0-2.09-.04-4.78-2.91-4.78-2.91 0-3.36 2.27-3.36 4.63V24h-4V8z"/></svg></a><a href="https://www.facebook.com/projektogrzewaniapl" target="_blank" rel="noopener nofollow me" aria-label="Projekt Ogrzewania na Facebooku"><svg viewBox="0 0 24 24" aria-hidden="true"><path d="M22 12a10 10 0 1 0-11.56 9.88v-6.99H7.9V12h2.54V9.8c0-2.51 1.49-3.89 3.77-3.89 1.09 0 2.23.2 2.23.2v2.45h-1.25c-1.24 0-1.62.77-1.62 1.56V12h2.77l-.44 2.89h-2.33v6.99A10 10 0 0 0 22 12z"/></svg></a><a href="https://x.com/Projekt_HVAC" target="_blank" rel="noopener nofollow me" aria-label="Projekt Ogrzewania w serwisie X"><svg viewBox="0 0 24 24" aria-hidden="true"><path d="M18.24 2H21l-6.03 6.9L22.06 22h-5.55l-4.35-5.69L7.19 22H4.42l6.45-7.37L4.06 2h5.69l3.93 5.2L18.24 2zm-.97 17.7h1.53L8.91 4.18H7.27L17.27 19.7z"/></svg></a></div></aside><div class="rk-author-main"><blockquote class="rk-author-quote"><p>Dobry serwis nie zaczyna się od odpowietrzania ani płukania. Zaczyna się od porównania stanu instalacji z projektem, protokołem uruchomienia i wcześniejszymi wartościami.</p></blockquote><div class="rk-author-tabs"><label class="rk-author-tab" for="rk-service-author-about">O autorze</label><label class="rk-author-tab" for="rk-service-author-exp">Doświadczenie</label><label class="rk-author-tab" for="rk-service-author-sites">Serwisy</label></div><div class="rk-author-panel rk-author-panel-about"><p class="rk-author-lead">Robert Kucharski jest projektantem instalacji sanitarnych oraz specjalistą HVAC koncentrującym się na wodnym ogrzewaniu podłogowym, obliczeniach cieplnych i hydraulice instalacji.</p><p>W codziennej pracy przygotowuje indywidualne projekty dla budynków nowych i modernizowanych. Łączy wymagane moce pomieszczeń z rzeczywistą powierzchnią grzejną, przebiegiem i długością pętli, przepływami, stratami ciśnienia, średnicami magistral oraz punktem pracy pompy obiegowej.</p><div class="rk-author-facts"><div class="rk-author-fact"><b>Specjalizacja</b><span>Wodne ogrzewanie podłogowe i instalacje HVAC</span></div><div class="rk-author-fact"><b>Zakres projektowy</b><span>Obliczenia cieplne, hydraulika, pętle i rozdzielacze</span></div><div class="rk-author-fact"><b>Praktyka</b><span>Pompy, przepływy, opory i średnice przewodów</span></div><div class="rk-author-fact"><b>Publikacje</b><span>Autorskie poradniki i interaktywne narzędzia techniczne</span></div></div><div class="rk-author-method"><strong>Jak powstają opracowania?</strong><p>Treści oddzielają wymagania dokumentacji i oficjalnych źródeł od uproszczeń wykonawczych. Wzory, założenia oraz ograniczenia narzędzi są opisywane tak, aby czytelnik mógł ocenić zakres wyniku.</p></div></div><div class="rk-author-panel rk-author-panel-exp"><p class="rk-author-lead">Doświadczenie autora obejmuje cały ciąg decyzyjny — od określenia zapotrzebowania pomieszczeń do przygotowania przepływów i nastaw potrzebnych podczas uruchomienia.</p><ul class="rk-author-topics"><li>obciążenia cieplne</li><li>rozstawy rur</li><li>długości pętli</li><li>przepływy</li><li>straty ciśnienia</li><li>pompy obiegowe</li><li>magistrale</li><li>rozdzielacze</li><li>automatyka strefowa</li><li>diagnostyka</li></ul><p>Przygotowywane materiały koncentrują się na zależnościach, które można sprawdzić w projekcie i podczas uruchomienia: mocy pętli, różnicy temperatur, przepływie, oporze hydraulicznym oraz reakcji instalacji na zmianę nastaw. Dzięki temu porady nie sprowadzają się do jednej uniwersalnej wartości dla każdego budynku.</p><div class="rk-author-method"><strong>Odpowiedzialność redakcyjna</strong><p>Robert Kucharski jest wskazanym autorem opracowania i odpowiada za jego aktualizację techniczną. Materiał zawiera datę aktualizacji, źródła oraz wyraźne rozróżnienie pomiędzy informacją edukacyjną a indywidualnym projektem.</p></div></div><div class="rk-author-panel rk-author-panel-sites"><p class="rk-author-lead">Robert Kucharski jest autorem i właścicielem trzech serwisów poświęconych instalacjom, budowie oraz modernizacji budynków.</p><div class="rk-author-facts"><div class="rk-author-fact"><b>Projekt Ogrzewania</b><span>Projekty, obliczenia i poradniki o instalacjach grzewczych</span></div><div class="rk-author-fact"><b>Remont.biz.pl</b><span>Techniczne materiały dotyczące budowy i modernizacji</span></div><div class="rk-author-fact"><b>Sobir.pl</b><span>Wiedza o budownictwie, instalacjach i energii</span></div><div class="rk-author-fact"><b>Tożsamość autora</b><span>Publiczne profile zawodowe i społecznościowe</span></div></div><div class="rk-site-links"><a href="https://projekt-ogrzewania.pl/">projekt-ogrzewania.pl</a><a href="https://remont.biz.pl/" target="_blank" rel="noopener nofollow">remont.biz.pl</a><a href="https://sobir.pl/" target="_blank" rel="noopener nofollow">sobir.pl</a></div><div class="rk-author-method"><strong>Powiązanie z publikacją</strong><p>Projekt-Ogrzewania.pl jest miejscem publikacji i aktualizacji opracowania. Pozostałe serwisy pokazują szerszy zakres działalności autora w obszarze budownictwa i instalacji.</p></div></div></div></div></section>
<section class="rk-cta rk-final-cta rk-sales-cta" aria-label="Końcowe zamówienie projektu"><span class="rk-kicker" style="color:#79e8f3">Dokumentacja ułatwia każdy późniejszy serwis</span><h2>Zaprojektuj przepływy, opory i nastawy przed wykonaniem instalacji</h2><p>Serwisant może porównać działanie układu tylko wtedy, gdy wiadomo, jakie przepływy miały być uzyskane, które pętle są krytyczne i jaki punkt pracy powinna zapewnić pompa. Projekt tworzy taki stan odniesienia jeszcze przed zakryciem rur.</p><a class="rk-cta-button" href="https://projekt-ogrzewania.pl/produkt/projekt-instalacji-ogrzewania-podlogowego-podlogowki/">Zamów indywidualny projekt ogrzewania podłogowego</a></section>
</div>
</article>
<script type="application/ld+json">
{
  "@context":"https://schema.org",
  "@graph":[
    {"@type":"TechArticle","@id":"https://projekt-ogrzewania.pl/jak-czesto-trzeba-serwisowac-ogrzewanie-podlogowe/#article","headline":"Jak często serwisować ogrzewanie podłogowe? Harmonogram, zakres i objawy","description":"Praktyczny harmonogram kontroli ogrzewania podłogowego wraz z asystentem objawów, zakresem przeglądu i protokołem serwisowym.","inLanguage":"pl-PL","dateModified":"2026-08-30","mainEntityOfPage":{"@id":"https://projekt-ogrzewania.pl/jak-czesto-trzeba-serwisowac-ogrzewanie-podlogowe/#webpage"},"author":{"@id":"https://projekt-ogrzewania.pl/#robert-kucharski"},"publisher":{"@id":"https://projekt-ogrzewania.pl/#organization"},"about":["serwis ogrzewania podłogowego","przegląd podłogówki","diagnostyka instalacji grzewczej","rozdzielacz","pompa obiegowa"]},
    {"@type":"WebPage","@id":"https://projekt-ogrzewania.pl/jak-czesto-trzeba-serwisowac-ogrzewanie-podlogowe/#webpage","url":"https://projekt-ogrzewania.pl/jak-czesto-trzeba-serwisowac-ogrzewanie-podlogowe/","name":"Jak często serwisować ogrzewanie podłogowe?","isPartOf":{"@id":"https://projekt-ogrzewania.pl/#website"},"breadcrumb":{"@id":"https://projekt-ogrzewania.pl/jak-czesto-trzeba-serwisowac-ogrzewanie-podlogowe/#breadcrumb"},"inLanguage":"pl-PL"},
    {"@type":"BreadcrumbList","@id":"https://projekt-ogrzewania.pl/jak-czesto-trzeba-serwisowac-ogrzewanie-podlogowe/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Strona główna","item":"https://projekt-ogrzewania.pl/"},{"@type":"ListItem","position":2,"name":"Blog","item":"https://projekt-ogrzewania.pl/blog/"},{"@type":"ListItem","position":3,"name":"Jak często serwisować ogrzewanie podłogowe?","item":"https://projekt-ogrzewania.pl/jak-czesto-trzeba-serwisowac-ogrzewanie-podlogowe/"}]},
    {"@type":"WebApplication","@id":"https://projekt-ogrzewania.pl/jak-czesto-trzeba-serwisowac-ogrzewanie-podlogowe/#assistant","name":"Asystent serwisu i diagnostyki ogrzewania podłogowego","url":"https://projekt-ogrzewania.pl/jak-czesto-trzeba-serwisowac-ogrzewanie-podlogowe/#rk-service-tool-section","applicationCategory":"UtilitiesApplication","operatingSystem":"Dowolny system z przeglądarką internetową","browserRequirements":"JavaScript","isAccessibleForFree":true,"inLanguage":"pl-PL","creator":{"@id":"https://projekt-ogrzewania.pl/#robert-kucharski"}},
    {"@type":"HowTo","@id":"https://projekt-ogrzewania.pl/jak-czesto-trzeba-serwisowac-ogrzewanie-podlogowe/#howto","name":"Jak wykonać kontrolę ogrzewania podłogowego przed sezonem","description":"Kolejność bezpiecznej obserwacji działania instalacji przed sezonem grzewczym.","step":[{"@type":"HowToStep","position":1,"name":"Sprawdź dokumentację","text":"Ustal prawidłowe ciśnienie, przepływy, ustawienie pompy i wymagania źródła."},{"@type":"HowToStep","position":2,"name":"Obejrzyj dostępne elementy","text":"Sprawdź rozdzielacz, połączenia, manometr, rotametry i komunikaty urządzeń."},{"@type":"HowToStep","position":3,"name":"Przetestuj strefy","text":"Zweryfikuj reakcję termostatów, listwy, siłowników oraz przepływów."},{"@type":"HowToStep","position":4,"name":"Porównaj wartości bazowe","text":"Porównaj ciśnienie, przepływy i temperatury z projektem lub wcześniejszym protokołem."},{"@type":"HowToStep","position":5,"name":"Zapisz wynik","text":"Udokumentuj stan i nie zmieniaj prawidłowych nastaw bez technicznego powodu."}]},
    {"@type":"FAQPage","@id":"https://projekt-ogrzewania.pl/jak-czesto-trzeba-serwisowac-ogrzewanie-podlogowe/#faq","mainEntity":[
      {"@type":"Question","name":"Czy ogrzewanie podłogowe trzeba serwisować co roku?","acceptedAnswer":{"@type":"Answer","text":"Przedsezonowa kontrola działania jest rozsądna, ale zakres i obowiązkowość serwisu zależą od źródła, dokumentacji oraz stanu instalacji. Same pętle nie wymagają corocznej ingerencji."}},
      {"@type":"Question","name":"Czy podłogówkę trzeba co roku odpowietrzać?","acceptedAnswer":{"@type":"Answer","text":"Nie. Powracające powietrze wymaga znalezienia przyczyny, a nie tylko cyklicznego usuwania objawu."}},
      {"@type":"Question","name":"Co ile lat płukać ogrzewanie podłogowe?","acceptedAnswer":{"@type":"Answer","text":"Nie według jednego interwału. Płukanie wykonuje się po rozpoznaniu zanieczyszczeń, ograniczenia przepływu, nieznanego medium albo po określonej ingerencji."}},
      {"@type":"Question","name":"Czy trzeba wymieniać wodę w podłogówce?","acceptedAnswer":{"@type":"Answer","text":"Nie tylko z powodu wieku. Szczelnego układu nie należy niepotrzebnie opróżniać i napełniać świeżą wodą."}},
      {"@type":"Question","name":"Jakie powinno być ciśnienie w podłogówce?","acceptedAnswer":{"@type":"Answer","text":"Wartość zależy od wysokości instalacji, naczynia, temperatury, miejsca pomiaru i wymagań źródła. Nie istnieje jeden prawidłowy zakres dla wszystkich domów."}},
      {"@type":"Question","name":"Dlaczego ciśnienie w instalacji spada?","acceptedAnswer":{"@type":"Answer","text":"Możliwy jest wyciek, problem z naczyniem, odpowietrznikiem, zaworem bezpieczeństwa lub inny ubytek. Częste dolewanie nie zastępuje diagnostyki."}},
      {"@type":"Question","name":"Czy zimna pętla oznacza zapowietrzenie?","acceptedAnswer":{"@type":"Answer","text":"Nie zawsze. Przyczyną może być zawór, siłownik, pompa, opór, zabrudzenie, automatyka albo brak zapotrzebowania."}},
      {"@type":"Question","name":"Czy wszystkie rotametry powinny pokazywać tyle samo?","acceptedAnswer":{"@type":"Answer","text":"Nie. Wymagany przepływ zależy od mocy i parametrów konkretnej pętli. Nastawy powinny wynikać z projektu lub obliczeń."}},
      {"@type":"Question","name":"Czy płyn niezamarzający wymienia się co 3–5 lat?","acceptedAnswer":{"@type":"Answer","text":"Nie ma jednego terminu. Stan i kryteria wymiany ocenia się według dokumentacji konkretnego produktu oraz wyników kontroli."}},
      {"@type":"Question","name":"Czy nierówno ciepła podłoga oznacza awarię?","acceptedAnswer":{"@type":"Answer","text":"Nie musi. Wpływają na nią przebieg rur, zabudowa, okładzina, nasłonecznienie, sterowanie i różne obciążenia pomieszczeń."}},
      {"@type":"Question","name":"Kiedy wezwać serwis natychmiast?","acceptedAnswer":{"@type":"Answer","text":"Przy aktywnym wycieku, szybkim spadku ciśnienia, błędzie bezpieczeństwa, braku ogrzewania podczas mrozu albo zagrożeniu gazowym lub elektrycznym."}},
      {"@type":"Question","name":"Czy po serwisie trzeba ponownie ustawić przepływy?","acceptedAnswer":{"@type":"Answer","text":"Tylko gdy ingerencja je zmieniła albo diagnostyka wykazała nieprawidłowe nastawy. Sprawnych ustawień nie należy resetować profilaktycznie."}}
    ]},
    {"@type":"Person","@id":"https://projekt-ogrzewania.pl/#robert-kucharski","name":"Robert Kucharski","jobTitle":"Projektant instalacji sanitarnych i specjalista HVAC","description":"Projektant wodnych instalacji ogrzewania podłogowego, autor obliczeń cieplnych i hydraulicznych oraz technicznych materiałów edukacyjnych dla inwestorów i wykonawców.","url":"https://projekt-ogrzewania.pl/","image":"https://projekt-ogrzewania.pl/wp-content/uploads/2026/04/PO-Robert-Kucharski.webp","knowsAbout":["wodne ogrzewanie podłogowe","obliczenia cieplne","hydraulika instalacji grzewczych","projektowanie pętli grzewczych","dobór pomp obiegowych","rozdzielacze ogrzewania podłogowego","przepływy i straty ciśnienia","diagnostyka instalacji HVAC"],"sameAs":["https://www.linkedin.com/in/robert-kucharski-38069b48/","https://www.facebook.com/projektogrzewaniapl","https://x.com/Projekt_HVAC"],"worksFor":{"@id":"https://projekt-ogrzewania.pl/#organization"}},
    {"@type":"Organization","@id":"https://projekt-ogrzewania.pl/#organization","name":"Projekt Ogrzewania","url":"https://projekt-ogrzewania.pl/","founder":{"@id":"https://projekt-ogrzewania.pl/#robert-kucharski"}},
    {"@type":"Organization","@id":"https://remont.biz.pl/#organization","name":"Remont.biz.pl","url":"https://remont.biz.pl/"},
    {"@type":"Organization","@id":"https://sobir.pl/#organization","name":"Sobir.pl","url":"https://sobir.pl/"},
    {"@type":"WebSite","@id":"https://projekt-ogrzewania.pl/#website","url":"https://projekt-ogrzewania.pl/","name":"Projekt Ogrzewania","publisher":{"@id":"https://projekt-ogrzewania.pl/#organization"},"inLanguage":"pl-PL"}
  ]
}
</script>

<script>
(function(){
"use strict";
var root=document.getElementById("rk-service-guide");if(!root){return;}
var byId=function(id){return document.getElementById(id);};
var ids=["rk-service-source","rk-service-operation","rk-service-pressure-input","rk-service-leak","rk-service-flow","rk-service-noise","rk-service-controls-input","rk-service-intervention","rk-service-medium-input","rk-service-documentation","rk-service-last","rk-service-source-due"];
var defaults={"rk-service-source":"gas","rk-service-operation":"normal","rk-service-pressure-input":"stable","rk-service-leak":"none","rk-service-flow":"normal","rk-service-noise":"none","rk-service-controls-input":"normal","rk-service-intervention":"none","rk-service-medium-input":"water","rk-service-documentation":"yes","rk-service-last":"recent","rk-service-source-due":"current"};
var value=function(id){return byId(id).value;};var setText=function(id,text){var node=byId(id);if(node){node.textContent=text;}};
var setDiagnostic=function(prefix,kind,title,copy){var card=byId("rk-service-"+prefix+"-card");if(card){card.className="rk-diagnostic"+(kind?" is-"+kind:"");}setText("rk-service-"+prefix+"-title",title);setText("rk-service-"+prefix+"-text",copy);};
var renderActions=function(items){var box=byId("rk-service-actions");if(!box){return;}box.textContent="";items.forEach(function(copy){var item=document.createElement("div");item.className="rk-action";item.textContent=copy;box.appendChild(item);});};
var update=function(){
 var source=value("rk-service-source"),operation=value("rk-service-operation"),pressure=value("rk-service-pressure-input"),leak=value("rk-service-leak"),flow=value("rk-service-flow"),noise=value("rk-service-noise"),controls=value("rk-service-controls-input"),intervention=value("rk-service-intervention"),medium=value("rk-service-medium-input"),documentation=value("rk-service-documentation"),last=value("rk-service-last"),sourceDue=value("rk-service-source-due");
 var urgent=[leak==="visible",pressure==="rapid",operation==="noheat"].some(Boolean);
 var diagnostic=[operation==="uneven",pressure==="slow",leak==="moist",flow==="changed",flow==="zero",noise!=="none",controls==="one",controls==="many",intervention!=="none",medium==="unknown"].some(Boolean);
 var planned=[sourceDue!=="current",last!=="recent",documentation!=="yes",controls==="unknown",flow==="unknown"].some(Boolean);
 var kind="ok",level="Obserwacja",next="Kontrola przed sezonem",title="Instalacja nie pokazuje objawu wymagającego ingerencji",copy="Zachowaj aktualne nastawy i wartości bazowe. Wykonaj kontrolę działania przed sezonem oraz serwisuj źródło zgodnie z jego dokumentacją.",actions=["Zapisz ciśnienie przy podobnej temperaturze instalacji.","Zrób zdjęcie rotametrów przy znanym stanie otwartych stref.","Przetestuj reakcję termostatów i siłowników przed sezonem.","Nie płucz ani nie przestawiaj prawidłowych nastaw profilaktycznie."];
 if(urgent){kind="stop";level="Pilna reakcja";next="Zabezpiecz układ";title="Nie czekaj na termin planowego przeglądu";copy="Wybrany objaw może prowadzić do utraty medium, braku ogrzewania lub dalszych szkód. Postępuj zgodnie z instrukcją urządzenia i skontaktuj się z właściwym serwisem.";actions=["Zabezpiecz źródło oraz instalację zgodnie z instrukcją awaryjną.","Nie uzupełniaj wielokrotnie wody bez ustalenia przyczyny.","Zapisz komunikaty, ciśnienie i widoczne objawy.","Skontaktuj się z serwisem właściwym dla rodzaju zagrożenia."];}
 else if(diagnostic){kind="warn";level="Diagnostyka";next="Pomiary przed regulacją";title="Najpierw ustal przyczynę zmiany";copy="Objawy uzasadniają diagnostykę, ale nie przesądzają o zapowietrzeniu ani zabrudzeniu pętli. Porównaj ciśnienie, przepływy, automatykę, pracę pompy i stan medium.";actions=["Zapisz stan pompy, źródła i wszystkich aktywnych stref.","Porównaj przepływy z projektem, protokołem lub wcześniejszym zdjęciem.","Sprawdź zawory i siłowniki przed odpowietrzaniem lub płukaniem.","Po ingerencji wykonaj kontrolę szczelności i udokumentuj nowe nastawy."];}
 else if(planned){kind="warn";level="Kontrola planowa";next="Uzupełnij przegląd";title="Zaplanuj kontrolę bez przypadkowej regulacji";copy="Nie ma objawu awaryjnego, ale trzeba sprawdzić termin obsługi źródła, działanie stref albo odtworzyć dokumentację wartości bazowych.";actions=["Sprawdź instrukcję i termin serwisu źródła ciepła.","Przetestuj wszystkie strefy przy znanym trybie pracy.","Zapisz ciśnienie, przepływy i ustawienie pompy.","Nie zmieniaj nastaw, jeśli pomiary nie wykazują problemu."];}
 setText("rk-service-level",level);setText("rk-service-next",next);setText("rk-service-balance",[flow==="changed",flow==="zero",documentation==="no",intervention!=="none"].some(Boolean)?"sprawdź po pomiarach":"nie zmieniaj");setText("rk-service-flush-out",[flow==="zero",medium==="unknown",intervention!=="none"].some(Boolean)?"tylko po diagnozie":"brak wskazania");
 var decision=byId("rk-service-decision-card");decision.className="rk-decision is-"+kind;setText("rk-service-decision-title",title);setText("rk-service-decision-text",copy);renderActions(actions);
 if([leak==="visible",pressure==="rapid"].some(Boolean)){setDiagnostic("safety","alert","Możliwy ubytek medium","Zabezpiecz układ i nie maskuj objawu kolejnym napełnianiem.");}else if(operation==="noheat"){setDiagnostic("safety","alert","Brak ogrzewania","Przy mrozie lub błędzie bezpieczeństwa wymagana jest szybka reakcja.");}else{setDiagnostic("safety","ok","Brak objawu awaryjnego","Kontynuuj obserwację widocznych elementów i komunikatów urządzeń.");}
 if([flow==="zero",flow==="changed",operation==="uneven",noise!=="none",pressure==="slow"].some(Boolean)){setDiagnostic("hyd","warn","Potrzebne porównanie pomiarów","Nie rozstrzygaj o płukaniu ani odpowietrzaniu na podstawie jednego objawu.");}else{setDiagnostic("hyd","ok","Parametry deklarowane jako stabilne","Zachowaj wartości bazowe i nie zmieniaj sprawnych nastaw.");}
 if([documentation==="no",medium==="unknown"].some(Boolean)){setDiagnostic("doc","alert","Brakuje danych krytycznych","Odtwórz nastawy i zidentyfikuj medium przed dodawaniem preparatów lub regulacją.");}else if([documentation==="photo",sourceDue==="unknown",last==="unknown"].some(Boolean)){setDiagnostic("doc","warn","Dokumentacja częściowa","Uzupełnij protokół o przepływy, ciśnienie, medium i ustawienie pompy.");}else{setDiagnostic("doc","ok","Jest punkt odniesienia","Porównuj każdy kolejny przegląd z projektem i protokołem uruchomienia.");}
 if([source==="gas",sourceDue!=="current"].every(Boolean)){setText("rk-service-doc-text",byId("rk-service-doc-text").textContent+" Oddziel kontrolę instalacji gazowej i urządzenia od kontroli pętli podłogowych.");}
};
ids.forEach(function(id){var node=byId(id);if(node){node.addEventListener("change",update);}});var reset=byId("rk-service-reset");if(reset){reset.addEventListener("click",function(){Object.keys(defaults).forEach(function(id){byId(id).value=defaults[id];});update();});}
var progress=byId("rk-service-progress");var updateProgress=function(){if(!progress){return;}var rect=root.getBoundingClientRect();var total=root.offsetHeight-window.innerHeight;var passed=Math.min(total,Math.max(0,-rect.top));progress.style.width=(total>0?passed/total*100:100).toFixed(1)+"%";};window.addEventListener("scroll",updateProgress,{passive:true});window.addEventListener("resize",updateProgress);update();updateProgress();
})();
</script>
<p>Artykuł <a href="https://projekt-ogrzewania.pl/jak-czesto-trzeba-serwisowac-ogrzewanie-podlogowe/">Jak często trzeba serwisować ogrzewanie podłogowe?</a> pochodzi z serwisu <a href="https://projekt-ogrzewania.pl">Projekt Ogrzewania</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Układ ślimakowy ogrzewania podłogowego – schemat i montaż krok po kroku.</title>
		<link>https://projekt-ogrzewania.pl/instalacja-ogrzewania-podlogowego-w-ukladzie-slimakowym/</link>
					<comments>https://projekt-ogrzewania.pl/instalacja-ogrzewania-podlogowego-w-ukladzie-slimakowym/#comments</comments>
		
		<dc:creator><![CDATA[Robert Kucharski]]></dc:creator>
		<pubDate>Fri, 21 Feb 2025 10:53:02 +0000</pubDate>
				<category><![CDATA[Domowe systemy grzewcze]]></category>
		<category><![CDATA[Instalacja ogrzewania podłogowego]]></category>
		<category><![CDATA[Instalacje grzewcze]]></category>
		<category><![CDATA[Montaż instalacji grzewczych]]></category>
		<category><![CDATA[Niskotemperaturowe systemy grzewcze]]></category>
		<category><![CDATA[Ogrzewanie podłogowe]]></category>
		<category><![CDATA[Poradnik budowlany]]></category>
		<category><![CDATA[Poradniki instalacyjne]]></category>
		<category><![CDATA[Porady budowlane]]></category>
		<category><![CDATA[Porady ekspertów]]></category>
		<category><![CDATA[Projektowanie instalacji grzewczych]]></category>
		<category><![CDATA[Systemy grzewcze]]></category>
		<category><![CDATA[Układ ślimakowy]]></category>
		<category><![CDATA[Układanie rur grzewczych]]></category>
		<category><![CDATA[energia w domu]]></category>
		<category><![CDATA[instalacje grzewcze]]></category>
		<category><![CDATA[montaż ogrzewania]]></category>
		<category><![CDATA[ogrzewanie podłogowe]]></category>
		<category><![CDATA[poradnik DIY]]></category>
		<category><![CDATA[projektowanie ogrzewania]]></category>
		<category><![CDATA[remont domu]]></category>
		<category><![CDATA[równomierne ciepło]]></category>
		<category><![CDATA[systemy grzewcze]]></category>
		<category><![CDATA[układ ślimakowy]]></category>
		<guid isPermaLink="false">https://projekt-ogrzewania.pl/?p=2270</guid>

					<description><![CDATA[<p>Planujesz montaż ogrzewania podłogowego i zastanawiasz się, jaki układ rur wybrać? Ogrzewanie podłogowe w układzie ślimakowym to sprawdzony sposób na równomierne rozprowadzenie ciepła w całym pomieszczeniu. W artykule krok po kroku wyjaśniamy, jak zaplanować i zamontować ten system, aby uniknąć błędów i cieszyć się komfortem cieplnym przez lata. Dowiesz się, jak obliczyć moc grzewczą, dobrać rozstaw rur i przeprowadzić test ciśnieniowy. Sprawdź, dlaczego układ spiralny jest tak popularny!</p>
<p>Artykuł <a href="https://projekt-ogrzewania.pl/instalacja-ogrzewania-podlogowego-w-ukladzie-slimakowym/">Układ ślimakowy ogrzewania podłogowego – schemat i montaż krok po kroku.</a> pochodzi z serwisu <a href="https://projekt-ogrzewania.pl">Projekt Ogrzewania</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<style>
  #rk-pipe-guide {
    --rk-navy: #0b2536;
    --rk-navy-2: #12394d;
    --rk-navy-3: #1b465b;
    --rk-cyan: #29c4d7;
    --rk-cyan-dark: #078fb3;
    --rk-cyan-soft: #def7fa;
    --rk-orange: #ff6846;
    --rk-orange-dark: #e44f31;
    --rk-yellow: #f2b526;
    --rk-green: #2fcda1;
    --rk-green-dark: #168267;
    --rk-red: #d7504a;
    --rk-purple: #6963ce;
    --rk-ink: #10283a;
    --rk-copy: #3c5668;
    --rk-muted: #6b8191;
    --rk-line: #d3e2e8;
    --rk-bg: #f3f8fa;
    --rk-white: #ffffff;
    color: var(--rk-ink);
    font-family: Arial, Helvetica, sans-serif;
    line-height: 1.62;
    margin: 0 auto;
    max-width: 1360px;
    overflow-wrap: anywhere;
    width: 100%;
  }

  #rk-pipe-guide,
  #rk-pipe-guide * {
    box-sizing: border-box;
    min-width: 0;
  }

  #rk-pipe-guide a {
    color: var(--rk-cyan-dark);
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
  }

  #rk-pipe-guide a:hover,
  #rk-pipe-guide a:focus-visible {
    color: var(--rk-orange-dark);
  }

  #rk-pipe-guide button,
  #rk-pipe-guide input,
  #rk-pipe-guide select {
    font: inherit;
  }

  #rk-pipe-guide button:focus-visible,
  #rk-pipe-guide a:focus-visible,
  #rk-pipe-guide summary:focus-visible,
  #rk-pipe-guide input:focus-visible,
  #rk-pipe-guide select:focus-visible {
    outline: 3px solid rgba(41, 196, 215, 0.48);
    outline-offset: 3px;
  }

  #rk-pipe-guide img {
    display: block;
    height: auto;
    max-width: 100%;
  }

  #rk-pipe-guide .rk-pipe-shell {
    background: var(--rk-white);
    border: 1px solid var(--rk-line);
    box-shadow: 0 22px 65px rgba(13, 41, 57, 0.12);
    overflow: hidden;
  }

  #rk-pipe-guide .rk-pipe-hero {
    background:
      radial-gradient(circle at 89% 111%, rgba(41, 196, 215, 0.24) 0, rgba(41, 196, 215, 0.24) 17%, transparent 17.2%),
      linear-gradient(120deg, #0b2536 0%, #143e52 61%, #0d6576 100%);
    color: var(--rk-white);
    overflow: hidden;
    padding: 62px 58px 56px;
    position: relative;
  }

  #rk-pipe-guide .rk-pipe-hero::before {
    background: var(--rk-orange);
    border-radius: 50%;
    box-shadow: 0 0 0 9px rgba(255, 104, 70, 0.14);
    content: "";
    height: 12px;
    left: 58px;
    position: absolute;
    top: 43px;
    width: 12px;
  }

  #rk-pipe-guide .rk-pipe-kicker {
    color: #6ce5ef;
    display: block;
    font-size: 0.77rem;
    font-weight: 900;
    letter-spacing: 0.13em;
    margin: 0 0 19px 28px;
    text-transform: uppercase;
  }

  #rk-pipe-guide .rk-pipe-hero-title,
  #rk-pipe-guide .rk-pipe-section-title,
  #rk-pipe-guide .rk-pipe-cta-title,
  #rk-pipe-guide .rk-pipe-author-title {
    font-family: Arial, Helvetica, sans-serif;
    font-weight: 900;
    letter-spacing: -0.035em;
    line-height: 1.06;
  }

  #rk-pipe-guide .rk-pipe-hero-title {
    font-size: clamp(2.4rem, 6vw, 5.35rem);
    margin: 0;
    max-width: 1180px;
  }

  #rk-pipe-guide .rk-pipe-hero-title span {
    color: #69e7f2;
  }

  #rk-pipe-guide .rk-pipe-hero-lead {
    color: #e3f0f4;
    font-size: clamp(1.08rem, 2vw, 1.43rem);
    line-height: 1.55;
    margin: 27px 0 0;
    max-width: 1080px;
  }

  #rk-pipe-guide .rk-pipe-hero-tags,
  #rk-pipe-guide .rk-pipe-meta,
  #rk-pipe-guide .rk-pipe-shortcuts {
    display: flex;
    flex-wrap: wrap;
  }

  #rk-pipe-guide .rk-pipe-hero-tags {
    gap: 10px;
    margin-top: 30px;
  }

  #rk-pipe-guide .rk-pipe-hero-tags span {
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.24);
    border-radius: 999px;
    color: #ffffff;
    font-size: 0.82rem;
    font-weight: 800;
    padding: 8px 14px;
  }

  #rk-pipe-guide .rk-pipe-meta {
    color: #c5d9df;
    font-size: 0.83rem;
    font-weight: 700;
    gap: 12px 24px;
    margin-top: 34px;
  }

  #rk-pipe-guide .rk-pipe-meta strong {
    color: #ffffff;
  }

  #rk-pipe-guide .rk-pipe-shortcuts {
    align-items: center;
    background: #ffffff;
    border-bottom: 1px solid var(--rk-line);
    gap: 9px;
    padding: 22px 34px;
    position: static;
  }

  #rk-pipe-guide .rk-pipe-shortcuts-label {
    color: var(--rk-ink);
    flex: 1 0 100%;
    font-size: 0.72rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    margin-bottom: 2px;
    text-transform: uppercase;
  }

  #rk-pipe-guide .rk-pipe-shortcuts a {
    background: #f1f6f8;
    border: 1px solid transparent;
    border-radius: 999px;
    color: var(--rk-ink);
    font-size: 0.76rem;
    font-weight: 800;
    line-height: 1.25;
    padding: 8px 12px;
    text-decoration: none;
  }

  #rk-pipe-guide .rk-pipe-shortcuts a:hover,
  #rk-pipe-guide .rk-pipe-shortcuts a:focus-visible {
    background: var(--rk-cyan-soft);
    border-color: #91dce5;
    color: #075f78;
  }

  #rk-pipe-guide .rk-pipe-section {
    padding: 64px 58px;
  }

  #rk-pipe-guide .rk-pipe-section + .rk-pipe-section {
    border-top: 1px solid var(--rk-line);
  }

  #rk-pipe-guide .rk-pipe-section-soft {
    background: var(--rk-bg);
  }

  #rk-pipe-guide .rk-pipe-section-dark {
    background: var(--rk-navy);
    color: #ffffff;
  }

  #rk-pipe-guide .rk-pipe-eyebrow {
    color: var(--rk-cyan-dark);
    display: block;
    font-size: 0.75rem;
    font-weight: 900;
    letter-spacing: 0.12em;
    margin-bottom: 12px;
    text-transform: uppercase;
  }

  #rk-pipe-guide .rk-pipe-section-dark .rk-pipe-eyebrow {
    color: #68e6ef;
  }

  #rk-pipe-guide .rk-pipe-section-title,
  #rk-pipe-guide .rk-pipe-author-title {
    color: var(--rk-ink);
    font-size: clamp(2rem, 4vw, 3.65rem);
    margin: 0;
    max-width: 1050px;
  }

  #rk-pipe-guide .rk-pipe-section-dark .rk-pipe-section-title {
    color: #ffffff;
  }

  #rk-pipe-guide .rk-pipe-lead {
    color: var(--rk-copy);
    font-size: clamp(1.03rem, 1.7vw, 1.25rem);
    line-height: 1.7;
    margin: 22px 0 0;
    max-width: 1120px;
  }

  #rk-pipe-guide .rk-pipe-section-dark .rk-pipe-lead,
  #rk-pipe-guide .rk-pipe-section-dark .rk-pipe-copy {
    color: #c8dbe2;
  }

  #rk-pipe-guide .rk-pipe-copy {
    color: var(--rk-copy);
    margin: 22px 0 0;
  }

  #rk-pipe-guide .rk-pipe-copy strong,
  #rk-pipe-guide .rk-pipe-lead strong {
    color: var(--rk-ink);
  }

  #rk-pipe-guide .rk-pipe-section-dark .rk-pipe-copy strong,
  #rk-pipe-guide .rk-pipe-section-dark .rk-pipe-lead strong {
    color: #ffffff;
  }

  #rk-pipe-guide .rk-pipe-answer {
    background: linear-gradient(135deg, #e6fafd 0%, #f8fcfd 100%);
    border: 1px solid #9cdfe8;
    border-left: 7px solid var(--rk-cyan);
    border-radius: 18px;
    margin-top: 28px;
    padding: 27px 29px;
  }

  #rk-pipe-guide .rk-pipe-answer strong {
    color: var(--rk-ink);
    display: block;
    font-size: 1.24rem;
    line-height: 1.4;
  }

  #rk-pipe-guide .rk-pipe-answer p {
    color: var(--rk-copy);
    margin: 10px 0 0;
  }

  #rk-pipe-guide .rk-pipe-grid-2,
  #rk-pipe-guide .rk-pipe-grid-3,
  #rk-pipe-guide .rk-pipe-grid-4,
  #rk-pipe-guide .rk-pipe-source-grid,
  #rk-pipe-guide .rk-pipe-author-facts,
  #rk-pipe-guide .rk-snail-step-grid,
  #rk-pipe-guide .rk-snail-results,
  #rk-pipe-guide .rk-snail-check-grid {
    display: grid;
    gap: 18px;
    margin-top: 30px;
  }

  #rk-pipe-guide .rk-pipe-grid-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  #rk-pipe-guide .rk-pipe-grid-3,
  #rk-pipe-guide .rk-snail-step-grid,
  #rk-pipe-guide .rk-snail-check-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  #rk-pipe-guide .rk-pipe-grid-4,
  #rk-pipe-guide .rk-snail-results {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  #rk-pipe-guide .rk-pipe-card {
    background: #ffffff;
    border: 1px solid var(--rk-line);
    border-radius: 17px;
    padding: 24px;
  }

  #rk-pipe-guide .rk-pipe-section-soft .rk-pipe-card {
    background: rgba(255, 255, 255, 0.88);
  }

  #rk-pipe-guide .rk-pipe-card-number,
  #rk-pipe-guide .rk-pipe-icon {
    align-items: center;
    background: var(--rk-cyan-soft);
    border-radius: 10px;
    color: #076c85;
    display: inline-flex;
    font-size: 0.82rem;
    font-weight: 900;
    height: 36px;
    justify-content: center;
    margin-bottom: 14px;
    min-width: 36px;
    padding: 0 10px;
  }

  #rk-pipe-guide .rk-pipe-card h3 {
    color: var(--rk-ink);
    font-size: 1.12rem;
    line-height: 1.3;
    margin: 0 0 9px;
  }

  #rk-pipe-guide .rk-pipe-card p {
    color: var(--rk-copy);
    margin: 0;
  }

  #rk-pipe-guide .rk-pipe-note {
    background: #fff6e2;
    border-left: 6px solid var(--rk-yellow);
    border-radius: 14px;
    color: #5b4a1d;
    margin-top: 26px;
    padding: 18px 21px;
  }

  #rk-pipe-guide .rk-pipe-note p {
    margin: 0;
  }

  #rk-pipe-guide .rk-pipe-note-good {
    background: #e9faf5;
    border-left-color: var(--rk-green);
    color: #145e4d;
  }

  #rk-pipe-guide .rk-pipe-note-bad {
    background: #fff0ec;
    border-left-color: var(--rk-orange);
    color: #743425;
  }

  #rk-pipe-guide .rk-pipe-table-wrap {
    margin-top: 30px;
    overflow-x: auto;
  }

  #rk-pipe-guide table {
    border-collapse: separate;
    border-spacing: 0;
    min-width: 760px;
    width: 100%;
  }

  #rk-pipe-guide th {
    background: var(--rk-navy);
    border-bottom: 1px solid #31576a;
    color: #ffffff;
    font-size: 0.78rem;
    letter-spacing: 0.04em;
    padding: 15px 16px;
    text-align: left;
    text-transform: uppercase;
  }

  #rk-pipe-guide th:first-child {
    border-radius: 14px 0 0;
  }

  #rk-pipe-guide th:last-child {
    border-radius: 0 14px 0 0;
  }

  #rk-pipe-guide td {
    background: #ffffff;
    border-bottom: 1px solid var(--rk-line);
    color: var(--rk-copy);
    padding: 16px;
    vertical-align: top;
  }

  #rk-pipe-guide tbody tr td:first-child {
    border-left: 1px solid var(--rk-line);
  }

  #rk-pipe-guide tbody tr td:last-child {
    border-right: 1px solid var(--rk-line);
  }

  #rk-pipe-guide tbody tr:last-child td:first-child {
    border-radius: 0 0 0 14px;
  }

  #rk-pipe-guide tbody tr:last-child td:last-child {
    border-radius: 0 0 14px;
  }

  #rk-pipe-guide td strong {
    color: var(--rk-ink);
  }

  #rk-pipe-guide .rk-pipe-formula {
    background: #edf8fa;
    border: 1px solid #b4e1e7;
    border-radius: 13px;
    color: #086b82;
    font-family: Consolas, Monaco, monospace;
    font-size: 1rem;
    font-weight: 700;
    margin-top: 20px;
    padding: 15px 18px;
  }

  #rk-pipe-guide .rk-pipe-bullets {
    color: var(--rk-copy);
    margin: 20px 0 0;
    padding-left: 22px;
  }

  #rk-pipe-guide .rk-pipe-bullets li + li {
    margin-top: 9px;
  }

  #rk-pipe-guide .rk-snail-visual {
    background: #102f42;
    border: 1px solid #315a70;
    border-radius: 22px;
    margin-top: 32px;
    padding: 28px;
  }

  #rk-pipe-guide .rk-snail-visual-head {
    border-bottom: 1px solid #315a70;
    margin-bottom: 25px;
    padding-bottom: 20px;
  }

  #rk-pipe-guide .rk-snail-visual-head h3 {
    color: #ffffff;
    font-size: clamp(1.55rem, 3vw, 2.3rem);
    line-height: 1.2;
    margin: 0;
  }

  #rk-pipe-guide .rk-snail-visual-head p {
    color: #bad3dc;
    margin: 9px 0 0;
  }

  #rk-pipe-guide .rk-snail-visual-layout {
    display: grid;
    gap: 22px;
    grid-template-columns: minmax(0, 1.25fr) minmax(300px, 0.75fr);
  }

  #rk-pipe-guide .rk-snail-board {
    background: #f8fcfd;
    border: 1px solid #4d7183;
    border-radius: 18px;
    min-height: 420px;
    overflow: hidden;
    padding: 15px;
  }

  #rk-pipe-guide .rk-snail-board svg {
    display: block;
    height: auto;
    width: 100%;
  }

  #rk-pipe-guide .rk-snail-room {
    fill: #eaf3f6;
    stroke: #8ca9b6;
    stroke-width: 2;
  }

  #rk-pipe-guide .rk-snail-door {
    fill: #ffffff;
    stroke: #8ca9b6;
    stroke-width: 2;
  }

  #rk-pipe-guide .rk-snail-window {
    stroke: #29c4d7;
    stroke-linecap: round;
    stroke-width: 8;
  }

  #rk-pipe-guide .rk-snail-route {
    fill: none;
    opacity: 0.11;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 8;
    transition: opacity 180ms ease, stroke-width 180ms ease;
  }

  #rk-pipe-guide .rk-snail-route.is-supply {
    stroke: var(--rk-orange);
  }

  #rk-pipe-guide .rk-snail-route.is-return {
    stroke: #168cb7;
  }

  #rk-pipe-guide .rk-snail-route.is-done {
    opacity: 0.72;
  }

  #rk-pipe-guide .rk-snail-route.is-active {
    opacity: 1;
    stroke-width: 11;
  }

  #rk-pipe-guide .rk-snail-board-label {
    fill: var(--rk-ink);
    font-family: Arial, Helvetica, sans-serif;
    font-size: 13px;
    font-weight: 800;
  }

  #rk-pipe-guide .rk-snail-board-small {
    fill: #547080;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 11px;
    font-weight: 700;
  }

  #rk-pipe-guide .rk-snail-stage-panel {
    background: #17394b;
    border: 1px solid #376177;
    border-radius: 18px;
    display: flex;
    flex-direction: column;
    padding: 24px;
  }

  #rk-pipe-guide .rk-snail-stage-kicker {
    color: #70e5ef;
    font-size: 0.72rem;
    font-weight: 900;
    letter-spacing: 0.1em;
    text-transform: uppercase;
  }

  #rk-pipe-guide .rk-snail-stage-panel h3 {
    color: #ffffff;
    font-size: 1.55rem;
    line-height: 1.25;
    margin: 9px 0 10px;
  }

  #rk-pipe-guide .rk-snail-stage-panel > p {
    color: #c8dce3;
    margin: 0;
  }

  #rk-pipe-guide .rk-snail-stage-facts {
    display: grid;
    gap: 10px;
    margin-top: 21px;
  }

  #rk-pipe-guide .rk-snail-stage-fact {
    background: rgba(255, 255, 255, 0.055);
    border: 1px solid rgba(255, 255, 255, 0.13);
    border-radius: 12px;
    padding: 14px;
  }

  #rk-pipe-guide .rk-snail-stage-fact strong {
    color: #70e5ef;
    display: block;
    font-size: 0.7rem;
    letter-spacing: 0.07em;
    margin-bottom: 4px;
    text-transform: uppercase;
  }

  #rk-pipe-guide .rk-snail-stage-fact span {
    color: #ffffff;
    font-size: 0.9rem;
  }

  #rk-pipe-guide .rk-snail-step-button {
    background: #173e51;
    border: 1px solid #356178;
    border-radius: 15px;
    color: #ffffff;
    cursor: pointer;
    min-height: 112px;
    padding: 17px;
    text-align: left;
  }

  #rk-pipe-guide .rk-snail-step-button[aria-pressed="true"] {
    background: var(--rk-cyan);
    border-color: var(--rk-cyan);
    color: #072838;
  }

  #rk-pipe-guide .rk-snail-step-number {
    align-items: center;
    background: rgba(255, 255, 255, 0.13);
    border-radius: 8px;
    display: inline-flex;
    font-weight: 900;
    height: 32px;
    justify-content: center;
    margin-bottom: 10px;
    width: 32px;
  }

  #rk-pipe-guide .rk-snail-step-button[aria-pressed="true"] .rk-snail-step-number {
    background: rgba(7, 40, 56, 0.13);
  }

  #rk-pipe-guide .rk-snail-step-button strong {
    display: block;
    font-size: 0.94rem;
    line-height: 1.3;
  }

  #rk-pipe-guide .rk-snail-legend {
    display: flex;
    flex-wrap: wrap;
    gap: 12px 20px;
    margin-top: 18px;
  }

  #rk-pipe-guide .rk-snail-legend span {
    align-items: center;
    color: #c8dce3;
    display: inline-flex;
    font-size: 0.82rem;
    font-weight: 800;
    gap: 8px;
  }

  #rk-pipe-guide .rk-snail-legend i {
    border-radius: 999px;
    display: inline-block;
    height: 7px;
    width: 32px;
  }

  #rk-pipe-guide .rk-snail-legend .is-hot {
    background: var(--rk-orange);
  }

  #rk-pipe-guide .rk-snail-legend .is-cool {
    background: #168cb7;
  }

  #rk-pipe-guide .rk-snail-calculator {
    background: #102f42;
    border: 1px solid #315a70;
    border-radius: 22px;
    margin-top: 32px;
    padding: 28px;
  }

  #rk-pipe-guide .rk-snail-calculator-head {
    border-bottom: 1px solid #315a70;
    margin-bottom: 24px;
    padding-bottom: 19px;
  }

  #rk-pipe-guide .rk-snail-calculator-head h3 {
    color: #ffffff;
    font-size: clamp(1.55rem, 3vw, 2.3rem);
    line-height: 1.2;
    margin: 0;
  }

  #rk-pipe-guide .rk-snail-calculator-head p {
    color: #bad3dc;
    margin: 9px 0 0;
  }

  #rk-pipe-guide .rk-snail-fields {
    display: grid;
    gap: 15px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  #rk-pipe-guide .rk-snail-field {
    display: block;
  }

  #rk-pipe-guide .rk-snail-field span {
    color: #eaf6f8;
    display: block;
    font-size: 0.78rem;
    font-weight: 800;
    line-height: 1.35;
    margin-bottom: 7px;
  }

  #rk-pipe-guide .rk-snail-field input,
  #rk-pipe-guide .rk-snail-field select {
    background: #ffffff;
    border: 1px solid #b8ccd5;
    border-radius: 10px;
    color: var(--rk-ink);
    min-height: 48px;
    padding: 10px 12px;
    width: 100%;
  }

  #rk-pipe-guide .rk-snail-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 11px;
    margin-top: 20px;
  }

  #rk-pipe-guide .rk-snail-calculate,
  #rk-pipe-guide .rk-snail-reset {
    border-radius: 11px;
    cursor: pointer;
    font-weight: 900;
    min-height: 48px;
    padding: 11px 18px;
  }

  #rk-pipe-guide .rk-snail-calculate {
    background: var(--rk-orange);
    border: 1px solid var(--rk-orange);
    color: #ffffff;
  }

  #rk-pipe-guide .rk-snail-calculate:hover {
    background: var(--rk-orange-dark);
  }

  #rk-pipe-guide .rk-snail-reset {
    background: transparent;
    border: 1px solid #5d7c8d;
    color: #ffffff;
  }

  #rk-pipe-guide .rk-snail-calculator-result {
    background: #ffffff;
    border-left: 7px solid var(--rk-yellow);
    border-radius: 17px;
    margin-top: 22px;
    padding: 24px;
  }

  #rk-pipe-guide .rk-snail-calculator-result.is-good {
    border-left-color: var(--rk-green);
  }

  #rk-pipe-guide .rk-snail-calculator-result.is-stop {
    border-left-color: var(--rk-orange);
  }

  #rk-pipe-guide .rk-snail-result-status {
    color: var(--rk-ink);
    font-size: clamp(1.3rem, 2.5vw, 1.95rem);
    font-weight: 900;
    line-height: 1.25;
    margin: 0;
  }

  #rk-pipe-guide .rk-snail-result-intro {
    color: var(--rk-copy);
    margin: 8px 0 0;
  }

  #rk-pipe-guide .rk-snail-result-card {
    background: #f4f9fa;
    border: 1px solid var(--rk-line);
    border-radius: 13px;
    padding: 16px;
  }

  #rk-pipe-guide .rk-snail-result-card strong {
    color: var(--rk-cyan-dark);
    display: block;
    font-size: 0.7rem;
    letter-spacing: 0.06em;
    margin-bottom: 6px;
    text-transform: uppercase;
  }

  #rk-pipe-guide .rk-snail-result-card span {
    color: var(--rk-ink);
    display: block;
    font-size: 1.35rem;
    font-weight: 900;
    line-height: 1.2;
  }

  #rk-pipe-guide .rk-snail-result-card small {
    color: var(--rk-muted);
    display: block;
    font-size: 0.75rem;
    margin-top: 5px;
  }

  #rk-pipe-guide .rk-snail-disclaimer {
    color: #6c8190;
    font-size: 0.78rem;
    margin: 16px 0 0;
  }

  #rk-pipe-guide .rk-pipe-cta {
    background:
      radial-gradient(circle at 93% 120%, rgba(41, 196, 215, 0.22) 0, rgba(41, 196, 215, 0.22) 19%, transparent 19.2%),
      linear-gradient(125deg, #0b2536 0%, #153e51 62%, #0d6272 100%);
    border-radius: 21px;
    color: #ffffff;
    margin-top: 34px;
    overflow: hidden;
    padding: 36px;
  }

  #rk-pipe-guide .rk-pipe-cta-title {
    color: #ffffff;
    font-size: clamp(1.7rem, 3.3vw, 2.8rem);
    margin: 0;
    max-width: 970px;
  }

  #rk-pipe-guide .rk-pipe-cta p {
    color: #cee0e6;
    margin: 14px 0 0;
    max-width: 970px;
  }

  #rk-pipe-guide .rk-pipe-cta-button {
    background: var(--rk-orange);
    border-radius: 12px;
    box-shadow: 0 12px 25px rgba(255, 104, 70, 0.24);
    color: #ffffff;
    display: inline-block;
    font-weight: 900;
    margin-top: 22px;
    padding: 14px 20px;
    text-decoration: none;
  }

  #rk-pipe-guide .rk-pipe-cta-button:hover,
  #rk-pipe-guide .rk-pipe-cta-button:focus-visible {
    background: #ffffff;
    color: var(--rk-orange-dark);
  }

  #rk-pipe-guide .rk-pipe-link-disclosure {
    color: #a9c4ce;
    display: block;
    font-size: 0.75rem;
    margin-top: 12px;
  }

  #rk-pipe-guide .rk-pipe-final {
    background: linear-gradient(180deg, #f4fafb 0%, #ffffff 100%);
  }

  #rk-pipe-guide .rk-pipe-source-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  #rk-pipe-guide .rk-pipe-source-card {
    background: #f2f7f9;
    border: 1px solid #cfe0e7;
    border-radius: 15px;
    padding: 20px;
  }

  #rk-pipe-guide .rk-pipe-source-card a {
    color: var(--rk-cyan-dark);
    font-size: 1rem;
    font-weight: 900;
  }

  #rk-pipe-guide .rk-pipe-source-card p {
    color: var(--rk-copy);
    margin: 8px 0 0;
  }

  #rk-pipe-guide .rk-pipe-responsibility {
    background: #fff0eb;
    border-left: 6px solid var(--rk-orange);
    border-radius: 14px;
    color: #613427;
    margin-top: 26px;
    padding: 19px 22px;
  }

  #rk-pipe-guide .rk-pipe-responsibility p {
    margin: 0;
  }

  #rk-pipe-guide .rk-pipe-faq {
    display: grid;
    gap: 12px;
    margin-top: 30px;
  }

  #rk-pipe-guide .rk-pipe-faq details {
    background: #ffffff;
    border: 1px solid var(--rk-line);
    border-radius: 14px;
    overflow: hidden;
  }

  #rk-pipe-guide .rk-pipe-faq summary {
    color: var(--rk-ink);
    cursor: pointer;
    font-weight: 900;
    list-style: none;
    padding: 19px 52px 19px 20px;
    position: relative;
  }

  #rk-pipe-guide .rk-pipe-faq summary::-webkit-details-marker {
    display: none;
  }

  #rk-pipe-guide .rk-pipe-faq summary::after {
    color: var(--rk-cyan-dark);
    content: "+";
    font-size: 1.55rem;
    font-weight: 700;
    position: absolute;
    right: 20px;
    top: 12px;
  }

  #rk-pipe-guide .rk-pipe-faq details[open] summary::after {
    content: "−";
  }

  #rk-pipe-guide .rk-pipe-faq-answer {
    border-top: 1px solid var(--rk-line);
    color: var(--rk-copy);
    padding: 18px 20px;
  }

  #rk-pipe-guide .rk-pipe-faq-answer p {
    margin: 0;
  }

  #rk-pipe-guide .rk-pipe-author {
    background: #eef6f8;
    border-top: 1px solid var(--rk-line);
    padding: 64px 58px;
  }

  #rk-pipe-guide .rk-pipe-author-layout {
    background: #ffffff;
    border: 1px solid #cbdde5;
    border-radius: 21px;
    display: grid;
    grid-template-columns: 290px minmax(0, 1fr);
    overflow: hidden;
  }

  #rk-pipe-guide .rk-pipe-author-side {
    align-items: center;
    background: var(--rk-navy);
    color: #ffffff;
    display: flex;
    flex-direction: column;
    padding: 35px 25px;
    text-align: center;
  }

  #rk-pipe-guide .rk-pipe-author-photo {
    background: #ffffff;
    border: 6px solid rgba(255, 255, 255, 0.2);
    border-radius: 50%;
    overflow: hidden;
    width: 158px;
  }

  #rk-pipe-guide .rk-pipe-author-name {
    font-size: 1.25rem;
    font-weight: 900;
    margin-top: 20px;
  }

  #rk-pipe-guide .rk-pipe-author-role {
    color: #bcd2db;
    font-size: 0.82rem;
    margin: 8px 0 0;
  }

  #rk-pipe-guide .rk-pipe-author-social {
    display: flex;
    gap: 10px;
    margin-top: 21px;
  }

  #rk-pipe-guide .rk-pipe-author-social a {
    align-items: center;
    border: 1px solid #497185;
    border-radius: 50%;
    color: #d8e9ee;
    display: inline-flex;
    height: 42px;
    justify-content: center;
    text-decoration: none;
    width: 42px;
  }

  #rk-pipe-guide .rk-pipe-author-social a:hover {
    background: var(--rk-cyan);
    color: var(--rk-navy);
  }

  #rk-pipe-guide .rk-pipe-author-main {
    padding: 37px;
  }

  #rk-pipe-guide .rk-pipe-author-title {
    font-size: clamp(1.85rem, 3.5vw, 3rem);
  }

  #rk-pipe-guide .rk-pipe-author-quote {
    background: #f7fbfc;
    border: 1px solid #cfe0e7;
    border-left: 6px solid var(--rk-cyan);
    border-radius: 14px;
    color: var(--rk-ink);
    font-size: 1.04rem;
    font-style: italic;
    font-weight: 700;
    line-height: 1.7;
    margin-top: 24px;
    padding: 20px 22px;
  }

  #rk-pipe-guide .rk-pipe-author-main > p {
    color: var(--rk-copy);
    margin: 18px 0 0;
  }

  #rk-pipe-guide .rk-pipe-author-facts {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  #rk-pipe-guide .rk-pipe-author-fact {
    background: #eef7f9;
    border: 1px solid #d2e4e9;
    border-radius: 13px;
    color: var(--rk-copy);
    font-size: 0.84rem;
    padding: 15px;
  }

  #rk-pipe-guide .rk-pipe-author-fact strong {
    color: var(--rk-cyan-dark);
    display: block;
    font-size: 0.73rem;
    letter-spacing: 0.06em;
    margin-bottom: 5px;
    text-transform: uppercase;
  }

  #rk-pipe-guide .rk-pipe-visually-hidden {
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    height: 1px;
    overflow: hidden;
    position: absolute;
    white-space: nowrap;
    width: 1px;
  }

  @media (max-width: 1050px) {
    #rk-pipe-guide .rk-pipe-grid-4,
    #rk-pipe-guide .rk-snail-results {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    #rk-pipe-guide .rk-snail-fields {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    #rk-pipe-guide .rk-snail-visual-layout {
      grid-template-columns: minmax(0, 1fr);
    }

    #rk-pipe-guide .rk-snail-board {
      min-height: 0;
    }
  }

  @media (max-width: 820px) {
    #rk-pipe-guide .rk-pipe-hero,
    #rk-pipe-guide .rk-pipe-section,
    #rk-pipe-guide .rk-pipe-author {
      padding-left: 28px;
      padding-right: 28px;
    }

    #rk-pipe-guide .rk-pipe-hero::before {
      left: 28px;
    }

    #rk-pipe-guide .rk-pipe-shortcuts {
      padding-left: 22px;
      padding-right: 22px;
    }

    #rk-pipe-guide .rk-pipe-grid-3,
    #rk-pipe-guide .rk-snail-step-grid,
    #rk-pipe-guide .rk-snail-check-grid {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    #rk-pipe-guide .rk-pipe-author-layout {
      grid-template-columns: minmax(0, 1fr);
    }
  }

  @media (max-width: 660px) {
    #rk-pipe-guide .rk-pipe-hero {
      padding-bottom: 42px;
      padding-top: 52px;
    }

    #rk-pipe-guide .rk-pipe-section,
    #rk-pipe-guide .rk-pipe-author {
      padding-bottom: 46px;
      padding-top: 46px;
    }

    #rk-pipe-guide .rk-pipe-grid-2,
    #rk-pipe-guide .rk-pipe-grid-3,
    #rk-pipe-guide .rk-pipe-grid-4,
    #rk-pipe-guide .rk-pipe-source-grid,
    #rk-pipe-guide .rk-pipe-author-facts,
    #rk-pipe-guide .rk-snail-step-grid,
    #rk-pipe-guide .rk-snail-results,
    #rk-pipe-guide .rk-snail-check-grid,
    #rk-pipe-guide .rk-snail-fields {
      grid-template-columns: minmax(0, 1fr);
    }

    #rk-pipe-guide .rk-snail-visual,
    #rk-pipe-guide .rk-snail-calculator,
    #rk-pipe-guide .rk-pipe-cta {
      border-radius: 17px;
      padding: 20px;
    }

    #rk-pipe-guide .rk-snail-stage-panel,
    #rk-pipe-guide .rk-snail-calculator-result {
      padding: 18px;
    }

    #rk-pipe-guide .rk-snail-actions {
      display: grid;
      grid-template-columns: minmax(0, 1fr);
    }

    #rk-pipe-guide .rk-snail-calculate,
    #rk-pipe-guide .rk-snail-reset,
    #rk-pipe-guide .rk-pipe-cta-button {
      text-align: center;
      width: 100%;
    }

    #rk-pipe-guide .rk-pipe-table-wrap {
      overflow: visible;
    }

    #rk-pipe-guide table,
    #rk-pipe-guide thead,
    #rk-pipe-guide tbody,
    #rk-pipe-guide tr,
    #rk-pipe-guide th,
    #rk-pipe-guide td {
      display: block;
      min-width: 0;
      width: 100%;
    }

    #rk-pipe-guide thead {
      clip: rect(0 0 0 0);
      clip-path: inset(50%);
      height: 1px;
      overflow: hidden;
      position: absolute;
      white-space: nowrap;
      width: 1px;
    }

    #rk-pipe-guide tbody {
      display: grid;
      gap: 14px;
    }

    #rk-pipe-guide tbody tr {
      background: #ffffff;
      border: 1px solid var(--rk-line);
      border-radius: 14px;
      overflow: hidden;
    }

    #rk-pipe-guide td,
    #rk-pipe-guide tbody tr td:first-child,
    #rk-pipe-guide tbody tr td:last-child {
      border: 0;
      border-bottom: 1px solid #e1ebef;
      border-radius: 0;
      padding: 13px 15px;
    }

    #rk-pipe-guide td:last-child {
      border-bottom: 0;
    }

    #rk-pipe-guide td::before {
      color: var(--rk-cyan-dark);
      content: attr(data-label);
      display: block;
      font-size: 0.69rem;
      font-weight: 900;
      letter-spacing: 0.07em;
      margin-bottom: 4px;
      text-transform: uppercase;
    }

    #rk-pipe-guide .rk-pipe-author-main {
      padding: 25px 20px;
    }
  }

  @media (max-width: 430px) {
    #rk-pipe-guide .rk-pipe-hero,
    #rk-pipe-guide .rk-pipe-section,
    #rk-pipe-guide .rk-pipe-author {
      padding-left: 18px;
      padding-right: 18px;
    }

    #rk-pipe-guide .rk-pipe-hero::before {
      left: 18px;
    }

    #rk-pipe-guide .rk-pipe-shortcuts {
      padding-left: 14px;
      padding-right: 14px;
    }

    #rk-pipe-guide .rk-pipe-shortcuts a {
      flex: 1 1 calc(50% - 9px);
      text-align: center;
    }

    #rk-pipe-guide .rk-pipe-hero-title {
      font-size: 2.25rem;
    }

    #rk-pipe-guide .rk-pipe-section-title {
      font-size: 1.9rem;
    }
  }

  @media (prefers-reduced-motion: reduce) {
    #rk-pipe-guide *,
    #rk-pipe-guide *::before,
    #rk-pipe-guide *::after {
      scroll-behavior: auto;
      transition-duration: 0.01ms;
    }
  }
</style>

<article id="rk-pipe-guide" aria-labelledby="rk-snail-visual-title">
  <div class="rk-pipe-shell">
    <header class="rk-pipe-hero">
      <span class="rk-pipe-kicker">Od obciążenia pomieszczenia do poprawnie zamkniętej pętli</span>
      <div class="rk-pipe-hero-title" id="rk-snail-visual-title">Układ ślimakowy podłogówki: <span>geometria bez zgadywania</span></div>
      <p class="rk-pipe-hero-lead">Ślimak prowadzi cieplejszy przewód zasilający obok chłodniejszego przewodu powrotnego, dzięki czemu ułatwia uzyskanie równomiernego rozkładu temperatury podłogi. Sam kształt nie dobiera jednak mocy, rozstawu, przepływu ani długości pętli — te parametry muszą wynikać z obliczeń.</p>
      <div class="rk-pipe-hero-tags" aria-label="Zakres poradnika">
        <span>schemat krok po kroku</span>
        <span>zasada podwójnego rozstawu</span>
        <span>kalkulator pętli</span>
        <span>dobiegi i dylatacje</span>
        <span>błędy wykonawcze</span>
      </div>
      <div class="rk-pipe-meta">
        <span>Autor: <strong>Robert Kucharski</strong></span>
        <span>Czas czytania: <strong>około 24 minuty</strong></span>
        <span>Aktualizacja techniczna: <strong>15 września 2026 r.</strong></span>
      </div>
    </header>

    <nav class="rk-pipe-shortcuts" aria-label="Na skróty — wszystkie sekcje artykułu">
      <span class="rk-pipe-shortcuts-label">Na skróty</span>
      <a href="#rk-snail-answer">Szybka odpowiedź</a>
      <a href="#rk-snail-operation">Jak działa</a>
      <a href="#rk-snail-inputs">Dane wejściowe</a>
      <a href="#rk-snail-visual">Schemat interaktywny</a>
      <a href="#rk-snail-calculator-section">Kalkulator pętli</a>
      <a href="#rk-snail-spacing">Rozstaw i nawrót</a>
      <a href="#rk-snail-edge">Strefy brzegowe</a>
      <a href="#rk-snail-obstacles">Przeszkody</a>
      <a href="#rk-snail-hydraulics">Hydraulika</a>
      <a href="#rk-snail-manifold">Rozdzielacz</a>
      <a href="#rk-snail-dilatation">Dylatacje</a>
      <a href="#rk-snail-test">Próba i odbiór</a>
      <a href="#rk-snail-comparison">Ślimak czy meander</a>
      <a href="#rk-snail-errors">Błędy</a>
      <a href="#rk-snail-checklist">Checklista</a>
      <a href="#rk-snail-final">Podsumowanie</a>
      <a href="#rk-snail-sources">Źródła</a>
      <a href="#rk-snail-faq">FAQ</a>
      <a href="#rk-snail-author">Autor</a>
    </nav>

    <section class="rk-pipe-section" id="rk-snail-answer">
      <span class="rk-pipe-eyebrow">Odpowiedź w 60 sekund</span>
      <h2 class="rk-pipe-section-title">Na czym polega układ ślimakowy ogrzewania podłogowego?</h2>
      <p class="rk-pipe-lead"><strong>Układ ślimakowy, nazywany też spiralnym, jest sposobem prowadzenia jednej ciągłej rury od rozdzielacza, przez pole grzewcze i z powrotem do rozdzielacza.</strong> Pierwsza część obwodu biegnie do wnętrza pola z pozostawieniem miejsca, które podczas powrotu wypełnia druga część tej samej rury.</p>
      <div class="rk-pipe-answer">
        <strong>Jeżeli docelowy rozstaw wynosi 10 cm, podczas prowadzenia zasilania pozostawia się zwykle wolne międzyrzędzia tak, aby powrót uzupełnił trasę do rozstawu 10 cm.</strong>
        <p>Cieplejsze i chłodniejsze odcinki sąsiadują ze sobą, co sprzyja wyrównaniu temperatury powierzchni. Nie oznacza to jednak identycznej temperatury w każdym punkcie ani automatycznie mniejszych oporów całej instalacji.</p>
      </div>
      <div class="rk-pipe-grid-3">
        <article class="rk-pipe-card"><span class="rk-pipe-icon">1</span><h3>Jedna nieprzerwana rura</h3><p>Pętla rozpoczyna się i kończy na rozdzielaczu. W polu grzewczym nie planuje się przypadkowych, ukrytych połączeń.</p></article>
        <article class="rk-pipe-card"><span class="rk-pipe-icon">2</span><h3>Zasilanie obok powrotu</h3><p>Sąsiadujące odcinki mają różne temperatury, dlatego ich naprzemienne położenie pomaga ograniczyć pasowy rozkład ciepła.</p></article>
        <article class="rk-pipe-card"><span class="rk-pipe-icon">3</span><h3>Geometria po obliczeniach</h3><p>Najpierw ustala się obciążenie pomieszczenia, powierzchnię czynną, moc podłogi i rozstaw, a dopiero potem rysuje trasę.</p></article>
      </div>
      <p class="rk-pipe-copy">Jeżeli chcesz najpierw uporządkować zasadę działania całego systemu, zobacz poradnik <a href="https://projekt-ogrzewania.pl/jak-dziala-ogrzewanie-podlogowe/">jak działa ogrzewanie podłogowe</a>. Ten artykuł skupia się wyłącznie na wykonaniu pojedynczego układu ślimakowego.</p>
    </section>

    <section class="rk-pipe-section rk-pipe-section-soft" id="rk-snail-operation">
      <span class="rk-pipe-eyebrow">Co wynika z geometrii, a co z projektu</span>
      <h2 class="rk-pipe-section-title">Co ślimak poprawia, a czego nie gwarantuje?</h2>
      <p class="rk-pipe-lead">Ślimak jest sposobem rozmieszczenia rury. Nie jest osobnym źródłem ciepła, parametrem hydraulicznym ani receptą na stałą temperaturę zasilania.</p>
      <div class="rk-pipe-table-wrap">
        <table>
          <thead><tr><th>Zagadnienie</th><th>Co może dać układ ślimakowy</th><th>Czego nie można obiecać bez obliczeń</th></tr></thead>
          <tbody>
            <tr><td data-label="Zagadnienie"><strong>Temperatura powierzchni</strong></td><td data-label="Co może dać ślimak">Naprzemienne sąsiedztwo zasilania i powrotu sprzyja bardziej równomiernemu profilowi.</td><td data-label="Czego nie można obiecać">Jednej temperatury w całym pomieszczeniu ani konkretnej różnicy wyrażonej w kelwinach.</td></tr>
            <tr><td data-label="Zagadnienie"><strong>Moc cieplna</strong></td><td data-label="Co może dać ślimak">Pozwala rozmieścić powierzchnię grzejną zgodnie z ustalonym rozstawem.</td><td data-label="Czego nie można obiecać">Pokrycia strat ciepła bez sprawdzenia konstrukcji podłogi, temperatur i powierzchni czynnej.</td></tr>
            <tr><td data-label="Zagadnienie"><strong>Hydraulika</strong></td><td data-label="Co może dać ślimak">Umożliwia wykonanie łagodnych zmian kierunku i czytelny podział pola.</td><td data-label="Czego nie można obiecać">Stałego procentowego spadku oporów względem meandra. Decydują też długość, światło rury i przepływ.</td></tr>
            <tr><td data-label="Zagadnienie"><strong>Pompa ciepła</strong></td><td data-label="Co może dać ślimak">Może pomóc wykorzystać dużą powierzchnię przy niskiej temperaturze, jeśli system ma wymaganą moc.</td><td data-label="Czego nie można obiecać">Określonego wzrostu COP lub oszczędności wynikających wyłącznie z kształtu pętli.</td></tr>
          </tbody>
        </table>
      </div>
      <div class="rk-pipe-note"><p><strong>Najważniejsze rozróżnienie:</strong> układ rury wpływa na przestrzenne oddawanie ciepła, natomiast moc, przepływ i strata ciśnienia są wynikami obliczeniowymi.</p></div>
    </section>

    <section class="rk-pipe-section" id="rk-snail-inputs">
      <span class="rk-pipe-eyebrow">Zanim rozwiniesz pierwszy metr rury</span>
      <h2 class="rk-pipe-section-title">Jakie dane są potrzebne przed rozrysowaniem ślimaka?</h2>
      <p class="rk-pipe-lead">Rysowanie trasy rozpoczyna się dopiero wtedy, gdy wiadomo, ile ciepła ma oddać podłoga oraz jaka część pomieszczenia może być aktywnie ogrzewana.</p>
      <div class="rk-pipe-grid-4">
        <article class="rk-pipe-card"><span class="rk-pipe-card-number">01</span><h3>Obciążenie pomieszczenia</h3><p>Wartość w watach wynikająca z obliczeń dla warunków projektowych, a nie ze średniego wskaźnika całego domu.</p></article>
        <article class="rk-pipe-card"><span class="rk-pipe-card-number">02</span><h3>Powierzchnia czynna</h3><p>Pole po odjęciu trwałej zabudowy, wyłączeń i miejsc, w których rury nie powinny być prowadzone.</p></article>
        <article class="rk-pipe-card"><span class="rk-pipe-card-number">03</span><h3>Warstwy podłogi</h3><p>Rodzaj jastrychu, przykrycie rury, okładzina i jej rzeczywisty opór cieplny wraz z podkładem.</p></article>
        <article class="rk-pipe-card"><span class="rk-pipe-card-number">04</span><h3>Parametry wody</h3><p>Temperatura zasilania i powrotu przyjęta dla całego systemu oraz wymagana moc jednostkowa.</p></article>
        <article class="rk-pipe-card"><span class="rk-pipe-card-number">05</span><h3>Rozstaw</h3><p>Dobierany z charakterystyki systemu do potrzebnej mocy i ograniczeń temperatury powierzchni.</p></article>
        <article class="rk-pipe-card"><span class="rk-pipe-card-number">06</span><h3>Położenie rozdzielacza</h3><p>Wpływa na długość dobiegów, liczbę przejść przez progi oraz rzeczywistą długość każdej pętli.</p></article>
        <article class="rk-pipe-card"><span class="rk-pipe-card-number">07</span><h3>Pola dylatacyjne</h3><p>Trasa musi uwzględniać układ jastrychu, przejścia i wymagane odcinki ochronne.</p></article>
        <article class="rk-pipe-card"><span class="rk-pipe-card-number">08</span><h3>Hydraulika</h3><p>Planowane długości, przepływy i opory muszą mieścić się w możliwościach rozdzielacza oraz pompy.</p></article>
      </div>
      <p class="rk-pipe-copy">Początkiem jest <a href="https://projekt-ogrzewania.pl/projektowe-obciazenie-cieplne-ozc/">projektowe obciążenie cieplne pomieszczeń</a>. Następnie wyznacza się miejsca, <a href="https://projekt-ogrzewania.pl/gdzie-nie-ukladac-ogrzewania-podlogowego/">w których nie układać ogrzewania podłogowego</a>, i dopiero wtedy planuje <a href="https://projekt-ogrzewania.pl/jak-zaplanowac-rozmieszczenie-petli-grzewczych-w-ogrzewaniu-podlogowym/">rozmieszczenie pętli grzewczych</a>.</p>
    </section>

    <section class="rk-pipe-section rk-pipe-section-dark" id="rk-snail-visual">
      <span class="rk-pipe-eyebrow">Moduł edukacyjny</span>
      <h2 class="rk-pipe-section-title">Interaktywny schemat układu ślimakowego krok po kroku</h2>
      <p class="rk-pipe-lead">Klikaj kolejne etapy. Schemat pokazuje zasadę podwójnego rozstawu na prostokątnym polu. W prawdziwym pomieszczeniu przebieg trzeba dostosować do rzutu, powierzchni czynnej, dylatacji i dopuszczalnego promienia gięcia rury.</p>
      <div class="rk-snail-visual" id="rk-snail-visual-tool">
        <div class="rk-snail-visual-head">
          <h3>Jak zasilanie zmienia się w powrót?</h3>
          <p>Kolor pomarańczowy oznacza pierwszą część obwodu, a niebieski powrót prowadzony pomiędzy pozostawionymi odcinkami.</p>
        </div>
        <div class="rk-snail-visual-layout">
          <div>
            <div class="rk-snail-board">
              <svg viewBox="0 0 640 420" role="img" aria-labelledby="rk-snail-svg-title rk-snail-svg-desc">
                <title id="rk-snail-svg-title">Schemat wykonywania pętli ogrzewania podłogowego w układzie ślimakowym</title>
                <desc id="rk-snail-svg-desc">Sześć etapów prowadzenia rury od rozdzielacza, do środka pola grzewczego i z powrotem.</desc>
                <rect class="rk-snail-room" x="48" y="38" width="552" height="342" rx="10"></rect>
                <line class="rk-snail-window" x1="190" y1="38" x2="450" y2="38"></line>
                <rect class="rk-snail-door" x="48" y="328" width="22" height="52"></rect>
                <rect x="4" y="330" width="38" height="72" rx="8" fill="#d9e7ec" stroke="#7595a4" stroke-width="2"></rect>
                <text class="rk-snail-board-small" x="3" y="322">rozdzielacz</text>
                <text class="rk-snail-board-label" x="15" y="355">Z</text>
                <text class="rk-snail-board-label" x="15" y="390">P</text>
                <text class="rk-snail-board-small" x="273" y="27">przeszklenie</text>
                <path class="rk-snail-route is-supply" data-rk-stage="1" d="M 22 354 L 60 354 L 60 52"></path>
                <path class="rk-snail-route is-supply" data-rk-stage="2" d="M 60 52 L 586 52 L 586 366 L 92 366 L 92 82 L 556 82 L 556 336"></path>
                <path class="rk-snail-route is-supply" data-rk-stage="3" d="M 556 336 L 122 336 L 122 112 L 526 112 L 526 306 L 152 306 L 152 142 L 496 142 L 496 276 L 182 276 L 182 172 L 466 172 L 466 246 L 212 246 L 212 202 L 436 202"></path>
                <path class="rk-snail-route is-supply" data-rk-stage="4" d="M 436 202 Q 451 202 451 217 Q 451 232 436 232 L 227 232"></path>
                <path class="rk-snail-route is-return" data-rk-stage="5" d="M 227 232 L 227 261 L 481 261 L 481 157 L 167 157 L 167 291 L 511 291 L 511 127 L 137 127 L 137 321 L 541 321 L 541 97 L 107 97 L 107 351 L 571 351 L 571 67 L 77 67 L 77 380"></path>
                <path class="rk-snail-route is-return" data-rk-stage="6" d="M 77 380 L 22 380"></path>
                <circle cx="22" cy="354" r="5" fill="#ff6846"></circle>
                <circle cx="22" cy="380" r="5" fill="#168cb7"></circle>
              </svg>
            </div>
            <div class="rk-snail-legend" aria-hidden="true">
              <span><i class="is-hot"></i>zasilanie — pierwsza część pętli</span>
              <span><i class="is-cool"></i>powrót — druga część pętli</span>
            </div>
          </div>
          <div class="rk-snail-stage-panel" aria-live="polite">
            <span class="rk-snail-stage-kicker" id="rk-snail-stage-kicker">Etap 1 z 6</span>
            <h3 id="rk-snail-stage-title">Wyjdź z rozdzielacza</h3>
            <p id="rk-snail-stage-copy">Poprowadź jeden ciągły odcinek do początku powierzchni czynnej. Dobieg jest częścią całkowitej długości oraz straty ciśnienia pętli.</p>
            <div class="rk-snail-stage-facts">
              <div class="rk-snail-stage-fact"><strong>Cel etapu</strong><span id="rk-snail-stage-purpose">Dojść do pola możliwie czytelną, chronioną trasą.</span></div>
              <div class="rk-snail-stage-fact"><strong>Sprawdź</strong><span id="rk-snail-stage-check">Przejścia przez progi, dylatacje oraz kolizje z innymi instalacjami.</span></div>
              <div class="rk-snail-stage-fact"><strong>Typowy błąd</strong><span id="rk-snail-stage-error">Pomijanie dobiegu podczas obliczania długości obwodu.</span></div>
            </div>
          </div>
        </div>
        <div class="rk-snail-step-grid" aria-label="Etapy wykonania układu ślimakowego">
          <button class="rk-snail-step-button" type="button" aria-pressed="true" data-rk-snail-step="1"><span class="rk-snail-step-number">1</span><strong>Wyjście z rozdzielacza</strong></button>
          <button class="rk-snail-step-button" type="button" aria-pressed="false" data-rk-snail-step="2"><span class="rk-snail-step-number">2</span><strong>Zewnętrzna część zasilania</strong></button>
          <button class="rk-snail-step-button" type="button" aria-pressed="false" data-rk-snail-step="3"><span class="rk-snail-step-number">3</span><strong>Spirala do środka</strong></button>
          <button class="rk-snail-step-button" type="button" aria-pressed="false" data-rk-snail-step="4"><span class="rk-snail-step-number">4</span><strong>Łagodny nawrót</strong></button>
          <button class="rk-snail-step-button" type="button" aria-pressed="false" data-rk-snail-step="5"><span class="rk-snail-step-number">5</span><strong>Powrót między rurami</strong></button>
          <button class="rk-snail-step-button" type="button" aria-pressed="false" data-rk-snail-step="6"><span class="rk-snail-step-number">6</span><strong>Zamknięcie pętli</strong></button>
        </div>
      </div>
      <div class="rk-pipe-note"><p><strong>To schemat zasady, nie rysunek wykonawczy.</strong> Nie pokazuje rzeczywistej liczby zwojów, skali, stref wyłączonych, przepływu ani oporów konkretnej pętli.</p></div>
    </section>

    <section class="rk-pipe-section rk-pipe-section-soft" id="rk-snail-calculator-section">
      <span class="rk-pipe-eyebrow">Kalkulator geometrii — bez udawania OZC</span>
      <h2 class="rk-pipe-section-title">Ile rury i ile pętli może wymagać układ ślimakowy?</h2>
      <p class="rk-pipe-lead">Kalkulator pokazuje wpływ powierzchni czynnej, rozstawu, długości dobiegu i planowanej liczby pętli. Nie wyznacza wymaganej mocy, przepływu ani spadku ciśnienia.</p>
      <div class="rk-snail-calculator" id="rk-snail-calculator">
        <div class="rk-snail-calculator-head">
          <h3>Sprawdź wariant podziału powierzchni</h3>
          <p>Zmieniaj liczbę pętli i obserwuj, jak do całkowitego metrażu dochodzą osobne podejścia każdego obwodu.</p>
        </div>
        <div class="rk-snail-fields">
          <label class="rk-snail-field"><span>Powierzchnia czynna [m²]</span><input id="rk-snail-area" type="number" min="1" max="500" step="0.1" value="20" inputmode="decimal"></label>
          <label class="rk-snail-field"><span>Docelowy rozstaw rur</span><select id="rk-snail-spacing-input"><option value="0.05">5 cm</option><option value="0.075">7,5 cm</option><option value="0.10">10 cm</option><option value="0.15" selected="">15 cm</option><option value="0.20">20 cm</option></select></label>
          <label class="rk-snail-field"><span>Dobieg w jedną stronę [m]</span><input id="rk-snail-approach" type="number" min="0" max="50" step="0.1" value="5" inputmode="decimal"></label>
          <label class="rk-snail-field"><span>Planowana liczba pętli</span><select id="rk-snail-loop-count"><option value="1">1 pętla</option><option value="2" selected="">2 pętle</option><option value="3">3 pętle</option><option value="4">4 pętle</option><option value="5">5 pętli</option><option value="6">6 pętli</option><option value="7">7 pętli</option><option value="8">8 pętli</option><option value="9">9 pętli</option><option value="10">10 pętli</option></select></label>
        </div>
        <div class="rk-snail-actions">
          <button class="rk-snail-calculate" id="rk-snail-calculate" type="button">Oblicz wariant</button>
          <button class="rk-snail-reset" id="rk-snail-reset" type="button">Przywróć przykład</button>
        </div>
        <div class="rk-snail-calculator-result" id="rk-snail-calculator-result" aria-live="polite">
          <p class="rk-snail-result-status" id="rk-snail-result-status">Wynik geometryczny — hydraulika pozostaje do sprawdzenia</p>
          <p class="rk-snail-result-intro" id="rk-snail-result-intro">Dwie pętle dzielą pole po 10,0 m². Średnia długość uwzględnia dwa osobne dobiegi.</p>
          <div class="rk-snail-results">
            <div class="rk-snail-result-card"><strong>Rura w polu</strong><span id="rk-snail-field-length">133,3 m</span><small>powierzchnia ÷ rozstaw</small></div>
            <div class="rk-snail-result-card"><strong>Łączne dobiegi</strong><span id="rk-snail-approach-length">20,0 m</span><small>tam i z powrotem dla każdej pętli</small></div>
            <div class="rk-snail-result-card"><strong>Łączna długość</strong><span id="rk-snail-total-length">153,3 m</span><small>wartość orientacyjna</small></div>
            <div class="rk-snail-result-card"><strong>Średnio na pętlę</strong><span id="rk-snail-average-length">76,7 m</span><small>rzeczywiste obwody mogą się różnić</small></div>
          </div>
          <p class="rk-snail-disclaimer">Wzór upraszcza geometrię. Nie uwzględnia rzeczywistych łuków, kształtu pola, lokalnych zagęszczeń, omijania przeszkód ani zapasu zakupowego. Wynik nie potwierdza średnicy rury, przepływu, oporu ani nastaw rozdzielacza.</p>
        </div>
      </div>
      <div class="rk-pipe-formula">L<sub>pola</sub> ≈ A ÷ s &nbsp; | &nbsp; L<sub>dobiegów</sub> = 2 × d × n &nbsp; | &nbsp; L<sub>średnia pętli</sub> ≈ (L<sub>pola</sub> + L<sub>dobiegów</sub>) ÷ n</div>
      <p class="rk-pipe-copy">Do samego szacowania materiału możesz wykorzystać również <a href="https://projekt-ogrzewania.pl/kalkulator-do-obliczania-ilosci-metrow-rury-potrzebnych-do-ogrzewania-podlogowego/">kalkulator ilości rury do ogrzewania podłogowego</a>. Wyjaśnienie zależności między rozstawem a zużyciem materiału znajdziesz w poradniku <a href="https://projekt-ogrzewania.pl/ile-rury-na-m%c2%b2-ogrzewania-podlogowego/">ile rury przypada na m² podłogówki</a>.</p>
      <aside class="rk-pipe-cta" aria-label="Indywidualny projekt ogrzewania podłogowego">
        <div class="rk-pipe-cta-title">Masz już geometrię i orientacyjną długość. Teraz trzeba sprawdzić, czy każda pętla dostarczy wymaganą moc</div>
        <p>Schemat i kalkulator nie wyznaczają obciążenia cieplnego pomieszczenia, temperatury zasilania, przepływów, oporów ani nastaw rozdzielacza. W projekcie łączymy te dane z rzeczywistym rzutem i dopiero wtedy rozrysowujemy obwody.</p>
        <a class="rk-pipe-cta-button" href="https://projekt-ogrzewania.pl/produkt/projekt-instalacji-ogrzewania-podlogowego-podlogowki/">Sprawdź zakres indywidualnego projektu podłogówki</a>
        <small class="rk-pipe-link-disclosure">Odnośnik prowadzi do płatnej usługi projektowej autora poradnika.</small>
      </aside>
    </section>

    <section class="rk-pipe-section" id="rk-snail-spacing">
      <span class="rk-pipe-eyebrow">Najważniejsza zasada wykonawcza</span>
      <h2 class="rk-pipe-section-title">Podwójny rozstaw i nawrót w środku ślimaka</h2>
      <p class="rk-pipe-lead">Podczas pierwszego przejścia trzeba pozostawić miejsce na odcinek powrotny. To dlatego rozstaw widoczny przed wykonaniem powrotu jest większy od docelowego rozstawu gotowej pętli.</p>
      <div class="rk-pipe-table-wrap">
        <table>
          <thead><tr><th>Docelowy rozstaw</th><th>Odstęp podczas pierwszego przejścia</th><th>Po ułożeniu powrotu</th><th>Ważne zastrzeżenie</th></tr></thead>
          <tbody>
            <tr><td data-label="Docelowy rozstaw"><strong>5 cm</strong></td><td data-label="Pierwsze przejście">około 10 cm</td><td data-label="Gotowa pętla">odcinki co 5 cm</td><td data-label="Zastrzeżenie">Bardzo gęsty układ wymaga sprawdzenia wykonalności, promieni gięcia i sensu cieplnego.</td></tr>
            <tr><td data-label="Docelowy rozstaw"><strong>10 cm</strong></td><td data-label="Pierwsze przejście">około 20 cm</td><td data-label="Gotowa pętla">odcinki co 10 cm</td><td data-label="Zastrzeżenie">Nie jest to automatyczny standard dla każdego pomieszczenia.</td></tr>
            <tr><td data-label="Docelowy rozstaw"><strong>15 cm</strong></td><td data-label="Pierwsze przejście">około 30 cm</td><td data-label="Gotowa pętla">odcinki co 15 cm</td><td data-label="Zastrzeżenie">Musi pokryć obciążenie przy przyjętej temperaturze i okładzinie.</td></tr>
            <tr><td data-label="Docelowy rozstaw"><strong>20 cm</strong></td><td data-label="Pierwsze przejście">około 40 cm</td><td data-label="Gotowa pętla">odcinki co 20 cm</td><td data-label="Zastrzeżenie">Może zwiększać nierównomierność temperatury; wymaga weryfikacji systemowej.</td></tr>
          </tbody>
        </table>
      </div>
      <div class="rk-pipe-grid-3">
        <article class="rk-pipe-card"><span class="rk-pipe-card-number">A</span><h3>Zostaw miejsce na powrót</h3><p>Odstęp musi być kontrolowany od początku. Błędu popełnionego na zewnętrznych zwojach nie da się wygodnie naprawić w środku.</p></article>
        <article class="rk-pipe-card"><span class="rk-pipe-card-number">B</span><h3>Zaplanuj centrum</h3><p>Nie zwężaj spirali do punktu. Pozostaw pole na nawrót zgodny z minimalnym promieniem gięcia konkretnej rury.</p></article>
        <article class="rk-pipe-card"><span class="rk-pipe-card-number">C</span><h3>Nie prostuj załamania na siłę</h3><p>Postępowanie z uszkodzonym odcinkiem powinno wynikać z instrukcji systemowej. Widoczne przewężenie wymaga oceny przed zakryciem.</p></article>
      </div>
      <p class="rk-pipe-copy">Rozstaw 10, 15 albo 20 cm nie wynika z samej nazwy źródła ciepła. Szczegółową procedurę opisuje poradnik <a href="https://projekt-ogrzewania.pl/rozstaw-rur-w-ogrzewaniu-podlogowym-co-10-czy-15-cm/">rozstaw rur 10 czy 15 cm</a>. Trzeba również uwzględnić <a href="https://projekt-ogrzewania.pl/opor-cieplny-r-m%c2%b2k-w-klucz-do-efektywnego-ogrzewania-podlogowego/">opór cieplny warstw nad rurą</a>.</p>
    </section>

    <section class="rk-pipe-section rk-pipe-section-soft" id="rk-snail-edge">
      <span class="rk-pipe-eyebrow">Więcej strat nie zawsze oznacza więcej rury</span>
      <h2 class="rk-pipe-section-title">Układ ślimakowy przy dużych oknach i w strefie brzegowej</h2>
      <p class="rk-pipe-lead">Przy przeszkleniu można skierować cieplejszą część pętli w stronę większego obciążenia albo zastosować lokalnie mniejszy rozstaw. Taka decyzja powinna wynikać z obliczeń, a nie z automatycznej zasady „zawsze 5 cm przy oknie”.</p>
      <div class="rk-pipe-grid-3">
        <article class="rk-pipe-card"><span class="rk-pipe-icon">1</span><h3>Najpierw policz obciążenie</h3><p>Nowoczesne przeszklenie nie musi wymagać osobnej strefy. Znaczenie mają parametry okna, wymiar, orientacja i temperatura projektowa.</p></article>
        <article class="rk-pipe-card"><span class="rk-pipe-icon">2</span><h3>Sprawdź moc podłogi</h3><p>Zagęszczenie ma sens tylko wtedy, gdy zwiększenie mocy jest potrzebne i nie przekracza ograniczeń temperatury powierzchni.</p></article>
        <article class="rk-pipe-card"><span class="rk-pipe-icon">3</span><h3>Dopiero zmień trasę</h3><p>Można prowadzić zasilanie wzdłuż fasady, stopniować rozstaw albo wydzielić obwód — po sprawdzeniu hydrauliki.</p></article>
      </div>
      <div class="rk-pipe-note"><p><strong>Nie myl odczucia chłodu przy szybie z automatycznym błędem podłogówki.</strong> Na komfort wpływają również temperatura powierzchni przeszklenia i asymetria promieniowania.</p></div>
      <p class="rk-pipe-copy">Techniczne warianty pokazują poradniki o <a href="https://projekt-ogrzewania.pl/strefa-brzegowa-w-ogrzewaniu-podlogowym/">strefie brzegowej ogrzewania podłogowego</a> oraz <a href="https://projekt-ogrzewania.pl/projekt-ogrzewania-podlogowego-do-domu-z-duzymi-przeszkleniami-jak-poradzic-sobie-ze-strefa-przy-oknach/">projektowaniu podłogówki przy dużych przeszkleniach</a>.</p>
    </section>

    <section class="rk-pipe-section" id="rk-snail-obstacles">
      <span class="rk-pipe-eyebrow">Prawdziwy rzut rzadko jest prostokątem</span>
      <h2 class="rk-pipe-section-title">Wyspa kuchenna, zabudowa i nieregularne pomieszczenie</h2>
      <p class="rk-pipe-lead">Ślimak nie musi tworzyć idealnego kwadratu. Może zmieniać proporcje, omijać wyłączenia i obsługiwać kilka połączonych pól, pod warunkiem zachowania rozstawu, promieni gięcia oraz czytelnej drogi powrotnej.</p>
      <div class="rk-pipe-grid-2">
        <article class="rk-pipe-card">
          <span class="rk-pipe-card-number">PLANUJ</span>
          <h3>Obrysuj rzeczywistą powierzchnię czynną</h3>
          <ul class="rk-pipe-bullets">
            <li>zaznacz stałą zabudowę i urządzenia wymagające wyłączenia,</li>
            <li>wyznacz dojście od rozdzielacza,</li>
            <li>sprawdź możliwość powrotu pomiędzy zwojami,</li>
            <li>pozostaw miejsce na łagodne nawroty,</li>
            <li>nie twórz wąskich kieszeni z przypadkowym zagęszczeniem.</li>
          </ul>
        </article>
        <article class="rk-pipe-card">
          <span class="rk-pipe-card-number">DZIEL</span>
          <h3>Duże pole podziel na obliczone obwody</h3>
          <p>Jeden ogromny ślimak nie jest celem. Jeżeli długość lub wymagana moc prowadzą do zbyt dużego przepływu i oporu, powierzchnię dzieli się na dwa albo więcej pól o logicznych granicach.</p>
        </article>
      </div>
      <p class="rk-pipe-copy">W pomieszczeniach z trwałą zabudową pomocny jest poradnik <a href="https://projekt-ogrzewania.pl/wodne-ogrzewanie-podlogowe-a-meble-jak-polaczyc-komfort-i-aranzacje/">ogrzewanie podłogowe a meble</a>. Przykład podziału większej strefy znajdziesz w odpowiedzi na pytanie, <a href="https://projekt-ogrzewania.pl/salon-ile-petli-podlogowki/">ile pętli podłogówki potrzeba w salonie</a>.</p>
    </section>

    <section class="rk-pipe-section rk-pipe-section-soft" id="rk-snail-hydraulics">
      <span class="rk-pipe-eyebrow">Kształt to nie charakterystyka przepływu</span>
      <h2 class="rk-pipe-section-title">Długość pętli, przepływ i strata ciśnienia</h2>
      <p class="rk-pipe-lead">Dwie pętle o podobnym kształcie mogą mieć różne opory, jeżeli różnią się światłem rury, długością, przepływem, temperaturą albo medium. Z kolei meander i ślimak wykonane z tej samej rury przy podobnej długości nie mają z definicji stałej procentowej różnicy oporu.</p>
      <div class="rk-pipe-grid-4">
        <article class="rk-pipe-card"><span class="rk-pipe-card-number">Q</span><h3>Moc pętli</h3><p>Wraz z projektową różnicą temperatur określa potrzebny przepływ wody.</p></article>
        <article class="rk-pipe-card"><span class="rk-pipe-card-number">V̇</span><h3>Przepływ</h3><p>Wpływa na prędkość w rurze oraz jednostkową stratę ciśnienia.</p></article>
        <article class="rk-pipe-card"><span class="rk-pipe-card-number">L</span><h3>Długość</h3><p>Obejmuje pole grzewcze, oba dobiegi i wszystkie odcinki obwodu.</p></article>
        <article class="rk-pipe-card"><span class="rk-pipe-card-number">dᵢ</span><h3>Światło rury</h3><p>Rzeczywista średnica wewnętrzna ma bezpośrednie znaczenie dla oporu.</p></article>
      </div>
      <p class="rk-pipe-copy">Pułap około 100 m dla rury 16 × 2 mm jest często stosowaną granicą roboczą, ale nie zastępuje obliczeń. Pętla krótsza może mieć za duży opór przy wysokim przepływie, a ocena dłuższej wymaga danych konkretnego układu. Zobacz osobne opracowania o <a href="https://projekt-ogrzewania.pl/maksymalna-dlugosc-petli-ogrzewania-podlogowego/">maksymalnej długości pętli ogrzewania podłogowego</a> oraz skutkach, jakie może powodować <a href="https://projekt-ogrzewania.pl/za-dluga-petla-podlogowki/">za długa pętla podłogówki</a>.</p>
      <div class="rk-pipe-note rk-pipe-note-bad"><p><strong>Nie zwiększaj temperatury zasilania po to, aby ukryć problem przepływu.</strong> Niedogrzana pętla wymaga diagnostyki przyczyny: nastawy, zapowietrzenia, oporu, pompy, zabrudzenia albo błędu projektowego.</p></div>
    </section>

    <section class="rk-pipe-section" id="rk-snail-manifold">
      <span class="rk-pipe-eyebrow">Każda pętla pracuje w układzie równoległym</span>
      <h2 class="rk-pipe-section-title">Rozdzielacz, dobiegi i równoważenie pętli ślimakowych</h2>
      <p class="rk-pipe-lead">Pętle nie muszą mieć identycznej długości ani różnić się o mniej niż arbitralne 10%. Muszą natomiast otrzymać obliczone przepływy przy stratach ciśnienia możliwych do zrównoważenia na rozdzielaczu.</p>
      <div class="rk-pipe-grid-3">
        <article class="rk-pipe-card"><span class="rk-pipe-card-number">01</span><h3>Lokalizacja rozdzielacza</h3><p>Powinna ograniczać niepotrzebne dobiegi, liczbę skrzyżowań i koncentrację rur w korytarzach.</p></article>
        <article class="rk-pipe-card"><span class="rk-pipe-card-number">02</span><h3>Opis obwodów</h3><p>Każda para zasilanie–powrót powinna być jednoznacznie opisana nazwą pomieszczenia lub numerem projektu.</p></article>
        <article class="rk-pipe-card"><span class="rk-pipe-card-number">03</span><h3>Nastawy projektowe</h3><p>Rotametr służy do ustawienia wymaganego przepływu, a nie do wyrównania wszystkich wskazań do jednej liczby.</p></article>
      </div>
      <p class="rk-pipe-copy">Budowę i funkcje urządzenia opisuje poradnik <a href="https://projekt-ogrzewania.pl/rozdzielacz-do-podlogowki-kluczowy-element-systemu-ogrzewania-podlogowego/">rozdzielacz do ogrzewania podłogowego</a>. Przy uruchomieniu potrzebna jest również znajomość zasady działania <a href="https://projekt-ogrzewania.pl/rotametr-wskaznik-przeplywu-w-rozdzielaczu-ogrzewania-podlogowego/">rotametru i wskaźnika przepływu</a>.</p>
    </section>

    <section class="rk-pipe-section rk-pipe-section-soft" id="rk-snail-dilatation">
      <span class="rk-pipe-eyebrow">Trasa musi współpracować z konstrukcją podłogi</span>
      <h2 class="rk-pipe-section-title">Dylatacje, mocowanie rur i wykonanie jastrychu</h2>
      <p class="rk-pipe-lead">Układ pętli trzeba skoordynować z polami jastrychu. Odcinki przechodzące przez zaplanowane szczeliny wymagają ochrony zgodnej z projektem podłogi i dokumentacją systemu.</p>
      <div class="rk-pipe-grid-3">
        <article class="rk-pipe-card"><span class="rk-pipe-icon">D</span><h3>Dylatacje</h3><p>Nie prowadź aktywnej części ślimaka bez kontroli przez szczeliny. Przejścia dobiegów wykonuj w przewidzianych osłonach i lokalizacjach.</p></article>
        <article class="rk-pipe-card"><span class="rk-pipe-icon">M</span><h3>Mocowanie</h3><p>Rozstaw mocowań musi utrzymać trasę i promienie podczas chodzenia po instalacji oraz wykonywania jastrychu.</p></article>
        <article class="rk-pipe-card"><span class="rk-pipe-icon">J</span><h3>Jastrych</h3><p>Rodzaj, grubość, pola, wygrzewanie i warunki wykonania wynikają z projektu oraz dokumentacji zastosowanej mieszanki.</p></article>
      </div>
      <ul class="rk-pipe-bullets">
        <li>taśmę brzegową prowadź ciągle przy elementach pionowych,</li>
        <li>nie przypisuj folii pod rurą funkcji „odbicia ciepła” bez szczeliny powietrznej,</li>
        <li>rur nie mocuj w sposób powodujący ich uszkodzenie lub trwałe spłaszczenie,</li>
        <li>przed zakryciem sprawdź rozstaw, promienie, przejścia i zgodność z rysunkiem,</li>
        <li>utrzymuj warunki podczas wykonywania jastrychu zgodnie z procedurą systemową.</li>
      </ul>
      <p class="rk-pipe-copy">Więcej informacji zawierają poradniki o <a href="https://projekt-ogrzewania.pl/izolacja-brzegowa-i-dylatacje-w-instalacji-ogrzewania-podlogowego/">izolacji brzegowej i dylatacjach</a> oraz o prawidłowej <a href="https://projekt-ogrzewania.pl/wylewka-na-ogrzewanie-podlogowe-kompletny-przewodnik/">wylewce na ogrzewanie podłogowe</a>.</p>
    </section>

    <section class="rk-pipe-section" id="rk-snail-test">
      <span class="rk-pipe-eyebrow">Zanim trasa zniknie pod posadzką</span>
      <h2 class="rk-pipe-section-title">Próba szczelności, zdjęcia i odbiór wykonania</h2>
      <p class="rk-pipe-lead">Jedna liczba dotycząca ciśnienia i czasu nie opisuje każdej procedury. Próbę wykonuje się według projektu, wymagań systemu i właściwej procedury, z uwzględnieniem zmian temperatury wpływających na odczyt.</p>
      <div class="rk-pipe-grid-4">
        <article class="rk-pipe-card"><span class="rk-pipe-card-number">1</span><h3>Napełnij i odpowietrz</h3><p>Pracuj kolejno z obwodami, aby powietrze nie pozostało w przypadkowo zamkniętej pętli.</p></article>
        <article class="rk-pipe-card"><span class="rk-pipe-card-number">2</span><h3>Wykonaj próbę</h3><p>Zapisz medium, ciśnienie, czas, temperaturę i wynik zgodnie z przyjętą procedurą.</p></article>
        <article class="rk-pipe-card"><span class="rk-pipe-card-number">3</span><h3>Sfotografuj trasę</h3><p>Zdjęcia wykonaj z punktami odniesienia, aby później odtworzyć położenie rur.</p></article>
        <article class="rk-pipe-card"><span class="rk-pipe-card-number">4</span><h3>Podpisz protokół</h3><p>Powiąż numery pętli, długości, pomieszczenia i wynik próby z dokumentacją powykonawczą.</p></article>
      </div>
      <div class="rk-pipe-note rk-pipe-note-good"><p><strong>Ciśnienie podczas wykonywania jastrychu służy także kontroli ewentualnego uszkodzenia.</strong> Nie traktuj go jednak jako uniwersalnej ochrony mechanicznej ani powodu do pomijania ostrożności.</p></div>
      <p class="rk-pipe-copy">Pełną procedurę omawia artykuł o <a href="https://projekt-ogrzewania.pl/proba-szczelnosci-ogrzewania-podlogowego/">próbie szczelności ogrzewania podłogowego</a>. Jeżeli problem pojawia się podczas napełniania lub eksploatacji, sprawdź również <a href="https://projekt-ogrzewania.pl/objawy-zapowietrzenia-ogrzewania-podlogowego/">objawy zapowietrzenia podłogówki</a>.</p>
    </section>

    <section class="rk-pipe-section rk-pipe-section-soft" id="rk-snail-comparison">
      <span class="rk-pipe-eyebrow">Krótko, bez tworzenia rankingu</span>
      <h2 class="rk-pipe-section-title">Ślimak, meander czy układ mieszany?</h2>
      <p class="rk-pipe-lead">Ślimak jest częstym wyborem w regularnych pokojach i dużych strefach. Nie oznacza to, że meander jest rozwiązaniem przestarzałym albo zawsze hydraulicznym błędem.</p>
      <div class="rk-pipe-table-wrap">
        <table>
          <thead><tr><th>Układ</th><th>Najważniejsza cecha</th><th>Kiedy bywa praktyczny</th><th>Ograniczenie</th></tr></thead>
          <tbody>
            <tr><td data-label="Układ"><strong>Ślimak</strong></td><td data-label="Cecha">Naprzemienne sąsiedztwo zasilania i powrotu.</td><td data-label="Zastosowanie">Regularne i większe pola, gdy celem jest równomierny rozkład.</td><td data-label="Ograniczenie">Potrzebuje miejsca na nawrót i zaplanowanej drogi powrotnej.</td></tr>
            <tr><td data-label="Układ"><strong>Meander</strong></td><td data-label="Cecha">Kolejne równoległe przejścia od początku do końca pola.</td><td data-label="Zastosowanie">Wąskie pasy, korytarze i pola, w których kontrolowany gradient jest użyteczny.</td><td data-label="Ograniczenie">Temperatura wzdłuż kierunku przepływu może zmieniać się wyraźniej.</td></tr>
            <tr><td data-label="Układ"><strong>Podwójny meander</strong></td><td data-label="Cecha">Przeplatanie odcinków o różnych temperaturach.</td><td data-label="Zastosowanie">Pola trudne dla klasycznego ślimaka, gdy trzeba ograniczyć pasowy rozkład.</td><td data-label="Ograniczenie">Wymaga starannego zaplanowania kolejności przejść.</td></tr>
            <tr><td data-label="Układ"><strong>Mieszany</strong></td><td data-label="Cecha">Różne sposoby prowadzenia w jednej instalacji.</td><td data-label="Zastosowanie">Nieregularne rzuty i strefy o odmiennych zadaniach.</td><td data-label="Ograniczenie">Każda pętla nadal wymaga własnego przepływu i obliczonego oporu.</td></tr>
          </tbody>
        </table>
      </div>
      <p class="rk-pipe-copy">Pełne porównanie znajduje się w poradniku <a href="https://projekt-ogrzewania.pl/jak-ukladac-rury-w-ogrzewaniu-slimak-meander-czy-podwojny-meander/">ślimak, meander czy podwójny meander</a>. Sam sposób wykonania drugiego wariantu opisuje artykuł <a href="https://projekt-ogrzewania.pl/instalacja-ogrzewania-podlogowego-w-ukladzie-meandrowym/">instalacja ogrzewania podłogowego w układzie meandrowym</a>.</p>
    </section>

    <section class="rk-pipe-section" id="rk-snail-errors">
      <span class="rk-pipe-eyebrow">Błędy widoczne przed wylewką</span>
      <h2 class="rk-pipe-section-title">Najczęstsze błędy przy układaniu podłogówki w ślimak</h2>
      <div class="rk-pipe-grid-3">
        <article class="rk-pipe-card"><span class="rk-pipe-card-number">BŁĄD 1</span><h3>Rysowanie bez OZC</h3><p>Ładny i równy ślimak nie potwierdza, że podłoga pokryje straty pomieszczenia.</p></article>
        <article class="rk-pipe-card"><span class="rk-pipe-card-number">BŁĄD 2</span><h3>Pomijanie powierzchni wyłączonych</h3><p>Metraż brutto prowadzi do błędnej długości, liczby pętli i rozmieszczenia aktywnego pola.</p></article>
        <article class="rk-pipe-card"><span class="rk-pipe-card-number">BŁĄD 3</span><h3>Brak podwójnego rozstawu</h3><p>Zbyt gęste pierwsze przejście nie pozostawia miejsca na równomierne ułożenie powrotu.</p></article>
        <article class="rk-pipe-card"><span class="rk-pipe-card-number">BŁĄD 4</span><h3>Zbyt ciasny środek</h3><p>Próba domknięcia spirali w punkcie może zakończyć się załamaniem i przewężeniem rury.</p></article>
        <article class="rk-pipe-card"><span class="rk-pipe-card-number">BŁĄD 5</span><h3>Stałe 100 m bez hydrauliki</h3><p>Okrągła granica nie sprawdza przepływu, oporu ani możliwości pompy i rozdzielacza.</p></article>
        <article class="rk-pipe-card"><span class="rk-pipe-card-number">BŁĄD 6</span><h3>Równe rotametry dla wszystkich</h3><p>Każde pomieszczenie i pętla mogą potrzebować innego projektowego przepływu.</p></article>
        <article class="rk-pipe-card"><span class="rk-pipe-card-number">BŁĄD 7</span><h3>Zawsze 5 cm przy oknie</h3><p>Strefa brzegowa jest decyzją cieplną, a nie obowiązkowym elementem każdego przeszklenia.</p></article>
        <article class="rk-pipe-card"><span class="rk-pipe-card-number">BŁĄD 8</span><h3>Niechronione przejścia</h3><p>Dobiegi przecinające szczeliny konstrukcyjne bez właściwego rozwiązania są narażone na uszkodzenie.</p></article>
        <article class="rk-pipe-card"><span class="rk-pipe-card-number">BŁĄD 9</span><h3>Brak zdjęć i protokołu</h3><p>Po wykonaniu posadzki nie da się wiarygodnie odtworzyć tras bez dokumentacji.</p></article>
      </div>
      <p class="rk-pipe-copy">Szersze zestawienie znajdziesz w poradniku o <a href="https://projekt-ogrzewania.pl/najczestsze-bledy-przy-montazu-ogrzewania-podlogowego-i-jak-ich-uniknac/">najczęstszych błędach montażu podłogówki</a>. Przed rozpoczęciem prac warto też przygotować pełną listę <a href="https://projekt-ogrzewania.pl/jakie-materialy-sa-potrzebne-do-instalacji-ogrzewania-podlogowego/">materiałów potrzebnych do instalacji</a>.</p>
    </section>

    <section class="rk-pipe-section rk-pipe-section-soft" id="rk-snail-checklist">
      <span class="rk-pipe-eyebrow">Odbiór przed zakryciem rur</span>
      <h2 class="rk-pipe-section-title">Checklista poprawnie wykonanej pętli ślimakowej</h2>
      <p class="rk-pipe-lead">Lista nie zastępuje projektu ani protokołu, ale pomaga wychwycić widoczne odstępstwa w momencie, gdy można je jeszcze poprawić bez kucia posadzki.</p>
      <div class="rk-snail-check-grid">
        <article class="rk-pipe-card"><span class="rk-pipe-card-number">PROJEKT</span><h3>Zgodność z rysunkiem</h3><ul class="rk-pipe-bullets"><li>właściwe pomieszczenie i numer pętli,</li><li>rozstaw i powierzchnia czynna,</li><li>planowana długość obwodu,</li><li>strefy brzegowe tylko tam, gdzie wskazano,</li><li>dobiegi zgodne z trasą.</li></ul></article>
        <article class="rk-pipe-card"><span class="rk-pipe-card-number">MONTAŻ</span><h3>Stan rury i mocowań</h3><ul class="rk-pipe-bullets"><li>brak załamań i spłaszczeń,</li><li>zachowane promienie gięcia,</li><li>stabilne mocowanie,</li><li>brak przypadkowych połączeń,</li><li>ochrona w przejściach.</li></ul></article>
        <article class="rk-pipe-card"><span class="rk-pipe-card-number">ODBIÓR</span><h3>Dokumenty i nastawy</h3><ul class="rk-pipe-bullets"><li>opisane zasilanie i powrót,</li><li>zapisana długość pętli,</li><li>protokół próby,</li><li>zdjęcia z punktami odniesienia,</li><li>przepływ projektowy do uruchomienia.</li></ul></article>
      </div>
      <div class="rk-pipe-note rk-pipe-note-good"><p><strong>Po wykonaniu zdjęć zapisz je razem z projektem.</strong> Sama galeria w telefonie bez nazwy pomieszczenia i punktu odniesienia szybko traci wartość dokumentacyjną.</p></div>
      <p class="rk-pipe-copy">Dobra dokumentacja pokazuje znacznie więcej niż sam wzór rury. Zobacz, <a href="https://projekt-ogrzewania.pl/jak-powinien-wygladac-profesjonalny-projekt-do-ogrzewania-podlogowego/">jak powinien wyglądać profesjonalny projekt ogrzewania podłogowego</a>, oraz jakie znaczenie ma właściwy dobór <a href="https://projekt-ogrzewania.pl/rury-do-ogrzewania-podlogowego/">rur do ogrzewania podłogowego</a>.</p>
    </section>

    <section class="rk-pipe-section rk-pipe-final" id="rk-snail-final">
      <span class="rk-pipe-eyebrow">Wniosek techniczny</span>
      <h2 class="rk-pipe-section-title">Dobry ślimak zaczyna się przed rozwinięciem rury</h2>
      <p class="rk-pipe-lead">Kolejność jest prosta: obciążenie pomieszczenia, powierzchnia czynna, warstwy podłogi, temperatura wody, rozstaw, podział na pętle, hydraulika i dopiero na końcu trasa. Odwrócenie tej kolejności tworzy równy rysunek bez pewności, że instalacja zadziała.</p>
      <div class="rk-pipe-cta">
        <div class="rk-pipe-cta-title">Otrzymaj ślimaki rozrysowane dla rzeczywistego rzutu i policzonych obciążeń</div>
        <p>Projekt obejmuje podział na obwody, rozstawy, długości, przepływy, nastawy rozdzielacza i dane potrzebne do sprawdzenia hydrauliki. Wykonawca otrzymuje trasę, a inwestor podstawę do kontroli prac przed wylewką.</p>
        <a class="rk-pipe-cta-button" href="https://projekt-ogrzewania.pl/produkt/projekt-instalacji-ogrzewania-podlogowego-podlogowki/">Zamów projekt ogrzewania podłogowego</a>
        <small class="rk-pipe-link-disclosure">Odnośnik prowadzi do płatnej usługi projektowej autora poradnika.</small>
      </div>
    </section>

    <section class="rk-pipe-section" id="rk-snail-sources">
      <span class="rk-pipe-eyebrow">Podstawa techniczna</span>
      <h2 class="rk-pipe-section-title">Źródła oficjalne i zakres odpowiedzialności</h2>
      <p class="rk-pipe-lead">Poniższe oficjalne karty dokumentów porządkują kryteria komfortu, określanie wydajności, projektowanie oraz instalowanie wbudowanych wodnych systemów ogrzewania płaszczyznowego.</p>
      <div class="rk-pipe-source-grid">
        <article class="rk-pipe-source-card"><a href="https://www.iso.org/standard/74682.html" target="_blank" rel="nofollow noopener noreferrer">ISO 11855-1:2021 — definicje i kryteria komfortu</a><p>Oficjalna karta części dotyczącej definicji, symboli oraz kryteriów komfortu systemów płaszczyznowych.</p></article>
        <article class="rk-pipe-source-card"><a href="https://www.iso.org/standard/74683.html" target="_blank" rel="nofollow noopener noreferrer">ISO 11855-2:2021 — określanie mocy</a><p>Oficjalna karta metod wyznaczania strumienia ciepła, temperatury i równomierności powierzchni na podstawie modelu systemu.</p></article>
        <article class="rk-pipe-source-card"><a href="https://www.iso.org/standard/74684.html" target="_blank" rel="nofollow noopener noreferrer">ISO 11855-3:2021 — projektowanie i wymiarowanie</a><p>Oficjalna karta metody projektowania służącej zapewnieniu wymaganej mocy ogrzewania lub chłodzenia płaszczyznowego.</p></article>
        <article class="rk-pipe-source-card"><a href="https://www.iso.org/standard/74685.html" target="_blank" rel="nofollow noopener noreferrer">ISO 11855-5:2021 — instalowanie systemów</a><p>Oficjalna karta wymagań instalacyjnych dla wbudowanych wodnych systemów ogrzewania i chłodzenia płaszczyznowego.</p></article>
      </div>
      <div class="rk-pipe-responsibility"><p><strong>Zakres poradnika:</strong> schemat i kalkulator wyjaśniają geometrię oraz wstępny podział pola. Nie są projektem, obliczeniem mocy, doborem rozstawu, obliczeniem hydraulicznym, instrukcją konkretnego systemu ani protokołem odbioru. Ostateczne rozwiązanie musi uwzględniać dokumentację wybranych materiałów, projekt budynku i warunki rzeczywistego montażu.</p></div>
    </section>

    <section class="rk-pipe-section rk-pipe-section-soft" id="rk-snail-faq">
      <span class="rk-pipe-eyebrow">Pytania inwestorów i wykonawców</span>
      <h2 class="rk-pipe-section-title">FAQ — układ ślimakowy ogrzewania podłogowego</h2>
      <div class="rk-pipe-faq">
        <details><summary>Od której strony zaczyna się układanie podłogówki w ślimak?</summary><div class="rk-pipe-faq-answer"><p>Pętla fizycznie rozpoczyna się na belce zasilającej rozdzielacza. Po wykonaniu dobiegu rurę prowadzi się do miejsca wskazanego na projekcie, często w kierunku obwodu pola lub strefy o większym obciążeniu, a następnie do środka z pozostawieniem miejsca na powrót.</p></div></details>
        <details><summary>Czy zasilanie zawsze powinno przebiegać przy ścianie zewnętrznej?</summary><div class="rk-pipe-faq-answer"><p>Nie zawsze. Skierowanie cieplejszej części pętli przy fasadę bywa celowe, ale powinno wynikać z rozkładu obciążenia, parametrów przegród, powierzchni czynnej i projektu trasy.</p></div></details>
        <details><summary>Dlaczego przy układaniu ślimaka stosuje się podwójny rozstaw?</summary><div class="rk-pipe-faq-answer"><p>Pierwsze przejście pozostawia wolne międzyrzędzia. Po wykonaniu nawrotu odcinek powrotny wypełnia te miejsca, dzięki czemu gotowy układ uzyskuje docelowy rozstaw, na przykład 10 cm po prowadzeniu pierwszej części co około 20 cm.</p></div></details>
        <details><summary>Jak wykonać nawrót w środku ślimaka?</summary><div class="rk-pipe-faq-answer"><p>W centrum trzeba pozostawić dostateczne pole na łagodną zmianę kierunku. Minimalny promień i dopuszczony sposób gięcia należy odczytać z dokumentacji konkretnej rury oraz systemu montażowego.</p></div></details>
        <details><summary>Czy ślimak zawsze daje identyczną temperaturę całej podłogi?</summary><div class="rk-pipe-faq-answer"><p>Nie. Naprzemienne położenie zasilania i powrotu sprzyja równomierności, ale temperatura zależy również od rozstawu, głębokości rury, warstw podłogi, przepływu, temperatury wody oraz lokalnego obciążenia cieplnego.</p></div></details>
        <details><summary>Czy ślimak ma zawsze mniejszy opór niż meander?</summary><div class="rk-pipe-faq-answer"><p>Nie można przypisać jednego procentu różnicy wszystkim instalacjom. Opór pętli zależy przede wszystkim od długości, rzeczywistej średnicy wewnętrznej, przepływu, medium i geometrii zmian kierunku.</p></div></details>
        <details><summary>Ile metrów może mieć pętla ślimakowa z rury 16 × 2 mm?</summary><div class="rk-pipe-faq-answer"><p>Około 100 m bywa stosowanym pułapem roboczym, ale nie jest samodzielnym wynikiem projektu. Dopuszczalną długość sprawdza się dla obliczonego przepływu, charakterystyki konkretnej rury, straty ciśnienia i możliwości pompy.</p></div></details>
        <details><summary>Czy wszystkie pętle powinny mieć tę samą długość?</summary><div class="rk-pipe-faq-answer"><p>Nie muszą być identyczne. Powinny mieć obliczone przepływy i opory, które można poprawnie zrównoważyć. Sama procentowa różnica długości nie opisuje mocy ani hydrauliki.</p></div></details>
        <details><summary>Czy przy dużym oknie zawsze trzeba zastosować rozstaw 5 cm?</summary><div class="rk-pipe-faq-answer"><p>Nie. Zagęszczenie jest uzasadnione wtedy, gdy wynika z obciążenia i obliczeń mocy powierzchniowej. W dobrze izolowanym budynku nawet duże przeszklenie nie musi wymagać najgęstszego rozstawu.</p></div></details>
        <details><summary>Jak ominąć wyspę kuchenną w układzie ślimakowym?</summary><div class="rk-pipe-faq-answer"><p>Stałą zabudowę zaznacza się przed rysowaniem trasy. Pętlę prowadzi się po powierzchni czynnej z zachowaniem drogi powrotnej i promieni gięcia. Przy skomplikowanym obrysie korzystniejszy może być podział na kilka pól.</p></div></details>
        <details><summary>Czy można połączyć ślimak i meander na jednym rozdzielaczu?</summary><div class="rk-pipe-faq-answer"><p>Można stosować różne geometrie pętli w jednej instalacji, jeżeli każda ma policzony przepływ i opór oraz mieści się w zakresie regulacji rozdzielacza. Samo połączenie nazw układów nie tworzy błędu hydraulicznego.</p></div></details>
        <details><summary>Czy rura pętli może przechodzić przez dylatację?</summary><div class="rk-pipe-faq-answer"><p>Aktywną część pętli koordynuje się z polami jastrychu. Jeżeli dobieg musi przeciąć zaplanowaną szczelinę, przejście wykonuje się w lokalizacji i osłonie określonej w projekcie oraz dokumentacji systemu.</p></div></details>
        <details><summary>Co zrobić, gdy rura załamie się na nawrocie?</summary><div class="rk-pipe-faq-answer"><p>Nie należy prostować jej przypadkową metodą ani zakrywać widocznego przewężenia. Sposób naprawy lub wymiany odcinka musi wynikać z instrukcji systemowej, a miejsce trzeba ponownie sprawdzić i udokumentować.</p></div></details>
        <details><summary>Jak sprawdzić ślimaka przed wykonaniem wylewki?</summary><div class="rk-pipe-faq-answer"><p>Porównaj trasę, rozstaw, długości, promienie, przejścia i oznaczenia z projektem. Następnie wykonaj próbę według przyjętej procedury, sporządź protokół i zrób zdjęcia z trwałymi punktami odniesienia.</p></div></details>
      </div>
    </section>

    <section class="rk-pipe-author" id="rk-snail-author">
      <span class="rk-pipe-eyebrow">Opracowanie eksperckie</span>
      <h2 class="rk-pipe-author-title">Autor i weryfikacja merytoryczna</h2>
      <div class="rk-pipe-author-layout">
        <aside class="rk-pipe-author-side">
          <div class="rk-pipe-author-photo"><img src="https://projekt-ogrzewania.pl/wp-content/uploads/2026/04/PO-Robert-Kucharski.webp" alt="Robert Kucharski — projektant instalacji sanitarnych" width="400" height="400" loading="lazy" decoding="async"></div>
          <div class="rk-pipe-author-name">Robert Kucharski</div>
          <p class="rk-pipe-author-role">Projektant instalacji sanitarnych<br>specjalista HVAC i ogrzewania podłogowego</p>
          <div class="rk-pipe-author-social" aria-label="Profile autora">
            <a href="https://www.linkedin.com/in/robert-kucharski-38069b48/" target="_blank" rel="nofollow noopener noreferrer me" aria-label="LinkedIn Roberta Kucharskiego">in</a>
            <a href="https://www.facebook.com/projektogrzewaniapl" target="_blank" rel="nofollow noopener noreferrer me" aria-label="Facebook Projekt Ogrzewania">f</a>
            <a href="https://x.com/Projekt_HVAC" target="_blank" rel="nofollow noopener noreferrer me" aria-label="Profil Projekt HVAC w serwisie X">X</a>
          </div>
        </aside>
        <div class="rk-pipe-author-main">
          <div class="rk-pipe-author-quote">„Moim zdaniem… największym błędem przy układzie ślimakowym jest uznanie równego rysunku za gotowy projekt. Pętla może wyglądać idealnie, a jednocześnie mieć niewłaściwy rozstaw, zbyt duży opór albo za małą moc dla pomieszczenia.”</div>
          <p>Robert Kucharski opracowuje projekty ogrzewania podłogowego, obliczenia cieplne i hydrauliczne oraz materiały edukacyjne dla inwestorów i wykonawców. W poradnikach oddziela zasady możliwe do pokazania na schemacie od parametrów, które trzeba obliczyć dla konkretnego budynku.</p>
          <p>Przy projektowaniu pętli analizuje obciążenie każdego pomieszczenia, powierzchnię czynną, warstwy podłogi, rozstaw, temperaturę wody, długości, przepływy, opory, rozdzielacz i charakterystykę pompy. Treść zweryfikowano pod kątem spójności obliczeniowej, wykonalności montażowej oraz zakresu oficjalnych dokumentów wskazanych w sekcji źródeł.</p>
          <p>Publikuje również w portalach <a href="https://remont.biz.pl/" target="_blank" rel="nofollow noopener noreferrer">Remont.biz.pl</a> i <a href="https://sobir.pl/" target="_blank" rel="nofollow noopener noreferrer">Sobir.pl</a>. <a href="https://projekt-ogrzewania.pl/author/admin3399/">Zobacz pozostałe artykuły Roberta Kucharskiego w serwisie Projekt-Ogrzewania.pl</a>.</p>
          <div class="rk-pipe-author-facts">
            <div class="rk-pipe-author-fact"><strong>Zakres</strong>ogrzewanie podłogowe, bilanse cieplne i hydraulika instalacji</div>
            <div class="rk-pipe-author-fact"><strong>Metoda pracy</strong>obciążenie pomieszczeń, moc podłogi, trasy pętli i obliczone przepływy</div>
            <div class="rk-pipe-author-fact"><strong>Aktualizacja</strong>stan techniczny materiału sprawdzony 15 września 2026 r.</div>
          </div>
        </div>
      </div>
    </section>
  </div>
</article>

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@graph": [
    {
      "@type": "WebSite",
      "@id": "https://projekt-ogrzewania.pl/#website",
      "url": "https://projekt-ogrzewania.pl/",
      "name": "Projekt Ogrzewania",
      "publisher": { "@id": "https://projekt-ogrzewania.pl/#organization" },
      "inLanguage": "pl-PL"
    },
    {
      "@type": "Organization",
      "@id": "https://projekt-ogrzewania.pl/#organization",
      "name": "Projekt-Ogrzewania.pl",
      "url": "https://projekt-ogrzewania.pl/",
      "founder": { "@id": "https://projekt-ogrzewania.pl/#robert-kucharski" },
      "sameAs": [
        "https://www.facebook.com/projektogrzewaniapl",
        "https://x.com/Projekt_HVAC"
      ]
    },
    {
      "@type": "Organization",
      "@id": "https://remont.biz.pl/#organization",
      "name": "Remont.biz.pl",
      "url": "https://remont.biz.pl/",
      "founder": { "@id": "https://projekt-ogrzewania.pl/#robert-kucharski" }
    },
    {
      "@type": "Organization",
      "@id": "https://sobir.pl/#organization",
      "name": "Sobir.pl",
      "url": "https://sobir.pl/",
      "founder": { "@id": "https://projekt-ogrzewania.pl/#robert-kucharski" }
    },
    {
      "@type": "Person",
      "@id": "https://projekt-ogrzewania.pl/#robert-kucharski",
      "name": "Robert Kucharski",
      "url": "https://projekt-ogrzewania.pl/author/admin3399/",
      "image": "https://projekt-ogrzewania.pl/wp-content/uploads/2026/04/PO-Robert-Kucharski.webp",
      "jobTitle": "Projektant instalacji sanitarnych i specjalista HVAC",
      "knowsAbout": [
        "ogrzewanie podłogowe",
        "układ ślimakowy ogrzewania podłogowego",
        "projektowe obciążenie cieplne",
        "hydraulika pętli grzewczych",
        "równoważenie hydrauliczne",
        "instalacje niskotemperaturowe"
      ],
      "worksFor": [
        { "@id": "https://projekt-ogrzewania.pl/#organization" },
        { "@id": "https://remont.biz.pl/#organization" },
        { "@id": "https://sobir.pl/#organization" }
      ],
      "sameAs": [
        "https://www.linkedin.com/in/robert-kucharski-38069b48/",
        "https://www.facebook.com/projektogrzewaniapl",
        "https://x.com/Projekt_HVAC"
      ]
    },
    {
      "@type": "ImageObject",
      "@id": "https://projekt-ogrzewania.pl/instalacja-ogrzewania-podlogowego-w-ukladzie-slimakowym/#primaryimage",
      "url": "https://projekt-ogrzewania.pl/wp-content/uploads/2026/06/Infografika-Instalacja-ogrzewania-podlogowego-w-ukladzie-slimakowym.webp",
      "contentUrl": "https://projekt-ogrzewania.pl/wp-content/uploads/2026/06/Infografika-Instalacja-ogrzewania-podlogowego-w-ukladzie-slimakowym.webp",
      "caption": "Schemat instalacji ogrzewania podłogowego w układzie ślimakowym"
    },
    {
      "@type": "BreadcrumbList",
      "@id": "https://projekt-ogrzewania.pl/instalacja-ogrzewania-podlogowego-w-ukladzie-slimakowym/#breadcrumb",
      "itemListElement": [
        { "@type": "ListItem", "position": 1, "name": "Strona główna", "item": "https://projekt-ogrzewania.pl/" },
        { "@type": "ListItem", "position": 2, "name": "Poradniki", "item": "https://projekt-ogrzewania.pl/blog/" },
        { "@type": "ListItem", "position": 3, "name": "Ogrzewanie podłogowe", "item": "https://projekt-ogrzewania.pl/category/ogrzewanie-podlogowe/" },
        { "@type": "ListItem", "position": 4, "name": "Układ ślimakowy ogrzewania podłogowego", "item": "https://projekt-ogrzewania.pl/instalacja-ogrzewania-podlogowego-w-ukladzie-slimakowym/" }
      ]
    },
    {
      "@type": "WebPage",
      "@id": "https://projekt-ogrzewania.pl/instalacja-ogrzewania-podlogowego-w-ukladzie-slimakowym/#webpage",
      "url": "https://projekt-ogrzewania.pl/instalacja-ogrzewania-podlogowego-w-ukladzie-slimakowym/",
      "name": "Układ ślimakowy ogrzewania podłogowego – schemat i montaż krok po kroku",
      "description": "Jak prawidłowo ułożyć ogrzewanie podłogowe w ślimak: interaktywny schemat, kalkulator pętli, rozstaw, nawroty, dobiegi, dylatacje i błędy.",
      "isPartOf": { "@id": "https://projekt-ogrzewania.pl/#website" },
      "breadcrumb": { "@id": "https://projekt-ogrzewania.pl/instalacja-ogrzewania-podlogowego-w-ukladzie-slimakowym/#breadcrumb" },
      "primaryImageOfPage": { "@id": "https://projekt-ogrzewania.pl/instalacja-ogrzewania-podlogowego-w-ukladzie-slimakowym/#primaryimage" },
      "dateModified": "2026-09-15T09:00:00+02:00",
      "inLanguage": "pl-PL",
      "mainEntity": { "@id": "https://projekt-ogrzewania.pl/instalacja-ogrzewania-podlogowego-w-ukladzie-slimakowym/#article" }
    },
    {
      "@type": "TechArticle",
      "@id": "https://projekt-ogrzewania.pl/instalacja-ogrzewania-podlogowego-w-ukladzie-slimakowym/#article",
      "mainEntityOfPage": { "@id": "https://projekt-ogrzewania.pl/instalacja-ogrzewania-podlogowego-w-ukladzie-slimakowym/#webpage" },
      "headline": "Układ ślimakowy ogrzewania podłogowego – schemat i montaż krok po kroku",
      "description": "Techniczny poradnik wykonywania układu ślimakowego z interaktywnym schematem, kalkulatorem geometrii, zasadami podwójnego rozstawu i kontrolą hydrauliki.",
      "image": { "@id": "https://projekt-ogrzewania.pl/instalacja-ogrzewania-podlogowego-w-ukladzie-slimakowym/#primaryimage" },
      "author": { "@id": "https://projekt-ogrzewania.pl/#robert-kucharski" },
      "publisher": { "@id": "https://projekt-ogrzewania.pl/#organization" },
      "dateModified": "2026-09-15T09:00:00+02:00",
      "inLanguage": "pl-PL",
      "about": [
        "układ ślimakowy ogrzewania podłogowego",
        "schemat podłogówki",
        "rozstaw rur",
        "długość pętli",
        "hydraulika ogrzewania podłogowego",
        "montaż ogrzewania podłogowego"
      ],
      "keywords": "układ ślimakowy ogrzewania podłogowego, podłogówka w ślimak, schemat ślimaka, podwójny rozstaw rur, długość pętli, montaż podłogówki",
      "isAccessibleForFree": true,
      "hasPart": [
        { "@id": "https://projekt-ogrzewania.pl/instalacja-ogrzewania-podlogowego-w-ukladzie-slimakowym/#visual-app" },
        { "@id": "https://projekt-ogrzewania.pl/instalacja-ogrzewania-podlogowego-w-ukladzie-slimakowym/#calculator-app" },
        { "@id": "https://projekt-ogrzewania.pl/instalacja-ogrzewania-podlogowego-w-ukladzie-slimakowym/#howto" },
        { "@id": "https://projekt-ogrzewania.pl/instalacja-ogrzewania-podlogowego-w-ukladzie-slimakowym/#faq-schema" }
      ]
    },
    {
      "@type": "WebApplication",
      "@id": "https://projekt-ogrzewania.pl/instalacja-ogrzewania-podlogowego-w-ukladzie-slimakowym/#visual-app",
      "name": "Interaktywny schemat układu ślimakowego krok po kroku",
      "url": "https://projekt-ogrzewania.pl/instalacja-ogrzewania-podlogowego-w-ukladzie-slimakowym/#rk-snail-visual",
      "applicationCategory": "EducationalApplication",
      "operatingSystem": "Dowolny system z nowoczesną przeglądarką internetową",
      "browserRequirements": "JavaScript",
      "isAccessibleForFree": true,
      "inLanguage": "pl-PL",
      "description": "Moduł edukacyjny pokazujący sześć etapów prowadzenia zasilania i powrotu w pętli ślimakowej."
    },
    {
      "@type": "WebApplication",
      "@id": "https://projekt-ogrzewania.pl/instalacja-ogrzewania-podlogowego-w-ukladzie-slimakowym/#calculator-app",
      "name": "Kalkulator podziału powierzchni na pętle ślimakowe",
      "url": "https://projekt-ogrzewania.pl/instalacja-ogrzewania-podlogowego-w-ukladzie-slimakowym/#rk-snail-calculator-section",
      "applicationCategory": "UtilitiesApplication",
      "operatingSystem": "Dowolny system z nowoczesną przeglądarką internetową",
      "browserRequirements": "JavaScript",
      "isAccessibleForFree": true,
      "inLanguage": "pl-PL",
      "description": "Kalkulator orientacyjnej długości rury w polu, dobiegów i średniej długości pętli dla wybranej powierzchni, rozstawu i liczby obwodów."
    },
    {
      "@type": "HowTo",
      "@id": "https://projekt-ogrzewania.pl/instalacja-ogrzewania-podlogowego-w-ukladzie-slimakowym/#howto",
      "name": "Jak wykonać układ ślimakowy ogrzewania podłogowego",
      "description": "Sześć etapów prowadzenia pojedynczej pętli w układzie ślimakowym od rozdzielacza do powrotu.",
      "step": [
        { "@type": "HowToStep", "position": 1, "name": "Wykonaj dobieg od rozdzielacza", "text": "Poprowadź ciągły odcinek od belki zasilającej do początku powierzchni czynnej zgodnie z projektem." },
        { "@type": "HowToStep", "position": 2, "name": "Ułóż zewnętrzną część zasilania", "text": "Rozpocznij trasę od zaplanowanej strony pola, uwzględniając ewentualną strefę brzegową." },
        { "@type": "HowToStep", "position": 3, "name": "Prowadź spiralę do środka", "text": "Układaj rurę do wnętrza pola z odstępem pozostawiającym miejsce na odcinek powrotny." },
        { "@type": "HowToStep", "position": 4, "name": "Wykonaj łagodny nawrót", "text": "Pozostaw w środku pole umożliwiające zmianę kierunku z promieniem dopuszczonym dla konkretnej rury." },
        { "@type": "HowToStep", "position": 5, "name": "Ułóż powrót między odcinkami", "text": "Prowadź drugą część rury na zewnątrz w pozostawionych międzyrzędziach." },
        { "@type": "HowToStep", "position": 6, "name": "Zamknij i opisz pętlę", "text": "Wróć do belki powrotnej, opisz obwód, wykonaj próbę i udokumentuj trasę przed zakryciem." }
      ]
    },
    {
      "@type": "ItemList",
      "@id": "https://projekt-ogrzewania.pl/instalacja-ogrzewania-podlogowego-w-ukladzie-slimakowym/#checklist",
      "name": "Checklista odbioru pętli ślimakowej",
      "numberOfItems": 3,
      "itemListElement": [
        { "@type": "ListItem", "position": 1, "name": "Zgodność pętli z projektem" },
        { "@type": "ListItem", "position": 2, "name": "Kontrola stanu rury i mocowań" },
        { "@type": "ListItem", "position": 3, "name": "Dokumentacja próby i trasy" }
      ]
    },
    {
      "@type": "Service",
      "@id": "https://projekt-ogrzewania.pl/produkt/projekt-instalacji-ogrzewania-podlogowego-podlogowki/#service",
      "name": "Indywidualny projekt ogrzewania podłogowego",
      "url": "https://projekt-ogrzewania.pl/produkt/projekt-instalacji-ogrzewania-podlogowego-podlogowki/",
      "provider": { "@id": "https://projekt-ogrzewania.pl/#organization" },
      "areaServed": { "@type": "Country", "name": "Polska" },
      "serviceType": "Projekt instalacji ogrzewania podłogowego"
    },
    {
      "@type": "FAQPage",
      "@id": "https://projekt-ogrzewania.pl/instalacja-ogrzewania-podlogowego-w-ukladzie-slimakowym/#faq-schema",
      "mainEntity": [
        { "@type": "Question", "name": "Od której strony zaczyna się układanie podłogówki w ślimak?", "acceptedAnswer": { "@type": "Answer", "text": "Pętla fizycznie rozpoczyna się na belce zasilającej rozdzielacza. Po wykonaniu dobiegu rurę prowadzi się do miejsca wskazanego na projekcie, często w kierunku obwodu pola lub strefy o większym obciążeniu, a następnie do środka z pozostawieniem miejsca na powrót." } },
        { "@type": "Question", "name": "Czy zasilanie zawsze powinno przebiegać przy ścianie zewnętrznej?", "acceptedAnswer": { "@type": "Answer", "text": "Nie zawsze. Skierowanie cieplejszej części pętli przy fasadę bywa celowe, ale powinno wynikać z rozkładu obciążenia, parametrów przegród, powierzchni czynnej i projektu trasy." } },
        { "@type": "Question", "name": "Dlaczego przy układaniu ślimaka stosuje się podwójny rozstaw?", "acceptedAnswer": { "@type": "Answer", "text": "Pierwsze przejście pozostawia wolne międzyrzędzia. Po wykonaniu nawrotu odcinek powrotny wypełnia te miejsca, dzięki czemu gotowy układ uzyskuje docelowy rozstaw." } },
        { "@type": "Question", "name": "Jak wykonać nawrót w środku ślimaka?", "acceptedAnswer": { "@type": "Answer", "text": "W centrum trzeba pozostawić dostateczne pole na łagodną zmianę kierunku. Minimalny promień i dopuszczony sposób gięcia należy odczytać z dokumentacji konkretnej rury oraz systemu montażowego." } },
        { "@type": "Question", "name": "Czy ślimak zawsze daje identyczną temperaturę całej podłogi?", "acceptedAnswer": { "@type": "Answer", "text": "Nie. Naprzemienne położenie zasilania i powrotu sprzyja równomierności, ale temperatura zależy również od rozstawu, głębokości rury, warstw podłogi, przepływu, temperatury wody oraz lokalnego obciążenia cieplnego." } },
        { "@type": "Question", "name": "Czy ślimak ma zawsze mniejszy opór niż meander?", "acceptedAnswer": { "@type": "Answer", "text": "Nie można przypisać jednego procentu różnicy wszystkim instalacjom. Opór pętli zależy przede wszystkim od długości, rzeczywistej średnicy wewnętrznej, przepływu, medium i geometrii zmian kierunku." } },
        { "@type": "Question", "name": "Ile metrów może mieć pętla ślimakowa z rury 16 × 2 mm?", "acceptedAnswer": { "@type": "Answer", "text": "Około 100 m bywa stosowanym pułapem roboczym, ale nie jest samodzielnym wynikiem projektu. Dopuszczalną długość sprawdza się dla obliczonego przepływu, charakterystyki konkretnej rury, straty ciśnienia i możliwości pompy." } },
        { "@type": "Question", "name": "Czy wszystkie pętle powinny mieć tę samą długość?", "acceptedAnswer": { "@type": "Answer", "text": "Nie muszą być identyczne. Powinny mieć obliczone przepływy i opory, które można poprawnie zrównoważyć. Sama procentowa różnica długości nie opisuje mocy ani hydrauliki." } },
        { "@type": "Question", "name": "Czy przy dużym oknie zawsze trzeba zastosować rozstaw 5 cm?", "acceptedAnswer": { "@type": "Answer", "text": "Nie. Zagęszczenie jest uzasadnione wtedy, gdy wynika z obciążenia i obliczeń mocy powierzchniowej. W dobrze izolowanym budynku nawet duże przeszklenie nie musi wymagać najgęstszego rozstawu." } },
        { "@type": "Question", "name": "Jak ominąć wyspę kuchenną w układzie ślimakowym?", "acceptedAnswer": { "@type": "Answer", "text": "Stałą zabudowę zaznacza się przed rysowaniem trasy. Pętlę prowadzi się po powierzchni czynnej z zachowaniem drogi powrotnej i promieni gięcia. Przy skomplikowanym obrysie korzystniejszy może być podział na kilka pól." } },
        { "@type": "Question", "name": "Czy można połączyć ślimak i meander na jednym rozdzielaczu?", "acceptedAnswer": { "@type": "Answer", "text": "Można stosować różne geometrie pętli w jednej instalacji, jeżeli każda ma policzony przepływ i opór oraz mieści się w zakresie regulacji rozdzielacza." } },
        { "@type": "Question", "name": "Czy rura pętli może przechodzić przez dylatację?", "acceptedAnswer": { "@type": "Answer", "text": "Aktywną część pętli koordynuje się z polami jastrychu. Jeżeli dobieg musi przeciąć zaplanowaną szczelinę, przejście wykonuje się w lokalizacji i osłonie określonej w projekcie oraz dokumentacji systemu." } },
        { "@type": "Question", "name": "Co zrobić, gdy rura załamie się na nawrocie?", "acceptedAnswer": { "@type": "Answer", "text": "Nie należy prostować jej przypadkową metodą ani zakrywać widocznego przewężenia. Sposób naprawy lub wymiany odcinka musi wynikać z instrukcji systemowej, a miejsce trzeba ponownie sprawdzić i udokumentować." } },
        { "@type": "Question", "name": "Jak sprawdzić ślimaka przed wykonaniem wylewki?", "acceptedAnswer": { "@type": "Answer", "text": "Porównaj trasę, rozstaw, długości, promienie, przejścia i oznaczenia z projektem. Następnie wykonaj próbę według przyjętej procedury, sporządź protokół i zrób zdjęcia z trwałymi punktami odniesienia." } }
      ]
    }
  ]
}
</script>

<script>
(function () {
  "use strict";

  var guide = document.getElementById("rk-pipe-guide");
  if (!guide) {
    return;
  }

  var stages = {
    "1": {
      title: "Wyjdź z rozdzielacza",
      copy: "Poprowadź jeden ciągły odcinek do początku powierzchni czynnej. Dobieg jest częścią całkowitej długości oraz straty ciśnienia pętli.",
      purpose: "Dojść do pola możliwie czytelną, chronioną trasą.",
      check: "Przejścia przez progi, dylatacje oraz kolizje z innymi instalacjami.",
      error: "Pomijanie dobiegu podczas obliczania długości obwodu."
    },
    "2": {
      title: "Ułóż zewnętrzną część zasilania",
      copy: "Rozpocznij prowadzenie rury od strony wskazanej w projekcie. Cieplejsza część może obsługiwać obwód pola albo strefę o większym obciążeniu.",
      purpose: "Doprowadzić zasilanie do obszaru, w którym jego wyższa temperatura jest najbardziej użyteczna.",
      check: "Rozstaw przy fasadzie, pola wyłączone i przebieg dylatacji.",
      error: "Automatyczne zagęszczanie przy każdym oknie bez sprawdzenia potrzebnej mocy."
    },
    "3": {
      title: "Prowadź spiralę do środka",
      copy: "Układaj kolejne zwoje do wnętrza, zachowując odstęp potrzebny na powrót. Dla docelowych 10 cm pierwsze przejście pozostawia zwykle miejsca co około 20 cm.",
      purpose: "Przygotować regularne międzyrzędzia dla drugiej części tej samej rury.",
      check: "Równoległość, mocowania, odległość od przegród i rzeczywisty obrys pola.",
      error: "Ułożenie pierwszego przejścia od razu w docelowym rozstawie."
    },
    "4": {
      title: "Wykonaj łagodny nawrót",
      copy: "W centrum zmień kierunek bez załamania rury. Wielkość pozostawionego pola musi umożliwić zachowanie promienia dopuszczonego dla konkretnego produktu.",
      purpose: "Przejść z części zasilającej do powrotnej bez przewężenia przekroju.",
      check: "Promień gięcia, temperaturę montażu i brak spłaszczenia rury.",
      error: "Próba domknięcia ślimaka w zbyt małym punkcie."
    },
    "5": {
      title: "Wprowadź powrót między odcinki",
      copy: "Prowadź rurę na zewnątrz w wolnych międzyrzędziach. W ten sposób cieplejsze i chłodniejsze fragmenty obwodu znajdują się obok siebie.",
      purpose: "Utworzyć docelowy rozstaw i ograniczyć pasowy rozkład temperatury powierzchni.",
      check: "Czy powrót zachowuje rozstaw i nie wypycha wcześniej zamocowanych odcinków.",
      error: "Korygowanie błędów zasilania przez lokalne, przypadkowe zagęszczenia powrotu."
    },
    "6": {
      title: "Zamknij, opisz i sprawdź pętlę",
      copy: "Wróć do belki powrotnej rozdzielacza, opisz obwód i porównaj jego wykonanie z projektem przed próbą oraz zakryciem instalacji.",
      purpose: "Zachować identyfikowalność pętli i przygotować ją do regulacji.",
      check: "Długość, oznaczenie, zdjęcia, protokół próby i docelowy przepływ.",
      error: "Pozostawienie nieopisanych końców i brak dokumentacji trasy."
    }
  };

  var stepButtons = guide.querySelectorAll("[data-rk-snail-step]");
  var routeParts = guide.querySelectorAll("[data-rk-stage]");
  var stageKicker = document.getElementById("rk-snail-stage-kicker");
  var stageTitle = document.getElementById("rk-snail-stage-title");
  var stageCopy = document.getElementById("rk-snail-stage-copy");
  var stagePurpose = document.getElementById("rk-snail-stage-purpose");
  var stageCheck = document.getElementById("rk-snail-stage-check");
  var stageError = document.getElementById("rk-snail-stage-error");

  function showStage(stageNumber) {
    var key = String(stageNumber);
    var stage = stages[key];
    if (!stage) {
      return;
    }

    stageKicker.textContent = "Etap " + key + " z 6";
    stageTitle.textContent = stage.title;
    stageCopy.textContent = stage.copy;
    stagePurpose.textContent = stage.purpose;
    stageCheck.textContent = stage.check;
    stageError.textContent = stage.error;

    stepButtons.forEach(function (button) {
      var active = button.getAttribute("data-rk-snail-step") === key;
      button.setAttribute("aria-pressed", active ? "true" : "false");
    });

    routeParts.forEach(function (part) {
      var partStage = Number(part.getAttribute("data-rk-stage"));
      part.classList.remove("is-active");
      part.classList.remove("is-done");
      if (partStage < stageNumber) {
        part.classList.add("is-done");
      } else {
        if (partStage === stageNumber) {
          part.classList.add("is-active");
        }
      }
    });
  }

  stepButtons.forEach(function (button) {
    button.addEventListener("click", function () {
      showStage(Number(button.getAttribute("data-rk-snail-step")));
    });
  });

  var areaInput = document.getElementById("rk-snail-area");
  var spacingInput = document.getElementById("rk-snail-spacing-input");
  var approachInput = document.getElementById("rk-snail-approach");
  var loopInput = document.getElementById("rk-snail-loop-count");
  var calculateButton = document.getElementById("rk-snail-calculate");
  var resetButton = document.getElementById("rk-snail-reset");
  var resultBox = document.getElementById("rk-snail-calculator-result");
  var statusText = document.getElementById("rk-snail-result-status");
  var introText = document.getElementById("rk-snail-result-intro");

  function formatNumber(value, digits) {
    return value.toLocaleString("pl-PL", {
      minimumFractionDigits: digits,
      maximumFractionDigits: digits
    });
  }

  function setResult(fieldLength, approachLength, totalLength, averageLength) {
    document.getElementById("rk-snail-field-length").textContent = formatNumber(fieldLength, 1) + " m";
    document.getElementById("rk-snail-approach-length").textContent = formatNumber(approachLength, 1) + " m";
    document.getElementById("rk-snail-total-length").textContent = formatNumber(totalLength, 1) + " m";
    document.getElementById("rk-snail-average-length").textContent = formatNumber(averageLength, 1) + " m";
  }

  function calculateVariant() {
    var area = Number(areaInput.value);
    var spacing = Number(spacingInput.value);
    var approach = Number(approachInput.value);
    var loops = Number(loopInput.value);

    resultBox.classList.remove("is-good");
    resultBox.classList.remove("is-stop");

    if (!Number.isFinite(area)) {
      statusText.textContent = "Sprawdź powierzchnię czynną";
      introText.textContent = "Wprowadź dodatnią powierzchnię w metrach kwadratowych.";
      resultBox.classList.add("is-stop");
      return;
    }
    if (area <= 0) {
      statusText.textContent = "Sprawdź powierzchnię czynną";
      introText.textContent = "Wprowadź dodatnią powierzchnię w metrach kwadratowych.";
      resultBox.classList.add("is-stop");
      return;
    }
    if (!Number.isFinite(approach)) {
      statusText.textContent = "Sprawdź długość dobiegu";
      introText.textContent = "Dobieg nie może być wartością ujemną.";
      resultBox.classList.add("is-stop");
      return;
    }
    if (approach < 0) {
      statusText.textContent = "Sprawdź długość dobiegu";
      introText.textContent = "Dobieg nie może być wartością ujemną.";
      resultBox.classList.add("is-stop");
      return;
    }

    var fieldLength = area / spacing;
    var approachLength = 2 * approach * loops;
    var totalLength = fieldLength + approachLength;
    var averageLength = totalLength / loops;
    var areaPerLoop = area / loops;

    setResult(fieldLength, approachLength, totalLength, averageLength);

    if (averageLength > 100) {
      resultBox.classList.add("is-stop");
      statusText.textContent = "Zwiększ liczbę pętli i wykonaj obliczenia hydrauliczne";
      introText.textContent = "Średnia " + formatNumber(averageLength, 1) + " m przekracza często stosowany pułap roboczy 100 m dla rury 16 × 2 mm. Nie jest to limit normowy, lecz wyraźny sygnał do ponownego podziału i sprawdzenia oporu.";
    } else {
      if (averageLength > 80) {
        statusText.textContent = "Wariant wymaga uważnej kontroli hydraulicznej";
        introText.textContent = "Każda pętla obsługuje średnio " + formatNumber(areaPerLoop, 1) + " m², a jej orientacyjna długość wynosi " + formatNumber(averageLength, 1) + " m. Sprawdź wymagany przepływ, światło rury i stratę ciśnienia.";
      } else {
        resultBox.classList.add("is-good");
        statusText.textContent = "Geometria wygląda roboczo możliwa — potwierdź hydraulikę";
        introText.textContent = "Każda pętla obsługuje średnio " + formatNumber(areaPerLoop, 1) + " m², a jej orientacyjna długość wynosi " + formatNumber(averageLength, 1) + " m. To nadal nie potwierdza mocy, przepływu ani oporu.";
      }
    }
  }

  calculateButton.addEventListener("click", calculateVariant);

  resetButton.addEventListener("click", function () {
    areaInput.value = "20";
    spacingInput.value = "0.15";
    approachInput.value = "5";
    loopInput.value = "2";
    calculateVariant();
  });

  showStage(1);
  calculateVariant();
}());
</script>
<p>Artykuł <a href="https://projekt-ogrzewania.pl/instalacja-ogrzewania-podlogowego-w-ukladzie-slimakowym/">Układ ślimakowy ogrzewania podłogowego – schemat i montaż krok po kroku.</a> pochodzi z serwisu <a href="https://projekt-ogrzewania.pl">Projekt Ogrzewania</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://projekt-ogrzewania.pl/instalacja-ogrzewania-podlogowego-w-ukladzie-slimakowym/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
		<item>
		<title>Ile metrów podłogówki na jednej pętli?</title>
		<link>https://projekt-ogrzewania.pl/ile-metrow-podlogowki-na-jednej-petli/</link>
		
		<dc:creator><![CDATA[Robert Kucharski]]></dc:creator>
		<pubDate>Sat, 01 Feb 2025 22:18:09 +0000</pubDate>
				<category><![CDATA[Budowa i remonty]]></category>
		<category><![CDATA[Domowe systemy grzewcze]]></category>
		<category><![CDATA[Instalacje grzewcze]]></category>
		<category><![CDATA[Ogrzewanie domu]]></category>
		<category><![CDATA[Ogrzewanie podłogowe]]></category>
		<category><![CDATA[Planowanie instalacji grzewczych]]></category>
		<category><![CDATA[Poradniki instalacyjne]]></category>
		<category><![CDATA[Porady budowlane]]></category>
		<category><![CDATA[Porady ekspertów]]></category>
		<category><![CDATA[Projektowanie instalacji grzewczych]]></category>
		<category><![CDATA[Projektowanie ogrzewania]]></category>
		<category><![CDATA[Rury do ogrzewania]]></category>
		<category><![CDATA[budowa domu]]></category>
		<category><![CDATA[długość pętli]]></category>
		<category><![CDATA[hydraulika]]></category>
		<category><![CDATA[instalacje grzewcze]]></category>
		<category><![CDATA[ogrzewanie podłogowe]]></category>
		<category><![CDATA[oszczędność energii]]></category>
		<category><![CDATA[porady ekspertów]]></category>
		<category><![CDATA[projektowanie ogrzewania]]></category>
		<category><![CDATA[remonty]]></category>
		<category><![CDATA[systemy grzewcze]]></category>
		<guid isPermaLink="false">https://projekt-ogrzewania.pl/?p=2053</guid>

					<description><![CDATA[<p>Planujesz montaż ogrzewania podłogowego i zastanawiasz się, ile metrów podłogówki na jednej pętli to optymalna długość? W naszym artykule znajdziesz praktyczne porady, jak obliczyć długość pętli, jakie czynniki wpływają na jej maksymalną długość oraz jak uniknąć błędów przy projektowaniu. Dowiesz się również, dlaczego profesjonalny projekt jest kluczowy dla efektywności systemu. Sprawdź, jak zaplanować ogrzewanie podłogowe, aby cieszyć się komfortem i oszczędnościami przez lata!</p>
<p>Artykuł <a href="https://projekt-ogrzewania.pl/ile-metrow-podlogowki-na-jednej-petli/">Ile metrów podłogówki na jednej pętli?</a> pochodzi z serwisu <a href="https://projekt-ogrzewania.pl">Projekt Ogrzewania</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<style>
  #rk-loop-guide {
    --rk-dark: #102536;
    --rk-navy: #14384d;
    --rk-blue: #078fbe;
    --rk-cyan: #25c7d8;
    --rk-cyan-soft: #e8fbff;
    --rk-orange: #ff6a3d;
    --rk-orange-soft: #fff1eb;
    --rk-green: #16836b;
    --rk-green-soft: #eaf8f3;
    --rk-yellow: #f1b93e;
    --rk-yellow-soft: #fff8df;
    --rk-red: #d94b3d;
    --rk-red-soft: #fff0ee;
    --rk-purple: #695ac9;
    --rk-purple-soft: #f1efff;
    --rk-ink: #1f2c37;
    --rk-text: #475967;
    --rk-muted: #6b7e8a;
    --rk-line: #d5e4eb;
    --rk-soft: #f4f9fb;
    --rk-white: #ffffff;
    width: 100%;
    max-width: 1180px;
    margin: 34px auto 72px;
    color: var(--rk-ink);
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    font-size: 18px;
    line-height: 1.75;
  }

  #rk-loop-guide,
  #rk-loop-guide * { box-sizing: border-box; }
  #rk-loop-guide img,
  #rk-loop-guide svg,
  #rk-loop-guide canvas { max-width: 100%; }
  #rk-loop-guide button,
  #rk-loop-guide input,
  #rk-loop-guide select,
  #rk-loop-guide label,
  #rk-loop-guide summary,
  #rk-loop-guide a { font: inherit; -webkit-tap-highlight-color: transparent; }
  #rk-loop-guide button,
  #rk-loop-guide input,
  #rk-loop-guide select { max-width: 100%; }
  #rk-loop-guide a {
    color: var(--rk-blue);
    font-weight: 780;
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
  }
  #rk-loop-guide a:hover,
  #rk-loop-guide a:focus-visible { color: var(--rk-red); }
  #rk-loop-guide p,
  #rk-loop-guide ul,
  #rk-loop-guide ol { margin-top: 0; margin-bottom: 1.08em; }
  #rk-loop-guide h2,
  #rk-loop-guide h3,
  #rk-loop-guide h4 {
    margin-top: 0;
    color: var(--rk-dark);
    font-weight: 920;
    letter-spacing: -.035em;
    line-height: 1.15;
  }
  #rk-loop-guide h2 { margin-bottom: 18px; font-size: clamp(1.72rem, 4vw, 2.68rem); }
  #rk-loop-guide h3 { margin-bottom: 11px; font-size: clamp(1.12rem, 2.35vw, 1.46rem); }
  #rk-loop-guide h4 { margin-bottom: 8px; font-size: 1.02rem; }
  #rk-loop-guide strong { color: var(--rk-dark); }

  #rk-loop-guide .rk-loop-progress {
    position: fixed;
    z-index: 9999;
    top: 0;
    left: 0;
    width: 0;
    height: 4px;
    background: linear-gradient(90deg, var(--rk-cyan), var(--rk-orange));
    box-shadow: 0 0 12px rgba(37, 199, 216, .5);
    pointer-events: none;
  }

  #rk-loop-guide .rk-loop-shell {
    overflow: hidden;
    border: 1px solid var(--rk-line);
    border-radius: 26px;
    background: var(--rk-white);
    box-shadow: 0 24px 70px rgba(16, 37, 54, .11);
  }

  #rk-loop-guide .rk-loop-hero {
    position: relative;
    overflow: hidden;
    padding: clamp(38px, 7vw, 78px) clamp(25px, 6vw, 76px) 42px;
    color: var(--rk-white);
    background:
      radial-gradient(circle at 91% 4%, rgba(37, 199, 216, .32), transparent 28%),
      radial-gradient(circle at 6% 95%, rgba(255, 106, 61, .22), transparent 27%),
      linear-gradient(135deg, #0d2332 0%, #143e53 58%, #0b6680 100%);
  }
  #rk-loop-guide .rk-loop-hero::after {
    position: absolute;
    right: -70px;
    bottom: -115px;
    width: 340px;
    height: 340px;
    border: 44px solid rgba(255, 255, 255, .055);
    border-radius: 50%;
    content: "";
  }
  #rk-loop-guide .rk-loop-kicker {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 15px;
    color: #78efff;
    font-size: .69rem;
    font-weight: 950;
    letter-spacing: .09em;
    line-height: 1.2;
    text-transform: uppercase;
  }
  #rk-loop-guide .rk-loop-kicker::before {
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: var(--rk-orange);
    box-shadow: 0 0 0 6px rgba(255, 106, 61, .14);
    content: "";
  }
  #rk-loop-guide .rk-loop-hero-title {
    position: relative;
    z-index: 1;
    max-width: 900px;
    margin: 0 0 19px;
    color: var(--rk-white);
    font-size: clamp(2.05rem, 5.4vw, 4.35rem);
    font-weight: 950;
    letter-spacing: -.055em;
    line-height: 1.01;
  }
  #rk-loop-guide .rk-loop-hero-title span { color: #78efff; }
  #rk-loop-guide .rk-loop-lead {
    position: relative;
    z-index: 1;
    max-width: 860px;
    margin-bottom: 25px;
    color: #d8e9ef;
    font-size: clamp(1.02rem, 2vw, 1.24rem);
    line-height: 1.68;
  }
  #rk-loop-guide .rk-loop-hero-tags { position: relative; z-index: 1; display: flex; flex-wrap: wrap; gap: 9px; margin-bottom: 28px; }
  #rk-loop-guide .rk-loop-hero-tag {
    display: inline-flex;
    align-items: center;
    min-height: 38px;
    padding: 8px 13px;
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 999px;
    color: #eefcff;
    background: rgba(255, 255, 255, .075);
    font-size: .72rem;
    font-weight: 850;
    line-height: 1.3;
  }
  #rk-loop-guide .rk-loop-byline { position: relative; z-index: 1; display: flex; flex-wrap: wrap; gap: 8px 18px; color: #bad3dc; font-size: .72rem; font-weight: 720; }
  #rk-loop-guide .rk-loop-byline strong { color: var(--rk-white); }
  #rk-loop-guide .rk-loop-hero-metrics {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin-top: 34px;
  }
  #rk-loop-guide .rk-loop-hero-metric {
    padding: 17px 18px;
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 16px;
    background: rgba(5, 24, 36, .28);
    backdrop-filter: blur(6px);
  }
  #rk-loop-guide .rk-loop-hero-metric b { display: block; margin-bottom: 4px; color: #7af0ff; font-size: 1.04rem; font-weight: 950; }
  #rk-loop-guide .rk-loop-hero-metric span { display: block; color: #d5e7ec; font-size: .7rem; line-height: 1.45; }

  #rk-loop-guide .rk-loop-nav {
    position: sticky;
    z-index: 20;
    top: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 7px;
    padding: 13px clamp(14px, 3vw, 28px);
    border-bottom: 1px solid var(--rk-line);
    background: rgba(255, 255, 255, .96);
    box-shadow: 0 8px 24px rgba(16, 37, 54, .07);
    backdrop-filter: blur(10px);
  }
  #rk-loop-guide .rk-loop-nav a {
    padding: 7px 11px;
    border-radius: 999px;
    color: var(--rk-navy);
    background: var(--rk-soft);
    font-size: .65rem;
    font-weight: 900;
    line-height: 1.2;
    text-decoration: none;
  }
  #rk-loop-guide .rk-loop-nav a:hover,
  #rk-loop-guide .rk-loop-nav a:focus-visible { color: var(--rk-white); background: var(--rk-blue); }

  #rk-loop-guide .rk-loop-content { padding: clamp(26px, 5.5vw, 64px); }
  #rk-loop-guide .rk-loop-section { margin-bottom: clamp(48px, 8vw, 86px); scroll-margin-top: 104px; }
  #rk-loop-guide .rk-loop-section:last-child { margin-bottom: 0; }
  #rk-loop-guide .rk-loop-section-head { max-width: 870px; margin-bottom: 24px; }
  #rk-loop-guide .rk-loop-section-head > p:last-child { margin-bottom: 0; color: var(--rk-text); font-size: 1.02rem; }
  #rk-loop-guide .rk-loop-eyebrow {
    display: block;
    margin-bottom: 9px;
    color: var(--rk-blue);
    font-size: .67rem;
    font-weight: 950;
    letter-spacing: .08em;
    text-transform: uppercase;
  }
  #rk-loop-guide .rk-loop-grid-2,
  #rk-loop-guide .rk-loop-grid-3,
  #rk-loop-guide .rk-loop-grid-4 { display: grid; gap: 18px; }
  #rk-loop-guide .rk-loop-grid-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  #rk-loop-guide .rk-loop-grid-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  #rk-loop-guide .rk-loop-grid-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  #rk-loop-guide .rk-loop-card {
    padding: clamp(21px, 3.5vw, 31px);
    border: 1px solid var(--rk-line);
    border-radius: 18px;
    background: var(--rk-white);
    box-shadow: 0 10px 28px rgba(16, 37, 54, .065);
  }
  #rk-loop-guide .rk-loop-card p:last-child,
  #rk-loop-guide .rk-loop-card ul:last-child { margin-bottom: 0; }
  #rk-loop-guide .rk-loop-card-accent { border-top: 5px solid var(--rk-cyan); }
  #rk-loop-guide .rk-loop-card-orange { border-top: 5px solid var(--rk-orange); }
  #rk-loop-guide .rk-loop-card-green { border-top: 5px solid var(--rk-green); }
  #rk-loop-guide .rk-loop-card-purple { border-top: 5px solid var(--rk-purple); }
  #rk-loop-guide .rk-loop-card-number {
    display: inline-grid;
    place-items: center;
    width: 40px;
    height: 40px;
    margin-bottom: 15px;
    border-radius: 12px;
    color: var(--rk-white);
    background: var(--rk-blue);
    font-size: .9rem;
    font-weight: 950;
  }
  #rk-loop-guide .rk-loop-answer {
    position: relative;
    overflow: hidden;
    padding: clamp(27px, 5vw, 47px);
    border: 1px solid #a9e5ed;
    border-radius: 22px;
    background: linear-gradient(135deg, var(--rk-cyan-soft), #ffffff 70%);
  }
  #rk-loop-guide .rk-loop-answer::after {
    position: absolute;
    right: -32px;
    bottom: -63px;
    width: 180px;
    height: 180px;
    border: 28px solid rgba(7, 143, 190, .07);
    border-radius: 50%;
    content: "";
  }
  #rk-loop-guide .rk-loop-answer p { position: relative; z-index: 1; font-size: 1.05rem; }
  #rk-loop-guide .rk-loop-answer p:last-child { margin-bottom: 0; }
  #rk-loop-guide .rk-loop-answer strong { color: #075d78; }

  #rk-loop-guide .rk-loop-note {
    padding: 21px 23px;
    border-left: 5px solid var(--rk-blue);
    border-radius: 0 15px 15px 0;
    background: var(--rk-cyan-soft);
    color: #254858;
  }
  #rk-loop-guide .rk-loop-note p:last-child { margin-bottom: 0; }
  #rk-loop-guide .rk-loop-note-warn { border-left-color: var(--rk-orange); background: var(--rk-orange-soft); }
  #rk-loop-guide .rk-loop-note-good { border-left-color: var(--rk-green); background: var(--rk-green-soft); }
  #rk-loop-guide .rk-loop-note-purple { border-left-color: var(--rk-purple); background: var(--rk-purple-soft); }

  #rk-loop-guide .rk-loop-formula {
    overflow: hidden;
    margin: 19px 0;
    padding: 22px;
    border: 1px solid var(--rk-line);
    border-radius: 16px;
    color: var(--rk-dark);
    background: #f8fcfd;
    text-align: center;
  }
  #rk-loop-guide .rk-loop-formula code {
    display: block;
    color: #075d78;
    font-family: "SFMono-Regular", Consolas, "Liberation Mono", monospace;
    font-size: clamp(.9rem, 2.2vw, 1.17rem);
    font-weight: 900;
    white-space: normal;
  }
  #rk-loop-guide .rk-loop-formula small { display: block; margin-top: 9px; color: var(--rk-muted); font-size: .69rem; line-height: 1.5; }

  #rk-loop-guide .rk-loop-length-map {
    display: grid;
    grid-template-columns: 1fr auto 1.4fr auto 1fr;
    align-items: center;
    gap: 11px;
    margin: 23px 0;
    padding: 22px;
    border-radius: 18px;
    color: var(--rk-white);
    background: var(--rk-dark);
  }
  #rk-loop-guide .rk-loop-length-part { padding: 18px 12px; border: 1px solid rgba(255,255,255,.15); border-radius: 13px; background: rgba(255,255,255,.07); text-align: center; }
  #rk-loop-guide .rk-loop-length-part b { display: block; color: #7af0ff; font-size: 1.12rem; }
  #rk-loop-guide .rk-loop-length-part span { display: block; margin-top: 3px; color: #d4e6ec; font-size: .66rem; line-height: 1.4; }
  #rk-loop-guide .rk-loop-length-plus { color: var(--rk-orange); font-size: 1.45rem; font-weight: 950; }

  #rk-loop-guide .rk-loop-tool {
    overflow: hidden;
    border: 1px solid #b7dfe8;
    border-radius: 24px;
    background: #f8fcfd;
    box-shadow: 0 22px 58px rgba(16, 37, 54, .1);
  }
  #rk-loop-guide .rk-loop-tool-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 20px;
    padding: clamp(25px, 4.5vw, 42px);
    color: var(--rk-white);
    background: linear-gradient(135deg, #0e2a3b, #076a88);
  }
  #rk-loop-guide .rk-loop-tool-head h3 { margin-bottom: 8px; color: var(--rk-white); font-size: clamp(1.35rem, 3vw, 2rem); }
  #rk-loop-guide .rk-loop-tool-head p { max-width: 720px; margin-bottom: 0; color: #d4e7ed; }
  #rk-loop-guide .rk-loop-tool-badge { flex: 0 0 auto; padding: 8px 12px; border: 1px solid rgba(255,255,255,.23); border-radius: 999px; color: #79efff; font-size: .65rem; font-weight: 950; text-transform: uppercase; }
  #rk-loop-guide .rk-loop-tool-body { padding: clamp(20px, 4vw, 38px); }
  #rk-loop-guide .rk-loop-form-group { margin-bottom: 25px; }
  #rk-loop-guide .rk-loop-form-group:last-child { margin-bottom: 0; }
  #rk-loop-guide .rk-loop-form-group-title { display: flex; align-items: center; gap: 9px; margin-bottom: 14px; color: var(--rk-dark); font-size: .8rem; font-weight: 950; text-transform: uppercase; }
  #rk-loop-guide .rk-loop-form-group-title span { display: inline-grid; place-items: center; width: 28px; height: 28px; border-radius: 9px; color: var(--rk-white); background: var(--rk-blue); font-size: .68rem; }
  #rk-loop-guide .rk-loop-fields { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
  #rk-loop-guide .rk-loop-field { min-width: 0; }
  #rk-loop-guide .rk-loop-field label { display: block; margin-bottom: 7px; color: var(--rk-dark); font-size: .72rem; font-weight: 850; line-height: 1.35; }
  #rk-loop-guide .rk-loop-field small { display: block; margin-top: 6px; color: var(--rk-muted); font-size: .61rem; line-height: 1.45; }
  #rk-loop-guide .rk-loop-input-wrap { position: relative; }
  #rk-loop-guide .rk-loop-input-wrap input,
  #rk-loop-guide .rk-loop-input-wrap select {
    width: 100%;
    min-height: 50px;
    padding: 10px 48px 10px 13px;
    border: 1px solid #bfd4dc;
    border-radius: 12px;
    color: var(--rk-dark);
    background: var(--rk-white);
    outline: none;
    font-weight: 800;
    line-height: 1.25;
  }
  #rk-loop-guide .rk-loop-input-wrap select { padding-right: 13px; }
  #rk-loop-guide .rk-loop-input-wrap input:focus,
  #rk-loop-guide .rk-loop-input-wrap select:focus { border-color: var(--rk-blue); box-shadow: 0 0 0 4px rgba(7,143,190,.12); }
  #rk-loop-guide .rk-loop-unit { position: absolute; top: 50%; right: 13px; transform: translateY(-50%); color: var(--rk-muted); font-size: .67rem; font-weight: 850; pointer-events: none; }
  #rk-loop-guide .rk-loop-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 23px; }
  #rk-loop-guide .rk-loop-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 50px;
    padding: 12px 20px;
    border: 0;
    border-radius: 12px;
    color: var(--rk-white);
    background: var(--rk-blue);
    box-shadow: 0 10px 22px rgba(7, 143, 190, .2);
    cursor: pointer;
    font-weight: 920;
  }
  #rk-loop-guide .rk-loop-button:hover,
  #rk-loop-guide .rk-loop-button:focus-visible { background: #066c91; transform: translateY(-1px); }
  #rk-loop-guide .rk-loop-button-secondary { color: var(--rk-navy); background: #e7f3f7; box-shadow: none; }
  #rk-loop-guide .rk-loop-button-secondary:hover,
  #rk-loop-guide .rk-loop-button-secondary:focus-visible { color: var(--rk-white); background: var(--rk-navy); }

  #rk-loop-guide .rk-loop-results { margin-top: 28px; padding-top: 28px; border-top: 1px solid var(--rk-line); }
  #rk-loop-guide .rk-loop-status {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 15px;
    align-items: center;
    margin-bottom: 18px;
    padding: 18px 20px;
    border: 1px solid #9ddaca;
    border-radius: 16px;
    background: var(--rk-green-soft);
  }
  #rk-loop-guide .rk-loop-status-icon { display: grid; place-items: center; width: 45px; height: 45px; border-radius: 14px; color: var(--rk-white); background: var(--rk-green); font-weight: 950; }
  #rk-loop-guide .rk-loop-status b { display: block; margin-bottom: 2px; color: #0f604e; font-size: 1rem; }
  #rk-loop-guide .rk-loop-status span { display: block; color: #376f63; font-size: .72rem; line-height: 1.5; }
  #rk-loop-guide .rk-loop-status.is-warning { border-color: #efcf70; background: var(--rk-yellow-soft); }
  #rk-loop-guide .rk-loop-status.is-warning .rk-loop-status-icon { background: var(--rk-yellow); }
  #rk-loop-guide .rk-loop-status.is-warning b { color: #78580d; }
  #rk-loop-guide .rk-loop-status.is-warning span { color: #735f2d; }
  #rk-loop-guide .rk-loop-status.is-danger { border-color: #e5aaa2; background: var(--rk-red-soft); }
  #rk-loop-guide .rk-loop-status.is-danger .rk-loop-status-icon { background: var(--rk-red); }
  #rk-loop-guide .rk-loop-status.is-danger b { color: #8b2e25; }
  #rk-loop-guide .rk-loop-status.is-danger span { color: #7d4b46; }
  #rk-loop-guide .rk-loop-result-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 11px; }
  #rk-loop-guide .rk-loop-result-card { min-width: 0; padding: 17px 14px; border: 1px solid var(--rk-line); border-radius: 14px; background: var(--rk-white); }
  #rk-loop-guide .rk-loop-result-card span { display: block; margin-bottom: 5px; color: var(--rk-muted); font-size: .61rem; font-weight: 850; line-height: 1.35; text-transform: uppercase; }
  #rk-loop-guide .rk-loop-result-card b { display: block; overflow-wrap: anywhere; color: var(--rk-dark); font-size: clamp(1.02rem, 2.5vw, 1.45rem); font-weight: 950; line-height: 1.2; }
  #rk-loop-guide .rk-loop-result-card small { display: block; margin-top: 5px; color: var(--rk-muted); font-size: .59rem; line-height: 1.4; }
  #rk-loop-guide .rk-loop-result-note { margin-top: 15px; padding: 15px 17px; border-radius: 12px; color: #365563; background: var(--rk-cyan-soft); font-size: .71rem; line-height: 1.55; }

  #rk-loop-guide .rk-loop-data-table-wrap { margin-top: 21px; }
  #rk-loop-guide .rk-loop-table-title { margin-bottom: 10px; color: var(--rk-dark); font-size: .79rem; font-weight: 920; }
  #rk-loop-guide .rk-loop-data-table { width: 100%; border-collapse: separate; border-spacing: 0; overflow: hidden; border: 1px solid var(--rk-line); border-radius: 14px; background: var(--rk-white); font-size: .72rem; }
  #rk-loop-guide .rk-loop-data-table th,
  #rk-loop-guide .rk-loop-data-table td { padding: 12px 11px; border-bottom: 1px solid var(--rk-line); text-align: left; vertical-align: top; }
  #rk-loop-guide .rk-loop-data-table th { color: var(--rk-white); background: var(--rk-navy); font-size: .62rem; font-weight: 900; line-height: 1.35; text-transform: uppercase; }
  #rk-loop-guide .rk-loop-data-table tr:last-child td { border-bottom: 0; }
  #rk-loop-guide .rk-loop-data-table tbody tr:nth-child(even) td { background: #f8fbfc; }
  #rk-loop-guide .rk-loop-data-table tbody tr.is-best td { background: var(--rk-green-soft); }
  #rk-loop-guide .rk-loop-data-table tbody tr.is-fail td { color: #82524d; background: var(--rk-red-soft); }
  #rk-loop-guide .rk-loop-chip { display: inline-flex; padding: 4px 8px; border-radius: 999px; color: #11604e; background: #d9f2e9; font-size: .58rem; font-weight: 950; white-space: nowrap; }
  #rk-loop-guide .rk-loop-chip-warn { color: #75550d; background: #ffefbc; }
  #rk-loop-guide .rk-loop-chip-bad { color: #8b2e25; background: #f7d8d4; }

  #rk-loop-guide .rk-loop-visual-grid { display: block; margin-top: 22px; }
  #rk-loop-guide .rk-loop-chart-card,
  #rk-loop-guide .rk-loop-scheme-card { padding: clamp(19px, 3vw, 27px); border: 1px solid var(--rk-line); border-radius: 18px; background: var(--rk-white); }
  #rk-loop-guide .rk-loop-chart-head { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 8px 18px; margin-bottom: 13px; }
  #rk-loop-guide .rk-loop-chart-head h3 { margin-bottom: 0; font-size: 1.07rem; }
  #rk-loop-guide .rk-loop-legend { display: flex; flex-wrap: wrap; gap: 7px 12px; color: var(--rk-muted); font-size: .59rem; font-weight: 800; }
  #rk-loop-guide .rk-loop-legend span { display: inline-flex; align-items: center; gap: 5px; }
  #rk-loop-guide .rk-loop-legend i { display: inline-block; width: 15px; height: 4px; border-radius: 4px; background: var(--rk-blue); }
  #rk-loop-guide .rk-loop-legend .is-green { background: var(--rk-green); }
  #rk-loop-guide .rk-loop-legend .is-orange { background: var(--rk-orange); }
  #rk-loop-guide .rk-loop-legend .is-budget { height: 2px; background: var(--rk-red); }
  #rk-loop-guide .rk-loop-canvas-wrap { position: relative; width: 100%; min-height: 340px; }
  #rk-loop-guide #rk-loop-chart { display: block; width: 100%; height: 340px; }
  #rk-loop-guide .rk-loop-chart-caption { margin-top: 10px; margin-bottom: 0; color: var(--rk-muted); font-size: .64rem; line-height: 1.5; }
  #rk-loop-guide .rk-loop-scheme { display: grid; gap: 12px; margin-top: 18px; }
  #rk-loop-guide .rk-loop-scheme-row { display: grid; grid-template-columns: 88px 1fr; gap: 10px; align-items: center; }
  #rk-loop-guide .rk-loop-manifold { display: grid; place-items: center; min-height: 156px; border-radius: 14px; color: var(--rk-white); background: var(--rk-navy); font-size: .66rem; font-weight: 900; text-align: center; }
  #rk-loop-guide .rk-loop-paths { display: grid; gap: 7px; }
  #rk-loop-guide .rk-loop-path { position: relative; height: 18px; border: 3px solid var(--rk-cyan); border-left: 0; border-radius: 0 12px 12px 0; opacity: .95; }
  #rk-loop-guide .rk-loop-path::before { position: absolute; top: 50%; left: -19px; width: 19px; height: 3px; background: var(--rk-orange); content: ""; transform: translateY(-50%); }
  #rk-loop-guide .rk-loop-scheme-stats { display: grid; grid-template-columns: repeat(2, 1fr); gap: 8px; margin-top: 14px; }
  #rk-loop-guide .rk-loop-scheme-stat { padding: 11px; border-radius: 11px; background: var(--rk-soft); }
  #rk-loop-guide .rk-loop-scheme-stat span { display: block; color: var(--rk-muted); font-size: .58rem; text-transform: uppercase; }
  #rk-loop-guide .rk-loop-scheme-stat b { display: block; margin-top: 3px; color: var(--rk-dark); font-size: .85rem; }

  #rk-loop-guide .rk-loop-cta {
    position: relative;
    overflow: hidden;
    margin: clamp(46px, 7vw, 78px) 0;
    padding: clamp(30px, 5vw, 51px);
    border-radius: 23px;
    color: var(--rk-white);
    background: linear-gradient(135deg, #102b3d 0%, #075f79 100%);
    box-shadow: 0 20px 48px rgba(16, 37, 54, .18);
  }
  #rk-loop-guide .rk-loop-cta::after { position: absolute; right: -55px; bottom: -90px; width: 250px; height: 250px; border: 36px solid rgba(255,255,255,.055); border-radius: 50%; content: ""; }
  #rk-loop-guide .rk-loop-cta h2 { position: relative; z-index: 1; max-width: 820px; margin-bottom: 15px; color: var(--rk-white); }
  #rk-loop-guide .rk-loop-cta p { position: relative; z-index: 1; max-width: 850px; color: #d7e9ee; }
  #rk-loop-guide .rk-loop-cta-button {
    position: relative;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 54px;
    padding: 13px 22px;
    border-radius: 12px;
    color: var(--rk-white);
    background: var(--rk-orange);
    box-shadow: 0 12px 25px rgba(255, 106, 61, .27);
    font-weight: 950;
    line-height: 1.25;
    text-align: center;
    text-decoration: none;
  }
  #rk-loop-guide .rk-loop-cta-button:hover,
  #rk-loop-guide .rk-loop-cta-button:focus-visible { color: var(--rk-white); background: #e95127; transform: translateY(-2px); }
  #rk-loop-guide .rk-loop-disclosure { position: relative; z-index: 1; display: block; max-width: 780px; margin-top: 12px; color: #a9c8d2; font-size: .58rem; line-height: 1.45; }

  #rk-loop-guide .rk-loop-list { padding-left: 1.22em; }
  #rk-loop-guide .rk-loop-list li { margin-bottom: .55em; padding-left: .2em; }
  #rk-loop-guide .rk-loop-checklist { counter-reset: rkloopstep; display: grid; gap: 13px; padding: 0; list-style: none; }
  #rk-loop-guide .rk-loop-checklist li { counter-increment: rkloopstep; display: grid; grid-template-columns: 45px 1fr; gap: 14px; align-items: start; padding: 18px; border: 1px solid var(--rk-line); border-radius: 15px; background: var(--rk-white); }
  #rk-loop-guide .rk-loop-checklist li::before { display: grid; place-items: center; width: 42px; height: 42px; border-radius: 13px; color: var(--rk-white); background: var(--rk-blue); content: counter(rkloopstep); font-weight: 950; }
  #rk-loop-guide .rk-loop-checklist b { display: block; margin-bottom: 3px; }
  #rk-loop-guide .rk-loop-checklist span { display: block; color: var(--rk-text); font-size: .85rem; line-height: 1.58; }

  #rk-loop-guide .rk-loop-faq { display: grid; gap: 10px; }
  #rk-loop-guide .rk-loop-faq details { overflow: hidden; border: 1px solid var(--rk-line); border-radius: 14px; background: var(--rk-white); }
  #rk-loop-guide .rk-loop-faq summary { position: relative; padding: 17px 52px 17px 18px; color: var(--rk-dark); cursor: pointer; font-weight: 880; line-height: 1.42; list-style: none; }
  #rk-loop-guide .rk-loop-faq summary::-webkit-details-marker { display: none; }
  #rk-loop-guide .rk-loop-faq summary::after { position: absolute; top: 50%; right: 17px; display: grid; place-items: center; width: 27px; height: 27px; border-radius: 9px; color: var(--rk-blue); background: var(--rk-cyan-soft); content: "+"; transform: translateY(-50%); font-size: 1rem; font-weight: 950; }
  #rk-loop-guide .rk-loop-faq details[open] summary::after { content: "−"; }
  #rk-loop-guide .rk-loop-faq details[open] summary { color: var(--rk-blue); background: #f7fbfc; }
  #rk-loop-guide .rk-loop-faq-answer { padding: 0 18px 18px; color: var(--rk-text); }
  #rk-loop-guide .rk-loop-faq-answer p:last-child { margin-bottom: 0; }

  #rk-loop-guide .rk-loop-sources { padding: clamp(23px, 4vw, 34px); border: 1px solid var(--rk-line); border-radius: 18px; background: var(--rk-soft); }
  #rk-loop-guide .rk-loop-source-list { display: grid; gap: 11px; margin: 0; padding: 0; list-style: none; }
  #rk-loop-guide .rk-loop-source-list li { padding: 13px 15px; border-radius: 12px; background: var(--rk-white); color: var(--rk-text); font-size: .77rem; line-height: 1.55; }
  #rk-loop-guide .rk-loop-source-list b { display: block; margin-bottom: 2px; }

  #rk-loop-guide .rk-loop-author { overflow: hidden; margin-top: clamp(50px, 8vw, 82px); border: 1px solid var(--rk-line); border-radius: 23px; background: var(--rk-white); box-shadow: 0 18px 48px rgba(16,37,54,.1); }
  #rk-loop-guide .rk-loop-author > input { position: absolute; opacity: 0; pointer-events: none; }
  #rk-loop-guide .rk-loop-author-head { display: flex; align-items: center; justify-content: space-between; gap: 19px; padding: 27px clamp(22px, 5vw, 46px); color: var(--rk-white); background: var(--rk-dark); }
  #rk-loop-guide .rk-loop-author-head h2 { margin-bottom: 7px; color: var(--rk-white); }
  #rk-loop-guide .rk-loop-author-head p { margin-bottom: 0; color: #d1e5ec; }
  #rk-loop-guide .rk-loop-author-mark { display: inline-flex; flex: 0 0 auto; padding: 9px 13px; border: 1px solid rgba(255,255,255,.18); border-radius: 999px; color: #7af0ff; font-size: .63rem; font-weight: 950; letter-spacing: .06em; white-space: nowrap; }
  #rk-loop-guide .rk-loop-author-layout { display: grid; grid-template-columns: 295px 1fr; }
  #rk-loop-guide .rk-loop-author-side { padding: 35px 27px; border-right: 1px solid var(--rk-line); background: #f8fbfc; text-align: center; }
  #rk-loop-guide .rk-loop-author-photo { overflow: hidden; width: 156px; height: 156px; margin: 0 auto 18px; border: 7px solid var(--rk-white); border-radius: 50%; box-shadow: 0 10px 28px rgba(16,37,54,.14); }
  #rk-loop-guide .rk-loop-author-photo img { width: 100%; height: 100%; object-fit: cover; }
  #rk-loop-guide .rk-loop-author-name { color: var(--rk-dark); font-size: 1.25rem; font-weight: 950; }
  #rk-loop-guide .rk-loop-author-role { margin-top: 7px; color: var(--rk-blue); font-size: .68rem; font-weight: 950; line-height: 1.45; text-transform: uppercase; }
  #rk-loop-guide .rk-loop-author-social-label { margin-top: 26px; color: var(--rk-muted); font-size: .64rem; font-weight: 900; letter-spacing: .05em; text-transform: uppercase; }
  #rk-loop-guide .rk-loop-author-social { display: flex; justify-content: center; gap: 9px; margin-top: 10px; }
  #rk-loop-guide .rk-loop-author-social a { display: grid; place-items: center; width: 42px; height: 42px; border: 1px solid var(--rk-line); border-radius: 12px; color: var(--rk-navy); background: var(--rk-white); transition: .2s ease; }
  #rk-loop-guide .rk-loop-author-social a:hover,
  #rk-loop-guide .rk-loop-author-social a:focus-visible { border-color: var(--rk-cyan); color: var(--rk-blue); transform: translateY(-2px); }
  #rk-loop-guide .rk-loop-author-social svg { width: 20px; height: 20px; fill: currentColor; }
  #rk-loop-guide .rk-loop-author-main { min-width: 0; padding: 38px clamp(25px, 5vw, 48px); }
  #rk-loop-guide .rk-loop-author-quote { position: relative; margin: 0 0 22px; padding: 30px 25px 25px 70px; border-radius: 16px; background: var(--rk-cyan-soft); }
  #rk-loop-guide .rk-loop-author-quote::before { position: absolute; top: 3px; left: 24px; color: var(--rk-cyan); content: "“"; font-size: 4.8rem; font-weight: 950; line-height: 1; }
  #rk-loop-guide .rk-loop-author-quote p { margin-bottom: 0; color: var(--rk-dark); font-size: .98rem; font-style: italic; font-weight: 800; }
  #rk-loop-guide .rk-loop-author-tabs { display: grid; grid-template-columns: repeat(3, 1fr); border: 1px solid var(--rk-line); border-radius: 14px 14px 0 0; background: var(--rk-soft); }
  #rk-loop-guide .rk-loop-author-tab { padding: 13px 8px; border-right: 1px solid var(--rk-line); color: var(--rk-muted); cursor: pointer; font-size: .68rem; font-weight: 950; text-align: center; text-transform: uppercase; }
  #rk-loop-guide .rk-loop-author-tab:last-child { border-right: 0; }
  #rk-loop-guide .rk-loop-author-panel { display: none; padding: 23px; border: 1px solid var(--rk-line); border-top: 0; border-radius: 0 0 14px 14px; color: var(--rk-text); }
  #rk-loop-guide .rk-loop-author-panel p:last-child { margin-bottom: 0; }
  #rk-loop-author-about:checked ~ .rk-loop-author-layout .rk-loop-author-panel-about,
  #rk-loop-author-exp:checked ~ .rk-loop-author-layout .rk-loop-author-panel-exp,
  #rk-loop-author-sites:checked ~ .rk-loop-author-layout .rk-loop-author-panel-sites { display: block; }
  #rk-loop-author-about:checked ~ .rk-loop-author-layout label[for="rk-loop-author-about"],
  #rk-loop-author-exp:checked ~ .rk-loop-author-layout label[for="rk-loop-author-exp"],
  #rk-loop-author-sites:checked ~ .rk-loop-author-layout label[for="rk-loop-author-sites"] { color: var(--rk-blue); background: var(--rk-white); box-shadow: inset 0 -4px 0 var(--rk-blue); }
  #rk-loop-guide .rk-loop-site-links { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 12px; }
  #rk-loop-guide .rk-loop-site-links a { padding: 7px 10px; border-radius: 9px; background: var(--rk-soft); font-size: .7rem; text-decoration: none; }
  #rk-loop-guide .rk-loop-final-cta { margin-bottom: 0; }

  @media (max-width: 900px) {
    #rk-loop-guide .rk-loop-grid-3,
    #rk-loop-guide .rk-loop-grid-4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    #rk-loop-guide .rk-loop-fields { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    #rk-loop-guide .rk-loop-result-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    #rk-loop-guide .rk-loop-visual-grid { grid-template-columns: 1fr; }
    #rk-loop-guide .rk-loop-author-layout { grid-template-columns: 1fr; }
    #rk-loop-guide .rk-loop-author-side { border-right: 0; border-bottom: 1px solid var(--rk-line); }
  }

  @media (max-width: 700px) {
    #rk-loop-guide { margin-top: 18px; font-size: 16px; }
    #rk-loop-guide .rk-loop-shell { border-right: 0; border-left: 0; border-radius: 0; }
    #rk-loop-guide .rk-loop-hero-metrics,
    #rk-loop-guide .rk-loop-grid-2,
    #rk-loop-guide .rk-loop-grid-3,
    #rk-loop-guide .rk-loop-grid-4,
    #rk-loop-guide .rk-loop-fields { grid-template-columns: 1fr; }
    #rk-loop-guide .rk-loop-nav { position: static; justify-content: flex-start; }
    #rk-loop-guide .rk-loop-nav a { flex: 1 1 calc(50% - 7px); text-align: center; }
    #rk-loop-guide .rk-loop-length-map { grid-template-columns: 1fr; }
    #rk-loop-guide .rk-loop-length-plus { transform: rotate(90deg); text-align: center; }
    #rk-loop-guide .rk-loop-tool-head { display: block; }
    #rk-loop-guide .rk-loop-tool-badge { display: inline-flex; margin-top: 15px; }
    #rk-loop-guide .rk-loop-actions { display: grid; grid-template-columns: 1fr; }
    #rk-loop-guide .rk-loop-result-grid { grid-template-columns: 1fr 1fr; }
    #rk-loop-guide .rk-loop-canvas-wrap,
    #rk-loop-guide #rk-loop-chart { min-height: 300px; height: 300px; }
    #rk-loop-guide .rk-loop-data-table,
    #rk-loop-guide .rk-loop-data-table tbody,
    #rk-loop-guide .rk-loop-data-table tr,
    #rk-loop-guide .rk-loop-data-table td { display: block; width: 100%; }
    #rk-loop-guide .rk-loop-data-table thead { position: absolute; overflow: hidden; width: 1px; height: 1px; clip: rect(0 0 0 0); white-space: nowrap; }
    #rk-loop-guide .rk-loop-data-table { border: 0; border-radius: 0; background: transparent; }
    #rk-loop-guide .rk-loop-data-table tr { overflow: hidden; margin-bottom: 12px; border: 1px solid var(--rk-line); border-radius: 14px; background: var(--rk-white); box-shadow: 0 7px 19px rgba(16,37,54,.055); }
    #rk-loop-guide .rk-loop-data-table td { display: grid; grid-template-columns: minmax(115px, .8fr) minmax(0, 1.2fr); gap: 12px; padding: 11px 13px; border-bottom: 1px solid var(--rk-line); text-align: right; }
    #rk-loop-guide .rk-loop-data-table td::before { color: var(--rk-muted); content: attr(data-label); font-size: .59rem; font-weight: 900; line-height: 1.4; text-align: left; text-transform: uppercase; }
    #rk-loop-guide .rk-loop-data-table td:last-child { border-bottom: 0; }
    #rk-loop-guide .rk-loop-data-table tbody tr:nth-child(even) td { background: transparent; }
    #rk-loop-guide .rk-loop-data-table tbody tr.is-best td { background: var(--rk-green-soft); }
    #rk-loop-guide .rk-loop-data-table tbody tr.is-fail td { background: var(--rk-red-soft); }
    #rk-loop-guide .rk-loop-author-head { display: block; }
    #rk-loop-guide .rk-loop-author-mark { margin-top: 17px; white-space: normal; }
    #rk-loop-guide .rk-loop-author-main { padding: 24px 18px; }
    #rk-loop-guide .rk-loop-author-quote { padding: 65px 20px 22px; }
    #rk-loop-guide .rk-loop-author-quote::before { left: 20px; }
    #rk-loop-guide .rk-loop-author-tab { font-size: .58rem; }
  }

  @media (max-width: 430px) {
    #rk-loop-guide .rk-loop-result-grid { grid-template-columns: 1fr; }
    #rk-loop-guide .rk-loop-status { grid-template-columns: 1fr; }
    #rk-loop-guide .rk-loop-scheme-row { grid-template-columns: 68px 1fr; }
    #rk-loop-guide .rk-loop-manifold { font-size: .58rem; }
  }

  @media (prefers-reduced-motion: reduce) {
    #rk-loop-guide *,
    #rk-loop-guide *::before,
    #rk-loop-guide *::after { scroll-behavior: auto !important; transition: none !important; }
  }

  @media print {
    #rk-loop-guide .rk-loop-progress,
    #rk-loop-guide .rk-loop-nav,
    #rk-loop-guide .rk-loop-actions,
    #rk-loop-guide .rk-loop-cta { display: none !important; }
    #rk-loop-guide .rk-loop-shell { border: 0; box-shadow: none; }
    #rk-loop-guide .rk-loop-section { break-inside: avoid; }
  }
</style>

<div id="rk-loop-guide">
  <div class="rk-loop-progress" id="rk-loop-progress" aria-hidden="true"></div>

  <article class="rk-loop-shell">
    <header class="rk-loop-hero">
      <span class="rk-loop-kicker">Hydraulika pętli • aktualizacja 2026</span>
      <p class="rk-loop-hero-title">Jedna pętla nie ma jednej „magicznej” długości. <span>Liczy się cały układ.</span></p>
      <p class="rk-loop-lead">Wartości 80 albo 100 m mogą być praktycznym punktem kontrolnym dla rury 16×2 mm, ale nie zastępują obliczenia przepływu, rzeczywistej średnicy wewnętrznej, oporów i długości dobiegów. Tutaj policzysz wszystkie te zależności w jednym miejscu.</p>

      <div class="rk-loop-hero-tags" aria-label="Zakres opracowania">
        <span class="rk-loop-hero-tag">powierzchnia czynna</span>
        <span class="rk-loop-hero-tag">rozstaw rur</span>
        <span class="rk-loop-hero-tag">dobiegi do rozdzielacza</span>
        <span class="rk-loop-hero-tag">przepływ i prędkość</span>
        <span class="rk-loop-hero-tag">spadek ciśnienia</span>
      </div>

      <div class="rk-loop-byline">
        <span>Autor: <strong>Robert Kucharski</strong></span>
        <span>Specjalista HVAC i ogrzewania podłogowego</span>
        <span>Aktualizacja techniczna: 29 sierpnia 2026 r.</span>
      </div>

      <div class="rk-loop-hero-metrics">
        <div class="rk-loop-hero-metric"><b>Nie jedna liczba</b><span>Długość jest wynikiem geometrii oraz hydrauliki.</span></div>
        <div class="rk-loop-hero-metric"><b>Pole + 2 dobiegi</b><span>Każdy obwód musi dojść od rozdzielacza i do niego wrócić.</span></div>
        <div class="rk-loop-hero-metric"><b>Moc → przepływ → opór</b><span>Tak wygląda właściwa kolejność weryfikacji obwodu.</span></div>
      </div>
    </header>

    <nav class="rk-loop-nav" aria-label="Nawigacja po artykule">
      <a href="#rk-loop-answer">Szybka odpowiedź</a>
      <a href="#rk-loop-length">Co liczymy</a>
      <a href="#rk-loop-hydraulics">Hydraulika</a>
      <a href="#rk-loop-calculator">Kalkulator</a>
      <a href="#rk-loop-comparison">Porównanie</a>
      <a href="#rk-loop-checklist">Checklista</a>
      <a href="#rk-loop-faq">FAQ</a>
    </nav>

    <main class="rk-loop-content">
      <section class="rk-loop-section" id="rk-loop-answer">
        <div class="rk-loop-section-head">
          <span class="rk-loop-eyebrow">Odpowiedź w 30 sekund</span>
          <h2>Ile metrów podłogówki na jednej pętli?</h2>
        </div>

        <div class="rk-loop-answer">
          <p><strong>Dla rury 16×2 mm zakres około 80–100 m bywa stosowany jako praktyczne założenie wstępne, ale nie jest uniwersalnym limitem zapewniającym poprawne działanie.</strong> Tę samą długość można ocenić inaczej przy przepływie 0,8 l/min, a inaczej przy 2,0 l/min.</p>
          <p>Prawidłową długość trzeba sprawdzić na podstawie mocy przypisanej do obwodu, projektowego ΔT, przepływu, średnicy wewnętrznej, temperatury medium, strat w rurze i armaturze oraz ciśnienia dostępnego dla najbardziej niekorzystnej pętli.</p>
        </div>

        <div class="rk-loop-grid-2" style="margin-top:18px">
          <article class="rk-loop-card rk-loop-card-accent">
            <span class="rk-loop-card-number">1</span>
            <h3>Warunek geometryczny</h3>
            <p>Czy rura potrzebna do pokrycia powierzchni czynnej, po doliczeniu obu dobiegów, zmieści się w przyjętej długości obwodu?</p>
          </article>
          <article class="rk-loop-card rk-loop-card-orange">
            <span class="rk-loop-card-number">2</span>
            <h3>Warunek hydrauliczny</h3>
            <p>Czy przy wymaganym przepływie opór tej pętli pozostanie w budżecie ciśnienia przewidzianym dla obwodu?</p>
          </article>
        </div>

        <div class="rk-loop-note rk-loop-note-warn" style="margin-top:18px">
          <p><strong>Ważne:</strong> sama zgodność z długością 80 albo 100 m nie potwierdza jeszcze mocy podłogi. Rozstaw trzeba wcześniej sprawdzić cieplnie dla temperatur wody, konstrukcji jastrychu, okładziny i dopuszczalnej temperatury powierzchni. Metodyka projektowania systemów wbudowanych jest opisana m.in. w <a href="https://www.iso.org/standard/74684.html" target="_blank" rel="noopener nofollow">ISO 11855-3:2021</a>.</p>
        </div>
      </section>

      <section class="rk-loop-section" id="rk-loop-length">
        <div class="rk-loop-section-head">
          <span class="rk-loop-eyebrow">Metry bez zgadywania</span>
          <h2>Długość pętli to pole grzewcze i dwa dobiegi</h2>
          <p>Najczęstszy błąd polega na zamianie całej długości pętli na powierzchnię bez odjęcia trasy między rozdzielaczem a ogrzewanym polem.</p>
        </div>

        <div class="rk-loop-formula">
          <code>L<sub>pola</sub> ≈ A<sub>czynna</sub> / s</code>
          <small>Powierzchnię czynną podajemy w m², a rozstaw s w metrach. Jest to oszacowanie geometryczne przed rozrysowaniem rzeczywistej trasy.</small>
        </div>

        <div class="rk-loop-formula">
          <code>L<sub>pętli</sub> ≈ L<sub>pola</sub> / n + 2 · L<sub>dobiegu</sub></code>
          <small>n oznacza liczbę pętli obsługujących analizowane pole. Każdy obwód ma własne zasilanie i powrót.</small>
        </div>

        <div class="rk-loop-length-map" aria-label="Składniki długości jednej pętli">
          <div class="rk-loop-length-part"><b>Dobięg</b><span>od rozdzielacza do pola</span></div>
          <div class="rk-loop-length-plus">+</div>
          <div class="rk-loop-length-part"><b>Rura w polu</b><span>część odpowiedzialna za ogrzewanie powierzchni</span></div>
          <div class="rk-loop-length-plus">+</div>
          <div class="rk-loop-length-part"><b>Powrót</b><span>z pola do rozdzielacza</span></div>
        </div>

        <div class="rk-loop-grid-2">
          <article class="rk-loop-card rk-loop-card-green">
            <h3>Przykład: 24 m², rozstaw 15 cm</h3>
            <p>Idealna długość w polu wynosi około 160 m. Po przyjęciu jawnej korekty geometrycznej 5% otrzymujemy około 168 m. Przy dwóch obwodach i dobiegu 6 m w jedną stronę wychodzi orientacyjnie:</p>
            <div class="rk-loop-formula"><code>168 / 2 + 2 · 6 = 96 m</code></div>
            <p>Łącznie potrzebne będzie około 192 m rury, ponieważ każda z dwóch pętli ma własne dobiegi.</p>
          </article>
          <article class="rk-loop-card rk-loop-card-purple">
            <h3>Dlaczego nie dodajemy zawsze 10%?</h3>
            <p>Stały procent nie zna położenia rozdzielacza. W jednym pokoju dobiegi mogą mieć 2 m, a w innym 12 m w jedną stronę. Kalkulator pokazuje oddzielnie korektę geometrii pola oraz rzeczywistą deklarowaną długość dojścia.</p>
            <p>Więcej o samym zużyciu materiału znajdziesz w opracowaniu <a href="https://projekt-ogrzewania.pl/ile-rury-na-m%c2%b2-ogrzewania-podlogowego/">ile rury na m² ogrzewania podłogowego</a>.</p>
          </article>
        </div>

        <div class="rk-loop-note" style="margin-top:18px">
          <p>Do obliczeń przyjmuj <strong>powierzchnię rzeczywiście ogrzewaną</strong>, a nie automatycznie całe pomieszczenie. Stała zabudowa, kominek, część konstrukcji oraz inne pola bez rur zmniejszają dostępną powierzchnię. Pomaga w tym poradnik <a href="https://projekt-ogrzewania.pl/gdzie-nie-ukladac-ogrzewania-podlogowego/">gdzie nie układać ogrzewania podłogowego</a>.</p>
        </div>
      </section>

      <section class="rk-loop-section" id="rk-loop-hydraulics">
        <div class="rk-loop-section-head">
          <span class="rk-loop-eyebrow">Najpierw przepływ</span>
          <h2>Dlaczego dwie pętle po 90 m mogą mieć zupełnie inne opory?</h2>
          <p>Długość jest tylko jednym z parametrów. Strata ciśnienia rośnie również wraz z przepływem i bardzo silnie reaguje na zmianę średnicy wewnętrznej.</p>
        </div>

        <div class="rk-loop-grid-2">
          <article class="rk-loop-card rk-loop-card-accent">
            <h3>1. Moc wyznacza przepływ</h3>
            <div class="rk-loop-formula"><code>V̇ [l/min] ≈ Φ [W] / (69,8 · ΔT [K])</code></div>
            <p>Dla wody i pętli przekazującej 700 W przy ΔT równym 5 K otrzymamy około 2,01 l/min. Przy tej samej mocy i ΔT równym 7 K będzie to około 1,43 l/min.</p>
          </article>
          <article class="rk-loop-card rk-loop-card-orange">
            <h3>2. Przepływ i średnica wyznaczają opór</h3>
            <div class="rk-loop-formula"><code>Δp = λ · L / d<sub>i</sub> · ρv² / 2 + ΣΔp<sub>miejscowe</sub></code></div>
            <p>Model Darcy’ego-Weisbacha łączy długość, średnicę, prędkość, gęstość i współczynnik tarcia. Osobno trzeba uwzględnić zawory, rozdzielacz i pozostałe elementy.</p>
          </article>
        </div>

        <div class="rk-loop-grid-3" style="margin-top:18px">
          <article class="rk-loop-card"><h3>Średnica wewnętrzna</h3><p>O hydraulice decyduje światło rury, nie wyłącznie oznaczenie 16, 17 albo 20 mm na zewnątrz.</p></article>
          <article class="rk-loop-card"><h3>Temperatura medium</h3><p>Temperatura zmienia gęstość i lepkość wody. Mieszanina z glikolem wymaga osobnych właściwości cieczy.</p></article>
          <article class="rk-loop-card"><h3>Obwód wspólny</h3><p>Dobór pompy obejmuje również magistralę, rozdzielacz, źródło, filtry i armaturę poza samą pętlą.</p></article>
        </div>

        <div class="rk-loop-note rk-loop-note-good" style="margin-top:18px">
          <p><strong>Nie sumujemy strat ciśnienia równoległych pętli.</strong> Dla rozdzielacza analizuje się najbardziej wymagającą drogę przepływu, a następnie dodaje opory elementów wspólnych. Sumuje się natomiast przepływy wszystkich jednocześnie pracujących obwodów. Zobacz także poradniki o <a href="https://projekt-ogrzewania.pl/pompa-obiegowa-w-instalacji-ogrzewania-podlogowego/">pompie obiegowej</a>, <a href="https://projekt-ogrzewania.pl/rotametr-wskaznik-przeplywu-w-rozdzielaczu-ogrzewania-podlogowego/">rotametrach</a> i <a href="https://projekt-ogrzewania.pl/spadek-temperatury-%ce%b4t-roznica-miedzy-temperatura-zasilania-a-powrotu/">różnicy temperatury zasilania i powrotu</a>.</p>
        </div>
      </section>

      <section class="rk-loop-section" id="rk-loop-calculator">
        <div class="rk-loop-section-head">
          <span class="rk-loop-eyebrow">Narzędzie interaktywne</span>
          <h2>Analizator długości, liczby i hydrauliki pętli</h2>
          <p>Wprowadź dane jednego pomieszczenia albo jednej spójnej strefy. Narzędzie przetestuje kolejne podziały na pętle i wybierze pierwszy wariant spełniający przyjęty limit długości, budżet ciśnienia oraz maksymalną prędkość.</p>
        </div>

        <div class="rk-loop-tool" role="region" aria-label="Kalkulator długości pętli ogrzewania podłogowego">
          <div class="rk-loop-tool-head">
            <div>
              <h3>Policz pętle dla swoich założeń</h3>
              <p>Wynik jest wstępną analizą referencyjną. Wszystkie kryteria hydrauliczne są widoczne i można je zmienić, zamiast ukrywać je pod hasłem „maksymalnie 100 m”.</p>
            </div>
            <span class="rk-loop-tool-badge">model Darcy-Weisbach</span>
          </div>

          <div class="rk-loop-tool-body">
            <div class="rk-loop-form-group">
              <div class="rk-loop-form-group-title"><span>1</span> Geometria pola</div>
              <div class="rk-loop-fields">
                <div class="rk-loop-field">
                  <label for="rk-loop-area">Powierzchnia rzeczywiście ogrzewana</label>
                  <div class="rk-loop-input-wrap"><input id="rk-loop-area" type="number" min="1" max="500" step="0.1" value="24" inputmode="decimal"><span class="rk-loop-unit">m²</span></div>
                  <small>Bez trwałej zabudowy i wyłączonych pól.</small>
                </div>
                <div class="rk-loop-field">
                  <label for="rk-loop-spacing">Rozstaw rur</label>
                  <div class="rk-loop-input-wrap"><input id="rk-loop-spacing" type="number" min="5" max="30" step="0.5" value="15" inputmode="decimal"><span class="rk-loop-unit">cm</span></div>
                  <small>Rozstaw musi być wcześniej sprawdzony cieplnie.</small>
                </div>
                <div class="rk-loop-field">
                  <label for="rk-loop-approach">Dobięg w jedną stronę</label>
                  <div class="rk-loop-input-wrap"><input id="rk-loop-approach" type="number" min="0" max="60" step="0.5" value="6" inputmode="decimal"><span class="rk-loop-unit">m</span></div>
                  <small>Od rozdzielacza do początku pola grzewczego.</small>
                </div>
                <div class="rk-loop-field">
                  <label for="rk-loop-geometry">Korekta geometrii pola</label>
                  <div class="rk-loop-input-wrap"><input id="rk-loop-geometry" type="number" min="0" max="20" step="0.5" value="5" inputmode="decimal"><span class="rk-loop-unit">%</span></div>
                  <small>Jawny szacunek na łuki i kształt, nie wartość normowa.</small>
                </div>
              </div>
            </div>

            <div class="rk-loop-form-group">
              <div class="rk-loop-form-group-title"><span>2</span> Moc i przepływ</div>
              <div class="rk-loop-fields">
                <div class="rk-loop-field">
                  <label for="rk-loop-power">Projektowa moc strefy</label>
                  <div class="rk-loop-input-wrap"><input id="rk-loop-power" type="number" min="50" max="50000" step="10" value="1800" inputmode="decimal"><span class="rk-loop-unit">W</span></div>
                  <small>Najlepiej z obliczeń obciążenia cieplnego.</small>
                </div>
                <div class="rk-loop-field">
                  <label for="rk-loop-delta">Projektowe ΔT</label>
                  <div class="rk-loop-input-wrap"><input id="rk-loop-delta" type="number" min="2" max="20" step="0.5" value="5" inputmode="decimal"><span class="rk-loop-unit">K</span></div>
                  <small>Różnica między zasilaniem i powrotem.</small>
                </div>
                <div class="rk-loop-field">
                  <label for="rk-loop-temperature">Średnia temperatura wody</label>
                  <div class="rk-loop-input-wrap"><input id="rk-loop-temperature" type="number" min="5" max="80" step="0.5" value="30" inputmode="decimal"><span class="rk-loop-unit">°C</span></div>
                  <small>Wpływa na gęstość i lepkość w modelu.</small>
                </div>
              </div>
            </div>

            <div class="rk-loop-form-group">
              <div class="rk-loop-form-group-title"><span>3</span> Rura i kryteria wstępne</div>
              <div class="rk-loop-fields">
                <div class="rk-loop-field">
                  <label for="rk-loop-pipe">Rura referencyjna</label>
                  <div class="rk-loop-input-wrap">
                    <select id="rk-loop-pipe">
                      <option value="12" selected>16×2 mm — dᵢ 12 mm</option>
                      <option value="13">17×2 mm — dᵢ 13 mm</option>
                      <option value="16">20×2 mm — dᵢ 16 mm</option>
                    </select>
                  </div>
                  <small>Sprawdź rzeczywistą średnicę w dokumentacji użytej rury.</small>
                </div>
                <div class="rk-loop-field">
                  <label for="rk-loop-extra-loss">Opory dodatkowe jednej pętli</label>
                  <div class="rk-loop-input-wrap"><input id="rk-loop-extra-loss" type="number" min="0" max="50" step="0.5" value="3" inputmode="decimal"><span class="rk-loop-unit">kPa</span></div>
                  <small>Wstępny udział zaworów i rozdzielacza.</small>
                </div>
                <div class="rk-loop-field">
                  <label for="rk-loop-budget">Budżet ciśnienia dla pętli</label>
                  <div class="rk-loop-input-wrap"><input id="rk-loop-budget" type="number" min="3" max="100" step="0.5" value="20" inputmode="decimal"><span class="rk-loop-unit">kPa</span></div>
                  <small>Założenie projektowe, a nie limit normowy.</small>
                </div>
                <div class="rk-loop-field">
                  <label for="rk-loop-max-length">Praktyczna długość kontrolna</label>
                  <div class="rk-loop-input-wrap"><input id="rk-loop-max-length" type="number" min="30" max="250" step="1" value="100" inputmode="decimal"><span class="rk-loop-unit">m</span></div>
                  <small>Edytowalne kryterium pomocnicze.</small>
                </div>
                <div class="rk-loop-field">
                  <label for="rk-loop-max-speed">Maksymalna prędkość kontrolna</label>
                  <div class="rk-loop-input-wrap"><input id="rk-loop-max-speed" type="number" min="0.2" max="1.5" step="0.05" value="0.6" inputmode="decimal"><span class="rk-loop-unit">m/s</span></div>
                  <small>Granica przyjęta do wstępnego porównania.</small>
                </div>
              </div>
            </div>

            <div class="rk-loop-actions">
              <button class="rk-loop-button" id="rk-loop-calculate" type="button">Przelicz analizę</button>
              <button class="rk-loop-button rk-loop-button-secondary" id="rk-loop-reset" type="button">Przywróć przykład</button>
            </div>

            <div class="rk-loop-results" id="rk-loop-results" aria-live="polite">
              <div class="rk-loop-status" id="rk-loop-status">
                <div class="rk-loop-status-icon" id="rk-loop-status-icon">✓</div>
                <div><b id="rk-loop-status-title">Wariant spełnia przyjęte kryteria wstępne</b><span id="rk-loop-status-copy">Kalkulator znalazł pierwszy podział mieszczący się w ustawionym limicie długości, ciśnienia i prędkości.</span></div>
              </div>

              <div class="rk-loop-result-grid">
                <div class="rk-loop-result-card"><span>Wstępna liczba pętli</span><b id="rk-loop-result-count">3</b><small>przed rozrysowaniem rzutu</small></div>
                <div class="rk-loop-result-card"><span>Średnia długość pętli</span><b id="rk-loop-result-length">68,0 m</b><small>pole i oba dobiegi</small></div>
                <div class="rk-loop-result-card"><span>Całkowita ilość rury</span><b id="rk-loop-result-total">204,0 m</b><small>dla analizowanej strefy</small></div>
                <div class="rk-loop-result-card"><span>Rura w samym polu</span><b id="rk-loop-result-field">168,0 m</b><small>po korekcie geometrii</small></div>
                <div class="rk-loop-result-card"><span>Przepływ na pętlę</span><b id="rk-loop-result-flow">1,72 l/min</b><small id="rk-loop-result-flow-total">łącznie 5,16 l/min</small></div>
                <div class="rk-loop-result-card"><span>Prędkość medium</span><b id="rk-loop-result-speed">0,25 m/s</b><small>dla wskazanej średnicy</small></div>
                <div class="rk-loop-result-card"><span>Strata pętli z dodatkami</span><b id="rk-loop-result-loss">10,5 kPa</b><small>model referencyjny</small></div>
                <div class="rk-loop-result-card"><span>Wymagana moc z 1 m²</span><b id="rk-loop-result-unit-power">75,0 W/m²</b><small id="rk-loop-result-area">8,0 m² na pętlę</small></div>
              </div>

              <div class="rk-loop-result-note" id="rk-loop-result-note">Analizator nie sprawdza, czy wybrany rozstaw i konstrukcja podłogi oddadzą wymaganą moc. Wynik hydrauliczny trzeba połączyć z obliczeniem cieplnym oraz rzeczywistym przebiegiem rur.</div>

              <div class="rk-loop-data-table-wrap">
                <div class="rk-loop-table-title">Jak kolejne podziały zmieniają długość i hydraulikę?</div>
                <table class="rk-loop-data-table" aria-label="Porównanie wariantów liczby pętli">
                  <thead><tr><th>Pętle</th><th>Długość jednej</th><th>Przepływ jednej</th><th>Prędkość</th><th>Strata z dodatkami</th><th>Ocena</th></tr></thead>
                  <tbody id="rk-loop-candidate-body"></tbody>
                </table>
              </div>

              <div class="rk-loop-visual-grid">
                <div class="rk-loop-chart-card">
                  <div class="rk-loop-chart-head">
                    <h3>Spadek ciśnienia a długość pętli</h3>
                    <div class="rk-loop-legend" aria-label="Legenda wykresu">
                      <span><i></i>16×2</span>
                      <span><i class="is-green"></i>17×2</span>
                      <span><i class="is-orange"></i>20×2</span>
                      <span><i class="is-budget"></i>budżet</span>
                    </div>
                  </div>
                  <div class="rk-loop-canvas-wrap"><canvas id="rk-loop-chart" role="img" aria-label="Wykres spadku ciśnienia w zależności od długości pętli dla trzech średnic rur"></canvas></div>
                  <p class="rk-loop-chart-caption" id="rk-loop-chart-caption">Linie porównują trzy średnice przy tym samym przepływie przypadającym na obwód. Pionowy znacznik pokazuje wyliczoną średnią długość.</p>
                </div>

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

        <div class="rk-loop-note rk-loop-note-warn" style="margin-top:18px">
          <p><strong>Zakres modelu:</strong> obliczenia dotyczą wody i gładkiej rury tworzywowej o referencyjnej chropowatości. Dla glikolu należy zastosować właściwości konkretnej mieszaniny. Wartość oporów dodatkowych jest wprowadzana przez użytkownika, ponieważ bez danych rozdzielacza i zaworów nie da się jej uczciwie wyznaczyć.</p>
        </div>
      </section>

      <section class="rk-loop-cta" aria-label="Projekt z rozrysowanymi pętlami i długościami">
        <span class="rk-loop-kicker">Od liczby do rzeczywistego rzutu</span>
        <h2>Kalkulator dzieli metry, ale nie rozrysuje pętli na rzucie</h2>
        <p>Analizator zakłada równy podział powierzchni i podobne dobiegi. Nie zna kształtu pomieszczenia, stałej zabudowy, przejść przez drzwi, dylatacji, stref brzegowych ani kolejności układania rur. Sam wynik liczbowy nie mówi jeszcze, którędy obwody mają przebiegać ani jakie będą ich rzeczywiste długości i nastawy.</p>
        <a class="rk-loop-cta-button rk-loop-sales-cta" href="https://projekt-ogrzewania.pl/produkt/projekt-instalacji-ogrzewania-podlogowego-podlogowki/">Zamów projekt z rozrysowanymi pętlami i długościami</a>
        <small class="rk-loop-disclosure">Odnośnik prowadzi do strony sprzedażowej Projekt-Ogrzewania.pl — serwisu należącego do autora artykułu.</small>
      </section>

      <section class="rk-loop-section" id="rk-loop-comparison">
        <div class="rk-loop-section-head">
          <span class="rk-loop-eyebrow">Te same warunki, różne rury</span>
          <h2>Rura 16×2, 17×2 i 20×2 mm — co rzeczywiście zmienia średnica?</h2>
          <p>Większe światło rury może wyraźnie zmniejszyć stratę ciśnienia przy tym samym przepływie i długości. Nie tworzy jednak automatycznego pozwolenia na obwód 120 albo 150 m.</p>
        </div>

        <table class="rk-loop-data-table" aria-label="Porównanie wymiarów rur do ogrzewania podłogowego">
          <thead><tr><th>Oznaczenie</th><th>Referencyjne dᵢ</th><th>Wpływ hydrauliczny</th><th>Co trzeba sprawdzić</th></tr></thead>
          <tbody>
            <tr>
              <td data-label="Oznaczenie"><strong>16×2 mm</strong></td>
              <td data-label="Referencyjne dᵢ">12 mm</td>
              <td data-label="Wpływ hydrauliczny">Najwyższa prędkość i opór spośród porównywanych wariantów przy identycznym przepływie.</td>
              <td data-label="Co trzeba sprawdzić">Wymagany przepływ, długość z dobiegami, opór pętli oraz możliwość regulacji.</td>
            </tr>
            <tr>
              <td data-label="Oznaczenie"><strong>17×2 mm</strong></td>
              <td data-label="Referencyjne dᵢ">13 mm</td>
              <td data-label="Wpływ hydrauliczny">Niższa prędkość oraz jednostkowa strata ciśnienia niż przy średnicy wewnętrznej 12 mm.</td>
              <td data-label="Co trzeba sprawdzić">Rzeczywisty wymiar produktu, promień gięcia i zgodność z kompletnym systemem.</td>
            </tr>
            <tr>
              <td data-label="Oznaczenie"><strong>20×2 mm</strong></td>
              <td data-label="Referencyjne dᵢ">16 mm</td>
              <td data-label="Wpływ hydrauliczny">Znacznie mniejszy opór przy tym samym przepływie, ale większa sztywność i inna geometria układania.</td>
              <td data-label="Co trzeba sprawdzić">Obliczenia cieplne, hydraulikę, wykonanie łuków oraz rozwiązania konstrukcyjne podłogi.</td>
            </tr>
          </tbody>
        </table>

        <div class="rk-loop-note" style="margin-top:18px">
          <p>Podane średnice wewnętrzne są wartościami referencyjnymi wynikającymi z prostego odejmowania dwóch grubości ścianki. Przed wykonaniem projektu należy sprawdzić kartę techniczną konkretnej rury. Więcej o doborze wymiaru przeczytasz w opracowaniu <a href="https://projekt-ogrzewania.pl/srednice-rur-w-ogrzewaniu-podlogowym/">średnice rur w ogrzewaniu podłogowym</a>.</p>
        </div>
      </section>

      <section class="rk-loop-section" id="rk-loop-area-guide">
        <div class="rk-loop-section-head">
          <span class="rk-loop-eyebrow">Metry kwadratowe na obwód</span>
          <h2>Ile powierzchni może przypadać na jedną pętlę?</h2>
          <p>Bez podania rozstawu i długości dobiegów pytanie nie ma jednej odpowiedzi. Poniższy przykład pokazuje tylko geometrię: z całej pętli 80 m odejmujemy łącznie 12 m dojścia i powrotu, więc w polu pozostaje 68 m.</p>
        </div>

        <table class="rk-loop-data-table" aria-label="Przykładowa powierzchnia pola dla pętli 80 metrów">
          <thead><tr><th>Rozstaw</th><th>Idealna ilość rury w polu</th><th>Pole z 68 m rury</th><th>Znaczenie wyniku</th></tr></thead>
          <tbody>
            <tr><td data-label="Rozstaw"><strong>10 cm</strong></td><td data-label="Rura w polu">około 10 m/m²</td><td data-label="Pole z 68 m">około 6,8 m²</td><td data-label="Znaczenie">Duża ilość rury na małym polu; wcześniej trzeba potwierdzić potrzebę takiego zagęszczenia.</td></tr>
            <tr><td data-label="Rozstaw"><strong>15 cm</strong></td><td data-label="Rura w polu">około 6,67 m/m²</td><td data-label="Pole z 68 m">około 10,2 m²</td><td data-label="Znaczenie">Przykład geometryczny, nie automatyczna zalecana powierzchnia pętli.</td></tr>
            <tr><td data-label="Rozstaw"><strong>20 cm</strong></td><td data-label="Rura w polu">około 5 m/m²</td><td data-label="Pole z 68 m">około 13,6 m²</td><td data-label="Znaczenie">Większe pole nie potwierdza, że podłoga pokryje wymaganą moc przy danej temperaturze wody.</td></tr>
          </tbody>
        </table>

        <div class="rk-loop-note rk-loop-note-warn" style="margin-top:18px">
          <p>W tabeli nie doliczono korekty na rzeczywiste łuki i kształt pola. Nie jest to tabela maksymalnych powierzchni. Właściwy rozstaw wybiera się na podstawie obciążenia cieplnego, powierzchni czynnej i charakterystyki podłogi. Zobacz szczegółowe porównanie <a href="https://projekt-ogrzewania.pl/rozstaw-rur-w-ogrzewaniu-podlogowym-co-10-czy-15-cm/">rozstawu rur co 10 i 15 cm</a>.</p>
        </div>
      </section>

      <section class="rk-loop-section" id="rk-loop-rooms">
        <div class="rk-loop-section-head">
          <span class="rk-loop-eyebrow">Różne pomieszczenia</span>
          <h2>Salon, łazienka i duże przeszklenia nie potrzebują tej samej reguły</h2>
          <p>Podział na obwody wynika z geometrii i hydrauliki, ale wcześniej każde pomieszczenie musi przejść osobną kontrolę cieplną.</p>
        </div>

        <div class="rk-loop-grid-4">
          <article class="rk-loop-card rk-loop-card-accent">
            <h3>Duży salon</h3>
            <p>Najczęściej wymaga kilku pól. Granice pętli powinny uwzględniać kształt, komunikację, dylatacje oraz realistyczny powrót rur do rozdzielacza.</p>
          </article>
          <article class="rk-loop-card rk-loop-card-orange">
            <h3>Łazienka</h3>
            <p>Wyższa temperatura obliczeniowa i mała powierzchnia czynna mogą zwiększyć wymaganą moc z 1 m². Krótki obwód nie musi mieć takiego przepływu jak dłuższa pętla salonu.</p>
          </article>
          <article class="rk-loop-card rk-loop-card-green">
            <h3>Duże okna</h3>
            <p>Strefa brzegowa może zmienić rozstaw i trasę, lecz nie wolno automatycznie zagęszczać rur bez sprawdzenia mocy oraz temperatury powierzchni.</p>
          </article>
          <article class="rk-loop-card rk-loop-card-purple">
            <h3>Dom szkieletowy</h3>
            <p>Mniejsza bezwładność budynku nie narzuca pętli 60–70 m. O dynamice decyduje konstrukcja podłogi i sterowanie, a długość weryfikuje hydraulika.</p>
          </article>
        </div>

        <p style="margin-top:18px">Przed rozrysowaniem warto przeczytać poradnik <a href="https://projekt-ogrzewania.pl/jak-zaplanowac-rozmieszczenie-petli-grzewczych-w-ogrzewaniu-podlogowym/">jak zaplanować rozmieszczenie pętli grzewczych</a> oraz opracowanie o <a href="https://projekt-ogrzewania.pl/strefa-brzegowa-w-ogrzewaniu-podlogowym/">strefie brzegowej</a>.</p>
      </section>

      <section class="rk-loop-section" id="rk-loop-balancing">
        <div class="rk-loop-section-head">
          <span class="rk-loop-eyebrow">Regulacja rozdzielacza</span>
          <h2>Czy wszystkie pętle muszą mieć identyczną długość?</h2>
          <p>Nie. Podobne długości często ułatwiają równoważenie, ale celem projektu nie jest uzyskanie identycznej liczby metrów. Celem jest osiągnięcie wymaganych przepływów dla wszystkich obwodów.</p>
        </div>

        <div class="rk-loop-grid-2">
          <article class="rk-loop-card rk-loop-card-green">
            <h3>Różne długości mogą pracować razem</h3>
            <p>Pętla łazienki o długości 45 m może pracować obok pętli salonu o długości 92 m, jeżeli każda otrzyma właściwy przepływ, a zawory i pompa zapewnią wymagane warunki regulacji.</p>
          </article>
          <article class="rk-loop-card rk-loop-card-orange">
            <h3>Podobna długość nie gwarantuje równowagi</h3>
            <p>Dwie pętle po 80 m mogą potrzebować różnych przepływów, ponieważ obsługują inną moc. Jednakowa nastawa wszystkich rotametrów nie jest wtedy prawidłowym rozwiązaniem.</p>
          </article>
        </div>

        <div class="rk-loop-note" style="margin-top:18px">
          <p>Nie ma uniwersalnej reguły, że długości mogą różnić się maksymalnie o 10 albo 15%. Najpierw przypisuje się moc do obwodów, oblicza przepływy, sprawdza opory i dopiero potem ocenia zakres regulacji rozdzielacza.</p>
        </div>
      </section>

      <section class="rk-loop-section" id="rk-loop-source">
        <div class="rk-loop-section-head">
          <span class="rk-loop-eyebrow">Źródło ciepła i medium</span>
          <h2>Pompa ciepła, kocioł i glikol — co naprawdę zmieniają?</h2>
          <p>Podłoga nie rozpoznaje urządzenia, które podgrzało wodę. Źródło wpływa na temperaturę, z jaką chcemy pracować, ale nie wyznacza samodzielnie długości pętli.</p>
        </div>

        <div class="rk-loop-grid-3">
          <article class="rk-loop-card rk-loop-card-accent">
            <h3>Pompa ciepła</h3>
            <p>Niska temperatura zasilania może wymagać większej powierzchni czynnej albo innego rozstawu. Krótsza pętla może ograniczyć potrzebne ciśnienie, ale sama nie gwarantuje poprawy SCOP.</p>
          </article>
          <article class="rk-loop-card rk-loop-card-green">
            <h3>Kocioł</h3>
            <p>Możliwość uzyskania wyższej temperatury wody nie powinna służyć do maskowania zbyt małej powierzchni grzewczej lub błędnego rozstawu.</p>
          </article>
          <article class="rk-loop-card rk-loop-card-purple">
            <h3>Mieszanina z glikolem</h3>
            <p>Glikol zmienia lepkość, gęstość i pojemność cieplną. Kalkulator wodny nie powinien być bez korekty używany do doboru takiej instalacji.</p>
          </article>
        </div>

        <p style="margin-top:18px">Jeżeli instalacja ma pracować z mieszaniną niezamarzającą, przeczytaj opracowanie <a href="https://projekt-ogrzewania.pl/glikol-w-ogrzewaniu-podlogowym-prawda-i-mity-ktore-musi-znac-kazdy-inwestor/">glikol w ogrzewaniu podłogowym — prawda i mity</a>.</p>
      </section>

      <section class="rk-loop-section" id="rk-loop-myths">
        <div class="rk-loop-section-head">
          <span class="rk-loop-eyebrow">Bez straszenia i skrótów</span>
          <h2>Najczęstsze mity o długości pętli</h2>
        </div>

        <table class="rk-loop-data-table" aria-label="Mity i wyjaśnienia dotyczące długości pętli">
          <thead><tr><th>Mit</th><th>Wyjaśnienie techniczne</th></tr></thead>
          <tbody>
            <tr><td data-label="Mit"><strong>Norma ustala 100 m dla rury 16×2</strong></td><td data-label="Wyjaśnienie">Jedna liczba nie zastępuje sprawdzenia przepływu, oporów, średnicy wewnętrznej i dostępnego ciśnienia.</td></tr>
            <tr><td data-label="Mit"><strong>Długa pętla zawsze ma ΔT 10 K</strong></td><td data-label="Wyjaśnienie">Różnica temperatur wynika z mocy oddawanej przez obwód i przepływu. Duży opór może utrudnić uzyskanie przepływu, ale nie narzuca z góry konkretnego ΔT.</td></tr>
            <tr><td data-label="Mit"><strong>Za długa pętla powoduje kawitację</strong></td><td data-label="Wyjaśnienie">Kawitacja zależy od lokalnego ciśnienia bezwzględnego, temperatury i warunków pracy pompy. Typowym skutkiem nadmiernego oporu jest brak wymaganego przepływu lub potrzeba większej wysokości podnoszenia.</td></tr>
            <tr><td data-label="Mit"><strong>Długa pętla pęka wylewkę</strong></td><td data-label="Wyjaśnienie">Rysy i uszkodzenia jastrychu wiążą się z jego konstrukcją, dylatacjami, wykonaniem, pielęgnacją, wygrzewaniem oraz ruchami termicznymi, a nie z samą liczbą metrów obwodu.</td></tr>
            <tr><td data-label="Mit"><strong>Krótsze pętle automatycznie poprawiają SCOP</strong></td><td data-label="Wyjaśnienie">Mogą zmniejszyć wymagane ciśnienie pompy obiegowej, ale sprawność pompy ciepła zależy przede wszystkim od warunków źródła i odbioru oraz temperatury zasilania.</td></tr>
            <tr><td data-label="Mit"><strong>Wszystkie rotametry ustawia się tak samo</strong></td><td data-label="Wyjaśnienie">Przepływ każdej pętli powinien wynikać z przypisanej mocy i projektowego ΔT, a następnie zostać zweryfikowany hydraulicznie.</td></tr>
          </tbody>
        </table>

        <div class="rk-loop-note rk-loop-note-warn" style="margin-top:18px">
          <p>Jeżeli instalacja jest już wykonana i podejrzewasz zbyt długi obwód, przejdź do osobnego poradnika <a href="https://projekt-ogrzewania.pl/za-dluga-petla-podlogowki/">za długa pętla podłogówki — objawy i rozwiązania</a>. Techniczne granice i weryfikację przyjętej długości rozwija natomiast wpis <a href="https://projekt-ogrzewania.pl/maksymalna-dlugosc-petli-ogrzewania-podlogowego/">maksymalna długość pętli ogrzewania podłogowego</a>.</p>
        </div>
      </section>

      <section class="rk-loop-section" id="rk-loop-checklist">
        <div class="rk-loop-section-head">
          <span class="rk-loop-eyebrow">Procedura przed montażem</span>
          <h2>Jak wyznaczyć liczbę i długość pętli krok po kroku?</h2>
          <p>Kolejność ma znaczenie. Nie zaczynamy od podzielenia metrów przez arbitralne 80.</p>
        </div>

        <ol class="rk-loop-checklist">
          <li><div><b>Oblicz obciążenie cieplne pomieszczenia</b><span>Ustal moc potrzebną w warunkach projektowych. Średni wskaźnik dla całego domu nie zastępuje obliczeń poszczególnych pomieszczeń. Pomocne będzie opracowanie o <a href="https://projekt-ogrzewania.pl/projektowe-obciazenie-cieplne-ozc/">projektowym obciążeniu cieplnym OZC</a>.</span></div></li>
          <li><div><b>Wyznacz powierzchnię czynną</b><span>Odejmij stałą zabudowę i pola wyłączone z układania rur. Sprawdź rzeczywistą geometrię, a nie tylko metraż z zestawienia pomieszczeń.</span></div></li>
          <li><div><b>Dobierz rozstaw z obliczeń cieplnych</b><span>Porównaj wymaganą moc z wydajnością konkretnej konstrukcji podłogi przy przyjętej temperaturze wody oraz okładzinie.</span></div></li>
          <li><div><b>Oszacuj rurę w polu</b><span>Podziel powierzchnię czynną przez rozstaw wyrażony w metrach. Ewentualną korektę geometrii pokaż jawnie.</span></div></li>
          <li><div><b>Dodaj osobno oba dobiegi każdej pętli</b><span>Położenie rozdzielacza może zmienić zarówno całkowite zużycie rury, jak i realne pole obsługiwane przez obwód.</span></div></li>
          <li><div><b>Przypisz moc i oblicz przepływ obwodów</b><span>Przepływ wynika z mocy pętli i projektowej różnicy temperatur. Nie dobiera się go bezpośrednio z samej długości.</span></div></li>
          <li><div><b>Sprawdź średnicę, prędkość i spadek ciśnienia</b><span>Uwzględnij rurę, zawory, rozdzielacz oraz budżet ciśnienia wynikający z koncepcji całego obiegu.</span></div></li>
          <li><div><b>Rozrysuj i opisz każdą pętlę na rzucie</b><span>Dopiero rysunek ujawnia rzeczywiste dobiegi, przejścia przez drzwi, dylatacje, strefy brzegowe, kolejność układania i faktyczne długości.</span></div></li>
        </ol>
      </section>

      <section class="rk-loop-section" id="rk-loop-faq">
        <div class="rk-loop-section-head">
          <span class="rk-loop-eyebrow">Pytania i odpowiedzi</span>
          <h2>Ile metrów podłogówki na jednej pętli — FAQ</h2>
        </div>

        <div class="rk-loop-faq">
          <details><summary>Ile metrów powinna mieć jedna pętla ogrzewania podłogowego?</summary><div class="rk-loop-faq-answer"><p>Nie ma jednej długości właściwej dla każdej instalacji. Dla rury 16×2 mm wartości około 80–100 m bywają praktycznym założeniem wstępnym, ale wynik trzeba sprawdzić przy wymaganym przepływie, rzeczywistej średnicy wewnętrznej, oporach armatury i dostępnym ciśnieniu.</p></div></details>
          <details><summary>Czy 100 m to maksymalna długość pętli z rury 16×2 mm?</summary><div class="rk-loop-faq-answer"><p>Nie należy przedstawiać 100 m jako uniwersalnego limitu gwarantującego poprawność. Pętla krótsza może być zbyt oporowa przy dużym przepływie, a dłuższy obwód może spełniać przyjęty budżet w innych warunkach. Ostateczna decyzja wymaga obliczeń całej drogi przepływu.</p></div></details>
          <details><summary>Ile m² ogrzeje pętla 80 m przy rozstawie 10 cm?</summary><div class="rk-loop-faq-answer"><p>Jeżeli całe 80 m znajdowałoby się w polu, geometria dawałaby około 8 m². W praktyce trzeba odjąć zasilanie i powrót od rozdzielacza oraz uwzględnić łuki i kształt pola. Przy 12 m łącznych dobiegów w polu pozostaje 68 m, czyli orientacyjnie około 6,8 m².</p></div></details>
          <details><summary>Czy dobiegi wlicza się do długości pętli?</summary><div class="rk-loop-faq-answer"><p>Tak. Cała rura od belki zasilającej, przez pole grzewcze, aż do belki powrotnej tworzy jeden obwód hydrauliczny. Każda pętla wymaga doliczenia drogi do strefy oraz drogi powrotnej.</p></div></details>
          <details><summary>Czy wszystkie pętle powinny mieć taką samą długość?</summary><div class="rk-loop-faq-answer"><p>Nie. Podobne długości mogą ułatwić regulację, ale obwody obsługują różne moce i mogą wymagać innych przepływów. Najważniejsze jest osiągnięcie przepływów projektowych w zakresie regulacji zaworów i przy dostępnym ciśnieniu.</p></div></details>
          <details><summary>Co się dzieje, gdy pętla jest za długa?</summary><div class="rk-loop-faq-answer"><p>Wraz z długością rośnie strata ciśnienia. Jeżeli dostępne ciśnienie jest zbyt małe, pętla może nie osiągnąć wymaganego przepływu, a pomieszczenie wymaganej mocy. Nie oznacza to automatycznie kawitacji, pękania wylewki ani z góry określonego ΔT.</p></div></details>
          <details><summary>Czy rura 20×2 mm pozwala zawsze wykonać pętlę 150 m?</summary><div class="rk-loop-faq-answer"><p>Nie. Większa średnica wewnętrzna zmniejsza opór przy tym samym przepływie, ale długość nadal trzeba sprawdzić razem z mocą, przepływem, właściwościami medium, armaturą, budżetem ciśnienia i możliwościami wykonawczymi.</p></div></details>
          <details><summary>Czy pompa ciepła wymaga pętli krótszych niż kocioł?</summary><div class="rk-loop-faq-answer"><p>Nie bezpośrednio. Źródło ciepła wpływa na pożądaną temperaturę pracy, natomiast długość pętli wynika z geometrii i hydrauliki. Krótszy obwód może ograniczyć wymagane ciśnienie, ale nie jest automatycznym warunkiem współpracy z pompą ciepła.</p></div></details>
          <details><summary>Jak obliczyć przepływ jednej pętli?</summary><div class="rk-loop-faq-answer"><p>Dla wody można orientacyjnie podzielić moc pętli w watach przez iloczyn 69,8 oraz projektowego ΔT w kelwinach. Wynik otrzymujemy w l/min. Następnie sprawdzamy, jaki spadek ciśnienia wywoła ten przepływ w konkretnej rurze i armaturze.</p></div></details>
          <details><summary>Czy kalkulator zastępuje projekt ogrzewania podłogowego?</summary><div class="rk-loop-faq-answer"><p>Nie. Kalkulator wykonuje wstępny równy podział i referencyjne obliczenie hydrauliczne. Nie zna kształtu pomieszczeń, stref bez rur, dylatacji, rzeczywistych tras, charakterystyk zaworów ani pozostałych oporów wspólnego obiegu.</p></div></details>
        </div>
      </section>

      <section class="rk-loop-section rk-loop-sources" id="rk-loop-sources">
        <span class="rk-loop-eyebrow">Źródła i metodyka</span>
        <h2>Na czym oparto opracowanie?</h2>
        <ul class="rk-loop-source-list">
          <li><b><a href="https://www.iso.org/standard/74684.html" target="_blank" rel="noopener nofollow">ISO 11855-3:2021 — Design and dimensioning</a></b>Oficjalny opis części normy dotyczącej projektowania i wymiarowania wbudowanych systemów ogrzewania oraz chłodzenia płaszczyznowego.</li>
          <li><b><a href="https://radiant.cbe.berkeley.edu/resources/rad_tool_documentation" target="_blank" rel="noopener nofollow">University of California, Berkeley — Radiant Tools</a></b>Dokumentacja akademickiego narzędzia wskazująca zależność liczby obwodów od długości, wymaganego przepływu oraz spadku ciśnienia.</li>
          <li><b><a href="https://ceac.arizona.edu/sites/default/files/giacomelli%20heating.pdf" target="_blank" rel="noopener nofollow">University of Arizona — Heating Systems</a></b>Materiał dydaktyczny opisujący zależność strat ciśnienia od przepływu, średnicy, długości, chropowatości i oporów miejscowych oraz zastosowanie równania Darcy’ego-Weisbacha.</li>
        </ul>
        <p style="margin:17px 0 0;color:var(--rk-muted);font-size:.68rem">Kalkulator jest modelem edukacyjnym dla wody. Stosuje interpolowane właściwości wody w zakresie temperatur wejściowych, równanie Darcy’ego-Weisbacha i przybliżenie Haalanda dla współczynnika tarcia. Nie zastępuje danych konkretnego systemu ani pełnego doboru pompy.</p>
      </section>
    </main>

    <section class="rk-loop-author" id="rk-loop-author" aria-label="Autor opracowania">
      <input type="radio" name="rk-loop-author-tabs" id="rk-loop-author-about" checked="">
      <input type="radio" name="rk-loop-author-tabs" id="rk-loop-author-exp">
      <input type="radio" name="rk-loop-author-tabs" id="rk-loop-author-sites">

      <header class="rk-loop-author-head">
        <div><span class="rk-loop-kicker">Autor opracowania</span><h2>Robert Kucharski</h2><p>Projektant instalacji sanitarnych • specjalista HVAC i ogrzewania podłogowego</p></div>
        <span class="rk-loop-author-mark">HYDRAULIKA PĘTLI • HVAC</span>
      </header>

      <div class="rk-loop-author-layout">
        <aside class="rk-loop-author-side">
          <div class="rk-loop-author-photo"><img src="https://projekt-ogrzewania.pl/wp-content/uploads/2026/04/PO-Robert-Kucharski.webp" alt="Robert Kucharski — projektant ogrzewania podłogowego" width="600" height="600" loading="lazy" decoding="async"></div>
          <div class="rk-loop-author-name">Robert Kucharski</div>
          <div class="rk-loop-author-role">Projektant instalacji sanitarnych<br>Specjalista HVAC i ogrzewania podłogowego</div>
          <div class="rk-loop-author-social-label">Znajdziesz mnie również:</div>
          <div class="rk-loop-author-social" aria-label="Profile Roberta Kucharskiego w mediach społecznościowych">
            <a href="https://www.linkedin.com/in/robert-kucharski-38069b48/" target="_blank" rel="noopener nofollow me" aria-label="Robert Kucharski na LinkedIn" title="LinkedIn"><svg viewBox="0 0 24 24" aria-hidden="true"><path d="M5.2 7.7H1.6V22h3.6V7.7ZM3.4 2A2.1 2.1 0 1 0 3.4 6.2 2.1 2.1 0 0 0 3.4 2ZM22.4 13.8c0-4.3-2.3-6.3-5.4-6.3a4.7 4.7 0 0 0-4.2 2.3V7.7H9.2V22h3.6v-7.1c0-1.9.4-3.7 2.7-3.7 2.3 0 2.3 2.1 2.3 3.8v7h3.6l1-8.2Z"></path></svg></a>
            <a href="https://www.facebook.com/projektogrzewaniapl" target="_blank" rel="noopener nofollow me" aria-label="Projekt-Ogrzewania.pl na Facebooku" title="Facebook"><svg viewBox="0 0 24 24" aria-hidden="true"><path d="M14.2 22v-9h3l.5-3.5h-3.5V7.3c0-1 .3-1.7 1.8-1.7h1.9V2.5c-.3 0-1.5-.1-2.8-.1-2.8 0-4.7 1.7-4.7 4.8v2.3H7.2V13h3.2v9h3.8Z"></path></svg></a>
            <a href="https://x.com/Projekt_HVAC" target="_blank" rel="noopener nofollow me" aria-label="Projekt HVAC w serwisie X" title="X"><svg viewBox="0 0 24 24" aria-hidden="true"><path d="M18.9 2H22l-6.8 7.8L23.2 22H17l-4.9-6.4L6.5 22H3.3l7.3-8.4L2.8 2h6.4l4.4 5.8L18.9 2Zm-1.1 17.8h1.7L8.3 4.1H6.5l11.3 15.7Z"></path></svg></a>
          </div>
        </aside>

        <div class="rk-loop-author-main">
          <blockquote class="rk-loop-author-quote"><p>„Długość pętli nie jest celem samym w sobie. Najpierw trzeba wiedzieć, jaką moc ma przenieść obwód i jaki przepływ z tego wynika. Dopiero wtedy liczba metrów nabiera znaczenia hydraulicznego.”</p></blockquote>
          <div class="rk-loop-author-tabs" role="tablist" aria-label="Informacje o autorze">
            <label class="rk-loop-author-tab" for="rk-loop-author-about">O autorze</label>
            <label class="rk-loop-author-tab" for="rk-loop-author-exp">Doświadczenie</label>
            <label class="rk-loop-author-tab" for="rk-loop-author-sites">Portale</label>
          </div>
          <div class="rk-loop-author-panel rk-loop-author-panel-about"><p>Projektuję wodne ogrzewanie podłogowe, łącząc obliczenia strat ciepła z doborem temperatur, rozstawów, długości pętli, przepływów, strat ciśnienia i nastaw rozdzielaczy.</p><p><a href="https://projekt-ogrzewania.pl/author/robert-kucharski/">Zobacz profil i pozostałe opracowania autora</a>.</p></div>
          <div class="rk-loop-author-panel rk-loop-author-panel-exp"><p>Dokumentacja wykonawcza zawiera dla każdego obwodu rzeczywistą trasę, długość, przypisaną moc, przepływ oraz nastawę. Dzięki temu liczba pętli nie wynika z automatycznego dzielenia metrów przez jedną stałą wartość.</p></div>
          <div class="rk-loop-author-panel rk-loop-author-panel-sites"><p>Jestem właścicielem trzech serwisów branżowych. Powiązanie portali podaję jawnie, aby czytelnik znał autorstwo i kontekst linkowania.</p><div class="rk-loop-site-links"><a href="https://projekt-ogrzewania.pl/">Projekt-Ogrzewania.pl</a><a href="https://remont.biz.pl/" target="_blank" rel="noopener nofollow">Remont.biz.pl</a><a href="https://sobir.pl/" target="_blank" rel="noopener nofollow">Sobir.pl</a></div></div>
        </div>
      </div>
    </section>

    <section class="rk-loop-cta rk-loop-final-cta" aria-label="Kompletny projekt ogrzewania podłogowego">
      <span class="rk-loop-kicker">Zamknij hydraulikę przed ułożeniem rur</span>
      <h2>Otrzymaj kompletny projekt z długościami, przepływami i nastawami</h2>
      <p>Projekt łączy obciążenie cieplne, powierzchnie czynne, rozstawy, rzeczywisty przebieg oraz długość każdego obwodu, wymagane przepływy, straty ciśnienia i nastawy rozdzielacza. Instalator otrzymuje gotowy rzut, a nie samą ogólną regułę „80 albo 100 metrów”.</p>
      <a class="rk-loop-cta-button rk-loop-sales-cta" href="https://projekt-ogrzewania.pl/produkt/projekt-instalacji-ogrzewania-podlogowego-podlogowki/">Zamów kompletny projekt ogrzewania podłogowego</a>
      <small class="rk-loop-disclosure">Odnośnik prowadzi do strony sprzedażowej Projekt-Ogrzewania.pl — serwisu należącego do autora artykułu.</small>
    </section>
  </article>
</div>

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@graph": [
    {
      "@type": "TechArticle",
      "@id": "https://projekt-ogrzewania.pl/ile-metrow-podlogowki-na-jednej-petli/#article",
      "url": "https://projekt-ogrzewania.pl/ile-metrow-podlogowki-na-jednej-petli/",
      "headline": "Ile metrów podłogówki na jednej pętli? Długość, opory i kalkulator",
      "description": "Techniczny poradnik z kalkulatorem długości i liczby pętli, uwzględniający powierzchnię czynną, rozstaw, dobiegi, przepływ, średnicę rury i spadek ciśnienia.",
      "inLanguage": "pl-PL",
      "dateModified": "2026-08-29",
      "mainEntityOfPage": {"@id": "https://projekt-ogrzewania.pl/ile-metrow-podlogowki-na-jednej-petli/#webpage"},
      "author": {"@id": "https://projekt-ogrzewania.pl/#robert-kucharski"},
      "publisher": {"@id": "https://projekt-ogrzewania.pl/#organization"},
      "copyrightHolder": {"@id": "https://projekt-ogrzewania.pl/#robert-kucharski"},
      "about": [
        {"@type": "Thing", "name": "Długość pętli ogrzewania podłogowego"},
        {"@type": "Thing", "name": "Hydraulika ogrzewania podłogowego"},
        {"@type": "Thing", "name": "Spadek ciśnienia"},
        {"@type": "Thing", "name": "Przepływ w pętli grzewczej"}
      ],
      "isPartOf": {"@id": "https://projekt-ogrzewania.pl/#website"}
    },
    {
      "@type": "WebPage",
      "@id": "https://projekt-ogrzewania.pl/ile-metrow-podlogowki-na-jednej-petli/#webpage",
      "url": "https://projekt-ogrzewania.pl/ile-metrow-podlogowki-na-jednej-petli/",
      "name": "Ile metrów podłogówki na jednej pętli? Długość, opory i kalkulator",
      "description": "Jak obliczyć długość i liczbę pętli ogrzewania podłogowego po uwzględnieniu rozstawu, powierzchni czynnej, dobiegów, przepływu oraz oporów.",
      "inLanguage": "pl-PL",
      "dateModified": "2026-08-29",
      "breadcrumb": {"@id": "https://projekt-ogrzewania.pl/ile-metrow-podlogowki-na-jednej-petli/#breadcrumb"},
      "mainEntity": [
        {"@id": "https://projekt-ogrzewania.pl/ile-metrow-podlogowki-na-jednej-petli/#application"},
        {"@id": "https://projekt-ogrzewania.pl/ile-metrow-podlogowki-na-jednej-petli/#howto"},
        {"@id": "https://projekt-ogrzewania.pl/ile-metrow-podlogowki-na-jednej-petli/#faq"}
      ],
      "isPartOf": {"@id": "https://projekt-ogrzewania.pl/#website"}
    },
    {
      "@type": "BreadcrumbList",
      "@id": "https://projekt-ogrzewania.pl/ile-metrow-podlogowki-na-jednej-petli/#breadcrumb",
      "itemListElement": [
        {"@type": "ListItem", "position": 1, "name": "Projekt-Ogrzewania.pl", "item": "https://projekt-ogrzewania.pl/"},
        {"@type": "ListItem", "position": 2, "name": "Ogrzewanie podłogowe", "item": "https://projekt-ogrzewania.pl/category/ogrzewanie-podlogowe/"},
        {"@type": "ListItem", "position": 3, "name": "Ile metrów podłogówki na jednej pętli", "item": "https://projekt-ogrzewania.pl/ile-metrow-podlogowki-na-jednej-petli/"}
      ]
    },
    {
      "@type": "WebApplication",
      "@id": "https://projekt-ogrzewania.pl/ile-metrow-podlogowki-na-jednej-petli/#application",
      "name": "Analizator długości, liczby i hydrauliki pętli",
      "url": "https://projekt-ogrzewania.pl/ile-metrow-podlogowki-na-jednej-petli/#rk-loop-calculator",
      "applicationCategory": "EducationalApplication",
      "operatingSystem": "Dowolny system z przeglądarką internetową",
      "browserRequirements": "JavaScript",
      "inLanguage": "pl-PL",
      "isAccessibleForFree": true,
      "description": "Narzędzie szacuje ilość rury w polu, dobiegi, liczbę pętli, długość obwodu, przepływ, prędkość i spadek ciśnienia dla wody.",
      "featureList": [
        "Obliczenie długości rury w polu grzewczym",
        "Oddzielne doliczenie dobiegów",
        "Wstępny dobór liczby pętli",
        "Obliczenie przepływu i prędkości medium",
        "Model spadku ciśnienia Darcy-Weisbach",
        "Porównanie trzech średnic na wykresie"
      ],
      "author": {"@id": "https://projekt-ogrzewania.pl/#robert-kucharski"}
    },
    {
      "@type": "HowTo",
      "@id": "https://projekt-ogrzewania.pl/ile-metrow-podlogowki-na-jednej-petli/#howto",
      "name": "Jak wyznaczyć liczbę i długość pętli ogrzewania podłogowego",
      "description": "Ośmioetapowa procedura łącząca obliczenia cieplne, geometrię pola, dobiegi, przepływ oraz opory hydrauliczne.",
      "inLanguage": "pl-PL",
      "step": [
        {"@type": "HowToStep", "position": 1, "name": "Oblicz obciążenie cieplne", "text": "Ustal projektową moc potrzebną dla każdego pomieszczenia zamiast przyjmować jeden średni wskaźnik dla budynku."},
        {"@type": "HowToStep", "position": 2, "name": "Wyznacz powierzchnię czynną", "text": "Odejmij trwałą zabudowę oraz pola wyłączone z układania rur i sprawdź rzeczywistą geometrię pomieszczenia."},
        {"@type": "HowToStep", "position": 3, "name": "Dobierz rozstaw rur", "text": "Sprawdź wydajność konstrukcji podłogi przy przyjętej temperaturze wody, okładzinie i dopuszczalnej temperaturze powierzchni."},
        {"@type": "HowToStep", "position": 4, "name": "Oszacuj długość rury w polu", "text": "Podziel powierzchnię czynną przez rozstaw wyrażony w metrach i jawnie pokaż ewentualną korektę geometrii."},
        {"@type": "HowToStep", "position": 5, "name": "Dodaj dobiegi każdej pętli", "text": "Do części ułożonej w polu dodaj osobno drogę zasilania i powrotu między rozdzielaczem a strefą grzewczą."},
        {"@type": "HowToStep", "position": 6, "name": "Oblicz przepływy", "text": "Przypisz moc do obwodów i wyznacz przepływ dla projektowej różnicy temperatury zasilania oraz powrotu."},
        {"@type": "HowToStep", "position": 7, "name": "Sprawdź hydraulikę", "text": "Oblicz prędkość i spadek ciśnienia dla rzeczywistej średnicy wewnętrznej, długości, temperatury medium i armatury."},
        {"@type": "HowToStep", "position": 8, "name": "Rozrysuj obwody na rzucie", "text": "Uwzględnij przejścia przez drzwi, dylatacje, strefy brzegowe, kolejność układania i zapisz długości oraz nastawy każdej pętli."}
      ]
    },
    {
      "@type": "FAQPage",
      "@id": "https://projekt-ogrzewania.pl/ile-metrow-podlogowki-na-jednej-petli/#faq",
      "inLanguage": "pl-PL",
      "mainEntity": [
        {"@type": "Question", "name": "Ile metrów powinna mieć jedna pętla ogrzewania podłogowego?", "acceptedAnswer": {"@type": "Answer", "text": "Nie ma jednej długości właściwej dla każdej instalacji. Dla rury 16×2 mm wartości około 80–100 m bywają praktycznym założeniem wstępnym, ale wynik trzeba sprawdzić przy wymaganym przepływie, rzeczywistej średnicy wewnętrznej, oporach armatury i dostępnym ciśnieniu."}},
        {"@type": "Question", "name": "Czy 100 m to maksymalna długość pętli z rury 16×2 mm?", "acceptedAnswer": {"@type": "Answer", "text": "Nie należy przedstawiać 100 m jako uniwersalnego limitu gwarantującego poprawność. Pętla krótsza może być zbyt oporowa przy dużym przepływie, a dłuższy obwód może spełniać przyjęty budżet w innych warunkach. Ostateczna decyzja wymaga obliczeń całej drogi przepływu."}},
        {"@type": "Question", "name": "Ile m² ogrzeje pętla 80 m przy rozstawie 10 cm?", "acceptedAnswer": {"@type": "Answer", "text": "Jeżeli całe 80 m znajdowałoby się w polu, geometria dawałaby około 8 m². W praktyce trzeba odjąć zasilanie i powrót od rozdzielacza oraz uwzględnić łuki i kształt pola. Przy 12 m łącznych dobiegów w polu pozostaje 68 m, czyli orientacyjnie około 6,8 m²."}},
        {"@type": "Question", "name": "Czy dobiegi wlicza się do długości pętli?", "acceptedAnswer": {"@type": "Answer", "text": "Tak. Cała rura od belki zasilającej, przez pole grzewcze, aż do belki powrotnej tworzy jeden obwód hydrauliczny. Każda pętla wymaga doliczenia drogi do strefy oraz drogi powrotnej."}},
        {"@type": "Question", "name": "Czy wszystkie pętle powinny mieć taką samą długość?", "acceptedAnswer": {"@type": "Answer", "text": "Nie. Podobne długości mogą ułatwić regulację, ale obwody obsługują różne moce i mogą wymagać innych przepływów. Najważniejsze jest osiągnięcie przepływów projektowych w zakresie regulacji zaworów i przy dostępnym ciśnieniu."}},
        {"@type": "Question", "name": "Co się dzieje, gdy pętla jest za długa?", "acceptedAnswer": {"@type": "Answer", "text": "Wraz z długością rośnie strata ciśnienia. Jeżeli dostępne ciśnienie jest zbyt małe, pętla może nie osiągnąć wymaganego przepływu, a pomieszczenie wymaganej mocy. Nie oznacza to automatycznie kawitacji, pękania wylewki ani z góry określonego ΔT."}},
        {"@type": "Question", "name": "Czy rura 20×2 mm pozwala zawsze wykonać pętlę 150 m?", "acceptedAnswer": {"@type": "Answer", "text": "Nie. Większa średnica wewnętrzna zmniejsza opór przy tym samym przepływie, ale długość nadal trzeba sprawdzić razem z mocą, przepływem, właściwościami medium, armaturą, budżetem ciśnienia i możliwościami wykonawczymi."}},
        {"@type": "Question", "name": "Czy pompa ciepła wymaga pętli krótszych niż kocioł?", "acceptedAnswer": {"@type": "Answer", "text": "Nie bezpośrednio. Źródło ciepła wpływa na pożądaną temperaturę pracy, natomiast długość pętli wynika z geometrii i hydrauliki. Krótszy obwód może ograniczyć wymagane ciśnienie, ale nie jest automatycznym warunkiem współpracy z pompą ciepła."}},
        {"@type": "Question", "name": "Jak obliczyć przepływ jednej pętli?", "acceptedAnswer": {"@type": "Answer", "text": "Dla wody można orientacyjnie podzielić moc pętli w watach przez iloczyn 69,8 oraz projektowego ΔT w kelwinach. Wynik otrzymujemy w l/min. Następnie sprawdzamy, jaki spadek ciśnienia wywoła ten przepływ w konkretnej rurze i armaturze."}},
        {"@type": "Question", "name": "Czy kalkulator zastępuje projekt ogrzewania podłogowego?", "acceptedAnswer": {"@type": "Answer", "text": "Nie. Kalkulator wykonuje wstępny równy podział i referencyjne obliczenie hydrauliczne. Nie zna kształtu pomieszczeń, stref bez rur, dylatacji, rzeczywistych tras, charakterystyk zaworów ani pozostałych oporów wspólnego obiegu."}}
      ]
    },
    {
      "@type": "Person",
      "@id": "https://projekt-ogrzewania.pl/#robert-kucharski",
      "name": "Robert Kucharski",
      "url": "https://projekt-ogrzewania.pl/author/robert-kucharski/",
      "jobTitle": "Projektant instalacji sanitarnych, specjalista HVAC i ogrzewania podłogowego",
      "worksFor": {"@id": "https://projekt-ogrzewania.pl/#organization"},
      "affiliation": [
        {"@id": "https://projekt-ogrzewania.pl/#organization"},
        {"@id": "https://remont.biz.pl/#organization"},
        {"@id": "https://sobir.pl/#organization"}
      ],
      "sameAs": [
        "https://www.linkedin.com/in/robert-kucharski-38069b48/",
        "https://www.facebook.com/projektogrzewaniapl",
        "https://x.com/Projekt_HVAC"
      ]
    },
    {
      "@type": "Organization",
      "@id": "https://projekt-ogrzewania.pl/#organization",
      "name": "Projekt-Ogrzewania.pl",
      "url": "https://projekt-ogrzewania.pl/",
      "founder": {"@id": "https://projekt-ogrzewania.pl/#robert-kucharski"}
    },
    {
      "@type": "Organization",
      "@id": "https://remont.biz.pl/#organization",
      "name": "Remont.biz.pl",
      "url": "https://remont.biz.pl/",
      "founder": {"@id": "https://projekt-ogrzewania.pl/#robert-kucharski"}
    },
    {
      "@type": "Organization",
      "@id": "https://sobir.pl/#organization",
      "name": "Sobir.pl",
      "url": "https://sobir.pl/",
      "founder": {"@id": "https://projekt-ogrzewania.pl/#robert-kucharski"}
    },
    {
      "@type": "WebSite",
      "@id": "https://projekt-ogrzewania.pl/#website",
      "url": "https://projekt-ogrzewania.pl/",
      "name": "Projekt-Ogrzewania.pl",
      "inLanguage": "pl-PL",
      "publisher": {"@id": "https://projekt-ogrzewania.pl/#organization"}
    }
  ]
}
</script>

<script>
(function () {
  "use strict";

  var root = document.getElementById("rk-loop-guide");
  if (!root) {
    return;
  }

  function byId(id) {
    return document.getElementById(id);
  }

  function clamp(value, minimum, maximum) {
    return Math.min(maximum, Math.max(minimum, value));
  }

  function numberFrom(id, fallback) {
    var element = byId(id);
    if (!element) {
      return fallback;
    }
    var parsed = Number(String(element.value).replace(",", "."));
    if (!Number.isFinite(parsed)) {
      return fallback;
    }
    return parsed;
  }

  function formatNumber(value, digits) {
    if (!Number.isFinite(value)) {
      return "—";
    }
    return new Intl.NumberFormat("pl-PL", {
      minimumFractionDigits: digits,
      maximumFractionDigits: digits
    }).format(value);
  }

  function allTrue(values) {
    return values.every(function (value) {
      return Boolean(value);
    });
  }

  function waterProperties(temperature) {
    var points = [
      {temperature: 5, density: 999.97, viscosity: 0.001519},
      {temperature: 10, density: 999.70, viscosity: 0.001307},
      {temperature: 20, density: 998.21, viscosity: 0.001002},
      {temperature: 30, density: 995.65, viscosity: 0.000798},
      {temperature: 40, density: 992.22, viscosity: 0.000653},
      {temperature: 50, density: 988.04, viscosity: 0.000547},
      {temperature: 60, density: 983.20, viscosity: 0.000466},
      {temperature: 70, density: 977.76, viscosity: 0.000404},
      {temperature: 80, density: 971.79, viscosity: 0.000355}
    ];

    var safeTemperature = clamp(temperature, 5, 80);
    var lower = points[0];
    var upper = points[points.length - 1];

    for (var index = 0; index < points.length - 1; index += 1) {
      var current = points[index];
      var next = points[index + 1];
      if (safeTemperature >= current.temperature) {
        if (safeTemperature <= next.temperature) {
          lower = current;
          upper = next;
          break;
        }
      }
    }

    var range = upper.temperature - lower.temperature;
    var share = 0;
    if (range > 0) {
      share = (safeTemperature - lower.temperature) / range;
    }

    return {
      density: lower.density + (upper.density - lower.density) * share,
      viscosity: lower.viscosity + (upper.viscosity - lower.viscosity) * share
    };
  }

  function frictionFactor(reynolds, diameter) {
    if (reynolds <= 0) {
      return 0;
    }
    if (reynolds < 2300) {
      return 64 / reynolds;
    }

    var roughness = 0.0000015;
    var relativeRoughness = roughness / diameter;
    var logarithmTerm = Math.pow(relativeRoughness / 3.7, 1.11) + 6.9 / reynolds;
    var denominator = -1.8 * Math.log10(logarithmTerm);
    return 1 / Math.pow(denominator, 2);
  }

  function hydraulicResult(length, flowLitresMinute, innerDiameterMillimetres, temperature, extraLoss) {
    var diameter = innerDiameterMillimetres / 1000;
    var volumeFlow = flowLitresMinute / 60000;
    var crossSection = Math.PI * Math.pow(diameter, 2) / 4;
    var velocity = 0;
    if (crossSection > 0) {
      velocity = volumeFlow / crossSection;
    }

    var properties = waterProperties(temperature);
    var reynolds = properties.density * velocity * diameter / properties.viscosity;
    var factor = frictionFactor(reynolds, diameter);
    var dynamicPressure = properties.density * Math.pow(velocity, 2) / 2;
    var pipeLoss = factor * length / diameter * dynamicPressure / 1000;

    return {
      velocity: velocity,
      reynolds: reynolds,
      factor: factor,
      pipeLoss: pipeLoss,
      totalLoss: pipeLoss + extraLoss
    };
  }

  function readInputs() {
    return {
      area: clamp(numberFrom("rk-loop-area", 24), 1, 500),
      spacing: clamp(numberFrom("rk-loop-spacing", 15), 5, 30),
      approach: clamp(numberFrom("rk-loop-approach", 6), 0, 60),
      geometry: clamp(numberFrom("rk-loop-geometry", 5), 0, 20),
      power: clamp(numberFrom("rk-loop-power", 1800), 50, 50000),
      delta: clamp(numberFrom("rk-loop-delta", 5), 2, 20),
      temperature: clamp(numberFrom("rk-loop-temperature", 30), 5, 80),
      diameter: clamp(numberFrom("rk-loop-pipe", 12), 8, 30),
      extraLoss: clamp(numberFrom("rk-loop-extra-loss", 3), 0, 50),
      budget: clamp(numberFrom("rk-loop-budget", 20), 3, 100),
      maxLength: clamp(numberFrom("rk-loop-max-length", 100), 30, 250),
      maxSpeed: clamp(numberFrom("rk-loop-max-speed", 0.6), 0.2, 1.5)
    };
  }

  function calculateModel(inputs) {
    var spacingMetres = inputs.spacing / 100;
    var idealFieldLength = inputs.area / spacingMetres;
    var fieldLength = idealFieldLength * (1 + inputs.geometry / 100);
    var totalFlow = inputs.power / (69.8 * inputs.delta);
    var unitPower = inputs.power / inputs.area;
    var candidates = [];
    var selected = null;

    for (var count = 1; count <= 16; count += 1) {
      var loopLength = fieldLength / count + 2 * inputs.approach;
      var loopFlow = totalFlow / count;
      var hydraulics = hydraulicResult(loopLength, loopFlow, inputs.diameter, inputs.temperature, inputs.extraLoss);
      var lengthPass = loopLength <= inputs.maxLength;
      var pressurePass = hydraulics.totalLoss <= inputs.budget;
      var speedPass = hydraulics.velocity <= inputs.maxSpeed;
      var passes = allTrue([lengthPass, pressurePass, speedPass]);
      var candidate = {
        count: count,
        length: loopLength,
        flow: loopFlow,
        velocity: hydraulics.velocity,
        pipeLoss: hydraulics.pipeLoss,
        loss: hydraulics.totalLoss,
        reynolds: hydraulics.reynolds,
        lengthPass: lengthPass,
        pressurePass: pressurePass,
        speedPass: speedPass,
        passes: passes
      };
      candidates.push(candidate);
      if (!selected) {
        if (passes) {
          selected = candidate;
        }
      }
    }

    var found = Boolean(selected);
    if (!selected) {
      selected = candidates[candidates.length - 1];
    }

    return {
      inputs: inputs,
      idealFieldLength: idealFieldLength,
      fieldLength: fieldLength,
      totalFlow: totalFlow,
      unitPower: unitPower,
      candidates: candidates,
      selected: selected,
      found: found,
      totalPipe: fieldLength + 2 * inputs.approach * selected.count,
      areaPerLoop: inputs.area / selected.count,
      fieldPerLoop: fieldLength / selected.count
    };
  }

  function setText(id, value) {
    var element = byId(id);
    if (element) {
      element.textContent = value;
    }
  }

  function candidateLabel(candidate) {
    if (candidate.passes) {
      return {text: "spełnia kryteria", className: "rk-loop-chip"};
    }
    var problems = [];
    if (!candidate.lengthPass) {
      problems.push("długość");
    }
    if (!candidate.pressurePass) {
      problems.push("ciśnienie");
    }
    if (!candidate.speedPass) {
      problems.push("prędkość");
    }
    return {text: problems.join(", "), className: "rk-loop-chip rk-loop-chip-bad"};
  }

  function appendCell(row, label, value) {
    var cell = document.createElement("td");
    cell.setAttribute("data-label", label);
    cell.textContent = value;
    row.appendChild(cell);
    return cell;
  }

  function renderCandidateTable(model) {
    var body = byId("rk-loop-candidate-body");
    if (!body) {
      return;
    }
    while (body.firstChild) {
      body.removeChild(body.firstChild);
    }

    var selectedIndex = model.selected.count - 1;
    var start = Math.max(0, selectedIndex - 2);
    var end = Math.min(model.candidates.length, start + 5);
    if (end - start < 5) {
      start = Math.max(0, end - 5);
    }

    for (var index = start; index < end; index += 1) {
      var candidate = model.candidates[index];
      var row = document.createElement("tr");
      if (candidate.count === model.selected.count) {
        row.classList.add(model.found ? "is-best" : "is-fail");
      } else if (!candidate.passes) {
        row.classList.add("is-fail");
      }

      appendCell(row, "Liczba pętli", String(candidate.count));
      appendCell(row, "Długość jednej", formatNumber(candidate.length, 1) + " m");
      appendCell(row, "Przepływ jednej", formatNumber(candidate.flow, 2) + " l/min");
      appendCell(row, "Prędkość", formatNumber(candidate.velocity, 2) + " m/s");
      appendCell(row, "Strata z dodatkami", formatNumber(candidate.loss, 1) + " kPa");
      var evaluationCell = document.createElement("td");
      evaluationCell.setAttribute("data-label", "Ocena");
      var chipData = candidateLabel(candidate);
      var chip = document.createElement("span");
      chip.className = chipData.className;
      chip.textContent = chipData.text;
      evaluationCell.appendChild(chip);
      row.appendChild(evaluationCell);
      body.appendChild(row);
    }
  }

  function renderPaths(model) {
    var paths = byId("rk-loop-paths");
    if (!paths) {
      return;
    }
    while (paths.firstChild) {
      paths.removeChild(paths.firstChild);
    }
    var visibleCount = Math.min(model.selected.count, 6);
    for (var index = 0; index < visibleCount; index += 1) {
      var path = document.createElement("div");
      path.className = "rk-loop-path";
      path.setAttribute("aria-hidden", "true");
      paths.appendChild(path);
    }
    setText("rk-loop-scheme-count", String(model.selected.count) + (model.selected.count === 1 ? " pętla" : " pętle"));
    setText("rk-loop-scheme-approach", "2 × " + formatNumber(model.inputs.approach, 1) + " m");
    setText("rk-loop-scheme-area", formatNumber(model.areaPerLoop, 1) + " m²");
    setText("rk-loop-scheme-field", formatNumber(model.fieldPerLoop, 1) + " m");
  }

  function drawChart(model) {
    var canvas = byId("rk-loop-chart");
    if (!canvas) {
      return;
    }
    var context = canvas.getContext("2d");
    if (!context) {
      return;
    }

    var rectangle = canvas.getBoundingClientRect();
    var width = Math.max(300, rectangle.width);
    var cssHeight = 340;
    if (window.innerWidth <= 700) {
      cssHeight = 300;
    }
    var pixelRatio = Math.min(2, window.devicePixelRatio || 1);
    canvas.width = Math.round(width * pixelRatio);
    canvas.height = Math.round(cssHeight * pixelRatio);
    canvas.style.height = cssHeight + "px";
    context.setTransform(pixelRatio, 0, 0, pixelRatio, 0, 0);
    context.clearRect(0, 0, width, cssHeight);

    var margin = {left: 53, right: 18, top: 20, bottom: 42};
    var plotWidth = width - margin.left - margin.right;
    var plotHeight = cssHeight - margin.top - margin.bottom;
    var rawMaximumLength = Math.max(150, model.inputs.maxLength + 20, model.selected.length + 20);
    var maximumLength = Math.min(260, Math.ceil(rawMaximumLength / 20) * 20);
    var diameters = [12, 13, 16];
    var colors = ["#078fbe", "#16836b", "#ff6a3d"];
    var maximumLoss = model.inputs.budget;

    diameters.forEach(function (diameter) {
      var edgeResult = hydraulicResult(maximumLength, model.selected.flow, diameter, model.inputs.temperature, model.inputs.extraLoss);
      maximumLoss = Math.max(maximumLoss, edgeResult.totalLoss);
    });
    maximumLoss = Math.max(10, Math.ceil(maximumLoss * 1.12 / 5) * 5);

    function xPosition(length) {
      return margin.left + length / maximumLength * plotWidth;
    }

    function yPosition(loss) {
      return margin.top + plotHeight - loss / maximumLoss * plotHeight;
    }

    context.strokeStyle = "#d9e6eb";
    context.fillStyle = "#6b7e8a";
    context.lineWidth = 1;
    context.font = "11px Inter, sans-serif";
    context.textAlign = "right";
    context.textBaseline = "middle";

    for (var yIndex = 0; yIndex <= 5; yIndex += 1) {
      var lossTick = maximumLoss * yIndex / 5;
      var y = yPosition(lossTick);
      context.beginPath();
      context.moveTo(margin.left, y);
      context.lineTo(width - margin.right, y);
      context.stroke();
      context.fillText(formatNumber(lossTick, 0), margin.left - 8, y);
    }

    context.textAlign = "center";
    context.textBaseline = "top";
    for (var xIndex = 0; xIndex <= 5; xIndex += 1) {
      var lengthTick = maximumLength * xIndex / 5;
      var x = xPosition(lengthTick);
      context.beginPath();
      context.moveTo(x, margin.top);
      context.lineTo(x, margin.top + plotHeight);
      context.stroke();
      context.fillText(formatNumber(lengthTick, 0), x, margin.top + plotHeight + 9);
    }

    context.save();
    context.translate(14, margin.top + plotHeight / 2);
    context.rotate(-Math.PI / 2);
    context.fillStyle = "#475967";
    context.font = "700 11px Inter, sans-serif";
    context.textAlign = "center";
    context.fillText("spadek ciśnienia [kPa]", 0, 0);
    context.restore();

    context.fillStyle = "#475967";
    context.font = "700 11px Inter, sans-serif";
    context.textAlign = "center";
    context.fillText("długość pętli [m]", margin.left + plotWidth / 2, cssHeight - 16);

    diameters.forEach(function (diameter, index) {
      context.beginPath();
      context.strokeStyle = colors[index];
      context.lineWidth = 3;
      for (var step = 0; step <= 80; step += 1) {
        var length = maximumLength * step / 80;
        var result = hydraulicResult(length, model.selected.flow, diameter, model.inputs.temperature, model.inputs.extraLoss);
        var x = xPosition(length);
        var y = yPosition(Math.min(maximumLoss, result.totalLoss));
        if (step === 0) {
          context.moveTo(x, y);
        } else {
          context.lineTo(x, y);
        }
      }
      context.stroke();
    });

    var budgetY = yPosition(model.inputs.budget);
    context.save();
    context.setLineDash([7, 5]);
    context.strokeStyle = "#d94b3d";
    context.lineWidth = 2;
    context.beginPath();
    context.moveTo(margin.left, budgetY);
    context.lineTo(width - margin.right, budgetY);
    context.stroke();
    context.restore();

    if (model.selected.length <= maximumLength) {
      var selectedX = xPosition(model.selected.length);
      context.save();
      context.setLineDash([4, 4]);
      context.strokeStyle = "#102536";
      context.lineWidth = 2;
      context.beginPath();
      context.moveTo(selectedX, margin.top);
      context.lineTo(selectedX, margin.top + plotHeight);
      context.stroke();
      context.restore();
      context.fillStyle = "#102536";
      context.font = "800 11px Inter, sans-serif";
      context.textAlign = selectedX > width - 95 ? "right" : "left";
      context.textBaseline = "top";
      var labelX = selectedX > width - 95 ? selectedX - 5 : selectedX + 5;
      context.fillText(formatNumber(model.selected.length, 1) + " m", labelX, margin.top + 4);
    }

    setText("rk-loop-chart-caption", "Porównanie dla przepływu " + formatNumber(model.selected.flow, 2) + " l/min na pętlę, wody o temperaturze " + formatNumber(model.inputs.temperature, 1) + "°C i oporów dodatkowych " + formatNumber(model.inputs.extraLoss, 1) + " kPa. Pionowy znacznik: " + formatNumber(model.selected.length, 1) + " m.");
  }

  function renderStatus(model) {
    var status = byId("rk-loop-status");
    if (!status) {
      return;
    }
    status.classList.remove("is-warning", "is-danger");

    var nearLimit = allTrue([
      model.selected.length > model.inputs.maxLength * 0.9,
      model.selected.loss > model.inputs.budget * 0.9
    ]);
    var oneNearLimit = model.selected.length > model.inputs.maxLength * 0.9;
    if (model.selected.loss > model.inputs.budget * 0.9) {
      oneNearLimit = true;
    }
    if (model.selected.velocity > model.inputs.maxSpeed * 0.9) {
      oneNearLimit = true;
    }

    if (!model.found) {
      status.classList.add("is-danger");
      setText("rk-loop-status-icon", "!");
      setText("rk-loop-status-title", "Nie znaleziono wariantu w zakresie do 16 pętli");
      setText("rk-loop-status-copy", "Sprawdź dane, zwiększ dostępny budżet tylko po weryfikacji pompy albo zmień koncepcję średnicy, rozstawu, geometrii lub podziału strefy.");
      return;
    }

    if (model.unitPower > 100) {
      status.classList.add("is-warning");
      setText("rk-loop-status-icon", "!");
      setText("rk-loop-status-title", "Hydraulika przechodzi, ale wymagana moc z podłogi jest wysoka");
      setText("rk-loop-status-copy", "Sprawdź cieplnie rozstaw, temperaturę powierzchni, okładzinę i realną powierzchnię czynną. Kalkulator nie potwierdza wydajności podłogi.");
      return;
    }

    if (oneNearLimit) {
      status.classList.add("is-warning");
      setText("rk-loop-status-icon", "!");
      setText("rk-loop-status-title", "Wariant mieści się blisko jednego z przyjętych kryteriów");
      setText("rk-loop-status-copy", "Pozostaw rezerwę na rzeczywistą trasę oraz opory elementów, których model nie zna. Zweryfikuj wynik po rozrysowaniu pętli.");
      return;
    }

    setText("rk-loop-status-icon", "✓");
    setText("rk-loop-status-title", "Wariant spełnia przyjęte kryteria wstępne");
    setText("rk-loop-status-copy", "To pierwszy podział mieszczący się w ustawionym limicie długości, ciśnienia i prędkości. Nadal wymaga sprawdzenia cieplnego oraz rozrysowania.");
    if (nearLimit) {
      status.classList.add("is-warning");
    }
  }

  function renderModel(model) {
    renderStatus(model);
    setText("rk-loop-result-count", String(model.selected.count));
    setText("rk-loop-result-length", formatNumber(model.selected.length, 1) + " m");
    setText("rk-loop-result-total", formatNumber(model.totalPipe, 1) + " m");
    setText("rk-loop-result-field", formatNumber(model.fieldLength, 1) + " m");
    setText("rk-loop-result-flow", formatNumber(model.selected.flow, 2) + " l/min");
    setText("rk-loop-result-flow-total", "łącznie " + formatNumber(model.totalFlow, 2) + " l/min");
    setText("rk-loop-result-speed", formatNumber(model.selected.velocity, 2) + " m/s");
    setText("rk-loop-result-loss", formatNumber(model.selected.loss, 1) + " kPa");
    setText("rk-loop-result-unit-power", formatNumber(model.unitPower, 1) + " W/m²");
    setText("rk-loop-result-area", formatNumber(model.areaPerLoop, 1) + " m² na pętlę");

    var note = "Rura w polu bez korekty: " + formatNumber(model.idealFieldLength, 1) + " m. Po korekcie geometrii: " + formatNumber(model.fieldLength, 1) + " m. Dobięgi wszystkich pętli: " + formatNumber(2 * model.inputs.approach * model.selected.count, 1) + " m. Analizator nie sprawdza cieplnej wydajności wybranego rozstawu.";
    setText("rk-loop-result-note", note);
    renderCandidateTable(model);
    renderPaths(model);
    drawChart(model);
  }

  function calculateAndRender() {
    var model = calculateModel(readInputs());
    root.rkLoopModel = model;
    renderModel(model);
  }

  function resetInputs() {
    var defaults = {
      "rk-loop-area": "24",
      "rk-loop-spacing": "15",
      "rk-loop-approach": "6",
      "rk-loop-geometry": "5",
      "rk-loop-power": "1800",
      "rk-loop-delta": "5",
      "rk-loop-temperature": "30",
      "rk-loop-pipe": "12",
      "rk-loop-extra-loss": "3",
      "rk-loop-budget": "20",
      "rk-loop-max-length": "100",
      "rk-loop-max-speed": "0.6"
    };
    Object.keys(defaults).forEach(function (id) {
      var field = byId(id);
      if (field) {
        field.value = defaults[id];
      }
    });
    calculateAndRender();
  }

  var calculateButton = byId("rk-loop-calculate");
  if (calculateButton) {
    calculateButton.addEventListener("click", calculateAndRender);
  }
  var resetButton = byId("rk-loop-reset");
  if (resetButton) {
    resetButton.addEventListener("click", resetInputs);
  }

  var fields = root.querySelectorAll(".rk-loop-tool input, .rk-loop-tool select");
  fields.forEach(function (field) {
    field.addEventListener("input", calculateAndRender);
    field.addEventListener("change", calculateAndRender);
  });

  var faqItems = root.querySelectorAll(".rk-loop-faq details");
  faqItems.forEach(function (item) {
    item.addEventListener("toggle", function () {
      if (!item.open) {
        return;
      }
      faqItems.forEach(function (other) {
        if (other !== item) {
          other.open = false;
        }
      });
    });
  });

  function updateProgress() {
    var progress = byId("rk-loop-progress");
    if (!progress) {
      return;
    }
    var rectangle = root.getBoundingClientRect();
    var scrollable = root.offsetHeight - window.innerHeight;
    var passed = -rectangle.top;
    var ratio = 0;
    if (scrollable > 0) {
      ratio = clamp(passed / scrollable, 0, 1);
    }
    progress.style.width = formatNumber(ratio * 100, 2).replace(",", ".") + "%";
  }

  window.addEventListener("scroll", updateProgress, {passive: true});

  var resizeTimer = null;
  window.addEventListener("resize", function () {
    window.clearTimeout(resizeTimer);
    resizeTimer = window.setTimeout(function () {
      if (root.rkLoopModel) {
        drawChart(root.rkLoopModel);
      }
    }, 120);
  });

  calculateAndRender();
  updateProgress();
}());
</script>
<p>Artykuł <a href="https://projekt-ogrzewania.pl/ile-metrow-podlogowki-na-jednej-petli/">Ile metrów podłogówki na jednej pętli?</a> pochodzi z serwisu <a href="https://projekt-ogrzewania.pl">Projekt Ogrzewania</a>.</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
