/* ════════ STRONA GŁÓWNA ════════
   Layout wg propozycji Claude Design, kolorystyka NASZA (Dom Uniwersalny):
   akcent = --brick-600 (burgund), tła = --paper-50/100 (krem), tekst = --ink-900. */

/* ── HERO (pelnoekranowe zdjecie, nav przezroczysty nad nim) ── */
.home-hero { position: relative; height: 100vh; min-height: 640px; overflow: hidden; display: flex; align-items: flex-end; }
.home-hero-bg { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 32%; }
.home-hero::after { content: ''; position: absolute; inset: 0; background: linear-gradient(to top, rgba(10,10,10,0.72) 0%, rgba(10,10,10,0.12) 46%, rgba(10,10,10,0.28) 100%); }
.home-hero-content { position: relative; z-index: 2; padding: 0 var(--pad-x) 84px; color: #fff; max-width: 1120px; }
.home-hero-tag { font-size: 11px; letter-spacing: 0.18em; text-transform: uppercase; opacity: 0.78; margin-bottom: 18px; display: flex; align-items: center; gap: 12px; }
.home-hero-tag::before { content: ''; display: block; width: 32px; height: 1px; background: currentColor; opacity: 0.6; }
.home-hero h1 { font-family: var(--sans); font-size: clamp(40px, 6vw, 84px); font-weight: 200; line-height: 1.04; letter-spacing: -0.02em; margin-bottom: 24px; text-wrap: balance; }
.home-hero-lead { font-size: clamp(16px, 1.5vw, 19px); font-weight: 300; line-height: 1.7; max-width: 620px; opacity: 0.94; }
.home-hero-actions { display: flex; gap: 14px; flex-wrap: wrap; margin: 36px 0 44px; }
.home-hero-ghost { color: #fff; border-color: rgba(255,255,255,0.55); }
.home-hero-ghost:hover { background: #fff; color: var(--ink-900); border-color: #fff; }
.home-hero-meta { display: flex; gap: 44px; flex-wrap: wrap; font-size: 13px; letter-spacing: 0.04em; opacity: 0.85; }
.home-hero-meta span strong { display: block; font-size: 11px; letter-spacing: 0.12em; text-transform: uppercase; opacity: 0.65; margin-bottom: 4px; font-weight: 400; }

.home-scroll { position: absolute; right: var(--pad-x); bottom: 84px; z-index: 3; color: #fff; text-decoration: none; display: flex; flex-direction: column; align-items: center; gap: 14px; font-size: 10px; letter-spacing: 0.18em; text-transform: uppercase; opacity: 0.85; }
.home-scroll-line { width: 1px; height: 48px; background: currentColor; position: relative; animation: homeScroll 2.4s ease-in-out infinite; }
.home-scroll-line::after { content: ''; position: absolute; bottom: 0; left: -3px; width: 7px; height: 7px; border-right: 1px solid currentColor; border-bottom: 1px solid currentColor; transform: rotate(45deg); }
@keyframes homeScroll { 0%,100% { transform: scaleY(1); transform-origin: top; opacity: 1; } 50% { transform: scaleY(0.6); transform-origin: top; opacity: 0.5; } }
@media (max-width: 900px) { .home-scroll { display: none; } }

/* ── FILOZOFIA (editorial statement) ── */
.home-statement { padding: calc(var(--pad-y) + 20px) 0; }
.home-statement-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 80px; align-items: start; }
.home-statement-h { font-family: var(--sans); font-weight: 200; font-size: clamp(28px, 4.2vw, 48px); line-height: 1.1; letter-spacing: -0.025em; }
.home-statement-h .serif { color: var(--brick-600); }
.home-statement-text p.body { font-size: 17px; line-height: 1.85; color: var(--ink-600); }
@media (max-width: 900px) { .home-statement-grid { grid-template-columns: 1fr; gap: 36px; } }

/* ── INWESTYCJE (duze karty 2x2: zdjecie + status + nazwa + meta + strzalka) ── */
.home-inv-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1px; background: var(--line); margin-top: 48px; }
.home-inv-card { position: relative; display: block; background: var(--paper-50); text-decoration: none; color: inherit; overflow: hidden; }
.home-inv-img { overflow: hidden; aspect-ratio: 16/10; background: var(--paper-100); }
.home-inv-img img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform 600ms cubic-bezier(0.22,0.61,0.36,1); }
.home-inv-card:hover .home-inv-img img { transform: scale(1.03); }
.home-inv-body { padding: 32px 36px 40px; }
.home-inv-status { font-size: 10px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--brick-600); margin-bottom: 14px; display: inline-flex; align-items: center; gap: 8px; }
.home-inv-status::before { content: ''; width: 6px; height: 6px; border-radius: 50%; background: var(--brick-600); display: block; }
.home-inv-status.done { color: var(--ink-400); }
.home-inv-status.done::before { background: var(--ink-400); }
.home-inv-name { font-family: var(--sans); font-size: clamp(28px, 2.6vw, 40px); font-weight: 200; letter-spacing: -0.02em; line-height: 1.05; margin-bottom: 24px; }
.home-inv-meta { display: flex; gap: 48px; flex-wrap: wrap; }
.home-inv-meta div span { display: block; font-size: 10px; letter-spacing: 0.12em; text-transform: uppercase; color: var(--ink-400); margin-bottom: 4px; }
.home-inv-meta div strong { font-size: 14px; font-weight: 400; }
.home-inv-arrow { position: absolute; top: 32px; right: 36px; width: 44px; height: 44px; border: 1px solid var(--line); display: flex; align-items: center; justify-content: center; background: rgba(250,248,244,0.6); color: var(--ink-900); font-size: 16px; transition: background 200ms var(--ease), border-color 200ms var(--ease), color 200ms var(--ease); }
.home-inv-card:hover .home-inv-arrow { background: var(--ink-900); border-color: var(--ink-900); color: #fff; }
@media (max-width: 760px) { .home-inv-grid { grid-template-columns: 1fr; } }

/* ── AKTUALNOŚCI (karty artykulow) ── */
.home-news-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; background: var(--line); margin-top: 48px; }
/* karty aktualnosci = zajawki bez linkow (nie klikalne) */
.home-news-card { background: var(--paper-50); color: inherit; display: block; overflow: hidden; }
.home-news-img { overflow: hidden; aspect-ratio: 4/3; background: var(--paper-100); }
.home-news-img img { width: 100%; height: 100%; object-fit: cover; display: block; }
.home-news-body { padding: 28px 28px 34px; }
.home-news-date { font-size: 11px; letter-spacing: 0.12em; text-transform: uppercase; color: var(--ink-400); margin-bottom: 10px; }
.home-news-title { font-family: var(--sans); font-size: 18px; font-weight: 400; line-height: 1.3; letter-spacing: -0.01em; margin-bottom: 12px; }
.home-news-excerpt { font-size: 13px; color: var(--ink-400); line-height: 1.7; }
@media (max-width: 1000px) { .home-news-grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 560px)  { .home-news-grid { grid-template-columns: 1fr; } }

