:root{--bg:#07192a;--bg2:#0b2237;--panel:#0d2942;--text:#f4f8fb;--muted:#a9bac9;--accent:#0e9ee8;--line:#17415f;--max:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,Segoe UI,Arial,sans-serif;line-height:1.65}body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-2;background:radial-gradient(circle at 82% 14%,rgba(39,166,255,.10),transparent 34%),linear-gradient(180deg,#07192a 0%,#081b2d 55%,#061522 100%)}
a{color:inherit}.topbar{height:76px;position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:28px;padding:0 max(24px,calc((100% - var(--max))/2));background:rgba(7,25,42,.92);backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.07)}.brand{margin-right:auto;display:flex}.brand img{width:54px;height:54px;object-fit:cover;border-radius:10px}.topbar nav{display:flex;gap:24px}.topbar nav a{text-decoration:none;color:var(--muted);font-size:14px;font-weight:650}.topbar nav a:hover{color:white}.menu{display:none;background:none;border:0;color:white;font-size:26px}
.section{max-width:var(--max);margin:auto;padding:92px 24px;scroll-margin-top:70px}.alt{max-width:none;padding-left:max(24px,calc((100% - var(--max))/2));padding-right:max(24px,calc((100% - var(--max))/2));background:rgba(11,34,55,.78);border-block:1px solid rgba(255,255,255,.05)}
.hero{min-height:660px;display:grid;grid-template-columns:1.25fr .75fr;gap:70px;align-items:center}.hero-logo{text-align:center}.hero-logo img{width:min(390px,90%);border-radius:32px;box-shadow:0 30px 80px rgba(0,0,0,.35)}h1{font-size:clamp(44px,6vw,78px);line-height:1.02;margin:.15em 0}.lead{font-size:clamp(20px,2.3vw,30px);color:#dbe8f2;margin:.3em 0 1em}.hero-copy>p:not(.lead){max-width:720px;color:var(--muted);font-size:18px}.eyebrow{text-transform:uppercase;letter-spacing:.16em;color:var(--accent);font-weight:800;font-size:12px}.button{display:inline-block;margin-top:22px;background:var(--accent);border:0;color:#fff;text-decoration:none;padding:13px 20px;border-radius:9px;font-weight:800;cursor:pointer}.button:hover{filter:brightness(1.08)}
.section-head{max-width:800px;margin-bottom:36px}.section-head h2,.process h2{font-size:clamp(34px,4vw,52px);line-height:1.1;margin:.2em 0}.section-head p,.wide{color:var(--muted);font-size:18px}.wide{max-width:900px}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.cards article,.feature3 article,.pricebox,.support,.notice,.contact-data,form{background:rgba(13,41,66,.82);border:1px solid var(--line);border-radius:16px;padding:24px}.cards h3,.feature3 h3{margin-top:0}.cards p,.feature3 p,.notice p,.support p{color:var(--muted)}
.process{margin-top:70px}.process ol{padding:0;list-style:none;display:grid;grid-template-columns:repeat(5,1fr);gap:12px;counter-reset:step}.process li{padding:20px;border-top:2px solid var(--accent);background:rgba(255,255,255,.025)}.process li:before{counter-increment:step;content:"0" counter(step);display:block;color:var(--accent);font-weight:800;margin-bottom:12px}.process span{display:block;color:var(--muted);margin-top:6px;font-size:14px}.closing{margin-top:48px;max-width:800px}.closing strong{display:block;font-size:21px}.text-link{display:inline-block;margin-top:24px;color:#58c4ff;font-weight:800;text-decoration:none}
.feature3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:36px 0}.feature3 article span{color:var(--accent);font-weight:900;font-size:13px}.two-col{display:grid;grid-template-columns:1.15fr .85fr;gap:30px;margin-top:50px}.ticks{padding-left:0;list-style:none}.ticks li{margin:10px 0;padding-left:26px;position:relative}.ticks li:before{content:"✓";position:absolute;left:0;color:var(--accent);font-weight:900}.pricebox div{display:flex;justify-content:space-between;gap:18px;padding:14px 0;border-bottom:1px solid var(--line)}.pricebox small{display:block;color:var(--muted);margin-top:18px}.support,.notice{margin-top:20px}.support strong{font-size:22px;color:#fff}
.linkcards{display:grid;gap:14px}.linkcards>a{display:flex;align-items:center;justify-content:space-between;text-decoration:none;padding:26px;background:var(--panel);border:1px solid var(--line);border-radius:14px}.linkcards>a:hover{border-color:var(--accent);transform:translateY(-1px)}.linkcards b{display:block;font-size:20px}.linkcards span{display:block;color:var(--muted);margin-top:4px}
.rating-summary{margin-bottom:22px;font-size:22px}.rating-summary .score{font-size:46px;font-weight:900}.stars{color:#ffd34d;letter-spacing:2px}.reviews{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.review{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:18px}.review .author{font-weight:800}.review .date{font-size:13px;color:var(--muted)}.review p{color:#d6e2eb}.error{color:#ffb5b5}
.contact-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:24px}.contact-data a{display:block;margin:16px 0;text-decoration:none;font-size:20px;font-weight:750}.contact-data a span{display:block;color:var(--muted);font-size:13px;font-weight:400}form{display:grid;gap:16px}label{font-weight:700}label small{font-weight:400;color:var(--muted)}input,select,textarea{width:100%;margin-top:7px;background:#071b2d;border:1px solid #235273;color:white;border-radius:9px;padding:12px;font:inherit}textarea{resize:vertical}.consent{display:flex;gap:10px;font-weight:400;color:var(--muted);font-size:14px}.consent input{width:auto;margin-top:4px}.form-status{margin:0;color:var(--muted)}
footer{max-width:var(--max);margin:auto;padding:34px 24px;display:flex;align-items:center;gap:16px;color:var(--muted);border-top:1px solid rgba(255,255,255,.06)}
footer img{width:auto;height:48px;max-width:140px;object-fit:contain;border-radius:0}
@media(max-width:900px){.topbar nav{display:none;position:absolute;top:76px;left:0;right:0;padding:20px 24px;background:#07192a;flex-direction:column}.topbar nav.open{display:flex}.menu{display:block}.hero{grid-template-columns:1fr;min-height:auto}.hero-logo{order:-1}.hero-logo img{width:180px}.cards,.feature3,.reviews{grid-template-columns:1fr 1fr}.process ol{grid-template-columns:1fr 1fr}.two-col,.contact-grid{grid-template-columns:1fr}}
@media(max-width:600px){.section{padding:68px 18px}.alt{padding-left:18px;padding-right:18px}.cards,.feature3,.reviews,.process ol{grid-template-columns:1fr}.topbar{padding:0 18px}.linkcards>a,.pricebox div{align-items:flex-start;flex-direction:column}.hero{padding-top:54px}h1{font-size:43px}}

.hours{margin:22px 0}
.hours-table{width:100%;margin-top:8px;border-collapse:collapse;font-size:15px}
.hours-table td{padding:7px 0;border-bottom:1px solid var(--line)}
.hours-table td:last-child{text-align:right;font-weight:700;color:var(--text)}
.hours-table tr:last-child td{border-bottom:0}

.about-section{position:relative}
.about-intro{display:grid;grid-template-columns:1.05fr .95fr;gap:34px;align-items:center;margin-top:26px}
.about-intro p{color:var(--muted);line-height:1.75}
.about-feature{margin:0;border:1px solid var(--line);border-radius:18px;overflow:hidden;background:var(--card)}
.about-feature img{display:block;width:100%;height:430px;object-fit:cover}
.about-feature figcaption,.archive-gallery figcaption{padding:10px 12px;color:var(--muted);font-size:13px}
.timeline{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin:40px 0}
.timeline-item{padding:18px;border:1px solid var(--line);border-radius:16px;background:rgba(8,18,34,.72)}
.timeline-item span{display:block;color:var(--accent);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px}
.timeline-item strong{display:block;font-size:17px;margin-bottom:8px}
.timeline-item p{margin:0;color:var(--muted);font-size:14px;line-height:1.55}
.archive-gallery{display:grid;grid-template-columns:repeat(12,1fr);gap:12px}
.archive-gallery figure{margin:0;border:1px solid var(--line);border-radius:16px;overflow:hidden;background:var(--card)}
.archive-gallery figure:nth-child(1),.archive-gallery figure:nth-child(2){grid-column:span 6}
.archive-gallery figure:nth-child(n+3){grid-column:span 4}
.archive-gallery img{display:block;width:100%;height:280px;object-fit:cover}
.about-quote{margin-top:34px;padding:28px;border:1px solid var(--line);border-radius:18px;text-align:center;background:rgba(8,18,34,.76)}
.about-quote strong{display:block;font-size:clamp(22px,3vw,34px);line-height:1.2}
.about-quote span{display:block;margin-top:10px;color:var(--accent);font-weight:700}
@media(max-width:900px){
  .about-intro{grid-template-columns:1fr}
  .timeline{grid-template-columns:1fr 1fr}
  .archive-gallery figure,.archive-gallery figure:nth-child(1),.archive-gallery figure:nth-child(2),.archive-gallery figure:nth-child(n+3){grid-column:span 6}
}
@media(max-width:600px){
  .timeline{grid-template-columns:1fr}
  .archive-gallery figure,.archive-gallery figure:nth-child(1),.archive-gallery figure:nth-child(2),.archive-gallery figure:nth-child(n+3){grid-column:1/-1}
  .about-feature img,.archive-gallery img{height:auto}
}

.bio-card{display:grid;grid-template-columns:190px 1fr;gap:30px;align-items:center;margin:28px 0 40px;padding:28px;border:1px solid var(--line);border-radius:20px;background:rgba(8,18,34,.76)}
.bio-avatar{width:170px;height:170px;object-fit:cover;border-radius:50%;border:3px solid var(--accent);box-shadow:0 0 0 7px rgba(35,181,255,.08)}
.bio-copy h3{font-size:28px;margin:4px 0 10px}
.bio-copy p{color:var(--muted);line-height:1.7;margin:8px 0}
.bio-label{color:var(--accent);font-size:12px;font-weight:800;letter-spacing:.12em}
.timeline-link{display:inline-block;margin-top:12px;color:var(--accent);font-weight:700;text-decoration:none;font-size:13px}
.timeline-link:hover{text-decoration:underline}
@media(max-width:650px){
  .bio-card{grid-template-columns:1fr;text-align:center}
  .bio-avatar{margin:0 auto}
}

/* v1.7 */
.brand img,.logo img,header img[src*="logo-horizontal"]{height:auto;max-height:54px;width:auto;max-width:300px}
.remote-care-section{position:relative}
.remote-story{display:grid;grid-template-columns:1.4fr .6fr;gap:22px;margin:28px 0}
.remote-story-main,.remote-callout,.scope-box,.not-outsourcing,.audit-box,.support-box,.business-model,.local-preview-note{border:1px solid var(--line);border-radius:18px;background:rgba(8,18,34,.76);padding:24px}
.remote-story-main p,.remote-callout p,.not-outsourcing p,.audit-box p,.support-box p,.business-model p,.remote-disclaimer{color:var(--muted);line-height:1.7}
.remote-callout{display:flex;flex-direction:column;justify-content:center}
.remote-callout strong{font-size:24px;line-height:1.25}
.benefit-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:26px 0}
.benefit-grid article,.remote-cards article{border:1px solid var(--line);border-radius:16px;padding:20px;background:rgba(8,18,34,.68)}
.benefit-grid h3{font-size:17px;margin:0 0 8px}
.benefit-grid p,.remote-cards p{color:var(--muted);line-height:1.6;margin:0}
.remote-slogan{margin:30px 0;padding:28px;border-radius:18px;border:1px solid var(--line);text-align:center;background:rgba(21,111,185,.10)}
.remote-slogan strong{display:block;font-size:clamp(21px,2.5vw,30px)}
.remote-slogan span{display:block;color:var(--muted);margin-top:9px}
.remote-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:26px 0}
.remote-cards article>span{color:var(--accent);font-size:12px;font-weight:800;letter-spacing:.08em}
.scope-box{margin:26px 0}
.scope-box ul{columns:2;column-gap:34px;color:var(--muted);line-height:1.8;padding-left:20px}
.not-outsourcing{margin:26px 0;border-color:rgba(35,181,255,.35)}
.remote-pricing-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:26px 0}
.audit-box strong{display:block;font-size:25px;color:var(--text);margin:16px 0}
.support-box{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;margin:26px 0}
.support-rate{text-align:right;min-width:190px}
.support-rate strong{display:block;font-size:38px;color:var(--accent)}
.support-rate span{display:block;color:var(--muted)}
.hour-packages{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:18px 0 28px}
.hour-packages>div{border:1px solid var(--line);border-radius:16px;padding:20px;text-align:center;background:rgba(8,18,34,.68)}
.hour-packages strong{display:block;font-size:30px;color:var(--accent)}
.hour-packages span,.hour-packages small{display:block;margin-top:5px;color:var(--muted)}
.remote-disclaimer{font-size:13px;margin:24px 0}
.business-model{margin:30px 0}
.business-model h3{margin-top:6px}
.local-preview-note{text-align:center}
@media(max-width:900px){
  .remote-story,.remote-pricing-grid,.support-box{grid-template-columns:1fr}
  .benefit-grid{grid-template-columns:1fr 1fr}
  .hour-packages{grid-template-columns:1fr 1fr}
  .support-rate{text-align:left}
}
@media(max-width:600px){
  .benefit-grid,.remote-cards,.hour-packages{grid-template-columns:1fr}
  .scope-box ul{columns:1}
  .brand img,.logo img,header img[src*="logo-horizontal"]{max-width:220px}
}


/* v1.8 — karuzela realizacji w hero */
.hero-carousel{
  width:min(100%,520px);
  margin-left:auto;
}
.hero-carousel-stage{
  position:relative;
  width:100%;
  aspect-ratio:4/3;
  overflow:hidden;
  border-radius:22px;
  border:1px solid rgba(75,174,255,.28);
  background:#081321;
  box-shadow:0 22px 55px rgba(0,0,0,.28);
}
.hero-slide{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  opacity:0;
  transform:scale(1.015);
  transition:opacity .7s ease,transform 4.5s ease;
}
.hero-slide.active{
  opacity:1;
  transform:scale(1);
}
.carousel-arrow{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  z-index:3;
  width:42px;
  height:42px;
  border:1px solid rgba(255,255,255,.24);
  border-radius:50%;
  background:rgba(5,15,28,.68);
  color:#fff;
  font-size:29px;
  line-height:1;
  cursor:pointer;
  backdrop-filter:blur(7px);
  transition:background .2s ease,transform .2s ease;
}
.carousel-arrow:hover{
  background:rgba(39,153,234,.88);
  transform:translateY(-50%) scale(1.05);
}
.carousel-prev{left:14px}
.carousel-next{right:14px}
.carousel-dots{
  display:flex;
  justify-content:center;
  gap:8px;
  margin-top:13px;
}
.carousel-dot{
  width:8px;
  height:8px;
  padding:0;
  border:0;
  border-radius:50%;
  background:rgba(255,255,255,.28);
  cursor:pointer;
  transition:width .2s ease,background .2s ease,border-radius .2s ease;
}
.carousel-dot.active{
  width:24px;
  border-radius:8px;
  background:var(--accent);
}
.carousel-caption{
  margin-top:8px;
  text-align:center;
  color:var(--muted);
  font-size:12px;
  letter-spacing:.05em;
  text-transform:uppercase;
}
@media(max-width:900px){
  .hero-carousel{
    width:100%;
    max-width:620px;
    margin:32px auto 0;
  }
}
@media(max-width:600px){
  .hero-carousel-stage{aspect-ratio:1/1}
  .carousel-arrow{width:38px;height:38px}
}


/* v2.0 — rozbudowana sekcja SPD PC Remote Care */
.security-intro{
  margin:42px 0 22px;
  padding:30px;
  border:1px solid rgba(75,174,255,.20);
  border-radius:22px;
  background:linear-gradient(135deg,rgba(26,57,86,.34),rgba(8,20,34,.58));
}
.security-intro h3{margin:8px 0 16px;font-size:clamp(25px,3vw,38px)}
.security-intro p{max-width:980px}
.security-punch{margin-bottom:0;font-size:1.08rem}
.security-benefits{margin-top:18px}
.remote-monitoring{
  margin:46px 0;
  padding:30px;
  border-radius:24px;
  background:rgba(5,15,27,.58);
  border:1px solid rgba(255,255,255,.08);
}
.monitoring-copy{max-width:900px;margin-bottom:24px}
.monitoring-copy h3{font-size:clamp(25px,3vw,36px);margin:8px 0 12px}
.monitoring-shots{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
}
.monitoring-shots figure,.cve-shot{
  margin:0;
  overflow:hidden;
  border-radius:18px;
  background:#f5f7fa;
  border:1px solid rgba(75,174,255,.20);
}
.monitoring-shots img,.cve-shot img{
  display:block;
  width:100%;
  height:100%;
  min-height:180px;
  object-fit:cover;
  object-position:center;
}
.monitoring-shots figcaption,.cve-shot figcaption{
  padding:11px 14px;
  background:#0b1726;
  color:#aebdcd;
  font-size:.82rem;
}
.cve-shot{margin-top:18px}
.cve-shot img{max-height:300px;object-fit:cover;object-position:center}
@media(max-width:760px){
  .monitoring-shots{grid-template-columns:1fr}
  .security-intro,.remote-monitoring{padding:22px}
}


/* v2.0-final — security banner */
.security-banner{
  position:relative;
  margin:42px 0 20px;
  overflow:hidden;
  border-radius:24px;
  border:1px solid rgba(75,174,255,.22);
  background:#071422;
  box-shadow:0 18px 48px rgba(0,0,0,.22);
}
.security-banner img{
  display:block;
  width:100%;
  height:clamp(240px,32vw,410px);
  object-fit:cover;
  object-position:center;
  filter:saturate(.88) brightness(.82);
}
.security-banner::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,transparent 50%,rgba(4,13,24,.82) 100%);
  pointer-events:none;
}
.security-banner figcaption{
  position:absolute;
  z-index:2;
  left:24px;
  right:24px;
  bottom:20px;
  max-width:780px;
  color:#e8f4ff;
  font-size:.92rem;
  line-height:1.5;
}
@media(max-width:600px){
  .security-banner{border-radius:18px}
  .security-banner figcaption{left:16px;right:16px;bottom:14px}
}


