/*
Arkada Nieruchomości: shared stylesheet.
Photo credits - voluntary courtesy, not a license requirement (all CC0 via Openverse / StockSnap):
hero-1.jpg: "Modern House" by Matt Bango (stocksnap, cc0) — https://stocksnap.io/photo/modern-house-UIU7D31EDY
living-1.jpg: "Living Room" by Dan Gold (stocksnap, cc0) — https://stocksnap.io/photo/living-room-BI0P6D3WL9
bedroom-1.jpg: "Bedroom Clean" by Burst (stocksnap, cc0) — https://stocksnap.io/photo/bedroom-clean-OE0F9BHXJQ
apartment-2.jpg: "Apartment Building" by Matt Bango (stocksnap, cc0) — https://stocksnap.io/photo/apartment-building-VWKJCVGD8F
office-1.jpg: "Office Interior" by Matt Moloney (stocksnap, cc0) — https://stocksnap.io/photo/office-interior-NSQTXCLWQ5
pool-1.jpg: "Architecture Building" by Chuttersnap (stocksnap, cc0) — https://stocksnap.io/photo/architecture-building-QXTYDSTQNM
keys-1.jpg: "Keys Door" by WDnet Studio (stocksnap, cc0) — https://stocksnap.io/photo/keys-door-Z1TKDI29FZ
terrace-1.jpg: "Rooftops Terrace" by Leeroy (stocksnap, cc0) — https://stocksnap.io/photo/rooftops-terrace-6DC285B76C
agent-1.jpg: "Work Business" by Kristin Hardwick (stocksnap, cc0) — https://stocksnap.io/photo/work-business-J5LXKNDREC
interior-1.jpg: "Interior Design" by Breather (stocksnap, cc0) — https://stocksnap.io/photo/interior-design-478BZDEA2Y
interior-2.jpg: "Interior Design" by Kristin Hardwick (stocksnap, cc0) — https://stocksnap.io/photo/interior-design-WP7CVEDSVY
loft-1.jpg: "Condo Loft" by Leeroy (stocksnap, cc0) — https://stocksnap.io/photo/condo-loft-15134A07A3
loft-2.jpg: "Condo Loft" by Leeroy (stocksnap, cc0) — https://stocksnap.io/photo/condo-loft-FA4344C5FC
house-2.jpg: "House Home" by Binyamin Mellish (stocksnap, cc0) — https://stocksnap.io/photo/house-home-LJ515CPAKI
dining-3.jpg: "Interior Dining" by Kristin Hardwick (stocksnap, cc0) — https://stocksnap.io/photo/interior-dining-VMJ6JJFFWR
kitchen-white.jpg: "Kitchen Interior" by Matt Bango (stocksnap, cc0) - https://stocksnap.io/photo/kitchen-interior-3ZX53UFU8B
bath-bright.jpg: "Woman Bathtub" by Matt Bango (stocksnap, cc0) - https://stocksnap.io/photo/woman-bathtub-OBM5JBLMN9
bath-dark.jpg: "Modern Bathroom" by Travel Adventures (stocksnap, cc0) - https://stocksnap.io/photo/modern-bathroom-SX2H0BU5EG
bath-green.jpg: "Modern Bathroom" by Travel Adventures (stocksnap, cc0) - https://stocksnap.io/photo/modern-bathroom-F4CZ0LN5OO
penthouse-view.jpg: "Home Office" by Matt Bango (stocksnap, cc0) - https://stocksnap.io/photo/home-office-YODJNTOBN9
loft-office.jpg: "Home Office" by Kristin Hardwick (stocksnap, cc0) - https://stocksnap.io/photo/home-office-D3OTBIDS9X
apartment-modern.jpg: "Building Balconies" by The Building Envelope (stocksnap, cc0) - https://stocksnap.io/photo/building-balconies-H8SXFODO3W
tenement-courtyard.jpg: "Building Balconies" by Daria Nepriakhina (stocksnap, cc0) - https://stocksnap.io/photo/building-balconies-W2X0TICGBZ
veranda.jpg: "House Home" by Joshua Ness (stocksnap, cc0) - https://stocksnap.io/photo/house-home-CLD6T4J9VZ
garden-path.jpg: "Walkway Stones" by Jay Mantri (stocksnap, cc0) - https://stocksnap.io/photo/walkway-stones-4B5743BFCF
villa-pool.jpg: "Pool Backyard" by Vita Vilcina (stocksnap, cc0) - https://stocksnap.io/photo/pool-backyard-8512A55AD8
room-minimal.jpg: "Home House" by Breather (stocksnap, cc0) - https://stocksnap.io/photo/home-house-87ONRC5PWV
room-library.jpg: "House Home" by Mike Birdy (stocksnap, cc0) - https://stocksnap.io/photo/house-home-6KJ12UWOKQ
room-white.jpg: "Interior Design" by Kristin Hardwick (stocksnap, cc0) - https://stocksnap.io/photo/interior-design-HIH67XC5G0
Icons: Heroicons via Iconify (MIT).
*/
/* tastemaker: macro=Bento Showcase · nav=N2 · hero=H3(framed photo + notch dock) · features=F3 sticky stack + F2 bento listings · proof=P4 stat grid · cta=C1 inline form · footer=Ft4 · mood=premium · palette=reference-read (warm off-white / ink / brick) · contrast=matrix pass · critique: show 4 / philosophy 4 / hierarchy 4 / specificity 4 / restraint 4 / variety 4 / color 4 / tone 4 / type 4 / spacing 4 / overall 4 */
:root{
  --bg:#F3F1EC; --surface:#FFFFFF; --text:#171614; --muted:#5F5A52;
  --primary:#171614; --on-primary:#F3F1EC; --accent:#8C4A2F; --accent-soft:#C98A68;
  --border:#D9D4CA; --ink-2:#23211E; --ink-line:#77716A; --ink-muted:#B4AEA3;
  --s1:4px; --s2:8px; --s3:12px; --s4:16px; --s6:24px; --s8:32px; --s12:48px; --s16:64px; --s24:96px; --s32:128px; --s40:160px;
  --r-sm:12px; --r-md:20px; --r-lg:28px; --r-pill:999px;
  --display:"Poltawski Nowy", Georgia, serif;
  --sans:"Schibsted Grotesk", system-ui, sans-serif;
  --ease-out:cubic-bezier(.22,1,.36,1);
  --wrap:1240px;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--text);font:400 17px/1.6 var(--sans);-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{display:block;max-width:100%;height:auto}
