/* ===========================================================
   FurniLove — strona główna (luksusowy, jasny styl)
   =========================================================== */
:root{
  --fl-ink:#1b1b1b;
  --fl-ink-soft:#4a4a4a;
  --fl-muted:#8a8a8a;
  --fl-gold:#a17c44;
  --fl-gold-d:#876230;
  --fl-gold-l:#c9a96a;
  --fl-cream:#fbfaf3;
  --fl-cream-2:#f4f0e6;
  --fl-line:#ece7db;
  --fl-white:#ffffff;
  --fl-radius:16px;
  --fl-shadow:0 18px 50px -20px rgba(60,45,20,.28);
  --fl-shadow-sm:0 10px 30px -16px rgba(60,45,20,.22);
  --fl-serif:"Playfair Display",Georgia,serif;
  --fl-sans:"Manrope",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --fl-max:1340px;
}

/* scope wszystkiego pod .fl-home, żeby nie ruszać reszty serwisu */
.fl-home{font-family:var(--fl-sans);color:var(--fl-ink);background:var(--fl-white);line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:hidden;}
.fl-home *{box-sizing:border-box;}
.fl-home img{max-width:100%;display:block;}
.fl-home a{color:inherit;text-decoration:none;}
.fl-wrap{width:min(var(--wp--style--global--wide-size, 1340px), 100% - 2.5rem);max-width:none;margin-inline:auto;padding-inline:0;box-sizing:border-box;}
.fl-section{padding-block:clamp(56px,8vw,120px);}
.fl-cream{background:var(--fl-cream);}

/* typografia */
.fl-eyebrow{font-size:.78rem;letter-spacing:.28em;text-transform:uppercase;color:var(--fl-gold);font-weight:600;margin:0 0 18px;}
.fl-h1{font-family:var(--fl-serif);font-weight:600;font-size:clamp(2.6rem,5.2vw,4.4rem);line-height:1.05;letter-spacing:-.01em;margin:0 0 22px;color:var(--fl-ink);}
.fl-h1 em{font-style:italic;color:var(--fl-gold);}
.fl-h2{font-family:var(--fl-serif);font-weight:600;font-size:clamp(2rem,3.6vw,3rem);line-height:1.12;margin:0 0 16px;letter-spacing:-.01em;}
.fl-h2 em{font-style:italic;color:var(--fl-gold);}
.fl-lead{font-size:clamp(1.02rem,1.4vw,1.18rem);color:var(--fl-ink-soft);max-width:54ch;margin:0 0 32px;}
.fl-center{text-align:center;}
.fl-center .fl-lead,.fl-lead.fl-center{margin-inline:auto;}