/* v2.1 corrected — Remote Care screenshots: full-width, stacked */
.monitoring-shots{
  display:flex;
  flex-direction:column;
  gap:18px;
}
.monitoring-shots figure{width:100%;}
.monitoring-shots img{
  width:100%;
  height:auto;
  min-height:0;
  object-fit:contain;
  object-position:center;
}
.cve-shot{margin-top:18px;width:100%;}
.cve-shot img{
  width:100%;
  height:auto;
  min-height:0;
  max-height:none;
  object-fit:contain;
}


/* v2.2 — doświadczenie zawodowe w sekcji O mnie */
.professional-it{
  margin:42px 0 30px;
  padding:30px;
  border:1px solid rgba(75,174,255,.22);
  border-radius:22px;
  background:linear-gradient(135deg,rgba(12,31,51,.88),rgba(7,19,33,.72));
}
.professional-it-head{max-width:950px}
.professional-it-head h3{
  margin:7px 0 13px;
  font-size:clamp(24px,3vw,35px);
}
.professional-it-head p,.professional-grid p,.professional-process p{
  color:var(--muted);
  line-height:1.7;
}
.professional-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:14px;
  margin:25px 0;
}
.professional-grid article{
  padding:20px;
  border:1px solid var(--line);
  border-radius:16px;
  background:rgba(5,15,27,.55);
}
.professional-grid h4{margin:0 0 8px;font-size:17px}
.professional-grid p{margin:0}
.professional-process{
  padding:22px;
  border-left:3px solid var(--accent);
  background:rgba(39,153,234,.07);
  border-radius:0 14px 14px 0;
}
.professional-process>span{
  display:block;
  color:var(--accent);
  font-size:12px;
  font-weight:800;
  letter-spacing:.1em;
  text-transform:uppercase;
  margin-bottom:7px;
}
.professional-process>strong{
  display:block;
  font-size:clamp(16px,2vw,20px);
  line-height:1.55;
}
.skills-strip{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  margin-top:24px;
}
.skills-strip span{
  padding:8px 11px;
  border:1px solid rgba(75,174,255,.22);
  border-radius:999px;
  color:#dbeeff;
  background:rgba(13,39,64,.7);
  font-size:12px;
  font-weight:700;
}
@media(max-width:800px){
  .professional-grid{grid-template-columns:1fr}
  .professional-it{padding:22px}
}