a{color:inherit}
h1,h2,h3{font-family:var(--display);font-weight:500;line-height:1.08;letter-spacing:-.01em;margin:0;text-wrap:balance}
p{margin:0;text-wrap:pretty}
.wrap{width:min(var(--wrap),100% - 32px);margin-inline:auto}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:6px}
.ico{width:20px;height:20px;flex:none;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--s3);min-height:52px;padding:0 var(--s8);border-radius:var(--r-pill);font:600 15px/1 var(--sans);text-decoration:none;border:1px solid var(--primary);cursor:pointer;transition:background-color .16s var(--ease-out),color .16s var(--ease-out)}
.btn-dark{background:var(--primary);color:var(--on-primary)}
.btn-ghost{background:transparent;color:var(--text)}
@media (hover:hover) and (pointer:fine){
  .btn-dark:hover{background:var(--accent);border-color:var(--accent)}
  .btn-ghost:hover{background:var(--primary);color:var(--on-primary)}
}

/* nav N2 */
.nav{position:sticky;top:0;z-index:50;transition:background-color .2s var(--ease-out)}
.nav.is-scrolled{background:rgba(243,241,236,.86);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 1px 0 var(--border)}
.nav-inner{display:flex;align-items:center;justify-content:space-between;gap:var(--s6);height:76px}
.brand{display:inline-flex;align-items:center;gap:var(--s3);text-decoration:none;color:var(--text)}
.brand-mark{width:24px;height:30px;flex:none}
.brand-text{display:flex;flex-direction:column;align-items:flex-start}
.brand-name{font:500 21px/1 var(--display);letter-spacing:.26em;text-transform:uppercase;margin-right:-.26em}
.brand-sub{font:600 8px/1 var(--sans);letter-spacing:.44em;text-transform:uppercase;color:var(--muted);margin-top:7px}
.nav-links{display:flex;gap:var(--s8);list-style:none;margin:0;padding:0;font-size:15px}
.nav-links a{text-decoration:none;color:var(--muted);transition:color .16s var(--ease-out)}
@media (hover:hover) and (pointer:fine){.nav-links a:hover{color:var(--text)}}
.nav-right{display:flex;align-items:center;gap:var(--s6)}
.nav-phone{display:inline-flex;align-items:center;gap:var(--s2);text-decoration:none;font-weight:600;font-size:15px;font-variant-numeric:tabular-nums}
.nav .btn{min-height:44px;padding:0 var(--s6)}
.menu-btn{display:none;background:none;border:1px solid var(--border);border-radius:var(--r-pill);height:44px;padding:0 var(--s4);font:600 14px var(--sans);color:var(--text);cursor:pointer}
@media (max-width:960px){
  .nav-links,.nav-phone{display:none}
  .menu-btn{display:inline-flex;align-items:center}
  .nav.open .nav-links{display:flex;position:absolute;top:76px;left:16px;right:16px;flex-direction:column;gap:0;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);padding:var(--s2)}
  .nav.open .nav-links a{display:block;padding:var(--s3) var(--s4);color:var(--text)}
}
@media (max-width:520px){.nav .btn{display:none}}

