@font-face{font-family:'Literata';font-style:normal;font-weight:600;font-display:swap;src:url(fonty/literata-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:'Literata';font-style:normal;font-weight:600;font-display:swap;src:url(fonty/literata-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:'Literata';font-style:normal;font-weight:700;font-display:swap;src:url(fonty/literata-latin-ext-700-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:'Literata';font-style:normal;font-weight:700;font-display:swap;src:url(fonty/literata-latin-700-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:'Schibsted Grotesk';font-style:normal;font-weight:400;font-display:swap;src:url(fonty/schibsted-grotesk-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:'Schibsted Grotesk';font-style:normal;font-weight:400;font-display:swap;src:url(fonty/schibsted-grotesk-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:'Schibsted Grotesk';font-style:normal;font-weight:500;font-display:swap;src:url(fonty/schibsted-grotesk-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:'Schibsted Grotesk';font-style:normal;font-weight:500;font-display:swap;src:url(fonty/schibsted-grotesk-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:'Schibsted Grotesk';font-style:normal;font-weight:700;font-display:swap;src:url(fonty/schibsted-grotesk-latin-ext-700-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:'Schibsted Grotesk';font-style:normal;font-weight:700;font-display:swap;src:url(fonty/schibsted-grotesk-latin-700-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{
  --paper:#F6F2E9; --paper2:#EEE7D8; --card:#FFFDF8;
  --green:#1B4B2F; --green2:#143A24; --green-ink:#0B2415; --logo:#2BA84A;
  --ink:#17211C; --muted:#56635C; --line:#DDD4C2;
  --red:#C2352A; --red-soft:#F7E2DD; --rule:#DFE5E8;
  --serif:'Literata', Georgia, 'Times New Roman', serif;
  --sans:'Schibsted Grotesk', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --wrap:1120px; --gut:20px;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:400 17px/1.6 var(--sans);-webkit-font-smoothing:antialiased}
img,svg{display:block;max-width:100%}
a{color:inherit}
h1,h2,h3{font-family:var(--serif);font-weight:600;line-height:1.12;margin:0;letter-spacing:-.01em}
p{margin:0}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--gut)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
:focus-visible{outline:3px solid var(--red);outline-offset:3px;border-radius:4px}

/* nagłówek */
.top{background:var(--paper);border-bottom:1px solid var(--line)}
.top .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:68px}
.logo{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--logo)}
.logo svg{height:30px;width:auto}
.logo-text{font:600 12.5px/1.2 var(--sans);letter-spacing:.06em;text-transform:uppercase;color:var(--ink);border-left:2px solid var(--logo);padding-left:11px}
.nav{display:none;gap:26px;font-weight:500;font-size:15.5px}
.nav a{text-decoration:none;color:var(--ink)}
.nav a:hover{color:var(--red)}
.top-call{display:inline-flex;align-items:center;gap:8px;text-decoration:none;font-weight:700;font-size:15px;background:var(--card);border:1.5px solid var(--ink);border-radius:10px;padding:8px 12px;white-space:nowrap}
.top-call svg{width:16px;height:16px}
.top-call .num{display:none}

/* przyciski */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font:700 17px/1.2 var(--sans);text-decoration:none;border-radius:12px;padding:16px 22px;border:0;cursor:pointer;transition:transform .12s ease, box-shadow .12s ease}
.btn svg{width:20px;height:20px;flex:none}
.btn-call{background:var(--green);color:#fff;box-shadow:0 4px 0 var(--green-ink)}
.btn-call:hover{transform:translateY(-1px);box-shadow:0 5px 0 var(--green-ink)}
.btn-call:active{transform:translateY(3px);box-shadow:0 1px 0 var(--green-ink)}
.btn-line{background:transparent;color:var(--ink);border:2px solid var(--ink);padding:14px 20px}
.btn-line:hover{background:var(--ink);color:var(--paper)}

/* HERO – kartka z zeszytu */
.hero{--margin:max(14px, calc((100% - var(--wrap)) / 2 - 22px));
  background:
    linear-gradient(90deg, transparent calc(var(--margin) - 1px), rgba(194,53,42,.55) calc(var(--margin) - 1px), rgba(194,53,42,.55) calc(var(--margin) + 1px), transparent calc(var(--margin) + 1px)),
    repeating-linear-gradient(180deg, transparent 0 35px, var(--rule) 35px 36px),
    var(--paper);
  border-bottom:1px solid var(--line);padding:38px 0 46px}
.hero .wrap{padding-left:30px}
.hero-grid{display:grid;gap:34px}
.eyebrow{display:inline-flex;flex-wrap:wrap;gap:6px 14px;font-weight:500;font-size:14.5px;color:var(--muted);margin-bottom:18px}
.eyebrow span{display:inline-flex;align-items:center;gap:6px}
.eyebrow span+span::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--red);margin-right:4px}
.h1-kicker{display:block;font:700 13px/1.4 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--red);margin-bottom:14px}
.hero h1{font-size:clamp(2.25rem, 7.2vw, 4.15rem);line-height:1.04;letter-spacing:-.02em}
.hero h1 em{font-style:normal;color:var(--green)}
.circled{position:relative;display:inline-block;white-space:nowrap;z-index:0;margin-left:.12em}
.circled svg{position:absolute;left:-7%;top:-16%;width:114%;height:136%;color:var(--red);pointer-events:none;z-index:-1;overflow:visible}
.lead{font-size:18.5px;line-height:1.6;color:#2C3832;margin-top:22px;max-width:36em}
.cta{display:flex;flex-wrap:wrap;gap:14px;margin-top:28px}
.hours-note{margin-top:16px;font-size:14.5px;color:var(--muted)}
.rating{display:inline-flex;align-items:center;gap:10px;margin-top:22px;background:var(--card);border:1px solid var(--line);border-radius:10px;padding:9px 14px;font-size:15px}
.stars{color:#E0A100;letter-spacing:2px;font-size:16px}

/* placeholder do uzupełnienia */
.ph{outline:2px dashed var(--red);outline-offset:2px;background:rgba(194,53,42,.07);border-radius:4px;padding:0 4px}

/* teczka z zakładkami */
.folder{position:relative;max-width:520px;width:100%;justify-self:center}
.folder-tabs{display:flex;gap:4px;padding-left:12px;position:relative;z-index:1}
.folder-tabs button{font:700 14.5px/1 var(--sans);letter-spacing:.02em;color:var(--muted);background:var(--paper2);border:1px solid var(--line);border-bottom:0;border-radius:10px 10px 0 0;padding:12px 14px 13px;cursor:pointer;margin-bottom:-1px}
.folder-tabs button[aria-selected="true"]{background:var(--card);color:var(--ink);box-shadow:inset 0 3px 0 var(--red)}
.folder-body{background:var(--card);border:1px solid var(--line);border-radius:4px 16px 16px 16px;box-shadow:0 18px 40px -22px rgba(23,33,28,.35);padding:24px 22px 20px}
.panels{display:grid}
.panels>div{grid-area:1/1}
.panels>div[aria-hidden="true"]{visibility:hidden}
.folder-kicker{font:600 21px/1.25 var(--serif);margin-bottom:14px}
.checks{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.checks li{position:relative;padding-left:32px;line-height:1.45}
.checks li::before{content:"";position:absolute;left:0;top:1px;width:22px;height:22px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C2352A' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3.5 12.5l5.5 5.5L20.5 5.5'/%3E%3C/svg%3E") no-repeat center/contain}
.folder-price{margin-top:20px;padding-top:16px;border-top:1.5px dashed var(--line);display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.folder-price span{font-size:13.5px;line-height:1.3;color:var(--muted)}
.folder-price b{display:block;font:700 23px/1.1 var(--serif);color:var(--ink);margin-bottom:3px}
.folder-price small{grid-column:1/-1;font-size:13.5px;color:var(--muted);margin-top:4px}
.folder-price small a{color:var(--green);font-weight:700;white-space:nowrap}

/* pas z faktami */
.facts{background:var(--green);color:#EFE9DC}
.facts .wrap{display:grid;grid-template-columns:repeat(2,1fr);gap:0}
.fact{padding:22px 12px 22px 0;border-bottom:1px solid rgba(255,255,255,.14)}
.fact:nth-child(odd){padding-right:16px;border-right:1px solid rgba(255,255,255,.14)}
.fact:nth-child(even){padding-left:16px}
.fact:nth-last-child(-n+2){border-bottom:0}
.fact b{display:block;font:600 clamp(1.7rem, 5vw, 2.3rem)/1 var(--serif);color:#fff;margin-bottom:6px}
.fact span{font-size:14.5px;line-height:1.4}

/* sekcje */
.sec{padding:72px 0}
.sec-alt{background:var(--paper2)}
.kicker{display:flex;align-items:center;gap:10px;font:700 13px/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--red);margin-bottom:14px}
.kicker::before{content:"";width:22px;height:2px;background:var(--red)}
.sec h2{font-size:clamp(1.85rem, 4.6vw, 2.75rem);max-width:20em}
.sec-intro{margin-top:16px;color:#34403A;max-width:40em;font-size:18px}
.head{margin-bottom:36px}

/* oferta – fiszki */
.cards{display:grid;gap:18px}
.card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:26px 22px 24px;position:relative}
.card .tag{display:inline-block;font:700 12.5px/1 var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--red);background:var(--red-soft);border-radius:6px;padding:6px 8px;margin-bottom:14px}
.card h3{font-size:24px;margin-bottom:10px}
.card p{color:#34403A}
.card ul{margin:12px 0 0;padding-left:20px;color:#34403A}
.card ul li{margin:3px 0}
.card ul li::marker{color:var(--red)}

/* jak uczymy */
.how{background:var(--green);color:#EFE9DC}
.how .kicker{color:#F2B6AE}.how .kicker::before{background:#F2B6AE}
.how h2{color:#fff}
.how .sec-intro{color:#DCD5C7}
.how-grid{display:grid;gap:14px;margin-top:34px}
.how-item{border:1px solid rgba(255,255,255,.18);border-radius:14px;padding:20px 20px 18px}
.how-item b{display:block;font:600 22px/1.2 var(--serif);color:#fff;margin-bottom:6px}
.how-item span{font-size:15.5px;line-height:1.5}
.films{margin-top:18px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px 24px;background:var(--green2);border-radius:14px;padding:20px}
.films p{max-width:40em;font-size:15.5px}
.films p b{color:#fff}
.films a{color:#fff;font-weight:700;text-underline-offset:4px;white-space:nowrap}

/* cennik */
.prices{display:grid;gap:16px}
.price{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:24px 22px;display:flex;flex-direction:column;gap:6px}
.price h3{font:700 15px/1.3 var(--sans);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.price .amount{font:700 46px/1 var(--serif);letter-spacing:-.02em;margin-top:8px}
.price .amount small{font:500 16px/1 var(--sans);color:var(--muted);letter-spacing:0;margin-left:8px}
.price p{font-size:15.5px;color:#34403A}
.price .row{display:flex;justify-content:space-between;align-items:baseline;gap:10px;border-top:1px dashed var(--line);padding-top:10px;margin-top:8px;font-size:15.5px}
.price .row b{font:700 26px/1 var(--serif)}
.price.best{border:2px solid var(--green);position:relative}
.price.best .badge{position:absolute;top:-13px;left:20px;background:var(--green);color:#fff;font:700 12.5px/1 var(--sans);letter-spacing:.06em;text-transform:uppercase;padding:7px 10px;border-radius:6px}
.price-notes{margin-top:26px;display:grid;gap:10px 28px;padding:0;list-style:none;font-size:15.5px;color:#34403A}
.price-notes li{padding-left:22px;position:relative}
.price-notes li::before{content:"";position:absolute;left:2px;top:.62em;width:8px;height:8px;border-radius:2px;background:var(--red);transform:rotate(45deg)}

/* o szkole */
.about{display:grid;gap:30px;align-items:start}
.quote{font:600 clamp(2rem, 6vw, 3.2rem)/1.08 var(--serif);color:var(--green);position:relative;padding-left:22px;border-left:3px solid var(--red)}
.quote small{display:block;font:500 15px/1.4 var(--sans);color:var(--muted);margin-top:14px}
.about-text p+p{margin-top:14px}
.about-text p{color:#2C3832}

/* opinie */
.rev-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:30px}
.rev-score{display:flex;align-items:center;gap:14px;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:14px 18px}
.rev-score b{font:700 38px/1 var(--serif)}
.rev-score span{font-size:14.5px;color:var(--muted);line-height:1.35}
.rev-score .stars{color:#E0A100}
.reviews{display:grid;gap:16px}
.review{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:24px 22px;display:flex;flex-direction:column;gap:14px}
.review blockquote{margin:0;font-size:16.5px;line-height:1.6;color:#2C3832}
.review footer{display:flex;align-items:center;gap:10px;font-weight:700;font-size:15px}
.review .g{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:var(--paper2);font:700 13px/1 var(--sans);color:var(--muted)}
.more-link{display:inline-block;margin-top:22px;font-weight:700;color:var(--green);text-underline-offset:4px}

/* gdzie */
.where{display:grid;gap:16px}
.place{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:26px 22px}
.place h3{font-size:24px;margin-bottom:8px}
.place p{color:#34403A}
.place dl{display:grid;grid-template-columns:auto 1fr;gap:6px 16px;margin:16px 0 0;font-size:15.5px}
.place dt{color:var(--muted)}
.place dd{margin:0;font-weight:500}
.place .btns{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.place .btn{font-size:15.5px;padding:12px 16px}
.place .btn-line{padding:10px 14px}
.place.online{background:var(--green);border-color:var(--green);color:#EFE9DC}
.place.online h3{color:#fff}
.place.online p{color:#E3DDCF}
.devices{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.devices span{border:1px solid rgba(255,255,255,.25);border-radius:999px;padding:6px 12px;font-size:14px}

/* kroki */
.steps{display:grid;gap:16px;counter-reset:s;list-style:none;padding:0;margin:0}
.steps li{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:24px 22px;position:relative}
.steps li::before{counter-increment:s;content:counter(s);display:grid;place-items:center;width:44px;height:44px;border-radius:50%;border:2px solid var(--red);color:var(--red);font:700 22px/1 var(--serif);margin-bottom:14px}
.steps h3{font-size:22px;margin-bottom:8px}
.steps p{color:#34403A;font-size:16px}

/* FAQ */
.faq{max-width:820px}
.faq details{border-bottom:1px solid var(--line)}
.faq details:first-child{border-top:1px solid var(--line)}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:20px 0;font:600 20px/1.3 var(--serif)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";flex:none;width:32px;height:32px;border-radius:50%;border:1.5px solid var(--ink);display:grid;place-items:center;font:500 20px/1 var(--sans);transition:transform .15s ease}
.faq details[open] summary::after{content:"–";background:var(--ink);color:var(--paper)}
.faq details p{padding:0 0 22px;color:#34403A;max-width:44em}

/* formularz */
.form-wrap{display:grid;gap:30px}
.contact-side p{color:#34403A;margin-top:14px}
.contact-side .big-tel{display:inline-block;margin-top:18px;font:700 clamp(1.9rem, 6vw, 2.5rem)/1 var(--serif);color:var(--green);text-decoration:none;white-space:nowrap}
.contact-side .mail{display:block;margin-top:10px;font-weight:500}
form.f{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:26px 20px;display:grid;gap:16px}
.f .two{display:grid;gap:16px}
.f label{display:block;font-weight:700;font-size:14.5px;margin-bottom:6px}
.f label .opt{font-weight:400;color:var(--muted)}
.f input,.f select,.f textarea{width:100%;font:400 16px/1.4 var(--sans);color:var(--ink);background:#fff;border:1.5px solid #CFC6B3;border-radius:10px;padding:12px 13px}
.f select{appearance:none;-webkit-appearance:none;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2317211C' stroke-width='2.5' stroke-linecap='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") no-repeat right 12px center/18px;padding-right:40px}
.f textarea{min-height:110px;resize:vertical}
.f input:focus,.f select:focus,.f textarea:focus{outline:none;border-color:var(--green);box-shadow:0 0 0 3px rgba(27,75,47,.18)}
.f .btn{width:100%}
.f .note{font-size:13.5px;color:var(--muted);line-height:1.45}
.f .status{display:none;border-radius:10px;padding:12px 14px;font-weight:500;font-size:15px}
.f .status.ok{display:block;background:#E3EFE8;color:#174531}
.f .status.err{display:block;background:var(--red-soft);color:#7E1F17}
.hidden-field{display:none}

/* stopka */
.foot{background:var(--ink);color:#CFC8B9;padding:52px 0 32px;font-size:15px}
.foot-grid{display:grid;gap:28px}
.foot h3{font:600 20px/1.2 var(--serif);color:#fff;margin-bottom:10px}
.foot a{color:#fff;text-underline-offset:3px}
.foot p+p{margin-top:6px}
.foot .legal{border-top:1px solid rgba(255,255,255,.14);margin-top:34px;padding-top:20px;font-size:13.5px;display:flex;flex-wrap:wrap;gap:8px 20px;justify-content:space-between}

/* przyklejony pasek na telefonie */
.mbar{position:fixed;left:0;right:0;bottom:0;z-index:50;display:grid;grid-template-columns:1.2fr 1fr;gap:8px;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:rgba(246,242,233,.96);border-top:1px solid var(--line);backdrop-filter:blur(6px)}
.mbar .btn{padding:14px 10px;font-size:16px;box-shadow:none}
.mbar .btn-line{padding:12px 8px}
body{padding-bottom:78px}

@media (max-width:639px){
  .eyebrow{flex-direction:column;gap:2px}
  .eyebrow span+span::before{display:none}
  .h1-kicker{font-size:12px;letter-spacing:.07em}
  .folder-tabs{padding-left:6px;gap:3px}
  .folder-tabs button{font-size:13.5px;padding:11px 10px 12px}
  .folder-body{padding:22px 18px 18px}
  .folder-price{grid-template-columns:1fr;gap:6px}
  .folder-price span{display:flex;align-items:baseline;gap:10px;font-size:14.5px}
  .folder-price b{display:inline;min-width:4.4em;font-size:21px;margin:0}
  .fact b{font-size:1.6rem}
}
@media (min-width:640px){
  .cards{grid-template-columns:repeat(2,1fr)}
  .card:last-child{grid-column:1/-1}
  .prices{grid-template-columns:repeat(2,1fr)}
  .how-grid{grid-template-columns:repeat(2,1fr)}
  .reviews{grid-template-columns:repeat(2,1fr)}
  .steps{grid-template-columns:repeat(3,1fr)}
  .f .two{grid-template-columns:1fr 1fr}
  .price-notes{grid-template-columns:1fr 1fr}
  .foot-grid{grid-template-columns:1fr 1fr}
  .top-call .num{display:inline}
}
@media (min-width:900px){
  :root{--gut:28px}
  .hero{padding:64px 0 76px}
  .hero .wrap{padding-left:var(--gut)}
  .hero-grid{grid-template-columns:1.12fr .88fr;align-items:center;gap:56px}
  .nav{display:flex}
  .top{position:sticky;top:0;z-index:40}
  .facts .wrap{grid-template-columns:repeat(4,1fr)}
  .fact,.fact:nth-child(odd),.fact:nth-child(even){padding:26px 22px;border-bottom:0;border-right:1px solid rgba(255,255,255,.14)}
  .fact:first-child{padding-left:0}
  .fact:last-child{border-right:0}
  .sec{padding:96px 0}
  .cards{grid-template-columns:repeat(6,1fr)}
  .card,.card:last-child{grid-column:span 2}
  .card:nth-child(n+4){grid-column:span 3}
  .prices{grid-template-columns:1.15fr 1fr 1fr}
  .how-grid{grid-template-columns:repeat(4,1fr)}
  .reviews{grid-template-columns:repeat(3,1fr)}
  .about{grid-template-columns:.9fr 1.1fr;gap:64px}
  .where{grid-template-columns:1.2fr 1fr}
  .form-wrap{grid-template-columns:.8fr 1.2fr;gap:56px}
  form.f{padding:32px 30px}
  .foot-grid{grid-template-columns:1.3fr 1fr 1fr 1fr}
  .mbar{display:none}
  body{padding-bottom:0}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn{transition:none}}

/* ===== dodatki: strona finalna ===== */
.skip{position:absolute;left:-999px;top:8px;background:var(--ink);color:#fff;padding:10px 14px;border-radius:8px;z-index:100}
.skip:focus{left:8px}
.nav a[aria-current="page"]{color:var(--red)}

/* zdjęcia */
.photo{margin:0;border-radius:16px;overflow:hidden;background:var(--paper2);border:1px solid var(--line)}
.photo img{width:100%;height:auto;display:block}
.photo figcaption{font-size:14px;color:var(--muted);padding:10px 14px;background:var(--card)}
.offer-head{display:grid;gap:26px;align-items:end;margin-bottom:36px}
.offer-head .head{margin-bottom:0}
.offer-head .photo{max-width:440px}

/* karta: rozwijana lista w karcie */
.card details{margin-top:14px;border-top:1px dashed var(--line);padding-top:10px}
.card summary{cursor:pointer;font-weight:700;color:var(--green);font-size:15.5px}
.card details ul{margin-top:10px;font-size:15px}

/* poziomy */
.levels{display:grid;gap:14px}
.level-group{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:20px 20px 12px}
.level-group h3{font-size:21px;margin-bottom:8px}
.level-group details{border-top:1px solid var(--line)}
.level-group summary{cursor:pointer;list-style:none;display:flex;gap:12px;align-items:baseline;padding:12px 0;font-weight:500}
.level-group summary::-webkit-details-marker{display:none}
.level-group summary b{font:700 20px/1 var(--serif);color:var(--green);min-width:2.2em}
.level-group summary::after{content:"+";margin-left:auto;font-weight:700;color:var(--muted)}
.level-group details[open] summary::after{content:"–"}
.level-group details ul{margin:0 0 14px;padding-left:20px;font-size:15.5px;color:#34403A}
.level-group details li{margin:4px 0}
.level-group details li::marker{color:var(--red)}

/* cennik 1:1 */
.price .lines{display:grid;gap:0;margin-top:6px}
.price .lines .row:first-child{border-top:0;margin-top:0}
.price-head{font:700 15px/1.3 var(--sans);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}

/* konto */
.account{margin-top:26px;background:var(--green);color:#EFE9DC;border-radius:16px;padding:22px 20px;display:grid;gap:14px}
.account h3{font:600 21px/1.2 var(--serif);color:#fff}
.account p{font-size:15px;line-height:1.5}
.account .nr{white-space:nowrap;font:700 clamp(.95rem,4.1vw,1.6rem)/1.2 var(--sans);letter-spacing:.02em;color:#fff;font-variant-numeric:tabular-nums;word-spacing:.12em}
.copy{justify-self:start;font:700 15px/1 var(--sans);background:#fff;color:var(--green);border:0;border-radius:10px;padding:12px 16px;cursor:pointer}
.copy:hover{background:#F3EDE0}
.account-sm{margin-top:20px;background:var(--card);border:1px solid var(--line);border-left:4px solid var(--green);border-radius:12px;padding:14px 16px;font-size:15px}
.account-sm b{display:block;white-space:nowrap;font-size:min(17px,4.2vw);letter-spacing:.03em;margin-top:4px;font-variant-numeric:tabular-nums}

/* warunki uczestnictwa – wyróżnione */
.terms{background:var(--card);border:2px solid var(--ink);border-radius:20px;padding:28px 20px;box-shadow:8px 8px 0 var(--green)}
.terms h2{font-size:clamp(1.5rem,4.2vw,2.2rem);max-width:none}
.terms ol{list-style:none;counter-reset:w;margin:24px 0 0;padding:0;display:grid;gap:0}
.terms li{counter-increment:w;position:relative;padding:16px 0 16px 52px;border-top:1px solid var(--line);font-size:16.5px;line-height:1.6;color:#22302A}
.terms li::before{content:counter(w);position:absolute;left:0;top:13px;width:36px;height:36px;border-radius:50%;background:var(--red);color:#fff;display:grid;place-items:center;font:700 17px/1 var(--serif)}

/* blog – skrót na stronie głównej */
.posts{display:grid;gap:14px;list-style:none;margin:0;padding:0}
.posts li{background:var(--card);border:1px solid var(--line);border-radius:14px}
.posts a{display:block;padding:18px 20px;text-decoration:none}
.posts a:hover .t{color:var(--red)}
.posts .t{display:block;font:600 20px/1.3 var(--serif)}
.posts time,.posts .d{display:block;font-size:14px;color:var(--muted);margin-top:6px}
.more{display:inline-flex;margin-top:22px;font-weight:700;color:var(--green);text-underline-offset:4px}

/* strona Blog – lista */
.page-head{padding:44px 0 30px;border-bottom:1px solid var(--line);background:var(--paper)}
.page-head h1{font-size:clamp(2.2rem,7vw,3.6rem)}
.page-head p{margin-top:12px;color:#34403A;max-width:40em}
.search{margin-top:22px;max-width:520px}
.search input{width:100%;font:400 16px/1.4 var(--sans);border:1.5px solid #CFC6B3;border-radius:10px;padding:12px 14px;background:#fff}
.search input:focus{outline:none;border-color:var(--green);box-shadow:0 0 0 3px rgba(27,75,47,.18)}
.blog-list{list-style:none;margin:0;padding:0}
.blog-list li{border-bottom:1px solid var(--line)}
.blog-list a{display:flex;flex-direction:column;gap:4px;padding:14px 4px;text-decoration:none}
.blog-list a:hover .t{color:var(--red)}
.blog-list .t{font:600 18px/1.35 var(--serif)}
.blog-list .d{font-size:14px;color:var(--muted)}
.blog-list .ext{font-size:12.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--red);margin-left:6px;font-family:var(--sans)}
.count{font-size:14.5px;color:var(--muted);margin:18px 0 6px}
.none{display:none;padding:18px 0;color:var(--muted)}

/* wpis (nowy wygląd) */
.post{padding:40px 0 70px}
.post .wrap{max-width:760px}
.post .meta{font-size:14.5px;color:var(--muted);margin-bottom:12px}
.post h1{font-size:clamp(2rem,6.4vw,3.1rem);margin-bottom:22px}
.post h2{font-size:clamp(1.4rem,4vw,1.8rem);margin:34px 0 12px}
.post p{margin:0 0 16px;font-size:18px;line-height:1.7;color:#22302A}
.post ul,.post ol{margin:0 0 18px;padding-left:24px;font-size:18px;line-height:1.7}
.post li::marker{color:var(--red)}
.post img{border-radius:12px;margin:10px 0 20px}
.post .back{display:inline-flex;margin-top:24px;font-weight:700;color:var(--green);text-underline-offset:4px}
.post table{border-collapse:collapse;width:100%;margin:0 0 18px;font-size:16px}
.post td,.post th{border:1px solid var(--line);padding:8px 10px;text-align:left}

/* formularz – zgoda RODO */
.f .rodo{font-size:13px;line-height:1.5;color:var(--muted)}
.f .rodo a{color:var(--green)}

/* stopka – linki */
.foot-links{display:flex;flex-wrap:wrap;gap:6px 18px;margin-top:10px}

@media (min-width:640px){
  .prices.two{grid-template-columns:1fr 1fr}
  .levels{grid-template-columns:repeat(3,1fr)}
  .terms{padding:36px 36px}
  .account{grid-template-columns:1fr auto;align-items:end}
  .account .copy{justify-self:end}
}
@media (min-width:900px){
  .prices.two{grid-template-columns:1fr 1fr;max-width:900px}
  .offer-head{grid-template-columns:1.25fr .75fr;gap:48px}
  .offer-head .photo{justify-self:end}
  .blog-list a{flex-direction:row;justify-content:space-between;align-items:baseline;gap:24px}
  .blog-list .d{white-space:nowrap}
  .posts{grid-template-columns:repeat(3,1fr)}
  .terms li{font-size:17px}
}
