/* Siedliska Podlasia — landing additions (loads after colors_and_type.css + kit.css) */

/* ---------- Header tweaks: logo left, CTA right ---------- */
.mmenu[hidden]{display:none}
/* Collapse the nav to the burger earlier so the header never overflows in the 880–1024 band */
@media(max-width:1024px){
  .hdr__nav,.hdr__cta-num{display:none}
  .hdr__burger{display:block}
}
.hdr__cta-num{display:flex;align-items:center;gap:8px;font-weight:700;font-size:15px;color:var(--ink-900);white-space:nowrap}
.hdr__cta-num svg{width:18px;height:18px;color:var(--green-700)}

/* ---------- Hero as full-bleed photo ---------- */
.hero{min-height:calc(100vh - 74px);min-height:calc(100svh - 74px);display:flex;align-items:center}
.hero__bg{
  background:
    linear-gradient(180deg, rgba(36,32,33,.30) 0%, rgba(36,32,33,.30) 38%, rgba(36,32,33,.78) 100%),
    url("../assets/img/hero-village-road.jpg") center 38%/cover no-repeat;
}
.hero__bg::after{content:none}
.hero__in{width:100%;padding:120px 0 124px;max-width:900px}
.hero h1{text-shadow:0 2px 24px rgba(36,32,33,.35)}
.hero__actions{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:6px}
.btn--lg{padding:17px 32px;font-size:17px}
.btn--sm{padding:10px 18px;font-size:14px}
.btn--sm svg{width:16px;height:16px}
.hero__dist{display:inline-flex;align-items:center;gap:8px;margin-top:22px;color:rgba(255,255,255,.92);font-size:14px;font-weight:500}
.hero__dist svg{width:17px;height:17px;color:var(--yellow-300)}

/* ---------- Real photos in listing cards ---------- */
.lcard__ph{height:210px;overflow:hidden}
.lcard__ph img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s var(--ease)}
.lcard:hover .lcard__ph img{transform:scale(1.05)}
.lcard__ph::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(36,32,33,.25),transparent 45%);z-index:1}
.lcard__tag,.lcard__heart{z-index:2}
.sec__cta{display:flex;justify-content:center;margin-top:var(--sp-7)}
.lcard__more svg{width:16px;height:16px}
.lcard:hover .lcard__more svg{transform:translateX(3px);transition:transform var(--dur) var(--ease)}

/* card phone link in footer of card */
.lcard__call{font-size:14px;font-weight:700;color:var(--cta);display:flex;align-items:center;gap:6px}
.lcard__call svg{width:16px;height:16px}

/* ---------- Generic feature cards (build & renovate) ---------- */
.fcards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
@media(max-width:860px){.fcards{grid-template-columns:1fr}}
.fcard{background:#fff;border-radius:var(--r-lg);padding:30px 28px;box-shadow:var(--shadow-sm);border:1px solid var(--border);transition:transform var(--dur) var(--ease),box-shadow var(--dur) var(--ease)}
.fcard:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}
.fcard__ic{width:58px;height:58px;border-radius:var(--r-md);background:var(--green-100);display:flex;align-items:center;justify-content:center;margin-bottom:18px}
.fcard__ic svg{width:28px;height:28px;color:var(--green-800)}
.fcard h4{margin:0 0 8px}
.fcard p{margin:0;color:var(--fg2);font-size:15px;line-height:1.6}
.fcard ul{margin:14px 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px}
.fcard li{display:flex;gap:9px;align-items:flex-start;font-size:14px;color:var(--ink-700);line-height:1.5}
.fcard li svg{width:17px;height:17px;color:var(--green-600);flex:none;margin-top:2px}

/* renovate split with image */
.split{display:grid;grid-template-columns:1.02fr .98fr;gap:56px;align-items:center}
@media(max-width:900px){.split{grid-template-columns:1fr;gap:36px}}
.split__media{border-radius:var(--r-xl);overflow:hidden;box-shadow:var(--shadow-lg);aspect-ratio:4/3}
.split__media img{width:100%;height:100%;object-fit:cover;display:block}
.split--rev .split__media{order:-1}
@media(max-width:900px){.split--rev .split__media{order:0}}