/* hero H3 */
.hero{padding-top:var(--s2);padding-bottom:var(--s24)}
.hero-frame{position:relative;border-radius:var(--r-lg);overflow:hidden;height:min(82vh,780px);min-height:560px;background:var(--ink-2);clip-path:inset(0 round var(--r-lg))}
.hero-frame img{position:absolute;inset:-6% 0 0 0;width:100%;height:112%;object-fit:cover;object-position:center 60%}
.hero-frame::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(14,13,12,.72) 0%,rgba(14,13,12,.38) 46%,rgba(14,13,12,0) 72%),linear-gradient(0deg,rgba(14,13,12,.45),rgba(14,13,12,0) 45%)}
.hero-copy{position:absolute;z-index:2;left:clamp(24px,5vw,64px);top:50%;transform:translateY(-58%);max-width:640px;color:#fff}
.hero h1{font-size:clamp(34px,6.4vw,88px);font-weight:500}
.hero h1 .line{display:block;overflow:hidden;padding-bottom:.06em}
.hero h1 .line span{display:block}
.hero h1 em{font-style:italic;color:#F1D2BF}
.hero-lede{margin-top:var(--s6);max-width:470px;font-size:18px;line-height:1.55;color:rgba(255,255,255,.88)}
.hero-dock{position:absolute;z-index:3;left:0;bottom:0;display:flex;gap:var(--s3);padding:var(--s4) var(--s4) 0 0;background:var(--bg);border-top-right-radius:var(--r-lg)}
.hero-dock::before,.hero-dock::after{content:"";position:absolute;width:var(--r-lg);height:var(--r-lg);background:radial-gradient(circle at 100% 0,transparent calc(var(--r-lg) - .5px),var(--bg) var(--r-lg))}
.hero-dock::before{left:0;bottom:100%}
.hero-dock::after{left:100%;bottom:0}
.hero-dock .btn-dark{min-width:300px}
.hero-tag{text-decoration:none;position:absolute;z-index:2;right:var(--s6);bottom:var(--s6);display:flex;align-items:center;gap:var(--s2);padding:var(--s2) var(--s4) var(--s2) var(--s3);border-radius:var(--r-pill);background:rgba(255,255,255,.14);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:#fff;font-size:14px;border:1px solid rgba(255,255,255,.28)}
@media (max-width:720px){
  .hero-frame{height:auto;min-height:0;display:flex;flex-direction:column;justify-content:flex-end;padding:180px 24px 104px}
  .hero-frame::after{background:linear-gradient(0deg,rgba(14,13,12,.82) 0%,rgba(14,13,12,.55) 55%,rgba(14,13,12,.15) 100%)}
  .hero-copy{position:relative;left:auto;top:auto;transform:none;max-width:none}
  .hero-lede{font-size:16px}
  .hero-dock{right:var(--s12)}
  .hero-dock .btn-dark{min-width:0;width:100%;padding:0 var(--s4)}
  .hero-dock .btn-ghost,.hero-tag{display:none}
}

/* about + stats */
.about{padding-block:var(--s24) var(--s32)}
.about-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:var(--s16) var(--s24);align-items:start}
.eyebrow{font:600 13px/1 var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--accent);margin-bottom:var(--s4)}
.h2{font-size:clamp(34px,4vw,52px)}
.about p.lede{margin-top:var(--s6);max-width:520px;color:var(--muted)}
.checkcard{margin-top:var(--s12);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);padding:var(--s6);max-width:520px}
.checkcard-head{display:flex;justify-content:space-between;align-items:center;font-size:14px;color:var(--muted);padding-bottom:var(--s4);border-bottom:1px solid var(--border)}
.checkcard-head strong{color:var(--text);font-weight:600}
.checklist{list-style:none;margin:0;padding:0}
.checklist li{display:flex;align-items:center;gap:var(--s3);padding:var(--s3) 0;font-size:15px;border-bottom:1px solid var(--border)}
.checklist li:last-child{border-bottom:0;padding-bottom:0}
.tick{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:var(--primary);color:var(--on-primary);flex:none}
.tick .ico{width:14px;height:14px;stroke-width:2.2}
.stats{display:grid;grid-template-columns:1fr 1fr;gap:var(--s12) var(--s8);padding-top:var(--s4)}
.stat{border-top:1px solid var(--text);padding-top:var(--s4)}
.stat b{display:block;font:500 clamp(48px,5.4vw,72px)/1 var(--display);font-variant-numeric:tabular-nums;letter-spacing:-.02em}
.stat > span{display:block;margin-top:var(--s3);color:var(--muted);font-size:15px;max-width:210px}
@media (max-width:860px){.about-grid{grid-template-columns:1fr}}