/* v2.2 — doprecyzowanie stażu */
.experience-stats{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:14px;
  margin:30px 0 10px;
}
.experience-stat{
  padding:22px;
  border:1px solid rgba(75,174,255,.22);
  border-radius:18px;
  background:rgba(8,24,40,.72);
}
.experience-stat strong{
  display:block;
  margin-bottom:8px;
  font-size:clamp(20px,2.4vw,27px);
  color:#fff;
}
.experience-stat span{
  display:block;
  color:var(--muted);
  line-height:1.65;
}
@media(max-width:700px){
  .experience-stats{grid-template-columns:1fr}
}

/* v2.2 — homelab w sekcji O mnie */
.homelab-about{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(340px,.95fr);
  gap:30px;
  align-items:center;
  margin:34px 0;
  padding:28px;
  border:1px solid rgba(75,174,255,.22);
  border-radius:22px;
  background:linear-gradient(135deg,rgba(8,25,42,.84),rgba(6,18,31,.66));
}
.homelab-about-copy h3{
  margin:7px 0 14px;
  font-size:clamp(24px,3vw,34px);
  line-height:1.2;
}
.homelab-about-copy p{
  color:var(--muted);
  line-height:1.7;
}
.homelab-about-photo{margin:0}
.homelab-about-photo img{
  display:block;
  width:100%;
  height:auto;
  border-radius:16px;
  border:1px solid var(--line);
}
.homelab-about-photo figcaption{
  margin-top:9px;
  color:var(--muted);
  font-size:12px;
}
@media(max-width:850px){
  .homelab-about{grid-template-columns:1fr;padding:22px}
}