/* ---------- Sell & buy two panels ---------- */
.panels{display:grid;grid-template-columns:1fr 1fr;gap:24px}
@media(max-width:860px){.panels{grid-template-columns:1fr}}
.panel{border-radius:var(--r-xl);padding:36px 34px;display:flex;flex-direction:column}
.panel--sell{background:var(--ink-900);color:#fff}
.panel--buy{background:var(--green-500);color:var(--ink-900)}
.panel__kick{font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;margin:0 0 12px}
.panel--sell .panel__kick{color:var(--yellow-300)}
.panel--buy .panel__kick{color:var(--green-900)}
.panel h3{font-family:var(--font-display);font-weight:400;font-size:30px;line-height:1.1;margin:0 0 14px}
.panel--sell h3{color:#fff}
.panel p{margin:0 0 20px;font-size:16px;line-height:1.6}
.panel--sell p{color:rgba(255,255,255,.82)}
.panel--buy p{color:var(--ink-700)}
.panel ul{margin:0 0 26px;padding:0;list-style:none;display:flex;flex-direction:column;gap:13px}
.panel li{display:flex;gap:11px;align-items:flex-start;font-size:15px;line-height:1.5}
.panel li svg{width:19px;height:19px;flex:none;margin-top:1px}
.panel--sell li svg{color:var(--green-400)}
.panel--buy li svg{color:var(--green-900)}
.panel .btn{margin-top:auto;align-self:flex-start}
.panel--buy .btn--dark{background:var(--ink-900);color:#fff}
.panel--buy .btn--dark:hover{background:#000}

/* ---------- Hottest areas (SEO) ---------- */
.agrid{display:grid;grid-template-columns:repeat(2,1fr);gap:26px}
@media(max-width:820px){.agrid{grid-template-columns:1fr}}
.acard{position:relative;border-radius:var(--r-xl);overflow:hidden;min-height:340px;display:flex;flex-direction:column;justify-content:flex-end;box-shadow:var(--shadow-md);transition:transform var(--dur) var(--ease),box-shadow var(--dur) var(--ease)}
.acard:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}
.acard img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease)}
.acard:hover img{transform:scale(1.05)}
.acard::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(36,32,33,.05) 0%,rgba(36,32,33,.30) 42%,rgba(36,32,33,.86) 100%)}
.acard__b{position:relative;z-index:2;padding:30px 30px 28px;color:#fff}
.acard__pin{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--yellow-300);margin-bottom:8px}
.acard__pin svg{width:14px;height:14px}
.acard__b h3{font-family:var(--font-display);font-weight:400;font-size:30px;line-height:1.08;color:#fff;margin:0 0 10px}
.acard__b p{margin:0 0 18px;color:rgba(255,255,255,.9);font-size:15px;line-height:1.6;max-width:46ch}
.acard__call{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:700;color:#fff;border-bottom:2px solid var(--yellow-300);padding-bottom:3px;width:fit-content}
.acard__call svg{width:16px;height:16px;color:var(--yellow-300)}
.acard__call:hover{color:var(--yellow-200)}
.areas__note{margin:var(--sp-6) auto 0;text-align:center;max-width:680px;color:var(--fg2);font-size:15px}

/* ---------- Final call CTA ---------- */
.callcta{background:var(--ink-900);border-radius:var(--r-xl);padding:64px 56px;position:relative;overflow:hidden;text-align:center}
@media(max-width:640px){.callcta{padding:44px 26px}}
.callcta__deco{position:absolute;color:rgba(190,210,44,.12)}
.callcta__deco.l{left:-40px;bottom:-50px}
.callcta__deco.r{right:-40px;top:-50px}
.callcta__deco svg{width:280px;height:280px}
.callcta__in{position:relative;z-index:2;max-width:640px;margin:0 auto}
.callcta h2{color:#fff;margin:0 0 14px}
.callcta p{color:rgba(255,255,255,.82);margin:0 auto 30px;max-width:480px}
.callcta__phone{display:inline-flex;align-items:center;gap:14px;font-family:var(--font-display);font-weight:400;font-size:clamp(34px,5vw,52px);color:#fff;margin-bottom:26px;line-height:1}
.callcta__phone svg{width:38px;height:38px;color:var(--green-400)}
.callcta__actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.callcta__note{margin-top:40px;color:rgba(255,255,255,.6);font-size:13px}

/* ---------- Footer simplified ---------- */
.ftr__about{max-width:340px}
.ftr__cta{display:flex;flex-direction:column;gap:12px}
/* Beat the generic .ftr__col a rule (display:block) so flex alignment works */
.ftr__cta a{display:inline-flex;align-items:center}
.ftr__cta a.btn{color:#fff;padding:10px 18px;font-size:14px}
.ftr__phone-big{display:inline-flex;align-items:center;gap:10px;font-weight:700;font-size:22px;color:var(--ink-900)}
.ftr__phone-big svg{width:22px;height:22px;color:var(--green-700)}
.ftr__bottom a{color:var(--fg3)}
.ftr__bottom a:hover{color:var(--green-700)}
.ftr__bottom .sep{opacity:.5;margin:0 4px}

/* entrance */
@media (prefers-reduced-motion: no-preference){
  .reveal{opacity:0;transform:translateY(22px);transition:opacity .6s var(--ease),transform .6s var(--ease)}
  .reveal.in{opacity:1;transform:none}
}

/* ---------- Footer: 3 kolumny na desktopie, 1 na mobile ---------- */
.ftr__top--3{grid-template-columns:1.6fr 1fr 1fr}
@media(max-width:760px){
  .ftr__top--3{grid-template-columns:1fr;gap:28px}
}

/* ---------- Header na mobile: ukryj numer z ikoną telefonu ----------
   Reguła musi być PO bazowym `.hdr__cta-num{display:flex}` — media query nie
   podbija specyficzności, więc decyduje kolejność w pliku. */
@media(max-width:1024px){
  .hdr__cta-num{display:none !important}
}

/* ---------- Header na mobile: zmniejsz CTA ---------- */
@media(max-width:600px){
  .hdr__in{gap:12px}
  .hdr__logo img{height:36px}
  .hdr .btn--cta{padding:9px 15px;font-size:14px}
  .hdr .btn--cta svg{width:16px;height:16px}
}
@media(max-width:380px){
  .hdr .btn--cta{padding:8px 12px}
}

/* ---------- Poziomy padding sekcji: 28px desktop / 12px mobile ----------
   Hero gubił boczny padding, bo `.hero__in` ustawia `padding` ze skrótem
   (0 po bokach) i nadpisuje `.wrap`. Przywracamy go jawnie. */
.hero__in{padding-left:28px;padding-right:28px}

@media(max-width:600px){
  .wrap{padding-left:12px;padding-right:12px}
  .hero__in{padding-left:12px;padding-right:12px}
}

/* ---------- Budowa i remont: zdjęcie nad tekstem na mobile ---------- */
@media(max-width:900px){
  .split__media{order:-1}
}

/* ---------- Ocena Google (sekcja Opinie) ---------- */
.gscore{display:inline-flex;align-items:center;gap:10px;margin-top:16px;padding:8px 16px;background:#fff;border:1px solid var(--border);border-radius:var(--r-pill);box-shadow:var(--shadow-sm);font-weight:700;color:var(--ink-900);transition:box-shadow var(--dur) var(--ease),transform var(--dur) var(--ease)}
.gscore:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}
.gscore__stars{display:inline-flex;gap:2px}
.gscore__stars svg{width:16px;height:16px;color:var(--yellow-400);fill:var(--yellow-400)}
.gscore__val{font-size:15px}
.gscore__g{display:inline-flex;align-items:center}
.gscore__g svg{display:block}
