<?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 Ekologiczne ogrzewanie - Projekt Ogrzewania</title>
	<atom:link href="https://projekt-ogrzewania.pl/category/ekologiczne-ogrzewanie/feed/" rel="self" type="application/rss+xml" />
	<link>https://projekt-ogrzewania.pl/category/ekologiczne-ogrzewanie/</link>
	<description>Ogrzewanie podłogowe i systemy HVAC oparte na obliczeniach.</description>
	<lastBuildDate>Fri, 16 Oct 2026 03:53:30 +0000</lastBuildDate>
	<language>pl-PL</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.1.4</generator>

<image>
	<url>https://projekt-ogrzewania.pl/wp-content/uploads/2026/10/Projekt-Ogrzewania-favicon-512-100x100.webp</url>
	<title>Archiwa Ekologiczne ogrzewanie - Projekt Ogrzewania</title>
	<link>https://projekt-ogrzewania.pl/category/ekologiczne-ogrzewanie/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Jak gęsto rozkładać podłogówkę? Rozstaw rur w pomieszczeniach i strefach</title>
		<link>https://projekt-ogrzewania.pl/jak-gesto-rozkladac-podlogowke/</link>
					<comments>https://projekt-ogrzewania.pl/jak-gesto-rozkladac-podlogowke/#comments</comments>
		
		<dc:creator><![CDATA[Robert Kucharski]]></dc:creator>
		<pubDate>Fri, 24 Jan 2025 09:26:29 +0000</pubDate>
				<category><![CDATA[Efektywność energetyczna]]></category>
		<category><![CDATA[Ekologiczne ogrzewanie]]></category>
		<category><![CDATA[Izolacja budynków]]></category>
		<category><![CDATA[Komfort cieplny w domu]]></category>
		<category><![CDATA[Koszty instalacji grzewczych]]></category>
		<category><![CDATA[Nowoczesne systemy grzewcze]]></category>
		<category><![CDATA[Ogrzewanie niskotemperaturowe]]></category>
		<category><![CDATA[Ogrzewanie podłogowe]]></category>
		<category><![CDATA[Projektowanie instalacji grzewczych]]></category>
		<category><![CDATA[Rozstaw rur w podłogówce]]></category>
		<category><![CDATA[efektywność energetyczna]]></category>
		<category><![CDATA[ekologiczne systemy grzewcze]]></category>
		<category><![CDATA[izolacja budynku]]></category>
		<category><![CDATA[komfort cieplny]]></category>
		<category><![CDATA[koszty instalacji]]></category>
		<category><![CDATA[niskotemperaturowe ogrzewanie]]></category>
		<category><![CDATA[ogrzewanie podłogowe]]></category>
		<category><![CDATA[projektowanie instalacji]]></category>
		<category><![CDATA[rozstaw rur]]></category>
		<category><![CDATA[wodne ogrzewanie podłogowe]]></category>
		<guid isPermaLink="false">https://projekt-ogrzewania.pl/?p=2015</guid>

					<description><![CDATA[<p>Jak gęsto rozkładać podłogówkę? To pytanie nurtuje wielu inwestorów planujących instalację ogrzewania podłogowego. Rozstaw rur zależy od wielu czynników, takich jak typ pomieszczenia, izolacja budynku czy rodzaj posadzki. W artykule wyjaśniamy, jak dobrać optymalny rozstaw rur, aby zapewnić efektywność systemu i komfort cieplny. Dowiedz się, jakie są najczęściej stosowane rozstawy i jak wpływają one na koszty oraz wydajność ogrzewania.</p>
<p>Artykuł <a href="https://projekt-ogrzewania.pl/jak-gesto-rozkladac-podlogowke/">Jak gęsto rozkładać podłogówkę? Rozstaw rur w pomieszczeniach i strefach</a> pochodzi z serwisu <a href="https://projekt-ogrzewania.pl">Projekt Ogrzewania</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<style>
  #rk-layout-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: #e6ad2f;
    --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-layout-guide,
  #rk-layout-guide * { box-sizing: border-box; }
  #rk-layout-guide img,
  #rk-layout-guide svg { display: block; max-width: 100%; }
  #rk-layout-guide a { color: var(--rk-blue); text-decoration-thickness: 1px; text-underline-offset: 3px; }
  #rk-layout-guide p { margin: 0 0 18px; }
  #rk-layout-guide ul,
  #rk-layout-guide ol { margin: 0 0 20px; padding-left: 24px; }
  #rk-layout-guide li + li { margin-top: 8px; }
  #rk-layout-guide strong { color: var(--rk-dark); }
  #rk-layout-guide sub { font-size: .7em; }
  #rk-layout-guide section[id] { scroll-margin-top: 28px; }

  #rk-layout-guide .rk-layout-shell {
    position: relative;
    overflow: hidden;
    background: var(--rk-white);
    border: 1px solid var(--rk-line);
    border-radius: 28px;
    box-shadow: 0 24px 65px rgba(16, 37, 54, .10);
  }

  #rk-layout-guide .rk-layout-progress-track {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    z-index: 6;
    height: 6px;
    background: rgba(255, 255, 255, .15);
  }

  #rk-layout-guide .rk-layout-progress {
    width: 0;
    height: 100%;
    background: linear-gradient(90deg, var(--rk-cyan), var(--rk-orange));
  }

  #rk-layout-guide .rk-layout-hero {
    position: relative;
    overflow: hidden;
    color: var(--rk-white);
    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-layout-guide .rk-layout-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-layout-guide .rk-layout-hero-inner {
    position: relative;
    z-index: 2;
    padding: 72px 72px 64px;
  }

  #rk-layout-guide .rk-layout-eyebrow,
  #rk-layout-guide .rk-layout-kicker {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: var(--rk-blue);
    font-size: .72rem;
    font-weight: 900;
    letter-spacing: .08em;
    line-height: 1.35;
    text-transform: uppercase;
  }

  #rk-layout-guide .rk-layout-eyebrow { color: #8cf3ff; }
  #rk-layout-guide .rk-layout-eyebrow b {
    width: 9px;
    height: 9px;
    border-radius: 99px;
    background: var(--rk-orange);
    box-shadow: 0 0 0 7px rgba(255, 106, 61, .14);
  }

  #rk-layout-guide .rk-layout-hero-title {
    max-width: 950px;
    margin: 18px 0 20px;
    color: var(--rk-white);
    font-size: clamp(2rem, 4.5vw, 4rem);
    font-weight: 950;
    letter-spacing: -.045em;
    line-height: 1.02;
  }

  #rk-layout-guide .rk-layout-hero-lead {
    max-width: 880px;
    margin-bottom: 28px;
    color: #dceef4;
    font-size: 1.09rem;
    line-height: 1.68;
  }

  #rk-layout-guide .rk-layout-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 11px 24px;
    color: #b9d5df;
    font-size: .76rem;
    font-weight: 750;
  }

  #rk-layout-guide .rk-layout-meta span { display: inline-flex; align-items: center; gap: 8px; }
  #rk-layout-guide .rk-layout-meta i { width: 7px; height: 7px; border-radius: 99px; background: var(--rk-cyan); }

  #rk-layout-guide .rk-layout-nav {
    padding: 24px 34px 25px;
    border-bottom: 1px solid var(--rk-line);
    background: #fbfdfe;
  }

  #rk-layout-guide .rk-layout-nav strong {
    display: block;
    margin: 0 0 12px;
    color: var(--rk-muted);
    font-size: .68rem;
    font-weight: 900;
    letter-spacing: .07em;
    text-transform: uppercase;
  }

  #rk-layout-guide .rk-layout-nav-links { display: flex; flex-wrap: wrap; gap: 8px; }
  #rk-layout-guide .rk-layout-nav a {
    display: inline-flex;
    align-items: center;
    min-height: 39px;
    padding: 8px 14px;
    color: var(--rk-dark);
    font-size: .74rem;
    font-weight: 850;
    line-height: 1.25;
    text-decoration: none;
    background: #edf5f8;
    border: 1px solid transparent;
    border-radius: 999px;
    transition: .2s ease;
  }

  #rk-layout-guide .rk-layout-nav a:hover,
  #rk-layout-guide .rk-layout-nav a:focus-visible {
    color: var(--rk-blue);
    border-color: var(--rk-cyan);
    background: var(--rk-cyan-soft);
    transform: translateY(-1px);
  }

  #rk-layout-guide .rk-layout-section { padding: 68px 72px; border-bottom: 1px solid var(--rk-line); }
  #rk-layout-guide .rk-layout-section:nth-of-type(even) { background: #fcfeff; }
  #rk-layout-guide h2 {
    max-width: 920px;
    margin: 9px 0 21px;
    color: var(--rk-dark);
    font-size: clamp(1.65rem, 3.2vw, 2.65rem);
    font-weight: 950;
    letter-spacing: -.035em;
    line-height: 1.12;
  }

  #rk-layout-guide h3 {
    margin: 0 0 10px;
    color: var(--rk-dark);
    font-size: 1.14rem;
    font-weight: 900;
    letter-spacing: -.015em;
    line-height: 1.28;
  }

  #rk-layout-guide h4 {
    margin: 0 0 8px;
    color: var(--rk-dark);
    font-size: .92rem;
    font-weight: 900;
    line-height: 1.35;
  }

  #rk-layout-guide .rk-layout-intro { max-width: 940px; color: var(--rk-text); font-size: 1.05rem; }
  #rk-layout-guide .rk-layout-answer {
    display: grid;
    grid-template-columns: minmax(0, 1.45fr) minmax(260px, .75fr);
    overflow: hidden;
    margin: 30px 0;
    border: 1px solid var(--rk-line);
    border-radius: 20px;
  }

  #rk-layout-guide .rk-layout-answer-main { padding: 30px; background: var(--rk-cyan-soft); }
  #rk-layout-guide .rk-layout-answer-side { padding: 30px; background: var(--rk-dark); }
  #rk-layout-guide .rk-layout-answer-side h3 { color: var(--rk-white); }
  #rk-layout-guide .rk-layout-answer-side p { color: #d7e9ef; }

  #rk-layout-guide .rk-layout-formula {
    margin: 28px 0;
    padding: 26px 28px;
    color: var(--rk-dark);
    background: linear-gradient(135deg, var(--rk-yellow-soft), #fffdf4);
    border: 1px solid #f0d887;
    border-left: 5px solid var(--rk-yellow);
    border-radius: 16px;
  }

  #rk-layout-guide .rk-layout-formula strong { display: block; margin-bottom: 8px; font-size: 1.23rem; }
  #rk-layout-guide .rk-layout-formula span { display: block; color: var(--rk-text); font-size: .88rem; }

  #rk-layout-guide .rk-layout-grid-2,
  #rk-layout-guide .rk-layout-grid-3,
  #rk-layout-guide .rk-layout-grid-4 { display: grid; gap: 18px; margin-top: 26px; }
  #rk-layout-guide .rk-layout-grid-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  #rk-layout-guide .rk-layout-grid-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  #rk-layout-guide .rk-layout-grid-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }

  #rk-layout-guide .rk-layout-card {
    padding: 25px;
    background: var(--rk-white);
    border: 1px solid var(--rk-line);
    border-radius: 18px;
    box-shadow: 0 12px 30px rgba(16, 37, 54, .045);
  }

  #rk-layout-guide .rk-layout-card p:last-child { margin-bottom: 0; }
  #rk-layout-guide .rk-layout-card-number {
    display: block;
    margin-bottom: 15px;
    color: var(--rk-blue);
    font-size: .66rem;
    font-weight: 950;
    letter-spacing: .06em;
    text-transform: uppercase;
  }

  #rk-layout-guide .rk-layout-notice {
    margin: 26px 0 0;
    padding: 20px 22px;
    border: 1px solid var(--rk-line);
    border-left: 5px solid var(--rk-blue);
    border-radius: 14px;
    background: var(--rk-cyan-soft);
  }

  #rk-layout-guide .rk-layout-notice.is-orange { border-left-color: var(--rk-orange); background: var(--rk-orange-soft); }
  #rk-layout-guide .rk-layout-notice.is-green { border-left-color: var(--rk-green); background: var(--rk-green-soft); }
  #rk-layout-guide .rk-layout-notice.is-yellow { border-left-color: var(--rk-yellow); background: var(--rk-yellow-soft); }
  #rk-layout-guide .rk-layout-notice p:last-child { margin-bottom: 0; }

  #rk-layout-guide .rk-layout-tool {
    overflow: hidden;
    margin-top: 30px;
    color: #eaf6fa;
    background: var(--rk-dark);
    border: 1px solid #305269;
    border-radius: 24px;
    box-shadow: 0 22px 46px rgba(16, 37, 54, .18);
  }

  #rk-layout-guide .rk-layout-tool strong,
  #rk-layout-guide .rk-layout-tool h3,
  #rk-layout-guide .rk-layout-tool h4 { color: var(--rk-white); }
  #rk-layout-guide .rk-layout-tool p { color: #c7dce4; }
  #rk-layout-guide .rk-layout-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-layout-guide .rk-layout-tool-head p { max-width: 760px; margin: 5px 0 0; font-size: .82rem; }
  #rk-layout-guide .rk-layout-reset {
    flex: 0 0 auto;
    min-height: 42px;
    padding: 9px 16px;
    color: #dff8fc;
    font: inherit;
    font-size: .74rem;
    font-weight: 850;
    cursor: pointer;
    border: 1px solid #50778a;
    border-radius: 999px;
    background: rgba(255, 255, 255, .06);
  }

  #rk-layout-guide .rk-layout-reset:hover,
  #rk-layout-guide .rk-layout-reset:focus-visible { border-color: var(--rk-cyan); background: rgba(37, 199, 216, .12); }
  #rk-layout-guide .rk-layout-input-panel { padding: 28px 34px 32px; border-bottom: 1px solid #31566c; }
  #rk-layout-guide .rk-layout-input-panel > h3 { margin-bottom: 5px; }
  #rk-layout-guide .rk-layout-input-panel > p { margin-bottom: 22px; font-size: .78rem; }
  #rk-layout-guide .rk-layout-fields { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
  #rk-layout-guide .rk-layout-field { min-width: 0; }
  #rk-layout-guide .rk-layout-field label {
    display: block;
    min-height: 42px;
    margin-bottom: 7px;
    color: #ecf8fb;
    font-size: .70rem;
    font-weight: 850;
    line-height: 1.35;
  }

  #rk-layout-guide .rk-layout-field input,
  #rk-layout-guide .rk-layout-field select {
    width: 100%;
    height: 46px;
    margin: 0;
    padding: 9px 12px;
    color: var(--rk-dark);
    font: inherit;
    font-size: .82rem;
    background: var(--rk-white);
    border: 1px solid #a9c0cb;
    border-radius: 9px;
    outline: none;
  }

  #rk-layout-guide .rk-layout-field input:focus,
  #rk-layout-guide .rk-layout-field select:focus { border-color: var(--rk-cyan); box-shadow: 0 0 0 3px rgba(37, 199, 216, .16); }
  #rk-layout-guide .rk-layout-field input:disabled,
  #rk-layout-guide .rk-layout-field select:disabled { color: #718490; background: #dfe9ed; cursor: not-allowed; }
  #rk-layout-guide .rk-layout-field small { display: block; margin-top: 6px; color: #96b4c0; font-size: .61rem; line-height: 1.42; }

  #rk-layout-guide .rk-layout-switch-wrap {
    display: flex;
    align-items: center;
    min-height: 46px;
    padding: 8px 12px;
    background: rgba(255, 255, 255, .06);
    border: 1px solid #4a6a7c;
    border-radius: 9px;
  }

  #rk-layout-guide .rk-layout-switch-wrap input { width: 20px; height: 20px; margin: 0 9px 0 0; accent-color: var(--rk-orange); }
  #rk-layout-guide .rk-layout-switch-wrap span { color: #f2fafc; font-size: .75rem; font-weight: 800; }

  #rk-layout-guide .rk-layout-live { padding: 26px 34px; border-bottom: 1px solid #31566c; background: #112c3e; }
  #rk-layout-guide .rk-layout-summary { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 12px; }
  #rk-layout-guide .rk-layout-summary-card {
    min-width: 0;
    padding: 16px 14px;
    background: #17384a;
    border: 1px solid #3b6074;
    border-radius: 13px;
  }

  #rk-layout-guide .rk-layout-summary-card span { display: block; min-height: 34px; color: #9db9c4; font-size: .60rem; font-weight: 800; line-height: 1.35; text-transform: uppercase; }
  #rk-layout-guide .rk-layout-summary-card strong { display: block; margin-top: 7px; color: var(--rk-white); font-size: 1.03rem; line-height: 1.2; overflow-wrap: anywhere; }
  #rk-layout-guide .rk-layout-visual-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 18px;
    padding: 28px 34px 18px;
    align-items: stretch;
  }

  #rk-layout-guide .rk-layout-visual-card {
    display: flex;
    flex-direction: column;
    min-width: 0;
    padding: 22px;
    background: #173344;
    border: 1px solid #3d6073;
    border-radius: 17px;
  }

  #rk-layout-guide .rk-layout-visual-card > p { margin-bottom: 15px; font-size: .72rem; }
  #rk-layout-guide .rk-layout-room-svg,
  #rk-layout-guide .rk-layout-chart-svg {
    width: 100%;
    height: auto;
    margin-top: auto;
    background: #f8fcfd;
    border: 1px solid #8da9b4;
    border-radius: 12px;
  }

  #rk-layout-guide .rk-layout-legend { display: flex; flex-wrap: wrap; gap: 8px 15px; margin-top: 13px; color: #bed3db; font-size: .63rem; font-weight: 760; }
  #rk-layout-guide .rk-layout-legend span { display: inline-flex; align-items: center; gap: 6px; }
  #rk-layout-guide .rk-layout-legend i { width: 12px; height: 4px; border-radius: 99px; }

  #rk-layout-guide .rk-layout-comparison {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 13px;
    padding: 0 34px 18px;
  }

  #rk-layout-guide .rk-layout-compare-card { padding: 18px; background: #173344; border: 1px solid #3d6073; border-radius: 14px; }
  #rk-layout-guide .rk-layout-compare-card.is-selected { border-color: var(--rk-cyan); box-shadow: inset 0 0 0 1px var(--rk-cyan); }
  #rk-layout-guide .rk-layout-compare-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 11px; }
  #rk-layout-guide .rk-layout-compare-head strong { font-size: .96rem; }
  #rk-layout-guide .rk-layout-compare-head span { color: #91dfea; font-size: .60rem; font-weight: 850; text-transform: uppercase; }
  #rk-layout-guide .rk-layout-compare-metrics { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
  #rk-layout-guide .rk-layout-compare-metrics div { padding: 10px; background: #102b3c; border-radius: 9px; }
  #rk-layout-guide .rk-layout-compare-metrics span { display: block; color: #8eabb7; font-size: .57rem; text-transform: uppercase; }
  #rk-layout-guide .rk-layout-compare-metrics b { display: block; margin-top: 4px; color: var(--rk-white); font-size: .83rem; }

  #rk-layout-guide .rk-layout-diagnostics { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 13px; padding: 0 34px 30px; }
  #rk-layout-guide .rk-layout-diagnostic { padding: 18px; background: #173344; border: 1px solid #3d6073; border-left: 5px solid var(--rk-cyan); border-radius: 13px; }
  #rk-layout-guide .rk-layout-diagnostic.is-warn { border-left-color: var(--rk-orange); }
  #rk-layout-guide .rk-layout-diagnostic.is-alert { border-left-color: var(--rk-red); }
  #rk-layout-guide .rk-layout-diagnostic.is-ok { border-left-color: var(--rk-green); }
  #rk-layout-guide .rk-layout-diagnostic span { display: block; margin-bottom: 6px; color: #8facb8; font-size: .58rem; font-weight: 850; letter-spacing: .05em; text-transform: uppercase; }
  #rk-layout-guide .rk-layout-diagnostic strong { display: block; margin-bottom: 7px; font-size: .87rem; }
  #rk-layout-guide .rk-layout-diagnostic p { margin: 0; color: #bdd1d9; font-size: .68rem; line-height: 1.55; }

  #rk-layout-guide .rk-layout-tool-disclaimer { margin: 0; padding: 0 34px 28px; color: #91adb8; font-size: .63rem; }

  #rk-layout-guide .rk-layout-cta {
    position: relative;
    overflow: hidden;
    margin: 0;
    padding: 46px 54px;
    color: var(--rk-white);
    background: linear-gradient(135deg, #102536, #165267);
  }

  #rk-layout-guide .rk-layout-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-layout-guide .rk-layout-cta > * { position: relative; z-index: 2; }
  #rk-layout-guide .rk-layout-cta h2 { color: var(--rk-white); }
  #rk-layout-guide .rk-layout-cta p { max-width: 920px; color: #d6e8ee; }
  #rk-layout-guide .rk-layout-cta-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 52px;
    margin-top: 10px;
    padding: 13px 23px;
    color: var(--rk-white) !important;
    font-size: .83rem;
    font-weight: 950;
    line-height: 1.25;
    text-align: center;
    text-decoration: none !important;
    background: linear-gradient(135deg, var(--rk-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-layout-guide .rk-layout-cta-button:hover,
  #rk-layout-guide .rk-layout-cta-button:focus-visible { transform: translateY(-2px); box-shadow: 0 16px 32px rgba(255, 106, 61, .32); }
  #rk-layout-guide .rk-layout-disclosure { display: block; max-width: 840px; margin-top: 12px; color: #9ebbc6; font-size: .61rem; }

  #rk-layout-guide .rk-layout-table-wrap { margin-top: 28px; }
  #rk-layout-guide .rk-layout-table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    overflow: hidden;
    font-size: .82rem;
    border: 1px solid var(--rk-line);
    border-radius: 16px;
  }

  #rk-layout-guide .rk-layout-table th,
  #rk-layout-guide .rk-layout-table td { padding: 15px 16px; text-align: left; vertical-align: top; border-bottom: 1px solid var(--rk-line); }
  #rk-layout-guide .rk-layout-table th { color: var(--rk-white); font-size: .69rem; line-height: 1.35; background: var(--rk-dark); }
  #rk-layout-guide .rk-layout-table td { color: var(--rk-text); background: var(--rk-white); }
  #rk-layout-guide .rk-layout-table tbody tr:last-child td { border-bottom: 0; }
  #rk-layout-guide .rk-layout-table td strong { display: block; }

  #rk-layout-guide .rk-layout-errors { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; margin-top: 27px; }
  #rk-layout-guide .rk-layout-error { display: grid; grid-template-columns: 88px minmax(0, 1fr); gap: 17px; align-items: start; padding: 20px; background: var(--rk-white); border: 1px solid var(--rk-line); border-radius: 15px; }
  #rk-layout-guide .rk-layout-error b { padding: 8px; color: var(--rk-red); font-size: .62rem; text-align: center; background: var(--rk-red-soft); border-radius: 8px; }
  #rk-layout-guide .rk-layout-error p { margin: 0; font-size: .82rem; }

  #rk-layout-guide .rk-layout-steps { counter-reset: rkstep; display: grid; gap: 14px; margin-top: 28px; }
  #rk-layout-guide .rk-layout-step { counter-increment: rkstep; display: grid; grid-template-columns: 58px minmax(0, 1fr); gap: 18px; align-items: start; padding: 22px; background: var(--rk-white); border: 1px solid var(--rk-line); border-radius: 15px; }
  #rk-layout-guide .rk-layout-step::before { content: counter(rkstep, decimal-leading-zero); display: grid; place-items: center; width: 48px; height: 48px; color: var(--rk-white); font-size: .75rem; font-weight: 950; background: var(--rk-blue); border-radius: 13px; }
  #rk-layout-guide .rk-layout-step p { margin: 0; font-size: .86rem; }

  #rk-layout-guide .rk-layout-checklist { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 11px; margin-top: 26px; }
  #rk-layout-guide .rk-layout-checkitem { position: relative; padding: 15px 16px 15px 47px; color: var(--rk-text); font-size: .81rem; background: var(--rk-white); border: 1px solid var(--rk-line); border-radius: 12px; }
  #rk-layout-guide .rk-layout-checkitem::before { content: "✓"; position: absolute; left: 15px; top: 14px; display: grid; place-items: center; width: 23px; height: 23px; color: var(--rk-white); font-size: .65rem; font-weight: 950; background: var(--rk-green); border-radius: 99px; }

  #rk-layout-guide .rk-layout-faq { display: grid; gap: 11px; margin-top: 26px; }
  #rk-layout-guide .rk-layout-faq details { overflow: hidden; background: var(--rk-white); border: 1px solid var(--rk-line); border-radius: 13px; }
  #rk-layout-guide .rk-layout-faq summary { position: relative; padding: 19px 56px 19px 20px; color: var(--rk-dark); font-size: .88rem; font-weight: 900; cursor: pointer; list-style: none; }
  #rk-layout-guide .rk-layout-faq summary::-webkit-details-marker { display: none; }
  #rk-layout-guide .rk-layout-faq summary::after { content: "+"; position: absolute; right: 18px; top: 50%; display: grid; place-items: center; width: 27px; height: 27px; color: var(--rk-blue); font-size: 1.1rem; background: var(--rk-cyan-soft); border-radius: 99px; transform: translateY(-50%); }
  #rk-layout-guide .rk-layout-faq details[open] summary::after { content: "−"; }
  #rk-layout-guide .rk-layout-faq-answer { padding: 0 20px 19px; color: var(--rk-text); font-size: .84rem; }
  #rk-layout-guide .rk-layout-faq-answer p:last-child { margin-bottom: 0; }

  #rk-layout-guide .rk-layout-source-box { margin-top: 25px; padding: 25px; background: var(--rk-soft); border: 1px solid var(--rk-line); border-radius: 15px; }
  #rk-layout-guide .rk-layout-source-box p { font-size: .82rem; }
  #rk-layout-guide .rk-layout-source-box p:last-child { margin-bottom: 0; }
  #rk-layout-guide .rk-layout-update { margin-top: 15px; color: var(--rk-muted); font-size: .68rem; font-weight: 800; }

  #rk-layout-guide .rk-layout-author { margin: 0; background: #f7fbfd; border-bottom: 1px solid var(--rk-line); }
  #rk-layout-guide .rk-layout-author > input { position: absolute; opacity: 0; pointer-events: none; }
  #rk-layout-guide .rk-layout-author-head { display: flex; align-items: center; justify-content: space-between; gap: 22px; padding: 38px 52px 24px; }
  #rk-layout-guide .rk-layout-author-head h2 { margin-bottom: 5px; }
  #rk-layout-guide .rk-layout-author-head p { margin: 0; color: var(--rk-muted); font-size: .78rem; }
  #rk-layout-guide .rk-layout-author-mark { color: var(--rk-blue); font-size: .65rem; font-weight: 950; letter-spacing: .08em; text-transform: uppercase; }
  #rk-layout-guide .rk-layout-author-layout { display: grid; grid-template-columns: 300px minmax(0, 1fr); border-top: 1px solid var(--rk-line); }
  #rk-layout-guide .rk-layout-author-side { padding: 28px; text-align: center; background: var(--rk-dark); }
  #rk-layout-guide .rk-layout-author-photo { width: 150px; height: 150px; margin: 0 auto 17px; overflow: hidden; border: 5px solid rgba(255, 255, 255, .12); border-radius: 50%; }
  #rk-layout-guide .rk-layout-author-photo img { width: 100%; height: 100%; object-fit: cover; }
  #rk-layout-guide .rk-layout-author-name { color: var(--rk-white); font-size: 1.1rem; font-weight: 950; }
  #rk-layout-guide .rk-layout-author-role { margin-top: 6px; color: #afc9d3; font-size: .68rem; line-height: 1.55; }
  #rk-layout-guide .rk-layout-author-social-label { margin-top: 24px; color: #87a6b2; font-size: .58rem; font-weight: 900; letter-spacing: .05em; text-transform: uppercase; }
  #rk-layout-guide .rk-layout-author-social { display: flex; justify-content: center; gap: 9px; margin-top: 10px; }
  #rk-layout-guide .rk-layout-author-social a { display: grid; place-items: center; width: 41px; height: 41px; color: #cde2e9; border: 1px solid #446577; border-radius: 50%; transition: .2s ease; }
  #rk-layout-guide .rk-layout-author-social a:hover { color: var(--rk-cyan); border-color: var(--rk-cyan); transform: translateY(-2px); }
  #rk-layout-guide .rk-layout-author-social svg { width: 18px; height: 18px; fill: currentColor; }
  #rk-layout-guide .rk-layout-author-main { padding: 28px 34px 34px; }
  #rk-layout-guide .rk-layout-author-quote { position: relative; margin: 0 0 23px; padding: 23px 24px 23px 63px; background: var(--rk-white); border: 1px solid var(--rk-line); border-radius: 14px; }
  #rk-layout-guide .rk-layout-author-quote::before { content: "“"; position: absolute; left: 20px; top: 2px; color: var(--rk-cyan); font-family: Georgia, serif; font-size: 4rem; line-height: 1; }
  #rk-layout-guide .rk-layout-author-quote p { margin: 0; color: var(--rk-dark); font-size: .87rem; font-weight: 750; }
  #rk-layout-guide .rk-layout-author-tabs { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 16px; }
  #rk-layout-guide .rk-layout-author-tab { padding: 9px 13px; color: var(--rk-muted); font-size: .63rem; font-weight: 900; cursor: pointer; background: #e8f1f5; border-radius: 999px; }
  #rk-layout-guide .rk-layout-author-panel { display: none; color: var(--rk-text); font-size: .80rem; }
  #rk-layout-guide #rk-layout-author-about:checked ~ .rk-layout-author-layout .rk-layout-author-panel-about,
  #rk-layout-guide #rk-layout-author-exp:checked ~ .rk-layout-author-layout .rk-layout-author-panel-exp,
  #rk-layout-guide #rk-layout-author-sites:checked ~ .rk-layout-author-layout .rk-layout-author-panel-sites { display: block; }
  #rk-layout-guide #rk-layout-author-about:checked ~ .rk-layout-author-layout label[for="rk-layout-author-about"],
  #rk-layout-guide #rk-layout-author-exp:checked ~ .rk-layout-author-layout label[for="rk-layout-author-exp"],
  #rk-layout-guide #rk-layout-author-sites:checked ~ .rk-layout-author-layout label[for="rk-layout-author-sites"] { color: var(--rk-white); background: var(--rk-blue); }
  #rk-layout-guide .rk-layout-site-links { display: flex; flex-wrap: wrap; gap: 9px; }
  #rk-layout-guide .rk-layout-site-links a { padding: 8px 12px; font-size: .66rem; font-weight: 850; text-decoration: none; background: var(--rk-cyan-soft); border-radius: 999px; }
  #rk-layout-guide .rk-layout-final-cta { padding-top: 58px; padding-bottom: 58px; }

  @media (max-width: 980px) {
    #rk-layout-guide .rk-layout-hero-inner,
    #rk-layout-guide .rk-layout-section { padding-left: 42px; padding-right: 42px; }
    #rk-layout-guide .rk-layout-fields { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    #rk-layout-guide .rk-layout-summary { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    #rk-layout-guide .rk-layout-grid-4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    #rk-layout-guide .rk-layout-grid-3 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    #rk-layout-guide .rk-layout-author-layout { grid-template-columns: 255px minmax(0, 1fr); }
  }

  @media (max-width: 760px) {
    #rk-layout-guide { margin: 18px auto 46px; font-size: 16px; }
    #rk-layout-guide .rk-layout-shell { border-radius: 18px; }
    #rk-layout-guide .rk-layout-hero-inner { padding: 54px 24px 42px; }
    #rk-layout-guide .rk-layout-hero-title { font-size: clamp(2rem, 11vw, 3rem); }
    #rk-layout-guide .rk-layout-nav { padding: 20px 18px; }
    #rk-layout-guide .rk-layout-nav-links { gap: 7px; }
    #rk-layout-guide .rk-layout-nav a { min-height: 36px; padding: 7px 11px; font-size: .68rem; }
    #rk-layout-guide .rk-layout-section { padding: 48px 22px; }
    #rk-layout-guide .rk-layout-answer,
    #rk-layout-guide .rk-layout-grid-2,
    #rk-layout-guide .rk-layout-grid-3,
    #rk-layout-guide .rk-layout-grid-4,
    #rk-layout-guide .rk-layout-errors,
    #rk-layout-guide .rk-layout-checklist,
    #rk-layout-guide .rk-layout-visual-grid,
    #rk-layout-guide .rk-layout-comparison,
    #rk-layout-guide .rk-layout-diagnostics,
    #rk-layout-guide .rk-layout-author-layout { grid-template-columns: 1fr; }
    #rk-layout-guide .rk-layout-tool-head { display: block; padding: 25px 20px; }
    #rk-layout-guide .rk-layout-reset { margin-top: 8px; }
    #rk-layout-guide .rk-layout-input-panel,
    #rk-layout-guide .rk-layout-live { padding-left: 20px; padding-right: 20px; }
    #rk-layout-guide .rk-layout-fields { grid-template-columns: 1fr; }
    #rk-layout-guide .rk-layout-field label { min-height: 0; }
    #rk-layout-guide .rk-layout-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    #rk-layout-guide .rk-layout-visual-grid { padding: 22px 20px 14px; }
    #rk-layout-guide .rk-layout-comparison,
    #rk-layout-guide .rk-layout-diagnostics { padding-left: 20px; padding-right: 20px; }
    #rk-layout-guide .rk-layout-tool-disclaimer { padding-left: 20px; padding-right: 20px; }
    #rk-layout-guide .rk-layout-cta { padding: 42px 24px; }
    #rk-layout-guide .rk-layout-cta-button { width: 100%; }
    #rk-layout-guide .rk-layout-error { grid-template-columns: 72px minmax(0, 1fr); }
    #rk-layout-guide .rk-layout-author-head { display: block; padding: 34px 22px 22px; }
    #rk-layout-guide .rk-layout-author-mark { display: inline-block; margin-top: 14px; }
    #rk-layout-guide .rk-layout-author-main { padding: 24px 20px; }

    #rk-layout-guide .rk-layout-table { border: 0; background: transparent; }
    #rk-layout-guide .rk-layout-table thead { display: none; }
    #rk-layout-guide .rk-layout-table tbody,
    #rk-layout-guide .rk-layout-table tr,
    #rk-layout-guide .rk-layout-table td { display: block; width: 100%; }
    #rk-layout-guide .rk-layout-table tr { overflow: hidden; margin-bottom: 14px; border: 1px solid var(--rk-line); border-radius: 14px; box-shadow: 0 8px 22px rgba(16, 37, 54, .05); }
    #rk-layout-guide .rk-layout-table td { display: grid; grid-template-columns: minmax(105px, .75fr) minmax(0, 1.25fr); gap: 13px; padding: 13px 15px; border-bottom: 1px solid var(--rk-line); }
    #rk-layout-guide .rk-layout-table td::before { content: attr(data-label); color: var(--rk-muted); font-size: .62rem; font-weight: 900; line-height: 1.35; text-transform: uppercase; }
    #rk-layout-guide .rk-layout-table tr:last-child td { border-bottom: 1px solid var(--rk-line); }
    #rk-layout-guide .rk-layout-table td:last-child { border-bottom: 0; }
  }

  @media (max-width: 430px) {
    #rk-layout-guide .rk-layout-summary { grid-template-columns: 1fr 1fr; }
    #rk-layout-guide .rk-layout-summary-card { padding: 13px 11px; }
    #rk-layout-guide .rk-layout-summary-card strong { font-size: .90rem; }
    #rk-layout-guide .rk-layout-compare-metrics { grid-template-columns: 1fr; }
    #rk-layout-guide .rk-layout-step { grid-template-columns: 46px minmax(0, 1fr); padding: 17px; }
    #rk-layout-guide .rk-layout-step::before { width: 40px; height: 40px; }
  }

  @media (prefers-reduced-motion: reduce) {
    #rk-layout-guide *,
    #rk-layout-guide *::before,
    #rk-layout-guide *::after { scroll-behavior: auto !important; animation: none !important; transition: none !important; }
  }
</style>

<article id="rk-layout-guide" aria-label="Jak gęsto rozkładać ogrzewanie podłogowe">
  <div class="rk-layout-shell">
    <div class="rk-layout-progress-track" aria-hidden="true"><div class="rk-layout-progress" id="rk-layout-progress"></div></div>

    <header class="rk-layout-hero">
      <div class="rk-layout-hero-inner">
        <span class="rk-layout-eyebrow"><b aria-hidden="true"></b> Projektowanie podłogówki • aktualizacja 2026</span>
        <div class="rk-layout-hero-title">Gęstość rur planuje się na rzucie, ale wybiera z obliczeń.</div>
        <p class="rk-layout-hero-lead">Sprawdź, jak powierzchnia czynna, stała zabudowa, strefa brzegowa i odległość od rozdzielacza zmieniają ilość rury oraz podział pomieszczenia na pętle. Bez gotowej recepty „łazienka 10 cm, salon 15 cm”.</p>
        <div class="rk-layout-meta">
          <span><i aria-hidden="true"></i> Czytanie: około 24 minuty</span>
          <span><i aria-hidden="true"></i> Planer rzutu i dynamiczny wykres</span>
          <span><i aria-hidden="true"></i> Aktualizacja: 30 sierpnia 2026 r.</span>
        </div>
      </div>
    </header>

    <nav class="rk-layout-nav" aria-label="Spis treści artykułu">
      <strong>Na skróty — wszystkie główne części poradnika</strong>
      <div class="rk-layout-nav-links">
        <a href="#rk-layout-answer">Szybka odpowiedź</a>
        <a href="#rk-layout-room-rule">Nie z nazwy pokoju</a>
        <a href="#rk-layout-data">Dane wejściowe</a>
        <a href="#rk-layout-active-area">Powierzchnia czynna</a>
        <a href="#rk-layout-planner-section">Planer pomieszczenia</a>
        <a href="#rk-layout-read-result">Odczyt wyniku</a>
        <a href="#rk-layout-zones">Różne strefy</a>
        <a href="#rk-layout-rooms">Pomieszczenia</a>
        <a href="#rk-layout-glazing">Duże przeszklenia</a>
        <a href="#rk-layout-floor">Podłoga i jastrych</a>
        <a href="#rk-layout-spacing-options">Rozstaw 5–20 cm</a>
        <a href="#rk-layout-loops">Rura i pętle</a>
        <a href="#rk-layout-systems">System mokry i suchy</a>
        <a href="#rk-layout-errors">Błędy</a>
        <a href="#rk-layout-howto">Planowanie krok po kroku</a>
        <a href="#rk-layout-checklist">Checklista</a>
        <a href="#rk-layout-faq">FAQ</a>
        <a href="#rk-layout-sources">Źródła</a>
      </div>
    </nav>

    <main>
      <section class="rk-layout-section" id="rk-layout-answer">
        <span class="rk-layout-kicker">Odpowiedź w 60 sekund</span>
        <h2>Jak gęsto rozkładać podłogówkę?</h2>
        <p class="rk-layout-intro">Ani 10, ani 15, ani 20 cm nie jest rozstawem automatycznie poprawnym dla całego domu. Najpierw trzeba znać projektową stratę ciepła konkretnego pomieszczenia oraz powierzchnię podłogi, która rzeczywiście będzie oddawała ciepło. Dopiero później sprawdza się rozstaw na charakterystyce wybranej konstrukcji podłogi przy założonych temperaturach wody.</p>

        <div class="rk-layout-answer">
          <div class="rk-layout-answer-main">
            <h3>Kolejność ma znaczenie</h3>
            <p><strong>Najpierw obliczenie obciążenia i powierzchni czynnej, później weryfikacja cieplna rozstawu, a na końcu rozrysowanie realnych pętli z dobiegami, dylatacjami i przejściami przez drzwi.</strong> Samo zmieszczenie rury na podłodze nie potwierdza jeszcze, że układ osiągnie wymaganą moc i będzie poprawny hydraulicznie.</p>
          </div>
          <div class="rk-layout-answer-side">
            <h3>10 czy 15 cm?</h3>
            <p>Jeżeli chcesz porównać wydajność tych dwóch wariantów przy identycznej temperaturze wody i tej samej podłodze, skorzystaj z osobnego <a href="https://projekt-ogrzewania.pl/rozstaw-rur-w-ogrzewaniu-podlogowym-co-10-czy-15-cm/">analizatora rozstawu 10 i 15 cm</a>.</p>
          </div>
        </div>

        <div class="rk-layout-formula" aria-label="Wzór na wymaganą moc jednostkową podłogi">
          <strong>q<sub>wym</sub> [W/m²] = Q<sub>pomieszczenia</sub> [W] ÷ A<sub>czynna</sub> [m²]</strong>
          <span>Pokój o stracie 1050 W i powierzchni czynnej 17,5 m² wymaga 60 W/m². Liczenie z całych 22 m² zaniżyłoby wynik do około 47,7 W/m².</span>
        </div>

        <div class="rk-layout-grid-3">
          <article class="rk-layout-card"><span class="rk-layout-card-number">Etap 01 • Ciepło</span><h3>Wyznacz obciążenie pokoju</h3><p>Potrzebna jest strata ciepła w watach dla konkretnego pomieszczenia. Średni wskaźnik dla całego budynku nie pokazuje różnic między łazienką, pokojem narożnym i wnętrzem bez ścian zewnętrznych.</p></article>
          <article class="rk-layout-card"><span class="rk-layout-card-number">Etap 02 • Geometria</span><h3>Ustal pole dostępne dla rur</h3><p>Na rzucie trzeba zaznaczyć trwałą zabudowę, dylatacje, przejścia, przyłącza i fragmenty wyłączone. Dopiero z tego powstaje rzeczywista powierzchnia czynna.</p></article>
          <article class="rk-layout-card"><span class="rk-layout-card-number">Etap 03 • Weryfikacja</span><h3>Sprawdź moc i hydraulikę</h3><p>Wybrany krok rur weryfikuje się dla temperatur wody, konstrukcji i oporu okładziny. Następnie liczy się długości, przepływy oraz straty ciśnienia każdej pętli.</p></article>
        </div>
      </section>

      <section class="rk-layout-section" id="rk-layout-room-rule">
        <span class="rk-layout-kicker">Pokój jest opisem funkcji, nie parametrem obliczeniowym</span>
        <h2>Dlaczego nazwa pomieszczenia nie wyznacza rozstawu rur?</h2>
        <p class="rk-layout-intro">Dwie łazienki mogą wymagać zupełnie innych rozwiązań. Jedna będzie miała dużą wolną podłogę, jedną ścianę zewnętrzną i małą stratę. Druga może być narożna, mieć wyższą temperaturę projektową, wannę, brodzik oraz zaledwie kilka metrów kwadratowych powierzchni czynnej.</p>

        <div class="rk-layout-grid-3">
          <article class="rk-layout-card"><span class="rk-layout-card-number">Łazienka</span><h3>Mała powierzchnia bywa ważniejsza niż metraż</h3><p>Gęstszy rozstaw często pomaga, ale nawet 10 cm nie tworzy brakującej powierzchni. Przy wysokim obciążeniu może być potrzebny dodatkowy emiter albo ograniczenie strat budynku.</p></article>
          <article class="rk-layout-card"><span class="rk-layout-card-number">Salon</span><h3>Duże przeszklenie zmienia rozkład obciążenia</h3><p>Nie oznacza to automatycznie obowiązkowej strefy o stałej szerokości. Najpierw trzeba ocenić lokalną stratę i sprawdzić, czy pole podstawowe spełnia wymagania.</p></article>
          <article class="rk-layout-card"><span class="rk-layout-card-number">Sypialnia</span><h3>Mniejsze obciążenie nie daje zgody na dowolne rozrzedzenie</h3><p>Rozstaw 20 cm może być możliwy w określonym systemie, ale wymaga kontroli mocy, równomierności temperatury i dopuszczalnego modułu mocowania rur.</p></article>
        </div>

        <div class="rk-layout-notice is-orange"><p><strong>Pompa ciepła również nie wyznacza rozstawu sama.</strong> Może premiować niską temperaturę zasilania, lecz decyzja nadal zależy od obciążenia, powierzchni czynnej i charakterystyki podłogi. Więcej na ten temat: <a href="https://projekt-ogrzewania.pl/rozstaw-rur-ogrzewania-podlogowego-przy-pompie-ciepla/">rozstaw rur ogrzewania podłogowego przy pompie ciepła</a>.</p></div>
      </section>

      <section class="rk-layout-section" id="rk-layout-data">
        <span class="rk-layout-kicker">Dane przed pierwszą kreską na rzucie</span>
        <h2>Co trzeba znać przed rozplanowaniem rur?</h2>
        <p class="rk-layout-intro">Rozstaw jest jednym z wyników projektu, a nie pierwszym założeniem. Do świadomego wyboru potrzebny jest zestaw danych cieplnych, geometrycznych i materiałowych.</p>

        <div class="rk-layout-grid-3">
          <article class="rk-layout-card"><span class="rk-layout-card-number">01 • Obciążenie</span><h3>Projektowa strata ciepła</h3><p>Wartość w watach dla każdego pokoju, wyznaczona z temperatur projektowych, przegród oraz wentylacji. Zobacz, czym jest <a href="https://projekt-ogrzewania.pl/projektowe-obciazenie-cieplne-ozc/">projektowe obciążenie cieplne OZC</a>.</p></article>
          <article class="rk-layout-card"><span class="rk-layout-card-number">02 • Pole grzewcze</span><h3>Powierzchnia czynna</h3><p>Powierzchnia rzeczywiście dostępna i zdolna do oddawania ciepła, po skoordynowaniu z trwałą zabudową oraz przebiegiem dylatacji.</p></article>
          <article class="rk-layout-card"><span class="rk-layout-card-number">03 • Temperatury</span><h3>Zasilanie, powrót i wnętrze</h3><p>Porównanie rozstawów ma sens tylko przy tych samych parametrach. Sama temperatura zasilania nie opisuje średniej temperatury wody w pętli.</p></article>
          <article class="rk-layout-card"><span class="rk-layout-card-number">04 • Konstrukcja</span><h3>Rura, jastrych i grubość warstw</h3><p>Średnica rury, przewodność materiału oraz grubość warstwy nad rurą wpływają na charakterystykę cieplną całej powierzchni.</p></article>
          <article class="rk-layout-card"><span class="rk-layout-card-number">05 • Wykończenie</span><h3>Opór okładziny i podkładu</h3><p>Liczy się łączny deklarowany opór, a nie sama etykieta „panele” lub „drewno”. Czasami producent wykończenia podaje również niższy limit temperatury powierzchni.</p></article>
          <article class="rk-layout-card"><span class="rk-layout-card-number">06 • Hydraulika</span><h3>Rozdzielacz, dobiegi i limit pętli</h3><p>Odległość od rozdzielacza zużywa część dopuszczalnej długości obwodu. Po rozrysowaniu trzeba jeszcze obliczyć przepływ i stratę ciśnienia.</p></article>
        </div>
      </section>

      <section class="rk-layout-section" id="rk-layout-active-area">
        <span class="rk-layout-kicker">Metry kwadratowe, które naprawdę pracują</span>
        <h2>Powierzchnia całkowita a powierzchnia czynna podłogówki</h2>
        <p class="rk-layout-intro">Najczęstszy błąd polega na podzieleniu straty ciepła przez cały metraż z projektu architektonicznego. Tymczasem część podłogi może pozostać bez rur albo przekazywać ciepło znacznie gorzej z powodu trwałej zabudowy.</p>

        <div class="rk-layout-grid-2">
          <article class="rk-layout-card">
            <span class="rk-layout-card-number">Najczęściej wyłączane</span>
            <h3>Zabudowa trwała i kolizje techniczne</h3>
            <h4>Przykłady do oznaczenia na rzeczywistym rzucie</h4>
            <ul>
              <li>zabudowa kuchenna planowana bez prześwitu,</li>
              <li>trwale obudowana wanna albo brodzik,</li>
              <li>murowane podstawy i elementy przytwierdzone do posadzki,</li>
              <li>miejsca wymagające wiercenia albo kotwienia,</li>
              <li>pola kolidujące z dylatacjami lub innymi instalacjami.</li>
            </ul>
          </article>
          <article class="rk-layout-card">
            <span class="rk-layout-card-number">Nie wyłączaj automatycznie</span>
            <h3>Meble ruchome i przyszłe zmiany aranżacji</h3>
            <h4>Elementy wymagające indywidualnej decyzji</h4>
            <p>Kanapa, stół, łóżko na nóżkach czy wolnostojąca szafa nie są tym samym co zabudowa na stałe. Projekt powinien rozróżniać elementy trwałe od wyposażenia, które może zmienić położenie.</p>
            <p>Szczegółowy przewodnik: <a href="https://projekt-ogrzewania.pl/gdzie-nie-ukladac-ogrzewania-podlogowego/">gdzie nie układać ogrzewania podłogowego</a>.</p>
          </article>
        </div>

        <div class="rk-layout-notice is-yellow"><p><strong>Powierzchnia czynna nie jest tylko liczbą do kalkulatora.</strong> Na wykonawczym rzucie trzeba znać lokalizację wyłączeń. Dwie kuchnie z taką samą powierzchnią zabudowy mogą wymagać zupełnie innego przebiegu pętli.</p></div>
      </section>

      <section class="rk-layout-section" id="rk-layout-planner-section">
        <span class="rk-layout-kicker">Geometria zamiast pozornego doboru „z nazwy pokoju”</span>
        <h2>Interaktywny planer powierzchni, stref i ilości rur</h2>
        <p class="rk-layout-intro">Wpisz dane jednego prostokątnego pomieszczenia. Planer pokaże powierzchnię czynną, orientacyjne zużycie rury, dobiegi i wstępny podział na obwody. Nie ogłasza wybranego rozstawu „właściwym”, ponieważ do tego potrzebna jest osobna weryfikacja cieplna konkretnego systemu.</p>

        <div class="rk-layout-tool" id="rk-layout-tool">
          <div class="rk-layout-tool-head">
            <div>
              <h3>Planer geometrii jednego pomieszczenia</h3>
              <p>Rzut jest poglądowy. Pola zabudowy są przedstawiane jako zastępcze prostokąty o wpisanej powierzchni, dlatego nie odwzorowują rzeczywistego projektu wnętrz.</p>
            </div>
            <button type="button" class="rk-layout-reset" id="rk-layout-reset">Przywróć dane przykładowe</button>
          </div>

          <div class="rk-layout-input-panel">
            <h3>Dane pomieszczenia i założenia geometryczne</h3>
            <p>Wartości można zmieniać w dowolnej kolejności. Wynik oraz oba rysunki aktualizują się automatycznie.</p>

            <div class="rk-layout-fields">
              <div class="rk-layout-field">
                <label for="rk-layout-length">Długość pomieszczenia [m]</label>
                <input type="number" id="rk-layout-length" min="1.5" max="20" step="0.1" value="5.5">
                <small>Wymiar poziomy na poglądowym rzucie.</small>
              </div>
              <div class="rk-layout-field">
                <label for="rk-layout-width">Szerokość pomieszczenia [m]</label>
                <input type="number" id="rk-layout-width" min="1.5" max="20" step="0.1" value="4">
                <small>Ściana po prawej stronie jest ścianą referencyjną strefy.</small>
              </div>
              <div class="rk-layout-field">
                <label for="rk-layout-load">Projektowa strata ciepła [W]</label>
                <input type="number" id="rk-layout-load" min="100" max="10000" step="10" value="1050">
                <small>Najlepiej z obliczeń dla tego pomieszczenia.</small>
              </div>
              <div class="rk-layout-field">
                <label for="rk-layout-base-spacing">Wybrany rozstaw pola głównego [cm]</label>
                <select id="rk-layout-base-spacing">
                  <option value="10">10 cm</option>
                  <option value="12.5">12,5 cm</option>
                  <option value="15" selected>15 cm</option>
                  <option value="20">20 cm</option>
                </select>
                <small>Wybór do analizy geometrii, nie rekomendacja cieplna.</small>
              </div>

              <div class="rk-layout-field">
                <label for="rk-layout-built-area">Trwała zabudowa bez rur [m²]</label>
                <input type="number" id="rk-layout-built-area" min="0" max="100" step="0.1" value="3.5">
                <small>Na przykład stała zabudowa kuchenna bez prześwitu.</small>
              </div>
              <div class="rk-layout-field">
                <label for="rk-layout-other-area">Pozostałe wyłączone pola [m²]</label>
                <input type="number" id="rk-layout-other-area" min="0" max="100" step="0.1" value="1">
                <small>Kolizje, stałe podstawy, fragmenty techniczne.</small>
              </div>
              <div class="rk-layout-field">
                <label for="rk-layout-manifold-distance">Odległość od rozdzielacza w jedną stronę [m]</label>
                <input type="number" id="rk-layout-manifold-distance" min="0" max="40" step="0.5" value="6">
                <small>Każda pętla ma zasilanie i powrót, więc dobiegi liczymy podwójnie.</small>
              </div>
              <div class="rk-layout-field">
                <label for="rk-layout-loop-limit">Przyjęta maksymalna długość pętli [m]</label>
                <input type="number" id="rk-layout-loop-limit" min="45" max="120" step="5" value="90">
                <small>Założenie projektowe do podziału, a nie uniwersalna granica prawna.</small>
              </div>

              <div class="rk-layout-field">
                <label for="rk-layout-edge-toggle">Opcjonalna strefa przy ścianie zewnętrznej</label>
                <div class="rk-layout-switch-wrap">
                  <input type="checkbox" id="rk-layout-edge-toggle">
                  <span>Uwzględnij osobną strefę</span>
                </div>
                <small>Włącz tylko wtedy, gdy lokalne obciążenie uzasadnia takie rozwiązanie.</small>
              </div>
              <div class="rk-layout-field">
                <label for="rk-layout-edge-width">Szerokość strefy [m]</label>
                <input type="number" id="rk-layout-edge-width" min="0.3" max="2" step="0.1" value="0.8" disabled>
                <small>Nie istnieje jedna obowiązkowa szerokość dla każdego przeszklenia.</small>
              </div>
              <div class="rk-layout-field">
                <label for="rk-layout-edge-length">Długość ściany objętej strefą [m]</label>
                <input type="number" id="rk-layout-edge-length" min="0.5" max="20" step="0.1" value="4" disabled>
                <small>Na rzucie strefa jest rysowana po prawej stronie.</small>
              </div>
              <div class="rk-layout-field">
                <label for="rk-layout-edge-spacing">Rozstaw w strefie [cm]</label>
                <select id="rk-layout-edge-spacing" disabled>
                  <option value="5">5 cm</option>
                  <option value="7.5">7,5 cm</option>
                  <option value="10" selected>10 cm</option>
                  <option value="12.5">12,5 cm</option>
                  <option value="15">15 cm</option>
                </select>
                <small>Także ten wariant wymaga sprawdzenia wydajności i temperatury powierzchni.</small>
              </div>
            </div>
          </div>

          <div class="rk-layout-live" aria-live="polite">
            <div class="rk-layout-summary">
              <div class="rk-layout-summary-card"><span>Powierzchnia całkowita</span><strong id="rk-layout-total-output">22,0 m²</strong></div>
              <div class="rk-layout-summary-card"><span>Powierzchnia czynna</span><strong id="rk-layout-active-output">17,5 m²</strong></div>
              <div class="rk-layout-summary-card"><span>Wymaganie pola czynnego</span><strong id="rk-layout-unit-load-output">60,0 W/m²</strong></div>
              <div class="rk-layout-summary-card"><span>Rura razem z dobiegami</span><strong id="rk-layout-pipe-output">—</strong></div>
              <div class="rk-layout-summary-card"><span>Wstępna liczba pętli</span><strong id="rk-layout-loop-output">—</strong></div>
              <div class="rk-layout-summary-card"><span>Średnia długość obwodu</span><strong id="rk-layout-average-output">—</strong></div>
            </div>
          </div>

          <div class="rk-layout-visual-grid">
            <div class="rk-layout-visual-card">
              <h3>Dynamiczny rzut poglądowy</h3>
              <p>Rysunek pokazuje relacje między polem czynnym, wyłączeniami, strefą i dobiegami. Nie jest schematem wykonawczym pętli.</p>
              <svg class="rk-layout-room-svg" id="rk-layout-room-svg" viewBox="0 0 720 430" role="img" aria-labelledby="rk-layout-room-title rk-layout-room-desc">
                <title id="rk-layout-room-title">Poglądowy rzut pomieszczenia z ogrzewaniem podłogowym</title>
                <desc id="rk-layout-room-desc">Schemat aktualizowany na podstawie wymiarów, powierzchni zabudowy, rozstawu oraz opcjonalnej strefy brzegowej.</desc>
                <g id="rk-layout-room-drawing"></g>
              </svg>
              <div class="rk-layout-legend" aria-label="Legenda rzutu">
                <span><i style="background:#25c7d8"></i>pole główne</span>
                <span><i style="background:#ff6a3d"></i>strefa opcjonalna</span>
                <span><i style="background:#6b7e8a"></i>zabudowa trwała</span>
                <span><i style="background:#d94b3d"></i>inne wyłączenia</span>
              </div>
            </div>

            <div class="rk-layout-visual-card">
              <h3>Zużycie rury przy 10, 15 i 20 cm</h3>
              <p>Porównanie zachowuje tę samą powierzchnię czynną, odległość od rozdzielacza i założony limit długości. Jeżeli włączysz strefę, pozostaje ona taka sama we wszystkich trzech wariantach.</p>
              <svg class="rk-layout-chart-svg" id="rk-layout-chart-svg" viewBox="0 0 720 430" role="img" aria-labelledby="rk-layout-chart-title rk-layout-chart-desc">
                <title id="rk-layout-chart-title">Porównanie orientacyjnego zużycia rury</title>
                <desc id="rk-layout-chart-desc">Wykres słupkowy długości rury wraz z liczbą pętli dla rozstawu 10, 15 i 20 centymetrów.</desc>
                <g id="rk-layout-chart-drawing"></g>
              </svg>
              <div class="rk-layout-legend" aria-label="Legenda wykresu">
                <span><i style="background:#078fbe"></i>rura w polu</span>
                <span><i style="background:#695ac9"></i>dobiegi</span>
                <span><i style="background:#ff6a3d"></i>wybrany wariant</span>
              </div>
            </div>
          </div>

          <div class="rk-layout-comparison" id="rk-layout-comparison" aria-label="Porównanie wariantów rozstawu">
            <article class="rk-layout-compare-card" id="rk-layout-compare-10">
              <div class="rk-layout-compare-head"><strong>Rozstaw 10 cm</strong><span id="rk-layout-selected-10"></span></div>
              <div class="rk-layout-compare-metrics">
                <div><span>Rura łącznie</span><b id="rk-layout-length-10">—</b></div>
                <div><span>Pętle</span><b id="rk-layout-loops-10">—</b></div>
                <div><span>Średnia pętla</span><b id="rk-layout-average-10">—</b></div>
                <div><span>Rura na m² pola</span><b id="rk-layout-factor-10">—</b></div>
              </div>
            </article>
            <article class="rk-layout-compare-card" id="rk-layout-compare-15">
              <div class="rk-layout-compare-head"><strong>Rozstaw 15 cm</strong><span id="rk-layout-selected-15"></span></div>
              <div class="rk-layout-compare-metrics">
                <div><span>Rura łącznie</span><b id="rk-layout-length-15">—</b></div>
                <div><span>Pętle</span><b id="rk-layout-loops-15">—</b></div>
                <div><span>Średnia pętla</span><b id="rk-layout-average-15">—</b></div>
                <div><span>Rura na m² pola</span><b id="rk-layout-factor-15">—</b></div>
              </div>
            </article>
            <article class="rk-layout-compare-card" id="rk-layout-compare-20">
              <div class="rk-layout-compare-head"><strong>Rozstaw 20 cm</strong><span id="rk-layout-selected-20"></span></div>
              <div class="rk-layout-compare-metrics">
                <div><span>Rura łącznie</span><b id="rk-layout-length-20">—</b></div>
                <div><span>Pętle</span><b id="rk-layout-loops-20">—</b></div>
                <div><span>Średnia pętla</span><b id="rk-layout-average-20">—</b></div>
                <div><span>Rura na m² pola</span><b id="rk-layout-factor-20">—</b></div>
              </div>
            </article>
          </div>

          <div class="rk-layout-diagnostics" aria-live="polite">
            <article class="rk-layout-diagnostic" id="rk-layout-diag-area"><span>Powierzchnia czynna</span><strong id="rk-layout-diag-area-title">—</strong><p id="rk-layout-diag-area-text">—</p></article>
            <article class="rk-layout-diagnostic" id="rk-layout-diag-loop"><span>Geometria pętli</span><strong id="rk-layout-diag-loop-title">—</strong><p id="rk-layout-diag-loop-text">—</p></article>
            <article class="rk-layout-diagnostic" id="rk-layout-diag-thermal"><span>Weryfikacja cieplna</span><strong id="rk-layout-diag-thermal-title">—</strong><p id="rk-layout-diag-thermal-text">—</p></article>
          </div>

          <p class="rk-layout-tool-disclaimer">Założenie długości geometrycznej obejmuje około 3% dodatku na łuki w polu. Długość dobiegów jest dodawana osobno do każdej wstępnie wyznaczonej pętli. Narzędzie nie uwzględnia kształtu meandra lub ślimaka, przejść przez drzwi, dylatacji, promieni gięcia, rzeczywistych oporów ani charakterystyki cieplnej wybranego systemu.</p>
        </div>
      </section>

      <section class="rk-layout-cta" aria-label="Indywidualny projekt po wyniku planera">
        <span class="rk-layout-kicker" style="color:#7af0ff">Od orientacyjnej geometrii do dokumentacji wykonawczej</span>
        <h2>Planer policzył rury, ale nie zna rzeczywistego rzutu Twojego domu</h2>
        <p>Nie widzi przejść przez drzwi, dylatacji, promieni gięcia, dokładnej zabudowy, lokalnych strat przy przeszkleniach ani oporów poszczególnych pętli. Jeżeli chcesz otrzymać rozstaw i każdy obwód naniesiony na rzut wraz z długościami, przepływami oraz nastawami rozdzielacza, potrzebny jest indywidualny projekt.</p>
        <a class="rk-layout-cta-button rk-layout-sales-cta" href="https://projekt-ogrzewania.pl/produkt/projekt-instalacji-ogrzewania-podlogowego-podlogowki/">Zamów projekt z rozstawem rur naniesionym na rzut</a>
        <small class="rk-layout-disclosure">Odnośnik prowadzi do strony sprzedażowej Projekt-Ogrzewania.pl — serwisu należącego do autora artykułu.</small>
      </section>

      <section class="rk-layout-section" id="rk-layout-read-result">
        <span class="rk-layout-kicker">Co wynik mówi, a czego nie potwierdza</span>
        <h2>Jak odczytać wynik planera podłogówki?</h2>
        <p class="rk-layout-intro">Narzędzie odpowiada na pytania geometryczne i materiałowe. Nie zastępuje obliczenia wydajności powierzchni grzewczej.</p>

        <div class="rk-layout-grid-3">
          <article class="rk-layout-card"><span class="rk-layout-card-number">Wynik 01</span><h3>Wymagana moc jednostkowa</h3><p>Wartość powstaje z podzielenia straty ciepła przez powierzchnię czynną. Pokazuje skalę zadania, ale sama nie wybiera rozstawu bez danych o temperaturach i konstrukcji podłogi.</p></article>
          <article class="rk-layout-card"><span class="rk-layout-card-number">Wynik 02</span><h3>Orientacyjna długość rury</h3><p>Planer liczy geometrię pola, niewielki dodatek na łuki i podwójny dobieg każdej pętli. Rzeczywista długość powstaje dopiero po narysowaniu przebiegu na rzucie.</p></article>
          <article class="rk-layout-card"><span class="rk-layout-card-number">Wynik 03</span><h3>Wstępna liczba obwodów</h3><p>To najmniejsza liczba potrzebna do zmieszczenia oszacowanej rury w przyjętym limicie. Nie potwierdza jeszcze właściwego przepływu ani dopuszczalnej straty ciśnienia.</p></article>
        </div>

        <div class="rk-layout-notice"><p><strong>Dlaczego planer nie daje zielonego komunikatu „rozstaw poprawny”?</strong> Ponieważ taki werdykt wymaga charakterystyki systemu dla konkretnego rozstawu, oporu okładziny, średniej temperatury wody, temperatury pomieszczenia oraz limitu temperatury powierzchni. To celowe zabezpieczenie przed pozorną dokładnością.</p></div>
      </section>

      <section class="rk-layout-section" id="rk-layout-zones">
        <span class="rk-layout-kicker">Jedno pomieszczenie nie zawsze oznacza jeden krok rur</span>
        <h2>Czy w jednym pomieszczeniu można stosować różne rozstawy?</h2>
        <p class="rk-layout-intro">Tak, jeżeli wynika to z lokalnego obciążenia i da się poprawnie rozrysować. Przykładem może być wydzielone pole przy dużym przeszkleniu. Nie należy jednak zagęszczać fragmentu tylko dlatego, że „tak się zawsze robi”.</p>

        <div class="rk-layout-grid-2">
          <article class="rk-layout-card">
            <span class="rk-layout-card-number">Pole podstawowe</span>
            <h3>Rozstaw obsługujący główną część pomieszczenia</h3>
            <p>Powinien pokrywać obciążenie tej strefy przy założonych temperaturach. Musi również odpowiadać modułowi mocowania i minimalnym promieniom gięcia rury.</p>
          </article>
          <article class="rk-layout-card">
            <span class="rk-layout-card-number">Strefa lokalna</span>
            <h3>Zagęszczenie tylko wtedy, gdy jest uzasadnione</h3>
            <p>Jej szerokość, długość i rozstaw powinny wynikać z rozkładu strat oraz możliwości wykonawczych. Trzeba sprawdzić temperaturę powierzchni i sposób włączenia strefy w układ pętli.</p>
          </article>
        </div>

        <div class="rk-layout-notice is-green"><p><strong>Strefa brzegowa jest opcją projektową, a nie obowiązkowym pasem szerokości 1 m.</strong> Może być zbędna w jednym budynku i potrzebna w innym. Jeżeli występuje, powinna być jednoznacznie pokazana na rzucie wykonawczym.</p></div>
      </section>

      <section class="rk-layout-section" id="rk-layout-rooms">
        <span class="rk-layout-kicker">Przykłady decyzji zamiast gotowych recept</span>
        <h2>Rozstaw rur w łazience, kuchni, salonie i sypialni</h2>
        <p class="rk-layout-intro">Poniższe scenariusze pokazują, dlaczego funkcja pomieszczenia jest dopiero początkiem analizy. Nie są tabelą obowiązkowych rozstawów.</p>

        <div class="rk-layout-table-wrap">
          <table class="rk-layout-table">
            <thead><tr><th>Pomieszczenie</th><th>Co zwykle zmienia wynik</th><th>Co sprawdzić przed wyborem</th><th>Typowy błąd</th></tr></thead>
            <tbody>
              <tr><td data-label="Pomieszczenie"><strong>Łazienka</strong></td><td data-label="Co zmienia wynik">Wyższa temperatura wewnętrzna, małe pole czynne, wanna lub brodzik.</td><td data-label="Co sprawdzić">Moc z wolnej podłogi, limit powierzchni i potrzebę dodatkowego emitera.</td><td data-label="Typowy błąd">Założenie, że 10 cm zawsze wystarczy.</td></tr>
              <tr><td data-label="Pomieszczenie"><strong>Kuchnia</strong></td><td data-label="Co zmienia wynik">Układ stałej zabudowy, wyspa, przyszła aranżacja i przejścia do innych stref.</td><td data-label="Co sprawdzić">Rzeczywiste pola bez rur oraz ciągłość przebiegu pętli.</td><td data-label="Typowy błąd">Odjęcie całej kuchni albo ułożenie rur pod każdą zabudową.</td></tr>
              <tr><td data-label="Pomieszczenie"><strong>Salon</strong></td><td data-label="Co zmienia wynik">Duże przeszklenia, ściany zewnętrzne, duża powierzchnia i kilka obwodów.</td><td data-label="Co sprawdzić">Podział na podobne pola, dobiegi, dylatacje i lokalne obciążenie.</td><td data-label="Typowy błąd">Jedna bardzo długa pętla albo automatyczna strefa 1 m.</td></tr>
              <tr><td data-label="Pomieszczenie"><strong>Sypialnia</strong></td><td data-label="Co zmienia wynik">Mniejsza temperatura projektowa, okładzina o większym oporze i meble.</td><td data-label="Co sprawdzić">Charakterystykę podłogi, równomierność oraz docelową aranżację.</td><td data-label="Typowy błąd">Rozstaw 20 cm przyjęty bez żadnej weryfikacji.</td></tr>
            </tbody>
          </table>
        </div>
      </section>

      <section class="rk-layout-section" id="rk-layout-glazing">
        <span class="rk-layout-kicker">Lokalne obciążenie przy elewacji</span>
        <h2>Jak rozkładać podłogówkę przy dużych oknach i drzwiach HS?</h2>
        <p class="rk-layout-intro">Duże przeszklenie może zwiększać lokalną stratę ciepła i wpływać na temperaturę odczuwalną w jego pobliżu. Nie oznacza jednak, że przy każdym oknie należy bez obliczeń wykonać pas 1 m w rozstawie 7,5 albo 10 cm.</p>

        <div class="rk-layout-grid-3">
          <article class="rk-layout-card"><span class="rk-layout-card-number">Krok 01</span><h3>Sprawdź parametry przeszklenia</h3><p>Liczą się powierzchnia, współczynnik przenikania, temperatura zewnętrzna i udział okna w obciążeniu całego pokoju.</p></article>
          <article class="rk-layout-card"><span class="rk-layout-card-number">Krok 02</span><h3>Wyznacz lokalne pole</h3><p>Jeżeli zagęszczenie jest potrzebne, jego szerokość oraz długość powinny być pokazane na rzucie i skoordynowane z pętlami.</p></article>
          <article class="rk-layout-card"><span class="rk-layout-card-number">Krok 03</span><h3>Sprawdź granice powierzchni</h3><p>Gęstsza rura nie daje prawa do dowolnego podnoszenia temperatury. Obowiązują założenia komfortu oraz ograniczenia użytych materiałów.</p></article>
        </div>

        <div class="rk-layout-notice is-orange"><p><strong>Zagęszczenie rur nie gwarantuje braku kondensacji na szybie.</strong> Kondensacja zależy od temperatury powierzchni przeszklenia, wilgotności powietrza, temperatury punktu rosy, jakości montażu i wentylacji.</p></div>
      </section>

      <section class="rk-layout-section" id="rk-layout-floor">
        <span class="rk-layout-kicker">Opór cieplny i konstrukcja powierzchni</span>
        <h2>Jak okładzina i jastrych wpływają na rozstaw rur?</h2>
        <p class="rk-layout-intro">Rozstaw nie działa w oderwaniu od warstw nad rurą. Ta sama temperatura wody i ten sam krok mogą dać inną wydajność pod płytkami, panelami albo drewnem. Znaczenie ma łączny opór okładziny oraz parametry całej konstrukcji.</p>

        <div class="rk-layout-grid-3">
          <article class="rk-layout-card"><span class="rk-layout-card-number">Mały opór</span><h3>Płytki i kamień</h3><p>Zwykle ułatwiają przekazywanie ciepła, lecz nadal trzeba sprawdzić wymaganą moc, temperaturę powierzchni oraz dopuszczenia kleju i okładziny.</p></article>
          <article class="rk-layout-card"><span class="rk-layout-card-number">Opór pośredni</span><h3>Panele i winyl</h3><p>Do obliczeń potrzebna jest suma oporu panelu, podkładu i pozostałych warstw wykończeniowych. Dwa produkty o podobnej nazwie mogą mieć inne parametry.</p></article>
          <article class="rk-layout-card"><span class="rk-layout-card-number">Większy opór</span><h3>Drewno i wykładziny</h3><p>Mogą ograniczyć dostępną moc. Samo przejście z 15 na 10 cm nie zawsze skompensuje zbyt duży opór albo niski limit temperatury powierzchni.</p></article>
        </div>

        <h3 style="margin-top:32px">Cement, anhydryt i grubość warstwy nad rurą</h3>
        <h4>Dane ważniejsze niż sama nazwa materiału</h4>
        <p>Nie przypisujemy wszystkim jastrychom cementowym jednej przewodności, a wszystkim anhydrytowym drugiej. Do dokładnego obliczenia potrzebna jest deklarowana przewodność zastosowanego materiału, jego grubość, położenie rury oraz komplet warstw. Sam napis „anhydryt” nie pozwala bezpiecznie zwiększyć rozstawu o z góry określoną wartość.</p>
        <p>Więcej: <a href="https://projekt-ogrzewania.pl/jak-rodzaj-okladziny-podlogowej-wplywa-na-wydajnosc-ogrzewania-podlogowego/">jak okładzina wpływa na wydajność podłogówki</a> oraz <a href="https://projekt-ogrzewania.pl/wylewka-na-ogrzewanie-podlogowe-kompletny-przewodnik/">wylewka na ogrzewanie podłogowe</a>.</p>
      </section>

      <section class="rk-layout-section" id="rk-layout-spacing-options">
        <span class="rk-layout-kicker">Możliwe moduły, nie uniwersalne rekomendacje</span>
        <h2>Rozstaw rur 5, 10, 15 i 20 cm — kiedy może się pojawić?</h2>
        <p class="rk-layout-intro">Każdy rozstaw trzeba odczytać z charakterystyki konkretnego systemu i sprawdzić w geometrii pomieszczenia. Tabela opisuje rolę wariantów, ale nie zastępuje doboru.</p>

        <div class="rk-layout-table-wrap">
          <table class="rk-layout-table">
            <thead><tr><th>Rozstaw</th><th>Rola w projekcie</th><th>Co szczególnie sprawdzić</th><th>Orientacyjna geometria pola</th></tr></thead>
            <tbody>
              <tr><td data-label="Rozstaw"><strong>5 cm</strong></td><td data-label="Rola w projekcie">Rozwiązanie szczególne albo moduł wybranych systemów. Nie jest standardem do całego domu.</td><td data-label="Co sprawdzić">Promień gięcia, sposób mocowania, ilość rury, podział na obwody i uzasadnienie cieplne.</td><td data-label="Geometria pola">około 20 m/m² przed łukami i dobiegami</td></tr>
              <tr><td data-label="Rozstaw"><strong>10 cm</strong></td><td data-label="Rola w projekcie">Może zwiększać wydajność oraz równomierność przy tych samych temperaturach wody.</td><td data-label="Co sprawdzić">Czy dodatkowa moc jest potrzebna oraz jak wzrost ilości rury wpływa na liczbę pętli.</td><td data-label="Geometria pola">około 10 m/m² przed łukami i dobiegami</td></tr>
              <tr><td data-label="Rozstaw"><strong>15 cm</strong></td><td data-label="Rola w projekcie">Częsty wariant w systemach mieszkaniowych, ale nie automatyczna odpowiedź dla każdego pokoju.</td><td data-label="Co sprawdzić">Moc, opór okładziny, temperaturę powierzchni i równomierność.</td><td data-label="Geometria pola">około 6,67 m/m² przed łukami i dobiegami</td></tr>
              <tr><td data-label="Rozstaw"><strong>20 cm</strong></td><td data-label="Rola w projekcie">Możliwy przy odpowiednio małym obciążeniu i systemie dopuszczającym taki moduł.</td><td data-label="Co sprawdzić">Dostępną moc, różnice temperatury powierzchni i wymagany parametr wody.</td><td data-label="Geometria pola">około 5 m/m² przed łukami i dobiegami</td></tr>
            </tbody>
          </table>
        </div>

        <div class="rk-layout-notice"><p><strong>Długości w tabeli wynikają wyłącznie z geometrii rozstawu.</strong> Realne zużycie zwiększają łuki, kształt pomieszczenia, strefy o innym kroku i dobiegi każdej pętli. Szczegółowe obliczenia znajdziesz w artykule <a href="https://projekt-ogrzewania.pl/ile-rury-na-m%c2%b2-ogrzewania-podlogowego/">ile rury na m² ogrzewania podłogowego</a>.</p></div>
      </section>

      <section class="rk-layout-section" id="rk-layout-loops">
        <span class="rk-layout-kicker">Rozstaw zmienia ilość materiału, nie prawa hydrauliki</span>
        <h2>Rozstaw rur a długość i liczba pętli</h2>
        <p class="rk-layout-intro">Przy gęstszym rozstawie na tę samą powierzchnię przypada więcej rury. Zwykle oznacza to mniejsze pole obsługiwane przez jeden obwód albo większą liczbę pętli. Ostatecznego podziału nie można jednak wykonać wyłącznie przez podzielenie metrów rury przez jedną stałą granicę.</p>

        <div class="rk-layout-grid-3">
          <article class="rk-layout-card"><span class="rk-layout-card-number">Długość</span><h3>Dolicz dobiegi każdej pętli</h3><p>Jeżeli rozdzielacz znajduje się 6 m od pomieszczenia, jeden obwód zużywa około 12 m na dojście i powrót. Trzy obwody potrzebują już około 36 m dobiegów.</p></article>
          <article class="rk-layout-card"><span class="rk-layout-card-number">Przepływ</span><h3>Każda pętla obsługuje własną moc</h3><p>Przepływ powinien wynikać z mocy przypisanej do obwodu i projektowej różnicy temperatur, a nie z ustawienia identycznej wartości na wszystkich rotametrach.</p></article>
          <article class="rk-layout-card"><span class="rk-layout-card-number">Opór</span><h3>Najdłuższa pętla nie zawsze jest krytyczna</h3><p>Strata ciśnienia zależy również od przepływu, średnicy wewnętrznej, medium, temperatury oraz elementów dodatkowych. Trzeba sprawdzić cały obwód.</p></article>
        </div>

        <h3 style="margin-top:32px">Czy maksymalna pętla zawsze ma 100 m?</h3>
        <h4>Długość jest tylko jednym z parametrów obwodu</h4>
        <p>Nie jest to jedna granica odpowiednia dla każdej rury, każdego przepływu i każdego projektu. Dla rury 16 × 2 mm często przyjmuje się krótszy limit projektowy, aby zachować rozsądną rezerwę hydrauliczną, lecz jego wartość należy zweryfikować obliczeniami. Planer pozwala wpisać własne założenie zamiast narzucać jedną liczbę.</p>
        <p>Powiązane opracowania: <a href="https://projekt-ogrzewania.pl/ile-metrow-podlogowki-na-jednej-petli/">ile metrów podłogówki na jednej pętli</a>, <a href="https://projekt-ogrzewania.pl/maksymalna-dlugosc-petli-ogrzewania-podlogowego/">maksymalna długość pętli</a> i <a href="https://projekt-ogrzewania.pl/za-dluga-petla-podlogowki/">objawy zbyt długiej pętli</a>.</p>

        <div class="rk-layout-notice is-yellow"><p><strong>Gęstszy rozstaw sam nie powoduje przepływu laminarnego.</strong> Charakter przepływu zależy od strumienia w konkretnej pętli, średnicy wewnętrznej i właściwości medium. Przepływ turbulentny nie jest prostym warunkiem zaliczenia lub odrzucenia podłogówki.</p></div>
      </section>

      <section class="rk-layout-section" id="rk-layout-systems">
        <span class="rk-layout-kicker">Ta sama liczba centymetrów, inna konstrukcja</span>
        <h2>Rozstaw rur w systemie mokrym i suchym</h2>
        <p class="rk-layout-intro">System mokry z rurą zatopioną w warstwie rozprowadzającej ciepło i lekki system suchy nie mają automatycznie tej samej charakterystyki. W systemach suchych rozstaw może być dodatkowo ograniczony przez fabryczny moduł płyt lub profili.</p>

        <div class="rk-layout-grid-2">
          <article class="rk-layout-card">
            <span class="rk-layout-card-number">System mokry</span>
            <h3>Rura współpracuje z jastrychem</h3>
            <p>Ważne są przewodność, grubość, otulenie rury, sposób mocowania i opór wykończenia. Do obliczeń należy przyjąć charakterystykę odpowiadającą rzeczywistej konstrukcji.</p>
          </article>
          <article class="rk-layout-card">
            <span class="rk-layout-card-number">System suchy</span>
            <h3>Moduł płyty może narzucić dostępne warianty</h3>
            <p>Nie wolno przenosić wyników z ciężkiego jastrychu na lekki system bez sprawdzenia jego danych. Zobacz przewodnik: <a href="https://projekt-ogrzewania.pl/czym-jest-system-suchy-w-wodnym-ogrzewaniu-podlogowym/">czym jest suchy system ogrzewania podłogowego</a>.</p>
          </article>
        </div>
      </section>

      <section class="rk-layout-section" id="rk-layout-errors">
        <span class="rk-layout-kicker">Najczęstsze skróty myślowe na budowie</span>
        <h2>Błędy przy planowaniu gęstości rur podłogówki</h2>
        <div class="rk-layout-errors">
          <article class="rk-layout-error"><b>Błąd 01</b><p><strong>„Pompa ciepła oznacza 10 cm w całym domu”.</strong> Źródło wpływa na opłacalny poziom temperatury, ale nie zastępuje obliczeń podłogi.</p></article>
          <article class="rk-layout-error"><b>Błąd 02</b><p><strong>Liczenie mocy z całego metrażu pokoju.</strong> Stała zabudowa i wyłączenia mogą istotnie zwiększyć wymaganie przypadające na powierzchnię czynną.</p></article>
          <article class="rk-layout-error"><b>Błąd 03</b><p><strong>Jedna recepta dla wszystkich łazienek.</strong> Wyższa temperatura i małe pole czynne mogą sprawić, że nawet gęsty rozstaw nie pokryje obciążenia.</p></article>
          <article class="rk-layout-error"><b>Błąd 04</b><p><strong>Obowiązkowa strefa 1 m przy każdym oknie.</strong> Strefa, jej szerokość i rozstaw wymagają uzasadnienia lokalnym obciążeniem.</p></article>
          <article class="rk-layout-error"><b>Błąd 05</b><p><strong>Pomijanie dobiegów.</strong> Przy kilku obwodach droga z rozdzielacza i z powrotem może dodać dziesiątki metrów rury.</p></article>
          <article class="rk-layout-error"><b>Błąd 06</b><p><strong>Podział pętli tylko z powierzchni.</strong> Potrzebne są długości, przepływy, opory oraz realna geometria przejść i dylatacji.</p></article>
          <article class="rk-layout-error"><b>Błąd 07</b><p><strong>Jedna moc przypisana do rozstawu.</strong> Bez temperatur wody, konstrukcji i oporu okładziny wartość W/m² jest niepełna.</p></article>
          <article class="rk-layout-error"><b>Błąd 08</b><p><strong>Zmiana rozstawu już podczas montażu.</strong> Modyfikuje ilość rury, liczbę obwodów, moc, przepływy i nastawy.</p></article>
          <article class="rk-layout-error"><b>Błąd 09</b><p><strong>Zagęszczanie jako lekarstwo na duże straty.</strong> Rozstaw nie zastąpi brakującej izolacji ani dodatkowego emitera.</p></article>
          <article class="rk-layout-error"><b>Błąd 10</b><p><strong>Traktowanie poglądowego rysunku jako projektu.</strong> Wykonawczy układ musi być naniesiony na rzeczywisty rzut budynku.</p></article>
        </div>
      </section>

      <section class="rk-layout-section" id="rk-layout-howto">
        <span class="rk-layout-kicker">Procedura od bilansu do nastaw rozdzielacza</span>
        <h2>Jak zaplanować gęstość rur krok po kroku?</h2>
        <div class="rk-layout-steps">
          <article class="rk-layout-step"><div><h3>Oblicz projektową stratę ciepła każdego pomieszczenia</h3><p>Nie zastępuj jej średnim wskaźnikiem dla całego budynku. Pomieszczenia narożne, łazienki i pokoje z przeszkleniami mogą mieć inne obciążenie jednostkowe.</p></div></article>
          <article class="rk-layout-step"><div><h3>Ustal temperatury projektowe i konstrukcję podłogi</h3><p>Zbierz temperaturę zasilania, powrotu i wnętrza, średnicę rury, warstwy podłogi, dane jastrychu oraz łączny opór wykończenia.</p></div></article>
          <article class="rk-layout-step"><div><h3>Nanieś trwałą zabudowę i pola bez rur</h3><p>Skoordynuj rzut instalacji z projektem wnętrz, elementami wymagającymi kotwienia, instalacjami oraz dylatacjami.</p></div></article>
          <article class="rk-layout-step"><div><h3>Wyznacz powierzchnię czynną i wymaganie W/m²</h3><p>Podziel stratę ciepła przez pole, które rzeczywiście będzie oddawało ciepło do pomieszczenia.</p></div></article>
          <article class="rk-layout-step"><div><h3>Porównaj możliwe rozstawy na charakterystyce systemu</h3><p>Sprawdź moc oraz temperaturę powierzchni przy identycznych warunkach. Odrzuć warianty niewystarczające i te przekraczające ograniczenia.</p></div></article>
          <article class="rk-layout-step"><div><h3>Wyznacz ewentualne strefy lokalne</h3><p>Jeżeli przy przeszkleniu występuje większe obciążenie, ustal zakres strefy i jej rozstaw zamiast przyjmować uniwersalny pas.</p></div></article>
          <article class="rk-layout-step"><div><h3>Rozrysuj pętle z dobiegami i przejściami</h3><p>Uwzględnij rzeczywiste promienie gięcia, dylatacje, kolejność układania i drogę każdej pętli od rozdzielacza.</p></div></article>
          <article class="rk-layout-step"><div><h3>Oblicz przepływy i straty ciśnienia</h3><p>Przypisz moc do obwodów, wyznacz przepływy i skontroluj pętlę krytyczną wraz z rozdzielaczem, armaturą oraz magistralą.</p></div></article>
          <article class="rk-layout-step"><div><h3>Przekaż wykonawcy rzut i tabelę nastaw</h3><p>Dokumentacja powinna jednoznacznie podawać rozstawy, strefy, długości, numery pętli, przepływy i wartości regulacyjne.</p></div></article>
        </div>
        <p style="margin-top:24px">Zobacz również: <a href="https://projekt-ogrzewania.pl/jak-zaplanowac-rozmieszczenie-petli-grzewczych-w-ogrzewaniu-podlogowym/">jak zaplanować rozmieszczenie pętli grzewczych</a> oraz <a href="https://projekt-ogrzewania.pl/izolacja-brzegowa-i-dylatacje-w-instalacji-ogrzewania-podlogowego/">izolacja brzegowa i dylatacje</a>.</p>
      </section>

      <section class="rk-layout-section" id="rk-layout-checklist">
        <span class="rk-layout-kicker">Kontrola przed zamówieniem rury</span>
        <h2>Checklista przed ułożeniem ogrzewania podłogowego</h2>
        <div class="rk-layout-checklist">
          <div class="rk-layout-checkitem">Strata ciepła policzona osobno dla każdego pomieszczenia</div>
          <div class="rk-layout-checkitem">Znane temperatury zasilania, powrotu i wnętrza</div>
          <div class="rk-layout-checkitem">Określona rzeczywista konstrukcja systemu podłogowego</div>
          <div class="rk-layout-checkitem">Zebrany łączny opór cieplny okładziny i podkładu</div>
          <div class="rk-layout-checkitem">Na rzucie oznaczona trwała zabudowa i pola techniczne</div>
          <div class="rk-layout-checkitem">Wyznaczona powierzchnia czynna każdego pokoju</div>
          <div class="rk-layout-checkitem">Rozstaw zweryfikowany pod względem mocy i temperatury powierzchni</div>
          <div class="rk-layout-checkitem">Strefy lokalne mają obliczone uzasadnienie i wymiary</div>
          <div class="rk-layout-checkitem">Doliczone zasilanie i powrót każdej pętli</div>
          <div class="rk-layout-checkitem">Sprawdzone długości, przepływy oraz straty ciśnienia</div>
          <div class="rk-layout-checkitem">Przebiegi skoordynowane z dylatacjami i drzwiami</div>
          <div class="rk-layout-checkitem">Instalator otrzymał rzut, opis obwodów i tabelę nastaw</div>
        </div>
      </section>

      <section class="rk-layout-section" id="rk-layout-faq">
        <span class="rk-layout-kicker">Najczęściej zadawane pytania</span>
        <h2>FAQ: jak gęsto rozkładać podłogówkę?</h2>
        <div class="rk-layout-faq">
          <details><summary>Co ile centymetrów układać rury ogrzewania podłogowego?</summary><div class="rk-layout-faq-answer"><p>Nie ma jednej odległości właściwej dla każdego pomieszczenia. Najpierw wyznacza się wymaganą moc z powierzchni czynnej, a następnie sprawdza 5, 10, 15, 20 cm lub inny moduł na charakterystyce konkretnego systemu przy założonych temperaturach wody i oporze podłogi.</p></div></details>
          <details><summary>Czy rozstaw 15 cm wystarczy w całym domu?</summary><div class="rk-layout-faq-answer"><p>Może być wystarczający w części lub nawet wszystkich pomieszczeniach budynku o małych stratach, ale nie wolno zakładać tego bez sprawdzenia. Łazienka, mała powierzchnia czynna, duże przeszklenie albo okładzina o większym oporze mogą zmienić wynik.</p></div></details>
          <details><summary>Czy przy pompie ciepła trzeba układać rury co 10 cm?</summary><div class="rk-layout-faq-answer"><p>Nie zawsze. Gęstszy rozstaw może umożliwić pracę przy niższej temperaturze wody, ale potrzebę jego zastosowania trzeba potwierdzić obciążeniem i charakterystyką podłogi. Źródło ciepła samo nie wyznacza kroku rur.</p></div></details>
          <details><summary>Jaki rozstaw rur zastosować w łazience?</summary><div class="rk-layout-faq-answer"><p>Łazienka często ma wyższą temperaturę projektową i mniejszą powierzchnię czynną, dlatego może wymagać gęstszego ułożenia. Nie jest to jednak automatyczna reguła 10 cm. Gdy wolnej podłogi jest zbyt mało, potrzebny może być dodatkowy emiter.</p></div></details>
          <details><summary>Czy w salonie wystarczy rozstaw 15 cm?</summary><div class="rk-layout-faq-answer"><p>Może wystarczyć, jeżeli przy założonych temperaturach i konstrukcji zapewnia wymaganą moc bez przekroczenia limitu temperatury powierzchni. Trzeba uwzględnić przeszklenia, opór okładziny, powierzchnię czynną i podział dużego salonu na pętle.</p></div></details>
          <details><summary>Czy przy oknie HS zawsze trzeba zrobić strefę brzegową?</summary><div class="rk-layout-faq-answer"><p>Nie. Zastosowanie strefy powinno wynikać z lokalnego obciążenia cieplnego. Jeżeli jest potrzebna, projekt określa jej szerokość, długość, rozstaw, temperaturę powierzchni i sposób włączenia w układ obwodów.</p></div></details>
          <details><summary>Czy można ułożyć dwa różne rozstawy w jednej pętli?</summary><div class="rk-layout-faq-answer"><p>Można rozrysować pętlę przechodzącą przez pola o różnym rozstawie, jeśli geometria, moc oraz hydraulika zostały obliczone. Należy jednoznacznie pokazać granice stref i zachować wykonalny przebieg rury.</p></div></details>
          <details><summary>Ile rury potrzeba na 1 m² przy 10, 15 i 20 cm?</summary><div class="rk-layout-faq-answer"><p>Geometria pola daje około 10 m/m² przy 10 cm, 6,67 m/m² przy 15 cm i 5 m/m² przy 20 cm. Osobno trzeba uwzględnić łuki, kształt pomieszczenia, strefy o innym rozstawie oraz zasilanie i powrót każdej pętli.</p></div></details>
          <details><summary>Czy pod stałą zabudową układa się podłogówkę?</summary><div class="rk-layout-faq-answer"><p>Decyzję trzeba skoordynować z projektem wnętrz i wymaganiami technicznymi. Trwale zamknięta zabudowa bez prześwitu, elementy wymagające kotwienia i niektóre urządzenia mogą uzasadniać wyłączenie pola. Nie należy natomiast automatycznie usuwać ogrzewania spod wszystkich mebli ruchomych.</p></div></details>
          <details><summary>Czy gęstszy rozstaw powoduje przepływ laminarny?</summary><div class="rk-layout-faq-answer"><p>Nie bezpośrednio. Charakter przepływu wynika z przepływu w konkretnej pętli, średnicy wewnętrznej oraz właściwości medium. Gęstszy rozstaw zwiększa ilość rury i może zmienić podział na obwody, lecz sam nie wyznacza liczby Reynoldsa.</p></div></details>
          <details><summary>Czy jedna pętla rury 16 mm może mieć zawsze 100 m?</summary><div class="rk-layout-faq-answer"><p>Nie należy traktować 100 m jako uniwersalnego limitu. Dopuszczalna długość zależy od wymaganej mocy i przepływu, średnicy wewnętrznej, medium, dopuszczalnej straty ciśnienia oraz dostępnego sprężu. Projekt może przyjąć krótszy limit roboczy.</p></div></details>
          <details><summary>Czy planer wyznacza prawidłowy rozstaw rur?</summary><div class="rk-layout-faq-answer"><p>Planer wyznacza powierzchnię czynną, orientacyjną ilość rury, dobiegi i wstępną liczbę pętli dla rozstawu wybranego przez użytkownika. Poprawność cieplną trzeba osobno potwierdzić dla konkretnej konstrukcji, temperatur wody i oporu okładziny.</p></div></details>
        </div>
      </section>

      <section class="rk-layout-section" id="rk-layout-sources">
        <span class="rk-layout-kicker">Metodyka i oficjalne dokumenty</span>
        <h2>Na czym oparto opracowanie?</h2>
        <div class="rk-layout-source-box">
          <p>Artykuł rozdziela projektową stratę ciepła pomieszczenia, wydajność powierzchni grzewczej, jej wymiarowanie oraz wymagania dotyczące wykonania. Metodykę określania wydajności opisuje <a href="https://www.iso.org/standard/74683.html" target="_blank" rel="noopener nofollow">ISO 11855-2:2021</a>, zasady wymiarowania <a href="https://www.iso.org/standard/74684.html" target="_blank" rel="noopener nofollow">ISO 11855-3:2021</a>, a wymagania instalacyjne dla systemów wbudowanych <a href="https://www.iso.org/standard/74685.html" target="_blank" rel="noopener nofollow">ISO 11855-5:2021</a>.</p>
          <p>Planer jest modelem geometrycznym. Nie zastępuje charakterystyki cieplnej konkretnego systemu, obliczeń hydraulicznych ani dokumentacji wykonawczej. Linki zewnętrzne prowadzą wyłącznie do oficjalnego serwisu organizacji normalizacyjnej.</p>
        </div>
        <div class="rk-layout-update">Ostatnia aktualizacja merytoryczna: 30 sierpnia 2026 r.</div>
      </section>
    </main>

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

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

      <div class="rk-layout-author-layout">
        <aside class="rk-layout-author-side">
          <div class="rk-layout-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-layout-author-name">Robert Kucharski</div>
          <div class="rk-layout-author-role">Projektant instalacji sanitarnych<br>Specjalista HVAC i ogrzewania podłogowego</div>
          <div class="rk-layout-author-social-label">Znajdziesz mnie również:</div>
          <div class="rk-layout-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-layout-author-main">
          <blockquote class="rk-layout-author-quote"><p>„Dobry rozstaw to nie liczba wpisana obok nazwy pomieszczenia. To wynik, który musi zgadzać się jednocześnie z bilansem ciepła, powierzchnią czynną, konstrukcją podłogi i hydrauliką realnie narysowanych pętli.”</p></blockquote>
          <div class="rk-layout-author-tabs" role="tablist" aria-label="Informacje o autorze">
            <label class="rk-layout-author-tab" for="rk-layout-author-about">O autorze</label>
            <label class="rk-layout-author-tab" for="rk-layout-author-exp">Doświadczenie</label>
            <label class="rk-layout-author-tab" for="rk-layout-author-sites">Portale</label>
          </div>
          <div class="rk-layout-author-panel rk-layout-author-panel-about"><p>Projektuję wodne ogrzewanie podłogowe, łącząc obliczenia strat ciepła z doborem temperatur, rozstawów, przepływów, długości pętli, strat ciśnienia i nastaw rozdzielaczy.</p></div>
          <div class="rk-layout-author-panel rk-layout-author-panel-exp"><p>W dokumentacji wykonawczej rozstaw jest nanoszony na rzeczywisty rzut. Każdy obwód otrzymuje długość, moc, przepływ i nastawę, dzięki czemu wykonanie oraz rozruch nie opierają się na uniwersalnym schemacie.</p></div>
          <div class="rk-layout-author-panel rk-layout-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-layout-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-layout-cta rk-layout-final-cta" aria-label="Projekt ogrzewania podłogowego z rozstawem rur">
      <span class="rk-layout-kicker" style="color:#7af0ff">Zamknij decyzje przed zalaniem posadzki</span>
      <h2>Otrzymaj kompletny projekt podłogówki dla swojego budynku</h2>
      <p>Dokumentacja połączy straty ciepła, powierzchnie czynne, rozstawy, pola bez rur, strefy lokalne, rzeczywiste długości pętli, przepływy, straty ciśnienia i nastawy rozdzielaczy. Instalator otrzyma gotowy rzut zamiast ogólnej zasady „co 10 albo 15 cm”.</p>
      <a class="rk-layout-cta-button rk-layout-sales-cta" href="https://projekt-ogrzewania.pl/produkt/projekt-instalacji-ogrzewania-podlogowego-podlogowki/">Zamów projekt ogrzewania podłogowego</a>
      <small class="rk-layout-disclosure">Odnośnik prowadzi do strony sprzedażowej Projekt-Ogrzewania.pl — serwisu należącego do autora artykułu.</small>
    </section>
  </div>
</article>

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@graph": [
    {
      "@type": "TechArticle",
      "@id": "https://projekt-ogrzewania.pl/jak-gesto-rozkladac-podlogowke/#article",
      "url": "https://projekt-ogrzewania.pl/jak-gesto-rozkladac-podlogowke/",
      "headline": "Jak gęsto rozkładać podłogówkę? Rozstaw rur w pomieszczeniach i strefach",
      "description": "Praktyczny poradnik planowania rozstawu rur z planerem powierzchni czynnej, stref, ilości rury i wstępnego podziału na pętle.",
      "inLanguage": "pl-PL",
      "dateModified": "2026-08-30",
      "mainEntityOfPage": {"@id": "https://projekt-ogrzewania.pl/jak-gesto-rozkladac-podlogowke/#webpage"},
      "author": {"@id": "https://projekt-ogrzewania.pl/#robert-kucharski"},
      "publisher": {"@id": "https://projekt-ogrzewania.pl/#organization"},
      "about": [
        {"@type": "Thing", "name": "Rozstaw rur ogrzewania podłogowego"},
        {"@type": "Thing", "name": "Powierzchnia czynna ogrzewania podłogowego"},
        {"@type": "Thing", "name": "Strefa brzegowa ogrzewania podłogowego"},
        {"@type": "Thing", "name": "Planowanie pętli grzewczych"}
      ],
      "isPartOf": {"@id": "https://projekt-ogrzewania.pl/#website"}
    },
    {
      "@type": "WebPage",
      "@id": "https://projekt-ogrzewania.pl/jak-gesto-rozkladac-podlogowke/#webpage",
      "url": "https://projekt-ogrzewania.pl/jak-gesto-rozkladac-podlogowke/",
      "name": "Jak gęsto rozkładać podłogówkę? Rozstaw rur w pomieszczeniach i strefach",
      "description": "Sprawdź, co ile cm układać rury podłogówki. Oblicz powierzchnię czynną, ilość rury, strefę brzegową i wstępny podział na pętle.",
      "inLanguage": "pl-PL",
      "dateModified": "2026-08-30",
      "isPartOf": {"@id": "https://projekt-ogrzewania.pl/#website"},
      "breadcrumb": {"@id": "https://projekt-ogrzewania.pl/jak-gesto-rozkladac-podlogowke/#breadcrumb"},
      "mainEntity": {"@id": "https://projekt-ogrzewania.pl/jak-gesto-rozkladac-podlogowke/#article"},
      "potentialAction": {
        "@type": "ReadAction",
        "target": "https://projekt-ogrzewania.pl/jak-gesto-rozkladac-podlogowke/"
      }
    },
    {
      "@type": "BreadcrumbList",
      "@id": "https://projekt-ogrzewania.pl/jak-gesto-rozkladac-podlogowke/#breadcrumb",
      "itemListElement": [
        {"@type": "ListItem", "position": 1, "name": "Projekt Ogrzewania", "item": "https://projekt-ogrzewania.pl/"},
        {"@type": "ListItem", "position": 2, "name": "Blog", "item": "https://projekt-ogrzewania.pl/blog/"},
        {"@type": "ListItem", "position": 3, "name": "Jak gęsto rozkładać podłogówkę?", "item": "https://projekt-ogrzewania.pl/jak-gesto-rozkladac-podlogowke/"}
      ]
    },
    {
      "@type": "WebApplication",
      "@id": "https://projekt-ogrzewania.pl/jak-gesto-rozkladac-podlogowke/#planner",
      "name": "Interaktywny planer powierzchni, stref i ilości rur",
      "url": "https://projekt-ogrzewania.pl/jak-gesto-rozkladac-podlogowke/#rk-layout-planner-section",
      "description": "Bezpłatny planer geometrii pomieszczenia obliczający powierzchnię czynną, orientacyjną długość rury, dobiegi i wstępną liczbę pętli.",
      "applicationCategory": "UtilitiesApplication",
      "operatingSystem": "Any",
      "browserRequirements": "JavaScript",
      "isAccessibleForFree": true,
      "inLanguage": "pl-PL",
      "author": {"@id": "https://projekt-ogrzewania.pl/#robert-kucharski"},
      "featureList": [
        "Obliczenie powierzchni czynnej",
        "Poglądowy rzut pomieszczenia",
        "Opcjonalna strefa lokalna",
        "Orientacyjna długość rury z dobiegami",
        "Wstępny podział na pętle",
        "Porównanie rozstawu 10, 15 i 20 cm"
      ]
    },
    {
      "@type": "HowTo",
      "@id": "https://projekt-ogrzewania.pl/jak-gesto-rozkladac-podlogowke/#howto",
      "name": "Jak zaplanować gęstość rur ogrzewania podłogowego",
      "description": "Procedura od obliczenia straty ciepła do rzutu pętli i tabeli nastaw.",
      "inLanguage": "pl-PL",
      "step": [
        {"@type": "HowToStep", "position": 1, "name": "Oblicz stratę ciepła pomieszczeń", "text": "Wyznacz projektową stratę ciepła osobno dla każdego pomieszczenia."},
        {"@type": "HowToStep", "position": 2, "name": "Ustal temperatury i konstrukcję", "text": "Zbierz temperatury zasilania, powrotu i wnętrza oraz dane wszystkich warstw podłogi."},
        {"@type": "HowToStep", "position": 3, "name": "Nanieś pola bez rur", "text": "Oznacz trwałą zabudowę, kolizje, dylatacje i fragmenty wyłączone."},
        {"@type": "HowToStep", "position": 4, "name": "Wyznacz powierzchnię czynną", "text": "Oblicz pole rzeczywiście oddające ciepło i wymaganą moc jednostkową."},
        {"@type": "HowToStep", "position": 5, "name": "Zweryfikuj rozstaw", "text": "Porównaj możliwe rozstawy na charakterystyce konkretnej konstrukcji podłogi."},
        {"@type": "HowToStep", "position": 6, "name": "Wyznacz strefy lokalne", "text": "Dodaj strefę tylko wtedy, gdy uzasadnia ją lokalne obciążenie cieplne."},
        {"@type": "HowToStep", "position": 7, "name": "Rozrysuj pętle", "text": "Uwzględnij dobiegi, przejścia, promienie gięcia i dylatacje."},
        {"@type": "HowToStep", "position": 8, "name": "Oblicz hydraulikę", "text": "Wyznacz przepływy oraz straty ciśnienia wszystkich obwodów."},
        {"@type": "HowToStep", "position": 9, "name": "Przygotuj dokumentację", "text": "Przekaż wykonawcy rzut, długości pętli, przepływy i nastawy rozdzielacza."}
      ]
    },
    {
      "@type": "FAQPage",
      "@id": "https://projekt-ogrzewania.pl/jak-gesto-rozkladac-podlogowke/#faq",
      "inLanguage": "pl-PL",
      "mainEntity": [
        {
          "@type": "Question",
          "name": "Co ile centymetrów układać rury ogrzewania podłogowego?",
          "acceptedAnswer": {"@type": "Answer", "text": "Nie ma jednej odległości właściwej dla każdego pomieszczenia. Najpierw wyznacza się wymaganą moc z powierzchni czynnej, a następnie sprawdza dostępne moduły na charakterystyce konkretnego systemu przy założonych temperaturach wody i oporze podłogi."}
        },
        {
          "@type": "Question",
          "name": "Czy rozstaw 15 cm wystarczy w całym domu?",
          "acceptedAnswer": {"@type": "Answer", "text": "Może być wystarczający w budynku o małych stratach, ale wymaga sprawdzenia każdego pomieszczenia. Mała powierzchnia czynna, duże przeszklenie lub okładzina o większym oporze mogą zmienić wynik."}
        },
        {
          "@type": "Question",
          "name": "Czy przy pompie ciepła trzeba układać rury co 10 cm?",
          "acceptedAnswer": {"@type": "Answer", "text": "Nie zawsze. Gęstszy rozstaw może umożliwić niższą temperaturę wody, ale jego potrzebę trzeba potwierdzić obciążeniem pomieszczenia i charakterystyką podłogi."}
        },
        {
          "@type": "Question",
          "name": "Jaki rozstaw rur zastosować w łazience?",
          "acceptedAnswer": {"@type": "Answer", "text": "Łazienka często ma wyższą temperaturę projektową i mniejszą powierzchnię czynną, ale nie istnieje automatyczna reguła 10 cm. Gdy wolnej podłogi jest zbyt mało, potrzebny może być dodatkowy emiter."}
        },
        {
          "@type": "Question",
          "name": "Czy w salonie wystarczy rozstaw 15 cm?",
          "acceptedAnswer": {"@type": "Answer", "text": "Może wystarczyć, jeżeli przy założonych temperaturach i konstrukcji zapewnia wymaganą moc bez przekroczenia limitu temperatury powierzchni."}
        },
        {
          "@type": "Question",
          "name": "Czy przy oknie HS zawsze trzeba zrobić strefę brzegową?",
          "acceptedAnswer": {"@type": "Answer", "text": "Nie. Zastosowanie strefy powinno wynikać z lokalnego obciążenia cieplnego, a projekt powinien określać jej wymiary, rozstaw i sposób włączenia w pętle."}
        },
        {
          "@type": "Question",
          "name": "Czy można ułożyć dwa różne rozstawy w jednej pętli?",
          "acceptedAnswer": {"@type": "Answer", "text": "Można, jeśli geometria, moc i hydraulika zostały obliczone. Granice stref muszą być jednoznacznie pokazane na rzucie."}
        },
        {
          "@type": "Question",
          "name": "Ile rury potrzeba na 1 m² przy 10, 15 i 20 cm?",
          "acceptedAnswer": {"@type": "Answer", "text": "Geometria pola daje około 10 m na m² przy 10 cm, 6,67 m na m² przy 15 cm i 5 m na m² przy 20 cm. Osobno trzeba uwzględnić łuki, kształt pomieszczenia i dobiegi każdej pętli."}
        },
        {
          "@type": "Question",
          "name": "Czy pod stałą zabudową układa się podłogówkę?",
          "acceptedAnswer": {"@type": "Answer", "text": "Decyzję trzeba skoordynować z projektem wnętrz i wymaganiami technicznymi. Trwała zamknięta zabudowa może uzasadniać wyłączenie pola, ale nie należy automatycznie usuwać ogrzewania spod wszystkich mebli ruchomych."}
        },
        {
          "@type": "Question",
          "name": "Czy gęstszy rozstaw powoduje przepływ laminarny?",
          "acceptedAnswer": {"@type": "Answer", "text": "Nie bezpośrednio. Charakter przepływu wynika z przepływu w pętli, średnicy wewnętrznej i właściwości medium. Gęstszy rozstaw sam nie wyznacza liczby Reynoldsa."}
        },
        {
          "@type": "Question",
          "name": "Czy jedna pętla rury 16 mm może mieć zawsze 100 m?",
          "acceptedAnswer": {"@type": "Answer", "text": "Nie należy traktować 100 m jako uniwersalnego limitu. Dopuszczalna długość zależy od przepływu, średnicy wewnętrznej, medium, straty ciśnienia i dostępnego sprężu."}
        },
        {
          "@type": "Question",
          "name": "Czy planer wyznacza prawidłowy rozstaw rur?",
          "acceptedAnswer": {"@type": "Answer", "text": "Planer wyznacza geometrię, ilość rury, dobiegi i wstępną liczbę pętli. Poprawność cieplną trzeba osobno potwierdzić dla konkretnej konstrukcji, temperatur wody i oporu okładziny."}
        }
      ]
    },
    {
      "@type": "Person",
      "@id": "https://projekt-ogrzewania.pl/#robert-kucharski",
      "name": "Robert Kucharski",
      "url": "https://projekt-ogrzewania.pl/author/projekt-ogrzewania/",
      "image": "https://projekt-ogrzewania.pl/wp-content/uploads/2026/04/PO-Robert-Kucharski.webp",
      "jobTitle": "Projektant instalacji sanitarnych i specjalista HVAC",
      "description": "Autor opracowań i projektów wodnego ogrzewania podłogowego.",
      "worksFor": {"@id": "https://projekt-ogrzewania.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"},
      "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": "WebSite",
      "@id": "https://projekt-ogrzewania.pl/#website",
      "url": "https://projekt-ogrzewania.pl/",
      "name": "Projekt Ogrzewania",
      "inLanguage": "pl-PL",
      "publisher": {"@id": "https://projekt-ogrzewania.pl/#organization"}
    }
  ]
}
</script>

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

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

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

  function readNumber(id, fallback) {
    var node = byId(id);
    if (!node) { return fallback; }
    var value = parseFloat(node.value);
    if (!Number.isFinite(value)) { return fallback; }
    return value;
  }

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

  function formatNumber(value, digits) {
    if (!Number.isFinite(value)) { return "—"; }
    return value.toFixed(digits).replace(".", ",");
  }

  function formatMetres(value) {
    return formatNumber(value, 1) + " m";
  }

  function formatArea(value) {
    return formatNumber(value, 1) + " m²";
  }

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

  function setDiagnostic(id, state, title, textValue) {
    var card = byId(id);
    if (!card) { return; }
    card.classList.remove("is-ok", "is-warn", "is-alert");
    card.classList.add(state);
    setText(id + "-title", title);
    setText(id + "-text", textValue);
  }

  function getData() {
    var length = clamp(readNumber("rk-layout-length", 5.5), 1.5, 20);
    var width = clamp(readNumber("rk-layout-width", 4), 1.5, 20);
    var totalArea = length * width;
    var builtInput = Math.max(readNumber("rk-layout-built-area", 0), 0);
    var otherInput = Math.max(readNumber("rk-layout-other-area", 0), 0);
    var builtArea = Math.min(builtInput, totalArea);
    var otherArea = Math.min(otherInput, Math.max(totalArea - builtArea, 0));
    var activeArea = Math.max(totalArea - builtArea - otherArea, 0);
    var load = clamp(readNumber("rk-layout-load", 1050), 100, 10000);
    var baseSpacing = clamp(readNumber("rk-layout-base-spacing", 15), 5, 30);
    var distance = clamp(readNumber("rk-layout-manifold-distance", 6), 0, 40);
    var loopLimit = clamp(readNumber("rk-layout-loop-limit", 90), 45, 120);
    var edgeToggle = byId("rk-layout-edge-toggle");
    var edgeEnabled = false;
    if (edgeToggle) { edgeEnabled = edgeToggle.checked; }
    var edgeWidth = clamp(readNumber("rk-layout-edge-width", .8), .3, 2);
    var edgeLength = clamp(readNumber("rk-layout-edge-length", width), .5, width);
    var edgeSpacing = clamp(readNumber("rk-layout-edge-spacing", 10), 5, 20);
    var edgeArea = 0;
    if (edgeEnabled) {
      edgeArea = Math.min(edgeWidth * edgeLength, activeArea);
    }
    var mainArea = Math.max(activeArea - edgeArea, 0);
    var unitLoad = 0;
    if (activeArea > 0) { unitLoad = load / activeArea; }

    return {
      length: length,
      width: width,
      totalArea: totalArea,
      builtInput: builtInput,
      otherInput: otherInput,
      builtArea: builtArea,
      otherArea: otherArea,
      activeArea: activeArea,
      activeShare: totalArea > 0 ? activeArea / totalArea : 0,
      load: load,
      unitLoad: unitLoad,
      baseSpacing: baseSpacing,
      distance: distance,
      loopLimit: loopLimit,
      edgeEnabled: edgeEnabled,
      edgeWidth: edgeWidth,
      edgeLength: edgeLength,
      edgeSpacing: edgeSpacing,
      edgeArea: edgeArea,
      mainArea: mainArea,
      excludedOverflow: builtInput + otherInput >= totalArea
    };
  }

  function computeVariant(data, spacing) {
    var bendFactor = 1.03;
    var mainPipe = data.mainArea * (100 / spacing) * bendFactor;
    var edgePipe = 0;
    if (data.edgeEnabled) {
      edgePipe = data.edgeArea * (100 / data.edgeSpacing) * bendFactor;
    }
    var fieldPipe = mainPipe + edgePipe;
    var availableForField = data.loopLimit - (2 * data.distance);
    var feasible = availableForField > 3;
    if (fieldPipe <= .01) { feasible = false; }
    var loops = 0;
    var totalPipe = fieldPipe;
    var average = 0;
    var runs = 0;

    if (feasible) {
      loops = Math.max(1, Math.ceil(fieldPipe / availableForField));
      runs = loops * 2 * data.distance;
      totalPipe = fieldPipe + runs;
      average = totalPipe / loops;
    }

    return {
      spacing: spacing,
      factor: (100 / spacing) * bendFactor,
      mainPipe: mainPipe,
      edgePipe: edgePipe,
      fieldPipe: fieldPipe,
      runs: runs,
      totalPipe: totalPipe,
      loops: loops,
      average: average,
      feasible: feasible,
      availableForField: availableForField
    };
  }

  function toggleEdgeFields() {
    var toggle = byId("rk-layout-edge-toggle");
    var enabled = false;
    if (toggle) { enabled = toggle.checked; }
    var ids = ["rk-layout-edge-width", "rk-layout-edge-length", "rk-layout-edge-spacing"];
    ids.forEach(function (id) {
      var node = byId(id);
      if (node) { node.disabled = !enabled; }
    });
  }

  function pathForSerpentine(x, y, width, height, gap) {
    var safeGap = Math.max(gap, 8);
    var left = x + safeGap * .6;
    var right = x + width - safeGap * .6;
    var top = y + safeGap * .6;
    var bottom = y + height - safeGap * .6;
    if (right <= left) { return ""; }
    if (bottom <= top) { return ""; }
    var path = "";
    var currentX = left;
    var down = true;
    var started = false;
    while (currentX <= right + .01) {
      var startY = down ? top : bottom;
      var endY = down ? bottom : top;
      if (!started) {
        path += "M " + currentX.toFixed(1) + " " + startY.toFixed(1) + " ";
        started = true;
      }
      path += "L " + currentX.toFixed(1) + " " + endY.toFixed(1) + " ";
      var nextX = currentX + safeGap;
      if (nextX <= right + .01) {
        path += "L " + nextX.toFixed(1) + " " + endY.toFixed(1) + " ";
      }
      currentX = nextX;
      down = !down;
    }
    return path;
  }

  function areaRectangle(area, roomLength, roomWidth, roomPixelWidth, roomPixelHeight) {
    if (area <= 0) { return {width: 0, height: 0}; }
    var physicalWidth = Math.min(roomLength * .38, Math.max(.55, Math.sqrt(area * 1.35)));
    var physicalHeight = area / physicalWidth;
    if (physicalHeight > roomWidth * .46) {
      physicalHeight = roomWidth * .46;
      physicalWidth = area / physicalHeight;
    }
    physicalWidth = Math.min(physicalWidth, roomLength * .46);
    physicalHeight = Math.min(physicalHeight, roomWidth * .46);
    return {
      width: roomPixelWidth * physicalWidth / roomLength,
      height: roomPixelHeight * physicalHeight / roomWidth
    };
  }

  function renderRoom(data) {
    var drawing = byId("rk-layout-room-drawing");
    if (!drawing) { return; }
    var availableWidth = 550;
    var availableHeight = 280;
    var scale = Math.min(availableWidth / data.length, availableHeight / data.width);
    var roomWidth = data.length * scale;
    var roomHeight = data.width * scale;
    var roomX = 105 + (availableWidth - roomWidth) / 2;
    var roomY = 55 + (availableHeight - roomHeight) / 2;
    var baseGap = Math.max((data.baseSpacing / 100) * scale, 8);
    var basePath = pathForSerpentine(roomX, roomY, roomWidth, roomHeight, baseGap);
    var builtRect = areaRectangle(data.builtArea, data.length, data.width, roomWidth, roomHeight);
    var otherRect = areaRectangle(data.otherArea, data.length, data.width, roomWidth, roomHeight);
    var edgePixelWidth = Math.min(data.edgeWidth * scale, roomWidth);
    var edgePixelHeight = Math.min(data.edgeLength * scale, roomHeight);
    var edgeX = roomX + roomWidth - edgePixelWidth;
    var edgeY = roomY + (roomHeight - edgePixelHeight) / 2;
    var edgePath = "";
    if (data.edgeEnabled) {
      edgePath = pathForSerpentine(edgeX, edgeY, edgePixelWidth, edgePixelHeight, Math.max((data.edgeSpacing / 100) * scale, 7));
    }
    var builtX = roomX + 2;
    var builtY = roomY + 2;
    var otherX = roomX + 2;
    var otherY = roomY + roomHeight - otherRect.height - 2;
    var manifoldY = roomY + roomHeight - 48;
    var roomRight = roomX + roomWidth;
    var roomBottom = roomY + roomHeight;
    var html = "";

    html += "<defs><clipPath id=\"rk-layout-room-clip\"><rect x=\"" + roomX.toFixed(1) + "\" y=\"" + roomY.toFixed(1) + "\" width=\"" + roomWidth.toFixed(1) + "\" height=\"" + roomHeight.toFixed(1) + "\" rx=\"6\"></rect></clipPath></defs>";
    html += "<rect x=\"0\" y=\"0\" width=\"720\" height=\"430\" fill=\"#f8fcfd\"></rect>";
    html += "<text x=\"36\" y=\"28\" fill=\"#102536\" font-size=\"15\" font-weight=\"800\">Rzut orientacyjny</text>";
    html += "<text x=\"684\" y=\"28\" fill=\"#6b7e8a\" font-size=\"11\" text-anchor=\"end\">schemat, nie projekt wykonawczy</text>";
    html += "<rect x=\"" + roomX.toFixed(1) + "\" y=\"" + roomY.toFixed(1) + "\" width=\"" + roomWidth.toFixed(1) + "\" height=\"" + roomHeight.toFixed(1) + "\" rx=\"6\" fill=\"#eaf8fb\" stroke=\"#102536\" stroke-width=\"3\"></rect>";
    html += "<path d=\"" + basePath + "\" fill=\"none\" stroke=\"#25c7d8\" stroke-width=\"3\" stroke-linejoin=\"round\" clip-path=\"url(#rk-layout-room-clip)\"></path>";

    if (data.edgeEnabled) {
      html += "<rect x=\"" + edgeX.toFixed(1) + "\" y=\"" + edgeY.toFixed(1) + "\" width=\"" + edgePixelWidth.toFixed(1) + "\" height=\"" + edgePixelHeight.toFixed(1) + "\" fill=\"#fff1eb\" fill-opacity=\".94\" stroke=\"#ff6a3d\" stroke-width=\"2\" stroke-dasharray=\"7 5\"></rect>";
      html += "<path d=\"" + edgePath + "\" fill=\"none\" stroke=\"#ff6a3d\" stroke-width=\"3\" stroke-linejoin=\"round\" clip-path=\"url(#rk-layout-room-clip)\"></path>";
      html += "<text x=\"" + (edgeX + edgePixelWidth / 2).toFixed(1) + "\" y=\"" + (edgeY + 17).toFixed(1) + "\" fill=\"#a93b20\" font-size=\"10\" font-weight=\"800\" text-anchor=\"middle\">STREFA " + formatNumber(data.edgeSpacing, 1) + " cm</text>";
    }

    if (data.builtArea > 0) {
      html += "<rect x=\"" + builtX.toFixed(1) + "\" y=\"" + builtY.toFixed(1) + "\" width=\"" + builtRect.width.toFixed(1) + "\" height=\"" + builtRect.height.toFixed(1) + "\" fill=\"#6b7e8a\" stroke=\"#475967\" stroke-width=\"2\"></rect>";
      html += "<text x=\"" + (builtX + 8).toFixed(1) + "\" y=\"" + (builtY + 17).toFixed(1) + "\" fill=\"#ffffff\" font-size=\"10\" font-weight=\"800\">ZABUDOWA</text>";
    }

    if (data.otherArea > 0) {
      html += "<rect x=\"" + otherX.toFixed(1) + "\" y=\"" + otherY.toFixed(1) + "\" width=\"" + otherRect.width.toFixed(1) + "\" height=\"" + otherRect.height.toFixed(1) + "\" fill=\"#d94b3d\" stroke=\"#a33127\" stroke-width=\"2\"></rect>";
      html += "<text x=\"" + (otherX + 8).toFixed(1) + "\" y=\"" + (otherY + 17).toFixed(1) + "\" fill=\"#ffffff\" font-size=\"10\" font-weight=\"800\">WYŁĄCZENIE</text>";
    }

    html += "<rect x=\"22\" y=\"" + manifoldY.toFixed(1) + "\" width=\"60\" height=\"48\" rx=\"7\" fill=\"#102536\"></rect>";
    html += "<text x=\"52\" y=\"" + (manifoldY + 21).toFixed(1) + "\" fill=\"#ffffff\" font-size=\"8\" font-weight=\"800\" text-anchor=\"middle\">ROZDZIELACZ</text>";
    html += "<line x1=\"82\" y1=\"" + (manifoldY + 17).toFixed(1) + "\" x2=\"" + roomX.toFixed(1) + "\" y2=\"" + (manifoldY + 17).toFixed(1) + "\" stroke=\"#ff6a3d\" stroke-width=\"4\"></line>";
    html += "<line x1=\"82\" y1=\"" + (manifoldY + 31).toFixed(1) + "\" x2=\"" + roomX.toFixed(1) + "\" y2=\"" + (manifoldY + 31).toFixed(1) + "\" stroke=\"#078fbe\" stroke-width=\"4\"></line>";
    html += "<line x1=\"" + roomX.toFixed(1) + "\" y1=\"" + (roomBottom + 23).toFixed(1) + "\" x2=\"" + roomRight.toFixed(1) + "\" y2=\"" + (roomBottom + 23).toFixed(1) + "\" stroke=\"#8ba1ab\" stroke-width=\"1\"></line>";
    html += "<text x=\"" + (roomX + roomWidth / 2).toFixed(1) + "\" y=\"" + (roomBottom + 41).toFixed(1) + "\" fill=\"#475967\" font-size=\"12\" font-weight=\"700\" text-anchor=\"middle\">" + formatNumber(data.length, 1) + " m</text>";
    html += "<text x=\"" + (roomRight + 24).toFixed(1) + "\" y=\"" + (roomY + roomHeight / 2).toFixed(1) + "\" fill=\"#475967\" font-size=\"12\" font-weight=\"700\" text-anchor=\"middle\" transform=\"rotate(90 " + (roomRight + 24).toFixed(1) + " " + (roomY + roomHeight / 2).toFixed(1) + ")\">" + formatNumber(data.width, 1) + " m</text>";
    html += "<text x=\"36\" y=\"405\" fill=\"#6b7e8a\" font-size=\"10\">Pole czynne: " + formatArea(data.activeArea) + " • rozstaw główny: " + formatNumber(data.baseSpacing, 1) + " cm</text>";
    drawing.innerHTML = html;
  }

  function renderChart(data, variants) {
    var drawing = byId("rk-layout-chart-drawing");
    if (!drawing) { return; }
    var maxValue = 0;
    variants.forEach(function (variant) {
      if (variant.totalPipe > maxValue) { maxValue = variant.totalPipe; }
    });
    maxValue = Math.max(maxValue, 50);
    var roundedMaximum = Math.ceil(maxValue / 50) * 50;
    var plotX = 92;
    var plotY = 48;
    var plotWidth = 540;
    var plotHeight = 286;
    var baseline = plotY + plotHeight;
    var barWidth = 86;
    var centers = [190, 362, 534];
    var html = "";

    html += "<rect x=\"0\" y=\"0\" width=\"720\" height=\"430\" fill=\"#f8fcfd\"></rect>";
    for (var index = 0; index <= 5; index += 1) {
      var value = roundedMaximum * index / 5;
      var y = baseline - plotHeight * index / 5;
      html += "<line x1=\"" + plotX + "\" y1=\"" + y.toFixed(1) + "\" x2=\"" + (plotX + plotWidth) + "\" y2=\"" + y.toFixed(1) + "\" stroke=\"#d5e4eb\" stroke-width=\"1\"></line>";
      html += "<text x=\"" + (plotX - 12) + "\" y=\"" + (y + 4).toFixed(1) + "\" fill=\"#6b7e8a\" font-size=\"11\" text-anchor=\"end\">" + formatNumber(value, 0) + "</text>";
    }
    html += "<line x1=\"" + plotX + "\" y1=\"" + plotY + "\" x2=\"" + plotX + "\" y2=\"" + baseline + "\" stroke=\"#102536\" stroke-width=\"2\"></line>";
    html += "<line x1=\"" + plotX + "\" y1=\"" + baseline + "\" x2=\"" + (plotX + plotWidth) + "\" y2=\"" + baseline + "\" stroke=\"#102536\" stroke-width=\"2\"></line>";

    variants.forEach(function (variant, variantIndex) {
      var center = centers[variantIndex];
      var fieldHeight = plotHeight * variant.fieldPipe / roundedMaximum;
      var runsHeight = plotHeight * variant.runs / roundedMaximum;
      var fieldY = baseline - fieldHeight;
      var runsY = fieldY - runsHeight;
      var isSelected = Math.abs(data.baseSpacing - variant.spacing) < .01;
      var outline = isSelected ? "#ff6a3d" : "#284b5e";
      var outlineWidth = isSelected ? 4 : 1;
      html += "<rect x=\"" + (center - barWidth / 2) + "\" y=\"" + fieldY.toFixed(1) + "\" width=\"" + barWidth + "\" height=\"" + fieldHeight.toFixed(1) + "\" fill=\"#078fbe\"></rect>";
      if (runsHeight > 0) {
        html += "<rect x=\"" + (center - barWidth / 2) + "\" y=\"" + runsY.toFixed(1) + "\" width=\"" + barWidth + "\" height=\"" + runsHeight.toFixed(1) + "\" fill=\"#695ac9\"></rect>";
      }
      html += "<rect x=\"" + (center - barWidth / 2) + "\" y=\"" + runsY.toFixed(1) + "\" width=\"" + barWidth + "\" height=\"" + (fieldHeight + runsHeight).toFixed(1) + "\" fill=\"none\" stroke=\"" + outline + "\" stroke-width=\"" + outlineWidth + "\"></rect>";
      html += "<text x=\"" + center + "\" y=\"" + Math.max(runsY - 10, 23).toFixed(1) + "\" fill=\"#102536\" font-size=\"12\" font-weight=\"800\" text-anchor=\"middle\">" + formatNumber(variant.totalPipe, 1) + " m</text>";
      html += "<text x=\"" + center + "\" y=\"" + (baseline + 24) + "\" fill=\"#102536\" font-size=\"13\" font-weight=\"900\" text-anchor=\"middle\">" + variant.spacing + " cm</text>";
      var loopText = variant.feasible ? variant.loops + " pętli" : "brak podziału";
      html += "<text x=\"" + center + "\" y=\"" + (baseline + 43) + "\" fill=\"#6b7e8a\" font-size=\"10\" text-anchor=\"middle\">" + loopText + "</text>";
    });

    html += "<text x=\"18\" y=\"195\" fill=\"#475967\" font-size=\"11\" font-weight=\"700\" text-anchor=\"middle\" transform=\"rotate(-90 18 195)\">Długość rury [m]</text>";
    html += "<text x=\"684\" y=\"411\" fill=\"#6b7e8a\" font-size=\"10\" text-anchor=\"end\">Rura w polu z dodatkiem 3% oraz dobiegi każdej pętli</text>";
    drawing.innerHTML = html;
  }

  function updateComparison(data, variants) {
    variants.forEach(function (variant) {
      var key = String(variant.spacing);
      var card = byId("rk-layout-compare-" + key);
      if (!card) { return; }
      card.classList.remove("is-selected");
      setText("rk-layout-selected-" + key, "");
      if (Math.abs(data.baseSpacing - variant.spacing) < .01) {
        card.classList.add("is-selected");
        setText("rk-layout-selected-" + key, "wybrany");
      }
      setText("rk-layout-length-" + key, formatMetres(variant.totalPipe));
      setText("rk-layout-factor-" + key, formatNumber(variant.factor, 2) + " m/m²");
      if (variant.feasible) {
        setText("rk-layout-loops-" + key, String(variant.loops));
        setText("rk-layout-average-" + key, formatMetres(variant.average));
      } else {
        setText("rk-layout-loops-" + key, "—");
        setText("rk-layout-average-" + key, "—");
      }
    });
  }

  function updateDiagnostics(data, selected) {
    if (data.activeArea <= .05) {
      setDiagnostic("rk-layout-diag-area", "is-alert", "Brak powierzchni czynnej", "Suma wpisanych wyłączeń zajmuje całe pomieszczenie. Zmniejsz pola bez rur albo skontroluj wymiary.");
    } else if (data.activeShare < .55) {
      setDiagnostic("rk-layout-diag-area", "is-alert", formatNumber(data.activeShare * 100, 0) + "% pola pracuje", "Bardzo mała powierzchnia czynna silnie zwiększa wymaganie W/m². Potrzebna jest dokładna weryfikacja cieplna.");
    } else if (data.activeShare < .75) {
      setDiagnostic("rk-layout-diag-area", "is-warn", formatNumber(data.activeShare * 100, 0) + "% pola pracuje", "Wyłączenia są istotne. Nie licz mocy z całej powierzchni pomieszczenia.");
    } else {
      setDiagnostic("rk-layout-diag-area", "is-ok", formatNumber(data.activeShare * 100, 0) + "% pola pracuje", "Powierzchnia czynna została policzona po odjęciu wpisanych wyłączeń. Ich położenie trzeba jeszcze nanieść na realny rzut.");
    }

    if (data.activeArea <= .05) {
      setDiagnostic("rk-layout-diag-loop", "is-alert", "Brak pola do podziału", "Najpierw wprowadź dodatnią powierzchnię czynną pomieszczenia.");
    } else if (!selected.feasible) {
      setDiagnostic("rk-layout-diag-loop", "is-alert", "Dobiegi wyczerpują limit", "Podwójna odległość od rozdzielacza pozostawia mniej niż 3 m długości na pole grzewcze. Zmień lokalizację rozdzielacza lub założenia projektu.");
    } else {
      var ratio = selected.average / data.loopLimit;
      if (ratio > .92) {
        setDiagnostic("rk-layout-diag-loop", "is-warn", selected.loops + " pętli • mała rezerwa", "Średnia długość jest blisko wpisanego limitu. Nieregularna geometria może wymagać dodatkowego obwodu.");
      } else if (selected.loops > 12) {
        setDiagnostic("rk-layout-diag-loop", "is-warn", selected.loops + " pętli • duży podział", "To wynik wstępny. Sprawdź liczbę sekcji rozdzielacza, układ pomieszczeń i rzeczywiste długości dobiegów.");
      } else {
        setDiagnostic("rk-layout-diag-loop", "is-ok", selected.loops + " pętli • wstępnie", "Średnio około " + formatNumber(selected.average, 1) + " m na obwód. Wynik wymaga rozrysowania i obliczenia strat ciśnienia.");
      }
    }

    if (data.activeArea <= .05) {
      setDiagnostic("rk-layout-diag-thermal", "is-alert", "Nie można policzyć W/m²", "Najpierw wprowadź dodatnią powierzchnię czynną.");
    } else if (data.unitLoad > 80) {
      setDiagnostic("rk-layout-diag-thermal", "is-alert", formatNumber(data.unitLoad, 1) + " W/m² • wysokie wymaganie", "To nie wybiera automatycznie 10 cm. Trzeba sprawdzić charakterystykę podłogi, temperaturę powierzchni i ewentualny dodatkowy emiter.");
    } else if (data.unitLoad > 55) {
      setDiagnostic("rk-layout-diag-thermal", "is-warn", formatNumber(data.unitLoad, 1) + " W/m² • potrzebne obliczenie", "Wybrany rozstaw jest tylko założeniem geometrycznym. Zweryfikuj moc dla temperatur wody, jastrychu i oporu okładziny.");
    } else {
      setDiagnostic("rk-layout-diag-thermal", "is-warn", formatNumber(data.unitLoad, 1) + " W/m² • bez automatycznej decyzji", "Mniejsze wymaganie nie potwierdza samo rozstawu 15 lub 20 cm. Nadal potrzebna jest charakterystyka konkretnego systemu.");
    }
  }

  function calculate() {
    toggleEdgeFields();
    var data = getData();
    var selected = computeVariant(data, data.baseSpacing);
    var variants = [computeVariant(data, 10), computeVariant(data, 15), computeVariant(data, 20)];

    setText("rk-layout-total-output", formatArea(data.totalArea));
    setText("rk-layout-active-output", formatArea(data.activeArea) + " • " + formatNumber(data.activeShare * 100, 0) + "%");
    if (data.activeArea > 0) {
      setText("rk-layout-unit-load-output", formatNumber(data.unitLoad, 1) + " W/m²");
    } else {
      setText("rk-layout-unit-load-output", "brak pola czynnego");
    }
    setText("rk-layout-pipe-output", formatMetres(selected.totalPipe));
    if (selected.feasible) {
      setText("rk-layout-loop-output", String(selected.loops));
      setText("rk-layout-average-output", formatMetres(selected.average));
    } else {
      setText("rk-layout-loop-output", "brak wyniku");
      setText("rk-layout-average-output", "—");
    }

    renderRoom(data);
    renderChart(data, variants);
    updateComparison(data, variants);
    updateDiagnostics(data, selected);

    var roomDescription = byId("rk-layout-room-desc");
    if (roomDescription) {
      roomDescription.textContent = "Pomieszczenie " + formatNumber(data.length, 1) + " na " + formatNumber(data.width, 1) + " metra, powierzchnia czynna " + formatNumber(data.activeArea, 1) + " metra kwadratowego, wybrany rozstaw " + formatNumber(data.baseSpacing, 1) + " centymetra.";
    }
    var chartDescription = byId("rk-layout-chart-desc");
    if (chartDescription) {
      chartDescription.textContent = "Porównanie długości rury dla rozstawu 10, 15 i 20 centymetrów przy powierzchni czynnej " + formatNumber(data.activeArea, 1) + " metra kwadratowego.";
    }
  }

  function resetData() {
    var defaults = {
      "rk-layout-length": "5.5",
      "rk-layout-width": "4",
      "rk-layout-load": "1050",
      "rk-layout-base-spacing": "15",
      "rk-layout-built-area": "3.5",
      "rk-layout-other-area": "1",
      "rk-layout-manifold-distance": "6",
      "rk-layout-loop-limit": "90",
      "rk-layout-edge-width": "0.8",
      "rk-layout-edge-length": "4",
      "rk-layout-edge-spacing": "10"
    };
    Object.keys(defaults).forEach(function (id) {
      var node = byId(id);
      if (node) { node.value = defaults[id]; }
    });
    var edge = byId("rk-layout-edge-toggle");
    if (edge) { edge.checked = false; }
    calculate();
  }

  function updateProgress() {
    var progress = byId("rk-layout-progress");
    if (!progress) { return; }
    var rect = root.getBoundingClientRect();
    var articleTop = window.pageYOffset + rect.top;
    var scrollable = root.offsetHeight - window.innerHeight;
    var passed = window.pageYOffset - articleTop;
    var percentage = 0;
    if (scrollable > 0) { percentage = passed / scrollable * 100; }
    percentage = clamp(percentage, 0, 100);
    progress.style.width = percentage.toFixed(2) + "%";
  }

  var interactiveIds = [
    "rk-layout-length",
    "rk-layout-width",
    "rk-layout-load",
    "rk-layout-base-spacing",
    "rk-layout-built-area",
    "rk-layout-other-area",
    "rk-layout-manifold-distance",
    "rk-layout-loop-limit",
    "rk-layout-edge-toggle",
    "rk-layout-edge-width",
    "rk-layout-edge-length",
    "rk-layout-edge-spacing"
  ];

  interactiveIds.forEach(function (id) {
    var node = byId(id);
    if (!node) { return; }
    node.addEventListener("input", calculate);
    node.addEventListener("change", calculate);
  });

  var reset = byId("rk-layout-reset");
  if (reset) { reset.addEventListener("click", resetData); }
  window.addEventListener("scroll", updateProgress, {passive: true});
  window.addEventListener("resize", function () {
    calculate();
    updateProgress();
  });

  calculate();
  updateProgress();
})();
</script>
<p>Artykuł <a href="https://projekt-ogrzewania.pl/jak-gesto-rozkladac-podlogowke/">Jak gęsto rozkładać podłogówkę? Rozstaw rur w pomieszczeniach i strefach</a> pochodzi z serwisu <a href="https://projekt-ogrzewania.pl">Projekt Ogrzewania</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://projekt-ogrzewania.pl/jak-gesto-rozkladac-podlogowke/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
		<item>
		<title>Rozstaw rur ogrzewania podłogowego przy pompie ciepła.</title>
		<link>https://projekt-ogrzewania.pl/rozstaw-rur-ogrzewania-podlogowego-przy-pompie-ciepla/</link>
					<comments>https://projekt-ogrzewania.pl/rozstaw-rur-ogrzewania-podlogowego-przy-pompie-ciepla/#comments</comments>
		
		<dc:creator><![CDATA[Robert Kucharski]]></dc:creator>
		<pubDate>Sun, 22 Dec 2024 11:02:08 +0000</pubDate>
				<category><![CDATA[Ekologiczne ogrzewanie]]></category>
		<category><![CDATA[Energooszczędne budownictwo]]></category>
		<category><![CDATA[Niskotemperaturowe systemy grzewcze]]></category>
		<category><![CDATA[Ogrzewanie podłogowe]]></category>
		<category><![CDATA[Oszczędzanie energii]]></category>
		<category><![CDATA[Pompa ciepła]]></category>
		<category><![CDATA[Pompy ciepła]]></category>
		<category><![CDATA[Projekty grzewcze]]></category>
		<category><![CDATA[Rozstaw rur ogrzewania]]></category>
		<category><![CDATA[efektywność energetyczna]]></category>
		<category><![CDATA[izolacja budynku]]></category>
		<category><![CDATA[komfort cieplny]]></category>
		<category><![CDATA[niskotemperaturowe ogrzewanie]]></category>
		<category><![CDATA[ogrzewanie podłogowe]]></category>
		<category><![CDATA[oszczędne ogrzewanie]]></category>
		<category><![CDATA[pompa ciepła]]></category>
		<category><![CDATA[projekt ogrzewania]]></category>
		<category><![CDATA[rozstaw rur]]></category>
		<category><![CDATA[system grzewczy]]></category>
		<guid isPermaLink="false">https://projekt-ogrzewania.pl/?p=1823</guid>

					<description><![CDATA[<p>Ogrzewanie domu za pomocą pompy ciepła to oszczędne i ekologiczne rozwiązanie. Kluczem do efektywności systemu jest odpowiednio zaprojektowany rozstaw rur ogrzewania podłogowego przy pompie ciepła oraz utrzymanie niskiej temperatury zasilania na poziomie 35 stopni Celsjusza. Dowiedz się, jak optymalnie zaplanować układ grzewczy, zadbać o izolację budynku oraz jakich zasad przestrzegać, aby pompa ciepła pracowała wydajnie i ekonomicznie przez długie lata.</p>
<p>Artykuł <a href="https://projekt-ogrzewania.pl/rozstaw-rur-ogrzewania-podlogowego-przy-pompie-ciepla/">Rozstaw rur ogrzewania podłogowego przy pompie ciepła.</a> pochodzi z serwisu <a href="https://projekt-ogrzewania.pl">Projekt Ogrzewania</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<style>
  #rk-sp-guide {
    --rk-sp-dark: #102536;
    --rk-sp-navy: #14384d;
    --rk-sp-graphite: #2b3f4d;
    --rk-sp-blue: #078fbe;
    --rk-sp-cyan: #28c9da;
    --rk-sp-cyan-soft: #eafcff;
    --rk-sp-orange: #ff7438;
    --rk-sp-red: #e33d35;
    --rk-sp-green: #16856b;
    --rk-sp-green-soft: #eaf8f4;
    --rk-sp-yellow: #d99a13;
    --rk-sp-yellow-soft: #fff8df;
    --rk-sp-ink: #1f2937;
    --rk-sp-text: #465866;
    --rk-sp-muted: #687986;
    --rk-sp-line: #dce8ee;
    --rk-sp-soft: #f5f9fb;
    --rk-sp-warm: #fff4ed;
    --rk-sp-white: #ffffff;
    width: 100%;
    max-width: 1080px;
    margin: 34px auto 70px;
    color: var(--rk-sp-ink);
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    font-size: 18px;
    line-height: 1.78;
  }

  #rk-sp-guide,
  #rk-sp-guide * {
    box-sizing: border-box;
  }

  #rk-sp-guide img,
  #rk-sp-guide svg {
    max-width: 100%;
  }

  #rk-sp-guide button,
  #rk-sp-guide input,
  #rk-sp-guide select,
  #rk-sp-guide a,
  #rk-sp-guide summary {
    font: inherit;
    -webkit-tap-highlight-color: transparent;
  }

  #rk-sp-guide a {
    color: var(--rk-sp-blue);
    font-weight: 760;
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
  }

  #rk-sp-guide a:hover {
    color: var(--rk-sp-red);
  }

  #rk-sp-guide h2,
  #rk-sp-guide h3,
  #rk-sp-guide h4 {
    margin-top: 0;
    color: var(--rk-sp-dark);
    font-weight: 900;
    letter-spacing: -0.035em;
    line-height: 1.18;
  }

  #rk-sp-guide h2 {
    margin-bottom: 18px;
    font-size: clamp(1.65rem, 3.7vw, 2.6rem);
  }

  #rk-sp-guide h3 {
    margin-bottom: 12px;
    font-size: clamp(1.18rem, 2.5vw, 1.56rem);
  }

  #rk-sp-guide h4 {
    margin-bottom: 8px;
    font-size: 1.02rem;
    letter-spacing: -0.015em;
  }

  /* Ochrona przed dekoracjami nagłówków dodawanymi przez motyw po publikacji. */
  #rk-sp-guide h2::before,
  #rk-sp-guide h2::after,
  #rk-sp-guide h3::before,
  #rk-sp-guide h3::after,
  #rk-sp-guide h4::before,
  #rk-sp-guide h4::after {
    content: none !important;
    display: none !important;
  }

  #rk-sp-guide p {
    margin: 0 0 1.25em;
    color: var(--rk-sp-text);
  }

  #rk-sp-guide strong {
    color: var(--rk-sp-dark);
  }

  #rk-sp-guide section[id] {
    scroll-margin-top: 28px;
  }

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

  #rk-sp-guide .rk-sp-progress-track {
    position: sticky;
    z-index: 30;
    top: 0;
    width: 100%;
    height: 5px;
    overflow: hidden;
    background: rgba(255, 255, 255, 0.82);
  }

  #rk-sp-guide .rk-sp-progress {
    width: 0;
    height: 100%;
    background: linear-gradient(90deg, var(--rk-sp-cyan), var(--rk-sp-blue), var(--rk-sp-orange), var(--rk-sp-red));
  }

  #rk-sp-guide .rk-sp-hero {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    padding: clamp(38px, 6.5vw, 78px);
    color: var(--rk-sp-white);
    background:
      radial-gradient(circle at 88% 12%, rgba(255, 116, 56, 0.35), transparent 27%),
      radial-gradient(circle at 82% 78%, rgba(40, 201, 218, 0.24), transparent 31%),
      linear-gradient(135deg, #0d2230 0%, #143b50 58%, #095e78 100%);
  }

  #rk-sp-guide .rk-sp-hero::before,
  #rk-sp-guide .rk-sp-hero::after {
    content: "";
    position: absolute;
    z-index: -1;
    border-radius: 50%;
    pointer-events: none;
  }

  #rk-sp-guide .rk-sp-hero::before {
    right: -115px;
    bottom: -170px;
    width: 390px;
    height: 390px;
    border: 58px solid rgba(255, 255, 255, 0.055);
  }

  #rk-sp-guide .rk-sp-hero::after {
    right: 115px;
    bottom: -130px;
    width: 230px;
    height: 230px;
    border: 34px solid rgba(255, 116, 56, 0.11);
  }

  #rk-sp-guide .rk-sp-badge {
    display: inline-flex;
    gap: 10px;
    align-items: center;
    margin: 0 0 24px;
    padding: 8px 15px;
    border: 1px solid rgba(255, 255, 255, 0.22);
    border-radius: 999px;
    color: var(--rk-sp-white);
    background: rgba(255, 255, 255, 0.08);
    font-size: 0.74rem;
    font-weight: 900;
    letter-spacing: 0.1em;
    line-height: 1.35;
    text-transform: uppercase;
  }

  #rk-sp-guide .rk-sp-badge-dot {
    width: 10px;
    height: 10px;
    flex: 0 0 10px;
    border-radius: 50%;
    background: var(--rk-sp-orange);
    box-shadow: 0 0 0 6px rgba(255, 116, 56, 0.18);
  }

  #rk-sp-guide .rk-sp-hero h2 {
    max-width: 940px;
    margin-bottom: 24px;
    color: var(--rk-sp-white);
    font-size: clamp(2rem, 5.1vw, 3.8rem);
    letter-spacing: -0.055em;
  }

  #rk-sp-guide .rk-sp-hero h2 span {
    color: #84edf5;
  }

  #rk-sp-guide .rk-sp-hook {
    max-width: 930px;
    margin: 0 0 26px;
    padding: clamp(20px, 3.6vw, 30px);
    border: 1px solid rgba(255, 255, 255, 0.17);
    border-left: 5px solid var(--rk-sp-orange);
    border-radius: 0 18px 18px 0;
    background: rgba(255, 255, 255, 0.09);
  }

  #rk-sp-guide .rk-sp-hook p {
    margin: 0;
    color: #f3f8fa;
    font-size: clamp(1.02rem, 2.1vw, 1.23rem);
    font-weight: 620;
    line-height: 1.7;
  }

  #rk-sp-guide .rk-sp-hook strong {
    color: var(--rk-sp-white);
  }

  #rk-sp-guide .rk-sp-hero-lead {
    max-width: 920px;
    color: #dcecf1;
    font-size: clamp(1rem, 2vw, 1.15rem);
  }

  #rk-sp-guide .rk-sp-hero-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 9px 18px;
    margin-top: 28px;
  }

  #rk-sp-guide .rk-sp-hero-meta span {
    display: inline-flex;
    gap: 8px;
    align-items: center;
    color: #d8e8ee;
    font-size: 0.76rem;
    font-weight: 780;
  }

  #rk-sp-guide .rk-sp-hero-meta i {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--rk-sp-orange);
  }

  #rk-sp-guide .rk-sp-author-strip {
    display: flex;
    gap: 14px;
    align-items: center;
    margin-top: 30px;
  }

  #rk-sp-guide .rk-sp-author-strip img {
    width: 58px;
    height: 58px;
    border: 3px solid rgba(255, 255, 255, 0.85);
    border-radius: 50%;
    object-fit: cover;
    box-shadow: 0 10px 24px rgba(0, 0, 0, 0.2);
  }

  #rk-sp-guide .rk-sp-author-strip b,
  #rk-sp-guide .rk-sp-author-strip small {
    display: block;
  }

  #rk-sp-guide .rk-sp-author-strip b {
    color: var(--rk-sp-white);
    font-size: 0.9rem;
  }

  #rk-sp-guide .rk-sp-author-strip small {
    color: #c8dce4;
    font-size: 0.7rem;
    line-height: 1.45;
  }

  #rk-sp-guide .rk-sp-nav {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    padding: 24px clamp(20px, 4vw, 52px);
    border-bottom: 1px solid var(--rk-sp-line);
    background: var(--rk-sp-soft);
  }

  #rk-sp-guide .rk-sp-nav a {
    display: flex;
    gap: 10px;
    align-items: center;
    min-height: 54px;
    padding: 11px 14px;
    border: 1px solid var(--rk-sp-line);
    border-radius: 14px;
    color: var(--rk-sp-dark);
    background: var(--rk-sp-white);
    font-size: 0.74rem;
    font-weight: 850;
    line-height: 1.35;
    text-decoration: none;
  }

  #rk-sp-guide .rk-sp-nav a:hover,
  #rk-sp-guide .rk-sp-nav a:focus-visible {
    border-color: var(--rk-sp-cyan);
    color: var(--rk-sp-blue);
  }

  #rk-sp-guide .rk-sp-nav-num {
    display: inline-flex;
    width: 28px;
    height: 28px;
    flex: 0 0 28px;
    align-items: center;
    justify-content: center;
    border-radius: 9px;
    color: var(--rk-sp-white);
    background: var(--rk-sp-dark);
    font-size: 0.65rem;
    font-weight: 900;
  }

  #rk-sp-guide .rk-sp-content {
    padding: clamp(28px, 5vw, 64px);
  }

  #rk-sp-guide .rk-sp-section {
    margin-top: clamp(54px, 8vw, 92px);
  }

  #rk-sp-guide .rk-sp-section:first-child {
    margin-top: 0;
  }

  #rk-sp-guide .rk-sp-section-head {
    max-width: 880px;
    margin-bottom: 28px;
  }

  #rk-sp-guide .rk-sp-eyebrow {
    display: block;
    margin-bottom: 10px;
    color: var(--rk-sp-red);
    font-size: 0.7rem;
    font-weight: 900;
    letter-spacing: 0.12em;
    text-transform: uppercase;
  }

  #rk-sp-guide .rk-sp-lead {
    color: var(--rk-sp-graphite);
    font-size: clamp(1.02rem, 2vw, 1.18rem);
  }

  #rk-sp-guide .rk-sp-dropcap::first-letter {
    float: left;
    margin: 0.08em 0.12em 0 0;
    color: var(--rk-sp-orange);
    font-size: 3.5em;
    font-weight: 900;
    line-height: 0.82;
  }

  #rk-sp-guide .rk-sp-verdict {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 28px;
    align-items: center;
    margin: 30px 0;
    padding: clamp(25px, 4.5vw, 42px);
    border: 1px solid #ffcbb7;
    border-radius: 24px;
    background: linear-gradient(135deg, #fff9f5, var(--rk-sp-warm));
  }

  #rk-sp-guide .rk-sp-verdict p:last-child {
    margin-bottom: 0;
  }

  #rk-sp-guide .rk-sp-verdict-number {
    min-width: 190px;
    padding: 20px;
    border-radius: 21px;
    color: var(--rk-sp-white);
    background: linear-gradient(145deg, var(--rk-sp-orange), var(--rk-sp-red));
    text-align: center;
    box-shadow: 0 17px 38px rgba(227, 61, 53, 0.22);
  }

  #rk-sp-guide .rk-sp-verdict-number b,
  #rk-sp-guide .rk-sp-verdict-number small {
    display: block;
    color: var(--rk-sp-white);
  }

  #rk-sp-guide .rk-sp-verdict-number b {
    font-size: clamp(2.1rem, 5vw, 3.4rem);
    line-height: 1;
  }

  #rk-sp-guide .rk-sp-verdict-number small {
    margin-top: 8px;
    font-size: 0.67rem;
    font-weight: 850;
    line-height: 1.35;
  }

  #rk-sp-guide .rk-sp-formulas {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
    margin: 28px 0;
  }

  #rk-sp-guide .rk-sp-formula {
    padding: 24px;
    border: 1px solid var(--rk-sp-line);
    border-radius: 19px;
    background: var(--rk-sp-soft);
  }

  #rk-sp-guide .rk-sp-formula-code {
    display: block;
    margin: 12px 0;
    color: var(--rk-sp-dark);
    font-family: "SFMono-Regular", Consolas, "Liberation Mono", monospace;
    font-size: clamp(1rem, 2.6vw, 1.35rem);
    font-weight: 800;
    line-height: 1.45;
  }

  #rk-sp-guide .rk-sp-formula small {
    display: block;
    color: var(--rk-sp-muted);
    font-size: 0.72rem;
    line-height: 1.55;
  }

  #rk-sp-guide .rk-sp-grid-4,
  #rk-sp-guide .rk-sp-grid-3,
  #rk-sp-guide .rk-sp-grid-2 {
    display: grid;
    gap: 16px;
  }

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

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

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

  #rk-sp-guide .rk-sp-card {
    min-width: 0;
    padding: 23px;
    border: 1px solid var(--rk-sp-line);
    border-radius: 19px;
    background: var(--rk-sp-white);
    box-shadow: 0 10px 26px rgba(16, 37, 54, 0.06);
  }

  #rk-sp-guide .rk-sp-card p:last-child {
    margin-bottom: 0;
  }

  #rk-sp-guide .rk-sp-pitch {
    display: inline-flex;
    min-width: 68px;
    min-height: 48px;
    align-items: center;
    justify-content: center;
    margin-bottom: 18px;
    padding: 8px 12px;
    border-radius: 13px;
    color: var(--rk-sp-white);
    background: var(--rk-sp-dark);
    font-size: 1rem;
    font-weight: 900;
  }

  #rk-sp-guide .rk-sp-card.rk-sp-special {
    border-color: #ffd2bf;
    background: var(--rk-sp-warm);
  }

  #rk-sp-guide .rk-sp-card.rk-sp-recommended {
    border-color: #9ee8ee;
    background: var(--rk-sp-cyan-soft);
  }

  #rk-sp-guide .rk-sp-card.rk-sp-caution {
    border-color: #ead58e;
    background: var(--rk-sp-yellow-soft);
  }

  #rk-sp-guide .rk-sp-mini-list {
    margin: 13px 0 0;
    padding: 0;
    list-style: none;
  }

  #rk-sp-guide .rk-sp-mini-list li {
    display: grid;
    grid-template-columns: 8px minmax(0, 1fr);
    gap: 9px;
    margin: 8px 0;
    color: var(--rk-sp-text);
    font-size: 0.78rem;
    line-height: 1.5;
  }

  #rk-sp-guide .rk-sp-mini-list li span:first-child {
    width: 7px;
    height: 7px;
    margin-top: 0.55em;
    border-radius: 50%;
    background: var(--rk-sp-orange);
  }

  #rk-sp-guide .rk-sp-table-wrap {
    margin: 28px 0;
  }

  #rk-sp-guide .rk-sp-table {
    width: 100%;
    border-collapse: separate;
    border: 1px solid var(--rk-sp-line);
    border-spacing: 0;
    border-radius: 18px;
    overflow: hidden;
    background: var(--rk-sp-white);
    font-size: 0.77rem;
  }

  #rk-sp-guide .rk-sp-table th,
  #rk-sp-guide .rk-sp-table td {
    padding: 14px 13px;
    border-bottom: 1px solid var(--rk-sp-line);
    vertical-align: top;
    text-align: left;
    line-height: 1.5;
  }

  #rk-sp-guide .rk-sp-table th {
    color: var(--rk-sp-white);
    background: var(--rk-sp-dark);
    font-size: 0.68rem;
    font-weight: 900;
    letter-spacing: 0.035em;
    text-transform: uppercase;
  }

  #rk-sp-guide .rk-sp-table tr:last-child td {
    border-bottom: 0;
  }

  #rk-sp-guide .rk-sp-table td strong {
    white-space: nowrap;
  }

  #rk-sp-guide .rk-sp-note {
    margin: 24px 0;
    padding: 20px 22px;
    border-left: 5px solid var(--rk-sp-blue);
    border-radius: 0 15px 15px 0;
    background: var(--rk-sp-cyan-soft);
  }

  #rk-sp-guide .rk-sp-note.rk-sp-note-warn {
    border-left-color: var(--rk-sp-orange);
    background: var(--rk-sp-warm);
  }

  #rk-sp-guide .rk-sp-note p:last-child {
    margin-bottom: 0;
  }

  #rk-sp-guide .rk-sp-lab {
    overflow: hidden;
    margin: 30px 0;
    border: 1px solid #b8e9ee;
    border-radius: 25px;
    background: #fbfeff;
    box-shadow: 0 20px 55px rgba(7, 143, 190, 0.1);
  }

  #rk-sp-guide .rk-sp-lab-head {
    padding: clamp(24px, 4vw, 36px);
    color: var(--rk-sp-white);
    background: linear-gradient(135deg, var(--rk-sp-dark), #12546c);
  }

  #rk-sp-guide .rk-sp-lab-head h3,
  #rk-sp-guide .rk-sp-lab-head p,
  #rk-sp-guide .rk-sp-lab-head strong {
    color: var(--rk-sp-white);
  }

  #rk-sp-guide .rk-sp-lab-head p:last-child {
    margin-bottom: 0;
    color: #d5e9ef;
  }

  #rk-sp-guide .rk-sp-lab-body {
    padding: clamp(22px, 4vw, 36px);
  }

  #rk-sp-guide .rk-sp-controls {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
  }

  #rk-sp-guide .rk-sp-control {
    min-width: 0;
    padding: 17px;
    border: 1px solid var(--rk-sp-line);
    border-radius: 16px;
    background: var(--rk-sp-white);
  }

  #rk-sp-guide .rk-sp-control label {
    display: flex;
    gap: 8px;
    align-items: baseline;
    justify-content: space-between;
    margin-bottom: 10px;
    color: var(--rk-sp-dark);
    font-size: 0.73rem;
    font-weight: 850;
    line-height: 1.35;
  }

  #rk-sp-guide .rk-sp-control output {
    color: var(--rk-sp-red);
    font-size: 0.74rem;
    font-weight: 900;
    white-space: nowrap;
  }

  #rk-sp-guide .rk-sp-control input[type="range"] {
    width: 100%;
    accent-color: var(--rk-sp-orange);
  }

  #rk-sp-guide .rk-sp-control select {
    width: 100%;
    min-height: 46px;
    padding: 9px 10px;
    border: 1px solid #c8d8df;
    border-radius: 10px;
    color: var(--rk-sp-dark);
    background: var(--rk-sp-white);
    font-size: 0.76rem;
    font-weight: 700;
  }

  #rk-sp-guide .rk-sp-control small {
    display: block;
    margin-top: 8px;
    color: var(--rk-sp-muted);
    font-size: 0.64rem;
    line-height: 1.45;
  }

  #rk-sp-guide .rk-sp-live-summary {
    margin: 22px 0;
    padding: 18px 20px;
    border-radius: 15px;
    color: var(--rk-sp-dark);
    background: var(--rk-sp-cyan-soft);
    font-size: 0.83rem;
    font-weight: 760;
  }

  #rk-sp-guide .rk-sp-results {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
  }

  #rk-sp-guide .rk-sp-result {
    min-width: 0;
    padding: 22px;
    border: 1px solid var(--rk-sp-line);
    border-radius: 18px;
    background: var(--rk-sp-white);
  }

  #rk-sp-guide .rk-sp-result-head {
    display: flex;
    gap: 12px;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 16px;
  }

  #rk-sp-guide .rk-sp-result-title {
    color: var(--rk-sp-dark);
    font-size: 1.08rem;
    font-weight: 900;
  }

  #rk-sp-guide .rk-sp-status {
    display: inline-flex;
    align-items: center;
    min-height: 31px;
    padding: 6px 10px;
    border-radius: 999px;
    color: var(--rk-sp-dark);
    background: var(--rk-sp-soft);
    font-size: 0.62rem;
    font-weight: 900;
    line-height: 1.25;
    text-align: center;
  }

  #rk-sp-guide .rk-sp-status.is-good {
    color: #0d5d4a;
    background: var(--rk-sp-green-soft);
  }

  #rk-sp-guide .rk-sp-status.is-warn {
    color: #765200;
    background: var(--rk-sp-yellow-soft);
  }

  #rk-sp-guide .rk-sp-status.is-bad {
    color: #9f2b27;
    background: #ffebe8;
  }

  #rk-sp-guide .rk-sp-result-values {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 11px;
  }

  #rk-sp-guide .rk-sp-result-value {
    padding: 12px;
    border-radius: 12px;
    background: var(--rk-sp-soft);
  }

  #rk-sp-guide .rk-sp-result-value span,
  #rk-sp-guide .rk-sp-result-value b {
    display: block;
  }

  #rk-sp-guide .rk-sp-result-value span {
    color: var(--rk-sp-muted);
    font-size: 0.61rem;
    font-weight: 760;
    line-height: 1.35;
  }

  #rk-sp-guide .rk-sp-result-value b {
    margin-top: 3px;
    color: var(--rk-sp-dark);
    font-size: 0.9rem;
    line-height: 1.3;
  }

  #rk-sp-guide .rk-sp-result-foot {
    margin-top: 13px;
    color: var(--rk-sp-muted);
    font-size: 0.65rem;
    line-height: 1.5;
  }

  #rk-sp-guide .rk-sp-chart-panel {
    margin: 25px 0;
    padding: clamp(19px, 3vw, 28px);
    border: 1px solid var(--rk-sp-line);
    border-radius: 19px;
    background: var(--rk-sp-white);
  }

  #rk-sp-guide .rk-sp-chart-panel h4 {
    margin-bottom: 5px;
  }

  #rk-sp-guide .rk-sp-chart-caption {
    margin-bottom: 16px;
    color: var(--rk-sp-muted);
    font-size: 0.71rem;
    line-height: 1.55;
  }

  #rk-sp-guide .rk-sp-chart-legend {
    display: flex;
    flex-wrap: wrap;
    gap: 9px 15px;
    margin-bottom: 12px;
    color: var(--rk-sp-text);
    font-size: 0.66rem;
    font-weight: 800;
  }

  #rk-sp-guide .rk-sp-chart-legend span {
    display: inline-flex;
    gap: 7px;
    align-items: center;
  }

  #rk-sp-guide .rk-sp-chart-legend i {
    width: 22px;
    height: 4px;
    border-radius: 99px;
  }

  #rk-sp-guide .rk-sp-chart-svg {
    display: block;
    width: 100%;
    height: auto;
    overflow: visible;
  }

  #rk-sp-guide .rk-sp-eff-list {
    display: grid;
    gap: 13px;
  }

  #rk-sp-guide .rk-sp-eff-row {
    display: grid;
    grid-template-columns: 76px minmax(0, 1fr) minmax(130px, auto);
    gap: 12px;
    align-items: center;
  }

  #rk-sp-guide .rk-sp-eff-label,
  #rk-sp-guide .rk-sp-eff-value {
    color: var(--rk-sp-dark);
    font-size: 0.7rem;
    font-weight: 850;
  }

  #rk-sp-guide .rk-sp-eff-value {
    text-align: right;
  }

  #rk-sp-guide .rk-sp-eff-track {
    height: 15px;
    overflow: hidden;
    border-radius: 999px;
    background: var(--rk-sp-soft);
  }

  #rk-sp-guide .rk-sp-eff-bar {
    width: 0;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, var(--rk-sp-cyan), var(--rk-sp-blue));
    transition: width 240ms ease;
  }

  #rk-sp-guide .rk-sp-equation {
    margin: 26px 0;
    padding: clamp(22px, 4vw, 34px);
    border-radius: 22px;
    color: var(--rk-sp-white);
    background: linear-gradient(135deg, var(--rk-sp-dark), #173f55);
  }

  #rk-sp-guide .rk-sp-equation h3,
  #rk-sp-guide .rk-sp-equation p,
  #rk-sp-guide .rk-sp-equation strong {
    color: var(--rk-sp-white);
  }

  #rk-sp-guide .rk-sp-equation-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
    margin-top: 20px;
  }

  #rk-sp-guide .rk-sp-equation-card {
    min-width: 0;
    padding: 17px;
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 15px;
    background: rgba(255, 255, 255, 0.07);
  }

  #rk-sp-guide .rk-sp-equation-card b,
  #rk-sp-guide .rk-sp-equation-card small {
    display: block;
    color: var(--rk-sp-white);
  }

  #rk-sp-guide .rk-sp-equation-card b {
    font-family: "SFMono-Regular", Consolas, "Liberation Mono", monospace;
    font-size: 0.9rem;
    line-height: 1.45;
  }

  #rk-sp-guide .rk-sp-equation-card small {
    margin-top: 7px;
    color: #c8dce4;
    font-size: 0.63rem;
    line-height: 1.45;
  }

  #rk-sp-guide .rk-sp-diagram-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
    margin: 28px 0;
  }

  #rk-sp-guide .rk-sp-diagram {
    min-width: 0;
    padding: 18px;
    border: 1px solid var(--rk-sp-line);
    border-radius: 19px;
    background: var(--rk-sp-soft);
  }

  #rk-sp-guide .rk-sp-diagram svg {
    display: block;
    width: 100%;
    height: auto;
  }

  #rk-sp-guide .rk-sp-diagram figcaption {
    margin-top: 13px;
    color: var(--rk-sp-muted);
    font-size: 0.68rem;
    line-height: 1.55;
  }

  #rk-sp-guide .rk-sp-checklist {
    display: grid;
    gap: 12px;
    margin: 24px 0;
    padding: 0;
    counter-reset: rk-sp-check;
    list-style: none;
  }

  #rk-sp-guide .rk-sp-checklist li {
    display: grid;
    grid-template-columns: 46px minmax(0, 1fr);
    gap: 14px;
    align-items: start;
    padding: 18px;
    border: 1px solid var(--rk-sp-line);
    border-radius: 16px;
    background: var(--rk-sp-white);
    counter-increment: rk-sp-check;
  }

  #rk-sp-guide .rk-sp-checklist li::before {
    content: counter(rk-sp-check, decimal-leading-zero);
    display: inline-flex;
    width: 42px;
    height: 42px;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    color: var(--rk-sp-white);
    background: var(--rk-sp-dark);
    font-size: 0.67rem;
    font-weight: 900;
  }

  #rk-sp-guide .rk-sp-checklist strong,
  #rk-sp-guide .rk-sp-checklist span {
    display: block;
  }

  #rk-sp-guide .rk-sp-checklist span {
    margin-top: 4px;
    color: var(--rk-sp-text);
    font-size: 0.78rem;
    line-height: 1.55;
  }

  #rk-sp-guide .rk-sp-faq {
    display: grid;
    gap: 12px;
  }

  #rk-sp-guide .rk-sp-faq details {
    border: 1px solid var(--rk-sp-line);
    border-radius: 16px;
    background: var(--rk-sp-white);
  }

  #rk-sp-guide .rk-sp-faq summary {
    position: relative;
    padding: 19px 54px 19px 20px;
    color: var(--rk-sp-dark);
    cursor: pointer;
    font-size: 0.86rem;
    font-weight: 850;
    line-height: 1.45;
    list-style: none;
  }

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

  #rk-sp-guide .rk-sp-faq summary::after {
    content: "+";
    position: absolute;
    top: 50%;
    right: 18px;
    display: inline-flex;
    width: 28px;
    height: 28px;
    align-items: center;
    justify-content: center;
    border-radius: 9px;
    color: var(--rk-sp-white);
    background: var(--rk-sp-dark);
    font-size: 1rem;
    transform: translateY(-50%);
  }

  #rk-sp-guide .rk-sp-faq details[open] summary::after {
    content: "−";
    background: var(--rk-sp-orange);
  }

  #rk-sp-guide .rk-sp-faq-answer {
    padding: 0 20px 20px;
  }

  #rk-sp-guide .rk-sp-faq-answer p:last-child {
    margin-bottom: 0;
  }

  #rk-sp-guide .rk-sp-cta {
    display: grid;
    grid-template-columns: 1fr;
    gap: 24px;
    margin: 46px 0;
    padding: clamp(26px, 5vw, 42px);
    border-radius: 23px;
    color: var(--rk-sp-white);
    background:
      radial-gradient(circle at 92% 18%, rgba(255, 106, 42, 0.3), transparent 30%),
      linear-gradient(135deg, var(--rk-sp-dark), #173f55);
  }

  #rk-sp-guide .rk-sp-cta h3,
  #rk-sp-guide .rk-sp-cta p,
  #rk-sp-guide .rk-sp-cta strong {
    color: var(--rk-sp-white);
  }

  #rk-sp-guide .rk-sp-cta p {
    margin-bottom: 0;
    color: #d7e7ec;
  }

  #rk-sp-guide .rk-sp-cta-actions {
    display: grid;
    gap: 9px;
    min-width: 0;
  }

  #rk-sp-guide .rk-sp-button {
    display: inline-flex;
    min-height: 54px;
    align-items: center;
    justify-content: center;
    padding: 13px 18px;
    border-radius: 13px;
    color: var(--rk-sp-white);
    background: linear-gradient(145deg, var(--rk-sp-orange), var(--rk-sp-red));
    box-shadow: 0 12px 26px rgba(227, 61, 53, 0.22);
    font-size: 0.8rem;
    font-weight: 900;
    text-align: center;
    text-decoration: none;
  }

  #rk-sp-guide .rk-sp-button:hover,
  #rk-sp-guide .rk-sp-button:focus-visible {
    color: var(--rk-sp-white);
    transform: translateY(-1px);
  }

  #rk-sp-guide .rk-sp-cta small {
    color: #afc8d1;
    font-size: 0.66rem;
    line-height: 1.45;
    text-align: center;
  }

  #rk-sp-guide .rk-sp-sources {
    margin-top: 44px;
    padding: 23px;
    border: 1px solid var(--rk-sp-line);
    border-radius: 17px;
    background: var(--rk-sp-soft);
    color: var(--rk-sp-muted);
    font-size: 0.69rem;
    line-height: 1.65;
  }

  #rk-sp-guide .rk-sp-sources strong {
    display: block;
    margin-bottom: 8px;
  }

  #rk-sp-guide .rk-sp-author-box {
    overflow: hidden;
    margin-top: 52px;
    border: 1px solid #cfe1e9;
    border-radius: 25px;
    background: var(--rk-sp-white);
    box-shadow: 0 20px 52px rgba(16, 37, 54, 0.09);
  }

  #rk-sp-guide .rk-sp-author-box,
  #rk-sp-guide .rk-sp-author-box * {
    box-sizing: border-box;
  }

  #rk-sp-guide .rk-sp-author-box h2::before,
  #rk-sp-guide .rk-sp-author-box h2::after,
  #rk-sp-guide .rk-sp-author-box h3::before,
  #rk-sp-guide .rk-sp-author-box h3::after,
  #rk-sp-guide .rk-sp-author-box p::before,
  #rk-sp-guide .rk-sp-author-box p::after,
  #rk-sp-guide .rk-sp-author-box a::before,
  #rk-sp-guide .rk-sp-author-box a::after,
  #rk-sp-guide .rk-sp-author-box button::before,
  #rk-sp-guide .rk-sp-author-box button::after {
    content: none !important;
    display: none !important;
  }

  #rk-sp-guide .rk-sp-author-head {
    display: flex;
    gap: 18px;
    align-items: center;
    justify-content: space-between;
    padding: clamp(24px, 4vw, 38px);
    border-bottom: 5px solid var(--rk-sp-cyan);
    color: var(--rk-sp-white);
    background: linear-gradient(135deg, var(--rk-sp-dark), #17465c);
  }

  #rk-sp-guide .rk-sp-author-head h2 {
    margin-bottom: 6px;
    color: var(--rk-sp-white);
    font-size: clamp(1.55rem, 3.5vw, 2.45rem);
  }

  #rk-sp-guide .rk-sp-author-head p {
    margin: 0;
    color: #d7e9ef;
    font-size: 0.8rem;
  }

  #rk-sp-guide .rk-sp-author-badge {
    flex: 0 0 auto;
    padding: 10px 15px;
    border: 1px solid rgba(40, 201, 218, 0.45);
    border-radius: 13px;
    color: #7cebf2;
    background: rgba(40, 201, 218, 0.08);
    font-size: 0.7rem;
    font-weight: 900;
    letter-spacing: 0.08em;
  }

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

  #rk-sp-guide .rk-sp-author-profile {
    padding: 32px;
    border-right: 1px solid var(--rk-sp-line);
    background: var(--rk-sp-soft);
    text-align: center;
  }

  #rk-sp-guide .rk-sp-author-photo {
    display: block;
    width: 148px;
    height: 148px;
    margin: 0 auto 19px;
    border: 5px solid var(--rk-sp-white);
    border-radius: 50%;
    object-fit: cover;
    box-shadow: 0 16px 32px rgba(16, 37, 54, 0.15);
  }

  #rk-sp-guide .rk-sp-author-name {
    margin-bottom: 7px;
    font-size: 1.28rem;
  }

  #rk-sp-guide .rk-sp-author-role {
    display: block;
    color: var(--rk-sp-blue);
    font-size: 0.71rem;
    font-weight: 900;
    letter-spacing: 0.055em;
    line-height: 1.55;
    text-transform: uppercase;
  }

  #rk-sp-guide .rk-sp-author-links {
    display: grid;
    gap: 8px;
    margin-top: 22px;
  }

  #rk-sp-guide .rk-sp-author-link {
    display: flex;
    min-height: 43px;
    align-items: center;
    justify-content: center;
    padding: 9px 12px;
    border: 1px solid #cadde5;
    border-radius: 11px;
    color: var(--rk-sp-dark);
    background: var(--rk-sp-white);
    font-size: 0.72rem;
    font-weight: 850;
    text-decoration: none;
  }

  #rk-sp-guide .rk-sp-author-link:hover,
  #rk-sp-guide .rk-sp-author-link:focus-visible {
    border-color: var(--rk-sp-cyan);
    color: var(--rk-sp-blue);
  }

  #rk-sp-guide .rk-sp-author-main {
    min-width: 0;
  }

  #rk-sp-guide .rk-sp-author-quote {
    position: relative;
    margin: 0;
    padding: clamp(30px, 5vw, 52px);
    border-bottom: 1px solid var(--rk-sp-line);
  }

  #rk-sp-guide .rk-sp-author-quote-mark {
    display: block;
    height: 38px;
    color: var(--rk-sp-cyan);
    font-family: Georgia, serif;
    font-size: 3.8rem;
    font-weight: 900;
    line-height: 0.9;
  }

  #rk-sp-guide .rk-sp-author-quote p {
    margin: 8px 0 0;
    color: var(--rk-sp-dark);
    font-size: clamp(1rem, 2vw, 1.22rem);
    font-style: italic;
    font-weight: 760;
    line-height: 1.72;
  }

  #rk-sp-guide .rk-sp-author-quote footer {
    margin-top: 14px;
    color: var(--rk-sp-muted);
    font-size: 0.69rem;
    font-weight: 820;
  }

  #rk-sp-guide .rk-sp-author-tabs {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    border-bottom: 1px solid var(--rk-sp-line);
    background: var(--rk-sp-soft);
  }

  #rk-sp-guide .rk-sp-author-tab {
    min-height: 53px;
    padding: 11px;
    border: 0;
    border-right: 1px solid var(--rk-sp-line);
    color: var(--rk-sp-muted);
    background: transparent;
    cursor: pointer;
    font-size: 0.68rem;
    font-weight: 900;
    letter-spacing: 0.035em;
    text-transform: uppercase;
  }

  #rk-sp-guide .rk-sp-author-tab:last-child {
    border-right: 0;
  }

  #rk-sp-guide .rk-sp-author-tab:hover,
  #rk-sp-guide .rk-sp-author-tab:focus-visible {
    color: var(--rk-sp-blue);
    background: var(--rk-sp-cyan-soft);
  }

  #rk-sp-guide .rk-sp-author-tab[aria-selected="true"] {
    color: var(--rk-sp-blue);
    background: var(--rk-sp-white);
    box-shadow: inset 0 -4px 0 var(--rk-sp-blue);
  }

  #rk-sp-guide .rk-sp-author-panels {
    padding: clamp(25px, 4vw, 40px);
  }

  #rk-sp-guide .rk-sp-author-panel[hidden] {
    display: none;
  }

  #rk-sp-guide .rk-sp-author-panel p:last-child {
    margin-bottom: 0;
  }

  #rk-sp-guide .rk-sp-portal-list {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    margin-top: 18px;
  }

  #rk-sp-guide .rk-sp-portal-list a {
    display: flex;
    min-height: 48px;
    align-items: center;
    justify-content: center;
    padding: 10px;
    border: 1px solid var(--rk-sp-line);
    border-radius: 12px;
    color: var(--rk-sp-dark);
    background: var(--rk-sp-soft);
    font-size: 0.72rem;
    font-weight: 900;
    text-align: center;
    text-decoration: none;
  }

  #rk-sp-guide .rk-sp-disclaimer {
    margin-top: 28px;
    padding-top: 22px;
    border-top: 1px solid var(--rk-sp-line);
    color: var(--rk-sp-muted);
    font-size: 0.69rem;
    line-height: 1.65;
  }

  #rk-sp-guide .rk-sp-sr-only {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
  }

  @media (prefers-reduced-motion: reduce) {
    #rk-sp-guide .rk-sp-eff-bar {
      transition: none;
    }
  }

  @media (max-width: 940px) {
    #rk-sp-guide .rk-sp-nav {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    #rk-sp-guide .rk-sp-verdict {
      grid-template-columns: 1fr;
    }

    #rk-sp-guide .rk-sp-verdict-number {
      justify-self: start;
    }

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

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

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

    #rk-sp-guide .rk-sp-author-profile {
      padding: 26px 20px;
    }
  }

  @media (max-width: 720px) {
    #rk-sp-guide {
      margin: 18px auto 46px;
      font-size: 16px;
    }

    #rk-sp-guide .rk-sp-shell {
      border-radius: 21px;
    }

    #rk-sp-guide .rk-sp-hero,
    #rk-sp-guide .rk-sp-content {
      padding: 27px 20px;
    }

    #rk-sp-guide .rk-sp-nav {
      grid-template-columns: 1fr;
      padding: 18px;
    }

    #rk-sp-guide .rk-sp-formulas,
    #rk-sp-guide .rk-sp-grid-4,
    #rk-sp-guide .rk-sp-grid-3,
    #rk-sp-guide .rk-sp-grid-2,
    #rk-sp-guide .rk-sp-controls,
    #rk-sp-guide .rk-sp-results,
    #rk-sp-guide .rk-sp-diagram-grid,
    #rk-sp-guide .rk-sp-equation-grid {
      grid-template-columns: 1fr;
    }

    #rk-sp-guide .rk-sp-card,
    #rk-sp-guide .rk-sp-result,
    #rk-sp-guide .rk-sp-chart-panel {
      padding: 18px;
    }

    #rk-sp-guide .rk-sp-table,
    #rk-sp-guide .rk-sp-table tbody,
    #rk-sp-guide .rk-sp-table tr,
    #rk-sp-guide .rk-sp-table td {
      display: block;
      width: 100%;
    }

    #rk-sp-guide .rk-sp-table {
      border: 0;
      background: transparent;
    }

    #rk-sp-guide .rk-sp-table thead {
      position: absolute;
      width: 1px;
      height: 1px;
      overflow: hidden;
      clip: rect(0, 0, 0, 0);
    }

    #rk-sp-guide .rk-sp-table tr {
      margin-bottom: 14px;
      padding: 9px 15px;
      border: 1px solid var(--rk-sp-line);
      border-radius: 16px;
      background: var(--rk-sp-white);
      box-shadow: 0 8px 22px rgba(16, 37, 54, 0.05);
    }

    #rk-sp-guide .rk-sp-table td {
      display: grid;
      grid-template-columns: minmax(105px, 0.8fr) minmax(0, 1.2fr);
      gap: 12px;
      padding: 10px 0;
      border-bottom: 1px solid var(--rk-sp-line);
    }

    #rk-sp-guide .rk-sp-table td::before {
      content: attr(data-label);
      color: var(--rk-sp-dark);
      font-size: 0.64rem;
      font-weight: 900;
      letter-spacing: 0.02em;
      line-height: 1.45;
      text-transform: uppercase;
    }

    #rk-sp-guide .rk-sp-table tr:last-child td,
    #rk-sp-guide .rk-sp-table td:last-child {
      border-bottom: 0;
    }

    #rk-sp-guide .rk-sp-eff-row {
      grid-template-columns: 66px minmax(0, 1fr);
    }

    #rk-sp-guide .rk-sp-eff-value {
      grid-column: 1 / -1;
      margin-top: -6px;
      text-align: left;
    }

    #rk-sp-guide .rk-sp-author-head {
      display: block;
    }

    #rk-sp-guide .rk-sp-author-badge {
      display: inline-block;
      margin-top: 14px;
    }

    #rk-sp-guide .rk-sp-author-layout {
      grid-template-columns: 1fr;
    }

    #rk-sp-guide .rk-sp-author-profile {
      border-right: 0;
      border-bottom: 1px solid var(--rk-sp-line);
    }

    #rk-sp-guide .rk-sp-author-tabs {
      grid-template-columns: 1fr;
    }

    #rk-sp-guide .rk-sp-author-tab,
    #rk-sp-guide .rk-sp-author-tab:last-child {
      border-right: 0;
      border-bottom: 1px solid var(--rk-sp-line);
    }

    #rk-sp-guide .rk-sp-author-tab:last-child {
      border-bottom: 0;
    }

    #rk-sp-guide .rk-sp-author-tab[aria-selected="true"] {
      box-shadow: inset 4px 0 0 var(--rk-sp-blue);
    }

    #rk-sp-guide .rk-sp-portal-list {
      grid-template-columns: 1fr;
    }
  }

  @media (max-width: 430px) {
    #rk-sp-guide .rk-sp-hero,
    #rk-sp-guide .rk-sp-content {
      padding-right: 16px;
      padding-left: 16px;
    }

    #rk-sp-guide .rk-sp-result-values {
      grid-template-columns: 1fr;
    }

    #rk-sp-guide .rk-sp-table td {
      grid-template-columns: 1fr;
      gap: 3px;
    }

    #rk-sp-guide .rk-sp-author-strip {
      align-items: flex-start;
    }

    #rk-sp-guide .rk-sp-cta {
      padding: 24px 18px;
    }
  }
</style>

<article id="rk-sp-guide" itemscope="" itemtype="https://schema.org/TechArticle">
  <div class="rk-sp-shell">
    <div class="rk-sp-progress-track" aria-hidden="true"><div class="rk-sp-progress"></div></div>

    <header class="rk-sp-hero">
      <div class="rk-sp-badge"><span class="rk-sp-badge-dot" aria-hidden="true"></span>Analiza techniczna • pompa ciepła</div>
      <h2 itemprop="alternativeHeadline">Rozstaw rur ogrzewania podłogowego przy pompie ciepła – <span>5, 10, 15 czy 20 cm?</span></h2>

      <div class="rk-sp-hook">
        <p><strong>Rozstaw rur nie jest ustawieniem wybieranym z katalogu.</strong> Decyduje, czy pomieszczenie otrzyma potrzebną moc przy wodzie o temperaturze korzystnej dla pompy ciepła, czy instalacja będzie wymagała podnoszenia temperatury zasilania.</p>
      </div>

      <p class="rk-sp-hero-lead">W poradniku porównuję cztery rozstawy, pokazuję zużycie rury, przepływy i opory hydrauliczne oraz udostępniam interaktywny przykład: ten sam pokój, ta sama strata ciepła, ale cztery różne warianty ułożenia rur.</p>

      <div class="rk-sp-hero-meta" aria-label="Informacje o opracowaniu">
        <span><i aria-hidden="true"></i>Autor: Robert Kucharski</span>
        <span><i aria-hidden="true"></i>Pierwotna publikacja: 3 marca 2025 r.</span>
        <span><i aria-hidden="true"></i>Aktualizacja: 22 sierpnia 2026 r.</span>
      </div>

      <div class="rk-sp-author-strip">
        <img decoding="async" src="https://projekt-ogrzewania.pl/wp-content/uploads/2026/04/PO-Robert-Kucharski.webp" alt="Robert Kucharski – projektant instalacji sanitarnych" width="58" height="58" loading="eager">
        <div>
          <b>Robert Kucharski</b>
          <small>Projektant instalacji sanitarnych • HVAC • ogrzewanie podłogowe • obliczenia hydrauliczne</small>
        </div>
      </div>
    </header>

    <nav class="rk-sp-nav" aria-label="Spis treści artykułu">
      <a href="#rk-sp-zasada"><span class="rk-sp-nav-num">01</span>Dlaczego rozstaw jest ważny?</a>
      <a href="#rk-sp-porownanie"><span class="rk-sp-nav-num">02</span>Porównanie 5–20 cm</a>
      <a href="#rk-sp-kalkulator"><span class="rk-sp-nav-num">03</span>Interaktywny przykład</a>
      <a href="#rk-sp-wykres"><span class="rk-sp-nav-num">04</span>Moc i temperatura wody</a>
      <a href="#rk-sp-hydraulika"><span class="rk-sp-nav-num">05</span>Przepływ i opory</a>
      <a href="#rk-sp-strefy"><span class="rk-sp-nav-num">06</span>Łazienki i przeszklenia</a>
      <a href="#rk-sp-schematy"><span class="rk-sp-nav-num">07</span>Przekrój i układ pętli</a>
      <a href="#rk-sp-dobor"><span class="rk-sp-nav-num">08</span>Procedura doboru</a>
      <a href="#rk-sp-faq"><span class="rk-sp-nav-num">09</span>FAQ</a>
    </nav>

    <div class="rk-sp-content" itemprop="articleBody">
      <section class="rk-sp-section" id="rk-sp-zasada" aria-labelledby="rk-sp-h-zasada">
        <div class="rk-sp-section-head">
          <span class="rk-sp-eyebrow">Najpierw obciążenie cieplne, później rozstaw</span>
          <h2 id="rk-sp-h-zasada">Dlaczego rozstaw rur ogrzewania podłogowego przy pompie ciepła ma tak duże znaczenie?</h2>
        </div>

        <p class="rk-sp-lead rk-sp-dropcap">Pompa ciepła nie potrzebuje „zawsze 10 cm”. Potrzebuje instalacji zdolnej przekazać projektową moc przy możliwie niskiej temperaturze wody. Punktem wyjścia jest obciążenie cieplne konkretnego pomieszczenia, a nie rodzaj źródła ciepła zapisany na tabliczce urządzenia.</p>

        <p>Jeżeli salon traci obliczeniowo 900 W, a aktywna powierzchnia grzewcza wynosi 20 m², podłoga musi przekazać średnio 45 W/m². Tę samą moc można próbować uzyskać przy rozstawie 10, 15 albo 20 cm, lecz każdy wariant będzie wymagał innej średniej temperatury wody i da inny rozkład temperatury na powierzchni. Dlatego poprawny projekt zaczyna się od obciążenia cieplnego zgodnego z metodą EN 12831, następnie przechodzi przez obliczenia wydajności powierzchni według EN 1264, a dopiero później ustala rozstaw i przepływ.</p>

        <div class="rk-sp-verdict">
          <div>
            <span class="rk-sp-eyebrow">Najważniejszy wniosek</span>
            <h3>Gęstszy rozstaw nie oszczędza energii sam z siebie.</h3>
            <p>Może jednak pozwolić przekazać wymaganą moc przy niższej temperaturze zasilania. Mniejsza różnica temperatur między źródłem dolnym a instalacją grzewczą tworzy lepsze warunki termodynamiczne dla pompy ciepła.</p>
          </div>
          <div class="rk-sp-verdict-number" aria-label="Typowy cel temperatury zasilania dla instalacji niskotemperaturowej">
            <b>30–35°C</b>
            <small>częsty zakres projektowy, ale nie uniwersalna gwarancja</small>
          </div>
        </div>

        <div class="rk-sp-formulas">
          <div class="rk-sp-formula">
            <h3>Wymagana moc jednostkowa</h3>
            <span class="rk-sp-formula-code">q<sub>req</sub> = Φ<sub>HL</sub> / A<sub>H</sub></span>
            <small>q<sub>req</sub> — wymagany strumień ciepła [W/m²], Φ<sub>HL</sub> — projektowe obciążenie pomieszczenia [W], A<sub>H</sub> — aktywna powierzchnia podłogi [m²].</small>
          </div>
          <div class="rk-sp-formula">
            <h3>Średnia różnica temperatur</h3>
            <span class="rk-sp-formula-code">Δθ<sub>H</sub> = (θ<sub>V</sub> − θ<sub>R</sub>) / ln[(θ<sub>V</sub> − θ<sub>i</sub>)/(θ<sub>R</sub> − θ<sub>i</sub>)]</span>
            <small>W obliczeniach powierzchni grzewczej liczy się temperatura zasilania, powrotu i pomieszczenia, a nie samo hasło „zasilanie 35°C”.</small>
          </div>
        </div>

        <p>Więcej o granicach temperatury wody opisuję w analizie <a href="https://projekt-ogrzewania.pl/maksymalna-temperatura-zasilania-podlogowki/">maksymalnej temperatury zasilania podłogówki</a>, natomiast metodykę cieplną rozwija opracowanie dotyczące <a href="https://projekt-ogrzewania.pl/pn-en-1264-norma-ktora-definiuje-ogrzewanie-podlogowe/">normy PN-EN 1264</a>.</p>
      </section>

      <section class="rk-sp-section" id="rk-sp-porownanie" aria-labelledby="rk-sp-h-porownanie">
        <div class="rk-sp-section-head">
          <span class="rk-sp-eyebrow">Cztery rozstawy, cztery różne konsekwencje</span>
          <h2 id="rk-sp-h-porownanie">Techniczne porównanie rozstawów rur 5, 10, 15 i 20 cm</h2>
          <p>Żaden z poniższych rozstawów nie jest automatycznie dobry albo zły. Ocenie podlegają równocześnie moc cieplna, temperatura powierzchni, temperatura wody, długość pętli i opór hydrauliczny.</p>
        </div>

        <div class="rk-sp-grid-4">
          <article class="rk-sp-card rk-sp-special">
            <span class="rk-sp-pitch">5 cm</span>
            <h3>Rozstaw specjalny</h3>
            <p>Największe zagęszczenie rur, ale również największe zużycie materiału i liczba obwodów.</p>
            <ul class="rk-sp-mini-list">
              <li><span aria-hidden="true"></span><span>około 21 m rury na 1 m² z zapasem trasowym 5%</span></li>
              <li><span aria-hidden="true"></span><span>strefy brzegowe i małe powierzchnie o dużym obciążeniu</span></li>
              <li><span aria-hidden="true"></span><span>konieczna kontrola promienia gięcia i długości pętli</span></li>
            </ul>
          </article>

          <article class="rk-sp-card rk-sp-recommended">
            <span class="rk-sp-pitch">10 cm</span>
            <h3>Rozstaw gęsty</h3>
            <p>Częsty wybór dla instalacji niskotemperaturowych, ale nadal powinien wynikać z obliczeń.</p>
            <ul class="rk-sp-mini-list">
              <li><span aria-hidden="true"></span><span>około 10,5 m rury na 1 m²</span></li>
              <li><span aria-hidden="true"></span><span>niższa wymagana temperatura wody niż przy 15–20 cm</span></li>
              <li><span aria-hidden="true"></span><span>większa liczba pętli i sekcji rozdzielacza</span></li>
            </ul>
          </article>

          <article class="rk-sp-card">
            <span class="rk-sp-pitch">15 cm</span>
            <h3>Rozstaw pośredni</h3>
            <p>Może być poprawny w dobrze izolowanych pomieszczeniach o umiarkowanym obciążeniu cieplnym.</p>
            <ul class="rk-sp-mini-list">
              <li><span aria-hidden="true"></span><span>około 7,0 m rury na 1 m²</span></li>
              <li><span aria-hidden="true"></span><span>mniejszy koszt materiału i mniej pętli</span></li>
              <li><span aria-hidden="true"></span><span>wymaga sprawdzenia mocy przy wybranej okładzinie</span></li>
            </ul>
          </article>

          <article class="rk-sp-card rk-sp-caution">
            <span class="rk-sp-pitch">20 cm</span>
            <h3>Rozstaw rzadki</h3>
            <p>Nie jest zakazany, lecz ma mniejszą rezerwę mocy i większe różnice temperatury powierzchni.</p>
            <ul class="rk-sp-mini-list">
              <li><span aria-hidden="true"></span><span>około 5,25 m rury na 1 m²</span></li>
              <li><span aria-hidden="true"></span><span>tylko dla niskiego obciążenia potwierdzonego obliczeniami</span></li>
              <li><span aria-hidden="true"></span><span>ryzyko potrzeby podniesienia temperatury zasilania</span></li>
            </ul>
          </article>
        </div>

        <div class="rk-sp-table-wrap">
          <table class="rk-sp-table">
            <thead>
              <tr>
                <th scope="col">Rozstaw</th>
                <th scope="col">Geometria rury</th>
                <th scope="col">Z zapasem 5%</th>
                <th scope="col">Wpływ na temperaturę wody</th>
                <th scope="col">Najczęstsze zastosowanie</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td data-label="Rozstaw"><strong>5 cm</strong></td>
                <td data-label="Geometria rury">20,0 m/m²</td>
                <td data-label="Z zapasem 5%">21,0 m/m²</td>
                <td data-label="Temperatura wody">najniższa z porównywanych</td>
                <td data-label="Zastosowanie">strefa specjalna, brzegowa, mała aktywna powierzchnia</td>
              </tr>
              <tr>
                <td data-label="Rozstaw"><strong>10 cm</strong></td>
                <td data-label="Geometria rury">10,0 m/m²</td>
                <td data-label="Z zapasem 5%">10,5 m/m²</td>
                <td data-label="Temperatura wody">niska przy typowych obciążeniach</td>
                <td data-label="Zastosowanie">łazienki, panele o wyższym oporze, strefy obciążone</td>
              </tr>
              <tr>
                <td data-label="Rozstaw"><strong>15 cm</strong></td>
                <td data-label="Geometria rury">6,67 m/m²</td>
                <td data-label="Z zapasem 5%">7,0 m/m²</td>
                <td data-label="Temperatura wody">umiarkowana, zależna od okładziny</td>
                <td data-label="Zastosowanie">dobrze izolowane pokoje o małych stratach</td>
              </tr>
              <tr>
                <td data-label="Rozstaw"><strong>20 cm</strong></td>
                <td data-label="Geometria rury">5,0 m/m²</td>
                <td data-label="Z zapasem 5%">5,25 m/m²</td>
                <td data-label="Temperatura wody">najwyższa z porównywanych</td>
                <td data-label="Zastosowanie">pomieszczenia o bardzo niskim obciążeniu, po weryfikacji</td>
              </tr>
            </tbody>
          </table>
        </div>

        <div class="rk-sp-note rk-sp-note-warn">
          <p><strong>Skąd wartości metrów rury?</strong> Dla regularnego pola grzewczego długość geometryczna wynosi w przybliżeniu 1/s, gdzie s jest rozstawem w metrach. Zapas 5% uwzględnia łuki i niedoskonałość geometrii, ale nie obejmuje doprowadzeń od rozdzielacza. Szczegółowe wyjaśnienie zawiera poradnik <a href="https://projekt-ogrzewania.pl/ile-rury-na-m%C2%B2-ogrzewania-podlogowego/">ile rury potrzeba na 1 m² ogrzewania podłogowego</a>.</p>
        </div>
      </section>

      <section class="rk-sp-section" id="rk-sp-kalkulator" aria-labelledby="rk-sp-h-kalkulator">
        <div class="rk-sp-section-head">
          <span class="rk-sp-eyebrow">Ten sam pokój, cztery warianty</span>
          <h2 id="rk-sp-h-kalkulator">Interaktywny przykład: dlaczego rozstaw rur przy pompie ciepła jest tak ważny?</h2>
          <p>Ustaw parametry pomieszczenia. Narzędzie porówna jednocześnie rozstawy 5, 10, 15 i 20 cm, aby pokazać kompromis między temperaturą wody, długością rury, liczbą obwodów i hydrauliką.</p>
        </div>

        <div class="rk-sp-lab" aria-label="Interaktywny model porównawczy rozstawu rur">
          <div class="rk-sp-lab-head">
            <h3>Model porównawczy dla rury 16×2 mm</h3>
            <p>Założenie bazowe: mokry system podłogowy, typowa wylewka, woda jako czynnik grzewczy. Obliczenia mają charakter edukacyjny i nie zastępują projektu zgodnego z EN 1264.</p>
          </div>

          <div class="rk-sp-lab-body">
            <div class="rk-sp-controls">
              <div class="rk-sp-control">
                <label for="rk-sp-area">Aktywna powierzchnia <output id="rk-sp-area-out" for="rk-sp-area">20 m²</output></label>
                <input id="rk-sp-area" type="range" min="6" max="50" step="1" value="20">
                <small>Powierzchnia rzeczywiście pokryta rurami, bez stałej zabudowy.</small>
              </div>

              <div class="rk-sp-control">
                <label for="rk-sp-load">Obciążenie jednostkowe <output id="rk-sp-load-out" for="rk-sp-load">50 W/m²</output></label>
                <input id="rk-sp-load" type="range" min="20" max="100" step="5" value="50">
                <small>Projektowa strata ciepła podzielona przez aktywną powierzchnię.</small>
              </div>

              <div class="rk-sp-control">
                <label for="rk-sp-floor">Opór okładziny podłogowej</label>
                <select id="rk-sp-floor">
                  <option value="0.01">Płytki / kamień — R 0,01</option>
                  <option value="0.05">Winyl / cienka okładzina — R 0,05</option>
                  <option value="0.10" selected="">Panele / drewno — R 0,10</option>
                  <option value="0.15">Okładzina graniczna — R 0,15</option>
                </select>
                <small>R<sub>λ,B</sub> w m²K/W. Do projektu wpisuje się wartość konkretnego produktu.</small>
              </div>

              <div class="rk-sp-control">
                <label for="rk-sp-zone">Rodzaj strefy</label>
                <select id="rk-sp-zone">
                  <option value="20|29" selected="">Pokój — 20°C / podłoga maks. 29°C</option>
                  <option value="24|33">Łazienka — 24°C / podłoga maks. 33°C</option>
                  <option value="20|35">Strefa brzegowa — 20°C / podłoga maks. 35°C</option>
                </select>
                <small>Temperatura pomieszczenia i orientacyjna granica temperatury powierzchni.</small>
              </div>

              <div class="rk-sp-control">
                <label for="rk-sp-delta">Spadek temperatury wody ΔT</label>
                <select id="rk-sp-delta">
                  <option value="3">3 K</option>
                  <option value="5" selected="">5 K</option>
                  <option value="7">7 K</option>
                </select>
                <small>Różnica między zasilaniem i powrotem wpływa na przepływ oraz średnią temperaturę wody.</small>
              </div>

              <div class="rk-sp-control">
                <label for="rk-sp-loop-max">Przyjęty limit długości pętli</label>
                <select id="rk-sp-loop-max">
                  <option value="80">80 m</option>
                  <option value="90" selected="">90 m</option>
                  <option value="100">100 m</option>
                </select>
                <small>To parametr modelu, nie uniwersalna wartość normowa.</small>
              </div>
            </div>

            <div class="rk-sp-live-summary" id="rk-sp-live-summary" aria-live="polite">Pomieszczenie 20 m² wymaga 1000 W mocy grzewczej, czyli 50 W/m².</div>

            <div class="rk-sp-results" id="rk-sp-results" aria-live="polite"></div>

            <div class="rk-sp-chart-panel" id="rk-sp-wykres">
              <h4>Moc podłogi a rozstaw rur i temperatura zasilania</h4>
              <p class="rk-sp-chart-caption">Wykres aktualizuje się po zmianie okładziny, rodzaju strefy i ΔT. Linia limitu powierzchni pokazuje, że brakującej mocy nie wolno zawsze „dobić” wyższą temperaturą.</p>
              <div class="rk-sp-chart-legend" aria-hidden="true">
                <span><i style="background:#28c9da"></i>30°C</span>
                <span><i style="background:#078fbe"></i>35°C</span>
                <span><i style="background:#ff7438"></i>40°C</span>
                <span><i style="background:#e33d35"></i>45°C</span>
                <span><i style="height:2px;background:#687986"></i>limit powierzchni</span>
              </div>
              <div id="rk-sp-power-chart"></div>
            </div>

            <div class="rk-sp-chart-panel">
              <h4>Wymagana temperatura zasilania i względny indeks warunków pracy pompy</h4>
              <p class="rk-sp-chart-caption">Indeks nie jest katalogowym COP. Porównuje wyłącznie wpływ wymaganego podniesienia temperatury przy tej samej temperaturze źródła 0°C; najlepszy wariant w bieżącym porównaniu otrzymuje 100%.</p>
              <div class="rk-sp-eff-list" id="rk-sp-eff-list" aria-live="polite"></div>
            </div>

            <div class="rk-sp-note">
              <p><strong>Jak czytać wynik?</strong> Najpierw sprawdź, czy moc mieści się w limicie temperatury powierzchni. Następnie oceń temperaturę zasilania, liczbę pętli i opór hydrauliczny. Najniższa temperatura wody nie zawsze oznacza najlepszy projekt, jeśli wymaga nieproporcjonalnej liczby obwodów i rozdzielaczy.</p>
            </div>
          </div>
        </div>
      </section>

      <section class="rk-sp-section" id="rk-sp-wplyw" aria-labelledby="rk-sp-h-wplyw">
        <div class="rk-sp-section-head">
          <span class="rk-sp-eyebrow">Temperatura podnoszenia decyduje o warunkach pracy</span>
          <h2 id="rk-sp-h-wplyw">Wpływ rozstawu rur na temperaturę zasilania i sprawność pompy ciepła</h2>
        </div>

        <p>W pompie ciepła sprężarka przenosi energię z niższego poziomu temperatury na wyższy. Im większa jest różnica między źródłem a temperaturą wymaganą przez instalację, tym trudniejsze są warunki pracy. Dlatego rozstaw rur wpływa na efektywność pośrednio: zmienia zdolność podłogi do przekazania mocy przy określonej temperaturze wody.</p>

        <div class="rk-sp-grid-3">
          <article class="rk-sp-card rk-sp-recommended">
            <span class="rk-sp-pitch">1</span>
            <h3>Gęstszy rozstaw</h3>
            <p>Zmniejsza opór przewodzenia między rurą a powierzchnią i ogranicza różnice temperatury na podłodze.</p>
          </article>
          <article class="rk-sp-card">
            <span class="rk-sp-pitch">2</span>
            <h3>Niższa temperatura wody</h3>
            <p>Ta sama moc może zostać oddana przy mniejszej średniej różnicy temperatur między wodą a pomieszczeniem.</p>
          </article>
          <article class="rk-sp-card rk-sp-special">
            <span class="rk-sp-pitch">3</span>
            <h3>Mniejszy skok temperatury</h3>
            <p>Pompa ciepła pracuje w korzystniejszych warunkach, ale rzeczywisty COP zależy także od temperatury zewnętrznej i konkretnego urządzenia.</p>
          </article>
        </div>

        <div class="rk-sp-note rk-sp-note-warn">
          <p><strong>Nie wpisuję sztywnego „2–3% COP na każdy stopień”.</strong> Taki skrót nie jest uniwersalny. Zmiana zależy od konstrukcji pompy, czynnika chłodniczego, temperatury źródła, modulacji, odszraniania i mapy pracy producenta. Wiarygodne porównanie kosztów wymaga danych urządzenia dla konkretnych punktów pracy.</p>
        </div>

        <p>Rozwinięcie tej zależności znajdziesz w artykule o tym, dlaczego <a href="https://projekt-ogrzewania.pl/niska-temperatura-zasilania-pompy-ciepla-dlaczego-35-stopni-to-ideal-dla-podlogowki/">niska temperatura zasilania jest korzystna dla podłogówki z pompą ciepła</a>.</p>
      </section>

      <section class="rk-sp-section" id="rk-sp-hydraulika" aria-labelledby="rk-sp-h-hydraulika">
        <div class="rk-sp-section-head">
          <span class="rk-sp-eyebrow">Ciepło musi jeszcze przepłynąć przez instalację</span>
          <h2 id="rk-sp-h-hydraulika">Obliczenia przepływu, długości pętli i strat ciśnienia</h2>
          <p>Dobór cieplny i hydrauliczny są nierozłączne. Zagęszczenie rur zwiększa ich łączną długość, dlatego tę samą powierzchnię trzeba podzielić na większą liczbę pętli.</p>
        </div>

        <div class="rk-sp-equation">
          <h3>Trzy równania, które kontrolują projekt</h3>
          <div class="rk-sp-equation-grid">
            <div class="rk-sp-equation-card">
              <b>V̇ ≈ 0,86 · Φ / ΔT</b>
              <small>Przepływ objętościowy w l/h dla wody; Φ w W, ΔT w K.</small>
            </div>
            <div class="rk-sp-equation-card">
              <b>L ≈ A / s · 1,05</b>
              <small>Orientacyjna długość pola grzewczego; doprowadzenia liczy się oddzielnie.</small>
            </div>
            <div class="rk-sp-equation-card">
              <b>Δp = λ · L/D · ρv²/2</b>
              <small>Równanie Darcy’ego-Weisbacha dla straty liniowej rury.</small>
            </div>
          </div>
        </div>

        <p>Przepływ wynika z mocy przenoszonej przez pętlę i przyjętego spadku temperatury. Zbyt mały przepływ zwiększa różnicę między początkiem i końcem obwodu. Zbyt duży przepływ podnosi prędkość oraz opory. Dlatego rotametr nie służy do ustawiania „wszędzie 2 l/min”, lecz do realizacji wartości policzonych dla konkretnej pętli.</p>

        <div class="rk-sp-grid-2">
          <article class="rk-sp-card">
            <h3>Co obejmuje wynik interaktywny?</h3>
            <ul class="rk-sp-mini-list">
              <li><span aria-hidden="true"></span><span>łączną długość pola wraz z 5% zapasu geometrycznego</span></li>
              <li><span aria-hidden="true"></span><span>liczbę pętli wynikającą z przyjętego limitu długości</span></li>
              <li><span aria-hidden="true"></span><span>przepływ całkowity i średni przepływ jednej pętli</span></li>
              <li><span aria-hidden="true"></span><span>orientacyjną stratę rury 16×2 mm z rezerwą 15%</span></li>
            </ul>
          </article>
          <article class="rk-sp-card rk-sp-caution">
            <h3>Czego wynik nie obejmuje?</h3>
            <ul class="rk-sp-mini-list">
              <li><span aria-hidden="true"></span><span>oporów rozdzielacza, zaworów, rotametrów i przewodów zasilających</span></li>
              <li><span aria-hidden="true"></span><span>rzeczywistej długości doprowadzeń do każdego pomieszczenia</span></li>
              <li><span aria-hidden="true"></span><span>indywidualnej chropowatości, temperatury i dodatku glikolu</span></li>
              <li><span aria-hidden="true"></span><span>doboru pompy obiegowej i nastaw równoważących cały układ</span></li>
            </ul>
          </article>
        </div>

        <p>W praktycznym projekcie należy jeszcze porównać najbardziej niekorzystny obwód z dostępną wysokością podnoszenia. Osobno omawiam <a href="https://projekt-ogrzewania.pl/spadek-temperatury-%CE%B4t-roznica-miedzy-temperatura-zasilania-a-powrotu/">spadek temperatury ΔT</a>, dobór <a href="https://projekt-ogrzewania.pl/srednice-rur-w-ogrzewaniu-podlogowym/">średnicy rur ogrzewania podłogowego</a> oraz funkcję <a href="https://projekt-ogrzewania.pl/rozdzielacz-do-podlogowki-kluczowy-element-systemu-ogrzewania-podlogowego/">rozdzielacza do podłogówki</a>.</p>
      </section>

      <section class="rk-sp-section" id="rk-sp-strefy" aria-labelledby="rk-sp-h-strefy">
        <div class="rk-sp-section-head">
          <span class="rk-sp-eyebrow">Jedna reguła nie obsłuży całego domu</span>
          <h2 id="rk-sp-h-strefy">Łazienki, strefy brzegowe i duże przeszklenia</h2>
          <p>Pomieszczenia różnią się temperaturą obliczeniową, aktywną powierzchnią i stratami przez przegrody. To dlatego jednolity rozstaw w całym budynku bywa rozwiązaniem wygodnym wykonawczo, lecz niekoniecznie poprawnym projektowo.</p>
        </div>

        <div class="rk-sp-grid-3">
          <article class="rk-sp-card rk-sp-recommended">
            <span class="rk-sp-pitch">Ł</span>
            <h3>Łazienka</h3>
            <p>Temperatura obliczeniowa jest zwykle wyższa, a aktywną powierzchnię ograniczają wanna, brodzik lub stała zabudowa. Rozstaw 10 cm jest częsty, ale 5 cm nie naprawi zbyt małej powierzchni ani przekroczenia dopuszczalnej temperatury podłogi.</p>
          </article>

          <article class="rk-sp-card rk-sp-special">
            <span class="rk-sp-pitch">B</span>
            <h3>Strefa brzegowa</h3>
            <p>Zagęszczenie rur w pasie przy przegrodzie zewnętrznej może ograniczyć spadek temperatury powierzchni. Szerokość i moc strefy powinny wynikać z rozkładu strat, a nie z automatycznego pasa „metr od okna”.</p>
          </article>

          <article class="rk-sp-card rk-sp-caution">
            <span class="rk-sp-pitch">G</span>
            <h3>Duże przeszklenie</h3>
            <p>Liczy się powierzchnia szyby, współczynnik U, temperatura zewnętrzna, szczelność i geometria pomieszczenia. Nowoczesne przeszklenie nie zawsze wymaga 5 cm, a słabe może wymagać dodatkowego emitera.</p>
          </article>
        </div>

        <div class="rk-sp-note">
          <p><strong>Strefa brzegowa powinna być policzona.</strong> Jeżeli ma inne obciążenie niż część wewnętrzna, można wydzielić ją osobnym obwodem albo odpowiednio poprowadzić zasilanie pętli. Więcej przykładów zawiera opracowanie o <a href="https://projekt-ogrzewania.pl/strefa-brzegowa-obwodowa-w-ogrzewaniu-podlogowym/">strefie brzegowej w ogrzewaniu podłogowym</a>.</p>
        </div>
      </section>

      <section class="rk-sp-section" id="rk-sp-schematy" aria-labelledby="rk-sp-h-schematy">
        <div class="rk-sp-section-head">
          <span class="rk-sp-eyebrow">Schematy podporządkowane tematowi rozstawu</span>
          <h2 id="rk-sp-h-schematy">Co rozstaw zmienia w przekroju podłogi i układzie pętli?</h2>
          <p>Przekrój nie służy tu do opisywania wszystkich warstw budowlanych. Pokazuje wyłącznie drogę ciepła od rury do pomieszczenia oraz miejsce, w którym opór okładziny i odległość między rurami wpływają na wynik.</p>
        </div>

        <div class="rk-sp-diagram-grid">
          <figure class="rk-sp-diagram">
            <svg viewBox="0 0 520 330" role="img" aria-labelledby="rk-sp-cross-title rk-sp-cross-desc">
              <title id="rk-sp-cross-title">Przekrój ogrzewanej podłogi i droga przepływu ciepła</title>
              <desc id="rk-sp-cross-desc">Dwie rury w warstwie jastrychu, okładzina podłogowa nad nimi oraz strzałki przepływu ciepła do pomieszczenia.</desc>
              <rect x="20" y="35" width="480" height="54" rx="8" fill="#eafcff" stroke="#078fbe" stroke-width="2"></rect>
              <text x="260" y="67" text-anchor="middle" fill="#14384d" font-size="18" font-weight="800">okładzina i jej opór Rλ,B</text>
              <rect x="20" y="90" width="480" height="150" fill="#e8edf0" stroke="#b5c6ce" stroke-width="2"></rect>
              <text x="260" y="120" text-anchor="middle" fill="#465866" font-size="16" font-weight="700">jastrych — rozprowadzenie ciepła</text>
              <circle cx="155" cy="190" r="28" fill="#ff7438" stroke="#e33d35" stroke-width="6"></circle>
              <circle cx="365" cy="190" r="28" fill="#ff7438" stroke="#e33d35" stroke-width="6"></circle>
              <path d="M155 158 C145 125 135 112 125 96" fill="none" stroke="#078fbe" stroke-width="5" stroke-linecap="round"></path>
              <path d="M365 158 C375 125 385 112 395 96" fill="none" stroke="#078fbe" stroke-width="5" stroke-linecap="round"></path>
              <path d="M220 190 H300" stroke="#102536" stroke-width="3"></path>
              <path d="M220 181 V199 M300 181 V199" stroke="#102536" stroke-width="3"></path>
              <text x="260" y="178" text-anchor="middle" fill="#102536" font-size="17" font-weight="900">rozstaw T</text>
              <rect x="20" y="241" width="480" height="55" rx="0 0 8 8" fill="#dce8ee" stroke="#b5c6ce" stroke-width="2"></rect>
              <text x="260" y="274" text-anchor="middle" fill="#465866" font-size="16" font-weight="700">izolacja ograniczająca strumień w dół</text>
            </svg>
            <figcaption>Większy rozstaw wydłuża boczną drogę przewodzenia ciepła i zwiększa różnice temperatury na powierzchni. Okładzina o większym oporze dodatkowo ogranicza strumień do pomieszczenia.</figcaption>
          </figure>

          <figure class="rk-sp-diagram">
            <svg viewBox="0 0 520 330" role="img" aria-labelledby="rk-sp-loop-title rk-sp-loop-desc">
              <title id="rk-sp-loop-title">Porównanie pola rur przy rozstawie 10 i 20 cm</title>
              <desc id="rk-sp-loop-desc">Dwa pola o tej samej powierzchni. Po lewej więcej linii rur w rozstawie 10 cm, po prawej mniej linii w rozstawie 20 cm.</desc>
              <rect x="18" y="36" width="226" height="250" rx="14" fill="#f5f9fb" stroke="#28c9da" stroke-width="3"></rect>
              <rect x="276" y="36" width="226" height="250" rx="14" fill="#fff4ed" stroke="#ff7438" stroke-width="3"></rect>
              <text x="131" y="68" text-anchor="middle" fill="#102536" font-size="19" font-weight="900">10 cm</text>
              <text x="389" y="68" text-anchor="middle" fill="#102536" font-size="19" font-weight="900">20 cm</text>
              <path d="M50 92 H212 V116 H50 V140 H212 V164 H50 V188 H212 V212 H50 V236 H212 V260 H50" fill="none" stroke="#078fbe" stroke-width="8" stroke-linejoin="round" stroke-linecap="round"></path>
              <path d="M308 100 H470 V150 H308 V200 H470 V250 H308" fill="none" stroke="#e33d35" stroke-width="8" stroke-linejoin="round" stroke-linecap="round"></path>
              <text x="131" y="310" text-anchor="middle" fill="#465866" font-size="15" font-weight="700">więcej rury i pętli</text>
              <text x="389" y="310" text-anchor="middle" fill="#465866" font-size="15" font-weight="700">mniejsza rezerwa mocy</text>
            </svg>
            <figcaption>Ta sama powierzchnia przy 10 cm zużywa około dwa razy więcej rury niż przy 20 cm. Projekt musi więc równocześnie dobrać liczbę pętli i sekcji rozdzielacza.</figcaption>
          </figure>
        </div>

        <p>Na schemacie widoczna jest także przyczyna, dla której nie wolno oceniać rozstawu bez okładziny. Panele o dużym oporze cieplnym mogą wymusić niższą odległość między rurami lub wyższą temperaturę wody, natomiast cienka ceramika przekazuje ciepło łatwiej. Nie oznacza to jednak automatycznie, że pod płytkami zawsze można zastosować 15 albo 20 cm.</p>
      </section>

      <section class="rk-sp-section" id="rk-sp-dobor" aria-labelledby="rk-sp-h-dobor">
        <div class="rk-sp-section-head">
          <span class="rk-sp-eyebrow">Procedura zamiast zasady „wszędzie 10 cm”</span>
          <h2 id="rk-sp-h-dobor">Jak prawidłowo dobrać rozstaw rur do pompy ciepła?</h2>
        </div>

        <ol class="rk-sp-checklist" id="rk-sp-selection-checklist">
          <li><div><strong>Oblicz projektowe obciążenie każdego pomieszczenia.</strong><span>Średnia dla całego domu nie pokaże problemu małej łazienki albo narożnego pokoju z dużą powierzchnią szkła.</span></div></li>
          <li><div><strong>Wyznacz aktywną powierzchnię grzewczą.</strong><span>Stała zabudowa może istotnie zmniejszyć pole, z którego podłoga rzeczywiście oddaje ciepło.</span></div></li>
          <li><div><strong>Ustal opór cieplny planowanej okładziny.</strong><span>Do obliczeń przyjmij wartość konkretnego zestawu: okładzina, podkład i ewentualne warstwy pośrednie.</span></div></li>
          <li><div><strong>Porównaj wydajność rozstawów przy temperaturze projektowej.</strong><span>Sprawdź 5, 10, 15 i 20 cm zamiast zakładać jeden wariant dla całego budynku.</span></div></li>
          <li><div><strong>Zweryfikuj temperaturę powierzchni podłogi.</strong><span>Jeżeli limit zostaje przekroczony, samo dalsze podnoszenie temperatury zasilania nie jest poprawnym rozwiązaniem.</span></div></li>
          <li><div><strong>Podziel powierzchnię na hydraulicznie wykonalne pętle.</strong><span>Uwzględnij doprowadzenia, średnicę rury, wymagane przepływy i najbardziej niekorzystny obwód.</span></div></li>
          <li><div><strong>Sprawdź punkt pracy pompy obiegowej i nastawy rozdzielacza.</strong><span>Projekt kończy się wartościami przepływu dla każdej sekcji, a nie samym rysunkiem rury na rzucie.</span></div></li>
        </ol>

        <div class="rk-sp-note rk-sp-note-warn">
          <p><strong>Rozstaw 10 czy 15 cm?</strong> Odpowiedź może być inna w każdym pomieszczeniu. Osobne porównanie tych dwóch wariantów znajdziesz w artykule <a href="https://projekt-ogrzewania.pl/rozstaw-rur-w-ogrzewaniu-podlogowym-co-10-czy-15-cm/">rozstaw rur ogrzewania podłogowego co 10 czy 15 cm</a>.</p>
        </div>
      </section>

      <section class="rk-sp-section" id="rk-sp-faq" aria-labelledby="rk-sp-h-faq">
        <div class="rk-sp-section-head">
          <span class="rk-sp-eyebrow">Pytania inwestorów i wykonawców</span>
          <h2 id="rk-sp-h-faq">FAQ – rozstaw rur ogrzewania podłogowego przy pompie ciepła</h2>
        </div>

        <div class="rk-sp-faq">
          <details id="rk-sp-faq-1">
            <summary>Jaki rozstaw rur ogrzewania podłogowego jest najlepszy przy pompie ciepła?</summary>
            <div class="rk-sp-faq-answer"><p>Nie istnieje jeden najlepszy rozstaw dla wszystkich pomieszczeń. W wielu nowych domach stosuje się 10 lub 15 cm, ale ostateczny wybór powinien wynikać z obciążenia cieplnego, aktywnej powierzchni, oporu okładziny, temperatury wody i obliczeń hydraulicznych.</p></div>
          </details>

          <details id="rk-sp-faq-2">
            <summary>Czy przy pompie ciepła rury zawsze trzeba układać co 10 cm?</summary>
            <div class="rk-sp-faq-answer"><p>Nie. Rozstaw 10 cm zwiększa wydajność przy niskiej temperaturze wody, lecz w pomieszczeniu o małej stracie ciepła poprawny może być również rozstaw 15 cm. Zastosowanie 10 cm bez obliczeń może niepotrzebnie zwiększyć liczbę pętli i rozdzielaczy.</p></div>
          </details>

          <details id="rk-sp-faq-3">
            <summary>Czy rozstaw 15 cm będzie wystarczający dla pompy ciepła?</summary>
            <div class="rk-sp-faq-answer"><p>Może być wystarczający, jeżeli przy projektowej temperaturze zasilania podłoga pokrywa obciążenie pomieszczenia bez przekroczenia dopuszczalnej temperatury powierzchni. Sam fakt zastosowania pompy ciepła nie przesądza o wyborze 10 albo 15 cm.</p></div>
          </details>

          <details id="rk-sp-faq-4">
            <summary>Kiedy można zastosować rozstaw rur co 20 cm?</summary>
            <div class="rk-sp-faq-answer"><p>Rozstaw 20 cm można rozważyć w pomieszczeniach o bardzo małym obciążeniu i korzystnej okładzinie, po potwierdzeniu wydajności. Trzeba również ocenić równomierność temperatury powierzchni i ewentualną konieczność podniesienia temperatury wody.</p></div>
          </details>

          <details id="rk-sp-faq-5">
            <summary>Czy warto układać podłogówkę co 5 cm?</summary>
            <div class="rk-sp-faq-answer"><p>Rozstaw 5 cm jest rozwiązaniem specjalnym. Zwiększa zużycie rury do około 21 m/m² wraz z niewielkim zapasem, wymaga większej liczby krótkich pętli i kontroli promienia gięcia. Najczęściej wykorzystuje się go lokalnie, a nie na całej powierzchni domu.</p></div>
          </details>

          <details id="rk-sp-faq-6">
            <summary>Jaki rozstaw rur zastosować pod panelami, a jaki pod płytkami?</summary>
            <div class="rk-sp-faq-answer"><p>Rodzaj okładziny jest tylko jednym z parametrów. Panele i podkład mają zwykle większy opór cieplny niż płytki, dlatego mogą wymagać gęstszego rozstawu lub wyższej temperatury wody. Nie można jednak przypisać rozstawu wyłącznie na podstawie nazwy materiału.</p></div>
          </details>

          <details id="rk-sp-faq-7">
            <summary>Ile rury potrzeba na 1 m² podłogówki?</summary>
            <div class="rk-sp-faq-answer"><p>Orientacyjnie z zapasem geometrycznym 5% potrzeba około 21 m/m² przy rozstawie 5 cm, 10,5 m/m² przy 10 cm, 7 m/m² przy 15 cm oraz 5,25 m/m² przy 20 cm. Do wyniku należy dodać doprowadzenia do rozdzielacza.</p></div>
          </details>

          <details id="rk-sp-faq-8">
            <summary>Jak rozstaw rur wpływa na temperaturę zasilania pompy ciepła?</summary>
            <div class="rk-sp-faq-answer"><p>Przy tej samej mocy i konstrukcji podłogi gęstszy rozstaw zwykle pozwala zastosować niższą średnią temperaturę wody. Dokładna różnica zależy od budowy systemu, okładziny, temperatury powrotu oraz wymaganej mocy jednostkowej.</p></div>
          </details>

          <details id="rk-sp-faq-9">
            <summary>Czy mniejszy rozstaw rur zawsze podnosi COP pompy ciepła?</summary>
            <div class="rk-sp-faq-answer"><p>Nie bezpośrednio. Korzyść pojawia się wtedy, gdy gęstszy rozstaw umożliwia realne obniżenie temperatury zasilania. Rzeczywisty COP zależy również od temperatury źródła, konstrukcji urządzenia, modulacji, odszraniania i sterowania.</p></div>
          </details>

          <details id="rk-sp-faq-10">
            <summary>Jaki rozstaw rur zastosować w łazience?</summary>
            <div class="rk-sp-faq-answer"><p>W łazienkach często stosuje się 10 cm ze względu na wyższą temperaturę obliczeniową i małą aktywną powierzchnię. Jeżeli podłoga nie pokrywa obciążenia bez przekroczenia temperatury powierzchni, potrzebny może być dodatkowy emiter zamiast dalszego zagęszczania rur.</p></div>
          </details>

          <details id="rk-sp-faq-11">
            <summary>Czy przy dużym przeszkleniu trzeba wykonać strefę brzegową co 5 cm?</summary>
            <div class="rk-sp-faq-answer"><p>Nie zawsze. Strefa brzegowa powinna wynikać z obliczonej straty przez przeszklenie i rozkładu temperatury w pomieszczeniu. W nowym, ciepłym oknie może wystarczyć standardowy rozstaw, natomiast przy dużym obciążeniu nawet 5 cm może nie zastąpić dodatkowego emitera.</p></div>
          </details>

          <details id="rk-sp-faq-12">
            <summary>Jaka powinna być maksymalna długość pętli przy rurze 16×2 mm?</summary>
            <div class="rk-sp-faq-answer"><p>Nie ma jednej długości właściwej dla każdego układu. W praktyce często przyjmuje się około 80–100 m łącznie z doprowadzeniami, ale prawidłowy limit wynika z przepływu, średnicy wewnętrznej, oporu pętli, dostępnego ciśnienia i możliwości zrównoważenia instalacji.</p></div>
          </details>

          <details id="rk-sp-faq-13">
            <summary>Czy można zastosować jeden rozstaw rur w całym domu?</summary>
            <div class="rk-sp-faq-answer"><p>Można, jeżeli obliczenia potwierdzą spełnienie wymagań wszystkich pomieszczeń. Najczęściej jednak łazienki, pomieszczenia narożne i strefy przy dużych przeszkleniach wymagają innego podejścia niż sypialnie lub komunikacja.</p></div>
          </details>
        </div>
      </section>

      <div class="rk-sp-cta" aria-label="Projekt ogrzewania podłogowego">
        <div>
          <h3>Potrzebujesz rozstawów i przepływów wynikających z obliczeń?</h3>
          <p>Projekt określa obciążenie każdego pomieszczenia, rozstaw i przebieg rur, liczbę pętli, temperaturę pracy, wymagane przepływy oraz opory hydrauliczne instalacji.</p>
        </div>
        <div class="rk-sp-cta-actions">
          <a class="rk-sp-button" href="https://projekt-ogrzewania.pl/produkt/projekt-instalacji-ogrzewania-podlogowego-podlogowki/">Zamów projekt ogrzewania podłogowego</a>
          <small>Odnośnik prowadzi do strony sprzedażowej Projekt-Ogrzewania.pl, serwisu należącego do autora artykułu.</small>
        </div>
      </div>

      <div class="rk-sp-sources" aria-label="Źródła techniczne opracowania">
        <strong>Źródła i podstawa techniczna opracowania</strong>
        Metodyka cieplna: <a href="https://www.dinmedia.de/en/standard/din-en-1264-2/332537063" target="_blank" rel="noopener noreferrer">DIN Media – EN 1264-2:2021</a>, <a href="https://www.dinmedia.de/en/standard/din-en-1264-3/332537135" target="_blank" rel="noopener noreferrer">DIN Media – EN 1264-3:2021</a> oraz <a href="https://www.iso.org/standard/74683.html" target="_blank" rel="noopener noreferrer">ISO 11855-2:2021</a>. Obciążenie cieplne: <a href="https://www.dinmedia.de/en/standard/din-en-12831-1/261292587" target="_blank" rel="noopener noreferrer">DIN Media – EN 12831-1:2017</a>. Wpływ różnicy temperatur na pompy ciepła: <a href="https://publications.jrc.ec.europa.eu/repository/bitstream/JRC99264/2015%20jrc%20geothermal%20energy%20status%20report_online.pdf" target="_blank" rel="noopener noreferrer">Joint Research Centre – Geothermal Energy Status Report</a>. Hydraulika: <a href="https://ecommons.udayton.edu/cgi/viewcontent.cgi?article=1013&amp;context=cee_coursenotes" target="_blank" rel="noopener noreferrer">University of Dayton – Head Loss in Pipes</a> oraz <a href="https://webbook.nist.gov/chemistry/fluid/" target="_blank" rel="noopener noreferrer">NIST – Thermophysical Properties of Fluid Systems</a>.
      </div>

      <aside class="rk-sp-author-box" aria-labelledby="rk-sp-author-title" itemprop="author" itemscope="" itemtype="https://schema.org/Person">
        <div class="rk-sp-author-head">
          <div>
            <h2 id="rk-sp-author-title">Autor opracowania</h2>
            <p>Praktyka projektowa, wiedza techniczna i język zrozumiały dla inwestora.</p>
          </div>
          <span class="rk-sp-author-badge" aria-label="Doświadczenie, eksperckość, autorytet i wiarygodność w branży HVAC">E-E-A-T • HVAC</span>
        </div>

        <div class="rk-sp-author-layout">
          <div class="rk-sp-author-profile">
            <img decoding="async" class="rk-sp-author-photo" src="https://projekt-ogrzewania.pl/wp-content/uploads/2026/04/PO-Robert-Kucharski.webp" alt="Robert Kucharski – projektant instalacji sanitarnych i specjalista ogrzewania podłogowego" width="180" height="180" loading="lazy" itemprop="image">
            <h3 class="rk-sp-author-name" itemprop="name">Robert Kucharski</h3>
            <span class="rk-sp-author-role" itemprop="jobTitle">Projektant instalacji sanitarnych<br>specjalista HVAC i ogrzewania podłogowego</span>

            <div class="rk-sp-author-links" aria-label="Profile Roberta Kucharskiego">
              <a class="rk-sp-author-link" href="https://www.facebook.com/robert.kucharski.budowa.bez.sciemy" target="_blank" rel="noopener noreferrer me" itemprop="sameAs">Facebook</a>
              <a class="rk-sp-author-link" href="https://www.linkedin.com/in/robert-kucharski-38069b48/" target="_blank" rel="noopener noreferrer me" itemprop="sameAs">LinkedIn</a>
              <a class="rk-sp-author-link" href="https://projekt-ogrzewania.pl/author/admin3399/" itemprop="url">Profil autora</a>
            </div>
          </div>

          <div class="rk-sp-author-main">
            <blockquote class="rk-sp-author-quote">
              <span class="rk-sp-author-quote-mark" aria-hidden="true">“</span>
              <p>Przy pompie ciepła rozstaw rur nie jest kwestią estetyki ani przyzwyczajenia wykonawcy. To parametr, który decyduje, czy wymagana moc zostanie przekazana przy niskiej temperaturze wody, czy inwestor będzie zmuszony podnosić temperaturę zasilania.</p>
              <footer>Robert Kucharski — autor i projektant instalacji</footer>
            </blockquote>

            <div class="rk-sp-author-tabs" role="tablist" aria-label="Szczegółowe informacje o autorze">
              <button class="rk-sp-author-tab" id="rk-sp-author-tab-about" type="button" role="tab" aria-selected="true" aria-controls="rk-sp-author-panel-about">O autorze</button>
              <button class="rk-sp-author-tab" id="rk-sp-author-tab-experience" type="button" role="tab" aria-selected="false" aria-controls="rk-sp-author-panel-experience" tabindex="-1">Doświadczenie</button>
              <button class="rk-sp-author-tab" id="rk-sp-author-tab-portals" type="button" role="tab" aria-selected="false" aria-controls="rk-sp-author-panel-portals" tabindex="-1">Portale</button>
            </div>

            <div class="rk-sp-author-panels">
              <div class="rk-sp-author-panel" id="rk-sp-author-panel-about" role="tabpanel" aria-labelledby="rk-sp-author-tab-about" itemprop="description">
                <p>Specjalizuję się w projektowaniu wodnego ogrzewania podłogowego, obliczeniach obciążenia cieplnego i hydrauliki instalacji. Łączę wymagania techniczne z praktycznym spojrzeniem inwestora: dokumentacja ma być policzona, czytelna i możliwa do poprawnego wykonania.</p>
              </div>

              <div class="rk-sp-author-panel" id="rk-sp-author-panel-experience" role="tabpanel" aria-labelledby="rk-sp-author-tab-experience" hidden="">
                <p>W projektach określam straty ciepła poszczególnych pomieszczeń, temperatury pracy, rozstawy, długości i przebieg pętli, wymagane przepływy, opory hydrauliczne, liczbę sekcji rozdzielaczy oraz założenia regulacji. Publikacje techniczne opieram na tej samej kolejności obliczeń, która obowiązuje przy przygotowaniu dokumentacji dla konkretnego budynku.</p>
                <p itemprop="knowsAbout">Zakres specjalizacji: ogrzewanie podłogowe, pompy ciepła, hydraulika instalacji, obliczenia OZC, systemy HVAC i efektywność energetyczna budynków.</p>
              </div>

              <div class="rk-sp-author-panel" id="rk-sp-author-panel-portals" role="tabpanel" aria-labelledby="rk-sp-author-tab-portals" hidden="">
                <p>Jestem właścicielem trzech serwisów branżowych. Informację tę podaję jawnie, aby czytelnik znał autorstwo opracowania oraz kontekst linkowania między portalami.</p>
                <div class="rk-sp-portal-list">
                  <a href="https://projekt-ogrzewania.pl/" target="_blank" rel="noopener noreferrer me" itemprop="sameAs">Projekt-Ogrzewania.pl</a>
                  <a href="https://remont.biz.pl/" target="_blank" rel="noopener noreferrer me" itemprop="sameAs">Remont.biz.pl</a>
                  <a href="https://sobir.pl/" target="_blank" rel="noopener noreferrer me" itemprop="sameAs">Sobir.pl</a>
                </div>
              </div>
            </div>
          </div>
        </div>
      </aside>

      <p class="rk-sp-disclaimer"><strong>Nota techniczna:</strong> Interaktywny moduł służy do porównania wpływu rozstawu przy jednakowych założeniach. Współczynniki zastępcze opisują typowy mokry system z rurą 16×2 mm i nie są charakterystyką konkretnego produktu. Projekt wykonawczy powinien wykorzystywać zweryfikowane dane systemowe, rzeczywistą konstrukcję podłogi, obliczenia EN 1264, obciążenie cieplne EN 12831 i pełny bilans hydrauliczny.</p>
    </div>
  </div>
</article>

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@graph": [
    {
      "@type": "TechArticle",
      "@id": "https://projekt-ogrzewania.pl/rozstaw-rur-ogrzewania-podlogowego-przy-pompie-ciepla/#article",
      "url": "https://projekt-ogrzewania.pl/rozstaw-rur-ogrzewania-podlogowego-przy-pompie-ciepla/",
      "headline": "Rozstaw rur ogrzewania podłogowego przy pompie ciepła.",
      "alternativeHeadline": "Rozstaw rur ogrzewania podłogowego przy pompie ciepła – 5, 10, 15 czy 20 cm?",
      "description": "Techniczny poradnik o rozstawie rur podłogówki przy pompie ciepła: moc podłogi, temperatura zasilania, długość pętli, przepływ, opory i kalkulator porównawczy.",
      "mainEntityOfPage": {
        "@id": "https://projekt-ogrzewania.pl/rozstaw-rur-ogrzewania-podlogowego-przy-pompie-ciepla/#webpage"
      },
      "author": {
        "@id": "https://projekt-ogrzewania.pl/#/schema/person/8f64aaec51c6581f1ab55e3d7f3a82d1"
      },
      "publisher": {
        "@id": "https://projekt-ogrzewania.pl/#organization"
      },
      "datePublished": "2025-03-03",
      "dateModified": "2026-08-22",
      "inLanguage": "pl-PL",
      "isAccessibleForFree": true,
      "proficiencyLevel": "Intermediate",
      "articleSection": [
        "Ogrzewanie podłogowe",
        "Pompy ciepła",
        "Projektowanie instalacji",
        "Hydraulika instalacji",
        "Efektywność energetyczna",
        "Normy techniczne"
      ],
      "keywords": "Rozstaw rur ogrzewania podłogowego przy pompie ciepła, jaki rozstaw rur do podłogówki przy pompie ciepła, rozstaw rur 10 czy 15 cm, rozstaw podłogówki co 20 cm, podłogówka co 5 cm, ile rury na m2, temperatura zasilania pompy ciepła, długość pętli podłogówki, przepływ podłogówki, opory hydrauliczne",
      "about": [
        {
          "@type": "Thing",
          "name": "Rozstaw rur ogrzewania podłogowego przy pompie ciepła"
        },
        {
          "@type": "Thing",
          "name": "Wodne ogrzewanie podłogowe"
        },
        {
          "@type": "Thing",
          "name": "Pompa ciepła"
        },
        {
          "@type": "Thing",
          "name": "Hydraulika instalacji grzewczych"
        }
      ],
      "mentions": [
        {
          "@type": "DefinedTerm",
          "name": "Rozstaw rur",
          "description": "Odległość osiowa między sąsiednimi przewodami ogrzewania podłogowego."
        },
        {
          "@type": "DefinedTerm",
          "name": "Projektowe obciążenie cieplne",
          "description": "Moc potrzebna do utrzymania wymaganej temperatury wewnętrznej w projektowych warunkach zewnętrznych."
        },
        {
          "@type": "DefinedTerm",
          "name": "Średnia logarytmiczna różnica temperatur",
          "description": "Różnica temperatur medium grzewczego względem pomieszczenia uwzględniająca temperaturę zasilania i powrotu."
        },
        {
          "@type": "Thing",
          "name": "EN 1264:2021"
        },
        {
          "@type": "Thing",
          "name": "EN 12831-1:2017"
        },
        {
          "@type": "Thing",
          "name": "ISO 11855-2:2021"
        },
        {
          "@type": "Thing",
          "name": "Równanie Darcy-Weisbacha"
        }
      ],
      "citation": [
        {
          "@type": "CreativeWork",
          "name": "DIN EN 1264-2:2021 – Floor heating: thermal output",
          "url": "https://www.dinmedia.de/en/standard/din-en-1264-2/332537063"
        },
        {
          "@type": "CreativeWork",
          "name": "DIN EN 1264-3:2021 – Dimensioning",
          "url": "https://www.dinmedia.de/en/standard/din-en-1264-3/332537135"
        },
        {
          "@type": "CreativeWork",
          "name": "ISO 11855-2:2021 – Determination of design heating and cooling capacity",
          "url": "https://www.iso.org/standard/74683.html"
        },
        {
          "@type": "CreativeWork",
          "name": "DIN EN 12831-1:2017 – Method for calculation of design heat load",
          "url": "https://www.dinmedia.de/en/standard/din-en-12831-1/261292587"
        },
        {
          "@type": "Report",
          "name": "2015 JRC Geothermal Energy Status Report",
          "url": "https://publications.jrc.ec.europa.eu/repository/bitstream/JRC99264/2015%20jrc%20geothermal%20energy%20status%20report_online.pdf"
        },
        {
          "@type": "CreativeWork",
          "name": "Head Loss in Pipes – University of Dayton",
          "url": "https://ecommons.udayton.edu/cgi/viewcontent.cgi?article=1013&context=cee_coursenotes"
        },
        {
          "@type": "WebPage",
          "name": "Thermophysical Properties of Fluid Systems – NIST",
          "url": "https://webbook.nist.gov/chemistry/fluid/"
        }
      ],
      "hasPart": [
        {
          "@id": "https://projekt-ogrzewania.pl/rozstaw-rur-ogrzewania-podlogowego-przy-pompie-ciepla/#calculator"
        },
        {
          "@id": "https://projekt-ogrzewania.pl/rozstaw-rur-ogrzewania-podlogowego-przy-pompie-ciepla/#rk-sp-selection-checklist"
        },
        {
          "@id": "https://projekt-ogrzewania.pl/rozstaw-rur-ogrzewania-podlogowego-przy-pompie-ciepla/#rk-sp-faq-1"
        },
        {
          "@id": "https://projekt-ogrzewania.pl/rozstaw-rur-ogrzewania-podlogowego-przy-pompie-ciepla/#rk-sp-faq-2"
        },
        {
          "@id": "https://projekt-ogrzewania.pl/rozstaw-rur-ogrzewania-podlogowego-przy-pompie-ciepla/#rk-sp-faq-3"
        },
        {
          "@id": "https://projekt-ogrzewania.pl/rozstaw-rur-ogrzewania-podlogowego-przy-pompie-ciepla/#rk-sp-faq-4"
        },
        {
          "@id": "https://projekt-ogrzewania.pl/rozstaw-rur-ogrzewania-podlogowego-przy-pompie-ciepla/#rk-sp-faq-5"
        },
        {
          "@id": "https://projekt-ogrzewania.pl/rozstaw-rur-ogrzewania-podlogowego-przy-pompie-ciepla/#rk-sp-faq-6"
        },
        {
          "@id": "https://projekt-ogrzewania.pl/rozstaw-rur-ogrzewania-podlogowego-przy-pompie-ciepla/#rk-sp-faq-7"
        },
        {
          "@id": "https://projekt-ogrzewania.pl/rozstaw-rur-ogrzewania-podlogowego-przy-pompie-ciepla/#rk-sp-faq-8"
        },
        {
          "@id": "https://projekt-ogrzewania.pl/rozstaw-rur-ogrzewania-podlogowego-przy-pompie-ciepla/#rk-sp-faq-9"
        },
        {
          "@id": "https://projekt-ogrzewania.pl/rozstaw-rur-ogrzewania-podlogowego-przy-pompie-ciepla/#rk-sp-faq-10"
        },
        {
          "@id": "https://projekt-ogrzewania.pl/rozstaw-rur-ogrzewania-podlogowego-przy-pompie-ciepla/#rk-sp-faq-11"
        },
        {
          "@id": "https://projekt-ogrzewania.pl/rozstaw-rur-ogrzewania-podlogowego-przy-pompie-ciepla/#rk-sp-faq-12"
        },
        {
          "@id": "https://projekt-ogrzewania.pl/rozstaw-rur-ogrzewania-podlogowego-przy-pompie-ciepla/#rk-sp-faq-13"
        }
      ]
    },
    {
      "@type": [
        "WebPage",
        "FAQPage"
      ],
      "@id": "https://projekt-ogrzewania.pl/rozstaw-rur-ogrzewania-podlogowego-przy-pompie-ciepla/#webpage",
      "url": "https://projekt-ogrzewania.pl/rozstaw-rur-ogrzewania-podlogowego-przy-pompie-ciepla/",
      "name": "Rozstaw rur ogrzewania podłogowego przy pompie ciepła.",
      "description": "Porównanie rozstawów 5, 10, 15 i 20 cm: moc podłogi, temperatura wody, długość pętli, przepływ, opory i interaktywny przykład.",
      "isPartOf": {
        "@id": "https://projekt-ogrzewania.pl/#website"
      },
      "breadcrumb": {
        "@id": "https://projekt-ogrzewania.pl/rozstaw-rur-ogrzewania-podlogowego-przy-pompie-ciepla/#breadcrumb"
      },
      "datePublished": "2025-03-03",
      "dateModified": "2026-08-22",
      "inLanguage": "pl-PL",
      "mainEntity": [
        {
          "@id": "https://projekt-ogrzewania.pl/rozstaw-rur-ogrzewania-podlogowego-przy-pompie-ciepla/#rk-sp-faq-1"
        },
        {
          "@id": "https://projekt-ogrzewania.pl/rozstaw-rur-ogrzewania-podlogowego-przy-pompie-ciepla/#rk-sp-faq-2"
        },
        {
          "@id": "https://projekt-ogrzewania.pl/rozstaw-rur-ogrzewania-podlogowego-przy-pompie-ciepla/#rk-sp-faq-3"
        },
        {
          "@id": "https://projekt-ogrzewania.pl/rozstaw-rur-ogrzewania-podlogowego-przy-pompie-ciepla/#rk-sp-faq-4"
        },
        {
          "@id": "https://projekt-ogrzewania.pl/rozstaw-rur-ogrzewania-podlogowego-przy-pompie-ciepla/#rk-sp-faq-5"
        },
        {
          "@id": "https://projekt-ogrzewania.pl/rozstaw-rur-ogrzewania-podlogowego-przy-pompie-ciepla/#rk-sp-faq-6"
        },
        {
          "@id": "https://projekt-ogrzewania.pl/rozstaw-rur-ogrzewania-podlogowego-przy-pompie-ciepla/#rk-sp-faq-7"
        },
        {
          "@id": "https://projekt-ogrzewania.pl/rozstaw-rur-ogrzewania-podlogowego-przy-pompie-ciepla/#rk-sp-faq-8"
        },
        {
          "@id": "https://projekt-ogrzewania.pl/rozstaw-rur-ogrzewania-podlogowego-przy-pompie-ciepla/#rk-sp-faq-9"
        },
        {
          "@id": "https://projekt-ogrzewania.pl/rozstaw-rur-ogrzewania-podlogowego-przy-pompie-ciepla/#rk-sp-faq-10"
        },
        {
          "@id": "https://projekt-ogrzewania.pl/rozstaw-rur-ogrzewania-podlogowego-przy-pompie-ciepla/#rk-sp-faq-11"
        },
        {
          "@id": "https://projekt-ogrzewania.pl/rozstaw-rur-ogrzewania-podlogowego-przy-pompie-ciepla/#rk-sp-faq-12"
        },
        {
          "@id": "https://projekt-ogrzewania.pl/rozstaw-rur-ogrzewania-podlogowego-przy-pompie-ciepla/#rk-sp-faq-13"
        }
      ],
      "potentialAction": {
        "@type": "ReadAction",
        "target": [
          "https://projekt-ogrzewania.pl/rozstaw-rur-ogrzewania-podlogowego-przy-pompie-ciepla/"
        ]
      }
    },
    {
      "@type": "SoftwareApplication",
      "@id": "https://projekt-ogrzewania.pl/rozstaw-rur-ogrzewania-podlogowego-przy-pompie-ciepla/#calculator",
      "name": "Porównywarka rozstawu rur ogrzewania podłogowego przy pompie ciepła",
      "description": "Interaktywny model porównujący rozstawy 5, 10, 15 i 20 cm pod względem wymaganej temperatury zasilania, długości rury, liczby pętli, przepływu i orientacyjnej straty ciśnienia.",
      "applicationCategory": "UtilitiesApplication",
      "applicationSubCategory": "Engineering calculator",
      "operatingSystem": "Web browser",
      "browserRequirements": "JavaScript",
      "isAccessibleForFree": true,
      "offers": {
        "@type": "Offer",
        "price": "0",
        "priceCurrency": "PLN"
      },
      "creator": {
        "@id": "https://projekt-ogrzewania.pl/#/schema/person/8f64aaec51c6581f1ab55e3d7f3a82d1"
      },
      "isPartOf": {
        "@id": "https://projekt-ogrzewania.pl/rozstaw-rur-ogrzewania-podlogowego-przy-pompie-ciepla/#article"
      },
      "featureList": [
        "Porównanie rozstawów 5, 10, 15 i 20 cm",
        "Orientacyjna temperatura zasilania",
        "Długość rury i liczba pętli",
        "Przepływ całkowity i przepływ pętli",
        "Orientacyjna strata ciśnienia rury 16×2 mm",
        "Wykres mocy podłogi",
        "Względny indeks warunków pracy pompy ciepła"
      ]
    },
    {
      "@type": "Person",
      "@id": "https://projekt-ogrzewania.pl/#/schema/person/8f64aaec51c6581f1ab55e3d7f3a82d1",
      "name": "Robert Kucharski",
      "url": "https://projekt-ogrzewania.pl/author/admin3399/",
      "image": {
        "@type": "ImageObject",
        "url": "https://projekt-ogrzewania.pl/wp-content/uploads/2026/04/PO-Robert-Kucharski.webp",
        "contentUrl": "https://projekt-ogrzewania.pl/wp-content/uploads/2026/04/PO-Robert-Kucharski.webp",
        "caption": "Robert Kucharski – projektant instalacji sanitarnych i specjalista HVAC"
      },
      "jobTitle": "Projektant instalacji sanitarnych i specjalista branży budowlano-instalacyjnej",
      "description": "Projektant instalacji sanitarnych, specjalista ogrzewania podłogowego, hydrauliki instalacji, obliczeń obciążenia cieplnego i systemów HVAC. Właściciel serwisów Projekt-Ogrzewania.pl, Remont.biz.pl i Sobir.pl.",
      "worksFor": {
        "@id": "https://projekt-ogrzewania.pl/#organization"
      },
      "affiliation": [
        {
          "@id": "https://projekt-ogrzewania.pl/#website"
        },
        {
          "@id": "https://remont.biz.pl/#website"
        },
        {
          "@id": "https://sobir.pl/#website"
        }
      ],
      "knowsAbout": [
        "HVAC",
        "ogrzewanie podłogowe",
        "pompy ciepła",
        "projektowanie instalacji sanitarnych",
        "hydraulika instalacji grzewczych",
        "obliczenia OZC",
        "EN 1264",
        "efektywność energetyczna"
      ],
      "sameAs": [
        "https://projekt-ogrzewania.pl/",
        "https://remont.biz.pl/",
        "https://sobir.pl/",
        "https://www.facebook.com/projektogrzewaniapl/",
        "https://www.facebook.com/robert.kucharski.budowa.bez.sciemy",
        "https://www.linkedin.com/in/robert-kucharski-38069b48/"
      ]
    },
    {
      "@type": "Organization",
      "@id": "https://projekt-ogrzewania.pl/#organization",
      "name": "Projekt-Ogrzewania.pl",
      "url": "https://projekt-ogrzewania.pl/",
      "founder": {
        "@id": "https://projekt-ogrzewania.pl/#/schema/person/8f64aaec51c6581f1ab55e3d7f3a82d1"
      },
      "logo": {
        "@type": "ImageObject",
        "url": "https://projekt-ogrzewania.pl/wp-content/uploads/2024/09/Projekt-ogrzewania-logo-1.jpg",
        "contentUrl": "https://projekt-ogrzewania.pl/wp-content/uploads/2024/09/Projekt-ogrzewania-logo-1.jpg"
      },
      "sameAs": [
        "https://www.facebook.com/projektogrzewaniapl/"
      ]
    },
    {
      "@type": "WebSite",
      "@id": "https://projekt-ogrzewania.pl/#website",
      "url": "https://projekt-ogrzewania.pl/",
      "name": "Projekt-Ogrzewania.pl",
      "publisher": {
        "@id": "https://projekt-ogrzewania.pl/#organization"
      },
      "creator": {
        "@id": "https://projekt-ogrzewania.pl/#/schema/person/8f64aaec51c6581f1ab55e3d7f3a82d1"
      },
      "inLanguage": "pl-PL"
    },
    {
      "@type": "WebSite",
      "@id": "https://remont.biz.pl/#website",
      "url": "https://remont.biz.pl/",
      "name": "Remont.biz.pl",
      "creator": {
        "@id": "https://projekt-ogrzewania.pl/#/schema/person/8f64aaec51c6581f1ab55e3d7f3a82d1"
      },
      "inLanguage": "pl-PL"
    },
    {
      "@type": "WebSite",
      "@id": "https://sobir.pl/#website",
      "url": "https://sobir.pl/",
      "name": "Sobir.pl",
      "creator": {
        "@id": "https://projekt-ogrzewania.pl/#/schema/person/8f64aaec51c6581f1ab55e3d7f3a82d1"
      },
      "inLanguage": "pl-PL"
    },
    {
      "@type": "BreadcrumbList",
      "@id": "https://projekt-ogrzewania.pl/rozstaw-rur-ogrzewania-podlogowego-przy-pompie-ciepla/#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": "Rozstaw rur ogrzewania podłogowego przy pompie ciepła",
          "item": "https://projekt-ogrzewania.pl/rozstaw-rur-ogrzewania-podlogowego-przy-pompie-ciepla/"
        }
      ]
    },
    {
      "@type": "ItemList",
      "@id": "https://projekt-ogrzewania.pl/rozstaw-rur-ogrzewania-podlogowego-przy-pompie-ciepla/#rk-sp-selection-checklist",
      "name": "Procedura doboru rozstawu rur ogrzewania podłogowego do pompy ciepła",
      "numberOfItems": 7,
      "itemListOrder": "https://schema.org/ItemListOrderAscending",
      "itemListElement": [
        {
          "@type": "ListItem",
          "position": 1,
          "name": "Obliczenie obciążenia cieplnego",
          "description": "Określenie projektowej straty ciepła każdego pomieszczenia."
        },
        {
          "@type": "ListItem",
          "position": 2,
          "name": "Aktywna powierzchnia grzewcza",
          "description": "Wyznaczenie powierzchni rzeczywiście dostępnej dla rur."
        },
        {
          "@type": "ListItem",
          "position": 3,
          "name": "Opór cieplny okładziny",
          "description": "Przyjęcie oporu konkretnego zestawu okładziny i podkładu."
        },
        {
          "@type": "ListItem",
          "position": 4,
          "name": "Porównanie wydajności rozstawów",
          "description": "Sprawdzenie 5, 10, 15 i 20 cm przy projektowej temperaturze wody."
        },
        {
          "@type": "ListItem",
          "position": 5,
          "name": "Temperatura powierzchni podłogi",
          "description": "Weryfikacja granicy komfortu i bezpieczeństwa okładziny."
        },
        {
          "@type": "ListItem",
          "position": 6,
          "name": "Podział na pętle",
          "description": "Dobór liczby obwodów, długości i średnicy rur."
        },
        {
          "@type": "ListItem",
          "position": 7,
          "name": "Bilans hydrauliczny",
          "description": "Obliczenie przepływów, oporów, punktu pracy pompy i nastaw rozdzielacza."
        }
      ]
    },
    {
      "@type": "Question",
      "@id": "https://projekt-ogrzewania.pl/rozstaw-rur-ogrzewania-podlogowego-przy-pompie-ciepla/#rk-sp-faq-1",
      "name": "Jaki rozstaw rur ogrzewania podłogowego jest najlepszy przy pompie ciepła?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Nie istnieje jeden najlepszy rozstaw dla wszystkich pomieszczeń. W wielu nowych domach stosuje się 10 lub 15 cm, ale ostateczny wybór powinien wynikać z obciążenia cieplnego, aktywnej powierzchni, oporu okładziny, temperatury wody i obliczeń hydraulicznych."
      }
    },
    {
      "@type": "Question",
      "@id": "https://projekt-ogrzewania.pl/rozstaw-rur-ogrzewania-podlogowego-przy-pompie-ciepla/#rk-sp-faq-2",
      "name": "Czy przy pompie ciepła rury zawsze trzeba układać co 10 cm?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Nie. Rozstaw 10 cm zwiększa wydajność przy niskiej temperaturze wody, lecz w pomieszczeniu o małej stracie ciepła poprawny może być również rozstaw 15 cm. Zastosowanie 10 cm bez obliczeń może niepotrzebnie zwiększyć liczbę pętli i rozdzielaczy."
      }
    },
    {
      "@type": "Question",
      "@id": "https://projekt-ogrzewania.pl/rozstaw-rur-ogrzewania-podlogowego-przy-pompie-ciepla/#rk-sp-faq-3",
      "name": "Czy rozstaw 15 cm będzie wystarczający dla pompy ciepła?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Może być wystarczający, jeżeli przy projektowej temperaturze zasilania podłoga pokrywa obciążenie pomieszczenia bez przekroczenia dopuszczalnej temperatury powierzchni. Sam fakt zastosowania pompy ciepła nie przesądza o wyborze 10 albo 15 cm."
      }
    },
    {
      "@type": "Question",
      "@id": "https://projekt-ogrzewania.pl/rozstaw-rur-ogrzewania-podlogowego-przy-pompie-ciepla/#rk-sp-faq-4",
      "name": "Kiedy można zastosować rozstaw rur co 20 cm?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Rozstaw 20 cm można rozważyć w pomieszczeniach o bardzo małym obciążeniu i korzystnej okładzinie, po potwierdzeniu wydajności. Trzeba również ocenić równomierność temperatury powierzchni i ewentualną konieczność podniesienia temperatury wody."
      }
    },
    {
      "@type": "Question",
      "@id": "https://projekt-ogrzewania.pl/rozstaw-rur-ogrzewania-podlogowego-przy-pompie-ciepla/#rk-sp-faq-5",
      "name": "Czy warto układać podłogówkę co 5 cm?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Rozstaw 5 cm jest rozwiązaniem specjalnym. Zwiększa zużycie rury do około 21 m/m² wraz z niewielkim zapasem, wymaga większej liczby krótkich pętli i kontroli promienia gięcia. Najczęściej wykorzystuje się go lokalnie, a nie na całej powierzchni domu."
      }
    },
    {
      "@type": "Question",
      "@id": "https://projekt-ogrzewania.pl/rozstaw-rur-ogrzewania-podlogowego-przy-pompie-ciepla/#rk-sp-faq-6",
      "name": "Jaki rozstaw rur zastosować pod panelami, a jaki pod płytkami?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Rodzaj okładziny jest tylko jednym z parametrów. Panele i podkład mają zwykle większy opór cieplny niż płytki, dlatego mogą wymagać gęstszego rozstawu lub wyższej temperatury wody. Nie można jednak przypisać rozstawu wyłącznie na podstawie nazwy materiału."
      }
    },
    {
      "@type": "Question",
      "@id": "https://projekt-ogrzewania.pl/rozstaw-rur-ogrzewania-podlogowego-przy-pompie-ciepla/#rk-sp-faq-7",
      "name": "Ile rury potrzeba na 1 m² podłogówki?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Orientacyjnie z zapasem geometrycznym 5% potrzeba około 21 m/m² przy rozstawie 5 cm, 10,5 m/m² przy 10 cm, 7 m/m² przy 15 cm oraz 5,25 m/m² przy 20 cm. Do wyniku należy dodać doprowadzenia do rozdzielacza."
      }
    },
    {
      "@type": "Question",
      "@id": "https://projekt-ogrzewania.pl/rozstaw-rur-ogrzewania-podlogowego-przy-pompie-ciepla/#rk-sp-faq-8",
      "name": "Jak rozstaw rur wpływa na temperaturę zasilania pompy ciepła?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Przy tej samej mocy i konstrukcji podłogi gęstszy rozstaw zwykle pozwala zastosować niższą średnią temperaturę wody. Dokładna różnica zależy od budowy systemu, okładziny, temperatury powrotu oraz wymaganej mocy jednostkowej."
      }
    },
    {
      "@type": "Question",
      "@id": "https://projekt-ogrzewania.pl/rozstaw-rur-ogrzewania-podlogowego-przy-pompie-ciepla/#rk-sp-faq-9",
      "name": "Czy mniejszy rozstaw rur zawsze podnosi COP pompy ciepła?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Nie bezpośrednio. Korzyść pojawia się wtedy, gdy gęstszy rozstaw umożliwia realne obniżenie temperatury zasilania. Rzeczywisty COP zależy również od temperatury źródła, konstrukcji urządzenia, modulacji, odszraniania i sterowania."
      }
    },
    {
      "@type": "Question",
      "@id": "https://projekt-ogrzewania.pl/rozstaw-rur-ogrzewania-podlogowego-przy-pompie-ciepla/#rk-sp-faq-10",
      "name": "Jaki rozstaw rur zastosować w łazience?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "W łazienkach często stosuje się 10 cm ze względu na wyższą temperaturę obliczeniową i małą aktywną powierzchnię. Jeżeli podłoga nie pokrywa obciążenia bez przekroczenia temperatury powierzchni, potrzebny może być dodatkowy emiter zamiast dalszego zagęszczania rur."
      }
    },
    {
      "@type": "Question",
      "@id": "https://projekt-ogrzewania.pl/rozstaw-rur-ogrzewania-podlogowego-przy-pompie-ciepla/#rk-sp-faq-11",
      "name": "Czy przy dużym przeszkleniu trzeba wykonać strefę brzegową co 5 cm?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Nie zawsze. Strefa brzegowa powinna wynikać z obliczonej straty przez przeszklenie i rozkładu temperatury w pomieszczeniu. W nowym, ciepłym oknie może wystarczyć standardowy rozstaw, natomiast przy dużym obciążeniu nawet 5 cm może nie zastąpić dodatkowego emitera."
      }
    },
    {
      "@type": "Question",
      "@id": "https://projekt-ogrzewania.pl/rozstaw-rur-ogrzewania-podlogowego-przy-pompie-ciepla/#rk-sp-faq-12",
      "name": "Jaka powinna być maksymalna długość pętli przy rurze 16×2 mm?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Nie ma jednej długości właściwej dla każdego układu. W praktyce często przyjmuje się około 80–100 m łącznie z doprowadzeniami, ale prawidłowy limit wynika z przepływu, średnicy wewnętrznej, oporu pętli, dostępnego ciśnienia i możliwości zrównoważenia instalacji."
      }
    },
    {
      "@type": "Question",
      "@id": "https://projekt-ogrzewania.pl/rozstaw-rur-ogrzewania-podlogowego-przy-pompie-ciepla/#rk-sp-faq-13",
      "name": "Czy można zastosować jeden rozstaw rur w całym domu?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Można, jeżeli obliczenia potwierdzą spełnienie wymagań wszystkich pomieszczeń. Najczęściej jednak łazienki, pomieszczenia narożne i strefy przy dużych przeszkleniach wymagają innego podejścia niż sypialnie lub komunikacja."
      }
    }
  ]
}
</script>

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

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

    var progress = root.querySelector(".rk-sp-progress");
    var areaInput = root.querySelector("#rk-sp-area");
    var areaOutput = root.querySelector("#rk-sp-area-out");
    var loadInput = root.querySelector("#rk-sp-load");
    var loadOutput = root.querySelector("#rk-sp-load-out");
    var floorInput = root.querySelector("#rk-sp-floor");
    var zoneInput = root.querySelector("#rk-sp-zone");
    var deltaInput = root.querySelector("#rk-sp-delta");
    var loopMaxInput = root.querySelector("#rk-sp-loop-max");
    var liveSummary = root.querySelector("#rk-sp-live-summary");
    var resultsHost = root.querySelector("#rk-sp-results");
    var chartHost = root.querySelector("#rk-sp-power-chart");
    var efficiencyHost = root.querySelector("#rk-sp-eff-list");

    var configs = [
      { pitch: 5, spacingResistance: 0.030, label: "specjalny" },
      { pitch: 10, spacingResistance: 0.045, label: "gęsty" },
      { pitch: 15, spacingResistance: 0.065, label: "pośredni" },
      { pitch: 20, spacingResistance: 0.090, label: "rzadki" }
    ];

    var chartSeries = [
      { supply: 30, color: "#28c9da" },
      { supply: 35, color: "#078fbe" },
      { supply: 40, color: "#ff7438" },
      { supply: 45, color: "#e33d35" }
    ];

    var number0 = new Intl.NumberFormat("pl-PL", { maximumFractionDigits: 0 });
    var number1 = new Intl.NumberFormat("pl-PL", { minimumFractionDigits: 1, maximumFractionDigits: 1 });

    function readState() {
      var zone = zoneInput.value.split("|").map(Number);
      return {
        area: Number(areaInput.value),
        load: Number(loadInput.value),
        floorResistance: Number(floorInput.value),
        roomTemperature: zone[0],
        maxFloorTemperature: zone[1],
        delta: Number(deltaInput.value),
        loopMax: Number(loopMaxInput.value)
      };
    }

    function logMeanDifference(supply, returnTemperature, roomTemperature) {
      var upper = supply - roomTemperature;
      var lower = returnTemperature - roomTemperature;
      if (upper <= 0 || lower <= 0) return 0;
      if (Math.abs(upper - lower) < 0.000001) return upper;
      return (upper - lower) / Math.log(upper / lower);
    }

    function heatFlux(config, supply, state) {
      var returnTemperature = supply - state.delta;
      var meanDifference = logMeanDifference(supply, returnTemperature, state.roomTemperature);
      if (!meanDifference) return 0;
      var surfaceResistance = 0.0926;
      var totalResistance = surfaceResistance + state.floorResistance + config.spacingResistance;
      return meanDifference / totalResistance;
    }

    function requiredSupply(config, state) {
      var low = state.roomTemperature + state.delta + 0.2;
      var high = 55;
      if (heatFlux(config, high, state) < state.load) return null;
      for (var i = 0; i < 60; i += 1) {
        var middle = (low + high) / 2;
        if (heatFlux(config, middle, state) >= state.load) high = middle;
        else low = middle;
      }
      return high;
    }

    function surfaceTemperatureForFlux(flux, roomTemperature) {
      if (flux <= 0) return roomTemperature;
      return roomTemperature + Math.pow(flux / 8.92, 1 / 1.1);
    }

    function surfaceFluxLimit(state) {
      var difference = state.maxFloorTemperature - state.roomTemperature;
      return difference > 0 ? 8.92 * Math.pow(difference, 1.1) : 0;
    }

    function pipeLength(config, state) {
      return state.area * (100 / config.pitch) * 1.05;
    }

    function hydraulicLoss(length, flowLitresPerHour) {
      if (length <= 0 || flowLitresPerHour <= 0) return 0;
      var diameter = 0.012;
      var density = 994;
      var viscosity = 0.000719;
      var roughness = 0.000007;
      var volumeFlow = flowLitresPerHour / 3600000;
      var sectionArea = Math.PI * diameter * diameter / 4;
      var velocity = volumeFlow / sectionArea;
      var reynolds = density * velocity * diameter / viscosity;
      var friction;

      if (reynolds < 2300) {
        friction = 64 / Math.max(reynolds, 1);
      } else {
        friction = 0.25 / Math.pow(Math.log10(roughness / (3.7 * diameter) + 5.74 / Math.pow(reynolds, 0.9)), 2);
      }

      return friction * (length / diameter) * (density * velocity * velocity / 2) / 1000 * 1.15;
    }

    function carnotIndicator(supply) {
      if (supply === null) return null;
      var sourceKelvin = 273.15;
      var condenserKelvin = 273.15 + supply + 5;
      return condenserKelvin / (condenserKelvin - sourceKelvin);
    }

    function calculate(config, state) {
      var demand = state.area * state.load;
      var length = pipeLength(config, state);
      var loops = Math.max(1, Math.ceil(length / state.loopMax));
      var averageLength = length / loops;
      var totalFlow = 0.86 * demand / state.delta;
      var flowPerLoop = totalFlow / loops;
      var pressureLoss = hydraulicLoss(averageLength, flowPerLoop);
      var supply = requiredSupply(config, state);
      var surfaceTemperature = surfaceTemperatureForFlux(state.load, state.roomTemperature);
      var limitFlux = surfaceFluxLimit(state);
      var status;

      if (state.load > limitFlux) {
        status = { className: "is-bad", text: "limit powierzchni" };
      } else if (supply === null) {
        status = { className: "is-bad", text: "poza zakresem" };
      } else if (supply <= 35) {
        status = { className: "is-good", text: "bardzo niska Tz" };
      } else if (supply <= 40) {
        status = { className: "is-warn", text: "wymaga weryfikacji" };
      } else {
        status = { className: "is-bad", text: "wysoka Tz" };
      }

      return {
        config: config,
        demand: demand,
        length: length,
        loops: loops,
        averageLength: averageLength,
        totalFlow: totalFlow,
        flowPerLoop: flowPerLoop,
        pressureLoss: pressureLoss,
        supply: supply,
        surfaceTemperature: surfaceTemperature,
        limitFlux: limitFlux,
        status: status,
        indicator: carnotIndicator(supply)
      };
    }

    function renderResults(state, calculations) {
      areaOutput.textContent = number0.format(state.area) + " m²";
      loadOutput.textContent = number0.format(state.load) + " W/m²";
      liveSummary.textContent = "Pomieszczenie " + number0.format(state.area) + " m² wymaga " + number0.format(state.area * state.load) + " W mocy grzewczej, czyli " + number0.format(state.load) + " W/m². Temperatura powierzchni wynikająca z tego strumienia to około " + number1.format(calculations[0].surfaceTemperature) + "°C.";

      resultsHost.innerHTML = calculations.map(function (result) {
        var supplyText = result.supply === null ? "> 55°C" : number1.format(result.supply) + "°C";
        return "" +
          "<article class=\"rk-sp-result\">" +
            "<div class=\"rk-sp-result-head\">" +
              "<span class=\"rk-sp-result-title\">Rozstaw " + result.config.pitch + " cm</span>" +
              "<span class=\"rk-sp-status " + result.status.className + "\">" + result.status.text + "</span>" +
            "</div>" +
            "<div class=\"rk-sp-result-values\">" +
              "<div class=\"rk-sp-result-value\"><span>Wymagana temperatura zasilania</span><b>" + supplyText + "</b></div>" +
              "<div class=\"rk-sp-result-value\"><span>Rura bez doprowadzeń</span><b>" + number0.format(result.length) + " m</b></div>" +
              "<div class=\"rk-sp-result-value\"><span>Liczba pętli</span><b>" + result.loops + "</b></div>" +
              "<div class=\"rk-sp-result-value\"><span>Przepływ całkowity</span><b>" + number0.format(result.totalFlow) + " l/h</b></div>" +
            "</div>" +
            "<div class=\"rk-sp-result-foot\">Średnia pętla: " + number1.format(result.averageLength) + " m · przepływ pętli: " + number0.format(result.flowPerLoop) + " l/h · orientacyjna strata rury: " + number1.format(result.pressureLoss) + " kPa.</div>" +
          "</article>";
      }).join("");
    }

    function renderEfficiency(calculations) {
      var valid = calculations.filter(function (result) { return result.indicator !== null; });
      var best = valid.length ? Math.max.apply(null, valid.map(function (result) { return result.indicator; })) : 1;

      efficiencyHost.innerHTML = calculations.map(function (result) {
        var index = result.indicator === null ? 0 : result.indicator / best * 100;
        var value = result.supply === null
          ? "wymagana Tz powyżej 55°C"
          : "Tz " + number1.format(result.supply) + "°C · indeks " + number0.format(index) + "%";
        return "" +
          "<div class=\"rk-sp-eff-row\">" +
            "<span class=\"rk-sp-eff-label\">" + result.config.pitch + " cm</span>" +
            "<div class=\"rk-sp-eff-track\" aria-hidden=\"true\"><div class=\"rk-sp-eff-bar\" style=\"width:" + Math.max(0, Math.min(100, index)) + "%\"></div></div>" +
            "<span class=\"rk-sp-eff-value\">" + value + "</span>" +
          "</div>";
      }).join("");
    }

    function renderPowerChart(state) {
      if (!chartHost) return;
      var width = Math.max(300, Math.round(chartHost.getBoundingClientRect().width || 700));
      var height = width < 470 ? 355 : 390;
      var margin = { top: 24, right: 16, bottom: 52, left: 48 };
      var plotWidth = width - margin.left - margin.right;
      var plotHeight = height - margin.top - margin.bottom;
      var limit = surfaceFluxLimit(state);
      var allValues = [limit];

      chartSeries.forEach(function (series) {
        configs.forEach(function (config) {
          allValues.push(heatFlux(config, series.supply, state));
        });
      });

      var maxValue = Math.max.apply(null, allValues.concat([80]));
      var yMax = Math.ceil(maxValue / 20) * 20;
      var x = function (index) {
        return margin.left + (configs.length === 1 ? plotWidth / 2 : index * plotWidth / (configs.length - 1));
      };
      var y = function (value) {
        return margin.top + plotHeight - value / yMax * plotHeight;
      };

      var grid = "";
      for (var tick = 0; tick <= 5; tick += 1) {
        var tickValue = yMax * tick / 5;
        var tickY = y(tickValue);
        grid += "<line x1=\"" + margin.left + "\" y1=\"" + tickY + "\" x2=\"" + (width - margin.right) + "\" y2=\"" + tickY + "\" stroke=\"#dce8ee\" stroke-width=\"1\"/>";
        grid += "<text x=\"" + (margin.left - 9) + "\" y=\"" + (tickY + 4) + "\" text-anchor=\"end\" fill=\"#687986\" font-size=\"11\">" + number0.format(tickValue) + "</text>";
      }

      var xLabels = configs.map(function (config, index) {
        return "<text x=\"" + x(index) + "\" y=\"" + (height - 18) + "\" text-anchor=\"middle\" fill=\"#465866\" font-size=\"12\" font-weight=\"800\">" + config.pitch + " cm</text>";
      }).join("");

      var seriesMarkup = chartSeries.map(function (series) {
        var points = configs.map(function (config, index) {
          return { x: x(index), y: y(heatFlux(config, series.supply, state)), value: heatFlux(config, series.supply, state) };
        });
        var path = points.map(function (point, index) {
          return (index === 0 ? "M" : "L") + point.x + " " + point.y;
        }).join(" ");
        var circles = points.map(function (point) {
          return "<circle cx=\"" + point.x + "\" cy=\"" + point.y + "\" r=\"4.5\" fill=\"#ffffff\" stroke=\"" + series.color + "\" stroke-width=\"3\"><title>" + series.supply + "°C, " + number1.format(point.value) + " W/m²</title></circle>";
        }).join("");
        return "<path d=\"" + path + "\" fill=\"none\" stroke=\"" + series.color + "\" stroke-width=\"3\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>" + circles;
      }).join("");

      var limitY = y(limit);
      var limitMarkup = "<line x1=\"" + margin.left + "\" y1=\"" + limitY + "\" x2=\"" + (width - margin.right) + "\" y2=\"" + limitY + "\" stroke=\"#687986\" stroke-width=\"2\" stroke-dasharray=\"7 6\"/>" +
        "<text x=\"" + (width - margin.right) + "\" y=\"" + Math.max(13, limitY - 7) + "\" text-anchor=\"end\" fill=\"#465866\" font-size=\"11\" font-weight=\"800\">limit " + number0.format(limit) + " W/m²</text>";

      chartHost.innerHTML = "" +
        "<svg class=\"rk-sp-chart-svg\" viewBox=\"0 0 " + width + " " + height + "\" role=\"img\" aria-labelledby=\"rk-sp-chart-title rk-sp-chart-desc\">" +
          "<title id=\"rk-sp-chart-title\">Moc podłogi w zależności od rozstawu rur i temperatury zasilania</title>" +
          "<desc id=\"rk-sp-chart-desc\">Cztery linie przedstawiają orientacyjną moc dla temperatur zasilania 30, 35, 40 i 45 stopni Celsjusza przy rozstawach 5, 10, 15 i 20 centymetrów.</desc>" +
          "<text x=\"" + margin.left + "\" y=\"14\" fill=\"#465866\" font-size=\"11\" font-weight=\"800\">W/m²</text>" +
          grid + limitMarkup + seriesMarkup + xLabels +
        "</svg>";
    }

    function update() {
      var state = readState();
      var calculations = configs.map(function (config) { return calculate(config, state); });
      renderResults(state, calculations);
      renderEfficiency(calculations);
      renderPowerChart(state);
    }

    [areaInput, loadInput, floorInput, zoneInput, deltaInput, loopMaxInput].forEach(function (control) {
      control.addEventListener("input", update);
      control.addEventListener("change", update);
    });

    function updateProgress() {
      if (!progress) return;
      var rect = root.getBoundingClientRect();
      var total = root.offsetHeight + window.innerHeight;
      var current = window.innerHeight - rect.top;
      var ratio = Math.max(0, Math.min(1, current / total));
      progress.style.width = ratio * 100 + "%";
    }

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

    if ("ResizeObserver" in window && chartHost) {
      var resizeObserver = new ResizeObserver(function () {
        renderPowerChart(readState());
      });
      resizeObserver.observe(chartHost);
    } else {
      window.addEventListener("resize", function () {
        renderPowerChart(readState());
      });
    }

    var authorTabs = Array.prototype.slice.call(root.querySelectorAll(".rk-sp-author-tab"));
    var authorPanels = Array.prototype.slice.call(root.querySelectorAll(".rk-sp-author-panel"));

    function activateAuthorTab(tab, shouldFocus) {
      authorTabs.forEach(function (item) {
        var selected = item === tab;
        item.setAttribute("aria-selected", selected ? "true" : "false");
        item.tabIndex = selected ? 0 : -1;
      });

      authorPanels.forEach(function (panel) {
        panel.hidden = panel.id !== tab.getAttribute("aria-controls");
      });

      if (shouldFocus) tab.focus();
    }

    authorTabs.forEach(function (tab, index) {
      tab.addEventListener("click", function () {
        activateAuthorTab(tab, false);
      });

      tab.addEventListener("keydown", function (event) {
        var nextIndex = index;
        if (event.key === "ArrowRight" || event.key === "ArrowDown") nextIndex = (index + 1) % authorTabs.length;
        else if (event.key === "ArrowLeft" || event.key === "ArrowUp") nextIndex = (index - 1 + authorTabs.length) % authorTabs.length;
        else if (event.key === "Home") nextIndex = 0;
        else if (event.key === "End") nextIndex = authorTabs.length - 1;
        else return;

        event.preventDefault();
        activateAuthorTab(authorTabs[nextIndex], true);
      });
    });

    update();
    updateProgress();
  }());
</script>
<p>Artykuł <a href="https://projekt-ogrzewania.pl/rozstaw-rur-ogrzewania-podlogowego-przy-pompie-ciepla/">Rozstaw rur ogrzewania podłogowego przy pompie ciepła.</a> pochodzi z serwisu <a href="https://projekt-ogrzewania.pl">Projekt Ogrzewania</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://projekt-ogrzewania.pl/rozstaw-rur-ogrzewania-podlogowego-przy-pompie-ciepla/feed/</wfw:commentRss>
			<slash:comments>2</slash:comments>
		
		
			</item>
		<item>
		<title>Jak działa ogrzewanie podłogowe?</title>
		<link>https://projekt-ogrzewania.pl/jak-dziala-ogrzewanie-podlogowe/</link>
					<comments>https://projekt-ogrzewania.pl/jak-dziala-ogrzewanie-podlogowe/#comments</comments>
		
		<dc:creator><![CDATA[Robert Kucharski]]></dc:creator>
		<pubDate>Sun, 22 Sep 2024 18:49:37 +0000</pubDate>
				<category><![CDATA[Ekologiczne ogrzewanie]]></category>
		<category><![CDATA[Energooszczędne ogrzewanie]]></category>
		<category><![CDATA[Instalacje grzewcze]]></category>
		<category><![CDATA[Komfort cieplny]]></category>
		<category><![CDATA[Nowoczesne systemy grzewcze]]></category>
		<category><![CDATA[Ogrzewanie podłogowe]]></category>
		<category><![CDATA[Poradnik budowlany]]></category>
		<category><![CDATA[Projekty ogrzewania]]></category>
		<category><![CDATA[Technologia budowlana]]></category>
		<category><![CDATA[energooszczędne rozwiązania]]></category>
		<category><![CDATA[instalacja grzewcza]]></category>
		<category><![CDATA[instalacje budowlane]]></category>
		<category><![CDATA[komfort cieplny]]></category>
		<category><![CDATA[nowoczesne ogrzewanie]]></category>
		<category><![CDATA[ogrzewanie elektryczne]]></category>
		<category><![CDATA[ogrzewanie podłogowe]]></category>
		<category><![CDATA[projekt ogrzewania]]></category>
		<category><![CDATA[systemy wodne]]></category>
		<category><![CDATA[technologie grzewcze]]></category>
		<guid isPermaLink="false">https://projekt-ogrzewania.pl/?p=1370</guid>

					<description><![CDATA[<p>Ogrzewanie podłogowe to nowoczesne i efektywne rozwiązanie grzewcze, które zapewnia równomierne rozprowadzanie ciepła w pomieszczeniu. Dzięki brakowi grzejników i zastosowaniu ukrytych rur lub kabli, system ten pozwala zaoszczędzić miejsce i poprawia estetykę wnętrz. Aby jednak zagwarantować optymalną wydajność i energooszczędność, niezbędny jest profesjonalnie wykonany projekt ogrzewania podłogowego, dostosowany do specyfiki budynku. Sprawdź więcej informacji na temat projektów, które pomogą ci w stworzeniu idealnej instalacji.</p>
<p>Artykuł <a href="https://projekt-ogrzewania.pl/jak-dziala-ogrzewanie-podlogowe/">Jak działa ogrzewanie podłogowe?</a> pochodzi z serwisu <a href="https://projekt-ogrzewania.pl">Projekt Ogrzewania</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<style>
  #rk-how-guide {
    --rk-navy: #102a3a;
    --rk-navy-2: #173f55;
    --rk-cyan: #22c7df;
    --rk-cyan-dark: #078caf;
    --rk-cyan-pale: #e9fbfe;
    --rk-orange: #ff5a36;
    --rk-orange-dark: #d83c1d;
    --rk-orange-pale: #fff3ee;
    --rk-green: #16825d;
    --rk-green-pale: #ecfdf5;
    --rk-red: #b42318;
    --rk-red-pale: #fff1f0;
    --rk-text: #385064;
    --rk-muted: #64788a;
    --rk-line: #d8e5ec;
    --rk-soft: #f4f9fb;
    --rk-white: #ffffff;
    --rk-shadow: 0 24px 60px rgba(16, 42, 58, 0.12);
    color: var(--rk-text);
    font-family: inherit;
    font-size: 18px;
    line-height: 1.82;
    margin: 0 auto;
    max-width: 1480px;
    overflow: hidden;
    position: relative;
  }

  #rk-how-guide,
  #rk-how-guide * {
    box-sizing: border-box;
  }

  #rk-how-guide img {
    height: auto;
    max-width: 100%;
  }

  #rk-how-guide a {
    color: var(--rk-cyan-dark);
    font-weight: 750;
    text-decoration-thickness: 2px;
    text-underline-offset: 3px;
  }

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

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

  #rk-how-guide button:focus-visible,
  #rk-how-guide a:focus-visible,
  #rk-how-guide input:focus-visible {
    outline: 3px solid rgba(34, 199, 223, 0.42);
    outline-offset: 3px;
  }

  #rk-how-guide h2,
  #rk-how-guide h3,
  #rk-how-guide h4 {
    color: var(--rk-navy);
    font-family: inherit;
    font-weight: 900;
    letter-spacing: -0.025em;
    line-height: 1.18;
    margin: 0;
  }

  #rk-how-guide p {
    margin: 0 0 1.25em;
  }

  #rk-how-guide strong {
    color: var(--rk-navy);
  }

  #rk-how-guide .rk-how-shell {
    background: var(--rk-white);
    border: 1px solid var(--rk-line);
    border-radius: 34px;
    box-shadow: var(--rk-shadow);
    overflow: hidden;
    position: relative;
  }

  #rk-how-guide .rk-how-progress-track {
    background: rgba(255, 255, 255, 0.12);
    height: 5px;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 9;
  }

  #rk-how-guide .rk-how-progress {
    background: linear-gradient(90deg, var(--rk-cyan), var(--rk-orange));
    height: 100%;
    width: 0;
  }

  #rk-how-guide .rk-how-hero {
    background:
      radial-gradient(circle at 88% 18%, rgba(255, 90, 54, 0.22), transparent 29%),
      radial-gradient(circle at 74% 88%, rgba(34, 199, 223, 0.18), transparent 34%),
      linear-gradient(135deg, #0b2232 0%, #12354a 60%, #1d3f50 100%);
    color: var(--rk-white);
    isolation: isolate;
    overflow: hidden;
    padding: clamp(42px, 6vw, 92px);
    position: relative;
  }

  #rk-how-guide .rk-how-hero::before,
  #rk-how-guide .rk-how-hero::after {
    border: 1px solid rgba(255, 255, 255, 0.09);
    border-radius: 50%;
    content: "";
    pointer-events: none;
    position: absolute;
    z-index: -1;
  }

  #rk-how-guide .rk-how-hero::before {
    height: 420px;
    right: -150px;
    top: -210px;
    width: 420px;
  }

  #rk-how-guide .rk-how-hero::after {
    bottom: -280px;
    height: 560px;
    right: 9%;
    width: 560px;
  }

  #rk-how-guide .rk-how-badge {
    align-items: center;
    border: 1px solid rgba(255, 255, 255, 0.22);
    border-radius: 999px;
    color: #d8f9ff;
    display: inline-flex;
    font-size: 0.78em;
    font-weight: 900;
    gap: 10px;
    letter-spacing: 0.1em;
    margin-bottom: 28px;
    padding: 10px 15px;
    text-transform: uppercase;
  }

  #rk-how-guide .rk-how-badge::before {
    background: var(--rk-orange);
    border-radius: 50%;
    box-shadow: 0 0 0 7px rgba(255, 90, 54, 0.16);
    content: "";
    height: 9px;
    width: 9px;
  }

  #rk-how-guide .rk-how-hero h2 {
    color: var(--rk-white);
    font-size: clamp(2.2rem, 5.3vw, 5rem);
    max-width: 1120px;
  }

  #rk-how-guide .rk-how-hero h2 span {
    color: #71ebf7;
  }

  #rk-how-guide .rk-how-hook {
    background: rgba(255, 255, 255, 0.08);
    border-left: 5px solid var(--rk-orange);
    border-radius: 0 22px 22px 0;
    margin: 34px 0 24px;
    max-width: 1120px;
    padding: 23px 28px;
  }

  #rk-how-guide .rk-how-hook p,
  #rk-how-guide .rk-how-hook strong {
    color: var(--rk-white);
    margin: 0;
  }

  #rk-how-guide .rk-how-hero-lead {
    color: #d5e4ed;
    font-size: clamp(1rem, 1.8vw, 1.25rem);
    max-width: 1090px;
  }

  #rk-how-guide .rk-how-hero-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 11px 22px;
    margin-top: 28px;
  }

  #rk-how-guide .rk-how-hero-meta span {
    align-items: center;
    color: #c4d7e2;
    display: inline-flex;
    font-size: 0.78em;
    font-weight: 800;
    gap: 9px;
  }

  #rk-how-guide .rk-how-hero-meta span::before {
    background: var(--rk-cyan);
    border-radius: 50%;
    content: "";
    height: 7px;
    width: 7px;
  }

  #rk-how-guide .rk-how-author-strip {
    align-items: center;
    display: flex;
    gap: 14px;
    margin-top: 31px;
  }

  #rk-how-guide .rk-how-author-strip img {
    border: 3px solid rgba(255, 255, 255, 0.8);
    border-radius: 50%;
    height: 58px;
    object-fit: cover;
    width: 58px;
  }

  #rk-how-guide .rk-how-author-strip b,
  #rk-how-guide .rk-how-author-strip small {
    display: block;
  }

  #rk-how-guide .rk-how-author-strip b {
    color: var(--rk-white);
    font-size: 1.03em;
  }

  #rk-how-guide .rk-how-author-strip small {
    color: #bcd1dd;
    line-height: 1.45;
  }

  #rk-how-guide .rk-how-content {
    padding: clamp(30px, 5vw, 72px);
  }

  #rk-how-guide .rk-how-learn {
    background: linear-gradient(135deg, var(--rk-soft), #eefcff);
    border: 1px solid var(--rk-line);
    border-radius: 26px;
    margin-bottom: 32px;
    padding: clamp(24px, 4vw, 42px);
  }

  #rk-how-guide .rk-how-learn-title {
    font-size: clamp(1.35rem, 2.6vw, 2rem);
    margin-bottom: 24px;
  }

  #rk-how-guide .rk-how-learn-grid,
  #rk-how-guide .rk-how-card-grid,
  #rk-how-guide .rk-how-check-grid {
    display: grid;
    gap: 18px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  #rk-how-guide .rk-how-learn-card,
  #rk-how-guide .rk-how-card,
  #rk-how-guide .rk-how-check {
    background: var(--rk-white);
    border: 1px solid var(--rk-line);
    border-radius: 20px;
    min-width: 0;
    padding: 22px;
  }

  #rk-how-guide .rk-how-learn-card {
    align-items: flex-start;
    display: flex;
    gap: 16px;
  }

  #rk-how-guide .rk-how-learn-no,
  #rk-how-guide .rk-how-check-no {
    align-items: center;
    background: var(--rk-orange-pale);
    border-radius: 13px;
    color: var(--rk-orange-dark);
    display: inline-flex;
    flex: 0 0 46px;
    font-size: 0.8em;
    font-weight: 950;
    height: 46px;
    justify-content: center;
  }

  #rk-how-guide .rk-how-learn-card h4,
  #rk-how-guide .rk-how-card h4,
  #rk-how-guide .rk-how-check h4 {
    font-size: 1.03em;
    margin-bottom: 7px;
  }

  #rk-how-guide .rk-how-learn-card p,
  #rk-how-guide .rk-how-card p,
  #rk-how-guide .rk-how-check p {
    font-size: 0.89em;
    line-height: 1.65;
    margin: 0;
  }

  #rk-how-guide .rk-how-nav {
    background: var(--rk-navy);
    border-radius: 24px;
    color: var(--rk-white);
    margin: 0 0 48px;
    padding: 24px;
  }

  #rk-how-guide .rk-how-nav strong {
    color: var(--rk-white);
    display: block;
    font-size: 0.85em;
    letter-spacing: 0.1em;
    margin-bottom: 15px;
    text-transform: uppercase;
  }

  #rk-how-guide .rk-how-nav-links {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
  }

  #rk-how-guide .rk-how-nav a {
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.16);
    border-radius: 999px;
    color: #eaf7fb;
    font-size: 0.78em;
    padding: 8px 13px;
    text-decoration: none;
  }

  #rk-how-guide .rk-how-nav a:hover,
  #rk-how-guide .rk-how-nav a:focus-visible {
    background: var(--rk-cyan);
    border-color: var(--rk-cyan);
    color: var(--rk-navy);
  }

  #rk-how-guide .rk-how-section {
    scroll-margin-top: 30px;
  }

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

  #rk-how-guide .rk-how-section-head {
    align-items: flex-start;
    display: flex;
    gap: 18px;
    margin-bottom: 28px;
  }

  #rk-how-guide .rk-how-section-no {
    align-items: center;
    background: var(--rk-navy);
    border-radius: 16px;
    color: var(--rk-white);
    display: inline-flex;
    flex: 0 0 58px;
    font-size: 1.05em;
    font-weight: 950;
    height: 58px;
    justify-content: center;
  }

  #rk-how-guide .rk-how-section-head h2 {
    font-size: clamp(1.65rem, 3.5vw, 2.75rem);
    margin-bottom: 8px;
  }

  #rk-how-guide .rk-how-section-head p {
    color: var(--rk-muted);
    font-size: 0.92em;
    margin: 0;
  }

  #rk-how-guide .rk-how-answer {
    align-items: center;
    background: linear-gradient(135deg, var(--rk-orange-pale), #fffaf7);
    border: 1px solid #ffc7b8;
    border-radius: 26px;
    display: grid;
    gap: 28px;
    grid-template-columns: minmax(0, 1.55fr) minmax(230px, 0.45fr);
    margin: 28px 0;
    padding: clamp(25px, 4vw, 44px);
  }

  #rk-how-guide .rk-how-answer-label,
  #rk-how-guide .rk-how-card-tag,
  #rk-how-guide .rk-how-formula-label {
    color: var(--rk-orange-dark);
    display: block;
    font-size: 0.72em;
    font-weight: 950;
    letter-spacing: 0.1em;
    margin-bottom: 9px;
    text-transform: uppercase;
  }

  #rk-how-guide .rk-how-answer-main {
    display: block;
    font-size: clamp(1.25rem, 2.8vw, 2rem);
    line-height: 1.28;
    margin-bottom: 14px;
  }

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

  #rk-how-guide .rk-how-answer-badge {
    background: var(--rk-orange);
    border-radius: 22px;
    color: var(--rk-white);
    padding: 25px;
    text-align: center;
  }

  #rk-how-guide .rk-how-answer-badge b,
  #rk-how-guide .rk-how-answer-badge span {
    color: var(--rk-white);
    display: block;
  }

  #rk-how-guide .rk-how-answer-badge b {
    font-size: 2.5em;
    line-height: 1;
    margin-bottom: 9px;
  }

  #rk-how-guide .rk-how-answer-badge span {
    font-size: 0.78em;
    font-weight: 800;
    line-height: 1.45;
  }

  #rk-how-guide .rk-how-truth,
  #rk-how-guide .rk-how-note,
  #rk-how-guide .rk-how-warning {
    border-radius: 18px;
    margin: 27px 0;
    padding: 22px 24px;
  }

  #rk-how-guide .rk-how-truth {
    background: var(--rk-cyan-pale);
    border-left: 5px solid var(--rk-cyan-dark);
  }

  #rk-how-guide .rk-how-note {
    background: var(--rk-green-pale);
    border-left: 5px solid var(--rk-green);
  }

  #rk-how-guide .rk-how-warning {
    background: var(--rk-red-pale);
    border-left: 5px solid var(--rk-red);
  }

  #rk-how-guide .rk-how-truth p,
  #rk-how-guide .rk-how-note p,
  #rk-how-guide .rk-how-warning p {
    margin: 0;
  }

  #rk-how-guide .rk-how-flow {
    background: var(--rk-soft);
    border: 1px solid var(--rk-line);
    border-radius: 27px;
    margin: 30px 0;
    padding: clamp(22px, 4vw, 40px);
  }

  #rk-how-guide .rk-how-flow-grid {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }

  #rk-how-guide .rk-how-flow-step {
    background: var(--rk-white);
    border: 1px solid var(--rk-line);
    border-radius: 17px;
    color: var(--rk-navy);
    cursor: pointer;
    min-height: 126px;
    padding: 17px 12px;
    position: relative;
    text-align: left;
    transition: transform 0.2s ease, border-color 0.2s ease, background 0.2s ease;
  }

  #rk-how-guide .rk-how-flow-step::after {
    color: var(--rk-cyan-dark);
    content: "→";
    font-size: 1.25em;
    font-weight: 900;
    position: absolute;
    right: -12px;
    top: 46px;
    z-index: 2;
  }

  #rk-how-guide .rk-how-flow-step:last-child::after {
    content: "";
  }

  #rk-how-guide .rk-how-flow-step:hover {
    transform: translateY(-3px);
  }

  #rk-how-guide .rk-how-flow-step.is-active {
    background: var(--rk-navy);
    border-color: var(--rk-navy);
    color: var(--rk-white);
  }

  #rk-how-guide .rk-how-flow-step b,
  #rk-how-guide .rk-how-flow-step small {
    color: inherit;
    display: block;
  }

  #rk-how-guide .rk-how-flow-step b {
    font-size: 0.92em;
    line-height: 1.3;
    margin-top: 13px;
  }

  #rk-how-guide .rk-how-flow-step small {
    font-size: 0.7em;
    line-height: 1.35;
    margin-top: 5px;
  }

  #rk-how-guide .rk-how-flow-no {
    align-items: center;
    background: var(--rk-cyan-pale);
    border-radius: 10px;
    color: var(--rk-cyan-dark);
    display: inline-flex;
    font-size: 0.72em;
    font-weight: 950;
    height: 31px;
    justify-content: center;
    width: 31px;
  }

  #rk-how-guide .rk-how-flow-step.is-active .rk-how-flow-no {
    background: var(--rk-orange);
    color: var(--rk-white);
  }

  #rk-how-guide .rk-how-flow-detail {
    background: var(--rk-white);
    border: 1px solid var(--rk-line);
    border-radius: 18px;
    margin-top: 18px;
    min-height: 142px;
    padding: 24px;
  }

  #rk-how-guide .rk-how-flow-detail strong {
    display: block;
    font-size: 1.18em;
    margin-bottom: 8px;
  }

  #rk-how-guide .rk-how-flow-detail p {
    margin: 0;
  }

  #rk-how-guide .rk-how-formula {
    background: var(--rk-navy);
    border-radius: 23px;
    color: var(--rk-white);
    margin: 28px 0;
    padding: clamp(23px, 4vw, 38px);
  }

  #rk-how-guide .rk-how-formula-label {
    color: #7ceaf5;
  }

  #rk-how-guide .rk-how-equation {
    color: var(--rk-white);
    font-size: clamp(1.25rem, 3.3vw, 2.25rem);
    font-weight: 900;
    letter-spacing: 0.01em;
    line-height: 1.35;
  }

  #rk-how-guide .rk-how-equation small {
    color: #c9dce6;
    display: block;
    font-size: 0.44em;
    font-weight: 500;
    line-height: 1.6;
    margin-top: 13px;
  }

  #rk-how-guide .rk-how-calculator {
    background: linear-gradient(145deg, #0c293a, #16465d);
    border-radius: 28px;
    color: var(--rk-white);
    margin: 30px 0;
    overflow: hidden;
  }

  #rk-how-guide .rk-how-calc-head {
    border-bottom: 1px solid rgba(255, 255, 255, 0.14);
    padding: clamp(25px, 4vw, 40px);
  }

  #rk-how-guide .rk-how-calc-head h3,
  #rk-how-guide .rk-how-calc-head p {
    color: var(--rk-white);
  }

  #rk-how-guide .rk-how-calc-head h3 {
    font-size: clamp(1.45rem, 3vw, 2.15rem);
    margin-bottom: 10px;
  }

  #rk-how-guide .rk-how-calc-head p {
    color: #cfe2ea;
    margin: 0;
  }

  #rk-how-guide .rk-how-calc-body {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(300px, 0.78fr);
  }

  #rk-how-guide .rk-how-controls {
    border-right: 1px solid rgba(255, 255, 255, 0.14);
    padding: clamp(25px, 4vw, 40px);
  }

  #rk-how-guide .rk-how-control + .rk-how-control {
    margin-top: 25px;
  }

  #rk-how-guide .rk-how-control label {
    align-items: baseline;
    color: var(--rk-white);
    display: flex;
    font-size: 0.88em;
    font-weight: 800;
    justify-content: space-between;
    margin-bottom: 9px;
  }

  #rk-how-guide .rk-how-control output {
    color: #79edf7;
    font-size: 1.06em;
    font-weight: 950;
  }

  #rk-how-guide .rk-how-control input[type="range"] {
    accent-color: var(--rk-orange);
    cursor: pointer;
    width: 100%;
  }

  #rk-how-guide .rk-how-control-scale {
    color: #a9c0cc;
    display: flex;
    font-size: 0.68em;
    justify-content: space-between;
    margin-top: 4px;
  }

  #rk-how-guide .rk-how-results {
    display: grid;
    gap: 12px;
    padding: clamp(25px, 4vw, 40px);
  }

  #rk-how-guide .rk-how-result {
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 17px;
    padding: 17px;
  }

  #rk-how-guide .rk-how-result span,
  #rk-how-guide .rk-how-result b {
    display: block;
  }

  #rk-how-guide .rk-how-result span {
    color: #bfd3dd;
    font-size: 0.72em;
    font-weight: 800;
    letter-spacing: 0.05em;
    text-transform: uppercase;
  }

  #rk-how-guide .rk-how-result b {
    color: var(--rk-white);
    font-size: 1.55em;
    margin-top: 3px;
  }

  #rk-how-guide .rk-how-calc-foot {
    background: rgba(0, 0, 0, 0.13);
    color: #bfd3dd;
    font-size: 0.76em;
    line-height: 1.6;
    margin: 0;
    padding: 18px clamp(25px, 4vw, 40px);
  }

  #rk-how-guide .rk-how-layers {
    background: var(--rk-soft);
    border: 1px solid var(--rk-line);
    border-radius: 25px;
    display: grid;
    gap: 22px;
    grid-template-columns: minmax(250px, 0.65fr) minmax(0, 1.35fr);
    margin: 28px 0;
    padding: clamp(24px, 4vw, 38px);
  }

  #rk-how-guide .rk-how-layer-stack {
    align-self: center;
    display: flex;
    flex-direction: column;
    gap: 6px;
  }

  #rk-how-guide .rk-how-layer {
    align-items: center;
    border-radius: 10px;
    color: var(--rk-navy);
    display: flex;
    font-size: 0.78em;
    font-weight: 900;
    justify-content: space-between;
    min-height: 45px;
    padding: 9px 13px;
  }

  #rk-how-guide .rk-how-layer:nth-child(1) { background: #e0f7fa; }
  #rk-how-guide .rk-how-layer:nth-child(2) { background: #d4dde3; }
  #rk-how-guide .rk-how-layer:nth-child(3) { background: #ffd1c6; }
  #rk-how-guide .rk-how-layer:nth-child(4) { background: #dce6eb; }
  #rk-how-guide .rk-how-layer:nth-child(5) { background: #d7f4ea; }

  #rk-how-guide .rk-how-layer small {
    color: inherit;
    font-size: 0.8em;
    font-weight: 700;
  }

  #rk-how-guide .rk-how-layers h3 {
    font-size: clamp(1.35rem, 2.8vw, 2rem);
    margin-bottom: 14px;
  }

  #rk-how-guide .rk-how-table-wrap {
    border: 1px solid var(--rk-line);
    border-radius: 22px;
    margin: 29px 0;
    overflow: hidden;
  }

  #rk-how-guide .rk-how-table-title {
    background: var(--rk-navy);
    color: var(--rk-white);
    display: block;
    font-size: 0.78em;
    font-weight: 900;
    letter-spacing: 0.08em;
    padding: 14px 18px;
    text-transform: uppercase;
  }

  #rk-how-guide table {
    border-collapse: collapse;
    margin: 0;
    table-layout: fixed;
    width: 100%;
  }

  #rk-how-guide th,
  #rk-how-guide td {
    border: 0;
    border-bottom: 1px solid var(--rk-line);
    padding: 17px;
    text-align: left;
    vertical-align: top;
  }

  #rk-how-guide th {
    background: #eaf4f7;
    color: var(--rk-navy);
    font-size: 0.78em;
    font-weight: 900;
    letter-spacing: 0.04em;
    text-transform: uppercase;
  }

  #rk-how-guide td {
    font-size: 0.88em;
    line-height: 1.62;
  }

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

  #rk-how-guide .rk-how-card-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin: 27px 0;
  }

  #rk-how-guide .rk-how-card {
    border-top: 4px solid var(--rk-cyan);
  }

  #rk-how-guide .rk-how-card-tag {
    color: var(--rk-cyan-dark);
  }

  #rk-how-guide .rk-how-check-grid {
    margin: 26px 0;
  }

  #rk-how-guide .rk-how-check {
    align-items: flex-start;
    display: flex;
    gap: 15px;
  }

  #rk-how-guide .rk-how-faq-list {
    display: grid;
    gap: 13px;
    margin-top: 26px;
  }

  #rk-how-guide details.rk-how-faq {
    background: var(--rk-white);
    border: 1px solid var(--rk-line);
    border-radius: 17px;
    overflow: hidden;
  }

  #rk-how-guide details.rk-how-faq[open] {
    border-color: #87dae7;
    box-shadow: 0 12px 28px rgba(16, 42, 58, 0.07);
  }

  #rk-how-guide details.rk-how-faq summary {
    color: var(--rk-navy);
    cursor: pointer;
    font-weight: 900;
    line-height: 1.45;
    list-style: none;
    padding: 19px 55px 19px 21px;
    position: relative;
  }

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

  #rk-how-guide details.rk-how-faq summary::after {
    align-items: center;
    background: var(--rk-cyan-pale);
    border-radius: 10px;
    color: var(--rk-cyan-dark);
    content: "+";
    display: flex;
    font-size: 1.25em;
    font-weight: 900;
    height: 31px;
    justify-content: center;
    position: absolute;
    right: 16px;
    top: 16px;
    width: 31px;
  }

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

  #rk-how-guide .rk-how-faq-answer {
    border-top: 1px solid var(--rk-line);
    padding: 18px 21px 21px;
  }

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

  #rk-how-guide .rk-how-sources {
    background: var(--rk-soft);
    border: 1px solid var(--rk-line);
    border-radius: 20px;
    font-size: 0.78em;
    line-height: 1.72;
    margin-top: 34px;
    padding: 23px;
  }

  #rk-how-guide .rk-how-sources strong {
    display: block;
    font-size: 1.08em;
    margin-bottom: 8px;
  }

  #rk-how-guide .rk-how-cta {
    background: linear-gradient(135deg, var(--rk-navy), #1e4659 72%, #514044);
    border-radius: 28px;
    color: var(--rk-white);
    margin-top: 58px;
    padding: clamp(30px, 5vw, 54px);
    text-align: center;
  }

  #rk-how-guide .rk-how-cta h3,
  #rk-how-guide .rk-how-cta p,
  #rk-how-guide .rk-how-cta strong {
    color: var(--rk-white);
  }

  #rk-how-guide .rk-how-cta h3 {
    font-size: clamp(1.55rem, 3.5vw, 2.7rem);
    margin-bottom: 13px;
  }

  #rk-how-guide .rk-how-cta p {
    color: #cfe0e8;
    margin: 0 auto 24px;
    max-width: 900px;
  }

  #rk-how-guide .rk-how-cta-link {
    background: var(--rk-orange);
    border-radius: 16px;
    box-shadow: 0 14px 30px rgba(255, 90, 54, 0.28);
    color: var(--rk-white) !important;
    display: block;
    font-size: clamp(0.92rem, 2vw, 1.16rem);
    font-weight: 950;
    margin: 0 auto;
    max-width: 980px;
    padding: 19px 24px;
    text-decoration: none;
    transition: transform 0.2s ease, background 0.2s ease;
  }

  #rk-how-guide .rk-how-cta-link:hover,
  #rk-how-guide .rk-how-cta-link:focus-visible {
    background: var(--rk-orange-dark);
    color: var(--rk-white);
    transform: translateY(-2px);
  }

  #rk-how-guide .rk-how-cta small {
    color: #aec5d0;
    display: block;
    line-height: 1.5;
    margin-top: 15px;
  }

  #rk-how-guide .rk-how-author-box {
    border: 1px solid var(--rk-line);
    border-radius: 28px;
    margin-top: 42px;
    overflow: hidden;
  }

  #rk-how-guide .rk-how-author-head {
    align-items: center;
    background: var(--rk-navy);
    border-bottom: 5px solid var(--rk-cyan);
    display: flex;
    justify-content: space-between;
    padding: clamp(25px, 4vw, 38px);
  }

  #rk-how-guide .rk-how-author-head h3,
  #rk-how-guide .rk-how-author-head p {
    color: var(--rk-white);
  }

  #rk-how-guide .rk-how-author-head h3 {
    font-size: clamp(1.65rem, 3.2vw, 2.7rem);
    margin-bottom: 5px;
  }

  #rk-how-guide .rk-how-author-head p {
    color: #c9dce6;
    margin: 0;
  }

  #rk-how-guide .rk-how-author-mark {
    border: 1px solid rgba(34, 199, 223, 0.38);
    border-radius: 14px;
    color: #7ceaf5;
    flex: 0 0 auto;
    font-size: 0.78em;
    font-weight: 950;
    letter-spacing: 0.08em;
    margin-left: 20px;
    padding: 13px 17px;
  }

  #rk-how-guide .rk-how-author-main {
    display: grid;
    grid-template-columns: minmax(255px, 0.6fr) minmax(0, 1.4fr);
  }

  #rk-how-guide .rk-how-author-profile {
    align-items: center;
    background: var(--rk-soft);
    border-right: 1px solid var(--rk-line);
    display: flex;
    flex-direction: column;
    padding: clamp(28px, 4vw, 44px);
    text-align: center;
  }

  #rk-how-guide .rk-how-author-profile img {
    border: 5px solid var(--rk-white);
    border-radius: 50%;
    box-shadow: 0 15px 34px rgba(16, 42, 58, 0.16);
    height: 190px;
    object-fit: cover;
    width: 190px;
  }

  #rk-how-guide .rk-how-author-profile h4 {
    font-size: 1.55em;
    margin: 23px 0 7px;
  }

  #rk-how-guide .rk-how-author-role {
    color: var(--rk-cyan-dark);
    font-size: 0.78em;
    font-weight: 950;
    letter-spacing: 0.06em;
    line-height: 1.55;
    text-transform: uppercase;
  }

  #rk-how-guide .rk-how-author-content {
    min-width: 0;
  }

  #rk-how-guide .rk-how-quote {
    padding: clamp(28px, 4vw, 45px);
  }

  #rk-how-guide .rk-how-quote::before {
    color: var(--rk-cyan);
    content: "“";
    display: block;
    font-family: Georgia, serif;
    font-size: 4em;
    font-weight: 900;
    height: 45px;
    line-height: 1;
  }

  #rk-how-guide .rk-how-quote blockquote {
    color: var(--rk-navy);
    font-size: clamp(1.05rem, 2vw, 1.38rem);
    font-style: italic;
    font-weight: 800;
    line-height: 1.65;
    margin: 0;
  }

  #rk-how-guide .rk-how-tabs {
    border-top: 1px solid var(--rk-line);
  }

  #rk-how-guide .rk-how-tab-buttons {
    background: var(--rk-soft);
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  #rk-how-guide .rk-how-tab-button {
    background: transparent;
    border: 0;
    border-bottom: 3px solid transparent;
    color: var(--rk-muted);
    cursor: pointer;
    font-size: 0.78em;
    font-weight: 950;
    letter-spacing: 0.06em;
    padding: 18px 12px;
    text-transform: uppercase;
  }

  #rk-how-guide .rk-how-tab-button.is-active {
    background: var(--rk-white);
    border-bottom-color: var(--rk-cyan-dark);
    color: var(--rk-cyan-dark);
  }

  #rk-how-guide .rk-how-tab-panel {
    display: none;
    padding: clamp(25px, 4vw, 40px);
  }

  #rk-how-guide .rk-how-tab-panel.is-active {
    display: block;
  }

  #rk-how-guide .rk-how-tab-panel p:last-child {
    margin-bottom: 0;
  }

  #rk-how-guide .rk-how-portals {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
  }

  #rk-how-guide .rk-how-portals a {
    border: 1px solid var(--rk-line);
    border-radius: 999px;
    color: var(--rk-navy);
    padding: 9px 15px;
    text-decoration: none;
  }

  #rk-how-guide .rk-how-portals a:hover,
  #rk-how-guide .rk-how-portals a:focus-visible {
    background: var(--rk-cyan-pale);
    border-color: var(--rk-cyan);
  }

  @media (max-width: 1060px) {
    #rk-how-guide .rk-how-flow-grid {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    #rk-how-guide .rk-how-flow-step:nth-child(3)::after,
    #rk-how-guide .rk-how-flow-step:last-child::after {
      content: "";
    }

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

  @media (max-width: 820px) {
    #rk-how-guide {
      font-size: 17px;
    }

    #rk-how-guide .rk-how-shell {
      border-radius: 24px;
    }

    #rk-how-guide .rk-how-answer,
    #rk-how-guide .rk-how-calc-body,
    #rk-how-guide .rk-how-layers,
    #rk-how-guide .rk-how-author-main {
      grid-template-columns: 1fr;
    }

    #rk-how-guide .rk-how-controls,
    #rk-how-guide .rk-how-author-profile {
      border-bottom: 1px solid var(--rk-line);
      border-right: 0;
    }

    #rk-how-guide .rk-how-controls {
      border-bottom-color: rgba(255, 255, 255, 0.14);
    }

    #rk-how-guide .rk-how-answer-badge {
      text-align: left;
    }
  }

  @media (max-width: 700px) {
    #rk-how-guide .rk-how-hero,
    #rk-how-guide .rk-how-content {
      padding-left: 20px;
      padding-right: 20px;
    }

    #rk-how-guide .rk-how-learn-grid,
    #rk-how-guide .rk-how-card-grid,
    #rk-how-guide .rk-how-check-grid,
    #rk-how-guide .rk-how-flow-grid {
      grid-template-columns: 1fr;
    }

    #rk-how-guide .rk-how-flow-step {
      min-height: 0;
    }

    #rk-how-guide .rk-how-flow-step::after,
    #rk-how-guide .rk-how-flow-step:nth-child(3)::after {
      bottom: -15px;
      content: "↓";
      left: 50%;
      right: auto;
      top: auto;
      transform: translateX(-50%);
    }

    #rk-how-guide .rk-how-flow-step:last-child::after {
      content: "";
    }

    #rk-how-guide .rk-how-section-head {
      display: block;
    }

    #rk-how-guide .rk-how-section-no {
      height: 48px;
      margin-bottom: 14px;
      width: 48px;
    }

    #rk-how-guide .rk-how-table-wrap {
      border: 0;
      border-radius: 0;
      overflow: visible;
    }

    #rk-how-guide .rk-how-table-title {
      border-radius: 16px;
      margin-bottom: 13px;
    }

    #rk-how-guide table,
    #rk-how-guide tbody,
    #rk-how-guide tr,
    #rk-how-guide td {
      display: block;
      width: 100%;
    }

    #rk-how-guide thead {
      display: none;
    }

    #rk-how-guide tr {
      background: var(--rk-white);
      border: 1px solid var(--rk-line);
      border-radius: 17px;
      margin-bottom: 13px;
      overflow: hidden;
    }

    #rk-how-guide td,
    #rk-how-guide tr:last-child td {
      border-bottom: 1px solid var(--rk-line);
      display: grid;
      gap: 10px;
      grid-template-columns: minmax(105px, 0.45fr) minmax(0, 1fr);
      padding: 14px 15px;
    }

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

    #rk-how-guide td::before {
      color: var(--rk-cyan-dark);
      content: attr(data-label);
      font-size: 0.72em;
      font-weight: 950;
      letter-spacing: 0.04em;
      text-transform: uppercase;
    }

    #rk-how-guide .rk-how-author-head {
      align-items: flex-start;
      display: block;
    }

    #rk-how-guide .rk-how-author-mark {
      display: inline-block;
      margin: 17px 0 0;
    }

    #rk-how-guide .rk-how-tab-button {
      font-size: 0.68em;
      letter-spacing: 0.02em;
      padding: 15px 6px;
    }
  }

  @media (max-width: 460px) {
    #rk-how-guide {
      font-size: 16px;
    }

    #rk-how-guide .rk-how-hero h2 {
      font-size: 2.05rem;
    }

    #rk-how-guide .rk-how-author-strip {
      align-items: flex-start;
    }

    #rk-how-guide .rk-how-author-strip img {
      height: 50px;
      width: 50px;
    }

    #rk-how-guide td {
      display: block;
    }

    #rk-how-guide td::before {
      display: block;
      margin-bottom: 5px;
    }

    #rk-how-guide .rk-how-tab-buttons {
      grid-template-columns: 1fr;
    }
  }

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

<article id="rk-how-guide">
  <div class="rk-how-shell">
    <div class="rk-how-progress-track" aria-hidden="true"><div class="rk-how-progress"></div></div>

    <header class="rk-how-hero">
      <div class="rk-how-badge">Zasada działania • hydraulika • fizyka ciepła</div>
      <h2>Jak działa ogrzewanie podłogowe? <span>Od źródła ciepła do powierzchni podłogi</span></h2>

      <div class="rk-how-hook">
        <p><strong>Podłogówka nie ogrzewa domu dlatego, że „ciepło idzie do góry”. Działa dlatego, że duża powierzchnia podłogi przekazuje wymaganą moc przy niewielkiej różnicy temperatur.</strong></p>
      </div>

      <p class="rk-how-hero-lead">W tym opracowaniu prześledzimy cały obieg: podgrzanie wody, pracę pompy, rozdział na pętle, przewodzenie przez jastrych oraz oddawanie energii przez promieniowanie i konwekcję naturalną. Pokażę również, co naprawdę regulują rotametry, termostaty i automatyka pogodowa.</p>

      <div class="rk-how-hero-meta">
        <span>Aktualizacja: 23 sierpnia 2026 r.</span>
        <span>Podstawa: ISO 11855 • EN 1264 • bilans hydrauliczny</span>
        <span>Poziom: inwestor, instalator i projektant</span>
      </div>

      <div class="rk-how-author-strip" itemscope itemtype="https://schema.org/Person">
        <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 ogrzewania podłogowego" width="58" height="58" loading="eager" itemprop="image">
        <div>
          <b itemprop="name">Robert Kucharski</b>
          <small itemprop="jobTitle">Projektant instalacji sanitarnych • specjalista HVAC i ogrzewania podłogowego • autor Projekt-Ogrzewania.pl</small>
        </div>
      </div>
    </header>

    <div class="rk-how-content">
      <section class="rk-how-learn" aria-labelledby="rk-how-learn-title">
        <h3 class="rk-how-learn-title" id="rk-how-learn-title">Po przeczytaniu będziesz rozumieć:</h3>
        <div class="rk-how-learn-grid">
          <div class="rk-how-learn-card">
            <div class="rk-how-learn-no" aria-hidden="true">01</div>
            <div><h4>Co naprawdę przenosi ciepło?</h4><p>Jak energia przechodzi z wody do rury, jastrychu, okładziny i ostatecznie do pomieszczenia.</p></div>
          </div>
          <div class="rk-how-learn-card">
            <div class="rk-how-learn-no" aria-hidden="true">02</div>
            <div><h4>Po co jest przepływ i różnica temperatur?</h4><p>Dlaczego moc pętli zależy od ilości wody oraz spadku temperatury między zasilaniem i powrotem.</p></div>
          </div>
          <div class="rk-how-learn-card">
            <div class="rk-how-learn-no" aria-hidden="true">03</div>
            <div><h4>Co robi rozdzielacz?</h4><p>Jak rozdziela strumień, umożliwia równoważenie hydrauliczne i sterowanie poszczególnymi strefami.</p></div>
          </div>
          <div class="rk-how-learn-card">
            <div class="rk-how-learn-no" aria-hidden="true">04</div>
            <div><h4>Skąd bierze się bezwładność?</h4><p>Dlaczego o szybkości reakcji decydują głównie masa, grubość i konstrukcja podłogi, a nie sama rura.</p></div>
          </div>
        </div>
      </section>

      <nav class="rk-how-nav" aria-label="Spis treści artykułu">
        <strong>Na skróty</strong>
        <div class="rk-how-nav-links">
          <a href="#rk-how-zasada">Krótka odpowiedź</a>
          <a href="#rk-how-obieg">Obieg wody</a>
          <a href="#rk-how-model">Model interaktywny</a>
          <a href="#rk-how-przenikanie">Przekazywanie ciepła</a>
          <a href="#rk-how-elementy">Elementy systemu</a>
          <a href="#rk-how-hydraulika">Przepływ i moc</a>
          <a href="#rk-how-bezwladnosc">Bezwładność</a>
          <a href="#rk-how-sterowanie">Sterowanie</a>
          <a href="#rk-how-rodzaje">Wodne czy elektryczne</a>
          <a href="#rk-how-posadzka">Wykończenie podłogi</a>
          <a href="#rk-how-efektywnosc">Efektywność</a>
          <a href="#rk-how-bledy">Błędy</a>
          <a href="#rk-how-faq">FAQ</a>
        </div>
      </nav>

      <section class="rk-how-section" id="rk-how-zasada" aria-labelledby="rk-how-s1">
        <div class="rk-how-section-head">
          <div class="rk-how-section-no">1</div>
          <div>
            <h2 id="rk-how-s1">Jak działa ogrzewanie podłogowe – najkrótsza poprawna odpowiedź</h2>
            <p>System przekazuje energię do pomieszczenia całą powierzchnią podłogi, ale każdy etap ma własne opory i ograniczenia.</p>
          </div>
        </div>

        <div class="rk-how-answer">
          <div>
            <span class="rk-how-answer-label">Istota działania</span>
            <strong class="rk-how-answer-main">Woda niesie energię, rura oddaje ją do jastrychu, a ogrzana powierzchnia podłogi wymienia ciepło z pomieszczeniem.</strong>
            <p>Temperatura zasilania sama nie mówi, ile mocy otrzyma pokój. Potrzebne są jeszcze przepływ, temperatura powrotu, rozstaw i długość rury, opór okładziny, temperatura powierzchni oraz strata ciepła pomieszczenia.</p>
          </div>
          <div class="rk-how-answer-badge">
            <b>6</b>
            <span>połączonych etapów od źródła ciepła do powietrza i przegród pomieszczenia</span>
          </div>
        </div>

        <p><strong>Jak działa ogrzewanie podłogowe wodne?</strong> Źródło ciepła przygotowuje wodę o temperaturze wynikającej z warunków zewnętrznych i wymaganej mocy. Pompa wymusza obieg, rozdzielacz dzieli strumień pomiędzy pętle, a przewody zatopione w warstwie grzewczej przekazują energię do podłogi. Powierzchnia podłogi oddaje ją następnie do otoczenia przez promieniowanie cieplne oraz konwekcję naturalną.</p>

        <div class="rk-how-truth">
          <p><strong>Ważne rozróżnienie:</strong> woda nie „produkuje” ciepła w pętli. Jest nośnikiem energii dostarczonej przez pompę ciepła, kocioł albo inne źródło. Rura, jastrych i wykończenie podłogi tworzą wymiennik ciepła o bardzo dużej powierzchni.</p>
        </div>
      </section>

      <section class="rk-how-section" id="rk-how-obieg" aria-labelledby="rk-how-s2">
        <div class="rk-how-section-head">
          <div class="rk-how-section-no">2</div>
          <div>
            <h2 id="rk-how-s2">Obieg wody w ogrzewaniu podłogowym krok po kroku</h2>
            <p>Kliknij etap, aby zobaczyć jego funkcję i typowy skutek nieprawidłowego doboru.</p>
          </div>
        </div>

        <div class="rk-how-flow" data-rk-flow>
          <div class="rk-how-flow-grid" role="list" aria-label="Etapy działania wodnego ogrzewania podłogowego">
            <button class="rk-how-flow-step is-active" id="rk-how-flow-1" type="button" data-flow-step="0" aria-pressed="true">
              <span class="rk-how-flow-no">01</span><b>Źródło ciepła</b><small>przygotowuje wodę</small>
            </button>
            <button class="rk-how-flow-step" id="rk-how-flow-2" type="button" data-flow-step="1" aria-pressed="false">
              <span class="rk-how-flow-no">02</span><b>Pompa obiegowa</b><small>wymusza przepływ</small>
            </button>
            <button class="rk-how-flow-step" id="rk-how-flow-3" type="button" data-flow-step="2" aria-pressed="false">
              <span class="rk-how-flow-no">03</span><b>Rozdzielacz</b><small>dzieli strumień</small>
            </button>
            <button class="rk-how-flow-step" id="rk-how-flow-4" type="button" data-flow-step="3" aria-pressed="false">
              <span class="rk-how-flow-no">04</span><b>Pętle</b><small>transportują energię</small>
            </button>
            <button class="rk-how-flow-step" id="rk-how-flow-5" type="button" data-flow-step="4" aria-pressed="false">
              <span class="rk-how-flow-no">05</span><b>Podłoga</b><small>rozprowadza ciepło</small>
            </button>
            <button class="rk-how-flow-step" id="rk-how-flow-6" type="button" data-flow-step="5" aria-pressed="false">
              <span class="rk-how-flow-no">06</span><b>Powrót</b><small>zamyka obieg</small>
            </button>
          </div>
          <div class="rk-how-flow-detail" aria-live="polite">
            <strong data-flow-title>1. Źródło ciepła ustala temperaturę zasilania</strong>
            <p data-flow-text>Pompa ciepła, kocioł lub inne urządzenie przekazuje energię wodzie. Temperatura powinna wynikać z krzywej grzewczej i obliczonej mocy podłogi, a nie ze stałej wartości ustawionej „na zapas”. Zbyt wysoka temperatura zwiększa ryzyko przegrzewania i może pogorszyć sprawność źródła.</p>
          </div>
        </div>

        <p>W prawidłowo zaprojektowanym układzie każda pętla zaczyna się na belce zasilającej i kończy na belce powrotnej. Woda nie powinna wybierać wyłącznie najkrótszej drogi. Rotametry i zawory służą do ustawienia takich przepływów, aby każdy obwód otrzymał strumień odpowiadający jego obciążeniu cieplnemu.</p>

        <p>Szczegółową budowę i sposób regulacji opisuję w opracowaniu <a href="https://projekt-ogrzewania.pl/rozdzielacz-do-podlogowki-kluczowy-element-systemu-ogrzewania-podlogowego/">rozdzielacz do podłogówki – budowa, przepływy i równoważenie</a>.</p>
      </section>

      <section class="rk-how-section" id="rk-how-model" aria-labelledby="rk-how-s3">
        <div class="rk-how-section-head">
          <div class="rk-how-section-no">3</div>
          <div>
            <h2 id="rk-how-s3">Interaktywny przykład: co przenosi energię w pętli?</h2>
            <p>Zmień parametry i zobacz, jak przepływ oraz różnica temperatur wpływają na bilans po stronie wody.</p>
          </div>
        </div>

        <div class="rk-how-formula">
          <span class="rk-how-formula-label">Uproszczony bilans mocy wody</span>
          <div class="rk-how-equation">P ≈ 69,8 × V̇ × ΔT
            <small>P – moc przenoszona przez wodę [W], V̇ – przepływ [l/min], ΔT – różnica temperatur zasilania i powrotu [K]. Współczynnik dotyczy wody w typowym zakresie temperatur ogrzewania podłogowego.</small>
          </div>
        </div>

        <div class="rk-how-calculator" id="rk-how-loop-model" aria-label="Model mocy przenoszonej przez wodę w pętli ogrzewania podłogowego">
          <div class="rk-how-calc-head">
            <h3>Model bilansu jednej pętli</h3>
            <p>To narzędzie edukacyjne pokazuje zależności hydrauliczne. Nie wyznacza temperatury powierzchni, rozstawu rur ani wymaganej mocy pomieszczenia.</p>
          </div>
          <div class="rk-how-calc-body">
            <div class="rk-how-controls">
              <div class="rk-how-control">
                <label for="rk-how-supply">Temperatura zasilania <output id="rk-how-supply-out">35°C</output></label>
                <input id="rk-how-supply" type="range" min="28" max="45" step="1" value="35">
                <div class="rk-how-control-scale"><span>28°C</span><span>45°C</span></div>
              </div>
              <div class="rk-how-control">
                <label for="rk-how-delta">Różnica zasilanie–powrót <output id="rk-how-delta-out">5 K</output></label>
                <input id="rk-how-delta" type="range" min="2" max="10" step="0.5" value="5">
                <div class="rk-how-control-scale"><span>2 K</span><span>10 K</span></div>
              </div>
              <div class="rk-how-control">
                <label for="rk-how-flow-rate">Przepływ pętli <output id="rk-how-flow-rate-out">1,5 l/min</output></label>
                <input id="rk-how-flow-rate" type="range" min="0.5" max="3" step="0.1" value="1.5">
                <div class="rk-how-control-scale"><span>0,5 l/min</span><span>3,0 l/min</span></div>
              </div>
              <div class="rk-how-control">
                <label for="rk-how-area">Aktywna powierzchnia pętli <output id="rk-how-area-out">8 m²</output></label>
                <input id="rk-how-area" type="range" min="4" max="25" step="0.5" value="8">
                <div class="rk-how-control-scale"><span>4 m²</span><span>25 m²</span></div>
              </div>
            </div>
            <div class="rk-how-results" aria-live="polite">
              <div class="rk-how-result"><span>Temperatura powrotu</span><b id="rk-how-return-result">30,0°C</b></div>
              <div class="rk-how-result"><span>Średnia temperatura wody</span><b id="rk-how-mean-result">32,5°C</b></div>
              <div class="rk-how-result"><span>Moc po stronie wody</span><b id="rk-how-power-result">524 W</b></div>
              <div class="rk-how-result"><span>Bilans na powierzchnię</span><b id="rk-how-flux-result">65 W/m²</b></div>
            </div>
          </div>
          <p class="rk-how-calc-foot">Wynik zakłada stan ustalony i pokazuje energię oddawaną przez schładzającą się wodę. Rzeczywisty strumień do pomieszczenia zależy również od strat w dół, konstrukcji podłogi, rozstawu rur, temperatury powierzchni, oporu okładziny i warunków wewnętrznych. Nie należy na tej podstawie dobierać pętli bez obliczeń cieplnych i hydraulicznych.</p>
        </div>

        <div class="rk-how-note">
          <p><strong>Przykład:</strong> przy przepływie 1,5 l/min i różnicy temperatur 5 K woda przenosi około 524 W. Jeśli pętla obsługuje 8 m² aktywnej podłogi, bilans odpowiada około 65 W/m². Nie oznacza to jednak automatycznie, że każda konstrukcja podłogi będzie w stanie oddać taką moc przy zadanej temperaturze zasilania.</p>
        </div>
      </section>

      <section class="rk-how-section" id="rk-how-przenikanie" aria-labelledby="rk-how-s4">
        <div class="rk-how-section-head">
          <div class="rk-how-section-no">4</div>
          <div>
            <h2 id="rk-how-s4">Jak ciepło przechodzi przez podłogę?</h2>
            <p>Najpierw przewodzenie w warstwach, później promieniowanie i konwekcja na granicy z pomieszczeniem.</p>
          </div>
        </div>

        <div class="rk-how-layers">
          <div class="rk-how-layer-stack" aria-label="Warstwy podłogi z ogrzewaniem podłogowym">
            <div class="rk-how-layer"><span>Pomieszczenie</span><small>promieniowanie + konwekcja</small></div>
            <div class="rk-how-layer"><span>Okładzina</span><small>opór cieplny</small></div>
            <div class="rk-how-layer"><span>Jastrych z rurą</span><small>rozprowadzenie energii</small></div>
            <div class="rk-how-layer"><span>Izolacja</span><small>ograniczenie strat w dół</small></div>
            <div class="rk-how-layer"><span>Strop lub podłoże</span><small>warstwa konstrukcyjna</small></div>
          </div>
          <div>
            <h3>Trzy mechanizmy, jedna powierzchnia grzewcza</h3>
            <p><strong>Przewodzenie:</strong> energia przechodzi przez ściankę rury, jastrych i materiał wykończeniowy. Im większy łączny opór cieplny warstw nad rurą, tym większej różnicy temperatur potrzeba do uzyskania tej samej mocy.</p>
            <p><strong>Promieniowanie cieplne:</strong> ogrzana podłoga wymienia energię z chłodniejszymi powierzchniami i ludźmi znajdującymi się w pomieszczeniu. Nie wymaga przepływu powietrza.</p>
            <p><strong>Konwekcja naturalna:</strong> powietrze stykające się z podłogą ogrzewa się, zmienia gęstość i powoli przemieszcza. Podłogówka nie jest zatem systemem „wyłącznie promieniującym”.</p>
          </div>
        </div>

        <p>Normowe metody wyznaczania mocy odnoszą strumień ciepła do różnicy między średnią temperaturą powierzchni grzewczej a temperaturą pomieszczenia. Dlatego ustawienie wyższej temperatury wody nie może w nieskończoność zwiększać mocy. Ograniczeniem staje się dopuszczalna temperatura powierzchni, komfort użytkownika, okładzina oraz obciążenie cieplne.</p>

        <div class="rk-how-warning">
          <p><strong>Nie używaj jednej temperatury dla całego domu bez sprawdzenia:</strong> łazienka, salon z przeszkleniami i sypialnia mogą mieć różne obciążenia, różną aktywną powierzchnię oraz inne wykończenie podłogi. Rozstaw i przepływ powinny wynikać z obliczeń pomieszczenie po pomieszczeniu.</p>
        </div>
      </section>

      <section class="rk-how-section" id="rk-how-elementy" aria-labelledby="rk-how-s5">
        <div class="rk-how-section-head">
          <div class="rk-how-section-no">5</div>
          <div>
            <h2 id="rk-how-s5">Z czego składa się wodne ogrzewanie podłogowe?</h2>
            <p>Każdy element odpowiada za inny etap transportu, podziału albo regulacji energii.</p>
          </div>
        </div>

        <div class="rk-how-table-wrap">
          <span class="rk-how-table-title">Element – funkcja – skutek błędnego doboru</span>
          <table>
            <thead>
              <tr><th>Element</th><th>Co robi?</th><th>Co może pójść źle?</th></tr>
            </thead>
            <tbody>
              <tr>
                <td data-label="Element"><strong>Źródło ciepła</strong></td>
                <td data-label="Funkcja">Podgrzewa czynnik do temperatury wynikającej z aktualnego zapotrzebowania budynku.</td>
                <td data-label="Błąd">Przewymiarowanie, taktowanie albo niepotrzebnie wysoka temperatura zasilania.</td>
              </tr>
              <tr>
                <td data-label="Element"><strong>Pompa obiegowa</strong></td>
                <td data-label="Funkcja">Pokonuje opory rur, rozdzielacza, armatury i źródła, utrzymując wymagany przepływ.</td>
                <td data-label="Błąd">Niedogrzane obwody, hałas, nadmierne zużycie energii lub niestabilna regulacja.</td>
              </tr>
              <tr>
                <td data-label="Element"><strong>Rozdzielacz</strong></td>
                <td data-label="Funkcja">Dzieli wodę na pętle i umożliwia pomiar, regulację oraz odcięcie poszczególnych obwodów.</td>
                <td data-label="Błąd">Najkrótsze pętle przejmują przepływ, a dłuższe pozostają niedogrzane.</td>
              </tr>
              <tr>
                <td data-label="Element"><strong>Rury</strong></td>
                <td data-label="Funkcja">Transportują wodę i przekazują energię do warstwy grzewczej.</td>
                <td data-label="Błąd">Zbyt długie pętle, wysokie opory, zagięcia, niezgodny system połączeń lub brak bariery tlenowej.</td>
              </tr>
              <tr>
                <td data-label="Element"><strong>Jastrych lub płyta systemowa</strong></td>
                <td data-label="Funkcja">Rozprowadza ciepło na powierzchni i może magazynować znaczną ilość energii.</td>
                <td data-label="Błąd">Nierówna temperatura, pęknięcia, duża bezwładność albo niekontrolowane straty w dół.</td>
              </tr>
              <tr>
                <td data-label="Element"><strong>Automatyka</strong></td>
                <td data-label="Funkcja">Dostosowuje temperaturę wody, pracę pompy i dostępność przepływu w strefach.</td>
                <td data-label="Błąd">Ciągłe zamykanie obwodów, przegrzewanie, taktowanie źródła i konflikty regulatorów.</td>
              </tr>
            </tbody>
          </table>
        </div>

        <p>Sam wybór dobrej rury nie określa jeszcze działania systemu. Jej średnica wewnętrzna, długość i wymagany przepływ wpływają na opory hydrauliczne. Zasady doboru znajdziesz w technicznym poradniku <a href="https://projekt-ogrzewania.pl/rura-pex-do-ogrzewania-podlogowego/">rura PEX do ogrzewania podłogowego</a>.</p>
      </section>

      <section class="rk-how-section" id="rk-how-hydraulika" aria-labelledby="rk-how-s6">
        <div class="rk-how-section-head">
          <div class="rk-how-section-no">6</div>
          <div>
            <h2 id="rk-how-s6">Temperatura, przepływ i moc pętli – jak są ze sobą połączone?</h2>
            <p>Podłogówka jest jednocześnie wymiennikiem ciepła i siecią hydrauliczną.</p>
          </div>
        </div>

        <p>Temperatura zasilania określa poziom temperatury wody wpływającej do pętli. Temperatura powrotu pokazuje, jak bardzo woda schłodziła się podczas przekazywania energii. Ich różnica, oznaczana jako ΔT, wraz z przepływem pozwala obliczyć moc przenoszoną przez wodę.</p>

        <div class="rk-how-formula">
          <span class="rk-how-formula-label">Przepływ wymagany dla zadanej mocy</span>
          <div class="rk-how-equation">V̇ [l/min] ≈ P [W] ÷ (69,8 × ΔT [K])
            <small>Dla pętli o mocy 600 W i różnicy temperatur 5 K: 600 ÷ (69,8 × 5) ≈ 1,72 l/min. To przepływ wynikający z bilansu energii; trzeba jeszcze sprawdzić stratę ciśnienia pętli i możliwości pompy.</small>
          </div>
        </div>

        <div class="rk-how-card-grid">
          <div class="rk-how-card">
            <span class="rk-how-card-tag">Za mały przepływ</span>
            <h4>Duża różnica temperatur</h4>
            <p>Woda silnie się schładza, końcowy fragment pętli może mieć niższą temperaturę, a wymagana moc nie zostanie dostarczona.</p>
          </div>
          <div class="rk-how-card">
            <span class="rk-how-card-tag">Przepływ projektowy</span>
            <h4>Bilans mocy i oporów</h4>
            <p>Każda pętla otrzymuje tyle wody, ile potrzeba do przeniesienia jej obliczeniowej mocy przy przyjętym ΔT.</p>
          </div>
          <div class="rk-how-card">
            <span class="rk-how-card-tag">Zbyt duży przepływ</span>
            <h4>Rosną opory i hałas</h4>
            <p>Wzrost przepływu zwiększa straty ciśnienia znacznie szybciej niż liniowo i może niepotrzebnie podnosić pobór pompy.</p>
          </div>
        </div>

        <p>Równoważenie hydrauliczne polega na ustawieniu przepływów wynikających z obliczeń, a nie na ustawieniu wszystkich rotametrów na identyczną wartość. Pętla łazienki o mocy 350 W i pętla salonu o mocy 800 W nie mają automatycznie potrzebować tego samego strumienia.</p>

        <p>Rozstaw rur wpływa z kolei na równomierność temperatury i możliwą moc podłogi. Techniczne porównanie znajduje się w artykule <a href="https://projekt-ogrzewania.pl/rozstaw-rur-ogrzewania-podlogowego-przy-pompie-ciepla/">rozstaw rur ogrzewania podłogowego przy pompie ciepła</a>.</p>
      </section>

      <section class="rk-how-section" id="rk-how-bezwladnosc" aria-labelledby="rk-how-s7">
        <div class="rk-how-section-head">
          <div class="rk-how-section-no">7</div>
          <div>
            <h2 id="rk-how-s7">Dlaczego ogrzewanie podłogowe wolno się nagrzewa i stygnie?</h2>
            <p>Bezwładność wynika głównie z masy i konstrukcji podłogi, nie z samej obecności wody w rurach.</p>
          </div>
        </div>

        <p>W systemie mokrym rura jest otoczona jastrychem. Zanim temperatura powierzchni wyraźnie wzrośnie, trzeba podgrzać znaczną masę materiału. Po wyłączeniu źródła zgromadzona energia nadal jest oddawana do pomieszczenia. Dlatego gruba płyta dobrze stabilizuje temperaturę, ale słabo reaguje na gwałtowne zmiany nastawy.</p>

        <div class="rk-how-table-wrap">
          <span class="rk-how-table-title">System mokry i suchy – różnice w sposobie działania</span>
          <table>
            <thead><tr><th>Cecha</th><th>System mokry</th><th>System suchy</th></tr></thead>
            <tbody>
              <tr><td data-label="Cecha"><strong>Masa warstwy grzewczej</strong></td><td data-label="System mokry">Zwykle duża; rura pracuje w jastrychu.</td><td data-label="System suchy">Zwykle mniejsza; ciepło rozprowadzają płyty i elementy suche.</td></tr>
              <tr><td data-label="Cecha"><strong>Reakcja na zmianę</strong></td><td data-label="System mokry">Wolniejsza, zależna od grubości i materiału.</td><td data-label="System suchy">Najczęściej szybsza, ale zależna od całej konstrukcji.</td></tr>
              <tr><td data-label="Cecha"><strong>Stabilność temperatury</strong></td><td data-label="System mokry">Duża po osiągnięciu stanu ustalonego.</td><td data-label="System suchy">Mniejsza akumulacja i szybsze wychłodzenie.</td></tr>
              <tr><td data-label="Cecha"><strong>Sterowanie</strong></td><td data-label="System mokry">Preferuje łagodne korekty i automatykę pogodową.</td><td data-label="System suchy">Może lepiej reagować na sterowanie strefowe.</td></tr>
            </tbody>
          </table>
        </div>

        <div class="rk-how-truth">
          <p><strong>Nie istnieje jedna odpowiedź na pytanie „ile nagrzewa się podłogówka?”.</strong> Czas zależy od mocy chwilowej, temperatury początkowej, grubości i wilgotności jastrychu, izolacji, oporu okładziny, temperatury zasilania oraz strat ciepła budynku. Może oznaczać dziesiątki minut w lekkiej konstrukcji albo wiele godzin w masywnej płycie.</p>
        </div>
      </section>

      <section class="rk-how-section" id="rk-how-sterowanie" aria-labelledby="rk-how-s8">
        <div class="rk-how-section-head">
          <div class="rk-how-section-no">8</div>
          <div>
            <h2 id="rk-how-s8">Jak sterować ogrzewaniem podłogowym?</h2>
            <p>Najlepszy efekt daje współpraca temperatury zasilania, przepływów i regulacji pomieszczeń.</p>
          </div>
        </div>

        <div class="rk-how-check-grid">
          <div class="rk-how-check">
            <div class="rk-how-check-no">01</div>
            <div><h4>Automatyka pogodowa</h4><p>Zmienia temperaturę zasilania wraz z temperaturą zewnętrzną. Przy cieplejszej pogodzie obniża parametr zamiast okresowo przegrzewać podłogę.</p></div>
          </div>
          <div class="rk-how-check">
            <div class="rk-how-check-no">02</div>
            <div><h4>Równoważenie przepływów</h4><p>Ustawia bazowy podział mocy pomiędzy pętle. Siłownik nie powinien zastępować regulacji hydraulicznej.</p></div>
          </div>
          <div class="rk-how-check">
            <div class="rk-how-check-no">03</div>
            <div><h4>Termostaty pokojowe</h4><p>Korygują zyski wewnętrzne i różne wymagania pomieszczeń. W masywnej podłodze działają z opóźnieniem.</p></div>
          </div>
          <div class="rk-how-check">
            <div class="rk-how-check-no">04</div>
            <div><h4>Siłowniki na rozdzielaczu</h4><p>Otwierają lub zamykają wybrane obwody. Zamykanie większości pętli zmienia warunki pracy pompy i źródła.</p></div>
          </div>
          <div class="rk-how-check">
            <div class="rk-how-check-no">05</div>
            <div><h4>Sterowanie pompą</h4><p>Pompa powinna pracować w punkcie zapewniającym wymagany przepływ przy możliwie małym zużyciu energii i bez hałasu.</p></div>
          </div>
          <div class="rk-how-check">
            <div class="rk-how-check-no">06</div>
            <div><h4>Ochrona temperatury podłogi</h4><p>W wybranych strefach czujnik podłogowy może ograniczać temperaturę powierzchni niezależnie od czujnika powietrza.</p></div>
          </div>
        </div>

        <p>Duże obniżenia nocne nie zawsze przynoszą oczekiwany efekt. Jeżeli masywna podłoga zdąży się wychłodzić, rano źródło musi przez długi czas odbudowywać energię w jastrychu. Zamiast agresywnego harmonogramu często lepiej działa stabilna krzywa grzewcza i niewielka korekta temperatury.</p>

        <div class="rk-how-warning">
          <p><strong>Konflikt regulatorów:</strong> jeśli automatyka źródła stale podnosi temperaturę, a termostaty pokojowe zamykają większość pętli, instalacja nie jest dobrze wyregulowana. Objawem mogą być krótkie cykle źródła, duże wahania temperatury i niestabilne przepływy.</p>
        </div>
      </section>

      <section class="rk-how-section" id="rk-how-rodzaje" aria-labelledby="rk-how-s9">
        <div class="rk-how-section-head">
          <div class="rk-how-section-no">9</div>
          <div>
            <h2 id="rk-how-s9">Jak działa wodne i elektryczne ogrzewanie podłogowe?</h2>
            <p>Efekt w pomieszczeniu jest podobny, lecz sposób wytwarzania i sterowania ciepłem jest zupełnie inny.</p>
          </div>
        </div>

        <div class="rk-how-table-wrap">
          <span class="rk-how-table-title">Porównanie zasady działania</span>
          <table>
            <thead><tr><th>Cecha</th><th>Wodne ogrzewanie podłogowe</th><th>Elektryczne ogrzewanie podłogowe</th></tr></thead>
            <tbody>
              <tr><td data-label="Cecha"><strong>Nośnik energii</strong></td><td data-label="System wodny">Woda krążąca w zamkniętych pętlach.</td><td data-label="System elektryczny">Prąd płynący przez kabel, matę lub folię oporową.</td></tr>
              <tr><td data-label="Cecha"><strong>Wytwarzanie ciepła</strong></td><td data-label="System wodny">Poza podłogą: w pompie ciepła, kotle lub innym źródle.</td><td data-label="System elektryczny">Bezpośrednio w elemencie grzejnym pod posadzką.</td></tr>
              <tr><td data-label="Cecha"><strong>Rozdział mocy</strong></td><td data-label="System wodny">Przez temperaturę wody, przepływy, rozstaw i długość pętli.</td><td data-label="System elektryczny">Przez moc jednostkową przewodu lub maty oraz sposób ułożenia.</td></tr>
              <tr><td data-label="Cecha"><strong>Regulacja</strong></td><td data-label="System wodny">Źródło, pompa, rozdzielacz, termostaty i siłowniki.</td><td data-label="System elektryczny">Termostat, czujnik temperatury i element wykonawczy.</td></tr>
              <tr><td data-label="Cecha"><strong>Typowe zastosowanie</strong></td><td data-label="System wodny">Całe budynki i większe powierzchnie przy centralnym źródle.</td><td data-label="System elektryczny">Pojedyncze strefy, łazienki, remonty lub budynki z odpowiednim bilansem energii.</td></tr>
            </tbody>
          </table>
        </div>

        <p>Niższy koszt wykonania elektrycznej maty w małej łazience nie oznacza automatycznie niższego kosztu ogrzewania całego domu. Z kolei droższy układ wodny nie jest z definicji oszczędny – wynik zależy od źródła ciepła, cen energii, strat budynku, sposobu sterowania i temperatury pracy.</p>
      </section>

      <section class="rk-how-section" id="rk-how-posadzka" aria-labelledby="rk-how-s10">
        <div class="rk-how-section-head">
          <div class="rk-how-section-no">10</div>
          <div>
            <h2 id="rk-how-s10">Czy ogrzewanie podłogowe działa pod panelami, drewnem i winylem?</h2>
            <p>Działa, jeżeli projekt uwzględnia opór cieplny całego zestawu wykończeniowego i ograniczenia materiału.</p>
          </div>
        </div>

        <div class="rk-how-card-grid">
          <div class="rk-how-card">
            <span class="rk-how-card-tag">Mały opór</span>
            <h4>Płytki i kamień</h4>
            <p>Zwykle dobrze przewodzą ciepło. Istotne są klej, dylatacje, sposób wykonania jastrychu i dopuszczalna temperatura powierzchni.</p>
          </div>
          <div class="rk-how-card">
            <span class="rk-how-card-tag">Sprawdź dokumentację</span>
            <h4>Panele i winyl</h4>
            <p>Należy uwzględnić opór panelu oraz podkładu, dopuszczenie do podłogówki i maksymalną temperaturę użytkową.</p>
          </div>
          <div class="rk-how-card">
            <span class="rk-how-card-tag">Materiał wrażliwy</span>
            <h4>Drewno</h4>
            <p>Liczy się gatunek, grubość, wilgotność, konstrukcja deski oraz sposób montażu. Zbyt szybkie zmiany temperatury mogą szkodzić okładzinie.</p>
          </div>
        </div>

        <p>Opory poszczególnych warstw sumują się. Gruby panel położony na podkładzie o wysokim oporze może wymagać wyższej temperatury wody albo ograniczyć dostępną moc. Dlatego wykończenie podłogi powinno być znane na etapie obliczeń, a nie dopiero po wykonaniu pętli.</p>

        <div class="rk-how-note">
          <p><strong>Zasada projektowa:</strong> nie oceniaj materiału wyłącznie po nazwie „do ogrzewania podłogowego”. Potrzebna jest deklarowana wartość oporu cieplnego całego układu: okładziny, podkładu i ewentualnych warstw pośrednich.</p>
        </div>
      </section>

      <section class="rk-how-section" id="rk-how-efektywnosc" aria-labelledby="rk-how-s11">
        <div class="rk-how-section-head">
          <div class="rk-how-section-no">11</div>
          <div>
            <h2 id="rk-how-s11">Czy sposób działania podłogówki obniża zużycie energii?</h2>
            <p>Niska temperatura zasilania może poprawić warunki pracy źródła, ale nie usuwa strat ciepła budynku.</p>
          </div>
        </div>

        <p>Duża powierzchnia wymiany pozwala dostarczać wymaganą moc przy niższej temperaturze czynnika niż w wielu instalacjach grzejnikowych. Jest to korzystne dla pompy ciepła, ponieważ jej sprawność zwykle rośnie przy mniejszej różnicy między temperaturą źródła dolnego i wymaganą temperaturą zasilania. Kocioł kondensacyjny może natomiast dłużej pracować z niską temperaturą powrotu sprzyjającą kondensacji.</p>

        <p>Nie wolno jednak obiecywać stałego procentu oszczędności. Budynek nadal traci ciepło przez przegrody i wentylację. Zużycie energii zależy między innymi od izolacji, szczelności, temperatury wewnętrznej, pogody, sprawności źródła, taryfy, regulacji oraz zysków słonecznych i wewnętrznych.</p>

        <div class="rk-how-truth">
          <p><strong>Podłogówka nie zmniejsza automatycznie zapotrzebowania budynku na ciepło.</strong> Może natomiast umożliwić efektywniejsze wytwarzanie i bardziej równomierne przekazywanie energii, jeżeli została prawidłowo obliczona, wykonana i wyregulowana.</p>
        </div>

        <h3>Ogrzewanie podłogowe a zdrowie i alergie</h3>
        <p>System bez wentylatora może wytwarzać mniejsze prędkości powietrza niż ogrzewanie nadmuchowe, ale nie oznacza to braku konwekcji ani gwarancji poprawy alergii. Na jakość powietrza wpływają przede wszystkim wentylacja, wilgotność, sprzątanie, rodzaj okładzin, obecność zwierząt, pleśń i rzeczywiste stężenie alergenów. W artykule technicznym nie należy przypisywać samemu sposobowi ogrzewania działania medycznego.</p>
      </section>

      <section class="rk-how-section" id="rk-how-bledy" aria-labelledby="rk-how-s12">
        <div class="rk-how-section-head">
          <div class="rk-how-section-no">12</div>
          <div>
            <h2 id="rk-how-s12">Dlaczego ogrzewanie podłogowe czasem działa źle?</h2>
            <p>Najczęstsze problemy wynikają z pominięcia zależności między stratą ciepła, powierzchnią, temperaturą i hydrauliką.</p>
          </div>
        </div>

        <div class="rk-how-check-grid">
          <div class="rk-how-check"><div class="rk-how-check-no">01</div><div><h4>Brak obliczeń pomieszczeń</h4><p>Jeden rozstaw i jedna temperatura są kopiowane na cały budynek mimo różnych obciążeń cieplnych.</p></div></div>
          <div class="rk-how-check"><div class="rk-how-check-no">02</div><div><h4>Zbyt długie pętle</h4><p>Rosną opory, a pompa nie osiąga wymaganych przepływów na wszystkich obwodach.</p></div></div>
          <div class="rk-how-check"><div class="rk-how-check-no">03</div><div><h4>Brak równoważenia</h4><p>Woda wybiera łatwiejsze hydraulicznie pętle, pozostawiając inne obwody z niedoborem przepływu.</p></div></div>
          <div class="rk-how-check"><div class="rk-how-check-no">04</div><div><h4>Za wysoka temperatura</h4><p>Podłoga okresowo się przegrzewa, a termostaty próbują ratować sytuację ciągłym zamykaniem pętli.</p></div></div>
          <div class="rk-how-check"><div class="rk-how-check-no">05</div><div><h4>Nieznane wykończenie</h4><p>Po wykonaniu instalacji pojawia się okładzina o większym oporze niż przyjęto w obliczeniach.</p></div></div>
          <div class="rk-how-check"><div class="rk-how-check-no">06</div><div><h4>Za mała aktywna powierzchnia</h4><p>Zabudowa stała ogranicza wymiennik, a pozostała podłoga musi przekazać większy strumień ciepła.</p></div></div>
          <div class="rk-how-check"><div class="rk-how-check-no">07</div><div><h4>Konflikt automatyki</h4><p>Źródło, pompa, mieszacz i termostaty otrzymują sprzeczne polecenia, powodując niestabilną pracę.</p></div></div>
          <div class="rk-how-check"><div class="rk-how-check-no">08</div><div><h4>Słaba izolacja w dół</h4><p>Część energii zamiast do pomieszczenia odpływa do podłoża albo chłodniejszej kondygnacji.</p></div></div>
        </div>

        <div class="rk-how-warning">
          <p><strong>Objaw nie wskazuje automatycznie przyczyny.</strong> Chłodna podłoga może być całkowicie prawidłowa, gdy pomieszczenie nie potrzebuje dużej mocy. Z kolei gorąca podłoga nie dowodzi dobrej pracy – może oznaczać przewymiarowaną temperaturę zasilania albo niedostateczną powierzchnię grzewczą.</p>
        </div>
      </section>

      <section class="rk-how-section" id="rk-how-faq" aria-labelledby="rk-how-s13">
        <div class="rk-how-section-head">
          <div class="rk-how-section-no">13</div>
          <div>
            <h2 id="rk-how-s13">FAQ – jak działa ogrzewanie podłogowe?</h2>
            <p>Odpowiedzi na pytania pojawiające się przed budową, podczas regulacji i w pierwszym sezonie grzewczym.</p>
          </div>
        </div>

        <div class="rk-how-faq-list">
          <details class="rk-how-faq" id="rk-how-faq-1">
            <summary>Jak działa wodne ogrzewanie podłogowe?</summary>
            <div class="rk-how-faq-answer"><p>Źródło ciepła podgrzewa wodę, pompa wymusza jej przepływ, a rozdzielacz kieruje ją do pętli ułożonych w podłodze. Woda przekazuje energię rurze i jastrychowi. Ogrzana powierzchnia oddaje ciepło do pomieszczenia przez promieniowanie oraz konwekcję naturalną, a schłodzona woda wraca do źródła.</p></div>
          </details>
          <details class="rk-how-faq" id="rk-how-faq-2">
            <summary>Czy ciepło z podłogówki po prostu unosi się do góry?</summary>
            <div class="rk-how-faq-answer"><p>To zbyt duże uproszczenie. Promieniowanie cieplne odbywa się między powierzchniami niezależnie od kierunku „góra–dół”, natomiast konwekcja wynika z ruchu ogrzanego powietrza. Najpierw energia przewodzi się przez konstrukcję podłogi, a później jest przekazywana do pomieszczenia oboma mechanizmami.</p></div>
          </details>
          <details class="rk-how-faq" id="rk-how-faq-3">
            <summary>Jaka temperatura wody krąży w ogrzewaniu podłogowym?</summary>
            <div class="rk-how-faq-answer"><p>Nie ma jednej prawidłowej wartości. W nowoczesnych budynkach często wystarcza zasilanie w zakresie około 28–40°C, ale wynik zależy od obciążenia cieplnego, rozstawu rur, konstrukcji podłogi, okładziny, temperatury pomieszczenia i warunków zewnętrznych. Temperaturę należy wyznaczyć z obliczeń i krzywej grzewczej.</p></div>
          </details>
          <details class="rk-how-faq" id="rk-how-faq-4">
            <summary>Po co jest pompa obiegowa w podłogówce?</summary>
            <div class="rk-how-faq-answer"><p>Pompa wytwarza różnicę ciśnień potrzebną do pokonania oporów rur, rozdzielacza, zaworów i pozostałej armatury. Bez odpowiedniego przepływu woda nie przeniesie wymaganej mocy, nawet gdy temperatura zasilania będzie wysoka.</p></div>
          </details>
          <details class="rk-how-faq" id="rk-how-faq-5">
            <summary>Jak działa rozdzielacz ogrzewania podłogowego?</summary>
            <div class="rk-how-faq-answer"><p>Belka zasilająca rozdziela wodę pomiędzy pętle, a belka powrotna zbiera ją po schłodzeniu. Rotametry lub zawory umożliwiają ustawienie przepływów, natomiast wkładki zaworowe z siłownikami pozwalają sterować obwodami. Rozdzielacz jest jednocześnie punktem pomiaru, regulacji, odpowietrzania i serwisu.</p></div>
          </details>
          <details class="rk-how-faq" id="rk-how-faq-6">
            <summary>Ile czasu nagrzewa się ogrzewanie podłogowe?</summary>
            <div class="rk-how-faq-answer"><p>Nie da się podać jednego czasu. Lekki system suchy może reagować wyraźnie szybciej niż rura zatopiona w grubej płycie. Znaczenie mają masa i wilgotność jastrychu, moc chwilowa, temperatura początkowa, izolacja, okładzina oraz straty ciepła budynku. W masywnej konstrukcji pełna stabilizacja może trwać wiele godzin.</p></div>
          </details>
          <details class="rk-how-faq" id="rk-how-faq-7">
            <summary>Czy ogrzewanie podłogowe musi pracować cały czas?</summary>
            <div class="rk-how-faq-answer"><p>Nie musi bez przerwy grzać z pełną mocą, ale masywna podłoga najlepiej współpracuje z łagodną, ciągłą regulacją temperatury zasilania. Źródło i pompa modulują lub okresowo się wyłączają, gdy zapotrzebowanie spada. Głębokie, krótkie obniżenia mogą być mało skuteczne z powodu bezwładności.</p></div>
          </details>
          <details class="rk-how-faq" id="rk-how-faq-8">
            <summary>Dlaczego jedna pętla grzeje słabiej od pozostałych?</summary>
            <div class="rk-how-faq-answer"><p>Możliwą przyczyną jest zbyt mały przepływ, zapowietrzenie, zabrudzony zawór, nieprawidłowa nastawa, zbyt duży opór pętli, zamknięty siłownik albo niedostateczna wydajność pompy. Najpierw trzeba porównać przepływy projektowe i rzeczywiste, a nie od razu podnosić temperaturę całej instalacji.</p></div>
          </details>
          <details class="rk-how-faq" id="rk-how-faq-9">
            <summary>Czy podłogówka działa pod panelami?</summary>
            <div class="rk-how-faq-answer"><p>Tak, jeżeli panel i podkład są dopuszczone do takiego zastosowania, a projekt uwzględnia ich łączny opór cieplny oraz limit temperatury. Okładzina o większym oporze zmniejsza moc przy tej samej temperaturze wody albo wymaga korekty parametrów.</p></div>
          </details>
          <details class="rk-how-faq" id="rk-how-faq-10">
            <summary>Czy ogrzewanie podłogowe zawsze jest bardziej energooszczędne?</summary>
            <div class="rk-how-faq-answer"><p>Nie automatycznie. Niska temperatura zasilania może poprawiać sprawność pompy ciepła lub kondensację kotła, ale zużycie energii nadal zależy od strat budynku, temperatury wewnętrznej, źródła, cen energii, regulacji i jakości wykonania. Sama obecność rur w podłodze nie gwarantuje niższych rachunków.</p></div>
          </details>
        </div>

        <div class="rk-how-sources" aria-label="Źródła techniczne opracowania">
          <strong>Źródła i podstawa techniczna opracowania</strong>
          Normy i metody obliczeniowe: <a href="https://www.iso.org/standard/74682.html" target="_blank" rel="noopener noreferrer">ISO 11855-1:2021 – definicje i kryteria komfortu</a>, <a href="https://www.iso.org/standard/74683.html" target="_blank" rel="noopener noreferrer">ISO 11855-2:2021 – wyznaczanie mocy grzewczej</a>, <a href="https://www.iso.org/standard/74684.html" target="_blank" rel="noopener noreferrer">ISO 11855-3:2021 – projektowanie i wymiarowanie</a> oraz <a href="https://www.iso.org/standard/74685.html" target="_blank" rel="noopener noreferrer">ISO 11855-5:2021 – wymagania instalacyjne</a>. Mechanizmy komfortu i wymiany ciepła: <a href="https://pmc.ncbi.nlm.nih.gov/articles/PMC8838762/" target="_blank" rel="noopener noreferrer">badanie eksperymentalne systemu ogrzewania podłogowego</a> oraz <a href="https://pmc.ncbi.nlm.nih.gov/articles/PMC11785757/" target="_blank" rel="noopener noreferrer">opracowanie dotyczące średniej temperatury promieniowania</a>. Dostęp do źródeł zewnętrznych otwiera się w nowej karcie.
        </div>
      </section>

      <section class="rk-how-cta" aria-label="Zamówienie projektu ogrzewania podłogowego">
        <h3>Potrzebujesz obiegu policzonego dla konkretnego domu?</h3>
        <p>Projekt określa obciążenia cieplne pomieszczeń, rozstaw i przebieg rur, długości pętli, wymagane przepływy, opory hydrauliczne, nastawy rozdzielacza oraz parametry zasilania.</p>
        <a class="rk-how-cta-link" href="https://projekt-ogrzewania.pl/produkt/projekt-instalacji-ogrzewania-podlogowego-podlogowki/">Zamów projekt instalacji ogrzewania podłogowego</a>
        <small>Odnośnik prowadzi do strony sprzedażowej Projekt-Ogrzewania.pl – serwisu należącego do autora artykułu.</small>
      </section>

      <aside class="rk-how-author-box" aria-label="Informacje o autorze" itemscope itemtype="https://schema.org/Person">
        <div class="rk-how-author-head">
          <div>
            <h3>Autor opracowania</h3>
            <p>Praktyka projektowa, wiedza techniczna i język zrozumiały dla inwestora.</p>
          </div>
          <div class="rk-how-author-mark">E-E-A-T • HVAC</div>
        </div>
        <div class="rk-how-author-main">
          <div class="rk-how-author-profile">
            <img decoding="async" src="https://projekt-ogrzewania.pl/wp-content/uploads/2026/04/PO-Robert-Kucharski.webp" alt="Robert Kucharski – projektant instalacji sanitarnych" width="190" height="190" loading="lazy" itemprop="image">
            <h4 itemprop="name">Robert Kucharski</h4>
            <span class="rk-how-author-role" itemprop="jobTitle">Projektant instalacji sanitarnych • specjalista systemów HVAC i ogrzewania podłogowego</span>
          </div>
          <div class="rk-how-author-content">
            <div class="rk-how-quote">
              <blockquote>„Dobra podłogówka nie polega na tym, żeby podłoga była gorąca. Ma przekazać dokładnie tyle energii, ile traci pomieszczenie – przy możliwie niskiej temperaturze wody i przepływach, które da się rzeczywiście uzyskać.”</blockquote>
            </div>
            <div class="rk-how-tabs">
              <div class="rk-how-tab-buttons" role="tablist" aria-label="Informacje o autorze">
                <button class="rk-how-tab-button is-active" type="button" role="tab" aria-selected="true" aria-controls="rk-how-tab-about" id="rk-how-tab-about-button" data-author-tab="about">O autorze</button>
                <button class="rk-how-tab-button" type="button" role="tab" aria-selected="false" aria-controls="rk-how-tab-exp" id="rk-how-tab-exp-button" data-author-tab="exp">Doświadczenie</button>
                <button class="rk-how-tab-button" type="button" role="tab" aria-selected="false" aria-controls="rk-how-tab-sites" id="rk-how-tab-sites-button" data-author-tab="sites">Portale</button>
              </div>
              <div class="rk-how-tab-panel is-active" id="rk-how-tab-about" role="tabpanel" aria-labelledby="rk-how-tab-about-button" data-author-panel="about">
                <p itemprop="description">Specjalizuję się w projektowaniu wodnego ogrzewania podłogowego, obliczeniach obciążenia cieplnego i hydrauliki instalacji. Łączę wymagania techniczne z praktycznym spojrzeniem inwestora: dokumentacja ma być policzona, czytelna i możliwa do poprawnego wykonania.</p>
              </div>
              <div class="rk-how-tab-panel" id="rk-how-tab-exp" role="tabpanel" aria-labelledby="rk-how-tab-exp-button" data-author-panel="exp" hidden>
                <p>W opracowaniach analizuję straty ciepła pomieszczeń, parametry źródeł niskotemperaturowych, rozstawy i długości pętli, przepływy, opory hydrauliczne, pracę rozdzielaczy, pomp obiegowych i automatyki. Publikacje powstają bez rankingów producentów i bez zastępowania obliczeń ogólnymi regułami wykonawczymi.</p>
              </div>
              <div class="rk-how-tab-panel" id="rk-how-tab-sites" role="tabpanel" aria-labelledby="rk-how-tab-sites-button" data-author-panel="sites" hidden>
                <p>Jestem właścicielem trzech serwisów branżowych. Podaję to jawnie, aby czytelnik znał autorstwo publikacji oraz kontekst linkowania.</p>
                <div class="rk-how-portals">
                  <a href="https://projekt-ogrzewania.pl/">Projekt-Ogrzewania.pl</a>
                  <a href="https://remont.biz.pl/" target="_blank" rel="noopener noreferrer">Remont.biz.pl</a>
                  <a href="https://sobir.pl/" target="_blank" rel="noopener noreferrer">Sobir.pl</a>
                </div>
              </div>
            </div>
          </div>
        </div>
      </aside>
    </div>
  </div>
</article>

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@graph": [
    {
      "@type": "TechArticle",
      "@id": "https://projekt-ogrzewania.pl/jak-dziala-ogrzewanie-podlogowe/#article",
      "isPartOf": { "@id": "https://projekt-ogrzewania.pl/jak-dziala-ogrzewanie-podlogowe/" },
      "mainEntityOfPage": { "@id": "https://projekt-ogrzewania.pl/jak-dziala-ogrzewanie-podlogowe/" },
      "headline": "Jak działa ogrzewanie podłogowe? Obieg, przekazywanie ciepła i sterowanie",
      "description": "Techniczne wyjaśnienie działania wodnego i elektrycznego ogrzewania podłogowego: obieg wody, moc, przepływy, temperatura, bezwładność, rozdzielacz i sterowanie.",
      "datePublished": "2024-09-22T18:49:37+00:00",
      "dateModified": "2026-08-23T18:00:00+02:00",
      "inLanguage": "pl-PL",
      "author": { "@id": "https://projekt-ogrzewania.pl/#/schema/person/8f64aaec51c6581f1ab55e3d7f3a82d1" },
      "publisher": { "@id": "https://projekt-ogrzewania.pl/#organization" },
      "image": { "@id": "https://projekt-ogrzewania.pl/jak-dziala-ogrzewanie-podlogowe/#primaryimage" },
      "keywords": [
        "jak działa ogrzewanie podłogowe",
        "jak działa wodne ogrzewanie podłogowe",
        "zasada działania ogrzewania podłogowego",
        "obieg wody w ogrzewaniu podłogowym",
        "temperatura wody w podłogówce",
        "przepływ w ogrzewaniu podłogowym",
        "rozdzielacz ogrzewania podłogowego",
        "bezwładność ogrzewania podłogowego",
        "sterowanie ogrzewaniem podłogowym"
      ],
      "articleSection": [
        "Ogrzewanie podłogowe",
        "Instalacje grzewcze",
        "Hydraulika instalacji",
        "Komfort cieplny",
        "Sterowanie ogrzewaniem"
      ],
      "about": [
        { "@type": "DefinedTerm", "name": "Wodne ogrzewanie podłogowe" },
        { "@type": "DefinedTerm", "name": "Promieniowanie cieplne" },
        { "@type": "DefinedTerm", "name": "Konwekcja naturalna" },
        { "@type": "DefinedTerm", "name": "Równoważenie hydrauliczne" }
      ],
      "citation": [
        { "@type": "CreativeWork", "name": "ISO 11855-1:2021", "url": "https://www.iso.org/standard/74682.html" },
        { "@type": "CreativeWork", "name": "ISO 11855-2:2021", "url": "https://www.iso.org/standard/74683.html" },
        { "@type": "CreativeWork", "name": "ISO 11855-3:2021", "url": "https://www.iso.org/standard/74684.html" },
        { "@type": "CreativeWork", "name": "ISO 11855-5:2021", "url": "https://www.iso.org/standard/74685.html" },
        { "@type": "ScholarlyArticle", "name": "Experimental and Numerical Simulation of a Radiant Floor System", "url": "https://pmc.ncbi.nlm.nih.gov/articles/PMC8838762/" },
        { "@type": "ScholarlyArticle", "name": "Measuring mean radiant temperature for indoor comfort assessment", "url": "https://pmc.ncbi.nlm.nih.gov/articles/PMC11785757/" }
      ],
      "hasPart": [
        { "@id": "https://projekt-ogrzewania.pl/jak-dziala-ogrzewanie-podlogowe/#loop-model" },
        { "@id": "https://projekt-ogrzewania.pl/jak-dziala-ogrzewanie-podlogowe/#process-list" },
        { "@id": "https://projekt-ogrzewania.pl/jak-dziala-ogrzewanie-podlogowe/#faq" }
      ]
    },
    {
      "@type": "FAQPage",
      "@id": "https://projekt-ogrzewania.pl/jak-dziala-ogrzewanie-podlogowe/#faq",
      "url": "https://projekt-ogrzewania.pl/jak-dziala-ogrzewanie-podlogowe/#rk-how-faq",
      "isPartOf": { "@id": "https://projekt-ogrzewania.pl/jak-dziala-ogrzewanie-podlogowe/" },
      "inLanguage": "pl-PL",
      "mainEntity": [
        {
          "@type": "Question",
          "@id": "https://projekt-ogrzewania.pl/jak-dziala-ogrzewanie-podlogowe/#faq-1",
          "name": "Jak działa wodne ogrzewanie podłogowe?",
          "acceptedAnswer": { "@type": "Answer", "text": "Źródło ciepła podgrzewa wodę, pompa wymusza jej przepływ, a rozdzielacz kieruje ją do pętli ułożonych w podłodze. Woda przekazuje energię rurze i jastrychowi. Ogrzana powierzchnia oddaje ciepło do pomieszczenia przez promieniowanie oraz konwekcję naturalną, a schłodzona woda wraca do źródła." }
        },
        {
          "@type": "Question",
          "@id": "https://projekt-ogrzewania.pl/jak-dziala-ogrzewanie-podlogowe/#faq-2",
          "name": "Czy ciepło z podłogówki po prostu unosi się do góry?",
          "acceptedAnswer": { "@type": "Answer", "text": "To zbyt duże uproszczenie. Promieniowanie cieplne odbywa się między powierzchniami niezależnie od kierunku góra–dół, natomiast konwekcja wynika z ruchu ogrzanego powietrza. Najpierw energia przewodzi się przez konstrukcję podłogi, a później jest przekazywana do pomieszczenia oboma mechanizmami." }
        },
        {
          "@type": "Question",
          "@id": "https://projekt-ogrzewania.pl/jak-dziala-ogrzewanie-podlogowe/#faq-3",
          "name": "Jaka temperatura wody krąży w ogrzewaniu podłogowym?",
          "acceptedAnswer": { "@type": "Answer", "text": "Nie ma jednej prawidłowej wartości. W nowoczesnych budynkach często wystarcza zasilanie w zakresie około 28–40°C, ale wynik zależy od obciążenia cieplnego, rozstawu rur, konstrukcji podłogi, okładziny, temperatury pomieszczenia i warunków zewnętrznych." }
        },
        {
          "@type": "Question",
          "@id": "https://projekt-ogrzewania.pl/jak-dziala-ogrzewanie-podlogowe/#faq-4",
          "name": "Po co jest pompa obiegowa w podłogówce?",
          "acceptedAnswer": { "@type": "Answer", "text": "Pompa wytwarza różnicę ciśnień potrzebną do pokonania oporów rur, rozdzielacza, zaworów i pozostałej armatury. Bez odpowiedniego przepływu woda nie przeniesie wymaganej mocy, nawet gdy temperatura zasilania będzie wysoka." }
        },
        {
          "@type": "Question",
          "@id": "https://projekt-ogrzewania.pl/jak-dziala-ogrzewanie-podlogowe/#faq-5",
          "name": "Jak działa rozdzielacz ogrzewania podłogowego?",
          "acceptedAnswer": { "@type": "Answer", "text": "Belka zasilająca rozdziela wodę pomiędzy pętle, a belka powrotna zbiera ją po schłodzeniu. Rotametry lub zawory umożliwiają ustawienie przepływów, natomiast wkładki zaworowe z siłownikami pozwalają sterować obwodami." }
        },
        {
          "@type": "Question",
          "@id": "https://projekt-ogrzewania.pl/jak-dziala-ogrzewanie-podlogowe/#faq-6",
          "name": "Ile czasu nagrzewa się ogrzewanie podłogowe?",
          "acceptedAnswer": { "@type": "Answer", "text": "Nie da się podać jednego czasu. Znaczenie mają masa i wilgotność jastrychu, moc chwilowa, temperatura początkowa, izolacja, okładzina oraz straty ciepła budynku. Lekki system suchy może reagować wyraźnie szybciej niż rura zatopiona w grubej płycie." }
        },
        {
          "@type": "Question",
          "@id": "https://projekt-ogrzewania.pl/jak-dziala-ogrzewanie-podlogowe/#faq-7",
          "name": "Czy ogrzewanie podłogowe musi pracować cały czas?",
          "acceptedAnswer": { "@type": "Answer", "text": "Nie musi bez przerwy grzać z pełną mocą, ale masywna podłoga najlepiej współpracuje z łagodną, ciągłą regulacją temperatury zasilania. Źródło i pompa modulują lub okresowo się wyłączają, gdy zapotrzebowanie spada." }
        },
        {
          "@type": "Question",
          "@id": "https://projekt-ogrzewania.pl/jak-dziala-ogrzewanie-podlogowe/#faq-8",
          "name": "Dlaczego jedna pętla grzeje słabiej od pozostałych?",
          "acceptedAnswer": { "@type": "Answer", "text": "Możliwą przyczyną jest zbyt mały przepływ, zapowietrzenie, zabrudzony zawór, nieprawidłowa nastawa, zbyt duży opór pętli, zamknięty siłownik albo niedostateczna wydajność pompy. Najpierw trzeba porównać przepływy projektowe i rzeczywiste." }
        },
        {
          "@type": "Question",
          "@id": "https://projekt-ogrzewania.pl/jak-dziala-ogrzewanie-podlogowe/#faq-9",
          "name": "Czy podłogówka działa pod panelami?",
          "acceptedAnswer": { "@type": "Answer", "text": "Tak, jeżeli panel i podkład są dopuszczone do takiego zastosowania, a projekt uwzględnia ich łączny opór cieplny oraz limit temperatury. Okładzina o większym oporze zmniejsza moc przy tej samej temperaturze wody albo wymaga korekty parametrów." }
        },
        {
          "@type": "Question",
          "@id": "https://projekt-ogrzewania.pl/jak-dziala-ogrzewanie-podlogowe/#faq-10",
          "name": "Czy ogrzewanie podłogowe zawsze jest bardziej energooszczędne?",
          "acceptedAnswer": { "@type": "Answer", "text": "Nie automatycznie. Niska temperatura zasilania może poprawiać sprawność pompy ciepła lub kondensację kotła, ale zużycie energii nadal zależy od strat budynku, temperatury wewnętrznej, źródła, cen energii, regulacji i jakości wykonania." }
        }
      ]
    },
    {
      "@type": "ItemList",
      "@id": "https://projekt-ogrzewania.pl/jak-dziala-ogrzewanie-podlogowe/#process-list",
      "name": "Etapy działania wodnego ogrzewania podłogowego",
      "numberOfItems": 6,
      "itemListOrder": "https://schema.org/ItemListOrderAscending",
      "itemListElement": [
        { "@type": "ListItem", "position": 1, "name": "Przygotowanie temperatury wody przez źródło ciepła", "item": "https://projekt-ogrzewania.pl/jak-dziala-ogrzewanie-podlogowe/#rk-how-flow-1" },
        { "@type": "ListItem", "position": 2, "name": "Wymuszenie przepływu przez pompę obiegową", "item": "https://projekt-ogrzewania.pl/jak-dziala-ogrzewanie-podlogowe/#rk-how-flow-2" },
        { "@type": "ListItem", "position": 3, "name": "Podział strumienia pomiędzy pętle na rozdzielaczu", "item": "https://projekt-ogrzewania.pl/jak-dziala-ogrzewanie-podlogowe/#rk-how-flow-3" },
        { "@type": "ListItem", "position": 4, "name": "Transport energii w pętlach ogrzewania podłogowego", "item": "https://projekt-ogrzewania.pl/jak-dziala-ogrzewanie-podlogowe/#rk-how-flow-4" },
        { "@type": "ListItem", "position": 5, "name": "Przekazanie energii przez jastrych i powierzchnię podłogi", "item": "https://projekt-ogrzewania.pl/jak-dziala-ogrzewanie-podlogowe/#rk-how-flow-5" },
        { "@type": "ListItem", "position": 6, "name": "Powrót schłodzonej wody do źródła ciepła", "item": "https://projekt-ogrzewania.pl/jak-dziala-ogrzewanie-podlogowe/#rk-how-flow-6" }
      ]
    },
    {
      "@type": "WebApplication",
      "@id": "https://projekt-ogrzewania.pl/jak-dziala-ogrzewanie-podlogowe/#loop-model",
      "name": "Model bilansu mocy jednej pętli ogrzewania podłogowego",
      "description": "Edukacyjny model zależności między temperaturą zasilania, różnicą temperatur, przepływem, mocą po stronie wody i aktywną powierzchnią pętli.",
      "url": "https://projekt-ogrzewania.pl/jak-dziala-ogrzewanie-podlogowe/#rk-how-loop-model",
      "applicationCategory": "UtilitiesApplication",
      "operatingSystem": "Any",
      "browserRequirements": "JavaScript",
      "isAccessibleForFree": true,
      "inLanguage": "pl-PL",
      "creator": { "@id": "https://projekt-ogrzewania.pl/#/schema/person/8f64aaec51c6581f1ab55e3d7f3a82d1" },
      "isPartOf": { "@id": "https://projekt-ogrzewania.pl/jak-dziala-ogrzewanie-podlogowe/" }
    },
    {
      "@type": "Person",
      "@id": "https://projekt-ogrzewania.pl/#/schema/person/8f64aaec51c6581f1ab55e3d7f3a82d1",
      "name": "Robert Kucharski",
      "url": "https://projekt-ogrzewania.pl/author/admin3399/",
      "image": {
        "@type": "ImageObject",
        "url": "https://projekt-ogrzewania.pl/wp-content/uploads/2026/04/PO-Robert-Kucharski.webp",
        "contentUrl": "https://projekt-ogrzewania.pl/wp-content/uploads/2026/04/PO-Robert-Kucharski.webp",
        "caption": "Robert Kucharski – projektant instalacji sanitarnych i specjalista HVAC"
      },
      "jobTitle": "Projektant instalacji sanitarnych i specjalista branży budowlano-instalacyjnej",
      "description": "Projektant instalacji sanitarnych, specjalista ogrzewania podłogowego, hydrauliki instalacji, obliczeń obciążenia cieplnego i systemów HVAC. Właściciel serwisów Projekt-Ogrzewania.pl, Remont.biz.pl i Sobir.pl.",
      "worksFor": { "@id": "https://projekt-ogrzewania.pl/#organization" },
      "knowsAbout": [
        "HVAC",
        "ogrzewanie podłogowe",
        "projektowanie instalacji sanitarnych",
        "hydraulika instalacji grzewczych",
        "obliczenia OZC",
        "równoważenie hydrauliczne",
        "pompy ciepła",
        "efektywność energetyczna"
      ],
      "sameAs": [
        "https://projekt-ogrzewania.pl/",
        "https://remont.biz.pl/",
        "https://sobir.pl/",
        "https://www.facebook.com/projektogrzewaniapl/",
        "https://www.facebook.com/robert.kucharski.budowa.bez.sciemy",
        "https://www.linkedin.com/in/robert-kucharski-38069b48/"
      ]
    },
    {
      "@type": "WebSite",
      "@id": "https://remont.biz.pl/#website",
      "url": "https://remont.biz.pl/",
      "name": "Remont.biz.pl",
      "creator": { "@id": "https://projekt-ogrzewania.pl/#/schema/person/8f64aaec51c6581f1ab55e3d7f3a82d1" },
      "inLanguage": "pl-PL"
    },
    {
      "@type": "WebSite",
      "@id": "https://sobir.pl/#website",
      "url": "https://sobir.pl/",
      "name": "Sobir.pl",
      "creator": { "@id": "https://projekt-ogrzewania.pl/#/schema/person/8f64aaec51c6581f1ab55e3d7f3a82d1" },
      "inLanguage": "pl-PL"
    }
  ]
}
</script>

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

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

    var progress = root.querySelector(".rk-how-progress");
    var ticking = false;

    function updateProgress() {
      var rect = root.getBoundingClientRect();
      var viewport = window.innerHeight || document.documentElement.clientHeight;
      var total = Math.max(root.offsetHeight - viewport, 1);
      var passed = Math.min(Math.max(-rect.top, 0), total);
      var value = Math.min(100, Math.max(0, passed / total * 100));
      if (progress) progress.style.width = value.toFixed(2) + "%";
      ticking = false;
    }

    function requestProgress() {
      if (!ticking) {
        window.requestAnimationFrame(updateProgress);
        ticking = true;
      }
    }

    root.querySelectorAll('a[href^="#"]').forEach(function (link) {
      link.addEventListener("click", function (event) {
        var selector = link.getAttribute("href");
        if (!selector || selector === "#") return;
        var target = root.querySelector(selector);
        if (!target) return;
        event.preventDefault();
        target.scrollIntoView({
          behavior: window.matchMedia("(prefers-reduced-motion: reduce)").matches ? "auto" : "smooth",
          block: "start"
        });
      });
    });

    var flowTitles = [
      "1. Źródło ciepła ustala temperaturę zasilania",
      "2. Pompa obiegowa pokonuje opory hydrauliczne",
      "3. Rozdzielacz dzieli strumień pomiędzy pętle",
      "4. Pętle transportują energię przez aktywne strefy",
      "5. Konstrukcja podłogi rozprowadza i oddaje ciepło",
      "6. Schłodzona woda wraca do źródła"
    ];

    var flowTexts = [
      "Pompa ciepła, kocioł lub inne urządzenie przekazuje energię wodzie. Temperatura powinna wynikać z krzywej grzewczej i obliczonej mocy podłogi, a nie ze stałej wartości ustawionej na zapas. Zbyt wysoka temperatura zwiększa ryzyko przegrzewania i może pogorszyć sprawność źródła.",
      "Pompa wytwarza różnicę ciśnień. Jej zadaniem nie jest podnoszenie temperatury, lecz zapewnienie wymaganych przepływów mimo oporów rur, rozdzielacza, armatury i źródła. Punkt pracy trzeba porównać z charakterystyką całego obiegu.",
      "Belka zasilająca rozdziela wodę, a rotametry lub zawory ograniczają przepływy do wartości projektowych. Bez równoważenia krótsze pętle mogą przejąć większość strumienia, pozostawiając dłuższe obwody niedogrzane.",
      "Woda schładza się wzdłuż przewodu, oddając energię przez ściankę rury. Ilość przenoszonego ciepła wynika z przepływu oraz różnicy temperatur. Długość i średnica pętli wpływają na opór hydrauliczny, a rozstaw na rozkład temperatury podłogi.",
      "Jastrych lub elementy suche rozprowadzają energię na większą powierzchnię. Następnie ciepło przechodzi przez okładzinę i jest oddawane do pomieszczenia przez promieniowanie oraz konwekcję naturalną. Izolacja ogranicza niepożądany strumień w dół.",
      "Temperatura powrotu jest niższa od zasilania, ponieważ część energii została przekazana podłodze. Źródło ponownie podgrzewa wodę, a obieg się powtarza. Różnica zasilanie–powrót pomaga ocenić bilans mocy, ale musi być analizowana razem z przepływem."
    ];

    var flowBox = root.querySelector("[data-rk-flow]");
    if (flowBox) {
      var flowButtons = flowBox.querySelectorAll("[data-flow-step]");
      var flowTitle = flowBox.querySelector("[data-flow-title]");
      var flowText = flowBox.querySelector("[data-flow-text]");

      flowButtons.forEach(function (button) {
        button.addEventListener("click", function () {
          var index = Number(button.getAttribute("data-flow-step"));
          flowButtons.forEach(function (item) {
            item.classList.remove("is-active");
            item.setAttribute("aria-pressed", "false");
          });
          button.classList.add("is-active");
          button.setAttribute("aria-pressed", "true");
          if (flowTitle) flowTitle.textContent = flowTitles[index] || flowTitles[0];
          if (flowText) flowText.textContent = flowTexts[index] || flowTexts[0];
        });
      });
    }

    var supply = root.querySelector("#rk-how-supply");
    var delta = root.querySelector("#rk-how-delta");
    var flowRate = root.querySelector("#rk-how-flow-rate");
    var area = root.querySelector("#rk-how-area");

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

    function updateModel() {
      if (!supply || !delta || !flowRate || !area) return;

      var ts = Number(supply.value);
      var dt = Number(delta.value);
      var flow = Number(flowRate.value);
      var activeArea = Number(area.value);
      var tr = ts - dt;
      var mean = (ts + tr) / 2;
      var power = 69.78 * flow * dt;
      var flux = power / activeArea;

      root.querySelector("#rk-how-supply-out").textContent = pl(ts, 0) + "°C";
      root.querySelector("#rk-how-delta-out").textContent = pl(dt, dt % 1 ? 1 : 0) + " K";
      root.querySelector("#rk-how-flow-rate-out").textContent = pl(flow, 1) + " l/min";
      root.querySelector("#rk-how-area-out").textContent = pl(activeArea, activeArea % 1 ? 1 : 0) + " m²";
      root.querySelector("#rk-how-return-result").textContent = pl(tr, 1) + "°C";
      root.querySelector("#rk-how-mean-result").textContent = pl(mean, 1) + "°C";
      root.querySelector("#rk-how-power-result").textContent = pl(Math.round(power), 0) + " W";
      root.querySelector("#rk-how-flux-result").textContent = pl(Math.round(flux), 0) + " W/m²";
    }

    [supply, delta, flowRate, area].forEach(function (input) {
      if (input) input.addEventListener("input", updateModel);
    });
    updateModel();

    var tabButtons = root.querySelectorAll("[data-author-tab]");
    var tabPanels = root.querySelectorAll("[data-author-panel]");

    tabButtons.forEach(function (button) {
      button.addEventListener("click", function () {
        var name = button.getAttribute("data-author-tab");
        tabButtons.forEach(function (item) {
          item.classList.remove("is-active");
          item.setAttribute("aria-selected", "false");
        });
        tabPanels.forEach(function (panel) {
          var active = panel.getAttribute("data-author-panel") === name;
          panel.classList.toggle("is-active", active);
          panel.hidden = !active;
        });
        button.classList.add("is-active");
        button.setAttribute("aria-selected", "true");
      });
    });

    window.addEventListener("scroll", requestProgress, { passive: true });
    window.addEventListener("resize", requestProgress, { passive: true });
    updateProgress();
  }());
</script>
<p>Artykuł <a href="https://projekt-ogrzewania.pl/jak-dziala-ogrzewanie-podlogowe/">Jak działa ogrzewanie podłogowe?</a> pochodzi z serwisu <a href="https://projekt-ogrzewania.pl">Projekt Ogrzewania</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://projekt-ogrzewania.pl/jak-dziala-ogrzewanie-podlogowe/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
		<item>
		<title>Jak powinien wyglądać profesjonalny projekt do ogrzewania podłogowego.</title>
		<link>https://projekt-ogrzewania.pl/jak-powinien-wygladac-profesjonalny-projekt-do-ogrzewania-podlogowego/</link>
					<comments>https://projekt-ogrzewania.pl/jak-powinien-wygladac-profesjonalny-projekt-do-ogrzewania-podlogowego/#comments</comments>
		
		<dc:creator><![CDATA[Robert Kucharski]]></dc:creator>
		<pubDate>Sat, 14 Sep 2024 11:35:45 +0000</pubDate>
				<category><![CDATA[Ekologiczne ogrzewanie]]></category>
		<category><![CDATA[Komfort cieplny]]></category>
		<category><![CDATA[Montaż ogrzewania]]></category>
		<category><![CDATA[Nowoczesne technologie grzewcze]]></category>
		<category><![CDATA[Ogrzewanie podłogowe]]></category>
		<category><![CDATA[Oszczędność energii]]></category>
		<category><![CDATA[Projektowanie instalacji grzewczych]]></category>
		<category><![CDATA[Systemy grzewcze]]></category>
		<category><![CDATA[efektywne ogrzewanie]]></category>
		<category><![CDATA[instalacja grzewcza]]></category>
		<category><![CDATA[komfort cieplny]]></category>
		<category><![CDATA[montaż ogrzewania]]></category>
		<category><![CDATA[nowoczesne technologie]]></category>
		<category><![CDATA[ogrzewanie podłogowe]]></category>
		<category><![CDATA[oszczędność energii]]></category>
		<category><![CDATA[projekt ogrzewania]]></category>
		<category><![CDATA[projektowanie instalacji]]></category>
		<category><![CDATA[systemy grzewcze]]></category>
		<guid isPermaLink="false">https://projekt-ogrzewania.pl/?p=1304</guid>

					<description><![CDATA[<p>Profesjonalny projekt ogrzewania podłogowego to klucz do efektywnego, komfortowego i oszczędnego systemu grzewczego w Twoim domu. W artykule omawiamy, jakie elementy powinien zawierać taki projekt, aby zapewnić optymalne rozprowadzenie ciepła, minimalizując jednocześnie koszty ogrzewania. Dowiesz się, jakie parametry montażu, plan pętli grzewczych, obliczenia techniczne oraz zalecenia dotyczące instalacji i użytkowania są niezbędne, by Twój system działał bezawaryjnie i zgodnie z normami.</p>
<p>Artykuł <a href="https://projekt-ogrzewania.pl/jak-powinien-wygladac-profesjonalny-projekt-do-ogrzewania-podlogowego/">Jak powinien wyglądać profesjonalny projekt do ogrzewania podłogowego.</a> pochodzi z serwisu <a href="https://projekt-ogrzewania.pl">Projekt Ogrzewania</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<style>
  #rk-profesjonalny-projekt {
    --rk-dark: #102536;
    --rk-navy: #14384d;
    --rk-blue: #078fbe;
    --rk-cyan: #28c9da;
    --rk-cyan-soft: #eafcff;
    --rk-orange: #ff7438;
    --rk-red: #e33d35;
    --rk-green: #169c68;
    --rk-green-soft: #eafaf3;
    --rk-ink: #1f2937;
    --rk-text: #465866;
    --rk-muted: #687986;
    --rk-line: #dce8ee;
    --rk-soft: #f5f9fb;
    --rk-warm: #fff4ed;
    --rk-white: #ffffff;
    width: 100%;
    max-width: 1080px;
    margin: 34px auto 70px;
    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.78;
  }

  #rk-profesjonalny-projekt,
  #rk-profesjonalny-projekt * {
    box-sizing: border-box;
  }

  #rk-profesjonalny-projekt [hidden] {
    display: none !important;
  }

  #rk-profesjonalny-projekt img {
    max-width: 100%;
    height: auto;
  }

  #rk-profesjonalny-projekt button,
  #rk-profesjonalny-projekt a {
    -webkit-tap-highlight-color: transparent;
  }

  #rk-profesjonalny-projekt a {
    color: var(--rk-blue);
    font-weight: 760;
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
  }

  #rk-profesjonalny-projekt a:hover {
    color: var(--rk-red);
  }

  #rk-profesjonalny-projekt .rk-pro-shell {
    overflow: hidden;
    border: 1px solid var(--rk-line);
    border-radius: 30px;
    background: var(--rk-white);
    box-shadow: 0 25px 70px rgba(16, 37, 54, 0.12);
  }

  #rk-profesjonalny-projekt .rk-pro-progress-track {
    position: sticky;
    z-index: 30;
    top: 0;
    width: 100%;
    height: 5px;
    overflow: hidden;
    background: rgba(255, 255, 255, 0.86);
  }

  #rk-profesjonalny-projekt .rk-pro-progress {
    width: 0;
    height: 100%;
    background: linear-gradient(90deg, var(--rk-cyan), var(--rk-blue), var(--rk-orange), var(--rk-red));
  }

  #rk-profesjonalny-projekt h2,
  #rk-profesjonalny-projekt h3,
  #rk-profesjonalny-projekt h4 {
    margin-top: 0;
    color: var(--rk-dark);
    font-weight: 900;
    letter-spacing: -0.035em;
    line-height: 1.18;
  }

  #rk-profesjonalny-projekt h2 {
    margin-bottom: 18px;
    font-size: clamp(1.65rem, 3.7vw, 2.6rem);
  }

  #rk-profesjonalny-projekt h3 {
    margin-bottom: 12px;
    font-size: clamp(1.22rem, 2.6vw, 1.65rem);
  }

  #rk-profesjonalny-projekt h4 {
    margin-bottom: 8px;
    font-size: 1.03rem;
    letter-spacing: -0.015em;
  }

  #rk-profesjonalny-projekt p {
    margin: 0 0 1.25em;
    color: var(--rk-text);
  }

  #rk-profesjonalny-projekt strong {
    color: var(--rk-dark);
  }

  #rk-profesjonalny-projekt .rk-pro-hero {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    padding: clamp(38px, 6.5vw, 78px);
    color: var(--rk-white);
    background:
      radial-gradient(circle at 88% 12%, rgba(255, 116, 56, 0.35), transparent 27%),
      radial-gradient(circle at 82% 78%, rgba(40, 201, 218, 0.24), transparent 31%),
      linear-gradient(135deg, #0d2230 0%, #143b50 58%, #095e78 100%);
  }

  #rk-profesjonalny-projekt .rk-pro-hero::before,
  #rk-profesjonalny-projekt .rk-pro-hero::after {
    content: "";
    position: absolute;
    z-index: -1;
    border-radius: 50%;
    pointer-events: none;
  }

  #rk-profesjonalny-projekt .rk-pro-hero::before {
    right: -115px;
    bottom: -170px;
    width: 390px;
    height: 390px;
    border: 58px solid rgba(255, 255, 255, 0.055);
  }

  #rk-profesjonalny-projekt .rk-pro-hero::after {
    right: 115px;
    bottom: -130px;
    width: 230px;
    height: 230px;
    border: 34px solid rgba(255, 116, 56, 0.11);
  }

  #rk-profesjonalny-projekt .rk-pro-badge {
    display: inline-flex;
    gap: 10px;
    align-items: center;
    margin: 0 0 24px;
    padding: 8px 15px;
    border: 1px solid rgba(255, 255, 255, 0.22);
    border-radius: 999px;
    color: var(--rk-white);
    background: rgba(255, 255, 255, 0.08);
    font-size: 0.74rem;
    font-weight: 900;
    letter-spacing: 0.1em;
    line-height: 1.35;
    text-transform: uppercase;
  }

  #rk-profesjonalny-projekt .rk-pro-badge::before {
    content: "";
    width: 10px;
    height: 10px;
    flex: 0 0 10px;
    border-radius: 50%;
    background: var(--rk-orange);
    box-shadow: 0 0 0 6px rgba(255, 116, 56, 0.18);
  }

  #rk-profesjonalny-projekt .rk-pro-hero h2 {
    max-width: 900px;
    margin-bottom: 24px;
    color: var(--rk-white);
    font-size: clamp(2rem, 5.4vw, 4rem);
    letter-spacing: -0.055em;
  }

  #rk-profesjonalny-projekt .rk-pro-hero h2 span {
    color: #84edf5;
  }

  #rk-profesjonalny-projekt .rk-pro-hook {
    max-width: 900px;
    margin: 0 0 26px;
    padding: clamp(20px, 3.6vw, 30px);
    border: 1px solid rgba(255, 255, 255, 0.17);
    border-left: 5px solid var(--rk-orange);
    border-radius: 0 18px 18px 0;
    background: rgba(255, 255, 255, 0.09);
    backdrop-filter: blur(6px);
  }

  #rk-profesjonalny-projekt .rk-pro-hook p {
    margin: 0;
    color: #f3f8fa;
    font-size: clamp(1.03rem, 2.1vw, 1.25rem);
    font-weight: 620;
    line-height: 1.72;
  }

  #rk-profesjonalny-projekt .rk-pro-hook strong {
    color: var(--rk-white);
  }

  #rk-profesjonalny-projekt .rk-pro-hero-lead {
    max-width: 880px;
    margin-bottom: 0;
    color: #dcecf1;
    font-size: clamp(1rem, 2vw, 1.16rem);
  }

  #rk-profesjonalny-projekt .rk-pro-hero-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 9px 18px;
    margin-top: 28px;
    color: #c9e0e7;
    font-size: 0.82rem;
    font-weight: 750;
  }

  #rk-profesjonalny-projekt .rk-pro-hero-meta span {
    display: inline-flex;
    gap: 8px;
    align-items: center;
  }

  #rk-profesjonalny-projekt .rk-pro-hero-meta span::before {
    content: "";
    width: 6px;
    height: 6px;
    flex: 0 0 6px;
    border-radius: 50%;
    background: var(--rk-cyan);
  }

  #rk-profesjonalny-projekt .rk-pro-author-strip {
    display: flex;
    gap: 15px;
    align-items: center;
    max-width: 790px;
    margin-top: 30px;
    padding-top: 24px;
    border-top: 1px solid rgba(255, 255, 255, 0.16);
  }

  #rk-profesjonalny-projekt .rk-pro-author-strip img {
    width: 52px;
    height: 52px;
    flex: 0 0 52px;
    object-fit: cover;
    border: 3px solid rgba(255, 255, 255, 0.92);
    border-radius: 50%;
  }

  #rk-profesjonalny-projekt .rk-pro-author-strip b,
  #rk-profesjonalny-projekt .rk-pro-author-strip small {
    display: block;
  }

  #rk-profesjonalny-projekt .rk-pro-author-strip b {
    color: var(--rk-white);
    font-size: 0.94rem;
  }

  #rk-profesjonalny-projekt .rk-pro-author-strip small {
    margin-top: 2px;
    color: #c9dbe1;
    font-size: 0.75rem;
    font-weight: 650;
    line-height: 1.45;
  }

  #rk-profesjonalny-projekt .rk-pro-content {
    padding: clamp(28px, 5.7vw, 68px);
  }

  #rk-profesjonalny-projekt .rk-pro-answer {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(220px, 0.65fr);
    gap: 22px;
    margin: 0 0 38px;
    padding: clamp(24px, 4vw, 38px);
    border: 1px solid #bfe8ee;
    border-radius: 24px;
    background: linear-gradient(135deg, #f9feff, #eafaff);
  }

  #rk-profesjonalny-projekt .rk-pro-answer-label {
    display: block;
    margin-bottom: 9px;
    color: var(--rk-blue);
    font-size: 0.74rem;
    font-weight: 900;
    letter-spacing: 0.1em;
    text-transform: uppercase;
  }

  #rk-profesjonalny-projekt .rk-pro-answer-main {
    display: block;
    font-size: clamp(1.27rem, 3vw, 2rem);
    letter-spacing: -0.035em;
    line-height: 1.28;
  }

  #rk-profesjonalny-projekt .rk-pro-answer p {
    margin: 13px 0 0;
  }

  #rk-profesjonalny-projekt .rk-pro-answer-badge {
    display: grid;
    align-content: center;
    padding: 22px;
    border-radius: 20px;
    color: var(--rk-white);
    background: linear-gradient(145deg, var(--rk-green), #087e58);
    text-align: center;
    box-shadow: 0 16px 34px rgba(22, 156, 104, 0.2);
  }

  #rk-profesjonalny-projekt .rk-pro-answer-badge b,
  #rk-profesjonalny-projekt .rk-pro-answer-badge span {
    color: var(--rk-white);
  }

  #rk-profesjonalny-projekt .rk-pro-answer-badge b {
    display: block;
    font-size: 2.25rem;
    letter-spacing: -0.05em;
    line-height: 1;
  }

  #rk-profesjonalny-projekt .rk-pro-answer-badge span {
    display: block;
    margin-top: 9px;
    font-size: 0.78rem;
    font-weight: 800;
    line-height: 1.45;
  }

  #rk-profesjonalny-projekt .rk-pro-learn {
    margin: 0 0 42px;
  }

  #rk-profesjonalny-projekt .rk-pro-learn-title {
    display: flex;
    gap: 11px;
    align-items: center;
    margin-bottom: 20px;
    font-size: 1.18rem;
  }

  #rk-profesjonalny-projekt .rk-pro-learn-title svg {
    flex: 0 0 25px;
    color: var(--rk-orange);
  }

  #rk-profesjonalny-projekt .rk-pro-learn-grid,
  #rk-profesjonalny-projekt .rk-pro-process-grid,
  #rk-profesjonalny-projekt .rk-pro-scope-grid,
  #rk-profesjonalny-projekt .rk-pro-material-grid,
  #rk-profesjonalny-projekt .rk-pro-program-grid,
  #rk-profesjonalny-projekt .rk-pro-bio-stats {
    display: grid;
    gap: 16px;
  }

  #rk-profesjonalny-projekt .rk-pro-learn-grid,
  #rk-profesjonalny-projekt .rk-pro-program-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  #rk-profesjonalny-projekt .rk-pro-learn-card {
    display: flex;
    gap: 16px;
    align-items: flex-start;
    padding: 21px;
    border: 1px solid #bfe9ef;
    border-radius: 18px;
    background: linear-gradient(145deg, #f8feff, var(--rk-cyan-soft));
  }

  #rk-profesjonalny-projekt .rk-pro-learn-icon {
    display: grid;
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
    place-items: center;
    border-radius: 13px;
    color: var(--rk-white);
    background: linear-gradient(145deg, var(--rk-blue), var(--rk-cyan));
    box-shadow: 0 10px 22px rgba(7, 143, 190, 0.18);
    font-size: 0.78rem;
    font-weight: 900;
  }

  #rk-profesjonalny-projekt .rk-pro-learn-card p {
    margin: 0;
    font-size: 0.86rem;
    line-height: 1.6;
  }

  #rk-profesjonalny-projekt .rk-pro-nav {
    margin: 0 0 48px;
    padding: 22px;
    border: 1px solid var(--rk-line);
    border-radius: 20px;
    background: var(--rk-soft);
  }

  #rk-profesjonalny-projekt .rk-pro-nav strong {
    display: block;
    margin-bottom: 13px;
    font-size: 0.82rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
  }

  #rk-profesjonalny-projekt .rk-pro-nav-links {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
  }

  #rk-profesjonalny-projekt .rk-pro-nav a {
    display: inline-flex;
    align-items: center;
    min-height: 38px;
    padding: 7px 12px;
    border: 1px solid #ccdde5;
    border-radius: 999px;
    color: var(--rk-navy);
    background: var(--rk-white);
    font-size: 0.77rem;
    font-weight: 800;
    line-height: 1.25;
    text-decoration: none;
  }

  #rk-profesjonalny-projekt .rk-pro-nav a:hover {
    color: var(--rk-white);
    border-color: var(--rk-blue);
    background: var(--rk-blue);
  }

  #rk-profesjonalny-projekt .rk-pro-section {
    margin: 0 0 64px;
    scroll-margin-top: 24px;
  }

  #rk-profesjonalny-projekt .rk-pro-section-head {
    display: grid;
    grid-template-columns: 54px minmax(0, 1fr);
    gap: 18px;
    align-items: start;
    margin-bottom: 24px;
  }

  #rk-profesjonalny-projekt .rk-pro-section-no {
    display: grid;
    width: 54px;
    height: 54px;
    place-items: center;
    border-radius: 16px;
    color: var(--rk-white);
    background: linear-gradient(145deg, var(--rk-dark), var(--rk-navy));
    font-weight: 900;
    line-height: 1;
    box-shadow: inset 0 -4px 0 rgba(40, 201, 218, 0.55);
  }

  #rk-profesjonalny-projekt .rk-pro-section-head h2 {
    margin-bottom: 7px;
  }

  #rk-profesjonalny-projekt .rk-pro-section-head p {
    margin: 0;
  }

  #rk-profesjonalny-projekt .rk-pro-note,
  #rk-profesjonalny-projekt .rk-pro-warning,
  #rk-profesjonalny-projekt .rk-pro-truth {
    margin: 25px 0;
    padding: 22px 24px;
    border-radius: 18px;
  }

  #rk-profesjonalny-projekt .rk-pro-note {
    border-left: 5px solid var(--rk-blue);
    background: var(--rk-cyan-soft);
  }

  #rk-profesjonalny-projekt .rk-pro-warning {
    border: 1px solid #f2c7ad;
    background: var(--rk-warm);
  }

  #rk-profesjonalny-projekt .rk-pro-truth {
    color: #edf7fa;
    background:
      radial-gradient(circle at 94% 8%, rgba(40, 201, 218, 0.18), transparent 31%),
      linear-gradient(135deg, var(--rk-dark), #24485c);
  }

  #rk-profesjonalny-projekt .rk-pro-truth p,
  #rk-profesjonalny-projekt .rk-pro-truth strong {
    color: var(--rk-white);
  }

  #rk-profesjonalny-projekt .rk-pro-truth p:last-child,
  #rk-profesjonalny-projekt .rk-pro-note p:last-child,
  #rk-profesjonalny-projekt .rk-pro-warning p:last-child {
    margin-bottom: 0;
  }

  #rk-profesjonalny-projekt .rk-pro-process-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin: 26px 0 30px;
  }

  #rk-profesjonalny-projekt .rk-pro-process-card {
    position: relative;
    min-width: 0;
    padding: 24px 20px 22px;
    border: 1px solid var(--rk-line);
    border-radius: 19px;
    background: var(--rk-white);
    box-shadow: 0 10px 28px rgba(16, 37, 54, 0.065);
  }

  #rk-profesjonalny-projekt .rk-pro-process-card::after {
    content: "→";
    position: absolute;
    z-index: 2;
    top: 31px;
    right: -14px;
    color: var(--rk-orange);
    font-size: 1.25rem;
    font-weight: 900;
  }

  #rk-profesjonalny-projekt .rk-pro-process-card:last-child::after {
    display: none;
  }

  #rk-profesjonalny-projekt .rk-pro-process-no {
    display: inline-grid;
    width: 38px;
    height: 38px;
    place-items: center;
    margin-bottom: 15px;
    border-radius: 11px;
    color: var(--rk-white);
    background: linear-gradient(145deg, var(--rk-orange), var(--rk-red));
    font-size: 0.78rem;
    font-weight: 900;
  }

  #rk-profesjonalny-projekt .rk-pro-process-card p {
    margin: 0;
    font-size: 0.82rem;
    line-height: 1.62;
  }

  #rk-profesjonalny-projekt .rk-pro-scope-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin: 26px 0 30px;
  }

  #rk-profesjonalny-projekt .rk-pro-scope-card {
    min-width: 0;
    padding: 23px;
    border: 1px solid var(--rk-line);
    border-radius: 19px;
    background: var(--rk-white);
  }

  #rk-profesjonalny-projekt .rk-pro-scope-icon {
    display: grid;
    width: 42px;
    height: 42px;
    place-items: center;
    margin-bottom: 14px;
    border-radius: 12px;
    color: var(--rk-white);
    background: linear-gradient(145deg, var(--rk-blue), var(--rk-cyan));
    font-size: 0.72rem;
    font-weight: 900;
  }

  #rk-profesjonalny-projekt .rk-pro-scope-card p {
    margin: 0;
    font-size: 0.82rem;
    line-height: 1.62;
  }

  #rk-profesjonalny-projekt .rk-pro-material-box {
    margin: 27px 0 32px;
    padding: clamp(24px, 4vw, 38px);
    border: 1px solid #c8e8d9;
    border-radius: 24px;
    background: linear-gradient(145deg, #fbfffd, var(--rk-green-soft));
  }

  #rk-profesjonalny-projekt .rk-pro-material-box h3 {
    margin-bottom: 8px;
  }

  #rk-profesjonalny-projekt .rk-pro-material-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-top: 22px;
  }

  #rk-profesjonalny-projekt .rk-pro-material-card {
    min-width: 0;
    padding: 18px 16px;
    border: 1px solid rgba(22, 156, 104, 0.22);
    border-radius: 15px;
    background: rgba(255, 255, 255, 0.82);
  }

  #rk-profesjonalny-projekt .rk-pro-material-card b {
    display: block;
    margin-bottom: 5px;
    color: #0d7d56;
    font-size: 0.86rem;
  }

  #rk-profesjonalny-projekt .rk-pro-material-card span {
    display: block;
    color: var(--rk-muted);
    font-size: 0.73rem;
    font-weight: 680;
    line-height: 1.5;
  }

  #rk-profesjonalny-projekt .rk-pro-table-wrap {
    width: 100%;
    margin: 25px 0 31px;
    overflow-x: auto;
    border: 1px solid var(--rk-line);
    border-radius: 18px;
  }

  #rk-profesjonalny-projekt table {
    width: 100%;
    min-width: 760px;
    border-collapse: collapse;
    background: var(--rk-white);
    font-size: 0.83rem;
    line-height: 1.52;
  }

  #rk-profesjonalny-projekt th,
  #rk-profesjonalny-projekt td {
    padding: 14px 15px;
    border-bottom: 1px solid var(--rk-line);
    color: var(--rk-text);
    text-align: left;
    vertical-align: top;
  }

  #rk-profesjonalny-projekt th {
    color: var(--rk-white);
    background: var(--rk-dark);
    font-weight: 850;
  }

  #rk-profesjonalny-projekt tbody tr:nth-child(even) td {
    background: #f8fbfc;
  }

  #rk-profesjonalny-projekt tbody tr:last-child td,
  #rk-profesjonalny-projekt tbody tr:last-child th {
    border-bottom: 0;
  }

  #rk-profesjonalny-projekt .rk-pro-list {
    margin: 20px 0 28px;
    padding: 0;
    list-style: none;
  }

  #rk-profesjonalny-projekt .rk-pro-list li {
    position: relative;
    margin: 0 0 12px;
    padding-left: 31px;
    color: var(--rk-text);
  }

  #rk-profesjonalny-projekt .rk-pro-list li::before {
    content: "";
    position: absolute;
    top: 0.63em;
    left: 3px;
    width: 12px;
    height: 7px;
    transform: rotate(-45deg);
    border-bottom: 3px solid var(--rk-blue);
    border-left: 3px solid var(--rk-blue);
  }

  #rk-profesjonalny-projekt .rk-pro-program-card {
    padding: 25px;
    border: 1px solid var(--rk-line);
    border-radius: 19px;
    background: var(--rk-white);
  }

  #rk-profesjonalny-projekt .rk-pro-program-card:first-child {
    border-top: 5px solid var(--rk-orange);
  }

  #rk-profesjonalny-projekt .rk-pro-program-card:last-child {
    border-top: 5px solid var(--rk-green);
    background: #fbfffd;
  }

  #rk-profesjonalny-projekt .rk-pro-program-card p:last-child {
    margin-bottom: 0;
  }

  #rk-profesjonalny-projekt .rk-pro-cta {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    margin: 38px 0 64px;
    padding: clamp(28px, 5vw, 48px);
    border-radius: 25px;
    color: var(--rk-white);
    background:
      radial-gradient(circle at 92% 18%, rgba(255, 116, 56, 0.38), transparent 28%),
      linear-gradient(135deg, #102536, #095d79);
    box-shadow: 0 20px 48px rgba(16, 37, 54, 0.18);
  }

  #rk-profesjonalny-projekt .rk-pro-cta::after {
    content: "";
    position: absolute;
    z-index: -1;
    right: -90px;
    bottom: -120px;
    width: 270px;
    height: 270px;
    border: 40px solid rgba(255, 255, 255, 0.07);
    border-radius: 50%;
  }

  #rk-profesjonalny-projekt .rk-pro-cta-label {
    display: inline-block;
    margin-bottom: 12px;
    color: #8cf2f8;
    font-size: 0.73rem;
    font-weight: 900;
    letter-spacing: 0.1em;
    text-transform: uppercase;
  }

  #rk-profesjonalny-projekt .rk-pro-cta h2,
  #rk-profesjonalny-projekt .rk-pro-cta p,
  #rk-profesjonalny-projekt .rk-pro-cta strong {
    color: var(--rk-white);
  }

  #rk-profesjonalny-projekt .rk-pro-cta h2 {
    max-width: 800px;
    margin-bottom: 14px;
  }

  #rk-profesjonalny-projekt .rk-pro-cta p {
    max-width: 820px;
  }

  #rk-profesjonalny-projekt .rk-pro-cta-points {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
    margin: 22px 0 25px;
  }

  #rk-profesjonalny-projekt .rk-pro-cta-points span {
    display: inline-flex;
    align-items: center;
    min-height: 35px;
    padding: 6px 11px;
    border: 1px solid rgba(255, 255, 255, 0.19);
    border-radius: 999px;
    color: #ecf8fa;
    background: rgba(255, 255, 255, 0.08);
    font-size: 0.73rem;
    font-weight: 780;
  }

  #rk-profesjonalny-projekt .rk-pro-cta-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 11px;
  }

  #rk-profesjonalny-projekt .rk-pro-cta-button,
  #rk-profesjonalny-projekt .rk-pro-cta-secondary {
    display: inline-flex;
    gap: 9px;
    align-items: center;
    justify-content: center;
    min-height: 50px;
    padding: 12px 20px;
    border-radius: 13px;
    font-size: 0.9rem;
    font-weight: 900;
    line-height: 1.25;
    text-decoration: none;
    transition: transform 0.18s ease, box-shadow 0.18s ease;
  }

  #rk-profesjonalny-projekt .rk-pro-cta-button {
    color: var(--rk-white);
    background: linear-gradient(145deg, var(--rk-orange), var(--rk-red));
    box-shadow: 0 12px 28px rgba(227, 61, 53, 0.28);
  }

  #rk-profesjonalny-projekt .rk-pro-cta-button::after {
    content: "→";
    font-size: 1.1rem;
  }

  #rk-profesjonalny-projekt .rk-pro-cta-secondary {
    color: var(--rk-white);
    border: 1px solid rgba(255, 255, 255, 0.3);
    background: rgba(255, 255, 255, 0.08);
  }

  #rk-profesjonalny-projekt .rk-pro-cta-button:hover,
  #rk-profesjonalny-projekt .rk-pro-cta-secondary:hover {
    color: var(--rk-white);
    transform: translateY(-2px);
  }

  #rk-profesjonalny-projekt .rk-pro-cta-button:hover {
    box-shadow: 0 16px 34px rgba(227, 61, 53, 0.36);
  }

  #rk-profesjonalny-projekt .rk-pro-faq {
    display: grid;
    gap: 12px;
  }

  #rk-profesjonalny-projekt .rk-pro-faq details {
    border: 1px solid var(--rk-line);
    border-radius: 17px;
    background: var(--rk-white);
  }

  #rk-profesjonalny-projekt .rk-pro-faq details[open] {
    border-color: #abdce5;
    box-shadow: 0 10px 26px rgba(16, 37, 54, 0.065);
  }

  #rk-profesjonalny-projekt .rk-pro-faq summary {
    position: relative;
    padding: 18px 54px 18px 20px;
    color: var(--rk-dark);
    cursor: pointer;
    font-weight: 850;
    line-height: 1.45;
    list-style: none;
  }

  #rk-profesjonalny-projekt .rk-pro-faq summary::-webkit-details-marker {
    display: none;
  }

  #rk-profesjonalny-projekt .rk-pro-faq summary::after {
    content: "+";
    position: absolute;
    top: 50%;
    right: 18px;
    display: grid;
    width: 29px;
    height: 29px;
    transform: translateY(-50%);
    place-items: center;
    border-radius: 9px;
    color: var(--rk-white);
    background: var(--rk-blue);
    font-size: 1.1rem;
    line-height: 1;
  }

  #rk-profesjonalny-projekt .rk-pro-faq details[open] summary::after {
    content: "−";
    background: var(--rk-orange);
  }

  #rk-profesjonalny-projekt .rk-pro-faq details p {
    margin: 0;
    padding: 0 20px 20px;
  }

  #rk-profesjonalny-projekt .rk-pro-summary {
    margin: 5px 0 34px;
    padding: clamp(28px, 4.7vw, 44px);
    border-radius: 24px;
    color: #eef8fa;
    background:
      radial-gradient(circle at 90% 15%, rgba(255, 116, 56, 0.25), transparent 31%),
      linear-gradient(135deg, #0f2534, #224b60);
  }

  #rk-profesjonalny-projekt .rk-pro-summary h2,
  #rk-profesjonalny-projekt .rk-pro-summary p,
  #rk-profesjonalny-projekt .rk-pro-summary strong {
    color: var(--rk-white);
  }

  #rk-profesjonalny-projekt .rk-pro-summary p:last-child {
    margin-bottom: 0;
  }

  #rk-profesjonalny-projekt .rk-pro-conditions {
    margin: 33px 0;
    padding: 22px 24px;
    border: 1px solid var(--rk-line);
    border-radius: 18px;
    color: var(--rk-muted);
    background: var(--rk-soft);
    font-size: 0.8rem;
    line-height: 1.68;
  }

  #rk-profesjonalny-projekt .rk-pro-conditions strong {
    display: block;
    margin-bottom: 5px;
  }

  #rk-profesjonalny-projekt .rk-pro-author-bio {
    overflow: hidden;
    margin-top: 40px;
    border: 1px solid var(--rk-line);
    border-radius: 25px;
    background: var(--rk-white);
    box-shadow: 0 18px 44px rgba(16, 37, 54, 0.1);
  }

  #rk-profesjonalny-projekt .rk-pro-bio-head {
    display: flex;
    gap: 22px;
    align-items: center;
    justify-content: space-between;
    padding: 28px clamp(24px, 4.5vw, 42px);
    border-bottom: 4px solid var(--rk-cyan);
    color: var(--rk-white);
    background: linear-gradient(135deg, var(--rk-dark), var(--rk-navy));
  }

  #rk-profesjonalny-projekt .rk-pro-bio-head h2 {
    margin-bottom: 6px;
    color: var(--rk-white);
    font-size: clamp(1.35rem, 2.9vw, 2rem);
  }

  #rk-profesjonalny-projekt .rk-pro-bio-head p {
    margin: 0;
    color: #cfe3e9;
    font-size: 0.84rem;
  }

  #rk-profesjonalny-projekt .rk-pro-bio-badge {
    display: inline-flex;
    gap: 8px;
    align-items: center;
    flex: 0 0 auto;
    padding: 9px 13px;
    border: 1px solid rgba(40, 201, 218, 0.3);
    border-radius: 12px;
    color: #92f2f8;
    background: rgba(40, 201, 218, 0.1);
    font-size: 0.7rem;
    font-weight: 900;
    letter-spacing: 0.06em;
    text-transform: uppercase;
  }

  #rk-profesjonalny-projekt .rk-pro-bio-grid {
    display: grid;
    grid-template-columns: 285px minmax(0, 1fr);
  }

  #rk-profesjonalny-projekt .rk-pro-bio-profile {
    padding: 34px 26px;
    border-right: 1px solid var(--rk-line);
    background: var(--rk-soft);
    text-align: center;
  }

  #rk-profesjonalny-projekt .rk-pro-bio-photo {
    display: block;
    width: 142px;
    height: 142px;
    margin: 0 auto 20px;
    object-fit: cover;
    border: 5px solid var(--rk-white);
    border-radius: 50%;
    box-shadow: 0 12px 28px rgba(7, 143, 190, 0.18);
  }

  #rk-profesjonalny-projekt .rk-pro-bio-name {
    margin-bottom: 4px;
    font-size: 1.28rem;
  }

  #rk-profesjonalny-projekt .rk-pro-bio-title {
    margin-bottom: 19px;
    color: var(--rk-blue);
    font-size: 0.74rem;
    font-weight: 900;
    letter-spacing: 0.07em;
    text-transform: uppercase;
  }

  #rk-profesjonalny-projekt .rk-pro-bio-links {
    display: grid;
    gap: 8px;
  }

  #rk-profesjonalny-projekt .rk-pro-bio-links a {
    display: flex;
    gap: 8px;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    padding: 8px 11px;
    border: 1px solid #ccdde4;
    border-radius: 11px;
    color: var(--rk-navy);
    background: var(--rk-white);
    font-size: 0.72rem;
    font-weight: 850;
    line-height: 1.25;
    text-decoration: none;
  }

  #rk-profesjonalny-projekt .rk-pro-bio-links a:hover {
    color: var(--rk-white);
    border-color: var(--rk-blue);
    background: var(--rk-blue);
  }

  #rk-profesjonalny-projekt .rk-pro-bio-content {
    min-width: 0;
  }

  #rk-profesjonalny-projekt .rk-pro-bio-quote {
    padding: 30px clamp(24px, 4vw, 38px) 24px;
    border-bottom: 1px solid var(--rk-line);
  }

  #rk-profesjonalny-projekt .rk-pro-bio-quote-mark {
    display: block;
    height: 29px;
    color: var(--rk-cyan);
    font-family: Georgia, serif;
    font-size: 3.5rem;
    line-height: 0.75;
    opacity: 0.75;
  }

  #rk-profesjonalny-projekt .rk-pro-bio-quote p {
    margin: 0;
    color: var(--rk-dark);
    font-size: clamp(1rem, 2vw, 1.12rem);
    font-style: italic;
    font-weight: 760;
    line-height: 1.65;
  }

  #rk-profesjonalny-projekt .rk-pro-bio-tabs {
    display: flex;
    border-bottom: 1px solid var(--rk-line);
    background: var(--rk-soft);
  }

  #rk-profesjonalny-projekt .rk-pro-bio-tab {
    appearance: none;
    flex: 1;
    min-height: 50px;
    padding: 10px 8px;
    border: 0;
    border-bottom: 3px solid transparent;
    color: var(--rk-muted);
    background: transparent;
    cursor: pointer;
    font: inherit;
    font-size: 0.68rem;
    font-weight: 900;
    letter-spacing: 0.04em;
    text-transform: uppercase;
  }

  #rk-profesjonalny-projekt .rk-pro-bio-tab[aria-selected="true"] {
    color: var(--rk-blue);
    border-bottom-color: var(--rk-blue);
    background: var(--rk-white);
  }

  #rk-profesjonalny-projekt .rk-pro-bio-panel {
    padding: 28px clamp(24px, 4vw, 38px) 33px;
  }

  #rk-profesjonalny-projekt .rk-pro-bio-panel p:last-child {
    margin-bottom: 0;
  }

  #rk-profesjonalny-projekt .rk-pro-bio-stats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-top: 18px;
  }

  #rk-profesjonalny-projekt .rk-pro-bio-stat {
    padding: 17px;
    border: 1px solid var(--rk-line);
    border-radius: 14px;
    background: var(--rk-soft);
  }

  #rk-profesjonalny-projekt .rk-pro-bio-stat b {
    display: block;
    color: var(--rk-blue);
    font-size: 1.45rem;
    line-height: 1.1;
  }

  #rk-profesjonalny-projekt .rk-pro-bio-stat span {
    display: block;
    margin-top: 5px;
    color: var(--rk-muted);
    font-size: 0.66rem;
    font-weight: 850;
    letter-spacing: 0.04em;
    line-height: 1.4;
    text-transform: uppercase;
  }

  #rk-profesjonalny-projekt .rk-pro-bio-tab:focus-visible,
  #rk-profesjonalny-projekt .rk-pro-cta-button:focus-visible,
  #rk-profesjonalny-projekt .rk-pro-cta-secondary:focus-visible,
  #rk-profesjonalny-projekt .rk-pro-nav a:focus-visible,
  #rk-profesjonalny-projekt .rk-pro-bio-links a:focus-visible,
  #rk-profesjonalny-projekt summary:focus-visible {
    outline: 3px solid rgba(255, 116, 56, 0.35);
    outline-offset: 3px;
  }

  @media (max-width: 940px) {
    #rk-profesjonalny-projekt .rk-pro-process-grid,
    #rk-profesjonalny-projekt .rk-pro-scope-grid,
    #rk-profesjonalny-projekt .rk-pro-material-grid {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    #rk-profesjonalny-projekt .rk-pro-process-card::after {
      display: none;
    }
  }

  @media (max-width: 780px) {
    #rk-profesjonalny-projekt {
      font-size: 16px;
    }

    #rk-profesjonalny-projekt .rk-pro-shell {
      border-radius: 21px;
    }

    #rk-profesjonalny-projekt .rk-pro-answer,
    #rk-profesjonalny-projekt .rk-pro-bio-grid {
      grid-template-columns: 1fr;
    }

    #rk-profesjonalny-projekt .rk-pro-table-wrap {
      overflow: visible;
      border: 0;
      border-radius: 0;
    }

    #rk-profesjonalny-projekt .rk-pro-table-wrap table {
      display: block;
      min-width: 0;
      border-collapse: separate;
      border-spacing: 0;
      background: transparent;
    }

    #rk-profesjonalny-projekt .rk-pro-table-wrap thead {
      position: absolute;
      width: 1px;
      height: 1px;
      padding: 0;
      margin: -1px;
      overflow: hidden;
      clip: rect(0 0 0 0);
      clip-path: inset(50%);
      white-space: nowrap;
      border: 0;
    }

    #rk-profesjonalny-projekt .rk-pro-table-wrap tbody {
      display: grid;
      gap: 16px;
    }

    #rk-profesjonalny-projekt .rk-pro-table-wrap tbody tr {
      display: block;
      overflow: hidden;
      border: 1px solid var(--rk-line);
      border-radius: 18px;
      background: var(--rk-white);
      box-shadow: 0 10px 26px rgba(16, 37, 54, 0.065);
    }

    #rk-profesjonalny-projekt .rk-pro-table-wrap tbody th[scope="row"] {
      display: block;
      width: 100%;
      padding: 15px 17px;
      border: 0;
      color: var(--rk-white);
      background: linear-gradient(135deg, var(--rk-dark), var(--rk-navy));
      font-size: 0.92rem;
      line-height: 1.4;
    }

    #rk-profesjonalny-projekt .rk-pro-table-wrap tbody td {
      display: block;
      width: 100%;
      padding: 14px 17px 15px;
      border: 0;
      border-bottom: 1px solid var(--rk-line);
      background: var(--rk-white);
    }

    #rk-profesjonalny-projekt .rk-pro-table-wrap tbody tr:nth-child(even) td,
    #rk-profesjonalny-projekt .rk-pro-table-wrap tbody tr:nth-child(odd) td {
      background: var(--rk-white);
    }

    #rk-profesjonalny-projekt .rk-pro-table-wrap tbody tr td:last-child {
      border-bottom: 0;
    }

    #rk-profesjonalny-projekt .rk-pro-table-wrap tbody td::before {
      content: attr(data-label);
      display: block;
      margin-bottom: 5px;
      color: var(--rk-blue);
      font-size: 0.67rem;
      font-weight: 900;
      letter-spacing: 0.055em;
      line-height: 1.4;
      text-transform: uppercase;
    }

    #rk-profesjonalny-projekt .rk-pro-bio-profile {
      border-right: 0;
      border-bottom: 1px solid var(--rk-line);
    }

    #rk-profesjonalny-projekt .rk-pro-bio-links {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }

  @media (max-width: 580px) {
    #rk-profesjonalny-projekt {
      margin-top: 22px;
    }

    #rk-profesjonalny-projekt .rk-pro-hero,
    #rk-profesjonalny-projekt .rk-pro-content {
      padding-right: 21px;
      padding-left: 21px;
    }

    #rk-profesjonalny-projekt .rk-pro-learn-grid,
    #rk-profesjonalny-projekt .rk-pro-process-grid,
    #rk-profesjonalny-projekt .rk-pro-scope-grid,
    #rk-profesjonalny-projekt .rk-pro-material-grid,
    #rk-profesjonalny-projekt .rk-pro-program-grid,
    #rk-profesjonalny-projekt .rk-pro-bio-stats {
      grid-template-columns: 1fr;
    }

    #rk-profesjonalny-projekt .rk-pro-learn-card {
      padding: 18px;
    }

    #rk-profesjonalny-projekt .rk-pro-section-head {
      grid-template-columns: 43px minmax(0, 1fr);
      gap: 13px;
    }

    #rk-profesjonalny-projekt .rk-pro-section-no {
      width: 43px;
      height: 43px;
      border-radius: 12px;
    }

    #rk-profesjonalny-projekt .rk-pro-cta-actions {
      display: grid;
      grid-template-columns: 1fr;
    }

    #rk-profesjonalny-projekt .rk-pro-cta-button,
    #rk-profesjonalny-projekt .rk-pro-cta-secondary {
      width: 100%;
    }

    #rk-profesjonalny-projekt .rk-pro-bio-head {
      align-items: flex-start;
      flex-direction: column;
    }

    #rk-profesjonalny-projekt .rk-pro-bio-tabs {
      flex-direction: column;
    }

    #rk-profesjonalny-projekt .rk-pro-bio-tab {
      border-bottom: 0;
      border-left: 4px solid transparent;
      text-align: left;
    }

    #rk-profesjonalny-projekt .rk-pro-bio-tab[aria-selected="true"] {
      border-left-color: var(--rk-blue);
    }

    #rk-profesjonalny-projekt .rk-pro-bio-links {
      grid-template-columns: 1fr;
    }
  }

  #rk-profesjonalny-projekt .rk-pro-pdf-showcase {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(320px, 0.95fr);
    overflow: hidden;
    margin: 48px 0 64px;
    border: 1px solid rgba(40, 201, 218, 0.28);
    border-radius: 27px;
    background:
      radial-gradient(circle at 8% 5%, rgba(40, 201, 218, 0.2), transparent 32%),
      linear-gradient(135deg, #0d2230 0%, #12384c 60%, #0b6077 100%);
    box-shadow: 0 25px 60px rgba(16, 37, 54, 0.18);
  }

  #rk-profesjonalny-projekt .rk-pro-pdf-copy {
    align-self: center;
    padding: clamp(32px, 5vw, 58px);
  }

  #rk-profesjonalny-projekt .rk-pro-pdf-kicker {
    display: inline-flex;
    gap: 9px;
    align-items: center;
    margin-bottom: 18px;
    color: #84edf5;
    font-size: 0.72rem;
    font-weight: 900;
    letter-spacing: 0.09em;
    line-height: 1.4;
    text-transform: uppercase;
  }

  #rk-profesjonalny-projekt .rk-pro-pdf-kicker::before {
    content: "PDF";
    display: inline-grid;
    place-items: center;
    min-width: 39px;
    height: 27px;
    padding: 0 7px;
    border-radius: 7px;
    color: var(--rk-white);
    background: var(--rk-red);
    font-size: 0.62rem;
    letter-spacing: 0.055em;
  }

  #rk-profesjonalny-projekt .rk-pro-pdf-copy h2 {
    margin-bottom: 17px;
    color: var(--rk-white);
    font-size: clamp(1.65rem, 3.8vw, 2.65rem);
  }

  #rk-profesjonalny-projekt .rk-pro-pdf-copy > p {
    margin-bottom: 23px;
    color: #dcecf1;
  }

  #rk-profesjonalny-projekt .rk-pro-pdf-facts {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    margin-bottom: 28px;
  }

  #rk-profesjonalny-projekt .rk-pro-pdf-fact {
    min-width: 0;
    padding: 14px 15px;
    border: 1px solid rgba(255, 255, 255, 0.13);
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.075);
  }

  #rk-profesjonalny-projekt .rk-pro-pdf-fact b {
    display: block;
    margin-bottom: 3px;
    color: var(--rk-white);
    font-size: 0.88rem;
    line-height: 1.4;
  }

  #rk-profesjonalny-projekt .rk-pro-pdf-fact span {
    display: block;
    color: #cbe0e7;
    font-size: 0.75rem;
    line-height: 1.5;
  }

  #rk-profesjonalny-projekt .rk-pro-pdf-button {
    display: inline-flex;
    gap: 10px;
    align-items: center;
    justify-content: center;
    min-height: 55px;
    padding: 14px 22px;
    border: 2px solid rgba(255, 255, 255, 0.25);
    border-radius: 14px;
    color: var(--rk-white);
    background: linear-gradient(135deg, var(--rk-orange), var(--rk-red));
    box-shadow: 0 13px 28px rgba(227, 61, 53, 0.28);
    font-size: 0.88rem;
    font-weight: 900;
    line-height: 1.35;
    text-align: center;
    text-decoration: none;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
  }

  #rk-profesjonalny-projekt .rk-pro-pdf-button:hover {
    color: var(--rk-white);
    transform: translateY(-2px);
    box-shadow: 0 17px 34px rgba(227, 61, 53, 0.36);
  }

  #rk-profesjonalny-projekt .rk-pro-pdf-button::after {
    content: "↗";
    font-size: 1.15rem;
    line-height: 1;
  }

  #rk-profesjonalny-projekt .rk-pro-pdf-note {
    display: block;
    margin-top: 15px;
    color: #abc7d1;
    font-size: 0.7rem;
    line-height: 1.55;
  }

  #rk-profesjonalny-projekt .rk-pro-pdf-visual {
    position: relative;
    display: grid;
    place-items: center;
    min-width: 0;
    margin: 0;
    padding: clamp(32px, 5vw, 55px);
    background:
      radial-gradient(circle at 50% 50%, rgba(255, 255, 255, 0.18), transparent 58%),
      rgba(255, 255, 255, 0.035);
  }

  #rk-profesjonalny-projekt .rk-pro-pdf-visual::before {
    content: "14 stron • rzeczywiste obliczenia";
    position: absolute;
    z-index: 2;
    top: 22px;
    right: 22px;
    padding: 8px 12px;
    border: 1px solid rgba(255, 255, 255, 0.24);
    border-radius: 999px;
    color: var(--rk-white);
    background: rgba(13, 34, 48, 0.82);
    backdrop-filter: blur(7px);
    font-size: 0.64rem;
    font-weight: 900;
    letter-spacing: 0.04em;
    line-height: 1.35;
    text-transform: uppercase;
  }

  #rk-profesjonalny-projekt .rk-pro-pdf-visual img {
    width: min(100%, 520px);
    border: 7px solid var(--rk-white);
    border-radius: 13px;
    background: var(--rk-white);
    box-shadow: 0 28px 55px rgba(0, 0, 0, 0.28);
    transform: rotate(2.2deg);
  }

  #rk-profesjonalny-projekt .rk-pro-pdf-button:focus-visible {
    outline: 3px solid rgba(255, 255, 255, 0.75);
    outline-offset: 4px;
  }

  @media (max-width: 900px) {
    #rk-profesjonalny-projekt .rk-pro-pdf-showcase {
      grid-template-columns: 1fr;
    }

    #rk-profesjonalny-projekt .rk-pro-pdf-visual {
      min-height: 390px;
      border-top: 1px solid rgba(255, 255, 255, 0.12);
    }
  }

  @media (max-width: 580px) {
    #rk-profesjonalny-projekt .rk-pro-pdf-facts {
      grid-template-columns: 1fr;
    }

    #rk-profesjonalny-projekt .rk-pro-pdf-button {
      width: 100%;
    }

    #rk-profesjonalny-projekt .rk-pro-pdf-visual {
      min-height: 300px;
      padding: 52px 23px 32px;
    }

    #rk-profesjonalny-projekt .rk-pro-pdf-visual::before {
      top: 14px;
      right: 14px;
      left: 14px;
      text-align: center;
    }

    #rk-profesjonalny-projekt .rk-pro-pdf-visual img {
      transform: none;
    }
  }

  @media (prefers-reduced-motion: reduce) {
    #rk-profesjonalny-projekt *,
    #rk-profesjonalny-projekt *::before,
    #rk-profesjonalny-projekt *::after {
      scroll-behavior: auto !important;
      transition: none !important;
    }
  }
</style>

<article id="rk-profesjonalny-projekt" itemscope itemtype="https://schema.org/BlogPosting">
  <div class="rk-pro-shell">
    <div class="rk-pro-progress-track" aria-hidden="true"><div class="rk-pro-progress"></div></div>

    <header class="rk-pro-hero">
      <div class="rk-pro-badge">Przewodnik techniczny i lista kontrolna</div>
      <h2>Dobry projekt nie kończy się na rysunku pętli. Musi połączyć <span>ciepło, hydraulikę i wykonanie</span></h2>

      <div class="rk-pro-hook">
        <p><strong>Profesjonalny projekt ogrzewania podłogowego powinien odpowiedzieć na cztery konkretne pytania:</strong> ile ciepła potrzebuje każde pomieszczenie, jaką moc może przekazać podłoga, którędy poprowadzić poszczególne pętle oraz jakie przepływy i nastawy są potrzebne do ich prawidłowej pracy. Jeżeli dokument pokazuje tylko kolorowe linie na rzucie, nie zawiera jeszcze pełnej informacji projektowej.</p>
      </div>

      <p class="rk-pro-hero-lead">W tym poradniku sprawdzisz element po elemencie, co powinna zawierać dokumentacja techniczna podłogówki. Zobaczysz też pełny, 14-stronicowy przykład PDF z wynikami cieplnymi, hydrauliką, rozstawami, długościami obiegów, nastawami oraz zestawieniem materiałowym.</p>

      <div class="rk-pro-hero-meta">
        <span>Obliczenia dla pomieszczeń</span>
        <span>Rysunek i opis wszystkich pętli</span>
        <span>Przepływy oraz spadki ciśnienia</span>
        <span>Przykładowy projekt PDF</span>
      </div>

      <div class="rk-pro-author-strip" itemprop="author" itemscope itemtype="https://schema.org/Person">
        <img decoding="async" src="https://projekt-ogrzewania.pl/wp-content/uploads/2026/04/PO-Robert-Kucharski.webp" alt="Robert Kucharski – specjalista systemów HVAC i ogrzewania podłogowego" width="52" height="52" loading="eager" itemprop="image">
        <div>
          <b itemprop="name">Robert Kucharski</b>
          <small itemprop="jobTitle">Specjalista systemów HVAC i ogrzewania podłogowego • autor Projekt-Ogrzewania.pl</small>
        </div>
      </div>
    </header>

    <div class="rk-pro-content" itemprop="articleBody">
      <section class="rk-pro-answer" aria-label="Najkrótsza odpowiedź na pytanie, co powinien zawierać profesjonalny projekt ogrzewania podłogowego">
        <div>
          <span class="rk-pro-answer-label">Najkrótsza odpowiedź</span>
          <strong class="rk-pro-answer-main">Profesjonalny projekt łączy bilans cieplny, obliczenia ogrzewania płaszczyznowego, hydraulikę i czytelny rysunek wykonawczy.</strong>
          <p>Powinien podawać dane dla każdego pomieszczenia i każdej pętli: wymaganą moc, powierzchnię grzejną, rodzaj posadzki, rozstaw i długość rury, temperaturę pracy, przepływ, spadek ciśnienia, nastawy oraz przypisanie do rozdzielacza.</p>
        </div>
        <div class="rk-pro-answer-badge">
          <b>3 warstwy</b>
          <span>cieplna, hydrauliczna i wykonawcza — wzajemnie ze sobą powiązane</span>
        </div>
      </section>

      <section class="rk-pro-learn" aria-labelledby="rk-pro-learn-title">
        <h3 class="rk-pro-learn-title" id="rk-pro-learn-title">
          <svg width="25" height="25" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.6" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M22 11.08V12a10 10 0 1 1-5.93-9.14"></path><polyline points="22 4 12 14.01 9 11.01"></polyline></svg>
          Po przeczytaniu sprawdzisz:
        </h3>

        <div class="rk-pro-learn-grid">
          <div class="rk-pro-learn-card">
            <div class="rk-pro-learn-icon" aria-hidden="true">01</div>
            <div><h4>Czy projekt ma obliczenia?</h4><p>Jakich wyników cieplnych należy szukać dla budynku i poszczególnych pomieszczeń.</p></div>
          </div>
          <div class="rk-pro-learn-card">
            <div class="rk-pro-learn-icon" aria-hidden="true">02</div>
            <div><h4>Czy rysunek jest wykonalny?</h4><p>Jak powinny być opisane pętle, rozstawy, trasy dobiegowe i rozdzielacze.</p></div>
          </div>
          <div class="rk-pro-learn-card">
            <div class="rk-pro-learn-icon" aria-hidden="true">03</div>
            <div><h4>Czy instalację da się wyregulować?</h4><p>Dlaczego długości rur bez przepływów, oporów i nastaw nie wystarczają.</p></div>
          </div>
          <div class="rk-pro-learn-card">
            <div class="rk-pro-learn-icon" aria-hidden="true">04</div>
            <div><h4>Czy lista materiałów jest wiarygodna?</h4><p>Jak odróżnić zestawienie wynikające z projektu od uniwersalnego koszyka.</p></div>
          </div>
        </div>
      </section>

      <nav class="rk-pro-nav" aria-label="Spis treści strony">
        <strong>Na skróty</strong>
        <div class="rk-pro-nav-links">
          <a href="#rk-pro-definicja">Czym jest projekt?</a>
          <a href="#rk-pro-przyklad">Przykład PDF</a>
          <a href="#rk-pro-dane">Dane wejściowe</a>
          <a href="#rk-pro-cieplo">Obliczenia cieplne</a>
          <a href="#rk-pro-petle">Plan pętli</a>
          <a href="#rk-pro-hydraulika">Hydraulika</a>
          <a href="#rk-pro-checklista">Lista kontrolna</a>
          <a href="#rk-pro-faq">FAQ</a>
        </div>
      </nav>

      <section class="rk-pro-section" id="rk-pro-definicja" aria-labelledby="rk-pro-s1">
        <div class="rk-pro-section-head">
          <div class="rk-pro-section-no">1</div>
          <div>
            <h2 id="rk-pro-s1">Czym jest profesjonalny projekt ogrzewania podłogowego?</h2>
            <p>To spójny ciąg obliczeń i decyzji, a nie zestaw niezależnych tabel oraz rysunków.</p>
          </div>
        </div>

        <p>Każdy etap powinien wynikać z poprzedniego. Straty ciepła określają wymaganą moc pomieszczeń. Rodzaj posadzki i dostępna powierzchnia grzejna wpływają na potrzebną temperaturę oraz rozstaw rur. Rozstaw i geometria pomieszczeń wyznaczają długości pętli, a długości wraz z przepływami decydują o oporach hydraulicznych. Dopiero z tak policzonego układu można wiarygodnie dobrać rozdzielacze, przewody zasilające i materiały.</p>

        <div class="rk-pro-process-grid" aria-label="Cztery warstwy profesjonalnej dokumentacji ogrzewania podłogowego">
          <div class="rk-pro-process-card">
            <span class="rk-pro-process-no">01</span>
            <h3>Warstwa cieplna</h3>
            <p>Projektowe obciążenie cieplne pomieszczeń, wymagane moce i sprawdzenie możliwości podłogi.</p>
          </div>
          <div class="rk-pro-process-card">
            <span class="rk-pro-process-no">02</span>
            <h3>Warstwa hydrauliczna</h3>
            <p>Przepływy, spadki ciśnienia, obieg krytyczny, nastawy oraz wymagania dla pompy.</p>
          </div>
          <div class="rk-pro-process-card">
            <span class="rk-pro-process-no">03</span>
            <h3>Warstwa wykonawcza</h3>
            <p>Rozrysowane i oznaczone pętle, rozstawy, długości, trasy oraz lokalizacje rozdzielaczy.</p>
          </div>
          <div class="rk-pro-process-card">
            <span class="rk-pro-process-no">04</span>
            <h3>Warstwa materiałowa</h3>
            <p>Zestawienie elementów wynikające z liczby obiegów, długości rur i wybranego systemu.</p>
          </div>
        </div>

        <div class="rk-pro-truth"><p><strong>Najważniejsza jest zgodność między warstwami.</strong> Jeżeli tabela podaje inną długość pętli niż rysunek albo zestawienie materiałów nie odpowiada liczbie rozdzielaczy, dokumentacja nie jest gotowa do bezpiecznego przekazania wykonawcy.</p></div>

        <div class="rk-pro-table-wrap" role="region" aria-label="Porównanie profesjonalnego projektu ogrzewania podłogowego z orientacyjnym rysunkiem" tabindex="0">
          <table>
            <thead>
              <tr><th scope="col">Element</th><th scope="col">Profesjonalny projekt</th><th scope="col">Orientacyjny rysunek</th></tr>
            </thead>
            <tbody>
              <tr><th scope="row">Podstawa doboru</th><td data-label="Profesjonalny projekt">Parametry budynku i obliczenia cieplne</td><td data-label="Orientacyjny rysunek">Najczęściej sama powierzchnia</td></tr>
              <tr><th scope="row">Rozstaw rur</th><td data-label="Profesjonalny projekt">Dobierany do mocy i posadzki</td><td data-label="Orientacyjny rysunek">Jeden rozstaw w całym budynku</td></tr>
              <tr><th scope="row">Pętle</th><td data-label="Profesjonalny projekt">Oznaczone, policzone i przypisane do rozdzielaczy</td><td data-label="Orientacyjny rysunek">Linie bez parametrów wykonawczych</td></tr>
              <tr><th scope="row">Hydraulika</th><td data-label="Profesjonalny projekt">Przepływy, opory i nastawy</td><td data-label="Orientacyjny rysunek">Brak danych do regulacji</td></tr>
              <tr><th scope="row">Materiały</th><td data-label="Profesjonalny projekt">Ilości wynikające z dokumentacji</td><td data-label="Orientacyjny rysunek">Szacunek albo zestaw uniwersalny</td></tr>
            </tbody>
          </table>
        </div>
      </section>

      <aside class="rk-pro-pdf-showcase" id="rk-pro-przyklad" aria-labelledby="rk-pro-pdf-title">
        <div class="rk-pro-pdf-copy">
          <span class="rk-pro-pdf-kicker">Pełna dokumentacja do wglądu</span>
          <h2 id="rk-pro-pdf-title">Nie musisz wierzyć nam na słowo. Zobacz projekt przed zamówieniem</h2>
          <p>Otwórz rzeczywisty, 14-stronicowy przykład i sprawdź, jak wyglądają rysunki, wyniki cieplne, obliczenia hydrauliczne, parametry pętli oraz zestawienie materiałowe.</p>

          <div class="rk-pro-pdf-facts" aria-label="Dane widoczne w przykładowym projekcie">
            <div class="rk-pro-pdf-fact"><b>Bilans cieplny</b><span>9453 W wymaganej mocy odbiorników</span></div>
            <div class="rk-pro-pdf-fact"><b>Parametry pracy</b><span>zasilanie i powrót 33,4/26,6°C</span></div>
            <div class="rk-pro-pdf-fact"><b>Hydraulika</b><span>1287,8 kg/h i 12,3 kPa na trasie krytycznej</span></div>
            <div class="rk-pro-pdf-fact"><b>Pętle i materiały</b><span>rozstawy, długości, nastawy i podział zwojów rur</span></div>
          </div>

          <a class="rk-pro-pdf-button" href="https://projekt-ogrzewania.pl/wp-content/uploads/2026/03/Przykladowy-projekt-ogrzewania-podlogowego-zestawienie.pdf" target="_blank" rel="noopener">Otwórz przykładowy projekt — PDF, 14 stron</a>
          <small class="rk-pro-pdf-note">Dokument prezentuje wyniki przykładowego budynku. Każdy nowy projekt jest obliczany indywidualnie na podstawie przekazanych danych.</small>
        </div>

        <figure class="rk-pro-pdf-visual">
          <img decoding="async" src="https://projekt-ogrzewania.pl/wp-content/uploads/2024/09/Przykladowy-projekt-ogrzewania-podlogowego-A1.jpg" alt="Rysunek pętli z przykładowego projektu ogrzewania podłogowego" width="1134" height="1134" loading="lazy">
        </figure>
      </aside>

      <section class="rk-pro-section" id="rk-pro-dane" aria-labelledby="rk-pro-s2">
        <div class="rk-pro-section-head">
          <div class="rk-pro-section-no">2</div>
          <div>
            <h2 id="rk-pro-s2">Jakie dane wejściowe są potrzebne do wykonania projektu?</h2>
            <p>Dokładność wyniku zależy od jakości założeń. Projektant nie powinien uzupełniać kluczowych parametrów przez zgadywanie.</p>
          </div>
        </div>

        <p>Do obliczeń potrzebne są rzuty z wymiarami, informacje o przegrodach i izolacji, parametry stolarki, przeznaczenie pomieszczeń, planowane temperatury wewnętrzne oraz lokalizacja budynku. Dodatkowo trzeba znać rodzaj posadzki, system wykonania podłogi, źródło ciepła i planowane miejsca rozdzielaczy.</p>

        <div class="rk-pro-scope-grid">
          <div class="rk-pro-scope-card"><span class="rk-pro-scope-icon">A1</span><h4>Rzuty i wymiary</h4><p>Powierzchnie, wysokości, układ ścian, drzwi, okien oraz podział na kondygnacje.</p></div>
          <div class="rk-pro-scope-card"><span class="rk-pro-scope-icon">U</span><h4>Przegrody budynku</h4><p>Warstwy ścian, podłóg, dachu, izolacja i parametry cieplne stolarki.</p></div>
          <div class="rk-pro-scope-card"><span class="rk-pro-scope-icon">°C</span><h4>Temperatury pomieszczeń</h4><p>Oddzielne wymagania dla salonu, sypialni, łazienki, garażu i pozostałych stref.</p></div>
          <div class="rk-pro-scope-card"><span class="rk-pro-scope-icon">Rλ</span><h4>Wykończenie podłóg</h4><p>Płytki, panele, drewno lub wykładzina wraz z przewidywanym oporem cieplnym.</p></div>
          <div class="rk-pro-scope-card"><span class="rk-pro-scope-icon">Q</span><h4>Źródło ciepła</h4><p>Pompa ciepła, kocioł lub inny układ oraz dostępne parametry zasilania.</p></div>
          <div class="rk-pro-scope-card"><span class="rk-pro-scope-icon">M</span><h4>Ustalenia montażowe</h4><p>Miejsca rozdzielaczy, zabudowa stała, strefy wyłączone i sposób prowadzenia rur.</p></div>
        </div>

        <div class="rk-pro-note"><strong>Nie masz kompletnego projektu budowlanego?</strong> Czytelny PDF, rzut JPG albo zdjęcie papierowej dokumentacji może wystarczyć do rozpoczęcia weryfikacji, o ile widoczne są wymiary i można uzupełnić brakujące dane techniczne. Cały sposób przekazania informacji opisujemy w poradniku pokazującym, <a href="https://projekt-ogrzewania.pl/projekt-ogrzewania-podlogowego-online/">jak przebiega wykonanie projektu online</a>.</div>
      </section>

      <section class="rk-pro-section" id="rk-pro-cieplo" aria-labelledby="rk-pro-s3">
        <div class="rk-pro-section-head">
          <div class="rk-pro-section-no">3</div>
          <div>
            <h2 id="rk-pro-s3">Obliczenia cieplne: od strat budynku do mocy podłogi</h2>
            <p>Rozstaw rur powinien wynikać z zapotrzebowania pomieszczenia, a nie z przyzwyczajenia wykonawcy.</p>
          </div>
        </div>

        <p>Pierwszym etapem jest określenie projektowego obciążenia cieplnego. Obliczenia powinny pokazać, ile watów potrzeba w każdym pomieszczeniu w warunkach obliczeniowej temperatury zewnętrznej. Szerzej wyjaśniamy to w materiale o <a href="https://projekt-ogrzewania.pl/projektowe-obciazenie-cieplne-ozc/">projektowym obciążeniu cieplnym OZC</a>.</p>

        <p>Następnie sprawdza się, czy dostępna powierzchnia podłogi może przekazać wymaganą moc przy założonej temperaturze wody, rodzaju wylewki i wykończeniu posadzki. Te dwa etapy opisują inne zagadnienia: <a href="https://projekt-ogrzewania.pl/norma-pn-en-12831-klucz-do-efektywnego-i-komfortowego-ogrzewania-podlogowego/">PN-EN 12831</a> służy do wyznaczania projektowego obciążenia cieplnego, natomiast zasady obliczania wodnego ogrzewania płaszczyznowego opisuje <a href="https://projekt-ogrzewania.pl/norma-obliczen-ogrzewania-podlogowego-en-1264/">EN 1264</a>.</p>

        <div class="rk-pro-table-wrap" role="region" aria-label="Wyniki cieplne, które powinien zawierać projekt ogrzewania podłogowego" tabindex="0">
          <table>
            <thead>
              <tr><th scope="col">Wynik</th><th scope="col">Co opisuje?</th><th scope="col">Do czego jest potrzebny?</th></tr>
            </thead>
            <tbody>
              <tr><th scope="row">Strata pomieszczenia [W]</th><td data-label="Co opisuje?">Moc potrzebną w warunkach projektowych</td><td data-label="Zastosowanie">Podstawa doboru powierzchni i wydajności podłogi</td></tr>
              <tr><th scope="row">Powierzchnia czynna [m²]</th><td data-label="Co opisuje?">Fragment posadzki rzeczywiście oddający ciepło</td><td data-label="Zastosowanie">Pozwala policzyć wymaganą moc jednostkową</td></tr>
              <tr><th scope="row">Moc powierzchniowa [W/m²]</th><td data-label="Co opisuje?">Ilość ciepła oddawaną przez metr podłogi</td><td data-label="Zastosowanie">Służy do oceny pokrycia strat pomieszczenia</td></tr>
              <tr><th scope="row">Temperatura podłogi [°C]</th><td data-label="Co opisuje?">Przewidywaną temperaturę powierzchni</td><td data-label="Zastosowanie">Kontrola komfortu i ograniczeń materiałowych</td></tr>
              <tr><th scope="row">Zasilanie i powrót [°C]</th><td data-label="Co opisuje?">Parametry pracy układu</td><td data-label="Zastosowanie">Dobór źródła ciepła, przepływów i regulacji</td></tr>
              <tr><th scope="row">Nadwyżka lub niedobór [W]</th><td data-label="Co opisuje?">Różnicę pomiędzy wymaganą a dostarczaną mocą</td><td data-label="Zastosowanie">Wskazuje pomieszczenia wymagające korekty projektu</td></tr>
            </tbody>
          </table>
        </div>

        <div class="rk-pro-warning"><strong>OZC nie jest rocznym rachunkiem za ogrzewanie.</strong> Obciążenie cieplne opisuje wymaganą moc w warunkach projektowych. Roczne zużycie energii zależy również od pogody, sposobu użytkowania domu, wentylacji, zysków wewnętrznych i sprawności całego systemu.</div>
      </section>

      <section class="rk-pro-section" id="rk-pro-moc" aria-labelledby="rk-pro-s4">
        <div class="rk-pro-section-head">
          <div class="rk-pro-section-no">4</div>
          <div>
            <h2 id="rk-pro-s4">Rozstaw rur, temperatura wody i rodzaj posadzki</h2>
            <p>Te parametry trzeba analizować łącznie, ponieważ zmiana jednego wpływa na pozostałe.</p>
          </div>
        </div>

        <p>Gęstszy rozstaw może zwiększyć moc podłogi lub pozwolić na pracę z niższą temperaturą zasilania, ale nie powinien być dobierany automatycznie. Projektant musi uwzględnić straty pomieszczenia, temperaturę wewnętrzną, dostępną powierzchnię, średnią temperaturę wody i <a href="https://projekt-ogrzewania.pl/opor-cieplny-r-m%c2%b2k-w-klucz-do-efektywnego-ogrzewania-podlogowego/">opór cieplny wykończenia podłogi</a>.</p>

        <div class="rk-pro-material-box">
          <h3>Projekt powinien sprawdzić jednocześnie:</h3>
          <div class="rk-pro-material-grid">
            <div class="rk-pro-material-card"><b>Rozstaw pętli</b><span>np. 5, 10, 15 lub 20 cm, jeżeli wynika to z obliczeń i geometrii strefy.</span></div>
            <div class="rk-pro-material-card"><b>Temperaturę zasilania</b><span>możliwie niską, ale wystarczającą do pokrycia strat wszystkich pomieszczeń.</span></div>
            <div class="rk-pro-material-card"><b>Temperaturę powierzchni</b><span>zgodną z przeznaczeniem pomieszczenia i ograniczeniami komfortu.</span></div>
            <div class="rk-pro-material-card"><b>Rezerwę mocy</b><span>szczególnie w łazienkach, przy dużych przeszkleniach i ograniczonej powierzchni czynnej.</span></div>
          </div>
        </div>

        <p>Nie ma jednego najlepszego rozstawu dla całego domu. Porównanie najczęstszych wariantów znajdziesz w poradniku <a href="https://projekt-ogrzewania.pl/rozstaw-rur-w-ogrzewaniu-podlogowym-co-10-czy-15-cm/">rozstaw rur co 10 czy 15 cm</a>. Przy przeszkleniach projekt może również przewidywać <a href="https://projekt-ogrzewania.pl/strefa-brzegowa-w-ogrzewaniu-podlogowym/">strefę brzegową o zwiększonej mocy</a>, ale jej szerokość i parametry powinny wynikać z obliczeń.</p>
      </section>

      <section class="rk-pro-section" id="rk-pro-petle" aria-labelledby="rk-pro-s5">
        <div class="rk-pro-section-head">
          <div class="rk-pro-section-no">5</div>
          <div>
            <h2 id="rk-pro-s5">Jak powinien wyglądać plan pętli grzewczych?</h2>
            <p>Rysunek ma prowadzić wykonawcę po budynku i pozostawać zgodny z tabelami obliczeniowymi.</p>
          </div>
        </div>

        <p>Na rzucie powinny być widoczne granice poszczególnych obiegów, kierunek prowadzenia rur, rozstaw, odcinki zasilające i powrotne, lokalizacje rozdzielaczy oraz obszary bez ogrzewania. Każda pętla powinna otrzymać jednoznaczny symbol odpowiadający pozycji w tabeli wyników.</p>

        <div class="rk-pro-scope-grid">
          <div class="rk-pro-scope-card"><span class="rk-pro-scope-icon">ID</span><h4>Oznaczenie pętli</h4><p>Unikalny symbol pozwalający połączyć rysunek z przepływem, długością i nastawą.</p></div>
          <div class="rk-pro-scope-card"><span class="rk-pro-scope-icon">B</span><h4>Rozstaw rur</h4><p>Opisany osobno dla obiegów i stref, zamiast jednego założenia dla całego domu.</p></div>
          <div class="rk-pro-scope-card"><span class="rk-pro-scope-icon">L</span><h4>Długość obiegu</h4><p>Łączna długość części grzejnej i odcinków dobiegowych od rozdzielacza.</p></div>
          <div class="rk-pro-scope-card"><span class="rk-pro-scope-icon">M</span><h4>Rozdzielacz</h4><p>Przypisanie pętli do właściwej belki oraz liczby dostępnych sekcji.</p></div>
          <div class="rk-pro-scope-card"><span class="rk-pro-scope-icon">Ø</span><h4>Strefy wyłączone</h4><p>Zabudowa stała i miejsca, w których rur nie należy prowadzić zgodnie z ustaleniami.</p></div>
          <div class="rk-pro-scope-card"><span class="rk-pro-scope-icon">↔</span><h4>Dylatacje i przejścia</h4><p>Sposób przekraczania szczelin oraz zabezpieczenie rur w miejscach przejść.</p></div>
        </div>

        <p>Sposób prowadzenia rur może przyjmować układ ślimakowy, meandrowy albo rozwiązanie mieszane. Więcej przykładów omawiamy w poradniku o <a href="https://projekt-ogrzewania.pl/jak-zaplanowac-rozmieszczenie-petli-grzewczych-w-ogrzewaniu-podlogowym/">planowaniu rozmieszczenia pętli grzewczych</a>.</p>

        <div class="rk-pro-note"><strong>Długość pętli nie powinna być oceniana jedną magiczną liczbą.</strong> Często przyjmuje się wartości graniczne w okolicy 80–100 m dla rury 16 mm, ale rzeczywista ocena zależy od przepływu, średnicy, trasy dobiegowej i dopuszczalnego spadku ciśnienia. Wyjaśnia to osobny materiał o <a href="https://projekt-ogrzewania.pl/maksymalna-dlugosc-petli-ogrzewania-podlogowego/">maksymalnej długości pętli ogrzewania podłogowego</a>.</div>
      </section>

      <section class="rk-pro-section" id="rk-pro-hydraulika" aria-labelledby="rk-pro-s6">
        <div class="rk-pro-section-head">
          <div class="rk-pro-section-no">6</div>
          <div>
            <h2 id="rk-pro-s6">Obliczenia hydrauliczne, przepływy i nastawy</h2>
            <p>To właśnie ta część pozwala później uruchomić i zrównoważyć instalację.</p>
          </div>
        </div>

        <p>Dwie pętle o podobnej powierzchni mogą wymagać różnych przepływów, jeżeli ogrzewają pomieszczenia o innym zapotrzebowaniu na moc albo pracują z innym spadkiem temperatury. Projekt powinien policzyć strumień wody, opór każdego obiegu, trasę krytyczną i minimalne wymagane ciśnienie dla rozdzielacza.</p>

        <div class="rk-pro-table-wrap" role="region" aria-label="Parametry hydrauliczne przypisane do pętli ogrzewania podłogowego" tabindex="0">
          <table>
            <thead>
              <tr><th scope="col">Parametr pętli</th><th scope="col">Jednostka</th><th scope="col">Znaczenie podczas uruchomienia</th></tr>
            </thead>
            <tbody>
              <tr><th scope="row">Wymagana moc</th><td data-label="Jednostka">W</td><td data-label="Znaczenie">Określa ilość ciepła przypisaną do obiegu</td></tr>
              <tr><th scope="row">Długość całkowita</th><td data-label="Jednostka">m</td><td data-label="Znaczenie">Wpływa na pojemność i opór hydrauliczny</td></tr>
              <tr><th scope="row">Przepływ projektowy</th><td data-label="Jednostka">l/min lub kg/h</td><td data-label="Znaczenie">Wartość ustawiana na rotametrze lub zaworze</td></tr>
              <tr><th scope="row">Prędkość wody</th><td data-label="Jednostka">m/s</td><td data-label="Znaczenie">Kontrola warunków przepływu i pracy przewodu</td></tr>
              <tr><th scope="row">Spadek ciśnienia</th><td data-label="Jednostka">kPa</td><td data-label="Znaczenie">Podstawa równoważenia i doboru pompy</td></tr>
              <tr><th scope="row">Nastawa</th><td data-label="Jednostka">pozycja zaworu</td><td data-label="Znaczenie">Wstępne ustawienie przepływu na rozdzielaczu</td></tr>
            </tbody>
          </table>
        </div>

        <p>Projekt powinien także podsumować wymagany przepływ całego rozdzielacza, liczbę sekcji, opór obiegu krytycznego oraz sposób zasilenia belki. Pozwala to sprawdzić, czy <a href="https://projekt-ogrzewania.pl/rozdzielacz-do-podlogowki-kluczowy-element-systemu-ogrzewania-podlogowego/">rozdzielacz ogrzewania podłogowego</a>, przewody zasilające i pompa mogą pracować w wymaganym punkcie.</p>

        <div class="rk-pro-warning"><strong>Rysunek bez przepływów nie wystarcza do regulacji.</strong> Ustawienie wszystkich rotametrów na tę samą wartość nie jest równoważeniem projektowym. Każdy obieg powinien otrzymać tyle wody, ile wynika z jego mocy i przyjętej różnicy temperatur.</div>
      </section>

      <section class="rk-pro-section" id="rk-pro-materialy" aria-labelledby="rk-pro-s7">
        <div class="rk-pro-section-head">
          <div class="rk-pro-section-no">7</div>
          <div>
            <h2 id="rk-pro-s7">Zestawienie materiałowe wynikające z projektu</h2>
            <p>Lista zakupów powinna być efektem obliczeń i rysunków, a nie punktem wyjścia do projektowania.</p>
          </div>
        </div>

        <p>Po rozrysowaniu wszystkich pętli można podsumować łączną długość rury, podzielić obiegi pomiędzy zwoje, określić liczbę sekcji rozdzielaczy i dobrać szafki. Dopiero wtedy wiadomo, ile materiału rzeczywiście wymaga budynek i gdzie potrzebna jest rezerwa montażowa.</p>

        <div class="rk-pro-material-box">
          <h3>Rzetelne zestawienie może obejmować:</h3>
          <div class="rk-pro-material-grid">
            <div class="rk-pro-material-card"><b>Rury grzewcze</b><span>łączną długość oraz praktyczny podział obiegów pomiędzy dostępne zwoje.</span></div>
            <div class="rk-pro-material-card"><b>Rozdzielacze i szafki</b><span>liczbę belek, sekcji, wyposażenie oraz wielkość zabudowy instalacyjnej.</span></div>
            <div class="rk-pro-material-card"><b>Przewody zasilające</b><span>średnice i długości tras doprowadzających wodę do poszczególnych rozdzielaczy.</span></div>
            <div class="rk-pro-material-card"><b>Elementy systemowe</b><span>izolację, dylatacje, mocowanie rur, złączki oraz osprzęt wynikający z technologii.</span></div>
          </div>
        </div>

        <p>Jeżeli zestaw zawiera z góry przyjętą liczbę metrów rury na każdy metr kwadratowy bez uwzględnienia tras dobiegowych i rzeczywistych rozstawów, jest to kalkulacja orientacyjna. Przydatne tło stanowi poradnik opisujący <a href="https://projekt-ogrzewania.pl/jakie-materialy-sa-potrzebne-do-instalacji-ogrzewania-podlogowego/">materiały potrzebne do wykonania ogrzewania podłogowego</a>.</p>
      </section>

      <section class="rk-pro-section" id="rk-pro-wykonanie" aria-labelledby="rk-pro-s8">
        <div class="rk-pro-section-head">
          <div class="rk-pro-section-no">8</div>
          <div>
            <h2 id="rk-pro-s8">Wytyczne montażowe, próba szczelności i uruchomienie</h2>
            <p>Dokumentacja powinna oddzielać dane projektowe od ogólnych zasad wykonania instalacji.</p>
          </div>
        </div>

        <div class="rk-pro-program-grid">
          <div class="rk-pro-program-card">
            <h3>Elementy bezpośrednio wynikające z projektu</h3>
            <ul class="rk-pro-list">
              <li>przebieg i oznaczenie poszczególnych pętli,</li>
              <li>rozstawy, długości i przypisanie do rozdzielaczy,</li>
              <li>przepływy, nastawy i parametry pracy układu,</li>
              <li>przejścia przez dylatacje i szczególne miejsca montażowe,</li>
              <li>założenia dotyczące wylewki oraz wykończenia podłogi.</li>
            </ul>
          </div>
          <div class="rk-pro-program-card">
            <h3>Przydatne zalecenia uzupełniające</h3>
            <ul class="rk-pro-list">
              <li>przygotowanie podłoża i kolejność wykonywania warstw,</li>
              <li>sposób mocowania rur w wybranym systemie,</li>
              <li>próba szczelności przed zakryciem instalacji,</li>
              <li>warunki wykonywania i wygrzewania jastrychu,</li>
              <li>kolejność napełniania, odpowietrzania i regulacji obiegów.</li>
            </ul>
          </div>
        </div>

        <p>Projektant nie zastępuje kierownika budowy ani instrukcji producentów zastosowanych materiałów. Powinien jednak przekazać wykonawcy dane charakterystyczne dla konkretnej instalacji i wskazać miejsca wymagające szczególnej uwagi. Procedurę kontroli przed wykonaniem wylewki omawiamy szerzej w artykule o <a href="https://projekt-ogrzewania.pl/proba-szczelnosci-ogrzewania-podlogowego/">próbie szczelności ogrzewania podłogowego</a>.</p>
      </section>

      <section class="rk-pro-section" id="rk-pro-checklista" aria-labelledby="rk-pro-s9">
        <div class="rk-pro-section-head">
          <div class="rk-pro-section-no">9</div>
          <div>
            <h2 id="rk-pro-s9">Lista kontrolna: co powinien zawierać projekt podłogówki?</h2>
            <p>Przed przekazaniem dokumentacji wykonawcy sprawdź poniższe pozycje.</p>
          </div>
        </div>

        <div class="rk-pro-table-wrap" role="region" aria-label="Lista kontrolna profesjonalnego projektu ogrzewania podłogowego" tabindex="0">
          <table>
            <thead>
              <tr><th scope="col">Element dokumentacji</th><th scope="col">Co powinno być widoczne?</th><th scope="col">Ryzyko braku</th></tr>
            </thead>
            <tbody>
              <tr><th scope="row">1. Założenia projektowe</th><td data-label="Co powinno być widoczne?">Dane przegród, temperatury pomieszczeń, posadzki i źródło ciepła</td><td data-label="Ryzyko braku">Nie wiadomo, dla jakiego budynku wykonano obliczenia</td></tr>
              <tr><th scope="row">2. Obciążenie cieplne</th><td data-label="Co powinno być widoczne?">Wymagana moc budynku i każdego pomieszczenia</td><td data-label="Ryzyko braku">Rozstaw rur zostaje dobrany bez podstawy cieplnej</td></tr>
              <tr><th scope="row">3. Parametry pracy</th><td data-label="Co powinno być widoczne?">Temperatura zasilania, powrotu i przyjęta różnica temperatur</td><td data-label="Ryzyko braku">Brak punktu pracy dla źródła ciepła i hydrauliki</td></tr>
              <tr><th scope="row">4. Wykończenie podłogi</th><td data-label="Co powinno być widoczne?">Rodzaj okładziny i przyjęty opór cieplny</td><td data-label="Ryzyko braku">Moc podłogi może być zawyżona</td></tr>
              <tr><th scope="row">5. Powierzchnia grzejna</th><td data-label="Co powinno być widoczne?">Strefy czynne oraz miejsca wyłączone z układania rur</td><td data-label="Ryzyko braku">Projekt wykorzystuje powierzchnię niedostępną na budowie</td></tr>
              <tr><th scope="row">6. Rysunek pętli</th><td data-label="Co powinno być widoczne?">Przebieg wszystkich obiegów, rozstawy i trasy dobiegowe</td><td data-label="Ryzyko braku">Wykonawca musi samodzielnie zmieniać układ</td></tr>
              <tr><th scope="row">7. Długości obiegów</th><td data-label="Co powinno być widoczne?">Długość części czynnej i łączna długość każdej pętli</td><td data-label="Ryzyko braku">Nie można ocenić oporów ani przygotować rur</td></tr>
              <tr><th scope="row">8. Przepływy</th><td data-label="Co powinno być widoczne?">Wartość l/min lub kg/h dla każdego obiegu</td><td data-label="Ryzyko braku">Brak danych do ustawienia rotametrów</td></tr>
              <tr><th scope="row">9. Spadki ciśnienia</th><td data-label="Co powinno być widoczne?">Opory pętli, rozdzielaczy i wskazanie trasy krytycznej</td><td data-label="Ryzyko braku">Nie można zweryfikować pompy i równoważenia</td></tr>
              <tr><th scope="row">10. Rozdzielacze</th><td data-label="Co powinno być widoczne?">Lokalizacja, liczba sekcji, przypisane pętle i przepływ całkowity</td><td data-label="Ryzyko braku">Błędna wielkość belki lub szafki</td></tr>
              <tr><th scope="row">11. Zestawienie materiałów</th><td data-label="Co powinno być widoczne?">Ilości zgodne z rysunkami i liczbą obiegów</td><td data-label="Ryzyko braku">Niedobór albo niepotrzebny nadmiar materiału</td></tr>
              <tr><th scope="row">12. Wytyczne wykonawcze</th><td data-label="Co powinno być widoczne?">Dylatacje, próba szczelności, wylewka i uruchomienie</td><td data-label="Ryzyko braku">Kluczowe decyzje zostają podjęte dopiero na budowie</td></tr>
            </tbody>
          </table>
        </div>

        <div class="rk-pro-note"><strong>Praktyczna zasada:</strong> instalator powinien móc wskazać na rysunku konkretną pętlę, odszukać ją w tabeli, sprawdzić jej długość i przepływ, a następnie ustawić właściwą wartość na odpowiednim rozdzielaczu. Jeżeli tego łańcucha nie da się prześledzić, dokumentacja wymaga uzupełnienia.</div>
      </section>

      <section class="rk-pro-section" id="rk-pro-bledy" aria-labelledby="rk-pro-s10">
        <div class="rk-pro-section-head">
          <div class="rk-pro-section-no">10</div>
          <div>
            <h2 id="rk-pro-s10">Sygnały ostrzegawcze: kiedy „projekt” jest tylko szkicem?</h2>
            <p>Poniższe braki nie zawsze oznaczają błąd instalacji, ale powinny uruchomić dodatkową weryfikację.</p>
          </div>
        </div>

        <div class="rk-pro-scope-grid">
          <div class="rk-pro-scope-card"><span class="rk-pro-scope-icon">?</span><h4>Brak założeń</h4><p>Nie wiadomo, jakie izolacje, temperatury i posadzki przyjęto do obliczeń.</p></div>
          <div class="rk-pro-scope-card"><span class="rk-pro-scope-icon">W</span><h4>Brak mocy pomieszczeń</h4><p>Rury rozrysowano bez pokazania zapotrzebowania poszczególnych stref.</p></div>
          <div class="rk-pro-scope-card"><span class="rk-pro-scope-icon">10</span><h4>Jeden rozstaw wszędzie</h4><p>Łazienka, garaż, salon i sypialnia otrzymują ten sam układ bez uzasadnienia.</p></div>
          <div class="rk-pro-scope-card"><span class="rk-pro-scope-icon">ID</span><h4>Pętle bez symboli</h4><p>Nie da się połączyć obiegu na rzucie z tabelą długości i przepływów.</p></div>
          <div class="rk-pro-scope-card"><span class="rk-pro-scope-icon">0</span><h4>Brak hydrauliki</h4><p>Dokument nie podaje przepływów, spadków ciśnienia ani nastaw rozdzielaczy.</p></div>
          <div class="rk-pro-scope-card"><span class="rk-pro-scope-icon">BOM</span><h4>Uniwersalny koszyk</h4><p>Materiały policzono przed rozrysowaniem tras i ustaleniem liczby pętli.</p></div>
        </div>

        <div class="rk-pro-warning"><strong>Szczególną ostrożność zachowaj, gdy dokument zmusza wykonawcę do projektowania na budowie.</strong> Drobne korekty są naturalne, ale ustalanie liczby pętli, rozstawów, tras i parametrów dopiero podczas układania rur oznacza, że zasadnicza część pracy projektowej nie została wykonana.</div>
      </section>

      <section class="rk-pro-section" id="rk-pro-zamowienie" aria-labelledby="rk-pro-s11">
        <div class="rk-pro-section-head">
          <div class="rk-pro-section-no">11</div>
          <div>
            <h2 id="rk-pro-s11">Jak zamówić dokumentację i ocenić jej cenę?</h2>
            <p>Najpierw sprawdź zakres, następnie przygotuj dane budynku, a dopiero później porównuj kwoty.</p>
          </div>
        </div>

        <p>Usługi opisane tą samą nazwą mogą różnić się zawartością. Jedna oferta obejmuje jedynie rozrysowanie pętli, a druga również obliczenia cieplne, hydraulikę, nastawy i zestawienie materiałów. Dlatego cenę zawsze należy odnosić do listy otrzymywanych dokumentów. Aktualne warianty oraz czynniki wpływające na kwotę omawia poradnik <a href="https://projekt-ogrzewania.pl/ile-kosztuje-projekt-ogrzewania-podlogowego/">ile kosztuje projekt ogrzewania podłogowego</a>.</p>

        <p>Przed zamówieniem warto przygotować rzuty, dane przegród, rodzaje posadzek, informacje o źródle ciepła oraz planowane miejsca rozdzielaczy. Brakujące informacje można uzupełnić w ankiecie technicznej, ale wszystkie założenia powinny później znaleźć się w dokumentacji albo zostać jednoznacznie potwierdzone.</p>
      </section>

      <aside class="rk-pro-cta" aria-labelledby="rk-pro-cta-title">
        <span class="rk-pro-cta-label">Projekt gotowy do przekazania wykonawcy</span>
        <h2 id="rk-pro-cta-title">Zamów dokumentację z obliczeniami, rysunkiem pętli i parametrami hydraulicznymi</h2>
        <p>Wybierz powierzchnię budynku, liczbę kondygnacji oraz termin. Po zakupie otrzymasz ankietę techniczną i możliwość przesłania rzutów.</p>
        <div class="rk-pro-cta-points" aria-label="Zakres zamawianego projektu">
          <span>obliczenia cieplne</span>
          <span>rysunek wszystkich pętli</span>
          <span>przepływy i zestawienie materiałów</span>
        </div>
        <div class="rk-pro-cta-actions">
          <a class="rk-pro-cta-button" href="https://projekt-ogrzewania.pl/produkt/projekt-instalacji-ogrzewania-podlogowego-podlogowki/">Sprawdź wariant i zamów projekt</a>
          <a class="rk-pro-cta-secondary" href="https://wa.me/48794358367">WhatsApp: +48 794 358 367</a>
        </div>
      </aside>

      <section class="rk-pro-section" id="rk-pro-faq" aria-labelledby="rk-pro-s12">
        <div class="rk-pro-section-head">
          <div class="rk-pro-section-no">12</div>
          <div>
            <h2 id="rk-pro-s12">Profesjonalny projekt ogrzewania podłogowego — FAQ</h2>
            <p>Najczęstsze pytania o obliczenia, rysunki i zakres dokumentacji.</p>
          </div>
        </div>

        <div class="rk-pro-faq">
          <details id="rk-pro-faq-1"><summary>Co powinien zawierać profesjonalny projekt ogrzewania podłogowego?</summary><p>Profesjonalny projekt powinien zawierać założenia techniczne, projektowe obciążenie cieplne pomieszczeń, parametry ogrzewania płaszczyznowego, rysunek i oznaczenia pętli, długości oraz rozstawy rur, przepływy, spadki ciśnienia, nastawy rozdzielaczy i zestawienie materiałowe.</p></details>
          <details id="rk-pro-faq-2"><summary>Czy sam rysunek pętli można uznać za pełny projekt?</summary><p>Nie. Rysunek pokazuje sposób prowadzenia rur, ale bez wyników cieplnych i hydraulicznych nie wyjaśnia, dlaczego przyjęto określone rozstawy ani jak ustawić przepływy. Jest ważną częścią dokumentacji, lecz nie zastępuje obliczeń.</p></details>
          <details id="rk-pro-faq-3"><summary>Czy projekt powinien zawierać obliczenia OZC?</summary><p>Tak. Wymagana moc powinna być określona dla budynku i poszczególnych pomieszczeń. Na tej podstawie sprawdza się, czy dostępna powierzchnia podłogi może pokryć straty przy przyjętych parametrach pracy.</p></details>
          <details id="rk-pro-faq-4"><summary>Jakie normy są związane z projektowaniem podłogówki?</summary><p>Projektowe obciążenie cieplne budynków wiąże się z normą PN-EN 12831, natomiast metody obliczania wodnych systemów ogrzewania płaszczyznowego opisuje seria EN 1264. Projekt powinien jasno wskazywać przyjęte założenia i metody obliczeniowe.</p></details>
          <details id="rk-pro-faq-5"><summary>Jakie informacje powinny znaleźć się przy każdej pętli?</summary><p>Każda pętla powinna mieć jednoznaczny symbol, przypisane pomieszczenie i rozdzielacz, rozstaw rur, powierzchnię grzejną, długość całkowitą, wymaganą moc, przepływ, spadek ciśnienia oraz nastawę potrzebną do regulacji.</p></details>
          <details id="rk-pro-faq-6"><summary>Czy każda pętla może mieć maksymalnie 100 metrów?</summary><p>Wartość około 100 metrów jest często stosowanym ograniczeniem dla rur 16 mm, ale nie stanowi uniwersalnej odpowiedzi. Dopuszczalna długość zależy również od średnicy, przepływu, odcinków dobiegowych i spadku ciśnienia obiegu.</p></details>
          <details id="rk-pro-faq-7"><summary>Dlaczego projekt musi podawać przepływy?</summary><p>Przepływ określa ilość wody potrzebną do przeniesienia wymaganej mocy przy założonej różnicy temperatur. Bez wartości dla poszczególnych pętli nie można przeprowadzić projektowej regulacji rotametrów i prawidłowo zrównoważyć instalacji.</p></details>
          <details id="rk-pro-faq-8"><summary>Czy rodzaj podłogi wpływa na projekt?</summary><p>Tak. Płytki, panele, drewno i wykładziny mają różne opory cieplne, dlatego wpływają na moc powierzchniową, temperaturę podłogi, potrzebny rozstaw rur oraz temperaturę zasilania. Rodzaj wykończenia powinien być określony osobno dla pomieszczeń.</p></details>
          <details id="rk-pro-faq-9"><summary>Czy projekt trzeba dopasować do pompy ciepła lub kotła?</summary><p>Tak. Źródło ciepła wpływa na dostępne temperatury zasilania, sposób regulacji i układ hydrauliczny. Szczególnie przy pompie ciepła warto projektować możliwie niską temperaturę pracy, ale zawsze wystarczającą do pokrycia strat budynku.</p></details>
          <details id="rk-pro-faq-10"><summary>Czy projekt powinien zawierać listę materiałów?</summary><p>Tak. Zestawienie powinno wynikać z rysunków i obliczeń oraz obejmować między innymi długość rur, liczbę sekcji rozdzielaczy, szafki i podstawowe elementy systemowe zgodne z przyjętą technologią wykonania.</p></details>
          <details id="rk-pro-faq-11"><summary>Czy można zobaczyć przykładowy projekt przed zamówieniem?</summary><p>Tak. Na tej stronie udostępniamy 14-stronicowy przykładowy projekt w formacie PDF. Zawiera rysunek pętli, wyniki cieplne i hydrauliczne, parametry obiegów, nastawy oraz zestawienie materiałowe dla przykładowego budynku.</p></details>
          <details id="rk-pro-faq-12"><summary>Czy projekt można wykonać całkowicie online?</summary><p>Tak. Rzuty i dane techniczne można przekazać elektronicznie, a gotową dokumentację otrzymać w formacie PDF. Kluczowe jest przesłanie czytelnych wymiarów oraz kompletnych informacji o budynku, posadzkach i źródle ciepła.</p></details>
        </div>
      </section>

      <section class="rk-pro-summary" aria-labelledby="rk-pro-summary-title">
        <h2 id="rk-pro-summary-title">Profesjonalny projekt pozwala przejść od obliczeń do prawidłowo ustawionej instalacji</h2>
        <p>Kompletna dokumentacja pokazuje nie tylko miejsce ułożenia rur, ale również przyczynę każdej decyzji: straty cieplne, wymaganą moc, rozstawy, długości, przepływy i opory. Dzięki temu inwestor może ocenić zakres, wykonawca otrzymuje jasne wytyczne, a instalację można później uruchomić zgodnie z obliczeniami.</p>
      </section>

      <div class="rk-pro-conditions" aria-label="Podstawa techniczna i kontakt">
        Podstawa techniczna opracowania: zasady projektowego obciążenia cieplnego PN-EN 12831 oraz obliczeń ogrzewania płaszczyznowego EN 1264.
        Pytania: <a href="tel:+48783212175">+48 783 212 175</a> • WhatsApp: <a href="https://wa.me/48794358367">+48 794 358 367</a>.
      </div>

      <aside class="rk-pro-author-bio" aria-labelledby="rk-pro-author-title" itemprop="author" itemscope itemtype="https://schema.org/Person">
        <div class="rk-pro-bio-head">
          <div><h2 id="rk-pro-author-title">Autor opracowania</h2><p>Praktyka projektowa, obliczenia techniczne i odpowiedzialność za dokumentację.</p></div>
          <div class="rk-pro-bio-badge">E‑E‑A‑T • HVAC</div>
        </div>

        <div class="rk-pro-bio-grid">
          <div class="rk-pro-bio-profile">
            <img decoding="async" class="rk-pro-bio-photo" src="https://projekt-ogrzewania.pl/wp-content/uploads/2026/04/PO-Robert-Kucharski.webp" alt="Robert Kucharski – specjalista systemów HVAC i ogrzewania podłogowego" width="300" height="300" loading="lazy" itemprop="image">
            <h3 class="rk-pro-bio-name" itemprop="name">Robert Kucharski</h3>
            <div class="rk-pro-bio-title" itemprop="jobTitle">Specjalista systemów HVAC i ogrzewania podłogowego</div>
            <div class="rk-pro-bio-links">
              <a href="https://www.facebook.com/projektogrzewaniapl/" target="_blank" rel="me nofollow noopener">Facebook</a>
              <a href="https://www.linkedin.com/in/robert-kucharski-38069b48/" target="_blank" rel="me nofollow noopener">LinkedIn</a>
              <a href="https://projekt-ogrzewania.pl/author/admin3399/" rel="author">Profil autora</a>
            </div>
          </div>

          <div class="rk-pro-bio-content">
            <div class="rk-pro-bio-quote">
              <span class="rk-pro-bio-quote-mark" aria-hidden="true">“</span>
              <p>Projekt jest kompletny wtedy, gdy wykonawca potrafi przejść od pętli na rzucie do jej długości, przepływu, oporu i nastawy na rozdzielaczu. Kolorowa linia bez tych danych pokazuje trasę, ale nie opisuje pracy instalacji.</p>
            </div>

            <div class="rk-pro-bio-tabs" role="tablist" aria-label="Informacje o autorze">
              <button class="rk-pro-bio-tab" id="rk-pro-bio-tab-about" type="button" role="tab" aria-selected="true" aria-controls="rk-pro-bio-about">O autorze</button>
              <button class="rk-pro-bio-tab" id="rk-pro-bio-tab-exp" type="button" role="tab" aria-selected="false" aria-controls="rk-pro-bio-exp" tabindex="-1">Doświadczenie</button>
              <button class="rk-pro-bio-tab" id="rk-pro-bio-tab-portals" type="button" role="tab" aria-selected="false" aria-controls="rk-pro-bio-portals" tabindex="-1">Portale</button>
            </div>

            <div class="rk-pro-bio-panel" id="rk-pro-bio-about" role="tabpanel" aria-labelledby="rk-pro-bio-tab-about">
              <p itemprop="description">Specjalizuję się w projektowaniu systemów HVAC, ze szczególnym uwzględnieniem wodnego ogrzewania podłogowego, obliczeń obciążenia cieplnego oraz hydrauliki instalacji. Dokumentacja ma być poprawna obliczeniowo, czytelna dla inwestora i możliwa do wykonania na budowie.</p>
            </div>
            <div class="rk-pro-bio-panel" id="rk-pro-bio-exp" role="tabpanel" aria-labelledby="rk-pro-bio-tab-exp" hidden>
              <p>W pracy wykorzystuję doświadczenie z dokumentacji projektowej, analiz OZC, doboru temperatur zasilania, przepływów, rozdzielaczy i źródeł ciepła. Każdy budynek analizuję indywidualnie, ponieważ sama powierzchnia nie wystarcza do poprawnego zaprojektowania instalacji.</p>
              <div class="rk-pro-bio-stats">
                <div class="rk-pro-bio-stat"><b>1000+</b><span>projektów i analiz OZC</span></div>
                <div class="rk-pro-bio-stat"><b>Cała Polska</b><span>projekty realizowane zdalnie</span></div>
              </div>
            </div>
            <div class="rk-pro-bio-panel" id="rk-pro-bio-portals" role="tabpanel" aria-labelledby="rk-pro-bio-tab-portals" hidden>
              <p>Tworzę i rozwijam serwisy, w których wiedza techniczna pomaga podejmować lepsze decyzje budowlane: <a href="https://projekt-ogrzewania.pl/">Projekt-Ogrzewania.pl</a>, <a href="https://remont.biz.pl/" target="_blank" rel="me nofollow noopener">Remont.biz.pl</a> oraz <a href="https://sobir.pl/" target="_blank" rel="me nofollow noopener">Sobir.pl</a>. Publikuję również na <a href="https://www.facebook.com/projektogrzewaniapl/" target="_blank" rel="me nofollow noopener">Facebooku</a> i <a href="https://www.linkedin.com/in/robert-kucharski-38069b48/" target="_blank" rel="me nofollow noopener">LinkedInie</a>.</p>
            </div>
          </div>
        </div>
      </aside>
    </div>
  </div>
</article>

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

    var root = document.getElementById("rk-profesjonalny-projekt");
    if (!root) return;

    function createTabs(buttonSelector, panelSelector) {
      var buttons = Array.prototype.slice.call(root.querySelectorAll(buttonSelector));
      var panels = Array.prototype.slice.call(root.querySelectorAll(panelSelector));
      if (!buttons.length || buttons.length !== panels.length) return;

      function activate(index, moveFocus) {
        buttons.forEach(function (button, buttonIndex) {
          var selected = buttonIndex === index;
          button.setAttribute("aria-selected", selected ? "true" : "false");
          button.tabIndex = selected ? 0 : -1;
          panels[buttonIndex].hidden = !selected;
        });
        if (moveFocus) buttons[index].focus();
      }

      buttons.forEach(function (button, index) {
        button.addEventListener("click", function () {
          activate(index, false);
        });

        button.addEventListener("keydown", function (event) {
          var nextIndex = index;
          if (event.key === "ArrowRight" || event.key === "ArrowDown") nextIndex = (index + 1) % buttons.length;
          if (event.key === "ArrowLeft" || event.key === "ArrowUp") nextIndex = (index - 1 + buttons.length) % buttons.length;
          if (event.key === "Home") nextIndex = 0;
          if (event.key === "End") nextIndex = buttons.length - 1;
          if (nextIndex !== index) {
            event.preventDefault();
            activate(nextIndex, true);
          }
        });
      });
    }

    createTabs(".rk-pro-bio-tab", ".rk-pro-bio-panel");

    var progress = root.querySelector(".rk-pro-progress");
    var ticking = false;

    function updateProgress() {
      if (!progress) return;
      var rootTop = root.getBoundingClientRect().top + window.pageYOffset;
      var travel = Math.max(root.offsetHeight - window.innerHeight, 1);
      var value = Math.min(Math.max((window.pageYOffset - rootTop) / travel, 0), 1);
      progress.style.width = (value * 100).toFixed(2) + "%";
      ticking = false;
    }

    function requestProgressUpdate() {
      if (ticking) return;
      ticking = true;
      window.requestAnimationFrame(updateProgress);
    }

    window.addEventListener("scroll", requestProgressUpdate, { passive: true });
    window.addEventListener("resize", requestProgressUpdate, { passive: true });
    updateProgress();
  }());
</script>

<!--
  Yoast generuje dane Article, WebPage, Person, Organization i BreadcrumbList.
  Poniższy blok dodaje wyłącznie pytania widoczne w treści i nie tworzy
  konkurencyjnej encji Product ani Offer.
-->
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "FAQPage",
  "mainEntity": [
    {
      "@type": "Question",
      "name": "Co powinien zawierać profesjonalny projekt ogrzewania podłogowego?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Profesjonalny projekt powinien zawierać założenia techniczne, projektowe obciążenie cieplne pomieszczeń, parametry ogrzewania płaszczyznowego, rysunek i oznaczenia pętli, długości oraz rozstawy rur, przepływy, spadki ciśnienia, nastawy rozdzielaczy i zestawienie materiałowe."
      }
    },
    {
      "@type": "Question",
      "name": "Czy sam rysunek pętli można uznać za pełny projekt?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Nie. Rysunek pokazuje sposób prowadzenia rur, ale bez wyników cieplnych i hydraulicznych nie wyjaśnia, dlaczego przyjęto określone rozstawy ani jak ustawić przepływy. Jest ważną częścią dokumentacji, lecz nie zastępuje obliczeń."
      }
    },
    {
      "@type": "Question",
      "name": "Czy projekt powinien zawierać obliczenia OZC?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Tak. Wymagana moc powinna być określona dla budynku i poszczególnych pomieszczeń. Na tej podstawie sprawdza się, czy dostępna powierzchnia podłogi może pokryć straty przy przyjętych parametrach pracy."
      }
    },
    {
      "@type": "Question",
      "name": "Jakie normy są związane z projektowaniem podłogówki?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Projektowe obciążenie cieplne budynków wiąże się z normą PN-EN 12831, natomiast metody obliczania wodnych systemów ogrzewania płaszczyznowego opisuje seria EN 1264. Projekt powinien jasno wskazywać przyjęte założenia i metody obliczeniowe."
      }
    },
    {
      "@type": "Question",
      "name": "Jakie informacje powinny znaleźć się przy każdej pętli?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Każda pętla powinna mieć jednoznaczny symbol, przypisane pomieszczenie i rozdzielacz, rozstaw rur, powierzchnię grzejną, długość całkowitą, wymaganą moc, przepływ, spadek ciśnienia oraz nastawę potrzebną do regulacji."
      }
    },
    {
      "@type": "Question",
      "name": "Czy każda pętla może mieć maksymalnie 100 metrów?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Wartość około 100 metrów jest często stosowanym ograniczeniem dla rur 16 mm, ale nie stanowi uniwersalnej odpowiedzi. Dopuszczalna długość zależy również od średnicy, przepływu, odcinków dobiegowych i spadku ciśnienia obiegu."
      }
    },
    {
      "@type": "Question",
      "name": "Dlaczego projekt musi podawać przepływy?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Przepływ określa ilość wody potrzebną do przeniesienia wymaganej mocy przy założonej różnicy temperatur. Bez wartości dla poszczególnych pętli nie można przeprowadzić projektowej regulacji rotametrów i prawidłowo zrównoważyć instalacji."
      }
    },
    {
      "@type": "Question",
      "name": "Czy rodzaj podłogi wpływa na projekt?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Tak. Płytki, panele, drewno i wykładziny mają różne opory cieplne, dlatego wpływają na moc powierzchniową, temperaturę podłogi, potrzebny rozstaw rur oraz temperaturę zasilania. Rodzaj wykończenia powinien być określony osobno dla pomieszczeń."
      }
    },
    {
      "@type": "Question",
      "name": "Czy projekt trzeba dopasować do pompy ciepła lub kotła?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Tak. Źródło ciepła wpływa na dostępne temperatury zasilania, sposób regulacji i układ hydrauliczny. Szczególnie przy pompie ciepła warto projektować możliwie niską temperaturę pracy, ale zawsze wystarczającą do pokrycia strat budynku."
      }
    },
    {
      "@type": "Question",
      "name": "Czy projekt powinien zawierać listę materiałów?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Tak. Zestawienie powinno wynikać z rysunków i obliczeń oraz obejmować między innymi długość rur, liczbę sekcji rozdzielaczy, szafki i podstawowe elementy systemowe zgodne z przyjętą technologią wykonania."
      }
    },
    {
      "@type": "Question",
      "name": "Czy można zobaczyć przykładowy projekt przed zamówieniem?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Tak. Na tej stronie udostępniamy 14-stronicowy przykładowy projekt w formacie PDF. Zawiera rysunek pętli, wyniki cieplne i hydrauliczne, parametry obiegów, nastawy oraz zestawienie materiałowe dla przykładowego budynku."
      }
    },
    {
      "@type": "Question",
      "name": "Czy projekt można wykonać całkowicie online?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Tak. Rzuty i dane techniczne można przekazać elektronicznie, a gotową dokumentację otrzymać w formacie PDF. Kluczowe jest przesłanie czytelnych wymiarów oraz kompletnych informacji o budynku, posadzkach i źródle ciepła."
      }
    }
  ]
}
</script>
<p>Artykuł <a href="https://projekt-ogrzewania.pl/jak-powinien-wygladac-profesjonalny-projekt-do-ogrzewania-podlogowego/">Jak powinien wyglądać profesjonalny projekt do ogrzewania podłogowego.</a> pochodzi z serwisu <a href="https://projekt-ogrzewania.pl">Projekt Ogrzewania</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://projekt-ogrzewania.pl/jak-powinien-wygladac-profesjonalny-projekt-do-ogrzewania-podlogowego/feed/</wfw:commentRss>
			<slash:comments>2</slash:comments>
		
		
			</item>
	</channel>
</rss>