/* services carousel */
.services{padding-block:0 var(--s32)}
.sec-head{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:var(--s6);margin-bottom:var(--s12)}
.arrows{display:flex;gap:var(--s3)}
.arrow{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--text);background:transparent;color:var(--text);cursor:pointer;transition:background-color .16s var(--ease-out),color .16s var(--ease-out)}
.arrow.dark{background:var(--primary);color:var(--on-primary)}
.arrow:disabled{opacity:.35;cursor:default}
@media (hover:hover) and (pointer:fine){.arrow:not(:disabled):hover{background:var(--accent);border-color:var(--accent);color:var(--on-primary)}}
.rail{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 3 * var(--s6)) / 4);gap:var(--s6);overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:var(--s2)}
.rail::-webkit-scrollbar{display:none}
.svc{scroll-snap-align:start}
.svc-media{position:relative;aspect-ratio:4/3.4;border-radius:var(--r-md);overflow:hidden;background:var(--border)}
.svc-media img{width:100%;height:100%;object-fit:cover;transition:transform .5s var(--ease-out)}
.svc-num{position:absolute;top:var(--s3);left:var(--s3);padding:var(--s1) var(--s3);border-radius:var(--r-pill);background:rgba(23,22,20,.62);color:#fff;font:600 13px/1.6 var(--sans);font-variant-numeric:tabular-nums}
.svc h3{font:600 19px/1.3 var(--sans);margin-top:var(--s4);letter-spacing:0}
.svc p{margin-top:var(--s2);color:var(--muted);font-size:15px;line-height:1.5}
@media (hover:hover) and (pointer:fine){.svc:hover .svc-media img{transform:scale(1.04)}}
@media (max-width:960px){.rail{grid-auto-columns:calc((100% - var(--s6)) / 2)}}
@media (max-width:560px){.rail{grid-auto-columns:82%}}

/* process F3 sticky stack */
.process{background:var(--primary);color:var(--on-primary);padding-block:var(--s32);border-radius:var(--r-lg);margin-inline:16px}
.process .eyebrow{color:var(--accent-soft)}
.process-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--s16);margin-top:var(--s16)}
.stage{position:sticky;top:110px;height:min(70vh,620px);border-radius:var(--r-md);overflow:hidden;background:var(--ink-2)}
.stage > *{position:absolute;inset:0;opacity:0}
.stage > *.is-active{opacity:1}
.stage img{width:100%;height:100%;object-fit:cover}
.docpanel{display:grid;place-items:center;padding:var(--s8);background:radial-gradient(120% 90% at 20% 10%,#2E2B27,#1C1A18)}
.doc{width:min(420px,100%);background:var(--surface);color:var(--text);border-radius:var(--r-md);padding:var(--s6);box-shadow:0 30px 60px -20px rgba(0,0,0,.6)}
.doc-top{display:flex;justify-content:space-between;align-items:baseline;font-size:13px;color:var(--muted);padding-bottom:var(--s3);border-bottom:1px solid var(--border)}
.doc-top strong{font:600 16px var(--display);color:var(--text)}
.doc-row{display:grid;grid-template-columns:1fr auto;gap:var(--s3);align-items:center;padding:var(--s3) 0;border-bottom:1px solid var(--border);font-size:14px}
.doc-row:last-child{border-bottom:0}
.doc-row small{display:block;color:var(--muted);font-size:13px}
.pill{font:600 12px/1 var(--sans);padding:var(--s2) var(--s3);border-radius:var(--r-pill);white-space:nowrap}
.pill.ok{background:var(--primary);color:var(--on-primary)}
.pill.wip{background:var(--bg);color:var(--accent);border:1px solid var(--accent)}
.steps{list-style:none;margin:0;padding:0}
.step{min-height:62vh;display:flex;flex-direction:column;justify-content:center;padding-block:var(--s12);border-top:1px solid var(--ink-line);opacity:.4;transition:opacity .3s var(--ease-out)}
.step.is-active{opacity:1}
.step:first-child{border-top:0;padding-top:0;justify-content:flex-start;min-height:52vh}
.step-n{font:500 15px/1 var(--sans);color:var(--accent-soft);font-variant-numeric:tabular-nums}
.step h3{font-size:clamp(28px,3vw,40px);margin-top:var(--s4)}
.step p{margin-top:var(--s4);color:var(--ink-muted);max-width:440px}
.step-media{display:none}
@media (max-width:860px){
  .process{margin-inline:0;border-radius:0}
  .process-grid{grid-template-columns:minmax(0,1fr);margin-top:var(--s8)}
  .step-media .docpanel{padding:var(--s4)}
  .doc{padding:var(--s4)}
  .stage{display:none}
  .step,.step:first-child{min-height:0;opacity:1;padding-block:var(--s8)}
  .step-media{display:block;margin-bottom:var(--s6);border-radius:var(--r-md);overflow:hidden;aspect-ratio:4/3}
  .step-media img,.step-media .docpanel{width:100%;height:100%;object-fit:cover}
  .step-media .docpanel{display:grid}
}

/* offers bento F2 */
.offers{padding-block:var(--s32)}
.bento{display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:200px 200px 200px auto;gap:var(--s6);grid-template-areas:"intro t1 t3" "t2 t1 t3" "t2 t4 t3" "t2 t4 more"}
.bento-intro{grid-area:intro;align-self:start}
.bento-intro p{margin-top:var(--s4);color:var(--muted);max-width:340px}
.tile{position:relative;border-radius:var(--r-md);overflow:hidden;background:var(--border);text-decoration:none;color:#fff;display:block}
.tile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease-out)}
.tile::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(14,13,12,.78) 0%,rgba(14,13,12,0) 55%)}
.tile-info{position:absolute;z-index:2;left:var(--s6);right:var(--s6);bottom:var(--s6)}
.tile-type{font:600 12px/1 var(--sans);letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.82)}
.tile h3{font-size:24px;margin-top:var(--s2);color:#fff}
.tile-meta{display:flex;flex-wrap:wrap;gap:var(--s2) var(--s4);margin-top:var(--s3);font-size:14px;color:rgba(255,255,255,.86);font-variant-numeric:tabular-nums}
.tile-meta b{color:#fff;font-weight:600}
.tile-go{position:absolute;z-index:2;top:var(--s4);right:var(--s4);width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--surface);color:var(--text);transition:transform .2s var(--ease-out)}
@media (hover:hover) and (pointer:fine){.tile:hover img{transform:scale(1.04)}.tile:hover .tile-go{transform:rotate(45deg)}}
.t1{grid-area:t1}.t2{grid-area:t2}.t3{grid-area:t3}.t4{grid-area:t4}
.bento-more{grid-area:more;width:100%}
@media (max-width:960px){
  .bento{grid-template-columns:1fr 1fr;grid-template-rows:auto;grid-template-areas:"intro intro" "t1 t2" "t3 t4" "more more"}
  .tile{aspect-ratio:4/5}
}
@media (max-width:560px){
  .bento{grid-template-columns:1fr;grid-template-areas:"intro" "t1" "t2" "t3" "t4" "more"}
  .tile{aspect-ratio:4/4.4}
}

/* contact C1 */
.contact{padding-block:0 var(--s32)}
.contact-card{display:grid;grid-template-columns:1.15fr 1fr;border-radius:var(--r-lg);overflow:hidden;background:var(--surface);border:1px solid var(--border)}
.contact-body{padding:clamp(32px,5vw,64px)}
.contact-body p.lede{margin-top:var(--s4);color:var(--muted);max-width:460px}
.form{margin-top:var(--s8);display:grid;grid-template-columns:1fr 1fr;gap:var(--s4)}
.field{display:flex;flex-direction:column;gap:var(--s2)}
.field.full{grid-column:1/-1}
.field label{font-size:14px;font-weight:600}
.field input{width:100%;min-width:0;height:52px;padding:0 var(--s4);border:1px solid var(--muted);border-radius:var(--r-sm);background:var(--bg);font:400 16px var(--sans);color:var(--text)}
.field input:focus-visible{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent)}
.form .btn{grid-column:1/-1;margin-top:var(--s2);justify-self:start}
.form-note{grid-column:1/-1;font-size:13px;color:var(--muted)}
.form-note a{color:var(--text)}
.form-ok{margin-top:var(--s6);display:none;align-items:center;gap:var(--s3);padding:var(--s4);border-radius:var(--r-sm);background:var(--bg);font-weight:600}
.form-ok.show{display:flex}
.contact-side{position:relative;min-height:420px;color:#fff}
.contact-side img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.contact-side::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(14,13,12,.85),rgba(14,13,12,.1) 60%)}
.contact-list{position:absolute;z-index:2;left:var(--s8);right:var(--s8);bottom:var(--s8);list-style:none;margin:0;padding:0;display:grid;gap:var(--s4)}
.contact-list li{display:flex;gap:var(--s3);align-items:flex-start;font-size:16px}
.contact-list a{text-decoration:none}
.contact-list small{display:block;color:rgba(255,255,255,.8);font-size:13px}
@media (max-width:860px){.contact-card{grid-template-columns:minmax(0,1fr)}.form{grid-template-columns:minmax(0,1fr)}}

