/* style.css - proste style, kolorystyka i hero */
:root{
  --accent:#ff6b00;
  --bg:#000000; /* główne tło — czarny dla inwersji */
  --surface:#0a0a0a; /* powierzchnie kart */
  --text:#f6f6f6; /* odcień tekstu dla lepszego kontrastu */
  --muted:rgba(246,246,246,0.6);
  --muted-soft:rgba(255,255,255,0.08);
  --border:rgba(255,255,255,0.06);
}
.brand-logo{ height:108px; width:auto; object-fit:contain; } /* zwiększone 3x */
.brand-text{ margin-top:8px; font-weight:700; color:var(--text); font-size:18px; line-height:1; }
.brand-text .brand-rude{ color:var(--accent); }
.brand-text .brand-media{ color:var(--text); }
/* smaller brand text for mobile navbar */
.navbar .brand-text{ font-size:14px; margin-left:8px; }
/* ensure side-nav brand text centers and mobile inline behavior */
.side-nav .brand-text{ text-align:center; width:100%; font-size:2rem; margin-bottom:18px; }
.brand-text.d-md-none{ display:inline-block; margin-left:8px; }
body{font-family:Inter, system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial; background:var(--bg); color:var(--text);} 

/* Hero background and caption */
.hero{
  position:relative;
  background-color:var(--bg);
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
  height:45vh; min-height:300px; display:flex; align-items:center;
}
.hero-bg{ position:fixed; inset:0; z-index:-1; background-size:cover; background-position:center; background-repeat:no-repeat; opacity:0; transition:opacity 1s ease-in-out; filter:contrast(0.95) saturate(1.05) brightness(0.95); pointer-events:none; }
.hero-bg.active{ opacity:1; }
.hero::before{
  content:"";
  position:absolute; inset:0; z-index:1;
  background:linear-gradient(180deg, rgba(2,2,2,0.55), rgba(2,2,2,0.55));
}
.hero .container{ position:relative; z-index:2; }
/* hero caption hidden: removed per request. Keep rule to allow easy revert. */
.hero-caption{ display:none !important; }
.hero-caption .lead{ opacity:0.95; color:var(--muted); }

#about img{max-width:240px;}
img{max-width:100%;}