/* przyciski */
.fl-btn{display:inline-flex;align-items:center;gap:.6em;font-family:var(--fl-sans);font-weight:600;font-size:.98rem;letter-spacing:.02em;padding:15px 30px;border-radius:999px;transition:.28s cubic-bezier(.2,.7,.3,1);cursor:pointer;border:1.5px solid transparent;white-space:nowrap;}
.fl-btn svg{width:18px;height:18px;}
.fl-btn-gold{background:var(--fl-gold);color:#fff;box-shadow:0 12px 26px -12px rgba(161,124,68,.7);}
.fl-btn-gold:hover{background:var(--fl-gold-d);transform:translateY(-2px);box-shadow:0 18px 32px -12px rgba(161,124,68,.8);}
.fl-btn-ghost{border-color:rgba(27,27,27,.18);color:var(--fl-ink);background:transparent;}
.fl-btn-ghost:hover{border-color:var(--fl-gold);color:var(--fl-gold);transform:translateY(-2px);}
.fl-btn-light{background:#fff;color:var(--fl-ink);}
.fl-btn-light:hover{transform:translateY(-2px);box-shadow:var(--fl-shadow-sm);}
.fl-link{display:inline-flex;align-items:center;gap:.5em;color:var(--fl-gold);font-weight:600;letter-spacing:.02em;transition:.25s;}
.fl-link:hover{gap:.85em;color:var(--fl-gold-d);}

/* ---------- HERO ---------- */
.fl-hero{position:relative;}
.fl-hero-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(28px,4vw,64px);align-items:center;padding-block:clamp(40px,5vw,80px);}
.fl-hero-copy{max-width:560px;}
.fl-hero-media{position:relative;}
.fl-hero-media .fl-blob{position:absolute;inset:auto -6% -8% auto;width:78%;aspect-ratio:1;background:radial-gradient(circle at 30% 30%,var(--fl-cream-2),var(--fl-cream));border-radius:50%;z-index:0;}
.fl-hero-media .fl-img{position:relative;z-index:1;border-radius:calc(var(--fl-radius) + 8px);overflow:hidden;box-shadow:var(--fl-shadow);}
.fl-hero-media .fl-img img{width:100%;height:clamp(360px,46vw,560px);object-fit:cover;transform:scale(1.01);}
.fl-badge{position:absolute;z-index:2;left:-22px;bottom:34px;background:#fff;border-radius:14px;padding:14px 18px;box-shadow:var(--fl-shadow-sm);display:flex;align-items:center;gap:12px;}
.fl-badge .ic{width:42px;height:42px;border-radius:11px;background:var(--fl-cream);display:grid;place-items:center;color:var(--fl-gold);flex:none;}
.fl-badge b{display:block;font-size:.95rem;}
.fl-badge span{font-size:.8rem;color:var(--fl-muted);}
.fl-hero-meta{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:30px;font-size:.9rem;color:var(--fl-ink-soft);}
.fl-hero-meta span{display:inline-flex;align-items:center;gap:8px;}
.fl-hero-meta svg{width:16px;height:16px;color:var(--fl-gold);}
.fl-cta-row{display:flex;flex-wrap:wrap;gap:14px;}

/* ---------- USP strip ---------- */
.fl-usp{border-top:1px solid var(--fl-line);border-bottom:1px solid var(--fl-line);}
.fl-usp-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;padding-block:30px;}
.fl-usp-item{display:flex;align-items:center;gap:14px;}
.fl-usp-item .ic{width:46px;height:46px;border-radius:50%;background:var(--fl-cream);display:grid;place-items:center;color:var(--fl-gold);flex:none;}
.fl-usp-item .ic svg{width:22px;height:22px;}
.fl-usp-item b{display:block;font-size:.98rem;line-height:1.25;}
.fl-usp-item span{font-size:.82rem;color:var(--fl-muted);}

/* ---------- nagłówek sekcji ---------- */
.fl-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:42px;}
.fl-head .fl-h2{margin-bottom:6px;}
.fl-head p{color:var(--fl-muted);margin:0;}

