/* Swiftech-Art — Tworzenie stron internetowych v2
   Układ celowo prowadzony z góry do dołu, bardziej editorial / service page niż homepage. */

#podejscie,#zakres,#realizacje,#proces,#faq,#kontakt { scroll-margin-top: 92px; }

.breadcrumbs { display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:8px; margin:0 0 30px; color:#7d8796; font-size:11px; font-weight:750; }
.breadcrumbs a:hover { color:var(--blue); }
.service-eyebrow { display:inline-flex; align-items:center; justify-content:center; padding:8px 13px; border:1px solid rgba(11,99,246,.18); border-radius:999px; background:rgba(239,246,255,.84); color:var(--blue); font-size:10px; font-weight:900; letter-spacing:1.3px; text-transform:uppercase; }

.service-hero { position:relative; overflow:hidden; padding:158px 0 86px; background:linear-gradient(180deg,#f9fcff 0%,#fff 78%); }
.service-hero::after { content:""; position:absolute; left:0; right:0; bottom:0; height:1px; background:linear-gradient(90deg,transparent,rgba(56,112,192,.2),transparent); }
.service-hero-ring { position:absolute; border:1px solid rgba(23,112,235,.10); border-radius:50%; pointer-events:none; }
.ring-a { width:620px; height:620px; top:-360px; left:50%; transform:translateX(-50%); box-shadow:0 0 0 80px rgba(23,112,235,.02),0 0 0 160px rgba(23,112,235,.012); }
.ring-b { width:300px; height:300px; right:-170px; bottom:-80px; }
.service-hero-inner { position:relative; z-index:2; text-align:center; }
.service-hero-copy { max-width:1020px; margin:0 auto; }
.service-hero h1 { max-width:1000px; margin:22px auto 24px; font-size:clamp(54px,7vw,96px); line-height:.98; letter-spacing:-5.5px; }
.service-lead { max-width:790px; margin:0 auto; color:var(--muted); font-size:18px; line-height:1.78; }
.service-lead strong { color:var(--text); font-weight:800; }
.service-hero-actions { display:flex; justify-content:center; align-items:center; gap:26px; margin-top:35px; }
.hero-manifest { display:flex; justify-content:center; flex-wrap:wrap; gap:7px; margin:56px auto 0; max-width:1000px; padding-top:26px; border-top:1px solid #e2e9f1; }
.hero-manifest span { padding:8px 11px; border-radius:999px; background:#f5f8fc; color:#6b7685; font-size:9px; font-weight:900; letter-spacing:.75px; text-transform:uppercase; }

.ten-seconds { padding:105px 0 115px; background:#0d1117; color:#fff; }
.ten-seconds-head { max-width:870px; margin:0 auto 52px; text-align:center; }
.ten-seconds-head h2,.blueprint-title h2,.narrow-head h2,.process-title h2,.price-center h2,.red-flags-head h2,.service-cta-shell h2 { margin:11px 0 16px; font-size:clamp(42px,4.8vw,66px); line-height:1.03; letter-spacing:-3.4px; }
.ten-seconds-head p { max-width:720px; margin:0 auto; color:#9da8b7; font-size:15px; line-height:1.8; }
.question-stack { counter-reset:q; max-width:980px; margin:0 auto; padding:0; list-style:none; border-top:1px solid #29323d; }
.question-stack li { display:grid; grid-template-columns:70px 260px 1fr; gap:28px; align-items:start; padding:30px 0; border-bottom:1px solid #29323d; }
.question-stack li > span { color:#67a5ff; font-size:10px; font-weight:900; letter-spacing:1px; }
.question-stack strong { font-size:22px; line-height:1.2; }
.question-stack p { margin:0; color:#96a2b2; font-size:14px; line-height:1.72; }

.blueprint { background:#fff; }
.blueprint-title,.narrow-head,.price-center { max-width:900px; margin:0 auto 52px; text-align:center; }
.blueprint-title p,.narrow-head > p,.price-center > p { max-width:720px; margin:0 auto; color:var(--muted); font-size:15px; line-height:1.82; }
.blueprint-stack { max-width:1000px; margin:0 auto; }
.blueprint-row { display:grid; grid-template-columns:94px 1fr; gap:26px; padding:34px 0; border-top:1px solid #e2e7ee; }
.blueprint-row:last-child { border-bottom:1px solid #e2e7ee; }
.blueprint-no { display:grid; place-items:center; width:54px; height:54px; border:1px solid #dce5ef; border-radius:50%; color:var(--blue); font-size:10px; font-weight:900; }
.blueprint-row small { color:var(--blue); font-size:9px; font-weight:900; letter-spacing:1.25px; }
.blueprint-row h3 { margin:7px 0 9px; font-size:clamp(24px,3vw,34px); line-height:1.12; letter-spacing:-1.25px; }
.blueprint-row p { max-width:760px; margin:0; color:var(--muted); font-size:14px; line-height:1.75; }

.service-scope { background:var(--soft); }
.scope-list { max-width:1060px; }
.scope-row { display:grid; grid-template-columns:70px 1fr 110px; gap:26px; align-items:center; padding:28px 0; border-top:1px solid #dce4ed; }
.scope-row:last-child { border-bottom:1px solid #dce4ed; }
.scope-row > span { color:#98a5b5; font-size:10px; font-weight:900; }
.scope-row h3 { margin:0 0 7px; font-size:22px; letter-spacing:-.65px; }
.scope-row p { max-width:760px; margin:0; color:var(--muted); font-size:13px; line-height:1.7; }
.scope-row > b { justify-self:end; color:var(--blue); font-size:9px; letter-spacing:1.2px; }

.red-flags { position:relative; overflow:hidden; background:linear-gradient(140deg,#0753cf,#0a79ff); color:#fff; }
.red-flags::after { content:""; position:absolute; width:620px; height:620px; right:-280px; top:-260px; border:1px solid rgba(255,255,255,.13); border-radius:50%; box-shadow:0 0 0 72px rgba(255,255,255,.025),0 0 0 144px rgba(255,255,255,.015); }
.red-flags .container { position:relative; z-index:2; }
.red-flags-head { max-width:920px; margin-bottom:45px; }
.red-flags-head h2 { max-width:900px; }
.red-flags-list { max-width:1000px; border-top:1px solid rgba(255,255,255,.24); }
.red-flag { display:grid; grid-template-columns:70px 1fr; gap:24px; padding:25px 0; border-bottom:1px solid rgba(255,255,255,.24); }
.red-flag span { color:rgba(255,255,255,.58); font-size:10px; font-weight:900; }
.red-flag strong { max-width:790px; font-size:20px; line-height:1.45; }

.service-work { background:linear-gradient(180deg,#ecf5ff,#f7fbff 48%,#fff); }
.project-stack { display:grid; gap:34px; max-width:1060px; }
.project-strip { overflow:hidden; border:1px solid rgba(78,120,177,.17); border-radius:24px; background:#fff; box-shadow:0 28px 70px rgba(25,70,135,.11); }
.project-strip a { display:block; }
.project-image { aspect-ratio:16/7; overflow:hidden; background:#dfeaff; }
.project-image img { width:100%; height:100%; object-fit:cover; transition:transform .45s ease; }
.project-strip:hover img { transform:scale(1.02); }
.project-copy { padding:31px 34px 34px; }
.project-copy > span { color:var(--blue); font-size:9px; font-weight:900; letter-spacing:1.2px; }
.project-copy h3 { max-width:770px; margin:8px 0 10px; font-size:clamp(28px,3.6vw,43px); line-height:1.08; letter-spacing:-1.9px; }
.project-copy p { max-width:720px; margin:0 0 19px; color:var(--muted); font-size:13px; line-height:1.72; }
.project-copy b { color:var(--blue); font-size:11px; }

.service-process { overflow:hidden; background:#0b1017; color:#fff; }
.process-title > p { color:#98a4b4; }
.vertical-process { position:relative; max-width:920px; }
.vertical-process::before { content:""; position:absolute; top:0; bottom:0; left:27px; width:1px; background:linear-gradient(180deg,#2479ef,#2a3441 25%,#2a3441 80%,#2479ef); }
.process-row { position:relative; display:grid; grid-template-columns:76px 1fr; gap:22px; padding:0 0 52px; }
.process-row:last-child { padding-bottom:0; }
.process-row > span { position:relative; z-index:1; display:grid; place-items:center; width:55px; height:55px; border:1px solid #2b4770; border-radius:50%; background:#101722; color:#76adff; font-size:10px; font-weight:900; }
.process-row small { color:#6fa9ff; font-size:9px; font-weight:900; letter-spacing:1.2px; }
.process-row h3 { margin:6px 0 9px; font-size:28px; letter-spacing:-1px; }
.process-row p { max-width:720px; margin:0; color:#99a5b4; font-size:14px; line-height:1.75; }

.service-price { background:#fff; }
.price-factors { display:grid; grid-template-columns:repeat(2,1fr); gap:12px; max-width:980px; }
.price-factor { min-height:190px; padding:27px; border:1px solid #e0e6ee; border-radius:18px; background:#f9fbfe; }
.price-factor > span { color:var(--blue); font-size:9px; font-weight:900; }
.price-factor strong { display:block; margin:35px 0 8px; font-size:19px; }
.price-factor p { margin:0; color:var(--muted); font-size:12.5px; line-height:1.7; }
.price-cta { display:flex; align-items:center; justify-content:space-between; gap:35px; max-width:980px; margin-top:22px; padding:28px 30px; border:1px solid #dce5ef; border-radius:18px; }
.price-cta p { max-width:640px; margin:0; color:var(--muted); font-size:13px; line-height:1.7; }
.price-cta p strong { color:var(--text); }
.price-cta .button { flex:0 0 auto; }

.small-truths { background:var(--soft); }
.truths-list { max-width:1000px; border-top:1px solid #dce4ed; }
.truth { display:grid; grid-template-columns:70px 1fr; gap:24px; padding:28px 0; border-bottom:1px solid #dce4ed; }
.truth > span { grid-row:1 / span 2; color:#99a5b4; font-size:10px; font-weight:900; }
.truth h3 { grid-column:2; margin:0 0 7px; font-size:21px; letter-spacing:-.5px; }
.truth p { grid-column:2; max-width:760px; margin:0; color:var(--muted); font-size:13px; line-height:1.7; }

.service-faq { background:#fff; }
.service-cta { padding-top:46px; background:#fff; }
.service-cta-shell { position:relative; overflow:hidden; padding:64px; border-radius:28px; background:linear-gradient(135deg,#0754d5,#0a79ff); color:#fff; text-align:center; box-shadow:0 30px 80px rgba(9,93,226,.22); }
.service-cta-shell::after { content:""; position:absolute; left:50%; bottom:-370px; width:580px; height:580px; transform:translateX(-50%); border:1px solid rgba(255,255,255,.15); border-radius:50%; box-shadow:0 0 0 70px rgba(255,255,255,.025),0 0 0 140px rgba(255,255,255,.016); }
.service-cta-shell > * { position:relative; z-index:1; }
.service-cta-shell h2 { max-width:850px; margin-left:auto; margin-right:auto; }
.service-cta-shell p { max-width:700px; margin:0 auto; color:rgba(255,255,255,.8); line-height:1.75; }
.service-cta-shell .button { margin-top:27px; }

html[data-theme="dark"] .service-hero { background:linear-gradient(180deg,#080d14 0%,#0a111b 78%); }
html[data-theme="dark"] .service-eyebrow { background:rgba(16,28,43,.8); border-color:rgba(75,151,255,.25); color:#a8caff; }
html[data-theme="dark"] .service-lead,html[data-theme="dark"] .blueprint-row p,html[data-theme="dark"] .narrow-head > p,html[data-theme="dark"] .scope-row p,html[data-theme="dark"] .project-copy p,html[data-theme="dark"] .price-center > p,html[data-theme="dark"] .price-factor p,html[data-theme="dark"] .price-cta p,html[data-theme="dark"] .truth p { color:#a6b2c1; }
html[data-theme="dark"] .service-lead strong,html[data-theme="dark"] .price-cta p strong { color:#f4f7fb; }
html[data-theme="dark"] .hero-manifest { border-color:#243044; }
html[data-theme="dark"] .hero-manifest span { background:#0f1722; color:#9cabbc; }
html[data-theme="dark"] .blueprint,html[data-theme="dark"] .service-price,html[data-theme="dark"] .service-faq,html[data-theme="dark"] .service-cta { background:#080d14; }
html[data-theme="dark"] .blueprint-row,html[data-theme="dark"] .truths-list,html[data-theme="dark"] .truth { border-color:#253143; }
html[data-theme="dark"] .blueprint-no { border-color:#2b3a4f; }
html[data-theme="dark"] .service-scope,html[data-theme="dark"] .small-truths { background:#0b121c; }
html[data-theme="dark"] .scope-row { border-color:#253143; }
html[data-theme="dark"] .service-work { background:linear-gradient(180deg,#0e1d30,#0b141f 48%,#080d14); }
html[data-theme="dark"] .project-strip { background:#0e151f; border-color:#26364b; box-shadow:0 28px 70px rgba(0,0,0,.25); }
html[data-theme="dark"] .price-factor { background:#0e151f; border-color:#253143; }
html[data-theme="dark"] .price-cta { border-color:#253143; }

@media (max-width:900px) {
  .service-hero h1 { font-size:clamp(52px,10vw,78px); letter-spacing:-4px; }
  .question-stack li { grid-template-columns:58px 215px 1fr; gap:18px; }
  .scope-row { grid-template-columns:55px 1fr 85px; gap:18px; }
  .price-factors { grid-template-columns:1fr; }
}

@media (max-width:720px) {
  #podejscie,#zakres,#realizacje,#proces,#faq,#kontakt { scroll-margin-top:76px; }
  .service-hero { padding:125px 0 66px; }
  .breadcrumbs { margin-bottom:24px; }
  .service-hero h1 { font-size:clamp(44px,12vw,62px); letter-spacing:-3.2px; }
  .service-lead { font-size:16px; }
  .service-hero-actions { flex-direction:column; gap:18px; }
  .hero-manifest { margin-top:42px; }
  .ten-seconds,.section { padding-top:78px; padding-bottom:78px; }
  .ten-seconds-head h2,.blueprint-title h2,.narrow-head h2,.process-title h2,.price-center h2,.red-flags-head h2,.service-cta-shell h2 { font-size:clamp(37px,9vw,50px); letter-spacing:-2.4px; }
  .question-stack li { grid-template-columns:44px 1fr; gap:13px; }
  .question-stack li p { grid-column:2; }
  .blueprint-row { grid-template-columns:66px 1fr; gap:14px; }
  .blueprint-no { width:46px; height:46px; }
  .scope-row { grid-template-columns:42px 1fr; gap:13px; }
  .scope-row > b { grid-column:2; justify-self:start; }
  .red-flag { grid-template-columns:46px 1fr; gap:14px; }
  .project-image { aspect-ratio:16/9; }
  .project-copy { padding:25px 24px 28px; }
  .project-copy h3 { font-size:32px; }
  .price-cta { flex-direction:column; align-items:flex-start; }
  .truth { grid-template-columns:44px 1fr; gap:14px; }
  .service-cta-shell { padding:48px 25px; }
}

@media (max-width:480px) {
  .service-hero h1 { font-size:42px; line-height:1.02; letter-spacing:-2.6px; }
  .hero-manifest { justify-content:flex-start; }
  .question-stack strong { font-size:19px; }
  .blueprint-row h3 { font-size:25px; }
  .scope-row h3 { font-size:19px; }
  .red-flag strong { font-size:17px; }
  .vertical-process::before { left:22px; }
  .process-row { grid-template-columns:62px 1fr; gap:12px; }
  .process-row > span { width:45px; height:45px; }
  .process-row h3 { font-size:24px; }
  .project-copy h3 { font-size:27px; }
  .price-cta .button { width:100%; }
}
