/*
Theme Name: 321zdjęcie
Theme URI: https://321zdjecie.pl
Author: 321zdjęcie
Description: Motyw dla 321zdjęcie — fotobudki, fotobudka AI, GlamBot, Fotolustro, Fotobudka 360. Ciemny, czerwony akcent.
Version: 1.2.0
Text Domain: zdj321
*/

:root{
  --bg:#000;
  --fg:#fff;
  --muted:#a1a1a1;
  --accent:#dc2626;
  --accent-hover:#b91c1c;
  --card:#121212;
  --border:#1f1f1f;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--bg);color:var(--fg);font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.6}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
h1,h2,h3,h4{font-family:Montserrat,Inter,sans-serif;font-weight:800;letter-spacing:-.02em;line-height:1.1;margin:0 0 .5em}
h1{font-size:clamp(2rem,5vw,4rem)}
h2{font-size:clamp(1.6rem,3.5vw,2.6rem)}
h3{font-size:1.25rem}
.container{max-width:1200px;margin:0 auto;padding:0 1.25rem}
.btn{display:inline-block;padding:.85rem 1.5rem;border-radius:9999px;font-weight:600;transition:.2s;border:0;cursor:pointer}
.btn-primary{background:var(--accent);color:#fff}
.btn-primary:hover{background:var(--accent-hover)}
.btn-outline{border:1px solid var(--border);color:#fff}
.btn-outline:hover{border-color:var(--accent);color:var(--accent)}
.muted{color:var(--muted)}
.accent{color:var(--accent)}
.section{padding:5rem 0}
.grid{display:grid;gap:1.5rem}
.grid-3{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.card{background:var(--card);border:1px solid var(--border);border-radius:1rem;padding:1.5rem;transition:.2s}
.card:hover{border-color:var(--accent);transform:translateY(-4px)}
.card img{border-radius:.75rem;margin-bottom:1rem;aspect-ratio:4/3;object-fit:cover}

/* header */
.site-header{position:sticky;top:0;z-index:50;background:rgba(0,0,0,.85);backdrop-filter:blur(10px);border-bottom:1px solid var(--border)}
.site-header .inner{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;max-width:1200px;margin:0 auto}
.site-header .logo img{height:40px}
.nav{display:flex;gap:1.5rem;align-items:center}
.nav a{font-weight:500;font-size:.95rem;transition:.2s}
.nav a:hover,.nav a.active{color:var(--accent)}
.nav .btn{padding:.5rem 1rem}
.menu-toggle{display:none;background:none;border:0;color:#fff;font-size:1.5rem;cursor:pointer}
@media(max-width:860px){
  .menu-toggle{display:block}
  .nav{display:none;position:absolute;top:100%;left:0;right:0;background:#000;flex-direction:column;padding:1rem;border-bottom:1px solid var(--border)}
  .nav.open{display:flex}
}

/* hero */
.hero{position:relative;min-height:80vh;display:flex;align-items:center;overflow:hidden}
.hero::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.6),rgba(0,0,0,.95)),url(assets/hero-event.jpg) center/cover;z-index:-1}
.hero h1 span{color:var(--accent)}
.hero p{font-size:1.15rem;color:var(--muted);max-width:600px;margin:1rem 0 2rem}
.hero .actions{display:flex;gap:1rem;flex-wrap:wrap}

/* marquee */
.marquee{overflow:hidden;border-y:1px solid var(--border);padding:1.5rem 0}
.marquee .track{display:flex;gap:3rem;animation:scroll 30s linear infinite;white-space:nowrap}
.marquee span{color:var(--muted);font-size:.9rem;text-transform:uppercase;letter-spacing:.1em}
@keyframes scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* pricing */
.pricing{display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.price-card{background:var(--card);border:1px solid var(--border);border-radius:1rem;padding:2rem;text-align:center}
.price-card.featured{border-color:var(--accent);position:relative}
.price-card .price{font-size:2.5rem;font-weight:800;color:var(--accent);margin:1rem 0}
.price-card ul{list-style:none;padding:0;text-align:left}
.price-card li{padding:.5rem 0;border-bottom:1px solid var(--border)}

/* footer */
.site-footer{background:#0a0a0a;border-top:1px solid var(--border);padding:3rem 0 1.5rem;margin-top:5rem}
.site-footer .grid-cols{display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:2rem}
.site-footer h4{font-size:.9rem;text-transform:uppercase;letter-spacing:.1em;color:var(--accent)}
.site-footer a{color:var(--muted);font-size:.9rem;display:block;padding:.25rem 0}
.site-footer a:hover{color:#fff}
.site-footer .copy{text-align:center;padding-top:2rem;border-top:1px solid var(--border);color:var(--muted);font-size:.85rem}

/* form */
.form{display:grid;gap:1rem;max-width:600px}
.form input,.form select,.form textarea{padding:.85rem 1rem;background:var(--card);border:1px solid var(--border);border-radius:.5rem;color:#fff;font:inherit}
.form input:focus,.form select:focus,.form textarea:focus{outline:0;border-color:var(--accent)}
.form-msg{padding:1rem;border-radius:.5rem;margin-top:1rem}
.form-msg.success{background:rgba(34,197,94,.1);border:1px solid #22c55e;color:#22c55e}
.form-msg.error{background:rgba(220,38,38,.1);border:1px solid var(--accent);color:var(--accent)}

/* page hero */
.page-hero{padding:6rem 0 3rem;text-align:center;border-bottom:1px solid var(--border)}
.page-hero .lead{font-size:1.15rem;color:var(--muted);max-width:700px;margin:1rem auto 0}

/* cta */
.cta{background:linear-gradient(135deg,#1a0505,#000);padding:5rem 0;text-align:center;border-top:1px solid var(--border)}