/* footer Ft4 */
.footer{background:var(--primary);color:var(--on-primary);padding-block:var(--s32) var(--s8)}
.footer-statement{font:500 clamp(36px,5.6vw,80px)/1.04 var(--display);letter-spacing:-.02em;max-width:1050px}
.footer-statement em{color:var(--accent-soft)}
.footer-bottom{margin-top:var(--s24);padding-top:var(--s6);border-top:1px solid var(--ink-line);display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--s6);font-size:14px;color:var(--ink-muted)}
.footer-bottom .brand{color:var(--on-primary);--logo-key:var(--accent-soft)}
.footer-bottom .brand-sub{color:var(--ink-muted)}
.footer-links{display:flex;flex-wrap:wrap;gap:var(--s6);list-style:none;margin:0;padding:0}
.footer-links a{text-decoration:none}
.footer-links a[aria-current]{color:var(--on-primary)}
@media (hover:hover) and (pointer:fine){.footer-links a:hover{color:var(--on-primary)}}

.nav-links a[aria-current]{color:var(--text)}
@media (hover:hover) and (pointer:fine){.hero-tag:hover{background:rgba(255,255,255,.24)}}

/* subpages */
.page-head{padding-block:var(--s16) var(--s12)}
.crumbs{display:flex;flex-wrap:wrap;gap:var(--s2);list-style:none;margin:0 0 var(--s6);padding:0;font-size:14px;color:var(--muted)}
.crumbs li+li::before{content:"/";margin-right:var(--s2);color:var(--border)}
.crumbs a{text-decoration:none;color:var(--muted)}
.crumbs [aria-current]{color:var(--text)}
.page-title{font-size:clamp(40px,5.6vw,72px)}
.page-lede{margin-top:var(--s4);color:var(--muted);max-width:620px;font-size:18px}