/* SPD PC RC v1.0 */
.rc-wordmark{display:inline-flex;align-items:baseline;gap:7px;text-decoration:none;font-weight:900;letter-spacing:.03em;white-space:nowrap}
.rc-wordmark span{font-size:21px;color:#fff}.rc-wordmark strong{font-size:27px;color:var(--accent)}
.lang-switch,.currency-switch{display:flex;gap:6px}
.lang-switch button,.currency-switch button{border:1px solid var(--line);background:#071b2d;color:var(--muted);border-radius:8px;padding:7px 10px;font-weight:800;cursor:pointer}
.lang-switch button.active,.currency-switch button.active{background:var(--accent);color:#fff;border-color:var(--accent)}
.rc-hero-mark{width:min(100%,430px);aspect-ratio:1/1;margin-left:auto;border:1px solid rgba(75,174,255,.28);border-radius:30px;background:linear-gradient(145deg,rgba(13,41,66,.95),rgba(5,15,27,.92));display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 22px 55px rgba(0,0,0,.28)}
.rc-hero-mark span{font-size:clamp(34px,5vw,58px);font-weight:900}.rc-hero-mark strong{font-size:clamp(72px,11vw,130px);line-height:.95;color:var(--accent)}.rc-hero-mark small{margin-top:14px;letter-spacing:.3em;color:var(--muted);font-weight:800}
.two-audience{grid-template-columns:1fr 1fr}
.cross-service-card{padding:32px;border:1px solid rgba(75,174,255,.28);border-radius:22px;background:linear-gradient(135deg,rgba(13,41,66,.9),rgba(7,25,42,.76))}
.cross-service-card h2{font-size:clamp(28px,3.5vw,42px);line-height:1.15;margin:.25em 0}.cross-service-card p{max-width:850px;color:var(--muted);font-size:17px}
.news-placeholder{padding:28px;border:1px dashed rgba(75,174,255,.32);border-radius:18px;text-align:center;background:rgba(7,25,42,.45)}
footer{display:block}.footer-main{display:flex;align-items:center;justify-content:space-between;gap:28px}.footer-nav,.footer-social{display:flex;flex-wrap:wrap;gap:16px}.footer-nav a,.footer-social a{color:var(--muted);text-decoration:none;font-size:13px;font-weight:700}.footer-social{margin-top:18px;padding-top:18px;border-top:1px solid rgba(255,255,255,.06);justify-content:flex-end;align-items:center}
@media(max-width:900px){.lang-switch{margin-left:auto}.rc-hero-mark{margin:20px auto 0}.two-audience{grid-template-columns:1fr}.footer-main{align-items:flex-start;flex-direction:column}.footer-social{justify-content:flex-start}}


/* SPD PC RC — final logo sizing */
.topbar .brand img{
  height:68px !important;
  max-height:68px !important;
  width:auto !important;
  max-width:440px !important;
  object-fit:contain;
  border-radius:0;
}

footer .footer-main > a img,
footer .footer-main > img{
  width:auto;
  height:82px;
  max-width:220px;
  object-fit:contain;
  border-radius:0;
}

@media(max-width:600px){
  .topbar .brand img{
    height:58px !important;
    max-height:58px !important;
    max-width:310px !important;
  }
  footer .footer-main > a img,
  footer .footer-main > img{
    height:72px;
    max-width:190px;
  }
}


/* SPD PC RC — O SPD PC Remote Care */
.rc-about-intro{
  display:grid;
  grid-template-columns:300px minmax(0,1fr);
  gap:38px;
  align-items:center;
  margin:28px 0 34px;
}
.rc-about-photo{
  margin:0;
  padding:14px;
  border:1px solid var(--line);
  border-radius:22px;
  background:rgba(8,18,34,.76);
}
.rc-about-photo img{
  display:block;
  width:100%;
  height:auto;
  border-radius:16px;
}
.rc-about-copy h3{
  margin:0 0 16px;
  font-size:clamp(24px,3vw,34px);
  line-height:1.25;
}
.rc-about-copy p,.rc-origin p{
  color:var(--muted);
  line-height:1.75;
}
.rc-experience-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:14px;
  margin:34px 0;
}
.rc-experience-grid article{
  padding:22px;
  border:1px solid var(--line);
  border-radius:18px;
  background:rgba(8,24,40,.72);
}
.rc-experience-grid strong{
  display:block;
  margin-bottom:9px;
  font-size:17px;
  color:#fff;
}
.rc-experience-grid span{
  display:block;
  color:var(--muted);
  line-height:1.6;
  font-size:14px;
}
.rc-origin{
  margin:36px 0 0;
  padding:30px;
  border:1px solid rgba(75,174,255,.22);
  border-radius:22px;
  background:linear-gradient(135deg,rgba(12,31,51,.88),rgba(7,19,33,.72));
}
.rc-origin h3{
  margin:7px 0 14px;
  font-size:clamp(24px,3vw,34px);
}
.rc-origin-slogan{
  margin:24px 0;
  padding:22px 24px;
  border-left:3px solid var(--accent);
  border-radius:0 14px 14px 0;
  background:rgba(39,153,234,.08);
}
.rc-origin-slogan strong{
  display:block;
  font-size:clamp(18px,2.2vw,23px);
  line-height:1.5;
}
.rc-skills{margin-top:28px}

@media(max-width:900px){
  .rc-about-intro{grid-template-columns:220px minmax(0,1fr);gap:26px}
  .rc-experience-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:650px){
  .rc-about-intro{grid-template-columns:1fr}
  .rc-about-photo{max-width:280px;margin:0 auto}
  .rc-experience-grid{grid-template-columns:1fr}
  .rc-origin{padding:22px}
}

/* Footer uses the square logo */
footer .footer-main > a img{
  height:82px;
  width:82px;
  max-width:82px;
  object-fit:contain;
}
@media(max-width:600px){
  footer .footer-main > a img{
    height:72px;
    width:72px;
    max-width:72px;
  }
}


/* SPD PC RC v1.1 — Google Analytics / ustawienia prywatności */
.consent-banner[hidden]{display:none}
.consent-banner{
  position:fixed;
  z-index:1000;
  left:24px;
  right:24px;
  bottom:24px;
  max-width:980px;
  margin:0 auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  padding:22px 24px;
  border:1px solid rgba(75,174,255,.38);
  border-radius:18px;
  background:rgba(7,25,42,.98);
  box-shadow:0 18px 55px rgba(0,0,0,.48);
  backdrop-filter:blur(16px);
}
.consent-banner-copy{max-width:700px}
.consent-banner-copy strong{display:block;font-size:18px;color:#fff;margin-bottom:5px}
.consent-banner-copy p{margin:0;color:var(--muted);font-size:14px;line-height:1.55}
.consent-actions{display:flex;align-items:center;gap:10px;flex-shrink:0}
.consent-actions .button{margin-top:0}
.consent-reject,.privacy-settings{
  border:1px solid rgba(255,255,255,.18);
  background:transparent;
  color:var(--muted);
  border-radius:9px;
  padding:12px 15px;
  font:inherit;
  font-weight:750;
  cursor:pointer;
}
.consent-reject:hover,.privacy-settings:hover{color:#fff;border-color:rgba(75,174,255,.5)}
.privacy-settings{
  padding:0;
  border:0;
  border-radius:0;
  font-size:13px;
  font-weight:700;
}
@media(max-width:760px){
  .consent-banner{
    left:14px;
    right:14px;
    bottom:14px;
    align-items:stretch;
    flex-direction:column;
    gap:16px;
    padding:19px;
  }
  .consent-actions{flex-direction:column;align-items:stretch}
  .consent-actions button{width:100%}
}




/* SPD PC RC v1.2.2 — security graphics stacked */
.security-visuals .section-head{
  max-width:920px;
}
.security-visual-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:22px;
  align-items:start;
}
.security-visual-card{
  margin:0;
  overflow:hidden;
  border:1px solid rgba(75,174,255,.24);
  border-radius:20px;
  background:rgba(7,25,42,.78);
  box-shadow:0 18px 45px rgba(0,0,0,.18);
}
.security-visual-card img{
  display:block;
  width:100%;
  height:auto;
  max-height:none;
  object-fit:contain;
  background:rgba(4,15,26,.55);
}
.security-visual-card figcaption{
  padding:13px 16px;
  color:var(--muted);
  font-size:13px;
  line-height:1.55;
  border-top:1px solid rgba(255,255,255,.06);
}
.security-visual-note{
  margin-top:22px;
  padding:22px 24px;
  border-left:3px solid var(--accent);
  border-radius:0 14px 14px 0;
  background:rgba(39,153,234,.07);
}
.security-visual-note strong{
  display:block;
  font-size:18px;
}
.security-visual-note p{
  margin:7px 0 0;
  color:var(--muted);
}




/* SPD PC RC v1.2.4 — zdjęcie O mnie spójne z SPD PC Build */
.rc-about-intro{
  grid-template-columns:190px minmax(0,1fr);
  gap:30px;
  align-items:center;
}

.rc-about-photo{
  width:190px;
  margin:0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  justify-self:start;
}

.rc-about-photo img{
  display:block;
  width:170px;
  height:170px;
  object-fit:cover;
  border-radius:50%;
  border:3px solid var(--accent);
  box-shadow:0 0 0 7px rgba(35,181,255,.08);
}

@media(max-width:650px){
  .rc-about-intro{
    grid-template-columns:1fr;
    text-align:center;
  }

  .rc-about-photo{
    width:auto;
    justify-self:center;
  }

  .rc-about-photo img{
    margin:0 auto;
  }
}


/* SPD PC RC v1.2.5 — Useme */
.useme-section{padding-top:56px;padding-bottom:56px}
.useme-card{
  padding:30px;
  border:1px solid rgba(75,174,255,.28);
  border-radius:22px;
  background:linear-gradient(135deg,rgba(13,41,66,.9),rgba(7,25,42,.76));
}
.useme-card h2{
  font-size:clamp(28px,3.5vw,42px);
  line-height:1.15;
  margin:.25em 0;
}
.useme-card p{
  max-width:850px;
  color:var(--muted);
  font-size:17px;
}
.useme-actions{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:18px;
  margin-top:10px;
}
.useme-actions .button,
.useme-actions .text-link{
  margin-top:0;
}


/* SPD PC RC v1.2.6 — branding w footerze */
.footer-brand-row{
  display:flex;
  align-items:center;
  gap:14px;
}
.footer-brand-row .brand{
  margin-right:0;
  flex:0 0 auto;
}
.footer-brand-text{
  color:var(--muted);
  white-space:nowrap;
  font-size:14px;
}
.footer-brand-text a{
  color:var(--muted);
  text-decoration:none;
}
.footer-brand-text a:hover{
  color:#fff;
}
@media(max-width:520px){
  .footer-brand-row{
    align-items:flex-start;
    flex-direction:column;
    gap:8px;
  }
  .footer-brand-text{
    white-space:normal;
  }
}


/* SPD PC RC v1.2.7 — hero carousel */
.rc-hero-carousel{
  width:100%;
  max-width:470px;
  justify-self:end;
}
.rc-hero-carousel-stage{
  position:relative;
  width:100%;
  aspect-ratio:4 / 3;
  overflow:hidden;
  border-radius:24px;
  border:1px solid rgba(75,174,255,.24);
  background:rgba(4,15,26,.42);
  box-shadow:0 28px 70px rgba(0,0,0,.28);
}
.rc-hero-slide{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:contain;
  opacity:0;
  transition:opacity .5s ease;
  pointer-events:none;
  background:rgba(4,15,26,.2);
}
.rc-hero-slide.active{
  opacity:1;
  pointer-events:auto;
}
.rc-hero-logo-slide{
  padding:28px;
}
.rc-hero-arrow{
  position:absolute;
  z-index:3;
  top:50%;
  transform:translateY(-50%);
  width:42px;
  height:42px;
  border:1px solid rgba(255,255,255,.22);
  border-radius:50%;
  background:rgba(7,25,42,.72);
  color:#fff;
  font-size:28px;
  line-height:1;
  cursor:pointer;
  backdrop-filter:blur(8px);
}
.rc-hero-prev{left:12px}
.rc-hero-next{right:12px}
.rc-hero-arrow:hover{background:rgba(14,158,232,.9)}
.rc-hero-dots{
  display:flex;
  justify-content:center;
  gap:8px;
  margin-top:12px;
}
.rc-hero-dot{
  width:9px;
  height:9px;
  padding:0;
  border:0;
  border-radius:50%;
  background:rgba(255,255,255,.25);
  cursor:pointer;
}
.rc-hero-dot.active{
  background:var(--accent);
}
@media(max-width:900px){
  .rc-hero-carousel{
    max-width:560px;
    justify-self:center;
    margin:0 auto;
  }
}
@media(max-width:600px){
  .rc-hero-carousel-stage{
    border-radius:18px;
  }
  .rc-hero-logo-slide{
    padding:20px;
  }
  .rc-hero-arrow{
    width:38px;
    height:38px;
    font-size:24px;
  }
}


/* SPD PC RC v1.2.8 — wspólna sekcja Linki + prywatność */
.footer-links-section{
  margin-top:22px;
  padding-top:22px;
  border-top:1px solid rgba(255,255,255,.06);
}
.footer-links-section h3{
  margin:0 0 10px;
  font-size:18px;
  color:#fff;
}
.footer-links-row{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
  color:var(--muted);
}
.footer-links-row a{
  color:#58c4ff;
  text-decoration:none;
  font-size:14px;
  font-weight:700;
}
.footer-links-row a:hover{
  color:#fff;
}
.footer-link-icon{
  font-size:18px;
  margin-right:4px;
}
.footer-link-separator{
  color:rgba(255,255,255,.28);
}
.footer-privacy-row{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  margin-top:14px;
}
.footer-privacy-row .privacy-settings{
  border:0;
  background:transparent;
  color:var(--muted);
  padding:0;
  font:inherit;
  font-size:13px;
  font-weight:700;
  cursor:pointer;
}
.footer-privacy-row .privacy-settings:hover{
  color:#fff;
}
@media(max-width:600px){
  .footer-links-row{gap:7px}
  .footer-link-separator{display:none}
  .footer-links-row a{margin-right:8px}
}


/* SPD PC RC v1.2.9 — Facebook Aktualności */
.facebook-news-card{
  display:grid;
  grid-template-columns:minmax(0,.8fr) minmax(360px,1.2fr);
  gap:30px;
  align-items:start;
  padding:30px;
  border:1px solid rgba(75,174,255,.28);
  border-radius:22px;
  background:linear-gradient(135deg,rgba(13,41,66,.9),rgba(7,25,42,.76));
}
.facebook-news-copy h3{
  margin:7px 0 12px;
  font-size:clamp(24px,3vw,34px);
}
.facebook-news-copy p{
  color:var(--muted);
  line-height:1.7;
}
.facebook-feed-shell{
  min-height:420px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:20px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:18px;
  background:rgba(4,15,26,.5);
  overflow:hidden;
}
.facebook-feed-consent{
  max-width:520px;
  text-align:center;
}
.facebook-feed-consent strong{
  display:block;
  font-size:22px;
  margin-bottom:8px;
}
.facebook-feed-consent p{
  color:var(--muted);
  margin:0 auto;
}
.facebook-feed-container{
  width:100%;
  max-width:500px;
  margin:auto;
}
.facebook-feed-container iframe{
  display:block;
  width:100%;
  max-width:500px;
  height:700px;
  border:0;
  overflow:hidden;
  background:#fff;
}
.facebook-load-button{margin-top:20px}

@media(max-width:850px){
  .facebook-news-card{
    grid-template-columns:1fr;
    padding:22px;
  }
  .facebook-feed-shell{
    min-height:360px;
    padding:12px;
  }
}
@media(max-width:560px){
  .facebook-feed-container iframe{height:640px}
}

/* SPD PC RC v1.2.9 — footer identyczny układem z SPD PC Build */
.footer-links-section{
  margin-top:22px;
  padding-top:22px;
  border-top:1px solid rgba(255,255,255,.06);
}
.footer-links-section h3{
  margin:0 0 10px;
  font-size:18px;
  color:#fff;
}
.footer-links-row{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
  color:var(--muted);
}
.footer-links-row a{
  color:#58c4ff;
  text-decoration:none;
  font-size:14px;
  font-weight:700;
}
.footer-links-row a:hover{color:#fff}
.footer-link-icon{
  font-size:18px;
  margin-right:4px;
}
.footer-link-separator{
  color:rgba(255,255,255,.28);
}
.footer-privacy-row{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  margin-top:14px;
}
.footer-privacy-row .privacy-settings{
  border:0;
  background:transparent;
  color:var(--muted);
  padding:0;
  font:inherit;
  font-size:13px;
  font-weight:700;
  cursor:pointer;
}
.footer-privacy-row .privacy-settings:hover{color:#fff}

@media(max-width:600px){
  .footer-links-row{gap:7px}
  .footer-link-separator{display:none}
  .footer-links-row a{margin-right:8px}
}


/* Informacja handlowa — disclaimer pod cennikiem */
.commercial-disclaimer{
  margin-top:28px;
  padding:22px 24px;
  border:1px solid rgba(255,255,255,.10);
  border-left:3px solid var(--accent);
  border-radius:14px;
  background:rgba(6,18,31,.62);
}
.commercial-disclaimer p{
  margin:8px 0 0;
  color:var(--muted);
  font-size:13px;
  line-height:1.65;
}
.commercial-disclaimer strong{
  color:#fff;
}

/* SPD PC Remote Care v1.4 — wersja wielostronicowa */
.topbar nav a.current-page,
.footer-nav a.current-page{
  color:#fff;
}
.topbar nav a.current-page{
  position:relative;
}
.topbar nav a.current-page::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-9px;
  height:2px;
  border-radius:2px;
  background:var(--accent);
}
.footer-nav a.current-page{color:#58c4ff}

.site-version{
  margin-top:18px;
  padding-top:12px;
  border-top:1px solid rgba(255,255,255,.05);
  text-align:right;
  color:rgba(169,186,201,.56);
  font-size:11px;
  letter-spacing:.08em;
}

@media(max-width:900px){
  .topbar nav a.current-page::after{display:none}
}


/* v1.6 — SEO/service pages and pricing */
.hero-actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:24px}.pricing-table-wrap{overflow-x:auto;margin-top:26px}.service-pricing-table{width:100%;border-collapse:separate;border-spacing:0;background:rgba(8,18,34,.74);border:1px solid var(--line);border-radius:18px;overflow:hidden}.service-pricing-table th,.service-pricing-table td{padding:18px 20px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}.service-pricing-table th{background:rgba(13,41,66,.92);font-size:13px;letter-spacing:.06em;text-transform:uppercase}.service-pricing-table tr:last-child td{border-bottom:0}.service-pricing-table td>a:first-child{font-weight:800;color:var(--text);text-decoration:none}.service-pricing-table td>a:first-child:hover,.detail-link:hover{color:var(--accent)}.service-pricing-table small{display:block;color:var(--muted);margin-top:5px;line-height:1.45}.service-pricing-table .money{white-space:nowrap;font-size:18px}.detail-link{white-space:nowrap;text-decoration:none;color:var(--accent);font-weight:800}.pricing-note{margin:20px 0;padding:18px 20px;border-left:3px solid var(--accent);background:rgba(13,41,66,.45);border-radius:10px}.pricing-note p{margin:0;color:var(--muted);line-height:1.65}.service-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:28px}.service-detail-grid article{background:rgba(8,18,34,.76);border:1px solid var(--line);border-radius:18px;padding:26px}.service-detail-grid article h2{margin-top:0}.service-detail-grid article p{color:var(--muted);line-height:1.7}.service-detail-grid .money{font-size:28px;color:var(--text)}.service-cta{margin-top:26px}.faq-list{display:grid;gap:12px;max-width:980px}.faq-list details{background:rgba(8,18,34,.72);border:1px solid var(--line);border-radius:14px;padding:18px 20px}.faq-list summary{cursor:pointer;font-weight:800}.faq-list p{color:var(--muted);line-height:1.7;margin-bottom:0}.commercial-disclaimer{margin-top:30px}.commercial-disclaimer p{color:var(--muted);line-height:1.65}.useme-card{border:1px solid var(--line);border-radius:18px;background:rgba(8,18,34,.76);padding:28px}.useme-actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.text-link{color:var(--accent);font-weight:800;text-decoration:none}.text-link:hover{text-decoration:underline}@media(max-width:760px){.service-detail-grid{grid-template-columns:1fr}.service-pricing-table th,.service-pricing-table td{padding:14px 12px}.service-pricing-table th:nth-child(3),.service-pricing-table td:nth-child(3){display:none}}
.price-prefix,.price-unit{font-weight:800;color:var(--text)}


/* SPD PC RC v1.7-dev — kontakt zgodny z SPD PC Build */
.contact-socials{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin:16px 0 24px;
}
.contact-data .contact-social{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:58px;
  width:100%;
  margin:0;
  padding:14px 18px;
  border:0;
  border-radius:13px;
  color:#fff!important;
  text-decoration:none;
  font-size:16px;
  font-weight:900;
  box-shadow:0 10px 24px rgba(0,0,0,.16);
  transition:transform .16s ease,filter .16s ease,box-shadow .16s ease;
}
.contact-data .contact-social:hover{
  transform:translateY(-1px);
  filter:brightness(1.08);
  box-shadow:0 12px 28px rgba(0,0,0,.22);
}
.contact-social svg{
  width:24px;
  height:24px;
  flex:0 0 24px;
  fill:currentColor;
}
.contact-social-messenger{
  background:linear-gradient(135deg,#0b82ff,#1677f2);
}
.contact-social-whatsapp{
  background:linear-gradient(135deg,#10c85a,#18b956);
}
@media(max-width:560px){
  .contact-socials{grid-template-columns:1fr}
}

/* v1.7-dev — ensure readable labels on contact buttons */
.contact-data .contact-social,
.contact-data .contact-social span{
  color:#fff!important;
}

/* v1.7-dev — stronger contact button labels */
.contact-data .contact-social,
.contact-data .contact-social span{
  color:#fff!important;
  font-size:15px!important;
  font-weight:900!important;
  line-height:1.15;
}


/* Gross price notice — aligned with SPD PC Build */
.pricing-gross-note{
  margin:18px 0 24px;
  padding:14px 18px;
  border-left:3px solid var(--accent);
  border-radius:12px;
  background:rgba(25,167,255,.08);
}
.pricing-gross-note p{
  margin:0;
  color:var(--muted);
}
.pricing-gross-note strong{
  color:inherit;
}
html[data-theme="light"] .pricing-gross-note{
  background:rgba(25,167,255,.07);
}

/* Homepage hero heading matched to SPD web */
.rc-hero .hero-copy h1{
  font-size:52px;
  line-height:1.02;
  letter-spacing:-.045em;
}
@media(min-width:1800px){
  .rc-hero .hero-copy h1{font-size:54px}
}
@media(max-width:600px){
  .rc-hero .hero-copy h1{font-size:43px}
}

/* Homepage trust strip */
.rc-home-trust-section{
  max-width:var(--max);
  margin:24px auto 0;
  padding:0 24px 56px;
}
.rc-home-trust{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:14px;
  width:100%;
  margin:0;
}
.rc-home-trust article{
  padding:14px 20px;
  min-height:118px;
  border:1px solid var(--line);
  border-radius:18px;
  background:rgba(8,18,34,.72);
}
.rc-home-trust strong{
  display:block;
  margin-bottom:7px;
  font-size:16px;
}
.rc-home-trust span{
  display:block;
  color:var(--muted);
  font-size:13px;
  line-height:1.5;
}
@media(max-width:900px){
  .rc-home-trust-section{margin:32px auto 0;padding:0 24px 24px}
  .rc-home-trust{grid-template-columns:1fr 1fr}
}
@media(max-width:650px){
  .rc-home-trust{grid-template-columns:1fr}
}

/* DEV: compact homepage hero vertical layout */
.rc-hero{
  min-height:0 !important;
  padding-top:44px !important;
  padding-bottom:20px !important;
  align-items:center !important;
}
.rc-hero .hero-copy{
  align-self:center !important;
}
.rc-hero .rc-hero-carousel{
  align-self:center !important;
}
@media(max-width:900px){
  .rc-hero{
    padding-top:36px !important;
    padding-bottom:36px !important;
    align-items:start !important;
  }
  .rc-hero .hero-copy,
  .rc-hero .rc-hero-carousel{
    align-self:start !important;
  }
}



/* DEV: expanded About Remote Care — visual pattern aligned with SPD PC Build */
.about-rc .section-head .lead{
  max-width:920px;
  color:var(--muted);
  line-height:1.7;
}
.rc-bio-card{
  display:grid;
  grid-template-columns:190px 1fr;
  gap:30px;
  align-items:center;
  margin:28px 0 40px;
  padding:28px;
  border:1px solid var(--line);
  border-radius:20px;
  background:rgba(8,18,34,.76);
}
.rc-bio-photo{margin:0}
.rc-bio-photo img{
  display:block;
  width:170px;
  height:170px;
  object-fit:cover;
  border-radius:50%;
  border:3px solid var(--accent);
  box-shadow:0 0 0 7px rgba(35,181,255,.08);
}
.rc-bio-label{
  color:var(--accent);
  font-size:12px;
  font-weight:800;
  letter-spacing:.12em;
}
.rc-bio-copy h3{
  margin:4px 0 10px;
  font-size:28px;
}
.rc-bio-copy p{
  margin:8px 0;
  color:var(--muted);
  line-height:1.7;
}

.rc-professional,
.rc-foundation{
  margin:40px 0 0;
}
.rc-professional-head,
.rc-foundation-head{
  max-width:940px;
  margin-bottom:22px;
}
.rc-professional-head h3,
.rc-foundation-head h3{
  margin:7px 0 12px;
  font-size:clamp(24px,3vw,34px);
}
.rc-professional-head p,
.rc-foundation-head p{
  color:var(--muted);
  line-height:1.75;
}
.rc-professional-grid,
.rc-foundation-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:14px;
}
.rc-professional-grid article,
.rc-foundation-grid article{
  padding:24px;
  border:1px solid var(--line);
  border-radius:18px;
  background:rgba(8,18,34,.76);
}
.rc-professional-grid h4,
.rc-foundation-grid h4{
  margin:0 0 10px;
  font-size:18px;
}
.rc-professional-grid p,
.rc-foundation-grid p{
  margin:0;
  color:var(--muted);
  line-height:1.65;
  font-size:14px;
}
.rc-process{
  margin-top:18px;
  padding:24px;
  border:1px solid var(--line);
  border-radius:18px;
  background:rgba(8,18,34,.76);
  text-align:center;
}
.rc-process span{
  display:block;
  margin-bottom:8px;
  color:var(--accent);
  font-size:12px;
  font-weight:800;
  letter-spacing:.1em;
}
.rc-process strong{
  display:block;
  font-size:clamp(20px,2.6vw,30px);
  line-height:1.3;
}
.rc-process p{
  max-width:850px;
  margin:12px auto 0;
  color:var(--muted);
  line-height:1.65;
}
.rc-foundation{
  padding:30px;
  border:1px solid rgba(75,174,255,.22);
  border-radius:22px;
  background:linear-gradient(135deg,rgba(12,31,51,.64),rgba(7,19,33,.52));
}
.rc-origin{margin-top:40px}
.rc-skills{margin-top:28px}

@media(max-width:900px){
  .rc-professional-grid,
  .rc-foundation-grid{grid-template-columns:1fr}
}
@media(max-width:650px){
  .rc-bio-card{
    grid-template-columns:1fr;
    text-align:center;
  }
  .rc-bio-photo img{margin:0 auto}
  .rc-foundation{padding:22px}
}


/* DEV: exact SPD PC Build BIO card pattern */
.about-rc .bio-card{
  display:grid;
  grid-template-columns:190px 1fr;
  gap:30px;
  align-items:center;
  margin:28px 0 40px;
  padding:28px;
  border:1px solid var(--line);
  border-radius:20px;
  background:rgba(8,18,34,.76);
}
.about-rc .bio-avatar{
  width:170px;
  height:170px;
  object-fit:cover;
  border-radius:50%;
  border:3px solid var(--accent);
  box-shadow:0 0 0 7px rgba(35,181,255,.08);
}
.about-rc .bio-copy h3{
  font-size:28px;
  margin:4px 0 10px;
}
.about-rc .bio-copy p{
  color:var(--muted);
  line-height:1.7;
  margin:8px 0;
}
.about-rc .bio-label{
  color:var(--accent);
  font-size:12px;
  font-weight:800;
  letter-spacing:.12em;
}
.about-rc .rc-bio-photo{
  margin:0;
  padding:0;
  border:0;
  background:none;
}
@media(max-width:650px){
  .about-rc .bio-card{
    grid-template-columns:1fr;
    text-align:center;
  }
  .about-rc .bio-avatar{margin:0 auto}
}


/* DEV: About RC heading matched exactly to SPD PC Build section heading */
.about-rc .section-head{
  max-width:800px;
}
.about-rc .section-head h1{
  font-size:clamp(34px,4vw,52px);
  line-height:1.1;
  margin:.2em 0;
  letter-spacing:normal;
  max-width:none;
}


/* DEV: BIO body typography matched exactly to SPD PC Build */
.about-rc .bio-copy p{
  font-family:Inter,Segoe UI,Arial,sans-serif;
  font-size:16px;
  font-weight:400;
  line-height:1.7;
  color:var(--muted);
  margin:8px 0;
}


/* DEV: professional experience frame matched to SPD PC Build */
.rc-professional{
  margin:42px 0 30px;
  padding:30px;
  border:1px solid rgba(75,174,255,.22);
  border-radius:22px;
  background:linear-gradient(135deg,rgba(12,31,51,.88),rgba(7,19,33,.72));
}
.rc-professional-head{
  max-width:950px;
  margin-bottom:0;
}
.rc-professional-head h3{
  margin:7px 0 13px;
  font-size:clamp(24px,3vw,35px);
}
.rc-professional-head p,
.rc-professional-grid p,
.rc-process p{
  color:var(--muted);
  line-height:1.7;
}
.rc-professional-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:14px;
  margin:25px 0;
}
.rc-professional-grid article{
  padding:20px;
  border:1px solid var(--line);
  border-radius:16px;
  background:rgba(5,15,27,.55);
}
.rc-professional-grid h4{
  margin:0 0 8px;
  font-size:17px;
}
.rc-professional-grid p{
  margin:0;
}
.rc-process{
  margin-top:0;
  padding:22px;
  border-left:3px solid var(--accent);
  border-top:0;
  border-right:0;
  border-bottom:0;
  border-radius:0 14px 14px 0;
  background:rgba(39,153,234,.07);
  text-align:left;
}
.rc-process span{
  display:block;
  margin-bottom:7px;
  color:var(--accent);
  font-size:12px;
  font-weight:800;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.rc-process strong{
  display:block;
  font-size:clamp(16px,2vw,20px);
  line-height:1.55;
}
.rc-process p{
  max-width:none;
  margin:12px 0 0;
}
@media(max-width:800px){
  .rc-professional-grid{grid-template-columns:1fr}
  .rc-professional{padding:22px}
}


/* SPD shared layout — parity with SPD web v2.0 */
/* Geometry only: same content guides, vertical rhythm and display-heading scale
   as SPD web v2.0. Existing branding, colours, cards, hero and component styling
   remain untouched. */
:root{
  --spd-layout-frame:1180px;
  --spd-layout-gutter:24px;
  --spd-layout-content:1132px;
  --spd-section-gap:30px;
  --spd-support-gap:25px;
}

/* Common 1180 / 1132 geometry below the hero. */
main > section.section:not(.hero){
  width:100% !important;
  max-width:var(--spd-layout-frame) !important;
  margin-left:auto !important;
  margin-right:auto !important;
  padding-left:var(--spd-layout-gutter) !important;
  padding-right:var(--spd-layout-gutter) !important;
  padding-top:15px !important;
  padding-bottom:15px !important;
  display:flow-root !important;
}

/* Full-width alternate backgrounds keep their visual treatment, while their
   content lands on exactly the same 1132px guides as regular sections. */
main > section.section.alt:not(.hero){
  max-width:none !important;
  padding-left:max(
    var(--spd-layout-gutter),
    calc((100% - var(--spd-layout-frame)) / 2 + var(--spd-layout-gutter))
  ) !important;
  padding-right:max(
    var(--spd-layout-gutter),
    calc((100% - var(--spd-layout-frame)) / 2 + var(--spd-layout-gutter))
  ) !important;
}

/* First content section on subpages: same entry spacing used by SPD web.
   Homepages are unaffected because their first section is the hero. */
main > section.section:first-child:not(.hero){
  padding-top:64px !important;
}

/* Footer breathing room is separate from the inter-section rhythm. */
main > section.section:last-child:not(.hero){
  padding-bottom:56px !important;
}

/* Prevent inherited component margins from silently increasing measured gaps.
   Direct children are layout blocks; spacing between them is always 25px. */
main > section.section:not(.hero) > *,
main > section.section:not(.hero) > .container > *{
  margin-top:0 !important;
  margin-bottom:0 !important;
}
main > section.section:not(.hero) > * + *,
main > section.section:not(.hero) > .container > * + *{
  margin-top:var(--spd-support-gap) !important;
}

/* Section headings use the full visible content guide, not the older 800px cap. */
main > section.section:not(.hero) .section-head{
  width:100% !important;
  max-width:var(--spd-layout-content) !important;
  margin-left:0 !important;
  margin-right:0 !important;
}

/* 30px measured from the end of one section's content to the start of the next
   headed section: 15px bottom + 15px top. Supporting sections use 25px. */
main > section.section:not(.hero) + section.section:not(.hero):not(:has(> .section-head, > h1, > h2, > .container > .section-head)){
  padding-top:10px !important;
}

/* Display-heading scale copied from the approved SPD web v2.0 layout.
   Card/article headings are intentionally excluded. */
@media(min-width:1181px){
  main > section.section:not(.hero) .section-head h1,
  main > section.section:not(.hero) .section-head h2,
  main > section.section:not(.hero) > h1,
  main > section.section:not(.hero) > h2,
  main > section.section:not(.hero) .process > h2{
    font-size:50px !important;
    line-height:1.02 !important;
    letter-spacing:-.045em !important;
  }
}
@media(min-width:621px) and (max-width:1180px){
  main > section.section:not(.hero) .section-head h1,
  main > section.section:not(.hero) .section-head h2,
  main > section.section:not(.hero) > h1,
  main > section.section:not(.hero) > h2,
  main > section.section:not(.hero) .process > h2{
    font-size:52px !important;
    line-height:1.02 !important;
    letter-spacing:-.045em !important;
  }
}
@media(max-width:620px){
  :root{
    --spd-layout-gutter:18px;
  }
  main > section.section:not(.hero){
    max-width:100% !important;
  }
  main > section.section:first-child:not(.hero){
    padding-top:42px !important;
  }
  main > section.section:last-child:not(.hero){
    padding-bottom:42px !important;
  }
  main > section.section:not(.hero) .section-head h1,
  main > section.section:not(.hero) .section-head h2,
  main > section.section:not(.hero) > h1,
  main > section.section:not(.hero) > h2,
  main > section.section:not(.hero) .process > h2{
    font-size:clamp(36px,9.8vw,42px) !important;
    line-height:1.04 !important;
    letter-spacing:-.04em !important;
  }
}


/* SPD PC RC v1.9-dev — SEO content components */
.service-breadcrumbs{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
  font-size:13px;
  line-height:1.5;
  color:var(--muted);
}
.service-breadcrumbs a{
  color:inherit;
  text-decoration:none;
}
.service-breadcrumbs a:hover,
.service-breadcrumbs a:focus-visible{
  text-decoration:underline;
}
.seo-copy{
  max-width:900px;
}
.seo-copy h2,
.seo-related > h2{
  margin:0 0 14px;
  font-size:clamp(24px,3vw,32px);
  line-height:1.12;
}
.seo-copy p + p{
  margin-top:12px;
}
@media(max-width:620px){
  .service-breadcrumbs{font-size:12px}
}

/* Mobile horizontal overflow guard — 2026-10-02 */
html,
body{
  width:100%;
  max-width:100%;
  overflow-x:hidden;
}
@supports (overflow:clip){
  html,
  body{overflow-x:clip}
}
img,
picture,
video,
canvas,
svg,
iframe{
  max-width:100%;
}
pre{
  max-width:100%;
  overflow-x:auto;
}
@media(max-width:900px){
  main,
  header,
  footer,
  section,
  .container,
  .wrap,
  .shell,
  .section-shell{
    min-width:0;
    max-width:100%;
  }
  input,
  textarea,
  select,
  button{
    max-width:100%;
  }
}

/* SPD PC RC v1.9-dev — exact SPD web v2.0 section geometry + rhythm */
/* SPD web is the reference for page geometry:
   - 1180px master frame
   - 24px desktop gutter / 18px mobile gutter
   - 1132px visible content field
   - 30px between full headed sections
   - 25px between supporting blocks
   - 64px / 42px subpage entry spacing
   - 56px / 42px footer breathing room
   Hero styling and Remote Care branding remain independent. */
:root{
  --spd-layout-frame:1180px;
  --spd-layout-gutter:24px;
  --spd-layout-content:1132px;
  --spd-section-gap:30px;
  --spd-support-gap:25px;
}

/* Common horizontal guide below the hero. */
main > section.section:not(.hero){
  box-sizing:border-box !important;
  width:100% !important;
  max-width:var(--spd-layout-frame) !important;
  margin-left:auto !important;
  margin-right:auto !important;
  padding-left:var(--spd-layout-gutter) !important;
  padding-right:var(--spd-layout-gutter) !important;
  padding-top:15px !important;
  padding-bottom:15px !important;
  display:flow-root !important;
}

/* Preserve RC full-width alternate surfaces while keeping their content
   on the same 1132px text guides as SPD web. */
main > section.section.alt:not(.hero){
  max-width:none !important;
  padding-left:max(
    var(--spd-layout-gutter),
    calc((100% - var(--spd-layout-frame)) / 2 + var(--spd-layout-gutter))
  ) !important;
  padding-right:max(
    var(--spd-layout-gutter),
    calc((100% - var(--spd-layout-frame)) / 2 + var(--spd-layout-gutter))
  ) !important;
}

/* Neutralise inherited section-boundary margins so measured gaps are exact. */
main > section.section:not(.hero) > :first-child,
main > section.section:not(.hero) > .container > :first-child{
  margin-top:0 !important;
}
main > section.section:not(.hero) > :last-child,
main > section.section:not(.hero) > .container > :last-child{
  margin-bottom:0 !important;
}

/* Subpage entry/footer spacing copied from SPD web. */
main > section.section:first-child:not(.hero){
  padding-top:64px !important;
}
main > section.section:last-child:not(.hero){
  padding-bottom:56px !important;
}

/* Exact inter-section rhythm while keeping RC alternate surfaces continuous:
   headed section = 15px previous bottom + 15px next top = 30px,
   supporting section = 15px previous bottom + 10px next top = 25px. */
main > section.section:not(.hero) + section.section:not(.hero){
  margin-top:0 !important;
}
main > section.section:not(.hero) + section.section:not(.hero):not(:has(.section-head, h1, h2)){
  padding-top:10px !important;
}

/* Hero -> first supporting block: retain the established RC composition,
   but tie it to the shared 25px support rhythm. */
main > section.hero + section.section:not(.hero){
  margin-top:0 !important;
  padding-top:var(--spd-support-gap) !important;
}

/* Section heading -> first content block = 25px. */
main > section.section:not(.hero) .section-head{
  width:100% !important;
  max-width:var(--spd-layout-content) !important;
  margin-top:0 !important;
  margin-bottom:0 !important;
  margin-left:0 !important;
  margin-right:0 !important;
}
main > section.section:not(.hero) .section-head + *{
  margin-top:var(--spd-support-gap) !important;
}

/* Breadcrumb -> page heading and all direct supporting blocks use one
   consistent 25px internal rhythm, mirroring SPD web. */
main > section.section:not(.hero) > .service-breadcrumbs + .section-head{
  margin-top:var(--spd-support-gap) !important;
}
main > section.section:not(.hero) > * + *,
main > section.section:not(.hero) > .container > * + *{
  margin-bottom:0 !important;
}
main > section.section:not(.hero) > * + *:not(.section-head),
main > section.section:not(.hero) > .container > * + *:not(.section-head){
  margin-top:var(--spd-support-gap) !important;
}

/* Keep full-width direct content inside the common visible field. */
main > section.section:not(.hero) > :is(
  .section-head,
  .remote-cards,
  .feature3,
  .cards,
  .linkcards,
  .notice,
  .service-detail-grid,
  .service-cta,
  .seo-related,
  .pricing-gross-note,
  .pricing-table-wrap,
  .commercial-disclaimer,
  .contact-grid,
  .facebook-news-card,
  .faq-list,
  .rc-experience-grid,
  .rc-bio-card,
  .bio-card,
  .rc-professional,
  .rc-foundation,
  .rc-origin,
  .security-visuals,
  .useme-card
){
  width:100% !important;
  max-width:var(--spd-layout-content) !important;
  margin-left:0 !important;
  margin-right:0 !important;
}

/* Display-heading scale already approved on SPD web. */
@media(min-width:1181px){
  main > section.section:not(.hero) .section-head h1,
  main > section.section:not(.hero) .section-head h2,
  main > section.section:not(.hero) > h1,
  main > section.section:not(.hero) > h2,
  main > section.section:not(.hero) .process > h2{
    font-size:50px !important;
    line-height:1.02 !important;
    letter-spacing:-.045em !important;
  }
}
@media(min-width:621px) and (max-width:1180px){
  main > section.section:not(.hero) .section-head h1,
  main > section.section:not(.hero) .section-head h2,
  main > section.section:not(.hero) > h1,
  main > section.section:not(.hero) > h2,
  main > section.section:not(.hero) .process > h2{
    font-size:52px !important;
    line-height:1.02 !important;
    letter-spacing:-.045em !important;
  }
}

@media(max-width:620px){
  :root{
    --spd-layout-gutter:18px;
  }
  main > section.section:not(.hero){
    max-width:100% !important;
  }
  main > section.section:first-child:not(.hero){
    padding-top:42px !important;
  }
  main > section.section:last-child:not(.hero){
    padding-bottom:42px !important;
  }
  main > section.section:not(.hero) .section-head h1,
  main > section.section:not(.hero) .section-head h2,
  main > section.section:not(.hero) > h1,
  main > section.section:not(.hero) > h2,
  main > section.section:not(.hero) .process > h2{
    font-size:clamp(36px,9.8vw,42px) !important;
    line-height:1.04 !important;
    letter-spacing:-.04em !important;
  }
}



/* SPD PC RC v1.9-dev — lightweight SPD web background treatment */
/* Replaces the 1.49 MB global background PNG with CSS-only decoration.
   This follows the SPD web background pattern and reduces first-load transfer
   without changing Remote Care branding. */
body:after{
  content:"";
  position:fixed;
  inset:0;
  z-index:-1;
  pointer-events:none;
  opacity:.045;
  background-image:
    repeating-radial-gradient(circle at 88% 18%,transparent 0 76px,rgba(88,199,255,.70) 77px 78px,transparent 79px 120px),
    conic-gradient(from 0deg at 88% 18%,transparent 0 8deg,rgba(88,199,255,.70) 8.4deg 8.9deg,transparent 9.2deg 29deg,rgba(88,199,255,.65) 29.4deg 29.9deg,transparent 30.2deg 51deg,rgba(88,199,255,.55) 51.4deg 51.9deg,transparent 52.2deg 74deg,rgba(88,199,255,.60) 74.4deg 74.9deg,transparent 75.2deg 360deg);
}

/* SPD PC RC v1.9-dev — header/footer frame + compact hero composition */
/* Header and footer use the same 1132px visual guide as SPD web content.
   RC has longer nav labels, so desktop navigation gaps are tightened without
   changing font scale or switching to the mobile menu prematurely. */
:root{
  --rc-chrome-frame:1132px;
}

.topbar{
  width:100% !important;
  max-width:none !important;
  padding-left:max(24px,calc((100vw - var(--rc-chrome-frame)) / 2)) !important;
  padding-right:max(24px,calc((100vw - var(--rc-chrome-frame)) / 2)) !important;
}

@media(min-width:901px){
  .topbar{
    gap:18px !important;
  }
  .topbar nav{
    gap:16px !important;
    margin-left:auto !important;
  }
  .topbar .brand{
    margin-right:0 !important;
  }
}

/* Full footer surface, but every visual element — including the square logo —
   lands on exactly the same left/right guides as the header. */
footer{
  width:100% !important;
  max-width:none !important;
  margin-left:0 !important;
  margin-right:0 !important;
  padding-left:max(24px,calc((100vw - var(--rc-chrome-frame)) / 2)) !important;
  padding-right:max(24px,calc((100vw - var(--rc-chrome-frame)) / 2)) !important;
}
footer > .footer-main,
footer > .footer-links-section,
footer > .site-version{
  width:100% !important;
  max-width:var(--rc-chrome-frame) !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

/* Lift the action row by roughly one text line. The generic .button rule adds
   its own 22px top margin, so neutralising it here is the key correction. */
@media(min-width:901px){
  .rc-hero .hero-actions{
    margin-top:4px !important;
  }
  .rc-hero .hero-actions .button{
    margin-top:0 !important;
  }

  /* Lift the four competence cards by the same visual step. */
  .rc-hero{
    padding-bottom:0 !important;
  }
  .rc-hero + .rc-home-trust-section{
    margin-top:0 !important;
    padding-top:0 !important;
  }
}

@media(max-width:900px){
  .topbar,
  footer{
    padding-left:18px !important;
    padding-right:18px !important;
  }
}

/* SPD PC RC v1.9-dev — trust strip breathing room + header logo optical shift */
.topbar > .brand{
  transform:translateX(-8px) !important;
}

/* Two empty text-line equivalents below the four competence cards before
   the next headed section starts. Higher specificity is required because the
   global SPD web rhythm rule also sets section padding with !important. */
main > section.section.rc-home-trust-section:not(.hero){
  padding-bottom:58px !important;
}

/* SPD PC Remote Care — hero CTA vertical alignment */
@media(min-width:621px){
  .rc-hero .hero-actions{
    display:flex !important;
    align-items:center !important;
    flex-wrap:nowrap !important;
  }
  .rc-hero .hero-actions .button,
  .rc-hero .hero-actions .text-link{
    margin-top:0 !important;
    white-space:nowrap !important;
  }
}

/* SPD PC Remote Care — homepage location accent */
.rc-hero .hero-copy h1 .hero-heading-accent{
  color:#1aa9f2 !important;
}

/* SPD motion — wjazd treści przy przewijaniu (klasy nadaje skrypt tylko poza pierwszym ekranem) */
.motion-reveal{
  opacity:0;
  transform:translate3d(0,34px,0) scale(.97);
  filter:blur(6px);
  transition:opacity .75s cubic-bezier(.2,.65,.3,1) var(--motion-delay,0ms),transform .75s cubic-bezier(.2,.65,.3,1) var(--motion-delay,0ms),filter .75s cubic-bezier(.2,.65,.3,1) var(--motion-delay,0ms)!important;
}
.motion-reveal.is-in{opacity:1;transform:none;filter:none}
@keyframes motion-faq-in{from{opacity:0;transform:translate3d(0,-6px,0)}to{opacity:1;transform:none}}
.faq-list details[open]>:not(summary){animation:motion-faq-in .35s cubic-bezier(.2,.65,.3,1) both}
@media(prefers-reduced-motion:reduce){
  .motion-reveal{opacity:1!important;transform:none!important;filter:none!important;transition:none!important}
  .faq-list details[open]>:not(summary){animation:none}
}
@media print{.motion-reveal{opacity:1!important;transform:none!important;filter:none!important}}
/* SPD motion — płynne przejścia istniejących efektów hover (wygląd stanu hover bez zmian) */
.linkcards>a{transition:border-color .2s ease,transform .2s ease}
.related-services-grid a,.quick-contact a{transition:border-color .2s ease,color .2s ease}
.button{transition:filter .2s ease}

/* SPD wow — efekty hero i kart (klasy nadaje skrypt; przy „ogranicz ruch” nic się nie uruchamia) */
@keyframes wow-word{from{opacity:.01;transform:translate3d(0,.55em,0) rotate(4deg);filter:blur(10px)}}
@keyframes wow-unit{from{opacity:.01;filter:blur(10px)}}
@keyframes wow-rise{from{opacity:.01;transform:translate3d(0,26px,0);filter:blur(8px)}}
@keyframes wow-visual{from{opacity:.01;transform:perspective(1100px) translate3d(0,40px,0) rotateX(8deg) scale(.9);filter:blur(12px)}}
@keyframes wow-fade{from{opacity:0}}
@keyframes wow-shimmer{from{background-position:100% 0}to{background-position:0 0}}
@keyframes wow-mark{to{background-size:100% .36em}}
@keyframes wow-shine{0%,72%{transform:translateX(-130%)}100%{transform:translateX(130%)}}
wow-w,wow-m{font:inherit;color:inherit}
.wow-word{display:inline-block;animation:wow-word .9s cubic-bezier(.2,.7,.2,1) var(--wow-d,0ms) backwards}
.wow-unit{animation:wow-unit .9s cubic-bezier(.2,.7,.2,1) var(--wow-d,0ms) backwards}
.wow-rise{animation:wow-rise .85s cubic-bezier(.2,.7,.2,1) var(--wow-d,0ms) backwards}
.wow-visual{animation:wow-visual 1.3s cubic-bezier(.2,.7,.2,1) var(--wow-d,0ms) backwards}
.wow-accent{background-image:linear-gradient(90deg,#1aa9f2 0%,#1aa9f2 38%,#bdf0ff 50%,#1aa9f2 62%,#1aa9f2 100%);background-size:300% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:wow-shimmer 4.5s linear infinite}
.wow-accent.wow-unit{animation:wow-unit .9s cubic-bezier(.2,.7,.2,1) var(--wow-d,0ms) backwards,wow-shimmer 4.5s linear 1.4s infinite}
.wow-mark{background-image:linear-gradient(transparent,transparent);background-repeat:no-repeat;background-position:0 90%;background-size:0% .36em;-webkit-box-decoration-break:clone;box-decoration-break:clone}
.wow-mark.wow-mark-on{animation:wow-mark 1s cubic-bezier(.6,.05,.3,1) var(--wow-m,0ms) forwards}
.wow-host{position:relative;isolation:isolate}
.wow-net{position:absolute;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none;animation:wow-fade 2s ease .2s backwards;-webkit-mask-image:linear-gradient(90deg,rgba(0,0,0,.45),#000 55%),linear-gradient(#000 80%,transparent);-webkit-mask-composite:source-in;mask-image:linear-gradient(90deg,rgba(0,0,0,.45),#000 55%),linear-gradient(#000 80%,transparent);mask-composite:intersect}
.wow-glow{position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:0;transition:opacity .6s ease;background:radial-gradient(560px circle at var(--gx,50%) var(--gy,50%),rgba(14,158,232,.16),transparent 65%)}
.wow-glow.is-on{opacity:1}
.wow-glow-page{position:fixed!important;inset:0;z-index:15;mix-blend-mode:screen;background:radial-gradient(720px circle at var(--gx,50%) var(--gy,50%),rgba(14,158,232,.22),rgba(14,158,232,.08) 40%,transparent 70%)}
.wow-hero-tilt{transition:transform .4s cubic-bezier(.2,.7,.2,1);will-change:transform}
.wow-progress{position:fixed;left:0;top:0;width:100%;height:3px;z-index:9999;pointer-events:none;transform:scaleX(0);transform-origin:0 50%;background:linear-gradient(90deg,#0e9ee8,#6fd3ff);box-shadow:0 0 12px rgba(14,158,232,.6)}
.wow-tilt{transition:transform .25s cubic-bezier(.2,.7,.2,1)!important;will-change:transform}
.wow-shine{position:relative;overflow:hidden}
.wow-shine::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(105deg,transparent 30%,rgba(255,255,255,.5) 50%,transparent 70%);transform:translateX(-130%);animation:wow-shine 5s ease-in-out 2.4s infinite}
@media(prefers-reduced-motion:reduce){.wow-word,.wow-unit,.wow-rise,.wow-visual,.wow-accent,.wow-mark,.wow-shine::after,.wow-net{animation:none!important}.wow-net,.wow-glow,.wow-progress{display:none}}
@media print{.wow-progress,.wow-net,.wow-glow{display:none}}

/* designed by SPD web — dopisek obok numeru wersji w stopce */
.version-row{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;width:100%;max-width:var(--max,1180px);margin:18px auto 0;padding-top:12px;border-top:1px solid rgba(255,255,255,.05);color:rgba(169,186,201,.56);font-size:11px;letter-spacing:.08em}
.version-row > .site-version{margin:0!important;padding:0!important;border:0!important;width:auto!important}
.designed-by{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;color:inherit}
.designed-by a{display:inline-flex;align-items:center;color:inherit;text-decoration:none}
.designed-by img{width:14px;height:14px;border-radius:3px;vertical-align:middle}

footer .version-row{width:100%!important;max-width:var(--rc-chrome-frame,var(--max,1180px))!important;margin-left:auto!important;margin-right:auto!important}
