/* Układ: ciepła, kolorowa strona w stylu Kasi (paleta A: rubin i granat), prawdziwe zdjęcia z Porto. Rubin tylko na głównym przycisku. */
:root{
  --bg:#FAF6EE; --sand:#E7DDCB; --ocean:#5B7A99; --navy:#14233B; --ruby:#D8103E;
  --ink:#14233B; --muted:#4f5d70; --line:#d9ccb4; --card:#fffdf8; --on-navy:#FAF6EE;
  --serif:'Playfair Display',Georgia,serif; --sign:'Great Vibes',cursive; --sans:'Manrope',system-ui,sans-serif;
}
*{box-sizing:border-box}
body.psm-m{background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.7;margin:0}
.msx a,.msh a,.msf a{color:inherit;text-decoration:none}
.msx img{display:block;width:100%;height:100%;object-fit:cover}
.wrap{max-width:1160px;margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
.msx h1,.msx h2,.msx h3,.msh h1,footer.msf h4{font-family:var(--serif);font-weight:500;line-height:1.08;margin:0;text-wrap:balance}
.eyebrow{font-size:.72rem;letter-spacing:.26em;text-transform:uppercase;color:var(--ocean);font-weight:600}
.banner{background:var(--navy);color:#FAF6EE;font-size:.78rem;text-align:center;padding:.5rem 1rem}
.banner b{color:#E7DDCB}
.msh{position:sticky;top:env(safe-area-inset-top,0px);z-index:5;background:color-mix(in srgb,var(--bg) 92%,transparent);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.nav{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-block:.8rem}
.logo{display:flex;align-items:center;gap:.8rem}
.logo svg{width:46px;height:46px;flex:none}
.logo .w{display:flex;flex-direction:column;line-height:1}
.logo .w b{font-family:var(--serif);font-weight:600;font-size:1.5rem;letter-spacing:.04em}
.logo .w i{font-style:normal;font-size:.6rem;letter-spacing:.5em;color:var(--ocean);margin-top:.35rem;font-weight:600}
.msh nav{display:flex;gap:1.7rem;font-size:.84rem;letter-spacing:.06em}
.msh nav a:hover{color:var(--ocean)}
.btn{display:inline-block;padding:.95rem 1.8rem;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;font-weight:600;border:1.5px solid var(--navy);transition:.25s;color:var(--ink)}
.btn.cta{background:var(--ruby);border-color:var(--ruby);color:#fff}
.btn.cta:hover{filter:brightness(.92)}
.btn.line:hover{background:var(--navy);color:#fff}
.nav .btn{padding:.65rem 1.2rem}


.hero{padding-block:clamp(32px,6vw,80px)}
.hero .grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(24px,5vw,64px);align-items:center}
.hero h1{font-size:clamp(2.6rem,6vw,5rem);margin:1rem 0 1.3rem}
.hero h1 em{color:var(--ruby);font-style:italic;font-weight:400}
.hero .lead{font-size:1.08rem;color:var(--muted);max-width:30em;margin:0 0 2rem}
.cta-row{display:flex;gap:.9rem;flex-wrap:wrap}
.frame{position:relative}
.frame .pic{aspect-ratio:4/5;border-radius:999px 999px 18px 18px;overflow:hidden;border:6px solid var(--sand)}
.frame .pic img{object-position:50% 25%}
.stamp{position:absolute;left:-12px;bottom:30px;background:var(--navy);color:#FAF6EE;padding:.9rem 1.2rem;max-width:13rem;border-radius:4px}
.stamp b{display:block;font-family:var(--serif);font-size:1.5rem;font-weight:500;line-height:1.1}
.stamp span{font-size:.72rem;letter-spacing:.05em;color:#E7DDCB}
@media(max-width:860px){.hero .grid{grid-template-columns:1fr}.stamp{left:8px}}
.strip{background:var(--navy);color:#FAF6EE}
.strip .wrap{display:flex;justify-content:space-between;flex-wrap:wrap;gap:.5rem 2rem;padding-block:1.1rem;font-size:.76rem;letter-spacing:.14em;text-transform:uppercase}
.strip span::before{content:"✦";color:#9fb6cf;margin-right:.7rem}
.msx section{padding-block:clamp(52px,8vw,104px)}
.head{max-width:36rem;margin-bottom:2.6rem}
.head h2{font-size:clamp(2rem,4.4vw,3.2rem);margin-top:.8rem}
.head p{color:var(--muted);margin:1rem 0 0}
.about{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(24px,5vw,72px);align-items:center}
.about .pic{aspect-ratio:3/4;border-radius:18px;overflow:hidden;border:6px solid var(--sand)}
.about h2{font-size:clamp(2rem,4.2vw,3.1rem);margin:.8rem 0 1.2rem}
.about p{color:var(--muted);margin:0 0 1rem;max-width:34em}
.sign{font-family:var(--sign);font-style:normal;font-size:2.6rem;color:var(--ocean);margin-top:1rem}
@media(max-width:860px){.about{grid-template-columns:1fr}}
.offer{background:var(--sand)}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1.3rem}
.card{background:var(--card);padding:2rem 1.7rem;border:1px solid var(--line);border-radius:14px;display:flex;flex-direction:column;gap:.8rem;min-width:0}
.card .tag{font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;color:var(--ocean);font-weight:600}
.card h3{font-size:1.65rem}
.card p{color:var(--muted);margin:0;font-size:.95rem;flex:1}
.card .price{font-family:var(--serif);font-size:1.5rem}
.card a{font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;font-weight:600;color:var(--navy);border-bottom:1.5px solid var(--ocean);align-self:flex-start;padding-bottom:2px}
@media(max-width:860px){.cards{grid-template-columns:1fr}}
.porto{background:var(--navy);color:#FAF6EE;padding-block:0}
.porto .grid{display:grid;grid-template-columns:1fr 1fr}
.porto .big{min-height:480px}
.porto .txt{padding:clamp(40px,6vw,84px) clamp(20px,5vw,68px)}
.porto .eyebrow{color:#9fb6cf}
.porto h2{font-size:clamp(2.2rem,4.6vw,3.7rem);margin:.8rem 0 1.1rem}
.porto h2 em{color:#E7DDCB;font-style:italic;font-weight:400}
.porto p{color:#d3d9e3;max-width:30em;margin:0 0 1.4rem}
.facts{display:flex;gap:2.2rem;flex-wrap:wrap;margin-bottom:1.4rem;padding-block:1.1rem;border-block:1px solid #2f4263}
.facts b{display:block;font-family:var(--serif);font-size:1.8rem;font-weight:500;line-height:1.1}
.facts span{font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:#9fb6cf}
.terms{display:flex;flex-wrap:wrap;gap:.45rem;margin:0 0 1.8rem;padding:0;list-style:none}
.terms li{border:1px solid #3a4f73;border-radius:999px;padding:.25rem .8rem;font-size:.8rem;color:#E7DDCB}
.porto .btn.line{border-color:#E7DDCB;color:#FAF6EE}
@media(max-width:860px){.porto .grid{grid-template-columns:1fr}.porto .big{min-height:280px}}
.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:.6rem;padding:.6rem;background:var(--navy)}
.gallery div{aspect-ratio:3/4;overflow:hidden;border-radius:8px}
@media(max-width:700px){.gallery{grid-template-columns:repeat(2,1fr)}}
.quotes{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}
blockquote{margin:0;padding-top:1.2rem;border-top:3px solid var(--sand);min-width:0}
blockquote p{font-family:var(--serif);font-size:1.4rem;line-height:1.35;margin:0 0 .9rem;font-style:italic}
blockquote cite{font-style:normal;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
@media(max-width:860px){.quotes{grid-template-columns:1fr}}
.news{background:var(--sand)}
.news .box{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:center;background:var(--card);border:1px solid var(--line);border-radius:18px;padding:clamp(24px,4vw,52px)}
.news h2{font-size:clamp(1.8rem,3.6vw,2.7rem);margin:.7rem 0 .9rem}
.news p{color:var(--muted);margin:0}
.msx form{display:grid;gap:.7rem}
.msx input{font:inherit;padding:.9rem 1rem;border:1.5px solid var(--line);border-radius:8px;background:var(--bg);color:var(--ink);width:100%}
form small{color:var(--muted);font-size:.74rem;line-height:1.4}
@media(max-width:860px){.news .box{grid-template-columns:1fr}}
.posts{display:grid;grid-template-columns:repeat(3,1fr);gap:1.3rem}
.post{min-width:0}
.post .pic{aspect-ratio:3/2;border-radius:12px;overflow:hidden;margin-bottom:1rem}
.post small{font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;color:var(--ocean);font-weight:600}
.post h3{font-size:1.45rem;margin:.4rem 0 .4rem}
.post p{color:var(--muted);font-size:.92rem;margin:0}
@media(max-width:860px){.posts{grid-template-columns:1fr}}
.final{text-align:center;background:var(--sand)}
.final h2{font-size:clamp(2.1rem,5vw,3.8rem);max-width:15em;margin:1rem auto 1.1rem}
.final p{color:var(--muted);max-width:30em;margin:0 auto 1.8rem}
footer.msf{background:var(--navy);color:#FAF6EE;padding-block:2.6rem 1.8rem}
footer.msf .cols{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:2rem;padding-bottom:1.8rem;border-bottom:1px solid #2f4263}
footer.msf h4{font-size:.7rem;letter-spacing:.24em;text-transform:uppercase;color:#9fb6cf;margin:0 0 .8rem;font-weight:600}
footer.msf p,footer li{color:#cfd6e2;font-size:.9rem;margin:0}
footer.msf ul{list-style:none;margin:0;padding:0;display:grid;gap:.4rem}
footer.msf .copy{padding-top:1.2rem;font-size:.75rem;color:#93a0b6;display:flex;justify-content:space-between;flex-wrap:wrap;gap:.5rem}
@media(max-width:860px){footer .cols{grid-template-columns:1fr}}

.polwrap{background:var(--navy);padding-block:clamp(40px,6vw,80px)}
.polwrap .eyebrow{color:#9fb6cf;display:block;text-align:center;margin-bottom:2rem}
.pols{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(14px,2.4vw,30px)}
.pol{margin:0;background:#fffdf8;padding:10px 10px 0;box-shadow:0 10px 24px rgba(0,0,0,.35);transform:rotate(var(--r,0deg));transition:transform .3s;min-width:0}
.pol:nth-child(4n+1){--r:-3deg}.pol:nth-child(4n+2){--r:2deg}.pol:nth-child(4n+3){--r:-1.5deg}.pol:nth-child(4n){--r:3deg}
.pol:hover{transform:rotate(0) scale(1.04);z-index:2}
.pol img{aspect-ratio:1/1;height:auto}
.pol figcaption{font-family:var(--serif);font-style:italic;color:#14233B;text-align:center;font-size:1rem;padding:.6rem 0 .8rem;line-height:1.2}
@media(max-width:860px){.pols{grid-template-columns:repeat(2,1fr)}.pol:nth-child(odd){--r:-2deg}.pol:nth-child(even){--r:2deg}}
.apt-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;grid-template-rows:230px 230px;gap:.8rem}
.apt-grid>div{position:relative}.apt-grid .lbl{position:absolute;left:8px;bottom:8px;background:rgba(20,35,59,.8);color:#FAF6EE;font-size:.72rem;padding:.2rem .55rem;border-radius:999px}
.apt-grid>div{border-radius:14px;overflow:hidden;min-width:0}
.apt-grid .a1{grid-row:span 2}
.apt-grid .ph{border:2px dashed var(--line);display:flex;align-items:center;justify-content:center;text-align:center;color:var(--muted);font-family:var(--serif);font-size:1.2rem;background:var(--card)}
.apt-grid .ph small{font-family:var(--sans);font-size:.75rem}
@media(max-width:860px){.apt-grid{grid-template-columns:1fr 1fr;grid-template-rows:auto}.apt-grid .a1{grid-column:span 2;grid-row:auto;aspect-ratio:4/3}.apt-grid>div:not(.a1){aspect-ratio:1/1}}
.fontsw{position:fixed;right:12px;bottom:12px;z-index:20;background:#14233B;color:#FAF6EE;border-radius:999px;padding:.35rem;display:flex;gap:.3rem;font:600 .75rem system-ui;box-shadow:0 6px 18px rgba(0,0,0,.3)}
.fontsw span{padding:.4rem .5rem .4rem .7rem;opacity:.75}
.fontsw button{font:inherit;border:0;border-radius:999px;padding:.4rem .8rem;background:transparent;color:inherit;cursor:pointer}
.fontsw button[aria-pressed=true]{background:#D8103E}

.vids{background:var(--sand)}
.vtrack{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem}
.vt{margin:0;background:var(--card);border:1px solid var(--line);border-radius:16px;overflow:hidden;display:flex;flex-direction:column;min-width:0}
.vt video{width:100%;aspect-ratio:9/16;object-fit:cover;background:#14233B;display:block}
.vt figcaption{padding:1rem 1.1rem 1.2rem}
.vt p{font-family:var(--serif);font-style:italic;font-size:1.08rem;line-height:1.35;margin:0 0 .6rem}
.vt cite{font-style:normal;font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.vmore{display:none}@media(max-width:860px){.vtrack{grid-template-columns:1fr 1fr;gap:.7rem}.vt figcaption{padding:.7rem .75rem .9rem}.vt p{font-size:.9rem}.vt cite{font-size:.6rem;letter-spacing:.08em}.vtrack:not(.all) .vt:nth-child(n+5){display:none}.vmore{display:block;margin:1.4rem auto 0}.vtrack.all+.vmore{display:none}}
@media(max-width:860px){.apt-grid{grid-template-columns:1fr 1fr}}
.fontsw{flex-direction:column;align-items:stretch;border-radius:14px;padding:.5rem .6rem;gap:.35rem}
.fontsw .row{display:flex;align-items:center;gap:.25rem;flex-wrap:wrap}
.fontsw .row>span{width:5.2rem;padding:0;opacity:.75}
.fontsw .hide{position:absolute;top:-8px;right:-8px;width:22px;height:22px;padding:0;border-radius:50%;background:#D8103E}

.topbar{background:var(--navy);color:#E7DDCB;font-size:.78rem}
.topbar .tb{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding-block:.35rem}
.soc{list-style:none;margin:0;padding:0;display:flex;gap:.35rem}
.soc a{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;color:inherit;transition:.2s}
.soc a:hover{background:var(--ruby);color:#fff}
.soc svg{width:16px;height:16px}
.s-foot{margin-top:1rem}.s-foot a{width:36px;height:36px;border:1px solid #2f4263}.s-foot svg{width:18px;height:18px}
.logo .lg{height:58px;width:auto;display:block}
.fbrand .lg{height:74px;width:auto;margin-bottom:1rem;display:block}
footer.msf .cols{grid-template-columns:1.4fr 1fr 1.2fr}
footer.msf a{color:#E7DDCB}footer a:hover{color:#fff}
.fnav,.fcon{display:grid;gap:.45rem}
footer.msf .copy a{color:#cfd6e2;border-bottom:1px solid #3a4f73}
.totop{border:1px solid #3a4f73!important;border-radius:50%;width:34px;height:34px;display:grid;place-items:center}
.burger{display:none;background:none;border:0;width:44px;height:44px;padding:10px;cursor:pointer}
.burger span{display:block;height:2px;background:var(--ink);margin:5px 0;transition:.25s}
.mob-only{display:none}
@media(max-width:860px){
 .topbar .slogan{display:none}.topbar .tb{justify-content:center}
 .burger{display:block}.desk-only{display:none}
 .logo .lg{height:46px}
 nav#menu{display:none;position:absolute;left:0;right:0;top:100%;background:var(--bg);flex-direction:column;gap:0;padding:.5rem 16px 1.2rem;border-bottom:1px solid var(--line);box-shadow:0 12px 24px rgba(0,0,0,.12)}
 nav#menu a{padding:.9rem .2rem;border-bottom:1px solid var(--line);font-size:1rem}
 nav#menu .mob-only{display:block;text-align:center;margin-top:1rem;border:0;color:#fff}
 .msh.open nav#menu{display:flex}
 .msh.open .burger span:nth-child(1){transform:translateY(7px) rotate(45deg)}
 .msh.open .burger span:nth-child(2){opacity:0}
 .msh.open .burger span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
 .msh .nav{position:relative}
 footer .cols{grid-template-columns:1fr}
}
a:focus-visible,.btn:focus-visible,input:focus-visible{outline:2px solid var(--ruby);outline-offset:3px}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}

/* WordPress / Astra */
body.psm-m #masthead,body.psm-m .site-footer,body.psm-m #colophon{display:none!important}
body.psm-m .msh{position:sticky;top:0}
body.admin-bar.psm-m .msh{top:32px}
@media(max-width:782px){body.admin-bar.psm-m .msh{top:46px}}
body.psm-m .msh nav a,body.psm-m .msf a{text-decoration:none}
body.psm-m .msh .logo:focus,body.psm-m .msh a{box-shadow:none}
body.psm-front .site-content>.ast-container{max-width:none;padding:0;display:block}
body.psm-front #primary{margin:0;padding:0;width:100%}
body.psm-front .entry-header,body.psm-front .ast-breadcrumbs{display:none}
body.psm-front .entry-content>*{margin:0;max-width:none}
body.psm-front article.page{padding:0!important;margin:0!important;background:none}
body.psm-front .entry-content p{margin-block:0 1rem}
.msx a{text-decoration:none}.msx .btn.cta{color:#fff}
.msx h1,.msx h2,.msx h3{color:var(--ink)}.msx .porto h2,.msx .porto h3{color:#FAF6EE}
body.psm-m h1,body.psm-m h2,body.psm-m h3,body.psm-m h4{font-family:var(--serif)}
body.psm-m{font-family:var(--sans)}
.msx .sf{background:var(--card)}
.sfgrid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,5vw,64px);align-items:center}
.sfbox{background:var(--navy);color:#FAF6EE;border-radius:18px;padding:clamp(24px,4vw,48px)}
.sfbox b.big{display:block;font-family:var(--serif);font-size:clamp(3rem,7vw,5rem);line-height:1;font-weight:500}
.sfbox span{color:#E7DDCB;font-size:.8rem;letter-spacing:.14em;text-transform:uppercase}
.sfbox ul{margin:1.4rem 0 0;padding:0;list-style:none;display:grid;gap:.5rem;color:#d3d9e3}
.sfbox li::before{content:"✦";color:#9fb6cf;margin-right:.6rem}
.msx .sf h2{font-size:clamp(2rem,4.4vw,3.2rem);margin:.8rem 0 1rem}.msx .sf p{color:var(--muted);margin:0 0 1.4rem;max-width:32em}
.slots{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem;margin-bottom:2rem}
.slot{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:1.6rem}
.slot b{display:block;font-family:var(--serif);font-size:1.8rem;font-weight:500}
.slot span{color:var(--muted)}
.hot{display:inline-block;background:var(--ruby);color:#fff;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;padding:.3rem .8rem;border-radius:999px;margin-bottom:1rem;font-weight:600}
.terms li.on{background:var(--ruby);border-color:var(--ruby);color:#fff}
@media(max-width:860px){.sfgrid,.slots{grid-template-columns:1fr}}
.msx .wp-block-latest-posts{display:grid;grid-template-columns:repeat(3,1fr);gap:1.3rem;padding:0;margin:0}
@media(max-width:860px){.msx .wp-block-latest-posts{grid-template-columns:1fr}}
footer.msf ul.soc{display:flex;gap:.35rem}
/* Kafelki najnowszych wpisów na głównej */
.msx .wp-block-latest-posts.is-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem;padding:0 0 clamp(52px,8vw,104px);list-style:none}
.msx .wp-block-latest-posts.is-grid li{margin:0;width:auto!important;background:var(--card);border:1px solid var(--line);border-radius:14px;overflow:hidden;display:flex;flex-direction:column}
.msx .wp-block-latest-posts__featured-image{margin:0}.msx .wp-block-latest-posts__featured-image img{aspect-ratio:16/9;width:100%;height:auto;object-fit:cover}
.msx .wp-block-latest-posts__post-title{font-family:var(--serif);font-size:1.3rem;line-height:1.25;color:var(--ink);padding:1.1rem 1.2rem .4rem;display:block}
.msx .wp-block-latest-posts__post-excerpt{color:var(--muted);font-size:.92rem;padding:0 1.2rem 1.3rem;margin:0}
@media(max-width:860px){.msx .wp-block-latest-posts.is-grid{grid-template-columns:1fr}}
/* Wpis bloga: szerzej na komputerze, kremowa karta zamiast białej */
body.psm-m.single-post,body.psm-m.blog,body.psm-m.archive{background:var(--bg)}
body.psm-m.single-post .site-content>.ast-container{max-width:1000px}
body.psm-m.single-post article.post{background:var(--card)!important;border:1px solid var(--line);border-radius:18px;padding:clamp(20px,4vw,56px)!important}
body.psm-m.single-post .entry-title{font-family:var(--serif);font-size:clamp(2rem,4vw,2.9rem);line-height:1.12;color:var(--ink)}
body.psm-m.single-post .entry-meta,body.psm-m.single-post .entry-meta a{color:var(--ocean);font-size:.8rem;letter-spacing:.06em}
body.psm-m.single-post .entry-content{font-size:1.08rem;line-height:1.8;color:#2b3546}
body.psm-m.single-post .entry-content h2{font-family:var(--serif);font-size:clamp(1.6rem,3vw,2.1rem);margin:2.2rem 0 .8rem;color:var(--ink)}
body.psm-m.single-post .entry-content a{color:var(--ruby);text-decoration:underline;text-underline-offset:3px}
body.psm-m.single-post .entry-content strong{color:var(--ink)}
.psm-hero-img{margin:0 0 2rem}.psm-hero-img img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:12px;display:block}
/* Resztki niebieskiego z Astry → kolory marki */
body.psm-m .entry-content a,body.psm-m .entry-meta a,body.psm-m .ast-blog-meta-container a,body.psm-m .cat-links a,body.psm-m .comment-reply-link,body.psm-m .logged-in-as a{color:var(--ruby)}
body.psm-m .entry-meta,body.psm-m .ast-blog-meta-container,body.psm-m .cat-links{color:var(--ocean)}
body.psm-m #ast-scroll-top{background:var(--ruby)!important;color:#fff!important}
body.psm-m .ast-separate-container .ast-article-post,body.psm-m .ast-separate-container .ast-article-single,body.psm-m .ast-separate-container .comments-area .comment-respond,body.psm-m .ast-separate-container .ast-archive-description,body.psm-m .ast-separate-container .comments-area{background:var(--card)!important;border:1px solid var(--line);border-radius:14px}
body.psm-m .ast-archive-description .ast-archive-title{font-family:var(--serif);color:var(--ink)}
body.psm-m .comment-form .submit,body.psm-m .ast-button,body.psm-m button.wp-element-button,body.psm-m input[type=submit]{background:var(--ruby)!important;border-color:var(--ruby)!important;color:#fff!important;border-radius:0;letter-spacing:.12em;text-transform:uppercase;font-size:.78rem;font-weight:600}
body.psm-m .entry-title a{color:var(--ink)}body.psm-m .entry-title a:hover{color:var(--ruby)}
/* Kontakt */
.msx .kontakt{padding-block:clamp(48px,7vw,96px)}
.kgrid{display:grid;grid-template-columns:1.1fr .9fr;background:var(--card);border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:0 24px 60px rgba(20,35,59,.10)}
.kform{padding:clamp(24px,4vw,52px)}
.kform form{display:grid;gap:.35rem}
.kform label{font-weight:600;font-size:.85rem;color:var(--ink);margin-top:.7rem}
.kform input,.kform select,.kform textarea{font:inherit;width:100%;padding:.85rem 1rem;border:1.5px solid var(--line);border-radius:8px;background:#fff;color:var(--ink)}
.kform input:focus,.kform select:focus,.kform textarea:focus{outline:none;border-color:var(--ruby);box-shadow:0 0 0 3px rgba(216,16,62,.12)}
.kform .mk-ok{display:flex;gap:.6rem;align-items:flex-start;font-weight:400;font-size:.82rem;color:var(--muted)}
.kform .mk-ok input{width:auto;margin-top:.25rem}
.kform .mk-ok a{color:var(--ruby);text-decoration:underline}
.kform .btn{margin-top:1.2rem;justify-self:start;cursor:pointer;border:0}
.kphoto img{height:100%;min-height:520px;object-position:50% 30%}
.kinfo{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:2.6rem;text-align:center}
.kinfo h3{font-size:1.3rem;margin-bottom:.4rem}.kinfo p{color:var(--muted);margin:0}.kinfo a{color:var(--ruby)}
@media(max-width:860px){.kgrid{grid-template-columns:1fr}.kphoto{order:-1}.kphoto img{min-height:280px;max-height:360px}.kinfo{grid-template-columns:1fr}}
/* Poprawki mobile 19.10 */
/* 25.10: clip zamiast hidden – hidden psul przyklejone menu (sticky) */
html,body.psm-m,body{overflow-x:clip!important;overflow-y:visible!important;max-width:100%}
body.psm-m .msx,body.psm-m .msf,body.psm-m .msh,body.psm-m .topbar{max-width:100vw;overflow-x:clip}
footer.msf ul.soc{flex-wrap:wrap}
@media(max-width:860px){footer.msf .s-foot a{width:34px;height:34px}.topbar .soc a{width:28px;height:28px}}
.msx .slot .hot,.msx .hot{color:#fff!important}
body.psm-m .msx a,body.psm-m .msx .btn,body.psm-m .msh a,body.psm-m .msf a{text-decoration:none!important}
body.psm-m .msx .btn.cta,body.psm-m .msh .btn.cta{color:#fff!important}
body.psm-m .msx .btn.line{color:var(--ink)!important}
body.psm-m .msh .burger,body.psm-m .msh .burger:hover,body.psm-m .msh .burger:focus{background:transparent!important;border:0!important;box-shadow:none!important;padding:10px!important;color:var(--ink)}
body.psm-m .msh .burger span{background:var(--ink)!important}
body.psm-m .msx .cta-row{flex-wrap:wrap}
@media(max-width:480px){body.psm-m .msx .btn{padding:.9rem 1.2rem;font-size:.72rem}}
@media(max-width:860px){footer.msf .cols{grid-template-columns:1fr!important}}
/* Drobiazgi 19.10 03:15 */
body.psm-m .kform select{height:auto!important;min-height:50px;line-height:1.4!important;padding:.75rem 2.4rem .75rem 1rem!important}
body.psm-m .msx button.btn.line{background:transparent!important;color:var(--ink)!important;border:1.5px solid var(--navy)!important}
body.psm-m .msx button.btn.line:hover{background:var(--navy)!important;color:#fff!important}
body.psm-m .msx .wp-block-latest-posts__post-title{color:var(--ink)!important}
body.psm-m .msx .wp-block-latest-posts__post-title:hover{color:var(--ruby)!important}

/* 25.10: odstep w stopce miedzy adresem a social mediami; bez strzalki w stopce */
footer.msf .fcon{margin-bottom:1.6rem!important}
footer.msf .totop{display:none!important}
/* 25.10: zdjecia w siatce bloga na glownej */
.wp-block-latest-posts__featured-image img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}

/* 28.10: naglowki stopki h4 -> h3 (kolejnosc naglowkow pod PageSpeed), wyglad bez zmian */
footer.msf h3{font-family:var(--serif);line-height:1.08;text-wrap:balance;font-size:.7rem;letter-spacing:.24em;text-transform:uppercase;color:#9fb6cf;margin:0 0 .8rem;font-weight:600}