/* ---------- karuzela produktów ---------- */
.fl-carousel{position:relative;}
.fl-track{display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:6px 4px 26px;margin:0 -4px;-ms-overflow-style:none;scrollbar-width:none;}
.fl-track::-webkit-scrollbar{display:none;}
.fl-card{scroll-snap-align:start;flex:0 0 clamp(248px,27vw,312px);background:#fff;border:1px solid var(--fl-line);border-radius:var(--fl-radius);overflow:hidden;transition:.35s cubic-bezier(.2,.7,.3,1);display:flex;flex-direction:column;}
@media (hover:hover) and (pointer:fine){.fl-card:hover{transform:translateY(-6px);box-shadow:var(--fl-shadow);border-color:transparent;}}
.fl-card-img{position:relative;aspect-ratio:4/3;overflow:hidden;background:var(--fl-cream);}
.fl-card-img img{position:relative;z-index:0;width:100%;height:100%;object-fit:cover;transition:.6s cubic-bezier(.2,.7,.3,1);}
@media (hover:hover) and (pointer:fine){.fl-card:hover .fl-card-img img{transform:scale(1.06);}}
.fl-tag{position:absolute;z-index:2;top:12px;left:12px;background:rgba(255,255,255,.92);backdrop-filter:blur(4px);color:var(--fl-gold-d);font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;font-weight:700;padding:6px 12px;border-radius:999px;}
.fl-card-body{padding:20px 20px 22px;display:flex;flex-direction:column;gap:6px;flex:1;}
.fl-card-body h3{font-family:var(--fl-sans);font-weight:600;font-size:1.05rem;margin:0;letter-spacing:.01em;}
.fl-price{margin-top:auto;padding-top:12px;display:flex;align-items:baseline;gap:8px;}
.fl-price .now{font-family:var(--fl-serif);font-size:1.3rem;font-weight:600;color:var(--fl-ink);}
.fl-price .cur{font-size:.85rem;color:var(--fl-muted);}
.fl-card-cta{margin-top:12px;font-size:.9rem;color:var(--fl-gold);font-weight:600;display:inline-flex;align-items:center;gap:.5em;transition:.25s;}
.fl-card:hover .fl-card-cta{gap:.85em;}
.fl-arrows{display:flex;gap:10px;}
.fl-arrow{width:48px;height:48px;border-radius:50%;border:1.5px solid var(--fl-line);background:#fff;color:var(--fl-ink);display:grid;place-items:center;cursor:pointer;transition:.25s;}
.fl-arrow:hover{border-color:var(--fl-gold);color:var(--fl-gold);transform:translateY(-2px);}
.fl-arrow svg{width:20px;height:20px;}

/* ---------- kategorie ---------- */
.fl-cats{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:220px;gap:18px;}
.fl-cat{position:relative;border-radius:var(--fl-radius);overflow:hidden;display:flex;align-items:flex-end;padding:24px;color:#fff;}
.fl-cat.lg{grid-column:span 2;grid-row:span 2;}
.fl-cat.tall{grid-row:span 2;}
.fl-cat img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;transition:.7s cubic-bezier(.2,.7,.3,1);}
.fl-cat::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(20,16,8,0) 30%,rgba(20,16,8,.72) 100%);transition:.4s;pointer-events:none;}
.fl-cat:hover img{transform:scale(1.07);}
.fl-cat:hover::after{background:linear-gradient(180deg,rgba(161,124,68,.15) 0%,rgba(20,16,8,.8) 100%);}
.fl-cat > div{
  position:relative;z-index:2;
  background:rgba(22,17,9,.46);
  -webkit-backdrop-filter:blur(10px) saturate(1.15);
  backdrop-filter:blur(10px) saturate(1.15);
  border:1px solid rgba(255,255,255,.16);
  border-radius:14px;padding:13px 18px;
  box-shadow:0 10px 28px -14px rgba(0,0,0,.55);
}
.fl-cat h3{font-family:var(--fl-serif);font-size:1.45rem;font-weight:600;margin:0 0 2px;color:#fff;}
.fl-cat .cnt{font-size:.8rem;opacity:.95;display:flex;align-items:center;gap:8px;color:var(--fl-gold-l);}
.fl-cat .go{position:absolute;top:18px;right:18px;z-index:2;width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.16);backdrop-filter:blur(6px);display:grid;place-items:center;opacity:0;transform:translateY(-6px);transition:.3s;}
.fl-cat:hover .go{opacity:1;transform:none;}
.fl-cat .go svg{width:18px;height:18px;}

/* ---------- editorial ---------- */
.fl-editorial{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,5vw,72px);align-items:center;}
.fl-editorial .media{position:relative;border-radius:calc(var(--fl-radius) + 6px);overflow:hidden;box-shadow:var(--fl-shadow);}
.fl-editorial .media img{width:100%;height:clamp(360px,42vw,520px);object-fit:cover;}
.fl-editorial .media .frame{position:absolute;inset:16px;border:1px solid rgba(255,255,255,.5);border-radius:var(--fl-radius);pointer-events:none;}
.fl-features{list-style:none;padding:0;margin:26px 0 32px;display:grid;gap:16px;}
.fl-features li{display:flex;gap:14px;align-items:flex-start;}
.fl-features .ic{width:30px;height:30px;border-radius:50%;background:var(--fl-cream);color:var(--fl-gold);display:grid;place-items:center;flex:none;}
.fl-features .ic svg{width:16px;height:16px;}
.fl-features b{display:block;}
.fl-features span{color:var(--fl-muted);font-size:.92rem;}

/* ---------- pasek CTA (jasny, ze złotą ramką) ---------- */
.fl-band{background:var(--fl-cream);border:1px solid var(--fl-line);border-radius:calc(var(--fl-radius) + 8px);padding:clamp(36px,5vw,68px);text-align:center;position:relative;overflow:hidden;}
.fl-band::before,.fl-band::after{content:"";position:absolute;width:280px;height:280px;border-radius:50%;background:radial-gradient(circle,rgba(161,124,68,.14),transparent 70%);}
.fl-band::before{top:-120px;left:-80px;}
.fl-band::after{bottom:-140px;right:-90px;}
.fl-band .inner{position:relative;z-index:1;}
.fl-band .fl-h2{margin-bottom:14px;}

