/* Modern mobile-first styles for Kacper IT */
:root{
  --bg:#07162a;              /* page background */
  --surface:#0e2934;         /* main card surface */
  --surface-2:#0b2130;       /* secondary surfaces */
  --text:#e9f5fb;            /* main text */
  --muted:#98b3c3;           /* secondary text */
  --muted-2:#6f8f9f;         /* hint / placeholder */
  --accent1:#7c3aed;         /* violet */
  --accent2:#06b6d4;         /* cyan */
  --glass: rgba(255,255,255,0.03);
  --radius:12px;
  --max-width:1100px;
  --font: 'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
}
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0; font-family:var(--font); background:var(--bg); color:var(--text); -webkit-font-smoothing:antialiased;
}
.container{max-width:var(--max-width);margin:0 auto;padding:1.25rem}
main{padding-top:84px}
.site-header{position:fixed !important;top:0 !important;left:0 !important;right:0 !important;height:68px !important;background:linear-gradient(180deg, rgba(7,18,40,0.98), rgba(7,18,40,1)) !important;backdrop-filter:blur(8px) !important;border-bottom:1px solid rgba(255,255,255,0.04) !important;box-shadow:0 6px 18px rgba(2,6,23,0.6) !important;z-index:10000 !important}
.header-inner{display:flex;align-items:center;justify-content:space-between}
 .site-header .container{height:68px;display:flex;align-items:center}
.logo{font-weight:800;font-size:1.125rem;color:var(--text);text-decoration:none}
.logo span{color:var(--accent2);margin-left:6px}
.nav{display:flex;gap:1rem;align-items:center}
.nav a{color:var(--muted);text-decoration:none;padding:0.5rem}
.nav a.btn-ghost{border:1px solid rgba(255,255,255,0.06);padding:0.45rem 0.75rem;border-radius:8px}
.nav-toggle{display:none;background:transparent;border:0;color:var(--muted);font-size:1.25rem}

/* Hero */
.hero{padding:4rem 0; position:relative; overflow:hidden}
.hero .container{position:relative;z-index:2}
.hero::before{content:'';position:absolute;left:-6%;top:8%;width:48%;height:68%;background:radial-gradient(closest-side, rgba(124,58,237,0.08), rgba(6,182,212,0.04) 60%, transparent 70%);transform:translateX(-3%);filter:blur(20px);z-index:1}
.hero-grid{display:grid;grid-template-columns:1fr 360px;gap:2rem;align-items:center}
.hero-copy h1{font-size:clamp(1.5rem,3vw,2.25rem);margin:0 0 0.5rem}
.lead{color:var(--muted);margin:0 0 1rem}
.btn{display:inline-block;background:linear-gradient(90deg,var(--accent1),var(--accent2));color:#021523;padding:0.6rem 1rem;border-radius:10px;text-decoration:none;font-weight:600}
.btn-secondary{background:transparent;border:1px solid rgba(255,255,255,0.06);color:var(--muted);margin-left:0.5rem}
.hero-features{display:flex;gap:1rem;list-style:none;padding:0;margin-top:1rem;color:var(--muted)}
.hero-visual svg{max-width:100%;height:auto}
.hero-svg{width:100%;height:100%;display:block}

/* Sections */
.section{padding:3rem 0;position:relative}
.section.alt{background:linear-gradient(180deg, rgba(255,255,255,0.008), transparent);overflow:hidden}
.section.alt::before{content:'';position:absolute;right:-6%;bottom:-6%;width:30%;height:48%;background:radial-gradient(closest-side, rgba(6,182,212,0.04), transparent 60%);filter:blur(18px);z-index:0}
.section-title{font-size:1.25rem;margin:0 0 1rem}
.grid{display:grid;gap:1rem}
.services{grid-template-columns:repeat(2,1fr)}
.card{background:linear-gradient(180deg, rgba(255,255,255,0.018), rgba(255,255,255,0.008));padding:1.1rem;border-radius:var(--radius);border:1px solid rgba(255,255,255,0.03);display:flex;flex-direction:column;align-items:flex-start;gap:0.6rem;transition:transform 220ms cubic-bezier(.2,.9,.2,1), box-shadow 220ms;position:relative;z-index:2}
.card:hover{transform:translateY(-6px);box-shadow:0 12px 36px rgba(2,6,23,0.55)}
.icon{width:56px;height:56px;margin-bottom:0.25rem}

/* Pricing */
.pricing{grid-template-columns:repeat(3,1fr)}
.price-card{background:linear-gradient(180deg, rgba(255,255,255,0.018), rgba(255,255,255,0.008));padding:1.2rem;border-radius:12px;text-align:center;display:flex;flex-direction:column;gap:0.6rem;align-items:center;position:relative;z-index:2}
.price-ill{width:84px;height:84px}
.price{font-size:1.25rem;font-weight:700;color:var(--accent2)}
.price-card.featured{transform:translateY(-8px);box-shadow:0 14px 40px rgba(12,18,42,0.6)}

/* About */
.about{background:var(--surface-2);padding:1.1rem;border-radius:12px;color:var(--muted)}

/* Gallery */
.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:0.75rem;margin-top:1rem;position:relative;z-index:2}
.gallery img{width:100%;height:160px;object-fit:cover;border-radius:10px;border:1px solid rgba(255,255,255,0.03);cursor:pointer;transition:transform 180ms ease, box-shadow 180ms ease}
.gallery img:hover{transform:scale(1.03);box-shadow:0 8px 30px rgba(2,6,23,0.6)}

