/*
Theme Name: MM Autoaufbereitung
Theme URI: https://example.com/
Author: MM Autoaufbereitung
Description: Maßgeschneiderte Theme für Fahrzeugaufbereitung in Passau.
Version: 1.0
Text Domain: mm-autoaufbereitung
*/

* {margin:0; padding:0; box-sizing:border-box;}
html {scroll-behavior:smooth;}
body {
  font-family: 'Montserrat', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  line-height:1.6;
  color:#fff;
  background:#020617;
  overflow-x:hidden;
}

a {text-decoration:none; color:inherit;}

header {
  position:fixed;
  top:0; left:0;
  width:100%;
  background:rgba(15,23,42,0.96);
  color:#fff;
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:12px 40px;
  z-index:1000;
  box-shadow:0 2px 15px rgba(0,0,0,0.6);
}

.logo {
  font-size:1.4rem;
  font-weight:700;
}
.logo span {
  color:#38bdf8;
}

nav {
  display:flex;
  gap:22px;
}
nav a {
  font-size:0.95rem;
  font-weight:500;
  position:relative;
  padding:4px 0;
}
nav a::after {
  content:"";
  position:absolute;
  left:0; bottom:0;
  width:0; height:2px;
  background:#38bdf8;
  transition:.25s;
}
nav a:hover::after {
  width:100%;
}

.menu-toggle {
  display:none;
  flex-direction:column;
  gap:4px;
  cursor:pointer;
}
.menu-toggle .bar {
  width:26px;
  height:3px;
  background:#fff;
  border-radius:999px;
}

.mobile-nav {
  display:none;
  flex-direction:column;
  background:#020617;
  padding:16px 22px 18px;
  border-bottom:1px solid #1f2937;
  position:fixed;
  top:56px;
  left:0;
  right:0;
  z-index:999;
}
.mobile-nav a {
  padding:10px 0;
  font-size:0.95rem;
  border-bottom:1px solid #1f2937;
}

main {
  padding-top:80px;
}

section {
  position:relative;
  padding:60px 120px;
  transition:all .4s ease;
}

/* Hero */
.hero {
  min-height:80vh;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  color:#fff;
  background:
    linear-gradient(135deg, rgba(2,6,23,0.95), rgba(15,23,42,0.95)),
    url('https://images.unsplash.com/photo-1542362567-b07e54358753?auto=format&fit=crop&w=1600&q=80')
    center/cover no-repeat;
}

.hero-content {
  max-width:800px;
}
.hero h1 {
  font-size:2.8rem;
  margin-bottom:12px;
}
.hero p {
  font-size:1.1rem;
  color:#e5e7eb;
  margin-bottom:26px;
}
.btn-row {
  display:flex;
  justify-content:center;
  gap:14px;
  flex-wrap:wrap;
}

.btn {
  display:inline-block;
  padding:12px 26px;
  border-radius:999px;
  border:none;
  background:#0ea5e9;
  color:#f9fafb;
  font-weight:600;
  font-size:0.95rem;
  cursor:pointer;
  box-shadow:0 8px 20px rgba(14,165,233,0.35);
  transition:.25s;
}
.btn:hover {
  background:#0284c7;
  transform:translateY(-2px);
}
.btn.outline {
  background:transparent;
  border:1px solid #e5e7eb;
  color:#e5e7eb;
  box-shadow:none;
}
.btn.outline:hover {
  background:#111827;
}

/* Services section */
.services {
  background:radial-gradient(circle at top, #1e293b, #020617);
}
.services h2,
.info-table h2 {
  text-align:center;
  font-size:2.1rem;
  margin-bottom:34px;
}
.services-grid {
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
  gap:24px;
}
.service {
  background:#020617;
  border-radius:16px;
  padding:22px 20px 20px;
  box-shadow:0 10px 30px rgba(0,0,0,0.6);
  border:1px solid #1e293b;
}
.service-icon {
  font-size:1.8rem;
  margin-bottom:10px;
}
.service h3 {
  font-size:1.15rem;
  margin-bottom:8px;
  color:#38bdf8;
}
.service p {
  font-size:0.95rem;
  color:#e5e7eb;
  margin-bottom:10px;
}
.service ul {
  margin:0 0 10px 16px;
  font-size:0.9rem;
  color:#cbd5f5;
}
.service ul li {
  margin-bottom:4px;
}
.service strong {
  color:#22c55e;
}

/* Info table */
.info-table {
  background:#020617;
}
.info-table-inner {
  max-width:720px;
  margin:0 auto;
  background:#020617;
  border-radius:18px;
  padding:26px 20px 30px;
  box-shadow:0 14px 40px rgba(0,0,0,0.7);
  border:1px solid #1e293b;
}
.info-table table {
  width:100%;
  border-collapse:collapse;
  margin-bottom:14px;
  font-size:0.95rem;
}
.info-table th,
.info-table td {
  padding:10px 8px;
  border-bottom:1px solid #1e293b;
}
.info-table th {
  text-align:left;
  color:#38bdf8;
}
.info-contact {
  font-size:0.9rem;
  color:#e5e7eb;
  text-align:center;
}

/* Generic page content */
.page-content section {
  padding:80px 20px 60px;
}
.page-inner {
  max-width:900px;
  margin:0 auto;
  background:#020617;
  padding:28px 22px 30px;
  border-radius:18px;
  box-shadow:0 12px 35px rgba(0,0,0,0.75);
  border:1px solid #1e293b;
}
.page-inner h1 {
  font-size:2rem;
  margin-bottom:10px;
}
.page-inner h2 {
  font-size:1.3rem;
  margin:18px 0 6px;
}
.page-inner p {
  margin-bottom:8px;
  color:#e5e7eb;
}
.page-inner ul {
  margin:0 0 8px 18px;
}
.page-inner li {
  margin-bottom:4px;
}

/* Kontakt page layout */
.contact-page .page-inner {
  background:#020617;
}
.contact-grid {
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
  gap:24px;
  margin-top:16px;
}
.contact-col h2 {
  margin-bottom:8px;
  color:#38bdf8;
}
.contact-col p {
  margin-bottom:6px;
}
.contact-col ul {
  margin:0 0 8px 18px;
}
.contact-col li {
  margin-bottom:4px;
}
.contact-btn {
  margin-top:12px;
}

/* Footer */
footer {
  background:#020617;
  padding:22px 20px 26px;
  text-align:center;
  font-size:0.85rem;
  color:#9ca3af;
  border-top:1px solid #111827;
  margin-top:10px;
}
footer span {
  color:#38bdf8;
}

/* Responsive */
@media (max-width:900px) {
  header {
    padding:10px 18px;
  }
  nav {
    display:none;
  }
  .menu-toggle {
    display:flex;
  }
  section {
    padding:50px 20px;
  }
  .hero {
    padding:70px 20px 60px;
    min-height:75vh;
  }
  .hero h1 {
    font-size:2.1rem;
  }
  .hero p {
    font-size:1rem;
  }
  .info-table-inner {
    padding:22px 16px 24px;
  }
  .page-content section {
    padding:80px 16px 50px;
  }
  .page-inner {
    padding:22px 18px 24px;
  }
}

.mobile-nav.open { display:flex; }


/* Pomjeri menu dole na mobitelu */
@media (max-width: 768px) {
    #masthead {
        margin-top: 40px !important;
    }
    .site-header,
    .elementor-location-header,
    .mobile-nav {
        margin-top: 25px !important;
    }
}
