/* Krakowskie Rezydencje — prototyp v2, adaptacja stylu partnersinternational.pl
   Tokeny → Elementor: Site Settings › Global Colors / Global Fonts */
:root{
  --text:#262626;
  --text-2:#4A4A4A;
  --grey:#76767B;         /* szary opisowy (kontrast 4.6:1 na białym) */
  --bg:#FFFFFF;
  --bg-grey:#F5F5F7;
  --dark:#1E1E1E;         /* nagłówek sticky + stopka (białe logo) */
  --accent:#F9690E;       /* pomarańcz z logo — tylko akcenty graficzne */
  --line:#E2E2E6;
  --font:"Mulish",Helvetica,Arial,sans-serif;
  --frame:14px;           /* biała ramka slidera jak u Partners */
  --wrap:1320px;
  --gut:clamp(16px,4vw,48px);
}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--text);font:300 16px/1.7 var(--font);-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button{font-family:inherit}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--gut)}
.skip{position:absolute;left:-999px}.skip:focus{left:16px;top:16px;z-index:999;background:#fff;padding:8px 12px}

/* ---------- typografia Partners: mały szary eyebrow + duży jasny H2 kapitalikami ---------- */
.kicker{display:block;font:300 13px/1.3 var(--font);letter-spacing:.2em;text-transform:uppercase;color:var(--grey);margin:0 0 6px}
.title{font:200 30px/1.2 var(--font);letter-spacing:.05em;text-transform:uppercase;margin:0}
.title--xl{font-size:clamp(28px,3.2vw,40px)}
.sec-head{text-align:center;margin-bottom:36px}
.lede{font-size:17px;color:var(--text-2);max-width:62ch}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:46px;padding:0 26px;border:1px solid currentColor;background:none;color:inherit;font:600 12px/1 var(--font);letter-spacing:.18em;text-transform:uppercase;cursor:pointer;transition:background .25s,color .25s,border-color .25s}
.btn::after{content:"";width:18px;height:1px;background:currentColor;transition:width .25s}
.btn:hover::after{width:26px}
.btn--dark{background:var(--text);border-color:var(--text);color:#fff}
.btn--dark:hover{background:#000}
.btn--light:hover{background:#fff;color:var(--text);border-color:#fff}
.btn--plain::after{display:none}

/* ---------- nagłówek ---------- */
.hdr{position:fixed;top:0;left:0;right:0;z-index:50;color:#fff;transition:background .3s}
.hdr .bar{display:flex;align-items:center;justify-content:space-between;height:110px;padding:0 calc(var(--frame) + 34px);transition:height .3s}
.hdr .logo img{height:62px;width:auto;transition:height .3s}
.hdr.is-scrolled{background:var(--dark)}
.hdr.is-scrolled .bar{height:76px}
.hdr.is-scrolled .logo img{height:46px}
.hdr .tools{display:flex;align-items:center;gap:26px}
.hdr .tel{font:600 13px var(--font);letter-spacing:.14em}
.hdr .dev-link{font:600 12px var(--font);letter-spacing:.2em;text-transform:uppercase;padding:12px 0;border-bottom:1px solid transparent}
.hdr .dev-link:hover{border-color:var(--accent)}
.burger{width:46px;height:46px;border:1px solid rgba(255,255,255,.7);background:none;color:#fff;cursor:pointer;display:grid;place-items:center}
.burger span,.burger span::before,.burger span::after{display:block;width:20px;height:1px;background:currentColor;position:relative}
.burger span::before,.burger span::after{content:"";position:absolute;left:0}
.burger span::before{top:-6px}.burger span::after{top:6px}
@media (max-width:760px){.hdr .bar{padding:0 20px;height:84px}.hdr .logo img{height:48px}.hdr .tel,.hdr .dev-link{display:none}}

/* off-canvas menu */
.menu{position:fixed;inset:0;z-index:100;display:flex;justify-content:flex-end;visibility:hidden;transition:visibility .35s}
.menu.open{visibility:visible}
.menu__shade{position:absolute;inset:0;background:rgba(0,0,0,.45);opacity:0;transition:opacity .3s}
.menu.open .menu__shade{opacity:1}
.menu__panel{position:relative;width:min(440px,100%);height:100%;overflow:auto;background:#fff;color:var(--text);padding:28px 40px 40px;transform:translateX(100%);transition:transform .35s cubic-bezier(.2,.7,.2,1)}
.menu.open .menu__panel{transform:none}
.menu__close{position:absolute;top:22px;right:24px;width:46px;height:46px;border:1px solid var(--line);background:none;font-size:22px;cursor:pointer;color:var(--text)}
.menu nav{margin-top:56px}
.menu h3{font:600 12px var(--font);letter-spacing:.2em;text-transform:uppercase;color:var(--grey);margin:26px 0 6px}
.menu nav a{display:block;padding:8px 0;font:300 19px/1.3 var(--font);letter-spacing:.06em;text-transform:uppercase}
.menu nav a:hover{color:var(--accent)}
.menu .contact{margin-top:30px;border-top:1px solid var(--line);padding-top:20px;font-size:15px}

/* boczne ikony (jak Partners) */
.social-rail{position:fixed;left:0;top:50%;transform:translateY(-50%);z-index:40;display:flex;flex-direction:column;gap:4px}
.social-rail a{width:44px;height:44px;display:grid;place-items:center;color:var(--text);background:#fff}
.dock{position:fixed;right:0;top:50%;transform:translateY(-50%);z-index:40;display:flex;flex-direction:column;background:#fff;box-shadow:0 2px 14px rgba(0,0,0,.12)}
.dock a{width:52px;height:52px;display:grid;place-items:center;border-bottom:1px solid var(--line);color:var(--text)}
.dock a:hover,.social-rail a:hover{color:var(--accent)}
.dock svg,.social-rail svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.4}
@media (max-width:760px){.dock{top:auto;bottom:0;left:0;right:0;transform:none;flex-direction:row}.dock a{flex:1;border:0;border-right:1px solid var(--line)}.social-rail{display:none}body{padding-bottom:52px}}

/* ---------- hero slider w białej ramce ---------- */
.hero{position:relative;height:100vh;min-height:560px;max-height:980px;background:#fff;padding:0 var(--frame)}
.slides{position:relative;height:100%;overflow:hidden;background:#222}
.slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity 1.2s ease,visibility 1.2s}
.slide.is-active{opacity:1;visibility:visible}
.slide img{width:100%;height:100%;object-fit:cover}
.slide::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.45) 0%,rgba(0,0,0,0) 28%,rgba(0,0,0,0) 50%,rgba(0,0,0,.6) 100%)}
.slide__cap{position:absolute;right:9%;bottom:17%;z-index:2;color:#fff;text-align:right;max-width:680px}
.slide__cap .kicker{color:rgba(255,255,255,.9)}
.slide__cap h2{font:300 clamp(26px,3vw,38px)/1.25 var(--font);letter-spacing:.12em;text-transform:uppercase;margin:0 0 22px;text-shadow:0 1px 18px rgba(0,0,0,.35)}
.slide__cap h2 span{display:block}
.slider-nav button{position:absolute;top:50%;z-index:3;width:56px;height:56px;margin-top:-28px;border:0;background:none;color:#fff;cursor:pointer}
.slider-nav svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:1.2}
.slider-nav .prev{left:calc(var(--frame) + 20px)}.slider-nav .next{right:calc(var(--frame) + 20px)}
.dots{position:absolute;left:0;right:0;bottom:62px;z-index:3;display:flex;justify-content:center;gap:2px}
.dots button{width:26px;height:26px;border:0;background:none;cursor:pointer;display:grid;place-items:center}
.dots button::before{content:"";width:7px;height:7px;border-radius:50%;background:rgba(255,255,255,.5)}
.dots button[aria-current=true]::before{background:#fff}
.hero__find{position:absolute;left:var(--frame);right:var(--frame);bottom:0;z-index:3;height:48px;display:flex;align-items:center;justify-content:center;gap:10px;background:#fff;font:400 12px var(--font);letter-spacing:.2em;text-transform:uppercase}
.hero__find svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.5}
@media (max-width:760px){.slide__cap{left:24px;right:24px;bottom:110px;text-align:left}.slider-nav{display:none}}
@media (prefers-reduced-motion:reduce){.slide{transition:none}}

/* ---------- prosta wyszukiwarka ---------- */
.search-sec{padding:48px 0 30px}
.search-tabs{display:flex;justify-content:center;margin:0 auto 20px}
.search-tabs button{border:0;background:none;padding:12px 22px;min-height:44px;font:400 12px var(--font);letter-spacing:.2em;text-transform:uppercase;color:var(--grey);border-bottom:1px solid var(--line);cursor:pointer}
.search-tabs button[aria-selected=true]{color:var(--text);font-weight:700;border-color:var(--accent)}
.search{display:grid;grid-template-columns:1fr 1fr auto;border:1px solid var(--line);max-width:980px;margin:0 auto}
.search label{display:flex;flex-direction:column;padding:12px 22px;border-right:1px solid var(--line);font:600 11px/1.2 var(--font);letter-spacing:.18em;text-transform:uppercase;color:var(--grey)}
.search select{appearance:none;border:0;background:transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23262626'/%3E%3C/svg%3E") no-repeat right center;font:300 17px var(--font);color:var(--text);min-height:40px;padding:0 24px 0 0;cursor:pointer}
.search .btn{border:0;min-height:72px;padding:0 44px}
@media (max-width:760px){.search{grid-template-columns:1fr}.search label{border-right:0;border-bottom:1px solid var(--line)}.search .btn{min-height:56px}}

/* ---------- sekcje ---------- */
.sec{padding:72px 0}
.sec--grey{background:var(--bg-grey)}

/* kafle lokalizacji („Wybierz oddział”) */
.places{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.place{position:relative;aspect-ratio:4/5;overflow:hidden;color:#fff;display:block}
.place img{width:100%;height:100%;object-fit:cover;transition:transform 1s cubic-bezier(.2,.7,.2,1)}
.place::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 45%,rgba(0,0,0,.6) 100%)}
.place:hover img{transform:scale(1.04)}
.place span{position:absolute;left:0;right:0;bottom:34px;z-index:1;text-align:center;font:300 24px var(--font);letter-spacing:.24em;text-transform:uppercase}
.place small{display:block;font-size:12px;letter-spacing:.2em;margin-top:6px;opacity:.9}
@media (max-width:760px){.places{grid-template-columns:1fr}.place{aspect-ratio:16/10}}

/* zakładki dzielnic */
.dtabs{display:flex;flex-wrap:wrap;justify-content:center;gap:0 26px;margin:-14px 0 28px}
.dtabs button{border:0;background:none;padding:12px 0;min-height:44px;font:400 13px var(--font);letter-spacing:.06em;text-transform:uppercase;color:var(--text);cursor:pointer;border-bottom:1px solid transparent}
.dtabs button[aria-pressed=true]{font-weight:700;border-color:var(--accent)}

/* karuzela kart (property-mini-card) */
.carousel{position:relative}
.track{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 3*20px)/4);gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:4px}
.track::-webkit-scrollbar{display:none}
@media (max-width:1100px){.track{grid-auto-columns:calc((100% - 2*20px)/3)}}
@media (max-width:760px){.track{grid-auto-columns:78%}}
.card{scroll-snap-align:start;display:block}
.card[hidden]{display:none}
.card figure{margin:0;position:relative;aspect-ratio:1;overflow:hidden;background:#e9e9ec}
.card figure img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.card:hover figure img{transform:scale(1.05)}
.card .fav{position:absolute;top:8px;right:8px;width:44px;height:44px;display:grid;place-items:center;color:#fff;background:none;border:0;cursor:pointer}
.card .fav svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.4;filter:drop-shadow(0 1px 3px rgba(0,0,0,.5))}
.card .tag{position:absolute;left:0;top:14px;background:#fff;color:var(--text);font:700 10px/1 var(--font);letter-spacing:.18em;text-transform:uppercase;padding:7px 10px}
.card h4{font:400 16px/1.4 var(--font);margin:16px 0 4px;text-align:center}
.card .meta{display:block;text-align:center;font-size:13px;color:var(--grey);letter-spacing:.04em}
.card h5{font:700 14px var(--font);letter-spacing:.06em;margin:4px 0 0;text-align:center;color:var(--text-2)}
.arrows{position:absolute;top:calc(50% - 64px);left:-22px;right:-22px;display:flex;justify-content:space-between;pointer-events:none}
.arrows button{pointer-events:auto;width:44px;height:44px;border-radius:50%;border:0;background:#fff;box-shadow:0 2px 10px rgba(0,0,0,.15);cursor:pointer;display:grid;place-items:center}
.arrows svg{width:16px;height:16px;fill:none;stroke:var(--text);stroke-width:1.6}
@media (max-width:760px){.arrows{display:none}}
.sec-foot{text-align:center;margin-top:40px}

/* side-media (jak „Zespół Partners International”) */
.side{display:grid;grid-template-columns:1fr 1fr;min-height:620px}
.side img{width:100%;height:100%;object-fit:cover}
.side__txt{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:64px clamp(24px,6vw,96px)}
.side__txt .title{margin-bottom:22px}
.side__txt p{margin:0 0 18px;color:var(--text-2)}
@media (max-width:860px){.side{grid-template-columns:1fr}.side img{aspect-ratio:16/10}}

/* poradniki / blog */
.posts{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.post figure{margin:0;aspect-ratio:3/2;overflow:hidden;background:#e9e9ec}
.post figure img{width:100%;height:100%;object-fit:cover}
.post .kicker{margin-top:18px}
.post h3{font:300 19px/1.4 var(--font);letter-spacing:.06em;text-transform:uppercase;margin:0 0 16px}
.post .more{font:600 12px var(--font);letter-spacing:.18em;text-transform:uppercase;border-bottom:1px solid var(--accent);padding-bottom:4px}
@media (max-width:860px){.posts{grid-template-columns:1fr}}

/* usługi — lista kapitalikami */
.services{display:grid;grid-template-columns:repeat(3,1fr);gap:0 40px;max-width:1080px;margin:0 auto}
.services a{display:flex;justify-content:space-between;align-items:center;padding:18px 0;border-bottom:1px solid #DADADE;font:300 16px var(--font);letter-spacing:.08em;text-transform:uppercase;min-height:44px}
.services a::after{content:"→";color:var(--accent)}
@media (max-width:860px){.services{grid-template-columns:1fr}}

/* kontakt (jak sekcja newslettera Partners) */
.contact{max-width:860px;margin:0 auto;text-align:center}
.contact .lede{margin:14px auto 0}
.contact .data{display:flex;justify-content:center;flex-wrap:wrap;gap:8px 32px;margin-top:22px;font:400 15px var(--font);letter-spacing:.06em}
.form{display:grid;grid-template-columns:1fr 1fr;gap:18px 24px;margin-top:34px;text-align:left}
.form .full{grid-column:1/-1}
.form label{display:flex;flex-direction:column;gap:6px;font:600 11px var(--font);letter-spacing:.18em;text-transform:uppercase;color:var(--grey)}
.form input,.form select,.form textarea{font:300 16px var(--font);color:var(--text);border:0;border-bottom:1px solid #BDBDC2;background:transparent;padding:10px 0;min-height:44px}
.form input:focus,.form textarea:focus,.form select:focus{outline:none;border-color:var(--text)}
.form .check{flex-direction:row;gap:12px;align-items:flex-start;text-transform:none;letter-spacing:0;font:300 13px/1.5 var(--font);color:var(--text-2)}
.form .check input{min-height:auto;width:18px;height:18px;margin-top:2px;accent-color:var(--text)}
.form .actions{text-align:center}
@media (max-width:600px){.form{grid-template-columns:1fr}}

/* stopka */
.ftr{background:var(--dark);color:#B5B5BA;padding:72px 0 28px;font-size:14px}
.ftr__grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px}
.ftr .flogo{height:70px;width:auto;margin-bottom:22px}
.ftr h4{font:600 12px var(--font);letter-spacing:.2em;text-transform:uppercase;color:#fff;margin:0 0 16px}
.ftr ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.ftr a:hover{color:#fff;text-decoration:underline}
.ftr p{margin:0 0 6px;overflow-wrap:anywhere}
.ftr__bottom{margin-top:56px;padding-top:22px;border-top:1px solid #333;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;font-size:12px;color:#8C8C91}
.ftr__bottom a{text-decoration:underline}
@media (max-width:860px){.ftr__grid{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.ftr__grid{grid-template-columns:1fr}}

/* podstrona: baner */
.page-banner{position:relative;height:62vh;min-height:420px;padding:0 var(--frame);background:#fff}
.page-banner .inner{position:relative;height:100%;overflow:hidden;background:#222}
.page-banner img{width:100%;height:100%;object-fit:cover;opacity:.78}
.page-banner .cap{position:absolute;left:0;right:0;bottom:14%;text-align:center;color:#fff;padding:0 20px}
.page-banner .cap .kicker{color:rgba(255,255,255,.9)}
.page-banner h1{font:200 clamp(30px,4.2vw,56px)/1.15 var(--font);letter-spacing:.12em;text-transform:uppercase;margin:0}
.crumbs{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--grey);padding-top:18px;padding-bottom:18px}
.crumbs a:hover{color:var(--text)}
.intro{display:grid;grid-template-columns:1fr 1.2fr;gap:64px;align-items:start}
.intro p{margin:0 0 16px;color:var(--text-2);font-size:17px}
@media (max-width:860px){.intro{grid-template-columns:1fr;gap:24px}}
.benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}
.benefits div{background:#fff;padding:36px 32px}
.benefits h3{font:400 15px var(--font);letter-spacing:.14em;text-transform:uppercase;margin:0 0 12px}
.benefits h3::before{content:"";display:block;width:28px;height:2px;background:var(--accent);margin-bottom:18px}
.benefits p{margin:0;color:var(--text-2);font-size:15px}
@media (max-width:860px){.benefits{grid-template-columns:1fr}}
.mtools{display:grid;grid-template-columns:repeat(2,1fr);gap:0 56px;max-width:1080px;margin:0 auto}
.mtools div{padding:24px 0;border-bottom:1px solid #DADADE}
.mtools h3{font:400 15px var(--font);letter-spacing:.14em;text-transform:uppercase;margin:0 0 8px}
.mtools p{margin:0;color:var(--text-2);font-size:15px}
@media (max-width:860px){.mtools{grid-template-columns:1fr}}
.steps{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:40px;counter-reset:s}
.steps li{counter-increment:s;text-align:center}
.steps li::before{content:counter(s);display:grid;place-items:center;width:64px;height:64px;margin:0 auto 20px;border:1px solid var(--text);border-radius:50%;font:200 26px var(--font)}
.steps h3{font:400 15px var(--font);letter-spacing:.14em;text-transform:uppercase;margin:0 0 10px}
.steps p{margin:0;color:var(--text-2);font-size:15px}
@media (max-width:860px){.steps{grid-template-columns:1fr}}
.proto-note{position:fixed;left:50%;bottom:10px;transform:translateX(-50%);z-index:60;background:#FFF4C2;color:#5A4A00;font:600 12px var(--font);padding:6px 12px;border-radius:3px;box-shadow:0 2px 8px rgba(0,0,0,.15);white-space:nowrap}
@media (max-width:760px){.proto-note{bottom:60px;font-size:11px}}
.page-banner .inner::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.45) 0%,rgba(0,0,0,.1) 35%,rgba(0,0,0,.65) 100%)}
.page-banner .cap{z-index:1}

/* ================= v3: warstwa prestiżu ================= */
/* hero wideo */
.hero--video .slides{background:#0d0d0d}
.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero--video .slides::after{content:"";position:absolute;inset:0;background:
  linear-gradient(90deg,rgba(10,10,10,.62) 0%,rgba(10,10,10,.28) 42%,rgba(10,10,10,0) 70%),
  linear-gradient(180deg,rgba(10,10,10,.5) 0%,rgba(10,10,10,0) 26%,rgba(10,10,10,0) 60%,rgba(10,10,10,.55) 100%)}
.hero__copy{position:absolute;left:clamp(28px,7vw,120px);bottom:clamp(96px,15vh,170px);z-index:2;color:#fff;max-width:900px}
.hero__copy .kicker{color:rgba(255,255,255,.85);letter-spacing:.32em;margin-bottom:22px;display:flex;align-items:center;gap:14px}
.hero__copy .kicker::before{content:"";width:42px;height:1px;background:var(--accent)}
.hero__copy h1{font:200 clamp(32px,4.2vw,64px)/1.12 var(--font);letter-spacing:.07em;white-space:nowrap;text-transform:uppercase;margin:0}
.hero__copy p{font:300 clamp(16px,1.3vw,19px)/1.6 var(--font);letter-spacing:.02em;color:rgba(255,255,255,.88);margin:24px 0 36px;max-width:520px}
.hero__cta{display:flex;gap:14px;flex-wrap:wrap}
.btn--solid-light{background:#fff;border-color:#fff;color:var(--text)}
.btn--solid-light:hover{background:transparent;color:#fff}
.vctl{position:absolute;right:calc(var(--frame) + 76px);bottom:66px;z-index:3;width:44px;height:44px;border:1px solid rgba(255,255,255,.6);border-radius:50%;background:none;color:#fff;cursor:pointer;display:grid;place-items:center}
.vctl svg{width:14px;height:14px;fill:currentColor}
.scroll-cue{position:absolute;left:50%;bottom:62px;z-index:3;width:1px;height:48px;background:rgba(255,255,255,.35);overflow:hidden}
.scroll-cue::after{content:"";position:absolute;left:0;top:-48px;width:1px;height:48px;background:#fff;animation:cue 2.4s cubic-bezier(.6,0,.4,1) infinite}
@keyframes cue{to{top:48px}}
@media (prefers-reduced-motion:reduce){.scroll-cue::after{animation:none;top:0}}
@media (max-width:760px){.hero__copy{left:24px;right:24px;bottom:96px}.vctl{right:24px;bottom:60px}.scroll-cue{display:none}}

/* manifest */
.manifest{padding:120px 0 96px;text-align:center}
.manifest .rule{width:1px;height:64px;background:var(--accent);margin:0 auto 40px}
.manifest blockquote{margin:0 auto;max-width:980px;font:200 clamp(24px,2.6vw,36px)/1.5 var(--font);letter-spacing:.02em;color:var(--text)}
.manifest blockquote em{font-style:normal;font-weight:400}
.manifest .sig{margin-top:30px;font:600 12px var(--font);letter-spacing:.24em;text-transform:uppercase;color:var(--grey)}
.pillars{display:grid;grid-template-columns:repeat(3,1fr);max-width:1080px;margin:80px auto 0;border-top:1px solid var(--line)}
.pillars div{padding:36px 28px 0;text-align:center}
.pillars div+div{border-left:1px solid var(--line)}
.pillars h3{font:400 13px var(--font);letter-spacing:.24em;text-transform:uppercase;margin:0 0 12px}
.pillars p{margin:0;font-size:15px;color:var(--text-2)}
@media (max-width:860px){.pillars{grid-template-columns:1fr}.pillars div+div{border-left:0;border-top:1px solid var(--line)}.pillars div{padding:28px 8px}}

/* oferta wyróżniona */
.featured{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:0;background:var(--bg-grey)}
.featured__media{display:grid;grid-template-columns:2fr 1fr;grid-template-rows:1fr 1fr;gap:6px;min-height:640px}
.featured__media img{width:100%;height:100%;object-fit:cover}
.featured__media img:first-child{grid-row:1/3}
.featured__body{padding:clamp(40px,5vw,84px);display:flex;flex-direction:column;justify-content:center}
.featured__body .kicker{display:flex;align-items:center;gap:14px}
.featured__body .kicker::before{content:"";width:32px;height:1px;background:var(--accent)}
.featured__body h2{font:200 clamp(28px,2.6vw,38px)/1.2 var(--font);letter-spacing:.06em;text-transform:uppercase;margin:6px 0 18px}
.featured__body > p{color:var(--text-2);margin:0 0 26px}
.specs{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #D9D9DE;margin:0 0 30px}
.specs div{padding:14px 0;border-bottom:1px solid #D9D9DE}
.specs dt{font:600 11px var(--font);letter-spacing:.18em;text-transform:uppercase;color:var(--grey)}
.specs dd{margin:4px 0 0;font:300 19px var(--font);letter-spacing:.02em}
.price-big{font:200 34px var(--font);letter-spacing:.04em;margin:0 0 4px}
.price-m2{font-size:14px;color:var(--grey);margin:0 0 28px}
@media (max-width:980px){.featured{grid-template-columns:1fr}.featured__media{min-height:0;grid-template-rows:auto;aspect-ratio:4/3}}

/* ciemna sekcja off-market */
.dark{background:#141414;color:#EDEDED;padding:120px 0;text-align:center;position:relative;overflow:hidden}
.dark .kicker{color:#A7A7AD}
.dark .title{color:#fff}
.dark p{max-width:640px;margin:24px auto 36px;color:#BDBDC2;font-size:17px}
.dark .rule{width:64px;height:1px;background:var(--accent);margin:0 auto 34px}
.dark .btn:hover{background:#fff;color:#141414;border-color:#fff}
@media (max-width:760px){.hero__copy h1{white-space:normal}}

/* v4: większe logo (+50%), pasek zdjęć architektury */
.hdr .bar{height:150px}
.hdr .logo img{height:93px}
.hdr.is-scrolled .bar{height:88px}
.hdr.is-scrolled .logo img{height:60px}
@media (max-width:760px){.hdr .bar{height:104px}.hdr .logo img{height:72px}.hdr.is-scrolled .bar{height:76px}.hdr.is-scrolled .logo img{height:52px}}
.strip{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;padding:0 var(--frame)}
.strip figure{margin:0;position:relative;aspect-ratio:4/5;overflow:hidden}
.strip img{width:100%;height:100%;object-fit:cover}
.strip figcaption{position:absolute;left:0;right:0;bottom:0;padding:40px 22px 18px;background:linear-gradient(180deg,rgba(0,0,0,0),rgba(0,0,0,.6));color:#fff;font:400 12px var(--font);letter-spacing:.2em;text-transform:uppercase}
@media (max-width:760px){.strip{grid-template-columns:1fr}.strip figure{aspect-ratio:16/10}}

/* ================= v5: szablony podstron ================= */
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.hero__copy h1 .h1-kicker{display:flex;align-items:center;gap:14px;font:300 13px/1.3 var(--font);letter-spacing:.32em;color:rgba(255,255,255,.85);margin-bottom:22px;white-space:normal}
.hero__copy h1 .h1-kicker::before{content:"";width:42px;height:1px;background:var(--accent)}
.hero__copy h1 .h1-display{display:block}

/* baner podstrony — niższy wariant */
.page-banner--short{height:46vh;min-height:360px}
.page-banner .lead{max-width:640px;margin:16px auto 0;color:rgba(255,255,255,.9);font:300 17px/1.6 var(--font)}
.page-banner video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.8}

/* treść usług */
.lead-block{display:grid;grid-template-columns:1fr 1.3fr;gap:64px;align-items:start}
.lead-block p{margin:0 0 16px;font-size:17px;color:var(--text-2)}
.lead-block .big{font:200 clamp(22px,2vw,28px)/1.45 var(--font);color:var(--text);letter-spacing:.01em}
@media (max-width:860px){.lead-block{grid-template-columns:1fr;gap:20px}}
.scope{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}
.scope div{background:#fff;padding:32px 30px}
.scope h3{font:400 14px var(--font);letter-spacing:.16em;text-transform:uppercase;margin:0 0 10px}
.scope h3::before{content:"";display:block;width:28px;height:2px;background:var(--accent);margin-bottom:16px}
.scope p{margin:0;font-size:15px;color:var(--text-2)}
@media (max-width:860px){.scope{grid-template-columns:1fr}}
.steps--4{grid-template-columns:repeat(4,1fr)}
@media (max-width:980px){.steps--4{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.steps--4{grid-template-columns:1fr}}
.faq{max-width:880px;margin:0 auto;border-top:1px solid var(--line)}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{list-style:none;cursor:pointer;padding:22px 40px 22px 0;position:relative;font:400 16px var(--font);letter-spacing:.04em;min-height:44px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:6px;top:18px;font:200 26px var(--font);color:var(--accent)}
.faq details[open] summary::after{content:"\2013"}
.faq details p{margin:0 0 22px;color:var(--text-2);font-size:15px;max-width:72ch}
.cta-band{background:var(--dark);color:#EDEDED;padding:80px 0;text-align:center}
.cta-band .title{color:#fff}
.cta-band p{margin:16px auto 30px;max-width:560px;color:#BDBDC2}
.cta-band .row{display:flex;justify-content:center;gap:14px;flex-wrap:wrap}
.cta-band .btn:hover{background:#fff;color:var(--dark);border-color:#fff}
.related{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.related a{position:relative;aspect-ratio:4/3;overflow:hidden;color:#fff;display:block}
.related img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.related a:hover img{transform:scale(1.05)}
.related a::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.6))}
.related span{position:absolute;left:20px;right:20px;bottom:18px;z-index:1;font:400 13px var(--font);letter-spacing:.18em;text-transform:uppercase}
@media (max-width:860px){.related{grid-template-columns:1fr 1fr}}

/* lista ofert */
.filters{display:flex;flex-wrap:wrap;border:1px solid var(--line);margin-bottom:14px}
.filters label{flex:1 1 180px;display:flex;flex-direction:column;padding:10px 20px;border-right:1px solid var(--line);font:600 11px/1.2 var(--font);letter-spacing:.18em;text-transform:uppercase;color:var(--grey)}
.filters select{appearance:none;border:0;background:transparent url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2212%22 height=%228%22%3E%3Cpath d=%22M1 1l5 5 5-5%22 fill=%22none%22 stroke=%22%23262626%22/%3E%3C/svg%3E") no-repeat right center;font:300 16px var(--font);color:var(--text);min-height:40px;padding-right:22px;cursor:pointer}
.result-bar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:22px 0 28px;font-size:14px;color:var(--grey);letter-spacing:.04em}
.grid-offers{display:grid;grid-template-columns:repeat(3,1fr);gap:44px 24px}
@media (max-width:980px){.grid-offers{grid-template-columns:repeat(2,1fr)}}
@media (max-width:600px){.grid-offers{grid-template-columns:1fr}}
.grid-offers .card figure{aspect-ratio:4/3}
.empty{border:1px solid var(--line);padding:64px 24px;text-align:center}
.empty p{max-width:520px;margin:12px auto 26px;color:var(--text-2)}
.archive-intro{max-width:760px;margin:0 auto 44px;text-align:center;color:var(--text-2);font-size:17px}

/* karta oferty */
.gallery{display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:1fr 1fr;gap:6px;height:min(70vh,640px);padding:0 var(--frame)}
.gallery button{border:0;padding:0;margin:0;cursor:zoom-in;overflow:hidden;background:#e9e9ec;position:relative}
.gallery button:first-child{grid-row:1/3}
.gallery img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.gallery button:hover img{transform:scale(1.03)}
.gallery .more{position:absolute;inset:0;background:rgba(0,0,0,.45);color:#fff;display:grid;place-items:center;font:600 12px var(--font);letter-spacing:.2em;text-transform:uppercase}
@media (max-width:760px){.gallery{grid-template-columns:1fr 1fr;grid-template-rows:auto;height:auto}.gallery button:first-child{grid-column:1/-1;grid-row:auto;aspect-ratio:4/3}.gallery button{aspect-ratio:1}.gallery button:nth-child(n+4){display:none}}
.offer{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:64px;align-items:start}
@media (max-width:980px){.offer{grid-template-columns:1fr;gap:36px}}
.offer h1{font:200 clamp(26px,2.6vw,36px)/1.25 var(--font);letter-spacing:.04em;text-transform:uppercase;margin:6px 0 10px}
.offer .addr{color:var(--grey);font-size:15px;letter-spacing:.04em;margin:0 0 28px}
.facts{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:0 0 40px}
.facts div{padding:18px 0}
.facts div+div{padding-left:20px;border-left:1px solid var(--line)}
.facts dt{font:600 11px var(--font);letter-spacing:.18em;text-transform:uppercase;color:var(--grey)}
.facts dd{margin:4px 0 0;font:300 20px var(--font)}
@media (max-width:600px){.facts{grid-template-columns:1fr 1fr}.facts div:nth-child(3){padding-left:0;border-left:0}}
.offer h2{font:400 14px var(--font);letter-spacing:.2em;text-transform:uppercase;margin:44px 0 16px}
.prose{font-size:16px;color:var(--text-2);line-height:1.8}
.prose p{margin:0 0 14px}
.prose h2,.prose h3,.prose h4{font:400 15px var(--font);letter-spacing:.14em;text-transform:uppercase;color:var(--text);margin:34px 0 12px}
.prose ul,.prose ol{padding-left:20px;margin:0 0 16px}
.prose li{margin-bottom:6px}
.prose a{color:var(--text);text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:3px}
.prose img{height:auto;margin:20px 0}
.prose strong{font-weight:600;color:var(--text)}
.chips{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:0}
.chips li{border:1px solid var(--line);padding:8px 14px;font-size:13px;letter-spacing:.04em}
.map{width:100%;height:360px;border:0;filter:grayscale(1) contrast(1.05)}
.agent{position:sticky;top:110px;border:1px solid var(--line);padding:32px;background:#fff}
.agent .price-big{margin-top:0}
.agent .form{grid-template-columns:1fr;margin-top:20px;gap:14px}
.agent .who{margin:0 0 20px;padding-bottom:20px;border-bottom:1px solid var(--line)}
.agent .who b{display:block;font:400 15px var(--font);letter-spacing:.06em}
.agent .who span{display:block;font-size:13px;color:var(--grey)}
.agent .ref{font-size:12px;color:var(--grey);letter-spacing:.06em;margin:14px 0 0}
.lightbox{position:fixed;inset:0;z-index:200;background:rgba(10,10,10,.94);display:none;align-items:center;justify-content:center}
.lightbox.open{display:flex}
.lightbox img{max-width:92vw;max-height:86vh;object-fit:contain}
.lightbox button{position:absolute;background:none;border:0;color:#fff;cursor:pointer;width:56px;height:56px;font:200 34px var(--font)}
.lightbox .lb-close{top:14px;right:18px}.lightbox .lb-prev{left:14px;top:50%}.lightbox .lb-next{right:14px;top:50%}
.lightbox .lb-count{position:absolute;bottom:18px;left:0;right:0;text-align:center;color:#BDBDC2;font-size:13px;letter-spacing:.14em}

/* blog */
.posts--list{row-gap:56px}
.post a.cover{display:block}
.post .excerpt{margin:0 0 16px;font-size:15px;color:var(--text-2)}
.article{max-width:820px;margin:0 auto}
.article .meta{font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--grey);margin-bottom:14px}
.article h1{font:200 clamp(28px,3vw,42px)/1.25 var(--font);letter-spacing:.04em;text-transform:uppercase;margin:0 0 32px}
.article .cover{margin:0 0 40px;aspect-ratio:16/9;overflow:hidden;background:#e9e9ec}
.article .cover img{width:100%;height:100%;object-fit:cover}
.article .prose{font-size:17px}
.article .share{display:flex;flex-wrap:wrap;gap:18px;margin-top:40px;padding-top:24px;border-top:1px solid var(--line);font:600 12px var(--font);letter-spacing:.18em;text-transform:uppercase}

/* kontakt */
.contact-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:64px}
.contact-grid dl{margin:0;display:grid;gap:22px}
.contact-grid dt{font:600 11px var(--font);letter-spacing:.18em;text-transform:uppercase;color:var(--grey)}
.contact-grid dd{margin:4px 0 0;font:300 22px var(--font);overflow-wrap:anywhere}
.contact-grid .form{margin-top:0}
@media (max-width:860px){.contact-grid{grid-template-columns:1fr;gap:40px}}
.legal .prose{max-width:860px;margin:0 auto;font-size:15px}

.card{position:relative}
.card > a{display:block}
.prose{overflow-wrap:anywhere}

/* v6: nagłówek i boczne ikony na średnich ekranach */
.hdr .dev-link,.hdr .tel{white-space:nowrap}
@media (max-width:1100px){.hdr .dev-link{display:none}.social-rail{display:none}}

/* ================= v7: akcenty premium ================= */
:root{--serif:"Cormorant Garamond",Georgia,serif}

/* szeryfowa kursywa jako akcent (tylko wybrane miejsca) */
.manifest blockquote{font:300 italic clamp(28px,3vw,42px)/1.4 var(--serif);letter-spacing:0;position:relative}
.manifest blockquote em{font-style:normal;font-weight:500;color:var(--text)}
.manifest blockquote::before{content:"\201E";display:block;font:400 110px/0.6 var(--serif);color:var(--accent);margin-bottom:26px}
.featured__body h2{font:300 italic clamp(34px,3.2vw,46px)/1.15 var(--serif);letter-spacing:0;text-transform:none}
.featured__body .price-big{font:400 40px var(--serif);letter-spacing:.01em}
.featured__media img:first-child{outline:1px solid rgba(255,255,255,.7);outline-offset:-20px}
.serif{font-family:var(--serif);font-style:italic;font-weight:300;text-transform:none;letter-spacing:0}

/* cienka linia pod tytułami sekcji */
.sec-head .title::after{content:"";display:block;width:36px;height:1px;background:var(--accent);margin:18px auto 0}
.dark .title::after,.cta-band .title::after{background:var(--accent)}

/* nagłówek po przewinięciu: linia akcentu */
.hdr.is-scrolled{box-shadow:inset 0 -1px 0 rgba(249,105,14,.55)}

/* karty: linia akcentu przy najechaniu */
.card figure::after{content:"";position:absolute;left:0;bottom:0;height:2px;width:0;background:var(--accent);transition:width .5s cubic-bezier(.2,.7,.2,1)}
.card:hover figure::after,.card:focus-within figure::after{width:100%}
.card h5{font:500 17px var(--serif);letter-spacing:.02em;color:var(--text)}

/* off market na zdjęciu katedry */
.dark{background:#141414 var(--dark-img,none) center/cover no-repeat}
.dark::before{content:"";position:absolute;inset:0;background:rgba(14,14,14,.84)}
.dark .wrap{position:relative;z-index:1}
.dark .title{font:300 italic clamp(40px,4.4vw,64px)/1.1 var(--serif);text-transform:none;letter-spacing:.01em}
@media (min-width:1024px) and (prefers-reduced-motion:no-preference){.dark{background-attachment:fixed}}

/* prywatna konsultacja */
.concierge{display:grid;grid-template-columns:1.1fr 1fr;min-height:640px;background:#F7F5F1}
.concierge img{width:100%;height:100%;object-fit:cover}
.concierge__txt{display:flex;flex-direction:column;justify-content:center;padding:72px clamp(28px,6vw,104px)}
.concierge__txt .kicker{display:flex;align-items:center;gap:14px}
.concierge__txt .kicker::before{content:"";width:32px;height:1px;background:var(--accent)}
.concierge__txt h2{font:300 italic clamp(34px,3.4vw,50px)/1.15 var(--serif);margin:8px 0 22px}
.concierge__txt > p{color:var(--text-2);margin:0 0 28px;max-width:520px}
.concierge ul{list-style:none;padding:0;margin:0 0 34px;border-top:1px solid #DEDAD2}
.concierge li{padding:16px 0;border-bottom:1px solid #DEDAD2;display:grid;grid-template-columns:160px 1fr;gap:16px;font-size:15px;color:var(--text-2)}
.concierge li b{font:600 11px/1.9 var(--font);letter-spacing:.2em;text-transform:uppercase;color:var(--text)}
.concierge .row{display:flex;gap:14px;flex-wrap:wrap}
@media (max-width:860px){.concierge{grid-template-columns:1fr}.concierge img{aspect-ratio:4/3}.concierge li{grid-template-columns:1fr;gap:2px}}

/* jasne banery podstron */
.page-banner--bright img{opacity:1}
.page-banner--bright .inner::after{background:linear-gradient(180deg,rgba(0,0,0,.35) 0%,rgba(0,0,0,0) 30%,rgba(0,0,0,0) 50%,rgba(0,0,0,.55) 100%)}
.page-banner--bright .cap{text-shadow:0 2px 24px rgba(0,0,0,.35)}

/* pojawianie się przy przewijaniu (tylko z JS i bez prefers-reduced-motion) */
@media (prefers-reduced-motion:no-preference){
  .js-reveal .reveal{opacity:0;transform:translateY(26px);transition:opacity .9s cubic-bezier(.2,.7,.2,1),transform .9s cubic-bezier(.2,.7,.2,1)}
  .js-reveal .reveal.in{opacity:1;transform:none}
}
.page-banner--bright .inner::after{background:radial-gradient(ellipse 62% 50% at 50% 62%,rgba(0,0,0,.58) 0%,rgba(0,0,0,.32) 45%,rgba(0,0,0,0) 75%),linear-gradient(180deg,rgba(0,0,0,.35) 0%,rgba(0,0,0,0) 28%,rgba(0,0,0,0) 55%,rgba(0,0,0,.35) 100%)}

/* ================= v8: czytelniejszy nagłówek oferty ================= */
.offer-tags{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px}
.loc-tag,.mkt-tag{display:inline-flex;align-items:center;min-height:30px;padding:0 12px;font:600 11px/1 var(--font);letter-spacing:.18em;text-transform:uppercase}
.loc-tag{background:var(--text);color:#fff}
.mkt-tag{border:1px solid #CFCFD4;color:var(--text)}
.mkt-tag--accent{border-color:var(--accent);color:#B8490A}
.offer h1{font:300 clamp(30px,3vw,44px)/1.18 var(--font);letter-spacing:.03em;color:var(--text);margin:0 0 14px}
.offer .addr{display:flex;align-items:center;gap:8px;font-size:17px;color:var(--text-2);margin:0 0 30px}
.offer .addr svg{width:18px;height:18px;flex:none;fill:none;stroke:var(--accent);stroke-width:1.6}
.facts--key{background:var(--bg-grey);border:0;grid-template-columns:repeat(4,1fr);margin:0 0 44px}
.facts--key div{padding:24px 26px}
.facts--key div+div{border-left:1px solid #E2E2E6;padding-left:26px}
.facts--key dt{color:var(--text-2);font-size:11px}
.facts--key dd{font:400 26px/1.2 var(--font);color:var(--text);margin-top:8px;letter-spacing:.01em}
.facts--key div:first-child dd{font:500 30px/1.15 var(--serif);color:var(--text)}
@media (max-width:760px){.facts--key{grid-template-columns:1fr 1fr}.facts--key div:nth-child(3){border-left:0;padding-left:26px}.facts--key div:nth-child(n+3){border-top:1px solid #E2E2E6}.facts--key dd{font-size:22px}}

/* zgoda w formularzu: checkbox + jeden blok tekstu */
.form .check{display:grid;grid-template-columns:18px 1fr;gap:12px;align-items:start}
.form .check span{display:block}

/* v9: parametry bez łamania, udogodnienia i szczegóły w stylu strony */
.facts--key{grid-template-columns:1.35fr 1fr .8fr 1.25fr}
.facts--key dd{white-space:nowrap;font-size:24px}
.facts--key div:first-child dd{font-size:28px}
.facts--detail dd{font-size:22px}
.facts--detail div:first-child dd{font:400 22px/1.2 var(--font)}
.offer h2{display:flex;align-items:center;gap:14px}
.offer h2::before{content:"";width:32px;height:1px;background:var(--accent);flex:none}
.amenities{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1px;background:#E2E2E6;border:1px solid #E2E2E6}
.amenities li{display:flex;align-items:center;gap:12px;background:var(--bg-grey);padding:18px 20px;font:400 15px var(--font);color:var(--text);letter-spacing:.02em}
.amenities li::before{content:"";width:18px;height:18px;flex:none;background:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Cpath d=%22M5 12.5l4.5 4.5L19 7.5%22 fill=%22none%22 stroke=%22%23F9690E%22 stroke-width=%221.8%22/%3E%3C/svg%3E") center/contain no-repeat}
@media (max-width:1180px){.facts--key{grid-template-columns:1fr 1fr}.facts--key div:nth-child(3){border-left:0;padding-left:26px}.facts--key div:nth-child(n+3){border-top:1px solid #E2E2E6}}
@media (max-width:1180px){.facts--detail{grid-template-columns:1fr 1fr !important}}
.amenities{background:none;border:0;gap:8px}
.amenities li{border:1px solid #E6E6EA}
@media (max-width:600px){.facts--key dd,.facts--key div:first-child dd{white-space:normal;font-size:20px}.facts--key div{padding:18px 16px}.facts--key div+div,.facts--key div:nth-child(3){padding-left:16px}.offer h1{font-size:26px}}

/* v10: ceny jednolitą czcionką (cyfry równej wysokości), bez kroju szeryfowego */
.facts--key div:first-child dd{font:400 24px/1.2 var(--font);letter-spacing:.01em;font-variant-numeric:lining-nums tabular-nums}
.facts--key dd{font-variant-numeric:lining-nums tabular-nums}
.card h5{font:700 14px var(--font);letter-spacing:.06em;color:var(--text-2);font-variant-numeric:lining-nums}
.featured__body .price-big{font:300 34px var(--font);letter-spacing:.02em;font-variant-numeric:lining-nums}
@media (max-width:600px){.facts--key div:first-child dd{font-size:20px}}
.facts--detail dd,.facts--detail div:first-child dd{font:400 22px/1.2 var(--font)}

/* v11: jasny pasek menu po przewinięciu i na podstronach, mniejszy odstęp manifestu */
.manifest{padding-top:64px}
.hdr.is-scrolled{background:rgba(255,255,255,.97);color:var(--text);box-shadow:0 1px 0 var(--line),0 8px 28px rgba(0,0,0,.05)}
@supports (backdrop-filter:blur(8px)){.hdr.is-scrolled{background:rgba(255,255,255,.9);backdrop-filter:blur(10px)}}
.hdr.is-scrolled .logo img{filter:invert(1) hue-rotate(180deg) saturate(1.3)}
.hdr.is-scrolled .burger{color:var(--text);border-color:rgba(38,38,38,.55)}
.hdr-spacer{height:110px;background:var(--bg)}
@media (max-width:760px){.hdr-spacer{height:80px}}

/* v12: wyraźniejszy tytuł Dla developerów; Off market tym samym krojem co inne nagłówki */
.side__txt .title{font:300 clamp(36px,3.6vw,52px)/1.1 var(--font);letter-spacing:.05em;color:var(--text);margin-bottom:26px}
.side__txt .kicker{color:var(--text-2)}
.side__txt p{font-size:17px}
.dark .title{font:200 clamp(28px,3.2vw,40px)/1.2 var(--font);letter-spacing:.05em;text-transform:uppercase;color:#fff}
.side__txt .title{font-size:clamp(32px,2.9vw,42px);letter-spacing:.04em;white-space:nowrap}
@media (max-width:1100px){.side__txt .title{white-space:normal}}

/* ================= v13: wyraźniejsze formularze ================= */
/* sekcja kontaktu: szare tło + biała karta */
#kontakt:has(.contact){background:var(--bg-grey)}
.contact{max-width:980px}
.contact .title{color:var(--text)}
.contact .lede{color:var(--text-2);font-size:18px}
.contact .data{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:34px 0 0;text-align:left}
.contact .data a{display:flex;align-items:center;gap:14px;padding:18px 20px;background:#fff;border:1px solid var(--line);font:400 15px/1.35 var(--font);letter-spacing:.02em;color:var(--text);transition:border-color .2s,box-shadow .2s}
.contact .data a:hover{border-color:var(--accent);box-shadow:0 6px 20px rgba(0,0,0,.06)}
.contact .data svg{width:22px;height:22px;flex:none;fill:none;stroke:var(--accent);stroke-width:1.5}
.contact .data small{display:block;font:600 10px/1.4 var(--font);letter-spacing:.2em;text-transform:uppercase;color:var(--grey);margin-bottom:2px}
.contact .data span{overflow-wrap:anywhere}
@media (max-width:760px){.contact .data{grid-template-columns:1fr}}
.contact .form{background:#fff;padding:44px 48px 40px;margin-top:16px;border-top:2px solid var(--accent);box-shadow:0 24px 60px rgba(0,0,0,.07)}
@media (max-width:600px){.contact .form{padding:28px 20px}}

/* pola formularzy w całym serwisie: ramki zamiast samych linii */
.form label{color:var(--text-2);font-size:11px}
.form input,.form select,.form textarea{border:1px solid #D2D2D7;background:#fff;padding:12px 14px;min-height:50px;margin-top:2px;transition:border-color .2s,box-shadow .2s}
.form textarea{min-height:120px;resize:vertical}
.form select{appearance:none;background:#fff url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2212%22 height=%228%22%3E%3Cpath d=%22M1 1l5 5 5-5%22 fill=%22none%22 stroke=%22%23262626%22/%3E%3C/svg%3E") no-repeat right 14px center;padding-right:38px}
.form input:focus,.form select:focus,.form textarea:focus{outline:none;border-color:var(--text);box-shadow:0 0 0 3px rgba(249,105,14,.18)}
.form .check{font-size:14px;color:var(--text-2)}
.form .check input{width:20px;height:20px;min-height:0;padding:0;margin-top:1px;border:0;box-shadow:none}
.form .actions .btn,.agent .form .btn{min-height:54px;padding:0 44px;font-size:13px}
.form .btn--dark:hover{background:#000;border-color:#000}
.agent .form input,.agent .form select,.agent .form textarea{min-height:46px}
.contact .data{grid-template-columns:.8fr 1.3fr 1.05fr}
@media (max-width:980px){.contact .data{grid-template-columns:1fr}}
.contact{max-width:1100px}
.contact .data{grid-template-columns:.85fr 1.25fr 1.2fr}
@media (max-width:980px){.contact .data{grid-template-columns:1fr}}

/* v14: strona Kontakt w stylu formularza */
.contact-page{background:var(--bg-grey);padding-top:56px}
.contact-page .contact-grid{grid-template-columns:1fr 1.45fr;gap:48px;align-items:start}
.data--stack{display:grid;gap:12px}
.data--stack a{display:flex;align-items:center;gap:16px;padding:20px 22px;background:#fff;border:1px solid var(--line);font:400 17px/1.35 var(--font);color:var(--text);transition:border-color .2s,box-shadow .2s}
.data--stack a:hover{border-color:var(--accent);box-shadow:0 6px 20px rgba(0,0,0,.06)}
.data--stack svg,.follow svg{width:22px;height:22px;flex:none;fill:none;stroke:var(--accent);stroke-width:1.5}
.data--stack small,.follow small{display:block;font:600 10px/1.4 var(--font);letter-spacing:.2em;text-transform:uppercase;color:var(--grey);margin-bottom:3px}
.data--stack span{overflow-wrap:anywhere}
.follow{margin:26px 0 0;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.follow small{width:100%;margin-bottom:6px}
.follow a{width:48px;height:48px;display:grid;place-items:center;background:#fff;border:1px solid var(--line)}
.follow a:hover{border-color:var(--accent)}
.form-card{background:#fff;padding:44px 48px 40px;border-top:2px solid var(--accent);box-shadow:0 24px 60px rgba(0,0,0,.07)}
.form-card .form-lead{color:var(--text-2);margin:0 0 24px}
.form-card .form{margin-top:0}
@media (max-width:860px){.contact-page .contact-grid{grid-template-columns:1fr}.form-card{padding:28px 20px}}

/* v15: nagłówki konsultacji i oferty wyróżnionej tym samym krojem co inne sekcje */
.concierge__txt h2{font:300 clamp(28px,2.6vw,38px)/1.2 var(--font);letter-spacing:.05em;text-transform:uppercase;color:var(--text);margin:8px 0 22px}
.featured__body h2{font:300 clamp(28px,2.6vw,38px)/1.2 var(--font);letter-spacing:.05em;text-transform:uppercase;color:var(--text)}

/* v16: wyraźny numer telefonu w nagłówku */
.hdr .tel{display:inline-flex;align-items:center;gap:10px;height:46px;padding:0 18px 0 6px;border:1px solid rgba(255,255,255,.75);font:700 16px/1 var(--font);letter-spacing:.08em;color:#fff;transition:background .25s,color .25s,border-color .25s}
.hdr .tel__ico{width:34px;height:34px;border-radius:50%;background:var(--accent);display:grid;place-items:center;flex:none}
.hdr .tel__ico svg{width:17px;height:17px;fill:none;stroke:#1a1a1a;stroke-width:1.8}
.hdr .tel:hover{background:#fff;color:var(--text)}
.hdr.is-scrolled .tel{border-color:var(--text);color:var(--text)}
.hdr.is-scrolled .tel:hover{background:var(--text);color:#fff}
.hdr .tools{gap:22px}
.page-banner img[src*="1776100785477"]{object-position:50% 22%}

/* v17: telefon bez ramki i pomarańczowego kółka — sama biała słuchawka */
.hdr .tel{border:0;padding:0;height:46px;gap:10px;background:none}
.hdr .tel:hover{background:none;color:#fff;opacity:.8}
.hdr .tel__ico{width:auto;height:auto;border-radius:0;background:none}
.hdr .tel__ico svg{width:20px;height:20px;stroke:currentColor;stroke-width:1.6}
.hdr.is-scrolled .tel{border:0;color:var(--text)}
.hdr.is-scrolled .tel:hover{background:none;color:var(--text)}
.page-banner img[src*="1540835237482"]{object-position:50% 30%}
.page-banner img[src*="2e/Krak%C3%B3w_Opera_house"]{object-position:50% 78%}

/* ================= motyw WordPress ================= */
.hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.form-notice{margin:0 0 6px;padding:14px 18px;font:400 15px/1.5 var(--font);border-left:3px solid}
.form-notice.is-ok{background:#EEF7F1;border-color:#2E7D4F;color:#1F5A38}
.form-notice.is-err{background:#FDF0EC;border-color:#C4520A;color:#8A3606}
.nav-links{display:flex;justify-content:center;gap:8px}
.nav-links .page-numbers{min-width:44px;height:44px;display:grid;place-items:center;border:1px solid var(--line);font:600 13px var(--font)}
.nav-links .current{background:var(--text);color:#fff;border-color:var(--text)}
.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.prose .wp-block-image img,.prose img{max-width:100%;height:auto}
.article .cover img{width:100%;height:100%;object-fit:cover}

/* ================= O nas ================= */
.about__grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(40px,6vw,96px);align-items:center}
.about__photo{margin:0;position:relative;max-width:460px;justify-self:end;width:100%}
.about__photo::before{content:"";position:absolute;inset:22px -22px -22px 22px;border:1px solid var(--accent);z-index:0}
.about__photo img{position:relative;z-index:1;width:100%;aspect-ratio:4/5;object-fit:cover;object-position:50% 18%;display:block;box-shadow:0 24px 60px rgba(0,0,0,.12)}
.about__photo figcaption{position:absolute;z-index:2;left:-28px;bottom:36px;background:var(--dark);color:#EDEDED;padding:18px 22px;max-width:230px;font:400 13px/1.45 var(--font);letter-spacing:.02em}
.about__photo .since{display:block;font:300 22px/1.2 var(--font);letter-spacing:.06em;text-transform:uppercase;color:#fff;margin-bottom:4px}
.about__txt .title{margin:6px 0 24px}
.about__txt p{margin:0 0 16px;color:var(--text-2);font-size:17px}
.about__txt .big{font:300 clamp(20px,1.8vw,25px)/1.5 var(--font);color:var(--text);margin-bottom:22px}
@media (max-width:900px){.about__grid{grid-template-columns:1fr}.about__photo{justify-self:center;max-width:380px}.about__photo figcaption{left:-12px}}
.about-quote blockquote{margin:0 auto;max-width:900px;font:300 clamp(24px,2.6vw,36px)/1.45 var(--font);letter-spacing:.01em;color:#fff}
.about-quote .sig{margin:30px 0 0;font:600 12px var(--font);letter-spacing:.24em;text-transform:uppercase;color:#fff;max-width:none}
.about-quote .sig span{display:block;margin-top:8px;font:300 15px var(--font);letter-spacing:.04em;text-transform:none;color:#BDBDC2}
.about__photo .since{text-transform:none;letter-spacing:.02em;font-size:21px}
@media (max-width:900px){.about__photo{max-width:300px}}
.about__photo img{height:auto}
@media (min-width:901px){.about__photo{max-width:400px}}

/* v18: szeroki kafelek, 5 kroków, opiekun oferty */
.scope--wide{grid-template-columns:repeat(6,1fr)}
.scope--wide > div{grid-column:span 2}
.scope--wide > div:nth-child(4),.scope--wide > div:nth-child(5){grid-column:span 3}
.scope--wide > .is-wide{grid-column:1/-1}
.scope--wide > .is-wide p{max-width:980px}
@media (max-width:860px){.scope--wide{grid-template-columns:1fr}.scope--wide > div,.scope--wide > div:nth-child(4),.scope--wide > div:nth-child(5){grid-column:auto}}
.steps--5{grid-template-columns:repeat(5,1fr);gap:28px}
@media (max-width:1100px){.steps--5{grid-template-columns:repeat(3,1fr)}}
@media (max-width:700px){.steps--5{grid-template-columns:1fr}}
.who--agent{display:flex;align-items:center;gap:16px}
.who--agent img{width:72px;height:72px;border-radius:50%;object-fit:cover;object-position:50% 20%;flex:none;border:2px solid #fff;box-shadow:0 0 0 1px var(--accent)}
.who--agent b{display:block;font:500 17px var(--font);letter-spacing:.02em}
.who--agent span{display:block;font-size:13px;color:var(--grey);margin:2px 0 4px}
.who--agent a{font:600 15px var(--font);letter-spacing:.04em}
.agent .credit-note{margin:12px 0 0;padding-top:12px;border-top:1px solid var(--line);font-size:13px;line-height:1.5;color:var(--text-2)}

/* v19: szczegóły oferty w siatce (najem: kaucja, czynsz adm., piętro) */
.facts.facts--grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr)) !important;gap:1px;background:#E2E2E6;border:1px solid #E2E2E6}
.facts.facts--grid div{background:var(--bg-grey);border:0;padding:20px 24px}
.facts.facts--grid dd{white-space:normal;font-size:20px}
@media (max-width:600px){.facts.facts--grid{grid-template-columns:1fr 1fr !important}.facts.facts--grid div{padding:16px}.facts.facts--grid dd{font-size:18px}}

/* v20: oferty sprzedane / wynajęte — pomarańcz z logo przyciemniony do kontrastu 4.5:1 z bielą */
:root{--sold:#C94F08}
.card .tag{z-index:2}
.card .tag--sold{background:var(--sold);color:#fff;font-size:12px;letter-spacing:.2em;padding:10px 16px;top:16px}
.card--sold figure img{filter:saturate(.55) brightness(.92)}
.card--sold h5{color:var(--sold);letter-spacing:.18em;text-transform:uppercase;font-size:13px}
.sold-tag{display:inline-flex;align-items:center;min-height:38px;padding:0 18px;background:var(--sold);color:#fff;font:700 13px/1 var(--font);letter-spacing:.22em;text-transform:uppercase}
.gallery--sold{position:relative}
.gallery--sold img{filter:saturate(.6)}
.gallery--sold::before{content:attr(data-sold);position:absolute;z-index:2;left:var(--frame);top:28px;background:var(--sold);color:#fff;font:700 15px/1 var(--font);letter-spacing:.24em;text-transform:uppercase;padding:14px 26px 14px 24px;pointer-events:none;box-shadow:0 6px 18px rgba(0,0,0,.18)}
.agent--sold .sold-note{margin:0 0 14px}
.agent--sold .sold-lead{font:300 19px/1.45 var(--font);color:var(--text);margin:0 0 22px}
@media (max-width:600px){.gallery--sold::before{top:16px;font-size:13px;padding:11px 18px}.sold-tag{min-height:34px;font-size:12px;padding:0 14px}}

/* v21: stopka — kontakt z ikonami, na telefonie kolumny jako akordeon */
.ftr__name{color:#fff;margin-bottom:14px}
.ftr__contact{gap:10px !important;margin:0 0 22px !important}
.ftr__contact li{display:flex;align-items:center;gap:12px}
.ftr__contact svg{width:18px;height:18px;flex:none;fill:none;stroke:var(--accent);stroke-width:1.5}
.ftr__social{display:flex;gap:10px;margin:0}
.ftr__social a{width:44px;height:44px;display:grid;place-items:center;border:1px solid #444;color:#fff;transition:border-color .2s,color .2s}
.ftr__social a:hover{border-color:var(--accent);color:var(--accent);text-decoration:none}
.ftr__social svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.5}
.ftr details>summary{list-style:none}
.ftr details>summary::-webkit-details-marker{display:none}
.ftr__col>summary{pointer-events:none}
.ftr__credits>summary{display:none}
@media (max-width:760px){
  .ftr{padding:48px 0 24px}
  .ftr__grid{grid-template-columns:1fr !important;gap:0}
  .ftr__brand{text-align:center;padding-bottom:30px}
  .ftr .flogo{height:56px;margin:0 auto 16px}
  .ftr__contact{display:inline-grid !important;text-align:left;margin-bottom:22px !important}
  .ftr__contact li{min-height:32px}
  .ftr__social{justify-content:center}
  .ftr__col{border-top:1px solid #333}
  .ftr__col:last-child{border-bottom:1px solid #333}
  .ftr__col>summary{pointer-events:auto;cursor:pointer;display:flex;align-items:center;justify-content:space-between;min-height:56px}
  .ftr__col>summary h4{margin:0}
  .ftr__col>summary::after{content:"";width:12px;height:12px;border-right:1.5px solid var(--accent);border-bottom:1.5px solid var(--accent);transform:translateY(-3px) rotate(45deg);transition:transform .25s}
  .ftr__col[open]>summary::after{transform:translateY(3px) rotate(-135deg)}
  .ftr__col ul{padding:0 0 18px;gap:0}
  .ftr__col li a{display:flex;align-items:center;min-height:44px}
  .ftr__bottom{margin-top:26px;padding-top:0;border:0;flex-direction:column;align-items:center;text-align:center;gap:12px}
  .ftr__credits>summary{display:inline-flex;align-items:center;min-height:44px;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
  .ftr__credits>span{display:block;padding-top:4px;line-height:1.6}
}
@media (prefers-reduced-motion:reduce){.ftr__col>summary::after{transition:none}}