/* ── FLOATING CTA ── */
.home-fab { position: fixed; bottom: 32px; right: 32px; z-index: 200; display: inline-flex; align-items: center; gap: 10px; padding: 14px 22px; background: var(--ink-900); color: var(--paper-50); font-size: 12px; letter-spacing: 0.12em; text-transform: uppercase; text-decoration: none; box-shadow: 0 8px 32px rgba(0,0,0,0.25); transition: transform 200ms var(--ease), box-shadow 200ms var(--ease); }
.home-fab:hover { transform: translateY(-2px); box-shadow: 0 12px 40px rgba(0,0,0,0.3); }
.home-fab-pulse { width: 8px; height: 8px; background: var(--brick-600); border-radius: 50%; flex-shrink: 0; position: relative; }
.home-fab-pulse::before { content: ''; position: absolute; inset: -4px; border-radius: 50%; background: var(--brick-600); opacity: 0.35; animation: homeFab 2s ease-in-out infinite; }
@keyframes homeFab { 0%,100% { transform: scale(1); opacity: 0.35; } 50% { transform: scale(1.8); opacity: 0; } }
@media (max-width: 700px) { .home-fab { display: none; } }
@media (prefers-reduced-motion: reduce) { .home-scroll-line, .home-fab-pulse::before { animation: none; } }

/* mobile: nie dubluj marki (nav ma logo "landmark.") - ukryj eyebrow "Landmark" w hero */
@media (max-width: 700px) { .home-hero-tag { display: none; } }