.social-icons{ display:flex; gap:12px; align-items:center; }
.social-link{ color:var(--accent); text-decoration:none; display:inline-flex; align-items:center; }
.social-link .social-icon{ width:28px; height:28px; fill:currentColor; transition:transform .15s ease, opacity .15s; opacity:0.95; }
.social-link:hover .social-icon{ transform:scale(1.08); opacity:1; }
.social-link[aria-label="Instagram"]{ color:#E1306C; }
.social-link[aria-label="Facebook"]{ color:#1877F2; }

.btn-primary{background:var(--accent); border-color:var(--accent);}
.btn-primary:hover{background:#e05900;}
/* prosty responsywny grid */
@media (max-width:576px){ 
  .hero{height:34vh;} 
  .hero-caption{padding:16px 18px;}
  /* cap logo on small screens so it doesn't overflow */
  .brand-logo{ height:48px; }
}

/* Contact form inputs: zmienione tło na szare dla lepszego komfortu przy ciemnym motywie */
:root{ --input-bg:#1b1b1b; --input-border:rgba(255,255,255,0.06); }
.form-control{ background:var(--input-bg) !important; color:var(--text) !important; border:1px solid var(--input-border) !important; box-shadow:none !important; }
.form-control::placeholder{ color:rgba(246,246,246,0.45) !important; }
.form-control:focus{ border-color:var(--accent) !important; box-shadow:0 0 0 .2rem rgba(255,107,0,0.12) !important; outline:0; }


/* Additional dark theme tweaks */
.card{ background:var(--surface); color:var(--text); border:1px solid rgba(255,255,255,0.03); }
.card .card-body{ background:transparent; }
footer{ background:#050505; color:var(--muted); }
#gallery .img-fluid{ border-radius:8px; box-shadow:0 6px 16px rgba(0,0,0,0.6); background:linear-gradient(180deg, rgba(0,0,0,0.15), rgba(0,0,0,0.15)); }
.btn-light{ background: var(--muted-soft); color:var(--text); border-color: var(--muted-soft); }
.btn-outline-secondary{ color:var(--text); border-color:var(--border); }
.navbar-dark .navbar-nav .nav-link{ color:rgba(255,255,255,0.92); }
.navbar{ background: linear-gradient(to bottom, rgba(0,0,0,1), rgba(0,0,0,0.75) 50%, rgba(0,0,0,0)); }
.navbar a.navbar-brand span{ color:var(--text); }

/* dark-mode specific separators and borders */
hr{ border-color: var(--border); opacity:0.9 }
.card{ background:var(--surface); color:var(--text); border:1px solid var(--border); }
.site-main{ background:transparent; }
.side-nav{ background:linear-gradient(180deg,#000,#070707); }
/* ensure GLightbox uses dark backdrop */
.glightbox-clean .gloader, .gslide .gcontent{ color:var(--text); }
.glightbox-container{ background:rgba(0,0,0,0.95) }
/* small tweak for featured thumb focus */
.thumbs img.active{ border-color:var(--accent); box-shadow:0 6px 18px rgba(0,0,0,0.7); }

/* Ensure brand 'Rude' stays accent colored even inside navbar anchors */
.brand-text .brand-rude{ color:var(--accent) !important; }
.navbar .brand-text .brand-rude{ color:var(--accent) !important; }

/* Side nav */
.side-nav{ position:fixed; top:0; left:0; bottom:0; width:25vw; min-width:260px; max-width:420px; padding:40px 24px; background:linear-gradient(180deg,#000,#0b0b0b); z-index:1030; align-items:center; display:flex; flex-direction:column; justify-content:center; }
.side-nav .nav{ width:100%; display:flex; flex-direction:column; align-items:center; justify-content:center; }
.side-nav .nav-link{ color:var(--muted); padding:18px 8px; width:100%; text-align:center; font-weight:600; transition:color .12s ease, transform .08s ease; }
.side-nav .nav-link:hover{ color:var(--accent); transform:translateY(-2px); }
.side-nav .nav-link.active{ color:var(--accent); }
.side-nav .brand-logo{ height:180px; margin-bottom:18px; } /* jeszcze większe logo */

/* ogranicz rozmiar logotypu w navbarze mobilnym aby nie dominował */
.navbar .brand-logo{ height:48px; }
.side-nav .nav-link small{ display:block; color:rgba(255,255,255,0.35); font-weight:400; }

/* site layout accounting for sidebar */
.site-layout{ margin-left:0; position:relative; background-size:cover; background-position:center; background-repeat:no-repeat; background-attachment:fixed; }
.site-layout::before{ content:""; position:absolute; inset:0; z-index:0; background:linear-gradient(180deg, rgba(0,0,0,0.35), rgba(0,0,0,0.65)); pointer-events:none; }
.site-main{ padding:28px; position:relative; z-index:1; background:transparent; }
@media(min-width:768px){
  .site-layout{ margin-left:25vw; }
  .site-main{ padding:48px 64px; }
  /* hide top navbar on desktop and force side-nav visible */
  .navbar.d-md-none{ display:none !important; }
  .side-nav{ display:flex !important; }
} 

/* featured / thumbs */
.feature-wrap .row.align-items-start { align-items: center !important; }
.featured-img { display: flex; align-items: center; min-height: 340px; }
.feature-wrap .col-lg-8{ display:flex; justify-content:center; align-items:center; }
.featured-img{ height:420px; background-size:cover; background-position:center; border-radius:8px; margin:0 auto; display:block; width:100%; max-width:860px; }
.thumbs img{ width:100%; height:90px; object-fit:cover; border-radius:6px; cursor:pointer; border:2px solid transparent; }
.thumbs img.active{ border-color:var(--accent); }

@media(max-width:992px){
  .featured-img{ height:320px; max-width:100%; }
}