/* listings index */
.toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--s4);padding-block:var(--s4);border-block:1px solid var(--border);margin-bottom:var(--s12)}
.chips{display:flex;flex-wrap:wrap;gap:var(--s2)}
.chip{height:44px;padding:0 var(--s6);border-radius:var(--r-pill);border:1px solid var(--border);background:transparent;color:var(--text);font:600 14px var(--sans);cursor:pointer;transition:background-color .16s var(--ease-out),border-color .16s var(--ease-out),color .16s var(--ease-out)}
.chip[aria-pressed="true"]{background:var(--primary);border-color:var(--primary);color:var(--on-primary)}
.chip span{font-weight:400;opacity:.75;margin-left:var(--s1);font-variant-numeric:tabular-nums}
@media (hover:hover) and (pointer:fine){.chip[aria-pressed="false"]:hover{border-color:var(--text)}}
.sort{display:flex;align-items:center;gap:var(--s3);font-size:14px;color:var(--muted)}
.sort select{height:44px;padding:0 var(--s8) 0 var(--s4);border:1px solid var(--muted);border-radius:var(--r-pill);background:var(--surface);font:600 14px var(--sans);color:var(--text)}
.grid-listings{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s12) var(--s6);padding-bottom:var(--s32)}
.card{display:block;text-decoration:none;color:inherit}
.card-media{position:relative;aspect-ratio:4/3;border-radius:var(--r-md);overflow:hidden;background:var(--border)}
.card-media img{width:100%;height:100%;object-fit:cover;transition:transform .5s var(--ease-out)}
.card-badge{position:absolute;top:var(--s3);left:var(--s3);padding:var(--s1) var(--s3);border-radius:var(--r-pill);background:var(--surface);font:600 12px/1.8 var(--sans)}
.card-type{display:block;margin-top:var(--s4);font:600 12px/1 var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}
.card h2,.card h3{font-size:24px;margin-top:var(--s2)}
.card-meta{display:flex;flex-wrap:wrap;gap:var(--s2) var(--s4);margin-top:var(--s3);color:var(--muted);font-size:15px;font-variant-numeric:tabular-nums}
.card-price{display:block;margin-top:var(--s3);font-weight:600;font-size:18px;font-variant-numeric:tabular-nums}
@media (hover:hover) and (pointer:fine){.card:hover .card-media img{transform:scale(1.04)}.card:hover h2,.card:hover h3{text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}}
.empty{grid-column:1/-1;padding:var(--s16) var(--s6);text-align:center;border:1px dashed var(--border);border-radius:var(--r-md);color:var(--muted)}
.empty strong{display:block;font:500 28px/1.2 var(--display);color:var(--text);margin-bottom:var(--s2)}
.empty .btn{margin-top:var(--s6)}
@media (max-width:960px){.grid-listings{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.grid-listings{grid-template-columns:minmax(0,1fr)}.toolbar{flex-direction:column;flex-wrap:nowrap;align-items:stretch}.sort{justify-content:space-between}}

/* listing detail */
.listing-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--s6);align-items:end;padding-block:var(--s12) var(--s8)}
.listing-loc{display:flex;align-items:center;gap:var(--s2);margin-top:var(--s4);color:var(--muted)}
.listing-price{text-align:right}
.listing-price b{display:block;font:500 clamp(32px,3.6vw,48px)/1 var(--display);font-variant-numeric:tabular-nums}
.listing-price span{display:block;margin-top:var(--s2);color:var(--muted);font-size:15px;font-variant-numeric:tabular-nums}
.gallery{display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:var(--s4)}
.gallery-main{position:relative;margin:0;aspect-ratio:16/10;border-radius:var(--r-lg);overflow:hidden;background:var(--ink-2)}
.gallery-main img{width:100%;height:100%;object-fit:cover}
.gallery-count{position:absolute;right:var(--s4);bottom:var(--s4);padding:var(--s1) var(--s3);border-radius:var(--r-pill);background:rgba(23,22,20,.66);color:#fff;font:600 13px/1.8 var(--sans);font-variant-numeric:tabular-nums}
.thumbs{display:flex;flex-direction:column;gap:var(--s4);list-style:none;margin:0;padding:0}
.thumb{display:block;width:100%;aspect-ratio:4/3;padding:0;border:0;border-radius:var(--r-sm);overflow:hidden;cursor:pointer;background:var(--border);opacity:.6;transition:opacity .16s var(--ease-out)}
.thumb img{width:100%;height:100%;object-fit:cover}
.thumb[aria-current="true"]{opacity:1;outline:2px solid var(--text);outline-offset:2px}
@media (hover:hover) and (pointer:fine){.thumb:hover{opacity:1}}
.listing-body{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:var(--s16);padding-block:var(--s16) var(--s32);align-items:start}
.params{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-top:1px solid var(--text);margin:0}
.params div{padding:var(--s4) 0;border-bottom:1px solid var(--border)}
.params dt{font-size:13px;color:var(--muted)}
.params dd{margin:var(--s1) 0 0;font-weight:600;font-variant-numeric:tabular-nums}
.listing-lead{font:500 clamp(24px,2.4vw,30px)/1.3 var(--display);margin-top:var(--s12)}
.listing-desc p{margin-top:var(--s4);color:var(--muted)}
.features{display:flex;flex-wrap:wrap;gap:var(--s2);list-style:none;margin:var(--s8) 0 0;padding:0}
.features li{padding:var(--s2) var(--s4);border:1px solid var(--border);border-radius:var(--r-pill);font-size:14px;background:var(--surface)}
.legal{margin-top:var(--s12)}
.legal h2{font-size:28px}
.legal .checkcard{max-width:none;margin-top:var(--s6)}
.legal .checklist li{justify-content:space-between}
.legal .checklist small{display:block;color:var(--muted);font-size:13px}
.pill.info{background:var(--surface);color:var(--muted);border:1px solid var(--border)}
.agent{position:sticky;top:100px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);padding:var(--s8)}
.agent-who{display:flex;align-items:center;gap:var(--s4);padding-bottom:var(--s6);border-bottom:1px solid var(--border)}
.agent-avatar{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:var(--primary);color:var(--on-primary);font:500 20px var(--display);letter-spacing:.04em;flex:none}
.agent-who small{display:block;color:var(--muted);font-size:14px}
.agent-who strong{font-weight:600}
.agent .form{grid-template-columns:minmax(0,1fr);margin-top:var(--s6)}
.agent .form .btn{justify-self:stretch}
.agent-phone{display:flex;align-items:center;justify-content:center;gap:var(--s2);margin-top:var(--s4);font-weight:600;text-decoration:none;font-variant-numeric:tabular-nums}
.related{padding-bottom:var(--s32)}
.related .h2{margin-bottom:var(--s8)}
.notfound{padding-block:var(--s24) var(--s32);text-align:center}
.notfound .page-lede{margin-inline:auto}
.notfound .btn{margin-top:var(--s8)}
@media (max-width:960px){
  .listing-body{grid-template-columns:minmax(0,1fr);gap:var(--s12)}
  .agent{position:static}
  .gallery{grid-template-columns:minmax(0,1fr)}
  .thumbs{flex-direction:row;overflow-x:auto}
  .thumbs li{flex:0 0 120px}
}
@media (max-width:600px){
  .listing-head{grid-template-columns:minmax(0,1fr)}
  .listing-price{text-align:left}
  .params{grid-template-columns:repeat(2,minmax(0,1fr))}
  .gallery-main{aspect-ratio:4/3;border-radius:var(--r-md)}
}

