/* ============================================================
   PODSTRONY — blog, sale weselne, Strefa Pary
   ============================================================ */

/* Nagłówek podstrony (bo header jest fixed) */
.page-hero{background:linear-gradient(120deg,#1a1714 0%,#2a231b 60%,#3a2f22 100%);color:var(--cream);
  padding:170px 0 70px;position:relative;overflow:hidden}
.page-hero::before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 75% 25%,rgba(176,141,87,.2),transparent 55%)}
.page-hero .wrap{position:relative;z-index:2}
.page-hero h1{font-size:clamp(2.2rem,5vw,3.4rem);margin:10px 0}
.page-hero p{color:rgba(247,243,236,.82);max-width:640px;font-size:1.05rem}
.page-hero .crumbs{font-size:.78rem;letter-spacing:.1em;color:rgba(247,243,236,.6);margin-bottom:6px}
.page-hero .crumbs a:hover{color:var(--gold)}

.page-body{padding:80px 0}

/* BLOG — lista */
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
.blog-card{background:#fff;border:1px solid var(--line);border-radius:4px;overflow:hidden;transition:.35s;display:flex;flex-direction:column}
.blog-card:hover{transform:translateY(-6px);box-shadow:var(--shadow)}
.blog-card .thumb{aspect-ratio:16/10;background:linear-gradient(135deg,#2a231b,#4a3c2a);background-size:cover;background-position:center}
.blog-card .body{padding:26px;display:flex;flex-direction:column;flex:1}
.blog-card .meta{font-size:.74rem;letter-spacing:.1em;text-transform:uppercase;color:var(--gold-deep);margin-bottom:10px}
.blog-card h2{font-size:1.4rem;margin-bottom:10px}
.blog-card p{color:var(--ink-soft);font-size:.95rem;flex:1}
.blog-card .more{margin-top:16px;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-deep)}

/* BLOG — artykuł */
.article{max-width:760px;margin:0 auto}
.article .meta{font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;color:var(--gold-deep);margin-bottom:14px}
.article-cover{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:4px;margin:20px 0 34px}
.article h1{font-size:clamp(2rem,4vw,2.8rem);margin-bottom:20px}
.article h2{font-size:1.7rem;margin:34px 0 14px}
.article h3{font-size:1.35rem;margin:26px 0 10px}
.article p{margin-bottom:18px;color:var(--ink-soft)}
.article ul{margin:0 0 18px 22px;color:var(--ink-soft)}
.article li{margin-bottom:8px}
.article a{color:var(--gold-deep);border-bottom:1px solid var(--line)}
.article .tiktok-embed{margin:0 auto 24px}
.back-link{display:inline-block;margin-top:40px;font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-deep)}

/* SALE WESELNE */
.sale-intro{max-width:760px;margin:0 auto 54px;text-align:center;color:var(--ink-soft)}
.powiat-block{margin-bottom:54px}
.powiat-block h2{font-size:1.9rem;margin-bottom:8px;padding-bottom:10px;border-bottom:1px solid var(--line)}
.miasta{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:18px;margin-top:22px}
.miasto-card{background:#fff;border:1px solid var(--line);border-radius:4px;padding:24px;transition:.3s}
.miasto-card:hover{box-shadow:var(--shadow);transform:translateY(-4px)}
.miasto-card h3{font-size:1.3rem;margin-bottom:6px}
.miasto-card p{font-size:.9rem;color:var(--ink-soft)}

.sale-heading{font-size:1.9rem;margin:64px 0 8px;padding-bottom:10px;border-bottom:1px solid var(--line)}
.sale-subheading{color:var(--ink-soft);font-size:.95rem;margin-bottom:22px;max-width:640px}
.sale-obiekty{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px}
.sala-card{background:#fff;border:1px solid var(--line);border-radius:4px;padding:24px;transition:.3s}
.sala-card:hover{box-shadow:var(--shadow);transform:translateY(-4px)}
.sala-card h3{font-size:1.2rem;margin-bottom:4px}
.sala-miejscowosc{font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;color:var(--gold-deep);margin-bottom:10px}
.sala-card p{font-size:.9rem;color:var(--ink-soft)}

/* STREFA PARY — logowanie */
.login-box{max-width:420px;margin:0 auto;background:#fff;border:1px solid var(--line);border-radius:6px;padding:44px 38px;box-shadow:var(--shadow);text-align:center}
.login-box h1{font-size:1.9rem;margin-bottom:10px}
.login-box p{color:var(--ink-soft);margin-bottom:24px;font-size:.95rem}
.login-box input{width:100%;border:1px solid var(--line);padding:14px 16px;margin-bottom:16px;border-radius:3px;font-family:var(--sans);font-size:.95rem;background:var(--cream)}
.login-box input:focus{outline:none;border-color:var(--gold)}
.login-box .btn{width:100%;border:none}
.login-error{color:#a23b3b;font-size:.88rem;margin-bottom:16px}

@media(max-width:880px){
  .blog-grid{grid-template-columns:1fr}
}
@media(min-width:881px) and (max-width:1100px){
  .blog-grid{grid-template-columns:repeat(2,1fr)}
}
