.subpage .site-header:before { display:none; }
.subpage-hero { padding-bottom:64px; border-bottom:1px solid var(--line); }
.breadcrumbs { display:flex; flex-wrap:wrap; gap:10px; padding-block:26px 42px; font-size:12px; color:var(--muted); }
.breadcrumbs a:hover { color:var(--red-ink); text-decoration:underline; }
.subpage-hero-grid { display:grid; grid-template-columns:1.08fr 1fr; align-items:center; gap:64px; }
.subpage h1 { font-size:clamp(52px,5.2vw,76px); line-height:1.01; letter-spacing:-3.6px; }
.subpage h1>span { transform:none; }
.subpage .accent { color:var(--red); }
.subpage-lead { max-width:530px; margin-top:26px; font-size:18px; line-height:1.65; color:#53635b; }
.subpage-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:30px; }
.subpage-actions .button { padding-inline:22px; gap:16px; }
.fiscal-picks>.eyebrow { font-size:10px; }
.fiscal-picks-list { display:grid; gap:12px; }
.fiscal-pick { display:flex; align-items:center; gap:24px; padding:18px 24px; background:#fff; border:1px solid var(--line); border-radius:var(--radius); }
.fiscal-pick>img { width:140px; height:126px; object-fit:contain; flex-shrink:0; }
.fiscal-pick-copy { display:grid; gap:7px; }
.fiscal-pick-copy>strong { font-size:19px; letter-spacing:-.5px; }
.fiscal-pick-price { color:var(--green); font-size:25px; font-weight:650; letter-spacing:-.7px; }
.fiscal-pick-price small { font-size:12px; color:var(--muted); font-weight:400; letter-spacing:0; }
.fiscal-pick-details { display:flex; gap:14px; align-items:center; color:var(--green-link); font-size:12px; }
.fiscal-pick:hover { border-color:#8aa28d; }
.catalog-price { margin-top:auto; margin-bottom:18px; display:flex; align-items:baseline; flex-wrap:wrap; gap:4px 8px; }
.catalog-price>strong { font-size:27px; color:var(--green); letter-spacing:-.7px; }
.catalog-price small { font-size:13px; font-weight:400; }
.catalog-price>span,.catalog-price>p { font-size:12px; color:var(--muted); }
.catalog-price>p { flex-basis:100%; }
.product-details-link { display:flex; justify-content:space-between; align-items:center; min-height:44px; padding:10px 15px; border-radius:var(--pill); background:var(--green); color:white; font-size:13px; font-weight:500; }
.product-details-link:hover { background:#23554a; }
.product-card .product-actions { margin-top:0; }
.product-card .product-inquiry { border:0; padding-top:0; font-size:12px; }
.detail-section,.backup-features,.detail-process,.catalog-section { padding-block:64px; }
.detail-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:48px; margin-bottom:36px; }
.detail-heading>p { max-width:480px; }
.detail-heading h2 { max-width:630px; }
.detail-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:32px; }
.detail-grid article { border-top:1px solid #cdd5cc; padding-top:22px; }
.detail-number { display:block; font-size:13px; letter-spacing:1px; color:var(--red-ink); margin-bottom:16px; }
.detail-grid h3 { font-size:23px; margin-bottom:12px; }
.detail-grid p,.feature-grid p { color:#627168; font-size:15px; line-height:1.65; }
.backup-features { background:#efefe8; }
.backup-features h2 { max-width:720px; }
.feature-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin-top:36px; }
.feature-grid article { padding:28px; border:1px solid #d9dfd5; border-radius:12px; background:var(--paper); }
.feature-grid article>span { display:block; color:var(--red-ink); font-size:12px; letter-spacing:1px; margin-bottom:18px; }
.feature-grid h3 { margin-bottom:14px; padding-right:24px; }
.manufacturer-note { display:flex; align-items:center; justify-content:space-between; gap:30px; margin-top:28px; font-size:14px; color:var(--muted); }
.manufacturer-note>p { max-width:570px; }
.manufacturer-note .text-link { margin:0; flex-shrink:0; }
.detail-process .detail-grid { margin-top:35px; }
.catalog-toolbar { display:flex; align-items:center; justify-content:space-between; gap:20px; grid-column:1/-1; padding-block:8px; }
.catalog-filters { display:none; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; margin-bottom:22px; }
.js .catalog-filters { display:grid; }
.category-choice { position:relative; display:flex; align-items:center; gap:14px; border:1px solid var(--line); border-radius:var(--radius); background:#fff; padding:20px 16px; text-align:left; color:var(--ink); }
.category-choice img { width:85px; height:100px; object-fit:contain; flex-shrink:0; }
.category-choice-copy { display:grid; gap:6px; padding-right:9px; }
.category-choice-copy strong { font-size:19px; line-height:1.2; letter-spacing:-.4px; }
.category-choice-copy>span:last-child { font-size:13px; line-height:1.5; color:#5f7067; }
.category-choice-number { font-size:10px; color:var(--green-link); letter-spacing:.6px; text-transform:uppercase; }
.category-choice-arrow { position:absolute; top:10px; right:12px; color:var(--green-link); font-size:17px; }
.category-choice:hover,.category-choice[aria-pressed=true] { border-color:var(--green); }
.category-choice[aria-pressed=true] { box-shadow:inset 0 -3px 0 var(--green); }
.catalog-all { display:flex; align-items:center; gap:14px; border:0; padding:10px 0; background:none; font-size:14px; color:var(--green-link); text-align:left; min-height:44px; }
.catalog-all>span { border-radius:var(--pill); background:#e7ebe3; padding:3px 10px; font-size:12px; }
.catalog-all[aria-pressed=true] { color:var(--green); font-weight:650; }
.catalog-all[aria-pressed=true]>span { background:var(--green); color:#fff; }
.catalog-all:hover { text-decoration:underline; text-underline-offset:5px; }
#catalog-result { color:var(--muted); font-size:13px; white-space:nowrap; }
.product-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.product-card { display:flex; flex-direction:column; min-width:0; background:#fff; border:1px solid #dfe3dc; border-radius:var(--radius); box-shadow:var(--shadow); overflow:hidden; scroll-margin-top:24px; }
.product-card[hidden] { display:none; }
.product-image { padding:18px 36px 0; }
.product-image img { width:100%; height:210px; object-fit:contain; }
.product-copy { display:flex; flex-direction:column; flex:1; padding:16px 24px 24px; }
.product-category { font-size:10px; line-height:1.5; letter-spacing:.9px; text-transform:uppercase; color:var(--muted); margin-bottom:9px; }
.product-copy h3 { font-size:24px; letter-spacing:-.6px; }
.product-description { font-size:14px; line-height:1.6; color:var(--muted); margin-block:10px 20px; }
.product-features { margin:0 0 24px; font-size:13px; line-height:1.5; }
.product-features>div { display:grid; grid-template-columns:85px 1fr; gap:10px; padding-block:9px; border-top:1px solid #edf0e9; }
.product-features dt { color:var(--muted); }
.product-features dd { margin:0; color:var(--green); }
.product-actions { margin-top:auto; display:grid; gap:12px; }
.product-inquiry { display:flex; align-items:center; justify-content:space-between; border-top:1px solid var(--line); padding-top:15px; color:var(--red-ink); font-size:14px; font-weight:650; }
.product-inquiry:hover,.product-spec:hover { text-decoration:underline; text-underline-offset:4px; }
.product-spec { width:fit-content; font-size:12px; color:var(--green-link); }
.catalog-note { color:var(--muted); font-size:13px; margin-top:28px; }
.catalog-note>p { max-width:780px; }
.catalog-note>div { display:flex; gap:12px 24px; flex-wrap:wrap; margin-top:14px; }
.catalog-note a { text-decoration:underline; text-underline-offset:4px; color:var(--green-link); }
.catalog-more { display:flex; justify-content:center; margin-top:30px; }
.catalog-more:has([hidden]) { display:none; }
.catalog-more [hidden] { display:none; }
.catalog-help { display:flex; align-items:center; justify-content:space-between; gap:30px; padding:30px; margin-top:40px; border:1px solid #d5dfd2; border-radius:var(--radius); background:#edf1e8; }
.catalog-help p { max-width:700px; margin-top:10px; font-size:15px; color:var(--muted); }
.catalog-help .button { flex-shrink:0; background:transparent; }

/* Ilustracja backupu: jeden przebieg 4,8 s, potem spokojny stan końcowy. */
.backup-flow { margin:0; padding:20px 0 0; }
.backup-flow-heading { display:flex; justify-content:space-between; align-items:center; gap:16px; padding-inline:15px; }
.backup-flow-heading .eyebrow { color:var(--green-link); font-size:10px; letter-spacing:1.4px; margin:0; }
.backup-flow-brand { display:grid; place-items:center; font-size:11px; font-weight:650; width:38px; height:28px; border:1px solid #bacabc; border-radius:var(--pill); color:var(--green); }
.backup-scene { display:block; width:100%; height:auto; margin-block:12px 22px; overflow:visible; }
.scene-label { font-size:16px; font-weight:600; fill:var(--green); letter-spacing:-.3px; }
.scene-note { font-size:11px; fill:#617969; }
.flow-route { fill:none; stroke:#b8cbb8; stroke-width:1.5; stroke-dasharray:4 7; }
.flow-route-arrow { fill:none; stroke:#7f9f88; stroke-width:1.5; }
.flow-packet { opacity:0; }
.backup-steps { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; padding:20px 0 0; border-top:1px solid #cfd9cb; }
.backup-steps li { color:var(--green); font-size:12px; line-height:1.4; }
.backup-steps li>span { display:block; font-size:10px; color:var(--red-ink); margin-bottom:6px; }
.backup-flow figcaption { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; column-gap:14px; margin-top:20px; color:var(--muted); font-size:11px; }
.diagram-replay { background:none; border:0; padding:8px 0; min-height:44px; color:var(--green); font-size:12px; display:flex; align-items:center; gap:6px; }
.diagram-replay[hidden] { display:none; }
.diagram-replay>span { font-size:19px; }
.diagram-replay:disabled { opacity:.55; cursor:default; }
.backup-flow.is-playing .flow-packet--out { animation:backup-send 4.8s ease-in-out both; }
.backup-flow.is-playing .flow-packet--back { animation:backup-restore 4.8s ease-in-out both; }
.backup-flow.is-playing .backup-server-lights { animation:backup-save 4.8s ease-in-out both; }
.backup-flow.is-playing .restore-check { animation:backup-check 4.8s ease both; }
.backup-flow.is-playing .source-file { animation:backup-source 4.8s ease both; }
@keyframes backup-send {
  0%,5% { opacity:0; transform:translate(149px,137px); }
  10% { opacity:1; transform:translate(149px,137px); }
  30% { opacity:1; transform:translate(313px,177px); }
  34%,100% { opacity:0; transform:translate(313px,177px); }
}
@keyframes backup-save {
  0%,32%,61%,100% { fill:#a8dfb8; }
  38%,52% { fill:#fa203a; }
  45%,59% { fill:#d7f5da; }
}
@keyframes backup-restore {
  0%,61% { opacity:0; transform:translate(349px,273px); }
  65% { opacity:1; transform:translate(349px,273px); }
  77% { opacity:1; transform:translate(290px,319px); }
  87% { opacity:1; transform:translate(177px,319px); }
  91%,100% { opacity:0; transform:translate(177px,319px); }
}
@keyframes backup-check { 0%,85% { opacity:0; } 96%,100% { opacity:1; } }
@keyframes backup-source { 0%,5% { opacity:.3; } 12%,100% { opacity:1; } }
@media(prefers-reduced-motion:reduce) {
  .backup-flow * { animation:none!important; transition:none!important; }
  .diagram-replay { display:none; }
}
@media(max-width:1200px) {
  .subpage-hero-grid { gap:32px; }
  .subpage h1 { font-size:58px; letter-spacing:-2.8px; }
  .subpage-lead { font-size:16px; }
  .manufacturer-note { align-items:flex-start; flex-direction:column; gap:16px; }
  .product-copy { padding:18px; }
  .product-image img { height:185px; }
  .category-choice { flex-direction:column; align-items:flex-start; padding:20px; gap:8px; }
  .category-choice img { width:76px; height:70px; }
}
@media(max-width:900px) {
  .subpage-hero-grid { grid-template-columns:1fr; gap:36px; }
  .subpage h1 { font-size:64px; }
  .subpage-hero-copy { max-width:680px; }
  .backup-flow { max-width:640px; width:100%; }
  .detail-heading { align-items:flex-start; flex-direction:column; gap:22px; }
  .detail-heading>p { max-width:620px; }
  .detail-grid { gap:22px; }
  .detail-grid h3 { font-size:21px; }
  .product-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .catalog-toolbar { align-items:flex-start; flex-direction:column; gap:14px; }
  .catalog-help { align-items:flex-start; flex-direction:column; }
}
@media(max-width:600px) {
  .fiscal-pick { padding:14px; gap:14px; }
  .fiscal-pick>img { width:90px; height:108px; }
  .fiscal-pick-copy>strong { font-size:16px; }
  .fiscal-pick-price { font-size:22px; }
  .fiscal-pick-details { font-size:11px; gap:8px; }
  .breadcrumbs { font-size:11px; padding-block:22px 30px; gap:8px; }
  .subpage h1 { font-size:44px; letter-spacing:-2px; line-height:1.05; }
  .subpage .eyebrow { font-size:10px; letter-spacing:1.4px; }
  .subpage-hero { padding-bottom:38px; }
  .subpage-lead { margin-top:22px; }
  .subpage-actions { gap:10px; margin-top:25px; }
  .subpage-actions .button { font-size:12px; padding-inline:18px; white-space:normal; }
  .detail-section,.backup-features,.detail-process,.catalog-section { padding-block:40px; }
  .detail-grid,.feature-grid { grid-template-columns:1fr; gap:26px; }
  .feature-grid { gap:12px; }
  .feature-grid article { padding:23px; }
  .subpage main h2 { font-size:33px; letter-spacing:-1.3px; }
  .manufacturer-note .text-link { flex-shrink:1; font-size:13px; }
  .product-grid { grid-template-columns:1fr; gap:18px; }
  .product-copy { padding:22px; }
  .catalog-filters { grid-template-columns:1fr; gap:10px; }
  .category-choice { flex-direction:row; align-items:center; padding:14px; gap:14px; }
  .category-choice img { width:66px; height:65px; }
  .category-choice-copy { gap:4px; padding-right:12px; }
  .category-choice-copy strong { font-size:18px; }
  .category-choice-copy>span:last-child { font-size:12px; }
  .catalog-toolbar { flex-direction:row; align-items:center; gap:10px; flex-wrap:wrap; padding-block:6px; }
  .catalog-all { font-size:13px; gap:10px; }
  #catalog-result { font-size:11px; }
  .product-image { padding:10px 36px 0; }
  .product-image img { height:185px; }
  .product-features>div { grid-template-columns:82px 1fr; }
  .catalog-help { padding:24px; }
  .backup-flow { padding:0; }
  .backup-flow-heading { padding:0; }
  .backup-flow-heading .eyebrow { font-size:8px; letter-spacing:1px; }
  .backup-steps { gap:6px; padding-top:16px; }
  .backup-steps li { font-size:11px; }
  .backup-flow figcaption { font-size:11px; margin-top:12px; }
}