/* privacy policy */
.policy{display:grid;grid-template-columns:240px minmax(0,1fr);gap:var(--s16);padding-bottom:var(--s32);align-items:start}
.toc{position:sticky;top:100px;font-size:14px}
.toc ol{list-style:none;margin:0;padding:0;border-left:1px solid var(--border)}
.toc a{display:block;padding:var(--s2) 0 var(--s2) var(--s4);text-decoration:none;color:var(--muted)}
@media (hover:hover) and (pointer:fine){.toc a:hover{color:var(--text)}}
.prose{max-width:720px}
.prose section{padding-top:var(--s8);scroll-margin-top:96px}
.prose section+section{margin-top:var(--s8);border-top:1px solid var(--border)}
.prose h2{font-size:28px;margin-bottom:var(--s4)}
.prose p,.prose li{color:var(--muted)}
.prose p+p{margin-top:var(--s3)}
.prose ul{padding-left:1.2em;margin:var(--s3) 0 0}
.prose li+li{margin-top:var(--s2)}
.prose strong{color:var(--text);font-weight:600}
.prose a{color:var(--text)}
.datacard{margin-top:var(--s4);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);padding:var(--s6);display:grid;grid-template-columns:minmax(0,160px) minmax(0,1fr);gap:var(--s2) var(--s6);font-size:15px}
.datacard dt{color:var(--muted)}
.datacard dd{margin:0;font-weight:600;font-variant-numeric:tabular-nums}
.policy-table{width:100%;border-collapse:collapse;margin-top:var(--s4);font-size:15px}
.policy-table th,.policy-table td{text-align:left;vertical-align:top;padding:var(--s3) var(--s3) var(--s3) 0;border-bottom:1px solid var(--border)}
.policy-table th{font-size:13px;font-weight:600;color:var(--text)}
.policy-table td{color:var(--muted)}
.table-scroll{overflow-x:auto}
@media (max-width:860px){.policy{grid-template-columns:minmax(0,1fr);gap:var(--s8)}.toc{position:static}.datacard{grid-template-columns:minmax(0,1fr)}.datacard dd{margin-bottom:var(--s2)}}
[hidden]{display:none!important}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{transition-duration:.01ms!important;scroll-behavior:auto!important}}
.sort select{min-width:0;max-width:100%}
@media (max-width:600px){.sort select{flex:1}}
.footer-credit{text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px;color:var(--ink-muted)}
@media (hover:hover) and (pointer:fine){.footer-credit:hover{color:var(--on-primary)}}