/* ---------- wartości / liczby ---------- */
.fl-values{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
.fl-value{text-align:center;padding:30px 18px;border:1px solid var(--fl-line);border-radius:var(--fl-radius);background:#fff;transition:.3s;}
.fl-value:hover{box-shadow:var(--fl-shadow-sm);transform:translateY(-4px);}
.fl-value .ic{width:54px;height:54px;border-radius:50%;background:var(--fl-cream);color:var(--fl-gold);display:grid;place-items:center;margin:0 auto 14px;}
.fl-value .ic svg{width:26px;height:26px;}
.fl-value b{font-family:var(--fl-serif);font-size:1.15rem;display:block;margin-bottom:4px;}
.fl-value span{font-size:.88rem;color:var(--fl-muted);}

/* ---------- finalne CTA ---------- */
.fl-final{text-align:center;}
.fl-divider{width:60px;height:2px;background:var(--fl-gold);margin:0 auto 26px;border:0;}

/* ---------- responsywność ---------- */
@media(max-width:980px){
  .fl-hero-grid{grid-template-columns:1fr;}
  .fl-hero-media{order:-1;}
  .fl-editorial{grid-template-columns:1fr;}
  .fl-usp-grid{grid-template-columns:repeat(2,1fr);gap:22px 18px;}
  .fl-cats{grid-template-columns:repeat(2,1fr);grid-auto-rows:220px;}
  .fl-cat.lg{grid-column:span 2;grid-row:span 1;height:auto;}
  .fl-cat.tall{grid-row:span 1;height:auto;}
  .fl-values{grid-template-columns:repeat(2,1fr);}
}
@media(max-width:600px){
  .fl-head{flex-direction:column;align-items:flex-start;}
  .fl-head .fl-arrows{display:none;}
  .fl-cats{grid-template-columns:1fr;grid-auto-rows:230px;}
  .fl-cat.lg,.fl-cat.tall{grid-column:auto;grid-row:auto;height:auto;}
  .fl-cta-row .fl-btn{flex:1 1 auto;justify-content:center;}
}

/* ===== Szybki wybór kategorii pod hero (przewijane w poziomie) ===== */
.fl-quickcat-sec{margin-top:16px;margin-bottom:4px;}
.fl-quickcat{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;padding:4px 0 14px;scrollbar-width:none;}
.fl-quickcat::-webkit-scrollbar{display:none;}
.fl-qc{position:relative;flex:1 0 290px;scroll-snap-align:start;aspect-ratio:5/3;border-radius:var(--fl-radius,18px);overflow:hidden;display:flex;align-items:flex-end;color:#fff;box-shadow:0 1px 3px rgba(20,16,8,.08);}
.fl-qc img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;transition:.7s cubic-bezier(.2,.7,.3,1);}
.fl-qc::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(20,16,8,0) 34%,rgba(20,16,8,.78) 100%);}
.fl-qc__body{position:relative;z-index:2;padding:18px 20px;}
.fl-qc__title{display:block;font-family:var(--fl-serif,"Playfair Display",Georgia,serif);font-size:1.5rem;font-weight:600;line-height:1.1;color:#fff;}
.fl-qc__sub{display:block;font-size:.85rem;opacity:.92;margin-top:3px;color:var(--fl-gold-l,#c9a96a);}
.fl-qc__go{position:absolute;z-index:2;top:16px;right:16px;width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.18);backdrop-filter:blur(6px);display:grid;place-items:center;transition:.3s;}
.fl-qc__go svg{width:16px;height:16px;}
@media (hover:hover){.fl-qc:hover img{transform:scale(1.06);}.fl-qc:hover .fl-qc__go{background:var(--fl-gold,#a17c44);}}
@media (max-width:768px){.fl-qc{flex:0 0 78%;aspect-ratio:4/3;}.fl-qc__title{font-size:1.3rem;}}
