/* =========================================================
   SysTech — zwarta podstrona usługowa
   ========================================================= */

.service-page {
  background: #fff;
  color: #171717;
}

.service-page .container {
  max-width: 1280px;
}

.service-breadcrumbs {
  max-width: 1280px;
  margin: 0 auto;
  padding: 16px 22px 8px;
  color: #78818a;
  font-size: .78rem;
}

.service-breadcrumbs a {
  color: inherit;
  text-decoration: none;
}

.service-breadcrumbs a:hover { color:#ef1d24; }
.service-breadcrumbs span { margin:0 7px; color:#aeb4ba; }

.svc-hero {
  background: linear-gradient(90deg,#fff 0%,#f7f9fb 48%,#eef3f7 100%);
  border-bottom: 1px solid #e5eaee;
}

.svc-hero__grid {
  display:grid;
  grid-template-columns: minmax(0,.88fr) minmax(500px,1.12fr);
  min-height: 390px;
}

.svc-hero__copy {
  padding: 22px 34px 22px 0;
  align-self:center;
}

.svc-kicker {
  margin:0 0 8px;
  color:#ef1d24;
  font-size:.84rem;
  line-height:1;
  font-weight:800;
  letter-spacing:.035em;
}

.svc-hero h1 {
  max-width:650px;
  margin:0 0 10px;
  color:#15191d;
  font-family:"Rubik",Arial,sans-serif;
  font-size:clamp(2.15rem,4vw,3.35rem);
  line-height:1.02;
  letter-spacing:-.035em;
}

.svc-lead {
  max-width:665px;
  margin:0;
  color:#58636d;
  font-size:.95rem;
  line-height:1.52;
}

.svc-hero__actions {
  display:flex;
  gap:12px;
  margin-top:17px;
  flex-wrap:wrap;
}

.svc-btn {
  min-width:178px;
  min-height:48px;
  padding:8px 14px;
  border-radius:7px;
  display:inline-flex;
  align-items:center;
  gap:10px;
  text-decoration:none;
  transition:.18s ease;
}

.svc-btn:hover { transform:translateY(-1px); text-decoration:none; }

.svc-btn__icon {
  font-size:1.45rem;
  line-height:1;
}

.svc-btn strong,
.svc-btn small {
  display:block;
}

.svc-btn strong { font-size:.88rem; line-height:1.1; }
.svc-btn small { margin-top:2px; font-size:.72rem; font-weight:500; }

.svc-btn--primary {
  background:#ef1d24;
  color:#fff;
  box-shadow:0 6px 18px rgba(239,29,36,.18);
}
.svc-btn--primary:hover { color:#fff; background:#d9181f; }

.svc-btn--outline {
  border:1px solid #bac5ce;
  background:#fff;
  color:#1e252b;
}
.svc-btn--outline:hover { color:#ef1d24; border-color:#ef1d24; }

.svc-benefits {
  display:flex;
  gap:24px;
  margin-top:18px;
  flex-wrap:wrap;
}

.svc-benefits > div {
  display:flex;
  align-items:center;
  gap:8px;
}

.svc-benefits > div > span {
  width:30px;
  height:30px;
  border:1px solid #d7dfe5;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#ef1d24;
  font-weight:800;
}

.svc-benefits p {
  margin:0;
  color:#2f3840;
  font-size:.74rem;
  line-height:1.18;
  font-weight:700;
}
.svc-benefits small { color:#7b858d; font-weight:500; }

.svc-hero__visual {
  position:relative;
  min-height:390px;
  overflow:hidden;
}

.svc-hero__visual > img {
  width:100%;
  height:100%;
  min-height:390px;
  object-fit:cover;
  display:block;
}

.svc-hero__visual::before {
  content:"";
  position:absolute;
  z-index:1;
  inset:0 auto 0 0;
  width:110px;
  background:linear-gradient(90deg,#f7f9fb 0%,rgba(247,249,251,0) 100%);
}

.svc-hero__panel {
  position:absolute;
  z-index:2;
  right:22px;
  top:50%;
  transform:translateY(-50%);
  width:115px;
  padding:14px 10px;
  border-radius:8px;
  background:rgba(255,255,255,.92);
  box-shadow:0 8px 28px rgba(20,30,40,.16);
  backdrop-filter:blur(8px);
}

.svc-hero__panel div {
  padding:10px 4px;
  text-align:center;
  border-bottom:1px solid #e5e9ed;
}
.svc-hero__panel div:last-child { border-bottom:0; }
.svc-panel-icon {
  display:block;
  margin-bottom:5px;
  color:#ef1d24;
  font-size:1.55rem;
}
.svc-hero__panel strong {
  display:block;
  font-size:.68rem;
  line-height:1.2;
}

.svc-section {
  padding:24px 0;
}

.svc-section--soft {
  background:#f6f8fa;
  border-top:1px solid #eef1f3;
  border-bottom:1px solid #eef1f3;
}

.svc-section-title {
  margin-bottom:14px;
  text-align:center;
}
.svc-section-title h2,
.svc-section-head-row h2,
.svc-box h2 {
  margin:0;
  color:#171b1f;
  font-size:1.5rem;
  line-height:1.15;
}
.svc-section-title p,
.svc-section-head-row p {
  margin:4px 0 0;
  color:#7a858e;
  font-size:.82rem;
}

.svc-five {
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:9px;
}

.svc-feature {
  padding:16px 13px;
  border:1px solid #e2e8ec;
  border-radius:7px;
  background:#fff;
  text-align:center;
  box-shadow:0 4px 14px rgba(25,35,45,.035);
}

.svc-feature__icon {
  height:36px;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#ef1d24;
  font-size:2rem;
  line-height:1;
  font-weight:400;
}

.svc-feature h3 {
  margin:8px 0 6px;
  color:#22282e;
  font-size:.92rem;
  line-height:1.2;
}

.svc-feature p {
  margin:0;
  color:#68737c;
  font-size:.76rem;
  line-height:1.42;
}

.svc-process {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:24px;
}

.svc-process article {
  position:relative;
  display:grid;
  grid-template-columns:38px 1fr;
  gap:10px;
  align-items:start;
}

.svc-process article:not(:last-child)::after {
  content:"›";
  position:absolute;
  right:-16px;
  top:16px;
  color:#aeb8c1;
  font-size:2rem;
  line-height:1;
}

.svc-step {
  width:34px;
  height:34px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#ef1d24;
  color:#fff;
  font-size:.85rem;
  font-weight:800;
}

.svc-process h3 {
  margin:2px 0 4px;
  color:#242a30;
  font-size:.9rem;
}
.svc-process p {
  margin:0;
  color:#6d7881;
  font-size:.76rem;
  line-height:1.4;
}

.svc-section-head-row {
  display:flex;
  justify-content:space-between;
  gap:18px;
  align-items:end;
  margin-bottom:11px;
}

.svc-small-link {
  flex:0 0 auto;
  padding:7px 11px;
  border:1px solid #ef1d24;
  border-radius:6px;
  color:#ef1d24;
  font-size:.76rem;
  font-weight:700;
  text-decoration:none;
}
.svc-small-link:hover { background:#ef1d24; color:#fff; text-decoration:none; }

/* Praktyczna diagnostyka */
.svc-symptoms {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:9px;
}

.svc-symptoms article {
  display:grid;
  grid-template-columns:34px 1fr;
  gap:9px;
  align-items:start;
  padding:12px;
  border:1px solid #e2e8ec;
  border-radius:7px;
  background:#fff;
}

.svc-symptoms article > span {
  width:31px;
  height:31px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  background:rgba(239,29,36,.08);
  color:#ef1d24;
  font-size:.9rem;
  font-weight:800;
}

.svc-symptoms h3 {
  margin:0 0 4px;
  color:#2b3238;
  font-size:.8rem;
  line-height:1.25;
}

.svc-symptoms p {
  margin:0;
  color:#6c7780;
  font-size:.74rem;
  line-height:1.42;
}

.svc-diagnostics__note {
  margin:11px 0 0;
  padding:10px 12px;
  border-left:3px solid #ef1d24;
  background:rgba(239,29,36,.035);
  color:#56616a;
  font-size:.77rem;
  line-height:1.45;
}

.svc-faq--wide {
  max-width:980px;
  margin:0 auto;
}

.svc-realizations-section {
  padding-top:20px;
  padding-bottom:20px;
}

.svc-gallery {
  display:grid;
  grid-template-columns:minmax(0,1.62fr) minmax(260px,.68fr);
  gap:12px;
  align-items:stretch;
}

.svc-gallery__main {
  height:clamp(500px,42vw,620px);
  min-width:0;
  overflow:hidden;
  border:1px solid #e0e6ea;
  border-radius:8px;
  background:#f4f6f7;
}

.svc-gallery__main img {
  width:100%;
  height:100%;
  object-fit:contain;
  display:block;
}

.svc-gallery__thumbs {
  height:clamp(500px,42vw,620px);
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  grid-template-rows:repeat(5,minmax(0,1fr));
  gap:8px;
  min-width:0;
}

.svc-gallery__thumb {
  min-width:0;
  min-height:0;
  margin:0;
  padding:0;
  overflow:hidden;
  border:1px solid #dce3e7;
  border-radius:7px;
  background:#fff;
  cursor:pointer;
  transition:border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.svc-gallery__thumb:hover,
.svc-gallery__thumb:focus-visible {
  border-color:#ef1d24;
  outline:none;
}

.svc-gallery__thumb.is-active {
  border-color:#ef1d24;
  box-shadow:0 0 0 2px rgba(239,29,36,.16);
}

.svc-gallery__thumb img {
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

@media (max-width:900px) {
  .svc-gallery {
    grid-template-columns:1fr;
  }

  .svc-gallery__main {
    height:clamp(360px,70vw,560px);
  }

  .svc-gallery__thumbs {
    height:auto;
    display:flex;
    gap:8px;
    overflow-x:auto;
    padding:1px 1px 7px;
    scroll-snap-type:x proximity;
    scrollbar-width:thin;
  }

  .svc-gallery__thumb {
    flex:0 0 105px;
    height:76px;
    scroll-snap-align:start;
  }
}

@media (max-width:560px) {
  .svc-gallery__main {
    height:clamp(330px,92vw,500px);
  }

  .svc-gallery__thumb {
    flex-basis:92px;
    height:68px;
  }
}

html.theme-dark .svc-gallery__main,
html.theme-dark .svc-gallery__thumb {
  background:#191f26;
  border-color:rgba(255,255,255,.09);
}


.svc-bottom-grid {
  display:grid;
  grid-template-columns:1.05fr .9fr .85fr;
  gap:18px;
  align-items:start;
}

.svc-box {
  min-width:0;
}

.svc-box > h2 { margin-bottom:8px; font-size:1.2rem; }
.svc-box__lead {
  margin:0 0 10px;
  color:#78838c;
  font-size:.78rem;
}

.svc-faq {
  display:grid;
  gap:6px;
}

.svc-faq details {
  border:1px solid #e0e6ea;
  border-radius:6px;
  background:#fff;
}

.svc-faq summary {
  position:relative;
  padding:9px 34px 9px 10px;
  color:#30373d;
  font-size:.76rem;
  font-weight:700;
  cursor:pointer;
  list-style:none;
}
.svc-faq summary::-webkit-details-marker { display:none; }
.svc-faq summary::after {
  content:"⌄";
  position:absolute;
  right:10px;
  top:7px;
  color:#69757e;
}
.svc-faq details[open] summary::after { content:"⌃"; }
.svc-faq p {
  margin:0;
  padding:0 10px 10px;
  color:#69747d;
  font-size:.74rem;
  line-height:1.45;
}

.svc-places {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:7px;
}

.svc-places span {
  position:relative;
  padding:7px 8px 7px 23px;
  border:1px solid #e1e6ea;
  border-radius:6px;
  background:#fff;
  color:#4d5861;
  font-size:.74rem;
}

.svc-places span::before {
  content:"•";
  position:absolute;
  left:10px;
  color:#ef1d24;
  font-size:1.1rem;
  line-height:.7;
}

.svc-why-box {
  max-width:980px;
  margin:0 auto;
}

.svc-why-box .svc-why {
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}

.svc-why-box .svc-why > div {
  border-bottom:0;
  padding:6px 0;
}

.svc-why {
  display:grid;
  gap:8px;
}

.svc-why > div {
  display:grid;
  grid-template-columns:28px 1fr;
  gap:8px;
  align-items:start;
  padding:8px 0;
  border-bottom:1px solid #edf0f2;
}
.svc-why > div:last-child { border-bottom:0; }
.svc-why > div > span {
  width:25px;
  height:25px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  background:rgba(239,29,36,.08);
  color:#ef1d24;
  font-weight:800;
}
.svc-why p { margin:0; }
.svc-why strong {
  display:block;
  color:#30373d;
  font-size:.77rem;
}
.svc-why small {
  display:block;
  margin-top:2px;
  color:#7c868f;
  font-size:.71rem;
  line-height:1.35;
}

.svc-contact-strip {
  background:linear-gradient(100deg,#1c2329 0%,#2a333a 100%);
  color:#fff;
}

.svc-contact-strip__grid {
  min-height:98px;
  display:grid;
  grid-template-columns:280px 1fr 230px;
  gap:22px;
  align-items:center;
}

.svc-contact-call {
  display:flex;
  align-items:center;
  gap:11px;
}
.svc-contact-phone-icon {
  color:#ef1d24;
  font-size:2.2rem;
}
.svc-contact-call small,
.svc-contact-call strong {
  display:block;
}
.svc-contact-call small {
  color:#ccd3d8;
  font-size:.76rem;
}
.svc-contact-call strong {
  margin-top:2px;
  font-size:1.12rem;
}

.svc-mini-form {
  display:grid;
  grid-template-columns:1fr 1fr 1.25fr auto;
  gap:7px;
}
.svc-mini-form input {
  min-width:0;
  height:36px;
  border:0;
  border-radius:5px;
  padding:0 10px;
  font:inherit;
  font-size:.72rem;
}
.svc-mini-form button {
  height:36px;
  padding:0 14px;
  border:0;
  border-radius:5px;
  background:#ef1d24;
  color:#fff;
  font:inherit;
  font-size:.75rem;
  font-weight:700;
  cursor:pointer;
}
.svc-honey {
  position:absolute !important;
  left:-9999px !important;
  opacity:0 !important;
}

.svc-contact-benefits {
  display:grid;
  gap:6px;
  color:#d8dde1;
  font-size:.73rem;
}

/* Dark mode */
html.theme-dark .service-page { background:#11161b; color:#eef2f5; }
html.theme-dark .service-breadcrumbs { color:#98a3ac; }
html.theme-dark .svc-hero {
  background:linear-gradient(90deg,#11161b 0%,#151b20 48%,#11161b 100%);
  border-color:rgba(255,255,255,.06);
}
html.theme-dark .svc-hero h1,
html.theme-dark .svc-section-title h2,
html.theme-dark .svc-section-head-row h2,
html.theme-dark .svc-box h2,
html.theme-dark .svc-feature h3,
html.theme-dark .svc-process h3,
html.theme-dark .svc-realizations strong,
html.theme-dark .svc-symptoms h3,
html.theme-dark .svc-faq summary,
html.theme-dark .svc-why strong {
  color:#f5f7f9;
}
html.theme-dark .svc-lead,
html.theme-dark .svc-section-title p,
html.theme-dark .svc-section-head-row p,
html.theme-dark .svc-feature p,
html.theme-dark .svc-process p,
html.theme-dark .svc-symptoms p,
html.theme-dark .svc-diagnostics__note,
html.theme-dark .svc-box__lead,
html.theme-dark .svc-faq p,
html.theme-dark .svc-why small {
  color:#b9c3cb;
}
html.theme-dark .svc-section--soft {
  background:#151b21;
  border-color:rgba(255,255,255,.05);
}
html.theme-dark .svc-feature,
html.theme-dark .svc-symptoms article,
html.theme-dark .svc-realizations figure,
html.theme-dark .svc-faq details,
html.theme-dark .svc-places span {
  background:#191f26;
  border-color:rgba(255,255,255,.08);
}
html.theme-dark .svc-places span { color:#c5cdd4; }
html.theme-dark .svc-diagnostics__note { background:rgba(239,29,36,.06); }
html.theme-dark .svc-btn--outline {
  background:#191f26;
  border-color:rgba(255,255,255,.14);
  color:#f3f5f7;
}
html.theme-dark .svc-benefits p { color:#f0f3f5; }
html.theme-dark .svc-benefits small { color:#aeb7bf; }
html.theme-dark .svc-benefits > div > span { border-color:rgba(255,255,255,.12); }
html.theme-dark .svc-hero__visual::before {
  background:linear-gradient(90deg,#151b20 0%,rgba(21,27,32,0) 100%);
}
html.theme-dark .svc-hero__panel {
  background:rgba(22,28,34,.9);
  color:#fff;
}

@media (max-width:1080px) {
  .svc-hero__grid {
    grid-template-columns:minmax(0,.95fr) minmax(420px,1.05fr);
  }
  .svc-five { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .svc-symptoms { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .svc-five .svc-feature:nth-child(n+4) { grid-column:auto; }
  .svc-contact-strip__grid { grid-template-columns:240px 1fr; }
  .svc-contact-benefits { display:none; }
}

@media (max-width:820px) {
  .service-breadcrumbs { padding-left:16px; padding-right:16px; }
  .svc-hero__grid { grid-template-columns:1fr; }
  .svc-hero__copy { padding:16px 0 20px; }
  .svc-hero__visual,
  .svc-hero__visual > img { min-height:320px; }
  .svc-hero__visual::before {
    inset:0 0 auto 0;
    width:auto;
    height:80px;
    background:linear-gradient(180deg,#f7f9fb 0%,rgba(247,249,251,0) 100%);
  }
  html.theme-dark .svc-hero__visual::before {
    background:linear-gradient(180deg,#151b20 0%,rgba(21,27,32,0) 100%);
  }
  .svc-hero__panel { width:105px; right:12px; }
  .svc-five { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .svc-process { grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
  .svc-process article::after { display:none; }
  .svc-bottom-grid { grid-template-columns:1fr; }
  .svc-why-box .svc-why { grid-template-columns:1fr; gap:4px; }
  .svc-contact-strip__grid { grid-template-columns:1fr; padding:18px 0; }
  .svc-mini-form { grid-template-columns:1fr 1fr; }
}

@media (max-width:560px) {
  .svc-hero h1 { font-size:2rem; }
  .svc-hero__actions { display:grid; }
  .svc-btn { width:100%; }
  .svc-benefits { gap:12px; }
  .svc-five,
  .svc-process,
  .svc-symptoms,
  .svc-realizations { grid-template-columns:1fr; }
  .svc-section-head-row { align-items:flex-start; flex-direction:column; }
  .svc-mini-form { grid-template-columns:1fr; }
  .svc-contact-strip__grid { padding:16px 0; }
}

/* =========================================================
   Układ podstrony — spójniejszy przepływ treści 2026-09-24
   ========================================================= */
.svc-diagnostics .svc-section-title {
  max-width:820px;
  margin-left:auto;
  margin-right:auto;
}

.svc-symptoms {
  gap:10px;
}

.svc-symptoms article {
  min-height:92px;
  padding:13px 14px;
  grid-template-columns:36px 1fr;
  gap:10px;
  align-items:center;
  box-shadow:0 3px 12px rgba(25,35,45,.025);
}

.svc-symptoms article > span {
  width:34px;
  height:34px;
  flex:0 0 34px;
}

.svc-symptoms h3 {
  margin:0 0 3px;
  font-size:.86rem;
  line-height:1.25;
}

.svc-symptoms p {
  font-size:.72rem;
  line-height:1.35;
}

.svc-diagnostics__note {
  display:flex;
  gap:8px;
  align-items:baseline;
  max-width:920px;
  margin:12px auto 0;
  padding:9px 12px;
  border-left:3px solid #ef1d24;
  border-radius:0 5px 5px 0;
}

.svc-diagnostics__note strong {
  flex:0 0 auto;
  color:#30373d;
  font-size:.78rem;
}

.svc-diagnostics__note span {
  color:#69747d;
  font-size:.75rem;
  line-height:1.4;
}

.svc-bottom-section {
  padding-top:26px;
  padding-bottom:28px;
}

.svc-info-grid {
  display:grid;
  grid-template-columns:minmax(0,1.55fr) minmax(300px,.75fr);
  gap:24px;
  align-items:start;
}

.svc-section-title--left {
  text-align:left;
  margin-bottom:12px;
}

.svc-faq-column .svc-faq {
  gap:7px;
}

.svc-faq-column .svc-faq details {
  box-shadow:0 2px 10px rgba(25,35,45,.02);
}

.svc-contact-box {
  padding:20px;
  border-radius:9px;
  background:linear-gradient(145deg,#1c2329 0%,#2a333a 100%);
  color:#fff;
  box-shadow:0 10px 28px rgba(20,30,40,.10);
}

.svc-contact-box__eyebrow {
  display:block;
  margin-bottom:5px;
  color:#ef1d24;
  font-size:.72rem;
  line-height:1;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.05em;
}

.svc-contact-box h2 {
  margin:0;
  color:#fff;
  font-size:1.35rem;
  line-height:1.15;
}

.svc-contact-box > p {
  margin:8px 0 14px;
  color:#c8d0d6;
  font-size:.78rem;
  line-height:1.45;
}

.svc-contact-box__phone {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  min-height:43px;
  margin-bottom:12px;
  border-radius:6px;
  background:#ef1d24;
  color:#fff;
  text-decoration:none;
}

.svc-contact-box__phone:hover {
  background:#d9181f;
  color:#fff;
  text-decoration:none;
}

.svc-contact-box__phone span {
  font-size:1.15rem;
}

.svc-contact-box__phone strong {
  font-size:1rem;
}

.svc-contact-form {
  display:grid;
  gap:7px;
}

.svc-contact-form input,
.svc-contact-form textarea {
  width:100%;
  min-width:0;
  border:1px solid rgba(255,255,255,.12);
  border-radius:5px;
  background:#fff;
  color:#20262b;
  padding:9px 10px;
  font:inherit;
  font-size:.74rem;
  box-sizing:border-box;
}

.svc-contact-form textarea {
  resize:vertical;
  min-height:72px;
}

.svc-contact-form button {
  min-height:38px;
  border:0;
  border-radius:5px;
  background:#ef1d24;
  color:#fff;
  font:inherit;
  font-size:.76rem;
  font-weight:800;
  cursor:pointer;
  box-shadow:0 4px 12px rgba(239,29,36,.19);
  transition:background .17s ease, transform .17s ease, box-shadow .17s ease;
}

.svc-contact-form button:hover {
  background:#d9161d;
  color:#fff;
  transform:translateY(-1px);
  box-shadow:0 6px 15px rgba(239,29,36,.24);
}

html.theme-dark .svc-diagnostics__note strong { color:#f5f7f9; }
html.theme-dark .svc-diagnostics__note span { color:#b9c3cb; }
html.theme-dark .svc-contact-box {
  background:linear-gradient(145deg,#20272e 0%,#151b20 100%);
  border:1px solid rgba(255,255,255,.07);
}

@media (max-width:900px) {
  .svc-info-grid {
    grid-template-columns:1fr;
    gap:18px;
  }
  .svc-contact-box {
    max-width:none;
  }
}

@media (max-width:560px) {
  .svc-symptoms article {
    min-height:0;
  }
  .svc-diagnostics__note {
    display:block;
  }
  .svc-diagnostics__note strong,
  .svc-diagnostics__note span {
    display:block;
  }
  .svc-diagnostics__note span {
    margin-top:3px;
  }
  .svc-contact-box {
    padding:17px;
  }
}

/* =========================================================
   Czytelność treści podstrony — 2026-09-24
   HERO i główna nawigacja pozostają bez zmian.
   ========================================================= */
.svc-section-title p,
.svc-section-head-row p {
  font-size:.96rem;
  line-height:1.5;
}

.svc-feature h3,
.svc-process h3,
.svc-symptoms h3 {
  font-size:1rem;
}

.svc-feature p,
.svc-process p,
.svc-symptoms p {
  font-size:.92rem;
  line-height:1.48;
}

.svc-small-link {
  font-size:.84rem;
}

.svc-realizations strong {
  font-size:.92rem;
}

.svc-realizations span {
  font-size:.82rem;
}

.svc-faq summary {
  font-size:.96rem;
  line-height:1.35;
}

.svc-faq p {
  font-size:.91rem;
  line-height:1.52;
}

.svc-contact-box > p {
  font-size:.92rem;
  line-height:1.5;
}

.svc-contact-form input,
.svc-contact-form textarea {
  font-size:.88rem;
}

.svc-contact-form button {
  font-size:.9rem;
}

/* HERO podstrony — ta sama fotografia co w HERO strony głównej */
.svc-hero__visual {
  width: 100%;
  max-width: 560px;
  justify-self: end;
  align-self: center;
  overflow: hidden;
  border-radius: 0;
}

.svc-hero__visual img {
  display: block;
  width: 100%;
  height: 300px;
  object-fit: cover;
  object-position: center 48%;
  border-radius: 0;
}

@media (max-width: 900px) {
  .svc-hero__visual {
    max-width: 100%;
    justify-self: stretch;
  }

  .svc-hero__visual img {
    height: 240px;
  }
}

@media (max-width: 620px) {
  .svc-hero__visual img {
    height: 210px;
  }
}

/* Uzgodnione korekty treści — 2026-09-24 */
.svc-hero__proof {
  margin:10px 0 0;
  max-width:690px;
  color:#56616a;
  font-size:.95rem;
  line-height:1.48;
  font-weight:500;
}

html.theme-dark .svc-hero__proof {
  color:#c5cdd3;
}

.svc-no-break {
  white-space:nowrap;
}

@media (min-width: 1050px) {
  .svc-section-title--diagnostics {
    max-width:1100px;
  }

  .svc-section-title--diagnostics > p {
    white-space:nowrap;
  }
}

@media (max-width: 1049px) {
  .svc-section-title--diagnostics > p {
    white-space:normal;
  }
}

/* GSM HERO — zachowanie pełnych proporcji zdjęcia, bez przycinania */
.svc-hero__visual--natural {
  min-height:0;
}

.svc-hero__visual--natural > img {
  height:auto;
  min-height:0;
  object-fit:contain;
  object-position:center;
}

/* GSM — wyśrodkowanie opisu sekcji diagnostycznej */
.service-page .svc-section-title--diagnostics > p {
  width:100%;
  margin-left:auto;
  margin-right:auto;
  text-align:center;
}


/* GSM — rzeczywiste wyśrodkowanie opisu diagnostyki */
.service-page .svc-section-title--diagnostics-gsm > p {
  max-width:920px;
  margin:4px auto 0;
  text-align:center !important;
  white-space:normal !important;
}


/* STARLINK — wyśrodkowanie i zawijanie opisu diagnostyki */
.service-page .svc-section-title--diagnostics-starlink > p {
  max-width:980px;
  margin:4px auto 0;
  text-align:center !important;
  white-space:normal !important;
}


/* STARLINK — nagłówek HERO: pierwsza linia razem na desktopie */
.svc-hero .starlink-title-line {
  white-space: nowrap;
}

@media (max-width: 560px) {
  .svc-hero .starlink-title-line {
    white-space: normal;
  }
}


/* SIECI LAN / WI-FI — wyśrodkowanie opisu diagnostyki */
.service-page .svc-section-title--diagnostics-network > p {
  max-width:980px;
  margin:4px auto 0;
  text-align:center !important;
  white-space:normal !important;
}

/* SIECI LAN / WI-FI — kontrolowane łamanie nagłówka HERO */
.svc-hero .network-title-line {
  white-space:nowrap;
}

@media (max-width:560px) {
  .svc-hero .network-title-line {
    white-space:normal;
  }
}


/* SSD — wyśrodkowanie i zawijanie opisu diagnostyki */
.service-page .svc-section-title--diagnostics-ssd > p {
  max-width:980px;
  margin:4px auto 0;
  text-align:center !important;
  white-space:normal !important;
}


/* STARLINK — powiązane usługi */
.svc-related-section {
  padding-top:20px;
  padding-bottom:20px;
}

.svc-related-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  max-width:920px;
  margin:0 auto;
}

.svc-related-card {
  display:block;
  padding:18px 20px;
  border:1px solid #e1e6ea;
  border-radius:7px;
  background:#fff;
  color:#171b1f;
  text-decoration:none;
  box-shadow:0 4px 14px rgba(25,35,45,.035);
  transition:border-color .18s ease, transform .18s ease, box-shadow .18s ease;
}

.svc-related-card:hover,
.svc-related-card:focus-visible {
  border-color:#ef1d24;
  transform:translateY(-1px);
  box-shadow:0 7px 20px rgba(25,35,45,.07);
  text-decoration:none;
  outline:none;
}

.svc-related-card h3 {
  margin:0 0 6px;
  color:#171b1f;
  font-size:1rem;
  line-height:1.28;
}

.svc-related-card p {
  margin:0 0 11px;
  color:#69747d;
  font-size:.88rem;
  line-height:1.45;
}

.svc-related-card span {
  color:#ef1d24;
  font-size:.86rem;
  font-weight:700;
}

.svc-related-card span b {
  font-size:1rem;
}

html.theme-dark .svc-related-card {
  background:#171d23;
  border-color:rgba(255,255,255,.09);
}

html.theme-dark .svc-related-card h3 {
  color:#f2f5f7;
}

html.theme-dark .svc-related-card p {
  color:#b5bec5;
}

@media (max-width:700px) {
  .svc-related-grid {
    grid-template-columns:1fr;
  }
}

/* Zgoda na politykę prywatności w formularzu podstron — 2026-10-02 */
.svc-contact-consent {
  margin:2px 0 1px;
}

.svc-contact-consent label {
  display:flex;
  align-items:flex-start;
  gap:8px;
  margin:0;
  cursor:pointer;
}

.svc-contact-consent input[type="checkbox"] {
  width:14px;
  height:14px;
  min-width:14px;
  margin:2px 0 0;
  padding:0;
  accent-color:#ef1d24;
}

.svc-contact-consent span {
  display:block;
  min-width:0;
  color:rgba(255,255,255,.78);
  font-size:.72rem;
  line-height:1.42;
  font-weight:400;
}

.svc-contact-consent a,
.svc-contact-consent a:visited {
  color:inherit;
  font-size:inherit;
  line-height:inherit;
  font-weight:inherit;
  text-decoration:underline;
}

.svc-contact-consent a:hover {
  color:#fff;
}

@media (max-width:560px) {
  .svc-contact-consent span {
    font-size:.74rem;
  }
}

/* Status wysyłki formularza kontaktowego — 2026-10-02 */
.svc-contact-form__message {
  display:none;
  margin-top:2px;
  padding:8px 10px;
  border:1px solid rgba(255,255,255,.11);
  border-radius:5px;
  background:rgba(255,255,255,.07);
  color:#eef2f4;
  font-size:.78rem;
  line-height:1.4;
  font-weight:600;
}

.svc-contact-form__message[data-state="success"] {
  border-color:rgba(88,190,116,.36);
  background:rgba(67,151,91,.16);
}

.svc-contact-form__message[data-state="error"] {
  border-color:rgba(239,29,36,.40);
  background:rgba(239,29,36,.12);
}