/* cookie consent */
.cookie{position:fixed;z-index:80;right:var(--s6);bottom:var(--s6);width:min(400px,calc(100% - 32px));background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:var(--r-md);padding:var(--s6);box-shadow:0 24px 48px -16px rgba(23,22,20,.28);opacity:0;transform:translateY(16px);transition:opacity .24s var(--ease-out),transform .24s var(--ease-out)}
.cookie.is-open{opacity:1;transform:none}
.cookie-title{font:500 22px/1.2 var(--display)}
.cookie-text{margin-top:var(--s2);font-size:14px;line-height:1.55;color:var(--muted)}
.cookie-text a{color:var(--text)}
.cookie-settings{margin-top:var(--s4);border-top:1px solid var(--border)}
.cookie-opt{display:flex;gap:var(--s3);align-items:flex-start;padding:var(--s3) 0;border-bottom:1px solid var(--border);font-size:13px;color:var(--muted);cursor:pointer}
.cookie-opt b{display:block;font-size:14px;color:var(--text);font-weight:600}
.cookie-opt input{width:18px;height:18px;margin:2px 0 0;accent-color:var(--primary);flex:none}
.cookie-opt input:disabled{cursor:not-allowed}
.cookie-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s2);margin-top:var(--s4)}
.cookie-actions .btn{min-height:44px;padding:0 var(--s4);font-size:14px;flex:1 1 auto}
.cookie-link{flex-basis:100%;background:none;border:0;padding:var(--s2) 0 0;font:600 13px var(--sans);color:var(--muted);text-decoration:underline;text-underline-offset:3px;cursor:pointer;text-align:left}
@media (hover:hover) and (pointer:fine){.cookie-link:hover{color:var(--text)}}
@media (max-width:520px){.cookie{right:16px;bottom:16px;padding:var(--s4)}}
.footer-links button{background:none;border:0;padding:0;font:inherit;color:inherit;cursor:pointer}
@media (hover:hover) and (pointer:fine){.footer-links button:hover{color:var(--on-primary)}}