/* Contact */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;align-items:start}
.contact-item a{color:var(--accent2)}
.contact-form{background:var(--surface-2);padding:1.1rem;border-radius:12px;border:1px solid rgba(255,255,255,0.03)}
.contact-form label{display:block;font-size:0.95rem;color:var(--muted);margin-bottom:0.6rem}
.contact-form input,.contact-form textarea{width:100%;padding:0.7rem;border-radius:10px;border:1px solid rgba(255,255,255,0.045);background:rgba(255,255,255,0.02);color:var(--text)}
.contact-form input::placeholder,.contact-form textarea::placeholder{color:var(--muted-2)}
.contact-form button{min-width:84px}
.form-actions{display:flex;gap:0.5rem;margin-top:0.5rem}

/* Footer */
.site-footer{border-top:1px solid rgba(255,255,255,0.03);padding:2rem 0;margin-top:4rem;background:linear-gradient(180deg, rgba(7,18,40,0.02), rgba(7,18,40,0));position:relative;z-index:3}
.footer-inner{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;color:var(--muted)}
.site-footer a{color:var(--accent2)}

/* Lightbox modal */
.lightbox{position:fixed;inset:0;display:none;align-items:center;justify-content:center;background:rgba(2,6,23,0.7);z-index:50;padding:2rem}
.lightbox[aria-hidden="false"]{display:flex}
.lightbox-img{max-width:92%;max-height:86%;border-radius:8px;box-shadow:0 20px 60px rgba(2,6,23,0.7)}
.lightbox-close{position:absolute;top:1rem;right:1rem;background:transparent;border:0;color:#fff;font-size:1.25rem}

/* Responsive */
@media (max-width:900px){
  .hero-grid{grid-template-columns:1fr}
  .hero-visual{order: -1}
  .services{grid-template-columns:1fr}
  .pricing{grid-template-columns:1fr}
  .contact-grid{grid-template-columns:1fr}
  .gallery{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:700px){
  /* Mobile: use hamburger menu */
  .nav{display:none;position:absolute;top:68px;left:0;right:0;background:linear-gradient(180deg, rgba(7,18,40,0.98), rgba(7,18,40,0.98));box-shadow:0 8px 30px rgba(2,6,23,0.6);flex-direction:column;padding:0.5rem 1rem;gap:0.5rem;z-index:9999;transition:max-height 260ms ease, opacity 200ms ease;overflow:hidden;max-height:0;opacity:0}
  .nav.open{display:flex;opacity:1;max-height:420px}
  .nav a{padding:0.6rem 0.5rem;border-radius:8px;color:var(--text)}
  .nav-toggle{display:block;background:transparent;border:0;color:var(--muted);font-size:1.25rem}
  .header-inner{gap:0.5rem}
  .gallery img{height:140px}
}
@media (max-width:420px){
  .gallery{grid-template-columns:1fr}
}

/* utility */
.text-muted{color:var(--muted)}
