/* PURDE.pl – wspólny arkusz stylów (index, cennik, faq, polityka) */
/* Czcionki z własnego serwera (bez Google Fonts – żadne dane odwiedzających nie trafiają do Google) */
@font-face{font-family:'Newsreader';font-style:normal;font-weight:400;font-display:swap;src:url(fonty/newsreader-latin-ext-400-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'Newsreader';font-style:normal;font-weight:400;font-display:swap;src:url(fonty/newsreader-latin-400-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Newsreader';font-style:normal;font-weight:500;font-display:swap;src:url(fonty/newsreader-latin-ext-500-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'Newsreader';font-style:normal;font-weight:500;font-display:swap;src:url(fonty/newsreader-latin-500-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Newsreader';font-style:normal;font-weight:600;font-display:swap;src:url(fonty/newsreader-latin-ext-600-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'Newsreader';font-style:normal;font-weight:600;font-display:swap;src:url(fonty/newsreader-latin-600-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'IBM Plex Sans';font-style:normal;font-weight:400;font-display:swap;src:url(fonty/ibm-plex-sans-latin-ext-400-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'IBM Plex Sans';font-style:normal;font-weight:400;font-display:swap;src:url(fonty/ibm-plex-sans-latin-400-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'IBM Plex Sans';font-style:normal;font-weight:500;font-display:swap;src:url(fonty/ibm-plex-sans-latin-ext-500-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'IBM Plex Sans';font-style:normal;font-weight:500;font-display:swap;src:url(fonty/ibm-plex-sans-latin-500-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'IBM Plex Sans';font-style:normal;font-weight:600;font-display:swap;src:url(fonty/ibm-plex-sans-latin-ext-600-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'IBM Plex Sans';font-style:normal;font-weight:600;font-display:swap;src:url(fonty/ibm-plex-sans-latin-600-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:500;font-display:swap;src:url(fonty/ibm-plex-mono-latin-ext-500-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:500;font-display:swap;src:url(fonty/ibm-plex-mono-latin-500-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}

:root{
  --navy:#16233e; --navy-ink:#0f1a30; --paper:#f6f1e7; --paper-white:#fffdf8;
  --seal:#b23a2e; --text-soft:#3c4a63; --line:#d8cfbb;
  --serif:'Newsreader', Georgia, 'Times New Roman', serif;
  --sans:'IBM Plex Sans', 'Segoe UI', Arial, sans-serif;
  --mono:'IBM Plex Mono', Consolas, monospace;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;scroll-padding-top:76px;}
body{margin:0;font-family:var(--sans);color:var(--navy-ink);background:var(--paper);line-height:1.55;}
a{color:inherit;}
img{max-width:100%;}
.wrap{max-width:1080px;margin:0 auto;padding:0 24px;}
.strona-faq .wrap{max-width:840px;}
a:focus-visible, button:focus-visible, summary:focus-visible{outline:2px solid var(--seal);outline-offset:3px;}

/* ---------- górny pasek + menu ---------- */
.topbar{
  display:flex;align-items:center;justify-content:space-between;padding:16px 24px;
  position:sticky;top:0;z-index:50;background:var(--paper);
  border-bottom:1px solid var(--line);
}
.brand{display:flex;flex-direction:column;text-decoration:none;min-width:0;}
.brand-nazwa{font-family:var(--serif);font-size:1.3rem;font-weight:600;letter-spacing:0.01em;line-height:1.1;}
.brand-skrot{font-family:var(--mono);font-size:0.64rem;color:var(--text-soft);letter-spacing:0.02em;margin-top:2px;line-height:1.35;}
.brand-skrot i{font-style:normal;display:inline-block;min-width:5.6em;color:var(--navy-ink);}
.brand-skrot b{color:#d3271b;font-weight:500;font-size:1.3em;line-height:1;}
.topbar nav a.nav-cta{color:#fff;background:var(--seal);padding:6px 14px;border-radius:2px;}
.topbar nav a.nav-cta:hover{background:#963026;color:#fff;}
.topbar nav{display:flex;gap:28px;font-size:0.95rem;}
.topbar nav a{text-decoration:none;color:var(--text-soft);}
.topbar nav a:hover, .topbar nav a.active{color:var(--navy-ink);}
.menu-btn{
  display:none;font:inherit;font-size:0.95rem;background:transparent;color:var(--navy-ink);
  border:1px solid var(--line);border-radius:2px;padding:7px 14px;cursor:pointer;
}

/* ---------- przyciski ---------- */
.cta{
  display:inline-block;background:var(--seal);color:#fff;text-decoration:none;font-weight:500;
  font-size:1rem;padding:14px 28px;border-radius:2px;border:1px solid var(--seal);cursor:pointer;
  transition:background .15s ease;margin:4px 0;
}
.cta:hover{background:#963026;}
.cta.ghost{background:transparent;border:1px solid #4a5a7a;color:var(--paper-white);margin-left:12px;}
.cta.ghost:hover{border-color:#8a97b5;}
.cta.ghost.jasny{color:var(--navy-ink);border-color:var(--line);margin-left:0;}
.cta.ghost.jasny:hover{border-color:var(--text-soft);}

/* ---------- hero (strona główna) ---------- */
.hero{background:var(--navy);color:var(--paper-white);padding:64px 24px 96px;position:relative;overflow:hidden;}
.hero-inner{max-width:1080px;margin:0 auto;display:grid;grid-template-columns:1.15fr 0.85fr;gap:48px;align-items:center;}
.hero h1{font-family:var(--serif);font-weight:500;font-size:clamp(2.1rem, 4.2vw, 3.1rem);line-height:1.16;margin:0 0 20px;max-width:17ch;}
.hero p.lede{font-size:1.08rem;color:#cfd7e6;max-width:48ch;margin:0 0 32px;}

.envelope{position:relative;width:100%;max-width:340px;justify-self:end;}
.envelope .back{background:#0b1224;border:1px solid #26324e;border-radius:4px;height:220px;position:relative;overflow:hidden;}
.envelope .flap{
  position:absolute;top:0;left:0;right:0;height:70px;background:#101a33;
  clip-path:polygon(0 0, 100% 0, 50% 100%);
}
.letter{
  position:absolute;left:8%;right:8%;top:-34px;background:var(--paper-white);color:var(--navy-ink);
  border-radius:2px;padding:22px 20px 26px;box-shadow:0 18px 34px rgba(0,0,0,.35);
  transform:translateY(0) rotate(-1.2deg);animation:riseOnce .9s ease-out both;
}
.letter{min-height:128px;}
.letter .rule{height:1px;background:var(--line);margin:9px 0;}
.letter .rule:nth-child(1){width:78%;}
.letter .rule:nth-child(2){width:60%;}
.stamp{
  position:absolute;top:14px;right:16px;width:92px;height:92px;border:2px solid var(--seal);border-radius:50%;
  display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(9deg);
  color:var(--seal);text-align:center;background:rgba(178,58,46,0.04);
}
.stamp .d{font-family:var(--mono);font-size:0.92rem;font-weight:500;line-height:1.15;}
.stamp .t{font-size:0.56rem;letter-spacing:0.03em;margin-top:2px;color:var(--text-soft);}
@keyframes riseOnce{
  from{opacity:0;transform:translateY(18px) rotate(-1.2deg);}
  to{opacity:1;transform:translateY(0) rotate(-1.2deg);}
}
@media (prefers-reduced-motion:reduce){ .letter{animation:none;} html{scroll-behavior:auto;} }

/* ---------- sekcje ---------- */
section{padding:76px 24px;}
.strona-cennik section{padding:44px 24px;}
.strona-faq section{padding:20px 24px 60px;}
.section-head{max-width:52ch;margin-bottom:44px;}
.section-head h2{font-family:var(--serif);font-weight:500;font-size:clamp(1.6rem,2.6vw,2.05rem);margin:0 0 10px;}
.section-head p{color:var(--text-soft);margin:0;}

.reasons{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--line);}
.reason{padding:28px 24px 8px 0;border-right:1px solid var(--line);}
.reason + .reason{padding-left:24px;}
.reason:last-child{border-right:none;}
.reason h3{font-family:var(--serif);font-weight:500;font-size:1.18rem;margin:0 0 10px;}
.reason p{margin:0;color:var(--text-soft);font-size:0.97rem;}

.route-section{background:var(--paper-white);}
.route{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:28px;margin-top:8px;}
.route::before{content:"";position:absolute;top:11px;left:4%;right:10%;height:0;border-top:2px dashed var(--line);}
.stop{position:relative;padding-top:36px;}
.stop::before{
  content:"";position:absolute;top:0;left:0;width:22px;height:22px;border-radius:50%;
  background:var(--paper-white);border:2px solid var(--seal);
}
.stop h3{font-family:var(--serif);font-size:1.12rem;font-weight:500;margin:0 0 8px;}
.stop p{margin:0;color:var(--text-soft);font-size:0.96rem;}
.stop .kto{display:block;margin-top:10px;font-size:0.85rem;color:var(--seal);}

.chips{display:flex;flex-wrap:wrap;gap:12px;margin-top:8px;}
.chip{border:1px solid var(--line);background:var(--paper-white);padding:16px 18px;border-radius:3px;flex:1 1 220px;}
.chip h4{font-family:var(--serif);font-weight:600;font-size:1rem;margin:0 0 6px;}
.chip p{margin:0;color:var(--text-soft);font-size:0.92rem;}

.faq-section{background:var(--paper-white);}

/* ---------- pytania (details) ---------- */
details{border-bottom:1px solid var(--line);padding:18px 0;}
details:first-of-type{border-top:1px solid var(--line);}
summary{
  cursor:pointer;font-family:var(--serif);font-size:1.08rem;font-weight:500;list-style:none;
  display:flex;justify-content:space-between;align-items:center;gap:16px;
}
summary::-webkit-details-marker{display:none;}
summary::after{content:"+";font-family:var(--sans);font-size:1.3rem;color:var(--seal);flex-shrink:0;}
details[open] summary::after{content:"–";}
details p{color:var(--text-soft);margin:12px 0 2px;max-width:62ch;font-size:0.97rem;}
details ul{color:var(--text-soft);margin:10px 0 2px;padding-left:20px;max-width:60ch;font-size:0.97rem;}
details li{margin:4px 0;}

.cat{font-family:var(--mono);font-size:0.8rem;color:var(--seal);letter-spacing:0.02em;margin:44px 0 4px;}
.cat:first-child{margin-top:12px;}

/* ---------- nagłówek podstrony ---------- */
.page-head{padding:56px 24px 20px;}
.strona-faq .page-head{padding-bottom:12px;}
.page-head h1{font-family:var(--serif);font-weight:500;font-size:clamp(2rem,3.6vw,2.7rem);margin:0 0 14px;max-width:20ch;}
.page-head p{color:var(--text-soft);max-width:56ch;margin:0;font-size:1.05rem;}
.page-head p.vat-note{margin-top:12px;font-size:0.9rem;}

/* ---------- cennik ---------- */
.plans{display:grid;grid-template-columns:1fr 1fr;gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
.plan{padding:36px 32px;border-right:1px solid var(--line);}
.plan:last-child{border-right:none;background:var(--paper-white);}
.plan .label{font-family:var(--mono);font-size:0.8rem;color:var(--seal);letter-spacing:0.02em;}
.plan h2{font-family:var(--serif);font-weight:500;font-size:1.5rem;margin:8px 0 4px;}
.plan .price{font-family:var(--serif);font-size:2.1rem;font-weight:500;margin:14px 0 4px;}
.plan .price small{font-family:var(--sans);font-size:0.95rem;font-weight:400;color:var(--text-soft);}
.plan .price-note{font-size:0.85rem;color:var(--text-soft);margin:0 0 22px;}
.plan ul{list-style:none;padding:0;margin:0 0 26px;}
.plan li{padding:10px 0;border-top:1px solid var(--line);font-size:0.96rem;}
.plan li:first-child{border-top:none;}
.strona-cennik .cta{font-size:0.98rem;padding:13px 24px;}

.dodatki-tytul{font-family:var(--serif);font-weight:500;font-size:1.4rem;margin:0 0 4px;}
.addon{padding:24px 0;border-top:1px solid var(--line);}
.addon:last-of-type{border-bottom:1px solid var(--line);}
.addon-row{display:flex;justify-content:space-between;gap:24px;align-items:baseline;flex-wrap:wrap;}
.addon h3{font-family:var(--serif);font-weight:500;font-size:1.08rem;margin:0;}
.addon .amt{font-family:var(--mono);font-size:0.95rem;color:var(--seal);white-space:nowrap;}
.addon p{margin:8px 0 0;color:var(--text-soft);font-size:0.94rem;max-width:60ch;}

.note-box{
  background:var(--paper-white);border:1px solid var(--line);border-radius:3px;
  padding:22px 24px;margin-top:24px;font-size:0.92rem;color:var(--text-soft);
}
.note-box strong{color:var(--navy-ink);}

/* ---------- zamknięcie ---------- */
.closing{background:var(--navy);color:var(--paper-white);text-align:center;padding:80px 24px;}
.closing h2{font-family:var(--serif);font-weight:500;font-size:clamp(1.6rem,3vw,2.2rem);max-width:26ch;margin:0 auto 14px;}
.closing p{color:#cfd7e6;max-width:48ch;margin:0 auto 28px;}
.closing .cta.ghost{margin-left:8px;}
.deadline-note{font-family:var(--mono);font-size:0.85rem;color:#9fb0cc;margin-top:18px;}

/* ---------- stopka ---------- */
footer{padding:36px 24px;font-size:0.88rem;color:var(--text-soft);border-top:1px solid var(--line);}
.footer-inner{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;}
footer a{text-decoration:none;}
footer a:hover{text-decoration:underline;}

/* ---------- widoki węższe ---------- */
@media (max-width:980px){
  .route{grid-template-columns:repeat(2,1fr);row-gap:36px;}
  .route::before{display:none;}
}
@media (max-width:820px){
  .menu-btn{display:inline-block;}
  .topbar nav{
    display:none;position:absolute;top:100%;left:0;right:0;z-index:20;
    flex-direction:column;gap:0;background:var(--paper-white);
    border-top:1px solid var(--line);border-bottom:1px solid var(--line);
    box-shadow:0 12px 24px rgba(15,26,48,.12);
  }
  .topbar nav.open{display:flex;}
  .topbar nav a{padding:14px 24px;border-top:1px solid var(--line);font-size:1rem;}
  .topbar nav a:first-child{border-top:none;}

  .hero{padding:48px 24px 72px;}
  .hero-inner{grid-template-columns:1fr;gap:56px;}
  .envelope{justify-self:start;max-width:280px;margin-top:12px;}
  .reasons{grid-template-columns:1fr;}
  .reason, .reason + .reason{border-right:none;border-bottom:1px solid var(--line);padding:24px 0;}
  .plans{grid-template-columns:1fr;}
  .plan{border-right:none;border-bottom:1px solid var(--line);}
  section{padding:56px 24px;}
  section .wrap, footer .wrap{padding:0;}
}
@media (max-width:560px){
  .route{grid-template-columns:1fr;}
  .cta{display:block;text-align:center;}
  .cta.ghost, .closing .cta.ghost{margin-left:0;margin-top:10px;}
  .plan{padding:28px 20px;}
}

/* ================= strona główna: aplikacja na pierwszym planie ================= */
.skrot{
  max-width:1080px;margin:0 auto 34px;font-family:var(--mono);font-size:0.82rem;letter-spacing:0.04em;
  color:#9fb0cc;border-bottom:1px solid #2a3858;padding-bottom:14px;
}
.skrot b{color:#ff8f82;font-weight:500;}
.skrot .nazwa{color:var(--paper-white);margin-right:10px;}
.hero .kicker{display:inline-block;font-family:var(--mono);font-size:0.8rem;color:#ff8f82;letter-spacing:0.04em;margin-bottom:14px;}
.hero-punkty{list-style:none;padding:0;margin:0 0 30px;color:#e3e9f3;}
.hero-punkty li{padding:6px 0 6px 28px;position:relative;}
.hero-punkty li::before{content:"✓";position:absolute;left:0;color:#ff8f82;font-weight:600;}
.hero-termin{margin-top:22px;font-size:0.9rem;color:#9fb0cc;}
.hero-termin strong{color:var(--paper-white);font-weight:500;}

/* makieta telefonu */
.telefon-wrap{position:relative;justify-self:center;}
.telefon{
  width:270px;border-radius:38px;background:#0b1224;padding:12px;border:1px solid #2c3a5c;
  box-shadow:0 30px 60px rgba(0,0,0,.45);transform:rotate(2deg);animation:riseOnce .9s ease-out both;
}
.telefon .ekran{background:#f4f6f8;border-radius:28px;overflow:hidden;min-height:470px;color:#1d2329;font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;}
.telefon .pasek{background:#1f5f8b;color:#fff;padding:26px 16px 12px;font-size:0.82rem;font-weight:600;}
.telefon .kafel{background:#fff;margin:10px 10px 0;border-radius:10px;border-left:5px solid #1e7a46;padding:10px 12px;font-size:0.72rem;}
.telefon .kafel.warn{border-left-color:#e0a100;}
.telefon .kafel .l{color:#6a747d;}
.telefon .kafel .v{font-size:1.15rem;font-weight:700;margin:2px 0 6px;}
.telefon .btns{display:flex;gap:6px;}
.telefon .btns span{font-size:0.66rem;padding:5px 8px;border-radius:7px;border:1px solid #1f5f8b;color:#1f5f8b;font-weight:600;}
.telefon .btns span.pelny{background:#1f5f8b;color:#fff;}
.telefon .pismo{display:flex;gap:8px;align-items:center;background:#fff;margin:8px 10px 0;border-radius:10px;padding:9px 10px;font-size:0.7rem;border:1px solid #e2e6ea;}
.telefon .odznaka{background:#fdf1d8;color:#8a5a00;border-radius:99px;padding:2px 7px;font-weight:700;white-space:nowrap;}
.telefon .odznaka.pilne{background:#fde8e6;color:#b42318;}
.powiadomienie{
  position:absolute;left:-46px;top:64px;width:250px;background:var(--paper-white);color:var(--navy-ink);
  border-radius:14px;padding:12px 14px;box-shadow:0 16px 34px rgba(0,0,0,.4);font-size:0.8rem;
  animation:wjazd 1s .9s ease-out both;
}
.powiadomienie .z{font-family:var(--mono);font-size:0.68rem;color:var(--seal);margin-bottom:3px;}
.telefon-wrap .stamp{top:auto;bottom:-14px;right:-26px;background:var(--paper-white);width:96px;height:96px;}
@keyframes wjazd{from{opacity:0;transform:translateX(-16px);}to{opacity:1;transform:none;}}
@media (prefers-reduced-motion:reduce){ .telefon, .powiadomienie{animation:none;} }

/* funkcje aplikacji */
.funkcje{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--line);border-left:1px solid var(--line);}
.funkcja{padding:26px 24px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--paper-white);}
.funkcja .nr{font-family:var(--mono);font-size:0.78rem;color:var(--seal);}
.funkcja h3{font-family:var(--serif);font-weight:500;font-size:1.15rem;margin:6px 0 8px;}
.funkcja p{margin:0;color:var(--text-soft);font-size:0.95rem;}

/* bez / z aplikacją */
.porownanie{display:grid;grid-template-columns:1fr 1fr;gap:0;border:1px solid var(--line);}
.porownanie > div{padding:28px 28px 20px;}
.porownanie .bez{background:var(--paper);}
.porownanie .z{background:var(--navy);color:var(--paper-white);}
.porownanie h3{font-family:var(--serif);font-weight:500;font-size:1.3rem;margin:0 0 14px;}
.porownanie ul{list-style:none;padding:0;margin:0;}
.porownanie li{padding:9px 0 9px 26px;position:relative;border-top:1px solid var(--line);font-size:0.96rem;}
.porownanie .z li{border-top-color:#2a3858;color:#e3e9f3;}
.porownanie .bez li::before{content:"✕";position:absolute;left:0;color:var(--seal);}
.porownanie .z li::before{content:"✓";position:absolute;left:0;color:#ff8f82;}
.cena-hak{font-family:var(--serif);font-size:1.25rem;color:var(--paper-white);margin:0 auto 26px;}
.cena-hak small{font-family:var(--sans);font-size:0.9rem;color:#9fb0cc;}

@media (max-width:980px){ .funkcje{grid-template-columns:1fr 1fr;} }
@media (max-width:820px){
  .telefon-wrap{margin:20px auto 10px;}
  .powiadomienie{left:-10px;top:40px;width:220px;}
  .telefon-wrap .stamp{right:-6px;}
  .porownanie{grid-template-columns:1fr;}
}
@media (max-width:560px){
  .funkcje{grid-template-columns:1fr;}
  .telefon{width:240px;}
  .powiadomienie{left:-6px;width:200px;font-size:0.75rem;}
}

/* polityka prywatności */
.tekst-prawny h2{font-family:var(--serif);font-weight:500;font-size:1.3rem;margin:36px 0 10px;}
.tekst-prawny p, .tekst-prawny li{color:var(--text-soft);font-size:0.97rem;max-width:68ch;}
.tekst-prawny ul{padding-left:20px;}
.tekst-prawny li{margin:5px 0;}
.tekst-prawny .data{font-family:var(--mono);font-size:0.82rem;color:var(--seal);}
footer .prawne{margin-left:14px;}

/* cennik: jeden pakiet */
.pakiet{display:grid;grid-template-columns:0.9fr 1.1fr;border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
.pakiet-cena{padding:36px 32px;border-right:1px solid var(--line);}
.pakiet-cena .label{font-family:var(--mono);font-size:0.8rem;color:var(--seal);letter-spacing:0.02em;}
.pakiet-cena h2{font-family:var(--serif);font-weight:500;font-size:1.6rem;margin:8px 0 4px;}
.pakiet-cena .price{font-family:var(--serif);font-size:2.6rem;font-weight:500;margin:14px 0 4px;}
.pakiet-cena .price small{font-family:var(--sans);font-size:0.95rem;font-weight:400;color:var(--text-soft);}
.pakiet-cena .price-note{font-size:0.9rem;color:var(--text-soft);margin:0 0 24px;}
.pakiet-lista{padding:30px 32px;background:var(--paper-white);}
.pakiet-lista h3{font-family:var(--serif);font-weight:500;font-size:1.12rem;margin:0 0 6px;}
.pakiet-lista ul{list-style:none;padding:0;margin:0 0 22px;}
.pakiet-lista ul:last-child{margin-bottom:0;}
.pakiet-lista li{padding:8px 0 8px 24px;position:relative;border-top:1px solid var(--line);font-size:0.95rem;}
.pakiet-lista li::before{content:"✓";position:absolute;left:0;color:var(--seal);}
@media (max-width:820px){
  .pakiet{grid-template-columns:1fr;}
  .pakiet-cena{border-right:none;border-bottom:1px solid var(--line);padding:28px 20px;}
  .pakiet-lista{padding:24px 20px;}
}

/* wizytówka: makieta strony */
.demo-sekcja{padding-top:10px;}
.przegladarka{max-width:860px;margin:0 auto;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#fff;box-shadow:0 24px 50px rgba(15,26,48,.14);}
.przegladarka-pasek{display:flex;align-items:center;gap:6px;padding:10px 14px;background:#ece7db;border-bottom:1px solid var(--line);}
.przegladarka-pasek > span{width:10px;height:10px;border-radius:50%;background:#cfc6b3;}
.przegladarka-pasek .adres{margin-left:12px;flex:1;background:#fff;border-radius:6px;padding:4px 12px;font-family:var(--mono);font-size:0.78rem;color:var(--text-soft);}
.wz{--k:#2f7d6d;font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:#1d2329;font-size:0.82rem;}
.wz-top{display:flex;justify-content:space-between;align-items:center;padding:12px 20px;border-bottom:1px solid #e6e9ec;flex-wrap:wrap;gap:8px;}
.wz-marka{display:flex;align-items:center;gap:8px;font-weight:700;}
.wz-logo{width:28px;height:28px;border-radius:50%;background:var(--k);color:#fff;display:grid;place-items:center;font-size:0.7rem;}
.wz-menu{color:#5b6670;font-size:0.76rem;}
.wz-hero{background:var(--k);color:#fff;padding:30px 20px;}
.wz-h1{font-size:1.5rem;font-weight:700;}
.wz-slogan{opacity:.9;margin:4px 0 14px;}
.wz-btn{display:inline-block;background:#fff;color:var(--k);font-weight:700;padding:7px 14px;border-radius:8px;font-size:0.78rem;}
.wz-sek{padding:18px 20px;}
.wz-alt{background:#f3f6f5;}
.wz-h2{font-weight:700;font-size:1rem;margin-bottom:10px;display:flex;align-items:center;gap:8px;}
.wz-linie span{display:block;height:7px;background:#e3e7ea;border-radius:4px;margin:7px 0;width:92%;}
.wz-linie .krotka{width:55%;}
.wz-karty{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;}
.wz-karty > div{background:#fff;border:1px solid #e3e7ea;border-radius:8px;padding:10px;}
.wz-karty b{display:block;}
.wz-karty span{display:block;height:6px;background:#e3e7ea;border-radius:3px;margin:8px 0;}
.wz-karty em{font-style:normal;color:var(--k);font-weight:700;}
.wz-foto{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;}
.wz-foto span{aspect-ratio:4/3;border-radius:6px;background:linear-gradient(135deg,#b9d3cc,#6fa597);}
.wz-foto span:nth-child(2){background:linear-gradient(135deg,#e2cfae,#b8966a);}
.wz-foto span:nth-child(3){background:linear-gradient(135deg,#c8d0db,#8595ab);}
.wz-foto span:nth-child(4){background:linear-gradient(135deg,#dcc4c0,#a8807a);}
.wz-foto span:nth-child(5){background:linear-gradient(135deg,#cfd9b8,#95a86a);}
.wz-kontakt{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:center;}
.wz dl{margin:0;display:grid;grid-template-columns:auto 1fr;gap:4px 12px;}
.wz dt{color:#6a747d;}
.wz dd{margin:0;}
.wz .mono{font-family:var(--mono);font-size:0.72rem;}
.wz-mapa{height:110px;border-radius:8px;background:#e3e7ea;display:grid;place-items:center;color:#6a747d;}
.pin{
  display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--seal);color:#fff;
  font-style:normal;font-family:var(--mono);font-size:0.72rem;font-weight:500;box-shadow:0 0 0 3px rgba(178,58,46,.18);flex-shrink:0;
}
.podpis-demo{text-align:center;color:var(--text-soft);font-size:0.9rem;margin:18px 0 0;display:flex;justify-content:center;align-items:center;gap:8px;flex-wrap:wrap;}
.porownanie-jasne > div{background:var(--paper-white);}
.porownanie-jasne > div + div{border-left:1px solid var(--line);}
.porownanie-jasne li::before{content:"•";position:absolute;left:4px;color:var(--seal);}
@media (max-width:820px){
  .porownanie-jasne > div + div{border-left:none;border-top:1px solid var(--line);}
}
@media (max-width:560px){
  .wz-karty{grid-template-columns:1fr;}
  .wz-foto{grid-template-columns:repeat(3,1fr);}
  .wz-foto span:nth-child(n+4){display:none;}
  .wz-kontakt{grid-template-columns:1fr;}
  .wz-menu{display:none;}
}
@media (max-width:1040px) and (min-width:821px){ .topbar nav{gap:18px;font-size:0.9rem;} }

/* nawigacja zwija się wcześniej, bo w pasku jest rozwinięcie skrótu */
@media (max-width:1080px){
  .menu-btn{display:inline-block;flex-shrink:0;margin-left:12px;}
  .topbar nav{
    display:none;position:absolute;top:100%;left:0;right:0;z-index:20;
    flex-direction:column;gap:0;background:var(--paper-white);
    border-top:1px solid var(--line);border-bottom:1px solid var(--line);
    box-shadow:0 12px 24px rgba(15,26,48,.12);
  }
  .topbar nav.open{display:flex;}
  .topbar nav a{padding:14px 24px;border-top:1px solid var(--line);font-size:1rem;}
  .topbar nav a:first-child{border-top:none;}
  .topbar nav a.nav-cta{border-radius:0;}
}
@media (max-width:560px){ .brand-skrot{font-size:0.58rem;} .topbar{padding:12px 16px;} }

/* zajawka wizytówki na stronie głównej */
.wiz-zajawka{display:grid;grid-template-columns:1.1fr 0.9fr;gap:48px;align-items:center;}
.wiz-zajawka h2{font-family:var(--serif);font-weight:500;font-size:clamp(1.6rem,2.6vw,2.05rem);margin:0 0 12px;}
.wiz-zajawka p{color:var(--text-soft);margin:0 0 24px;max-width:52ch;}
.wiz-zajawka .cta.ghost.jasny{margin-left:10px;}
.wiz-mini{display:block;text-decoration:none;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#fff;box-shadow:0 18px 40px rgba(15,26,48,.12);transform:rotate(-1.5deg);transition:transform .2s;}
.wiz-mini:hover{transform:rotate(0);}
.wiz-mini span{display:block;}
.wiz-mini-pasek{background:#ece7db;font-family:var(--mono);font-size:0.72rem;color:var(--text-soft);padding:8px 12px;}
.wiz-mini-hero{background:#2f7d6d;color:#fff;padding:22px 16px;font-family:system-ui,Arial,sans-serif;font-weight:700;font-size:1.1rem;}
.wiz-mini-hero small{display:block;font-weight:400;font-size:0.78rem;opacity:.9;margin-top:4px;}
.wiz-mini-karty,.wiz-mini-foto{display:grid!important;grid-template-columns:repeat(3,1fr);gap:8px;padding:12px 16px 0;}
.wiz-mini-foto{grid-template-columns:repeat(4,1fr);padding-bottom:16px;}
.wiz-mini-karty i{height:42px;border:1px solid #e3e7ea;border-radius:6px;}
.wiz-mini-foto i{aspect-ratio:4/3;border-radius:5px;background:linear-gradient(135deg,#b9d3cc,#6fa597);}
.wiz-mini-foto i:nth-child(2){background:linear-gradient(135deg,#e2cfae,#b8966a);}
.wiz-mini-foto i:nth-child(3){background:linear-gradient(135deg,#c8d0db,#8595ab);}
@media (max-width:820px){ .wiz-zajawka{grid-template-columns:1fr;gap:32px;} .wiz-zajawka .cta.ghost.jasny{margin-left:0;} }

/* formularz zgłoszenia */
.formularz{max-width:760px;}
.formularz fieldset{border:1px solid var(--line);background:var(--paper-white);border-radius:3px;padding:20px 22px 6px;margin:0 0 20px;}
.formularz legend{font-family:var(--serif);font-size:1.15rem;padding:0 8px;}
.siatka{display:grid;grid-template-columns:1fr 1fr;gap:0 18px;}
.siatka .cale{grid-column:1/-1;}
.formularz label{display:block;font-size:0.9rem;font-weight:500;margin-bottom:16px;}
.formularz input:not([type=checkbox]),.formularz select,.formularz textarea{
  display:block;width:100%;margin-top:6px;padding:11px 12px;border:1px solid #cbbfa6;border-radius:2px;
  font:inherit;font-weight:400;background:#fff;color:var(--navy-ink);
}
.formularz input:focus,.formularz select:focus,.formularz textarea:focus{outline:2px solid var(--seal);outline-offset:0;border-color:transparent;}
.formularz small{display:block;color:var(--text-soft);font-weight:400;font-size:0.82rem;margin-top:4px;}
.pole-sub{display:flex;align-items:stretch;margin-top:6px;}
.pole-sub input{margin-top:0!important;border-right:none!important;}
.pole-sub span{display:flex;align-items:center;padding:0 12px;border:1px solid #cbbfa6;background:#ece7db;font-family:var(--mono);font-size:0.85rem;}
.formularz .zaznacz{display:flex;gap:10px;align-items:flex-start;font-weight:400;}
.formularz .zaznacz input{margin-top:3px;width:18px;height:18px;flex-shrink:0;accent-color:var(--seal);}
.formularz .zgoda{margin:6px 0 22px;}
.formularz .mala{font-size:0.84rem;color:var(--text-soft);margin-top:12px;}
.ukryte{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden;}
.bledy{background:#fbe9e6;border:1px solid #e7b9b2;color:#7c2419;padding:14px 18px;border-radius:3px;margin-bottom:22px;max-width:760px;}
.bledy ul{margin:6px 0 0;padding-left:20px;}
@media (max-width:560px){ .siatka{grid-template-columns:1fr;} .formularz fieldset{padding:16px 14px 4px;} }

footer .nota-prawna{flex-basis:100%;margin:6px 0 0;font-size:0.8rem;color:var(--text-soft);opacity:.85;max-width:90ch;}
footer .nota-prawna a{text-decoration:underline;}

/* instrukcja zakładania adresu */
.przelacznik{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px;}
.przelacznik .cta{margin:0;}
.instrukcja-sekcja{padding-top:36px;padding-bottom:36px;}
.instrukcja-sekcja .section-head{margin-bottom:26px;}
.nr-sekcji{display:inline-block;font-family:var(--mono);font-size:0.8rem;color:var(--seal);margin-bottom:6px;}
.ramka-info{background:var(--paper-white);border:1px solid var(--line);border-left:4px solid var(--seal);padding:22px 26px;border-radius:3px;}
.ramka-info h2{font-family:var(--serif);font-weight:500;font-size:1.3rem;margin:0 0 10px;}
.ramka-info ul{margin:0;padding-left:20px;color:var(--text-soft);}
.ramka-info li{margin:8px 0;}
.kroki{list-style:none;counter-reset:krok;padding:0;margin:0;max-width:760px;}
.kroki li{counter-increment:krok;position:relative;padding:0 0 26px 62px;}
.kroki li::before{
  content:counter(krok);position:absolute;left:0;top:-2px;width:40px;height:40px;border-radius:50%;
  border:2px solid var(--seal);color:var(--seal);font-family:var(--mono);font-weight:500;display:grid;place-items:center;background:var(--paper);
}
.route-section .kroki li::before{background:var(--paper-white);}
.kroki li::after{content:"";position:absolute;left:20px;top:42px;bottom:4px;border-left:2px dashed var(--line);}
.kroki li:last-child::after{display:none;}
.kroki h3{font-family:var(--serif);font-weight:500;font-size:1.15rem;margin:6px 0 6px;}
.kroki p{margin:0;color:var(--text-soft);}
.kroki .krok-wazny::before{background:var(--seal);color:#fff;}
.kroki .krok-wazny h3::after{content:" – nie pomijaj";font-family:var(--mono);font-size:0.75rem;color:var(--seal);}
.wskazowka{max-width:760px;background:var(--paper-white);border:1px dashed var(--line);padding:14px 18px;color:var(--text-soft);font-size:0.94rem;margin:8px 0 0;}
.zrodla{font-size:0.84rem;color:var(--text-soft);margin-top:22px;max-width:80ch;}
@media (max-width:560px){ .kroki li{padding-left:52px;} .kroki li::before{width:34px;height:34px;} .kroki li::after{left:17px;top:36px;} }

/* czerwony pasek informacyjny pod menu */
.pasek-info{background:var(--seal);color:#fff;text-align:center;padding:10px 24px;font-size:0.95rem;letter-spacing:0.01em;}
.pasek-info strong{font-family:var(--mono);font-weight:500;text-transform:uppercase;letter-spacing:0.08em;margin-right:4px;background:#fff;color:var(--seal);padding:2px 8px;border-radius:2px;}
.pasek-info a{color:#fff;}
@media (max-width:560px){ .pasek-info{font-size:0.85rem;padding:9px 16px;} }

/* cennik: dwie ceny obok siebie */
.ceny-pakietu{display:flex;align-items:flex-end;gap:0;margin:14px 0 8px;flex-wrap:nowrap;}
.pakiet-cena .ceny-pakietu .price{margin:0;display:flex;flex-wrap:wrap;align-items:baseline;gap:0 5px;padding-right:16px;font-size:2.15rem;white-space:nowrap;}
.pakiet-cena .ceny-pakietu .price-pt{color:var(--seal);border-left:1px solid var(--line);padding-left:16px;padding-right:0;}
.ceny-pakietu .price-pt small{color:var(--seal);}
.price-kto{flex-basis:100%;font-family:var(--mono);font-size:0.72rem;color:var(--text-soft);letter-spacing:0.02em;margin-top:4px;}
.price-pt .price-kto{color:var(--seal);}
@media (max-width:420px){ .pakiet-cena .ceny-pakietu .price{font-size:1.75rem;padding-right:12px;} .pakiet-cena .ceny-pakietu .price-pt{padding-left:12px;} }
.ceny-pakietu .kw{white-space:nowrap;}

/* formularz: zaznaczenie brakujących pól */
.formularz .pole-blad input:not([type=checkbox]),.formularz .pole-blad select,.formularz .pole-blad textarea{border-color:var(--seal);box-shadow:0 0 0 2px rgba(178,58,46,.18);}
.formularz .zaznacz.pole-blad{background:#fbe9e6;outline:2px solid var(--seal);outline-offset:4px;border-radius:2px;}
.pole-komunikat{display:block;color:var(--seal);font-size:0.85rem;font-weight:600;margin-top:6px;}
.bledy:focus{outline:2px solid var(--seal);outline-offset:2px;}
