/* == trenerdorian == */
/* trenerdorian - motyw potomny base, pełny własny CSS (standalone_css).
   Świat „Plan wyprawy”, wersja ciemna w barwach goLIFT (Navy Dark): czarne tło, granat w sekcjach i liniach, złoto tylko w przycisku i punkcie celu.
   Familjen Grotesk (OFL, zmienna) w nagłówkach, Poppins (OFL) w tekście. Fonty self-hosted. */
@font-face{font-family:'Familjen Grotesk';font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/familjen-grotesk-latin-ext-wght-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:'Familjen Grotesk';font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/familjen-grotesk-latin-wght-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:'Poppins';font-style:normal;font-weight:400;font-display:swap;src:url(/assets/poppins-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:'Poppins';font-style:normal;font-weight:400;font-display:swap;src:url(/assets/poppins-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:'Poppins';font-style:normal;font-weight:500;font-display:swap;src:url(/assets/poppins-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:'Poppins';font-style:normal;font-weight:500;font-display:swap;src:url(/assets/poppins-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:'Poppins';font-style:normal;font-weight:600;font-display:swap;src:url(/assets/poppins-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:'Poppins';font-style:normal;font-weight:600;font-display:swap;src:url(/assets/poppins-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}

:root{
  --ground:#0b0b0c;--ground-2:#0b1524;--ground-3:#10203a;--ink:#f1f1f1;--ink-2:#d2d2d2;--mute:#a3abb8;--rule:#1f2c44;--dash:#4b6cb0;
  --red:#fbbf24;--red-deep:#d5a419;--on-gold:#111111;--error:#f87171;
  --gutter:clamp(1rem,4.2vw,2.5rem);--wide:80rem;--measure:44rem;
  --edge:max(var(--gutter),calc((100vw - var(--wide)) / 2));
  --font-ui:Poppins,system-ui,-apple-system,'Segoe UI',sans-serif;
  --font-head:'Familjen Grotesk',Poppins,system-ui,sans-serif;
  --ease:cubic-bezier(.2,.7,.2,1);
  color-scheme:dark;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:1.25rem;background:var(--ground)}
body{margin:0;background:var(--ground);color:var(--ink);font:400 1rem/1.62 var(--font-ui);text-rendering:optimizeLegibility;overflow-x:hidden}
img,picture{max-width:100%}
img{height:auto;display:block}
picture{display:block}
a{color:inherit;text-underline-offset:.2em;text-decoration-thickness:1px}
a:hover{text-decoration-thickness:2px}
::selection{background:var(--ink);color:var(--ground)}
:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
h1,h2,h3,h4{font-family:var(--font-head);letter-spacing:-.02em;text-wrap:balance;margin:0}
h1{font-weight:700;font-size:clamp(2.1rem,4.4vw + .4rem,3.6rem);line-height:1.04;letter-spacing:-.028em;margin:0 0 22px}
h2{font-weight:700;font-size:clamp(1.7rem,2.2vw + .9rem,2.5rem);line-height:1.08;margin:0 0 14px}
h3{font-weight:600;font-size:1.12rem;line-height:1.3;margin:0 0 6px}
p{margin:0 0 14px}
.tnum{font-variant-numeric:tabular-nums}
.skip-link{position:absolute;left:-999px;top:0;background:var(--ink);color:var(--ground);padding:10px 14px;z-index:20}
.skip-link:focus{left:0}
.visually-hidden{position:absolute!important;clip:rect(0 0 0 0);clip-path:inset(50%);width:1px;height:1px;overflow:hidden;white-space:nowrap}

/* --- nawigacja --- */
.nav{display:flex;align-items:center;gap:28px;padding:20px var(--edge);border-bottom:1px solid var(--rule);position:relative}
.mark{font:700 1.15rem/1 var(--font-head);text-decoration:none;margin-right:auto;letter-spacing:-.01em}
.mark span{display:block;font:400 .78rem/1.3 var(--font-ui);color:var(--mute);margin-top:3px;letter-spacing:0}
.links{display:flex;gap:22px;font-size:.92rem}
.links a{text-decoration:none;color:#e6e6e6;white-space:nowrap}
.links a:hover,.links a[aria-current]{text-decoration:underline;text-underline-offset:5px}
.book{font:500 .9rem/1 var(--font-ui);padding:11px 16px;border:1.5px solid var(--ink);border-radius:2px;text-decoration:none;white-space:nowrap}
.book:hover{background:var(--ink);color:var(--ground)}
.nav-sub{position:relative}
.nav-sub summary{list-style:none;cursor:pointer;color:#e6e6e6;white-space:nowrap}
.nav-sub summary::-webkit-details-marker{display:none}
.nav-sub summary::after{content:"";display:inline-block;width:.36em;height:.36em;margin-left:.5em;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-.15em) rotate(45deg)}
.nav-sub[open] summary::after{transform:translateY(.05em) rotate(-135deg)}
.nav-sub summary:hover,.nav-sub[open] summary{text-decoration:underline;text-underline-offset:5px}
.nav-sub>div{position:absolute;left:-14px;top:calc(100% + 14px);z-index:12;min-width:13rem;display:grid;background:var(--ground-3);border:1px solid var(--rule);border-radius:2px;padding:6px 0}
.nav-sub>div a{display:block;padding:10px 14px}
.nav-sub>div a:hover{background:var(--ground-2)}
.lang-switch a{font-size:.85rem;text-decoration:none;color:var(--mute)}
.menu{display:none}
.menu summary{list-style:none;cursor:pointer;font:500 .9rem/1 var(--font-ui);padding:10px 0}
.menu summary::-webkit-details-marker{display:none}
.menu nav{position:absolute;left:0;right:0;top:100%;z-index:10;background:var(--ground-3);border-bottom:1px solid var(--rule);padding:8px var(--edge) 18px;display:grid}
.menu nav a{text-decoration:none;padding:13px 0;border-bottom:1px solid var(--rule);font-size:1.02rem}
.menu nav>a:last-child{border-bottom:0;font-weight:600}
.menu nav .sub-h{padding:13px 0 6px;font-size:1.02rem;border-bottom:0}
.menu nav .sub{display:grid;border-bottom:1px solid var(--rule)}
.menu nav .sub a{padding:9px 0 9px 18px;border-bottom:0;font-size:.95rem;color:var(--ink-2)}
.menu nav a:has(+.sub){border-bottom:0;padding-bottom:6px}

/* --- przyciski (core/buttons) --- */
.wp-block-buttons{display:flex;flex-wrap:wrap;gap:14px 24px;align-items:center;margin:0}
.wp-block-button__link,.btn{display:inline-block;font:600 1rem/1 var(--font-ui);background:var(--red-deep);color:var(--on-gold);text-decoration:none;padding:17px 24px;border-radius:2px;border:0;cursor:pointer;box-shadow:0 10px 22px -12px rgb(213 164 25 / .5)}
.wp-block-button__link:hover,.btn:hover{background:var(--red);text-decoration:none}
.wp-block-button.is-style-outline .wp-block-button__link{background:none;color:var(--ink);box-shadow:none;padding:6px 0;font-weight:500;text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:1px;border-radius:0}
.wp-block-button.is-style-outline .wp-block-button__link:hover{background:none;text-decoration-thickness:2px}
.more,p.more a{font-weight:500;text-decoration:underline;text-underline-offset:5px}

/* --- sekcje --- */
.page-flow>*{margin-inline:0}
.page-flow>:not(.wp-block-group){max-width:var(--measure);padding-inline:var(--gutter);margin-inline:auto}
.page-flow>h2:first-child,.page-flow>h1:first-child{margin-top:64px}
.sec,.wp-block-group.sec{padding:72px var(--edge)}
.sec--alt{background:var(--ground-2)}
.sub,p.sub{color:var(--ink-2);max-width:56ch}
.note,p.note{font-size:.82rem;color:var(--mute);margin-top:18px}
.sec--split{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:0 56px;align-items:start}
.sec--split>h2{grid-column:1;grid-row:1 / span 40;position:sticky;top:24px}
.sec--split>*:not(h2){grid-column:2;max-width:62ch}
.sec--split>.wp-block-buttons{margin-top:6px}
.sec--split ul,.sec--split ol{padding-left:1.2rem;margin:0 0 14px}
.sec--split li{margin-bottom:6px;color:var(--ink-2)}
.sec--split p{color:var(--ink-2)}

/* --- hero --- */
.hero,.phero{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);background:var(--ground-2);padding:0!important}
.phero{grid-template-columns:minmax(0,6fr) minmax(0,6fr)}
.hero-copy,.phero-copy{padding:64px 48px 52px var(--edge);display:flex;flex-direction:column;justify-content:center}
.hero h1{margin:0 0 22px}
.phero h1{font-size:clamp(2.2rem,4.6vw,3.7rem);line-height:1.02;margin:0 0 18px}
.lead,p.lead{color:var(--ink-2);font-size:1.02rem;max-width:44ch;margin:0 0 30px}
.hero-photos{position:relative;min-height:580px}
.hero-photos .photo-main{position:absolute;inset:0;margin:0}
.hero-photos .photo-main picture,.hero-photos .photo-main img{width:100%;height:100%}
.hero-photos .photo-main img{object-fit:cover;object-position:34% 38%}
.hero-photos .photo-inset{position:absolute;left:24px;bottom:28px;width:min(40%,280px);margin:0;background:var(--ground-3);padding:8px 8px 10px;box-shadow:0 22px 36px -16px rgb(0 0 0 / .8)}
.hero-photos .photo-inset img{width:100%;aspect-ratio:4/3;object-fit:cover}
.hero-photos .photo-inset figcaption{font:500 .78rem/1.35 var(--font-ui);color:#b9b9b9;margin:7px 0 0;text-align:left}
.phero>figure{margin:0;min-height:440px}
.phero>figure picture,.phero>figure img{width:100%;height:100%}
.phero>figure img{object-fit:cover;object-position:30% 30%;min-height:440px}

/* --- trasa (lista numerowana w sekcji .route) --- */
.route{padding:36px var(--edge) 44px!important;background:var(--ground)}
.route h2{font:600 .95rem/1.3 var(--font-ui);letter-spacing:0;margin:0 0 22px}
.route ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.route li{position:relative;padding:30px 20px 0 0;font-size:.88rem;color:var(--mute);margin:0;max-width:34ch}
.route li strong{display:block;font:600 1.02rem/1.3 var(--font-head);color:var(--ink);margin-bottom:4px;letter-spacing:-.01em}
.route li::before{content:"";position:absolute;top:6px;left:0;width:13px;height:13px;border-radius:50%;background:var(--ground);border:2px solid var(--ink);z-index:1}
.route li::after{content:"";position:absolute;top:12px;left:13px;right:0;border-top:2px dashed var(--dash)}
.route li:first-child::before{background:var(--ink)}
.route li:first-child::after{border-top:3px solid var(--ink);top:11px}
.route li:last-child{color:var(--ink)}
.route li:last-child::before{width:17px;height:17px;top:4px;border-color:var(--red);background:var(--red)}
.route li:last-child::after{display:none}

/* --- ludzie --- */
.people-row{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px;margin-top:28px}
.people-row--2{grid-template-columns:repeat(2,minmax(0,16rem));margin-top:8px}
.person{margin:0}
.person figure{margin:0}
.person img{width:100%;aspect-ratio:3/4;object-fit:cover;filter:saturate(.92)}
.person h3{margin:14px 0 6px}
.person p{position:relative;margin:0;padding:0 0 4px 20px;font-size:.86rem;line-height:1.46;color:var(--ink-2)}
.person p::before{content:"";position:absolute;left:0;top:5px;width:9px;height:9px;border-radius:50%;border:2px solid var(--red);background:var(--red)}

/* --- aplikacja goLIFT --- */
.appview-text{max-width:56ch}
.phones{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px;margin-top:34px;align-items:start}
.phones figure{margin:0}
.phones img{width:100%;aspect-ratio:640/1391;object-fit:cover;border:1px solid #333;border-radius:20px;box-shadow:0 26px 40px -22px rgb(0 0 0 / .9)}
.phones figcaption{font-size:.84rem;line-height:1.4;color:var(--mute);margin-top:12px;max-width:26ch}
.phones figcaption strong{display:block;color:var(--ink);font:600 .98rem/1.3 var(--font-head);margin-bottom:2px}

/* --- metoda: zasady + cytat --- */
.method{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:56px;align-items:start}
.method p{color:var(--ink-2);max-width:56ch}
.wp-block-quote{margin:26px 0 0;padding:0}
.wp-block-quote p{font:600 1.35rem/1.3 var(--font-head);letter-spacing:-.015em;color:var(--ink);margin:0;max-width:24ch}

/* --- opinie --- */
.reviews{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 56px;margin-top:28px}
.reviews .wp-block-quote{margin:0;padding:18px 0 0;border-top:1px solid var(--rule)}
.reviews .wp-block-quote p{font:400 1.05rem/1.6 var(--font-ui);letter-spacing:0;color:var(--ink-2);max-width:60ch}
.reviews .wp-block-quote cite{display:block;margin-top:12px;font:600 .92rem/1.3 var(--font-head);font-style:normal;color:var(--ink)}
.reviews-source{margin-top:24px;font-size:.88rem;color:var(--mute)}

/* --- pakiety --- */
.packs{margin-top:22px;border-top:2px solid var(--ink)}
.pack{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto;gap:24px;align-items:center;padding:18px 0;border-bottom:1px solid var(--rule)}
.pack h3{margin:0}
.pack p{margin:0}
.pack .per{color:var(--mute);font-size:.88rem;white-space:nowrap;font-variant-numeric:tabular-nums}
.pack .price{font:700 1.5rem/1 var(--font-head);white-space:nowrap;font-variant-numeric:tabular-nums}
.pack .wp-block-button__link{font:500 .9rem/1 var(--font-ui);padding:11px 16px;border:1.5px solid var(--ink);background:none;color:var(--ink);box-shadow:none;border-radius:2px}
.pack .wp-block-button__link:hover{background:var(--ink);color:var(--ground)}
.packs-note{font-size:.88rem;color:var(--mute);margin-top:14px}
.packs-note a{color:var(--ink)}

/* --- usługi --- */
.services{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.svc{background:var(--ground-2)}
.svc figure{margin:0}
.svc img{width:100%;aspect-ratio:16/10;object-fit:cover}
.svc-body{padding:22px 24px 26px}
.svc p{color:var(--ink-2);max-width:48ch}
.svc p.more{margin:0}

/* --- o mnie (skrót) --- */
.about{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:48px;align-items:center}
.about figure{margin:0}
.about img{width:100%;aspect-ratio:1;object-fit:cover}
.about p{color:var(--ink-2);max-width:60ch}

/* --- faq (cms/faq) --- */
.sec--faq .cms-faq{max-width:52rem}
.cms-faq details{border-top:1px solid var(--rule);padding:16px 0}
.cms-faq details:last-child{border-bottom:1px solid var(--rule)}
.cms-faq summary{cursor:pointer;font:600 1.05rem/1.4 var(--font-head);list-style:none;display:flex;justify-content:space-between;gap:16px}
.cms-faq summary::-webkit-details-marker{display:none}
.cms-faq summary::after{content:"+";font:400 1.4rem/1 var(--font-ui);color:var(--mute)}
.cms-faq details[open] summary::after{content:"–"}
.cms-faq .faq-a{color:var(--ink-2);margin:10px 0 0;max-width:60ch}

/* --- zamknięcie --- */
.sec--closing{background:var(--ground-3)}
.sec--closing h2{max-width:20ch}

/* --- dla kogo / nie dla kogo --- */
.fit{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px}
.fit ul{margin:0;padding:0;list-style:none}
.fit li{padding:12px 0 12px 22px;border-top:1px solid var(--rule);position:relative;color:var(--ink-2);margin:0}
.fit li::before{content:"";position:absolute;left:0;top:22px;width:9px;height:2px;background:var(--ink)}
.fit .no li{color:var(--mute)}
.fit .no li::before{background:var(--mute)}

/* --- etapy (kroki w pionie) --- */
.steps ol{list-style:none;margin:24px 0 0;padding:0;max-width:52rem}
.steps li{position:relative;padding:0 0 26px 40px;color:var(--ink-2);margin:0}
.steps li strong{color:var(--ink)}
.steps li::before{content:"";position:absolute;left:0;top:6px;width:13px;height:13px;border-radius:50%;border:2px solid var(--ink);background:var(--ground)}
.steps li:first-child::before{background:var(--ink)}
.steps li::after{content:"";position:absolute;left:6px;top:21px;bottom:2px;border-left:2px dashed var(--dash)}
.steps li:first-child::after{border-left:3px solid var(--ink);left:5px}
.steps li:last-child::before{border-color:var(--red);background:var(--red);width:17px;height:17px;left:-2px;top:4px}
.steps li:last-child::after{display:none}

/* --- lista kurów i szkoleń: gęsta, bez ozdób --- */
.sec--split h3{font-size:1.02rem;margin:22px 0 6px;color:var(--ink)}
.sec--split h3:first-of-type{margin-top:0}

/* --- zdjęcie w treści --- */
.wp-block-image{margin:0 0 14px}
.wp-block-image figcaption{font-size:.82rem;color:var(--mute);margin-top:8px}

/* --- wpisy / archiwum --- */
.archive-title,.list-title{font-size:clamp(2rem,3.4vw,3rem);margin:0 0 18px}
.post-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(18rem,1fr));gap:28px;margin-top:28px}
.card{background:var(--ground-2)}
.card-thumb img{width:100%;aspect-ratio:16/10;object-fit:cover}
.card-body{padding:18px 20px 22px}
.card-title{font-size:1.18rem;line-height:1.25;margin:0 0 6px}
.card-title a{text-decoration:none}
.card-title a:hover{text-decoration:underline}
.card-meta{font-size:.8rem;color:var(--mute);margin:0 0 8px}
.card-excerpt{font-size:.92rem;color:var(--ink-2);margin:0}
.pagination{display:flex;justify-content:space-between;margin-top:36px;font-weight:500}
.empty-note{color:var(--mute)}
.article{padding:56px var(--edge) 72px}
.article-head,.article-body,.article-foot{max-width:var(--measure);margin-inline:auto}
.article-head .lead{margin-bottom:12px}
.article .meta{font-size:.85rem;color:var(--mute)}
.article-body{margin-top:28px}
.article-body h2{margin-top:40px;font-size:1.7rem}
.article-body h3{margin-top:28px}
.article-body p,.article-body li{color:var(--ink-2);max-width:68ch}
.article-body ul,.article-body ol{padding-left:1.3rem}
.article-body blockquote{margin:24px 0;padding:0 0 0 20px;border-left:1px solid var(--dash)}
.article-body table{border-collapse:collapse;width:100%;font-size:.92rem;display:block;overflow-x:auto}
.article-body td,.article-body th{border-bottom:1px solid var(--rule);padding:8px 12px 8px 0;text-align:left;vertical-align:top}
.terms{list-style:none;padding:0;margin:28px 0 0;display:flex;gap:10px;flex-wrap:wrap}
.terms a{font-size:.85rem;color:var(--mute)}

/* --- kontakt --- */
.sec--contact{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,4fr);gap:0 56px;align-items:start}
.contact-intro{grid-column:1 / -1;margin-bottom:12px}
.contact-intro h1{font-size:clamp(2.1rem,4vw,3.2rem)}
.contact-intro .page-flow>:not(.wp-block-group){max-width:44rem;padding-inline:0;margin-inline:0}
.contact-intro .page-flow>h1:first-child{margin-top:0}
.contact-main{grid-column:1}
.contact-side{grid-column:2;border-top:2px solid var(--ink);padding-top:18px;margin-top:24px}
.contact-side h2{font:600 1rem/1.3 var(--font-head);margin:0 0 6px}
.contact-side p{color:var(--ink-2);font-size:.95rem;margin-bottom:20px}
.contact-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 20px;margin-top:24px;max-width:52rem}
.contact-form p{margin:0}
.contact-form .full{grid-column:1 / -1}
.contact-form label,.contact-form legend{display:block;font:500 .88rem/1.3 var(--font-ui);margin-bottom:6px;color:var(--ink)}
.contact-form input[type=text],.contact-form input[type=email],.contact-form input[type=tel],.contact-form select,.contact-form textarea{width:100%;font:400 1rem/1.4 var(--font-ui);color:var(--ink);background:var(--ground);border:1px solid #2c3d5c;border-radius:2px;padding:12px 14px}
.contact-form input:hover,.contact-form select:hover,.contact-form textarea:hover{border-color:var(--dash)}
.contact-form textarea{min-height:130px;resize:vertical}
.contact-form fieldset{border:0;padding:0;margin:0}
.contact-form .checks{display:flex;flex-wrap:wrap;gap:8px 18px}
.contact-form .checks label,.contact-form .consent label{display:flex;gap:8px;align-items:flex-start;font-weight:400;color:var(--ink-2);margin:0}
.contact-form input[type=checkbox]{accent-color:var(--red-deep);width:18px;height:18px;margin:2px 0 0;flex:none}
.contact-form .consent{font-size:.86rem}
.contact-form button.btn{font-family:var(--font-ui)}
.form-ok,.form-error{grid-column:1 / -1;margin:18px 0 0;padding:12px 0 0;border-top:1px solid var(--ink);font-weight:500}
.form-error{color:var(--error)}
.hp-field{position:absolute;left:-10000px}

/* --- stopka --- */
.foot{padding:36px var(--edge) 48px;border-top:1px solid var(--rule);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;font-size:.88rem;color:var(--mute)}
.foot b{color:var(--ink);font-weight:600;display:block;margin-bottom:4px}
.foot a{color:var(--ink-2)}
.sticky{display:none}

@media (max-width:1080px){
  .links,.nav .book{display:none}
  .menu{display:block}
  .nav{gap:18px}
}
@media (max-width:760px){
  .reviews{grid-template-columns:minmax(0,1fr);gap:22px}
  .sec,.wp-block-group.sec{padding-block:52px}
  .nav{padding-block:16px}
  .hero,.phero{grid-template-columns:1fr}
  .hero-copy,.phero-copy{padding:30px var(--gutter) 26px}
  h1{font-size:2.05rem;margin-bottom:16px}
  .phero h1{font-size:2.3rem}
  .lead,p.lead{font-size:.97rem;margin-bottom:22px}
  .hero .wp-block-buttons .wp-block-button:not(.is-style-outline){display:none}
  .hero-photos{min-height:0}
  .hero-photos .photo-main{position:relative;inset:auto}
  .hero-photos .photo-main img{aspect-ratio:4/5;height:auto;object-position:58% 40%}
  .hero-photos .photo-inset{left:auto;right:14px;bottom:-34px;width:46%}
  .route{padding-top:58px!important}
  .route ol{grid-template-columns:1fr}
  .route li{padding:0 0 22px 32px;max-width:none}
  .route li::before{top:4px}
  .route li:last-child::before{top:2px;left:-2px}
  .route li::after{top:19px;bottom:-4px;left:6px;right:auto;border-top:0;border-left:2px dashed var(--dash)}
  .route li:first-child::after{border-left:3px solid var(--ink);left:5px;top:19px;border-top:0}
  .people-row,.phones{grid-template-columns:repeat(5,72%);overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px;margin-right:calc(var(--gutter) * -1);padding-right:var(--gutter)}
  .phones{grid-template-columns:repeat(5,58%)}
  .people-row--2{grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible;margin-right:0;padding-right:0}
  .person,.phones figure{scroll-snap-align:start}
  .method,.about,.fit,.sec--split,.sec--contact{grid-template-columns:1fr;gap:28px}
  .sec--split>h2{position:static;grid-row:auto;margin-bottom:6px}
  .sec--split>*:not(h2),.contact-main,.contact-side{grid-column:1}
  .services{grid-template-columns:1fr}
  .pack{grid-template-columns:minmax(0,1fr) auto;gap:6px 16px}
  .pack .per{grid-column:1}
  .pack .wp-block-buttons{grid-column:1 / -1;margin-top:6px}
  .pack .wp-block-button,.pack .wp-block-button__link{display:block;text-align:center}
  .foot{grid-template-columns:1fr;padding-bottom:110px}
  .phero>figure,.phero>figure img{min-height:0}
  .phero>figure img{aspect-ratio:4/3;height:auto}
  .contact-form{grid-template-columns:1fr}
  .sticky{display:flex;position:sticky;bottom:0;z-index:5;gap:10px;align-items:center;padding:10px 12px;background:var(--ground-2);border-top:1px solid var(--rule)}
  .sticky a{flex:1;text-align:center;font:600 .95rem/1 var(--font-ui);background:var(--red-deep);color:var(--on-gold);text-decoration:none;padding:15px 12px;border-radius:2px}
  .sticky span{font-size:.8rem;color:#c9c9c9;max-width:12ch;line-height:1.25}
}
@media (prefers-reduced-motion:no-preference){
  .wp-block-button__link,.btn,.book,.pack .wp-block-button__link{transition:background-color .2s var(--ease),color .2s var(--ease)}
}

