:root{--ink:#35555b;--muted:#657c80;--accent:#af493b;--paper:#fffefa;--line:#dce5df;--tint:#ecf4ef;--flow:#628a78}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;background:var(--paper);color:var(--ink);font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid #157894;outline-offset:5px}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.15}button,a{-webkit-tap-highlight-color:transparent}.skip{position:fixed;top:-100px;padding:12px;background:white;z-index:5}.skip:focus{top:0}.header,main,footer{width:min(1320px,calc(100% - 80px));margin:auto}.header{display:flex;align-items:center;gap:32px;padding:20px 0;border-bottom:1px solid var(--line)}.header img{width:140px;height:auto;display:block}.back{margin-left:32px;font-size:14px;font-weight:600}.phone{margin-left:auto;font-size:12px;color:var(--muted)}.phone strong{display:block;font-size:21px;color:var(--ink)}.breadcrumbs{display:flex;gap:12px;align-items:center;flex-wrap:wrap;font-size:12px;margin:28px 0;color:var(--muted)}.breadcrumbs a:hover,.back:hover{color:var(--accent)}.intro{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:center;padding:25px 0 65px}.eyebrow{font-size:12px;letter-spacing:1.8px;font-weight:650;text-transform:uppercase}.intro-copy>.eyebrow{display:flex;align-items:center;gap:13px;color:var(--accent)}.intro-copy>.eyebrow>span{font-size:30px;letter-spacing:0}.intro h1{font-size:clamp(36px,4.1vw,62px);letter-spacing:-2.5px;line-height:1.06;margin:24px 0}.intro h1 em{font-style:normal;color:var(--accent)}.lead{font-size:18px;color:var(--muted);max-width:540px;line-height:1.75}.actions{display:flex;gap:18px;align-items:flex-start;flex-direction:column;margin-top:28px}.button{background:var(--accent);color:white;display:inline-flex;justify-content:center;align-items:center;gap:24px;padding:15px 24px;border-radius:30px;font-weight:600;font-size:14px;line-height:1.5;transition:transform .18s,background .18s}.button:hover{background:#943b2f;transform:translateY(-2px)}.subtle{font-size:13px;font-weight:600;line-height:1.6}.subtle:hover{text-decoration:underline;text-underline-offset:5px}.intro-hint{display:flex;gap:14px;align-items:center;color:var(--muted);font-size:12px;margin-top:34px}.intro-hint>span:first-child{font-size:28px}.flow-card{border-radius:30px;border:1px solid var(--line);background:linear-gradient(145deg,#f8fbf6,var(--tint));padding:32px 34px;scroll-margin-top:20px}.flow-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.flow-heading>.eyebrow{font-size:10px;color:var(--muted)}.flow-badge{font-size:11px;font-weight:650;background:#ffffffaa;border-radius:20px;padding:4px 10px}.flow-card h2{font-size:30px;letter-spacing:-.8px;margin-top:12px}.flow{list-style:none;margin:28px 0 18px;padding:0;display:grid;gap:29px}.flow li{display:flex;gap:18px;align-items:center;position:relative}.flow li:not(:last-child)::after{content:'↓';position:absolute;top:calc(100% + 1px);left:24px;color:var(--flow);font-size:20px}.flow-icon{width:64px;height:64px;border-radius:20px;display:grid;place-items:center;flex:none;background:white;font-size:33px;box-shadow:0 4px 18px #31594c08}.flow h3{font-size:18px;margin-bottom:6px}.flow p{font-size:13px;line-height:1.5;color:var(--muted);max-width:330px}.flow-footnote{font-size:10px;color:var(--muted);padding-top:17px;border-top:1px solid #72967d25}.detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.detail-card{padding:28px;background:white;border:1px solid var(--line);border-radius:24px}.detail-icon{display:block;font-size:32px;margin-bottom:18px}.detail-card h2{font-size:20px;letter-spacing:-.35px;margin-bottom:18px}.detail-card ul{margin:0;padding-left:20px;color:var(--muted);font-size:14px}.detail-card li{padding-left:2px;margin-top:10px}.detail-card li::marker{color:var(--accent)}.technical-note{display:flex;gap:20px;margin:24px 0 60px;padding:25px 28px;background:#faf3e8;border-radius:22px}.technical-note>span{font-size:30px;flex:none}.technical-note h2{font-size:17px;margin-bottom:9px}.technical-note p{font-size:14px;color:#776b56;max-width:1020px}.next-step{display:flex;justify-content:space-between;align-items:center;gap:45px;padding:42px;background:var(--tint);border-radius:28px}.next-step .eyebrow{font-size:10px;margin-bottom:12px;color:var(--muted)}.next-step h2{font-size:32px;letter-spacing:-1px}.next-step p:not(.eyebrow){font-size:14px;color:var(--muted);max-width:570px;margin-top:15px}.next-actions{display:flex;flex-direction:column;align-items:center;gap:16px;flex:none}.next-actions .button{max-width:340px;text-align:center}footer{border-top:1px solid var(--line);margin-top:55px;padding:28px 0;display:flex;justify-content:space-between;gap:24px;font-size:11px;color:var(--muted)}.theme-woda{--tint:#eaf5fa;--flow:#3a8299}.theme-przemysl{--tint:#f0edf8;--flow:#807293}.theme-dom{--tint:#f6f1e8;--flow:#9a7d61}
@media(max-width:1020px){.intro{gap:4%}.intro h1{font-size:44px}.lead{font-size:16px}.flow-card{padding:28px}.next-step{flex-direction:column;align-items:flex-start;gap:28px}.next-actions{align-items:flex-start}.detail-card{padding:23px}.detail-card h2{font-size:18px}}
@media(max-width:700px){.header,main,footer{width:calc(100% - 36px)}.header{padding:14px 0;gap:15px}.header img{width:105px}.back{margin-left:auto;font-size:11px;max-width:130px}.phone{display:none}.breadcrumbs{margin:22px 0;font-size:10px;gap:8px}.intro{display:flex;flex-direction:column;gap:32px;align-items:stretch;padding:12px 0 30px}.intro-copy>.eyebrow{font-size:10px;letter-spacing:1.2px}.intro h1{font-size:42px;letter-spacing:-1.8px;margin:19px 0}.lead{font-size:16px;line-height:1.7}.intro-hint{margin-top:24px}.actions{margin-top:24px;gap:16px}.flow-card{border-radius:24px;padding:25px 22px}.flow-card h2{font-size:27px}.flow{gap:27px}.flow li{gap:14px}.flow-icon{width:54px;height:54px;border-radius:16px;font-size:28px}.flow li:not(:last-child)::after{left:20px}.flow h3{font-size:16px}.flow p{font-size:12px}.flow-footnote{font-size:10px}.detail-grid{grid-template-columns:1fr;gap:12px}.detail-card{padding:24px}.detail-card h2{font-size:20px}.detail-icon{float:right;margin-left:12px;margin-bottom:0}.technical-note{margin:20px 0 30px;padding:22px 19px;gap:14px}.technical-note>span{font-size:24px}.technical-note h2{font-size:16px}.technical-note p{font-size:13px}.next-step{padding:27px 23px;border-radius:24px}.next-step h2{font-size:29px}.next-step .eyebrow{font-size:9px}.next-actions{align-items:stretch;width:100%}.next-actions .button{font-size:13px;padding:14px 18px;gap:12px}.next-actions .subtle{text-align:center}footer{margin-top:32px;flex-direction:column;gap:12px}.flow-heading>.eyebrow{font-size:9px}.flow-badge{font-size:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Ten sam jasny, szałwiowy ton co zaakceptowane kafelki na stronie głównej. */
body.infographic-body{--ink:#3e5c63;--muted:#718589;--accent:#b34b3c;--tint:#f0f5f1;background:#fffefa}
.infographic-body .flow-card,.infographic-body .detail-card,.infographic-body .next-step{background:#f0f5f1;border-color:transparent;border-radius:30px}
.infographic-body .flow-icon{background:#e1ebe5;box-shadow:none;border-radius:50%;color:#bc4a3b}
.infographic-body .flow-icon .icon{width:29px;height:29px;stroke-width:1.5}
.infographic-body .detail-icon .icon{width:32px;height:32px;stroke-width:1.5;color:#bc4a3b}
.infographic-body .technical-note{background:#f6f7f1}
.infographic-body .technical-note p{color:var(--muted)}
.infographic-body .flow{gap:30px}
.infographic-body .flow-card{scroll-margin-top:175px}
.infographic-body .flow-badge{background:#e1ebe5}
.infographic-body main{max-width:1320px}
.infographic-body .flow-footnote{font-size:11px}
.infographic-body .breadcrumbs a{display:inline-flex;align-items:center}
@media(max-width:700px){.infographic-body .flow-card{scroll-margin-top:150px}.infographic-body .detail-icon .icon{width:30px;height:30px}}
/* Zapas pod stałym nagłówkiem jest definiowany przez scroll-padding dokumentu. */
.infographic-body .flow-card{scroll-margin-top:20px}
/* Powiększony schemat: wspólny dla wszystkich plansz systemowych. */
.campus .flow-dialog{box-sizing:border-box;width:min(720px,calc(100% - 32px));max-height:calc(100dvh - 32px);margin:auto;padding:36px;border:1px solid var(--line);border-radius:28px;background:#f0f5f1;color:var(--ink);overflow:auto;overscroll-behavior:contain;box-shadow:0 24px 90px #24423b35}
.campus .flow-dialog::backdrop{background:#24423b70;backdrop-filter:blur(5px)}
.campus .flow-dialog>.eyebrow{padding-right:48px;color:var(--accent)}
.campus .flow-dialog h2{font-size:30px;line-height:1.2;letter-spacing:-.6px;margin:16px 44px 24px 0}
.campus .flow-dialog .flow h3{font-size:21px}
.campus .flow-dialog .flow p{font-size:16px;max-width:none}
.campus .flow-dialog .flow-footnote{font-size:12px;margin-top:24px}
.campus .flow-dialog>.button{margin-top:24px;text-align:center}
.campus .flow-dialog-close{position:absolute;right:18px;top:18px;display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--line);border-radius:50%;background:white;color:var(--ink);font-size:28px;line-height:1;cursor:pointer}
.campus .flow-dialog-close:focus-visible{outline:3px solid #157894;outline-offset:3px}
html:has(body.infographic-body .flow-dialog[open]){overflow-y:hidden!important}
@media(max-width:700px){.campus .flow-dialog{padding:24px 20px}.campus .flow-dialog h2{font-size:25px}.campus .flow-dialog .flow h3{font-size:18px}.campus .flow-dialog .flow p{font-size:14px}.campus .flow-dialog>.button{width:100%;font-size:13px;padding:14px 16px;gap:10px}}
