/*
Theme Name: Solboy Child
Theme URI: https://www.solboy.com
Description: GeneratePress Child Theme für solboy.com
Author: 12Werk
Template: generatepress
Version: 1.1.0
*/

/* ============================================================
   SOLBOY DESIGN SYSTEM v1.1
   Türkis:  #00A99D  Navigation-Akzent, Links
   Dunkel:  #0F1E1C  Header, Navigation, Footer
   Orange:  #FF6600  Amazon-Buttons
   Sand:    #FBF6ED  Seitenhintergrund
   ============================================================ */

/* FONTS — preconnect im functions.php, hier nur @import */
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,900;1,700&family=Outfit:wght@400;600;700&display=swap');

/* ── BASE ─────────────────────────────────────────────────── */
body {
  font-family: 'Outfit', sans-serif;
  background: #FBF6ED;        /* Sand-Hintergrund */
  color: #0F1E1C;
}

h1, h2, h3, h4, h5, h6 {
  font-family: 'Playfair Display', serif;
  font-weight: 900;
  color: #0F1E1C;
}

a { color: #00A99D; }
a:hover, a:focus { color: #007D74; }

/* ── HEADER ───────────────────────────────────────────────── */
.site-header,
.site-header .inside-header {
  background: #0F1E1C !important;
  padding-top: 0;
  padding-bottom: 0;
}

/* ── LOGO — GeneratePress nutzt .site-branding a ─────────── */
.site-branding a,
.site-branding a:visited,
.site-branding a:hover,
.site-branding a:focus,
.site-title a,
.site-title a:visited,
.site-title a:hover {
  color: #00A99D !important;
  font-family: 'Playfair Display', serif !important;
  font-weight: 900 !important;
  font-size: 1.5rem !important;
  text-decoration: none !important;
  opacity: 1 !important;
}

/* ── NAVIGATION ───────────────────────────────────────────── */
.main-navigation,
nav.main-navigation,
.gp-structure-primary-navigation {
  background: #0F1E1C !important;
}

.main-navigation a {
  color: rgba(255, 255, 255, 0.88) !important;
  font-family: 'Outfit', sans-serif !important;
  font-weight: 600 !important;
  font-size: 0.88rem !important;
  letter-spacing: 0.01em !important;
}

.main-navigation a:hover,
.main-navigation a:focus {
  color: #00A99D !important;
  background: transparent !important;
}

.main-navigation .current-menu-item > a,
.main-navigation .current-page-ancestor > a {
  color: #00A99D !important;
}

/* Dropdown */
.main-navigation .main-nav ul ul {
  background: #1a2e2b !important;
  border-top: 2px solid #00A99D !important;
  box-shadow: 0 8px 24px rgba(0,0,0,0.3) !important;
}

.main-navigation .main-nav ul ul a {
  color: rgba(255,255,255,0.75) !important;
  font-size: 0.85rem !important;
}

.main-navigation .main-nav ul ul a:hover {
  color: #00A99D !important;
  background: rgba(0,169,157,0.1) !important;
}

/* Mobile Burger */
button.menu-toggle {
  color: rgba(255,255,255,0.88) !important;
  background: transparent !important;
  border: 1px solid rgba(255,255,255,0.25) !important;
  border-radius: 6px !important;
  padding: 6px 12px !important;
  font-family: 'Outfit', sans-serif !important;
}

button.menu-toggle:hover {
  color: #00A99D !important;
  border-color: #00A99D !important;
}

/* Mobile offenes Menü */
@media (max-width: 768px) {
  .main-navigation .main-nav ul {
    background: #0F1E1C !important;
    border-top: 1px solid rgba(0,169,157,0.2) !important;
  }
  .main-navigation .main-nav ul li a {
    border-bottom: 1px solid rgba(255,255,255,0.05) !important;
    padding: 0.75rem 1rem !important;
  }
}

/* ── STARTSEITE — H1 und Leeraum ─────────────────────────── */
.home .entry-title,
.home h1.entry-title,
.home .entry-header {
  display: none !important;
}

/* Kein Extra-Padding oben auf der Startseite */
.home .site-content,
.home .content-area {
  padding-top: 0 !important;
}

.home article.page,
.home .hentry {
  margin: 0 !important;
  padding: 0 !important;
}

/* Content volle Breite auf Startseite */
.home .entry-content {
  max-width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* ── CONTENT TYPOGRAPHY ───────────────────────────────────── */
.entry-content {
  font-family: 'Outfit', sans-serif;
  font-size: 0.95rem;
  line-height: 1.8;
  color: #3a4a45;
}

.entry-content h2 {
  font-family: 'Playfair Display', serif !important;
  font-size: clamp(1.3rem, 3vw, 1.9rem) !important;
  font-weight: 900 !important;
  color: #0F1E1C !important;
  margin-top: 2rem;
  margin-bottom: 0.8rem;
}

.entry-content h3 {
  font-family: 'Playfair Display', serif !important;
  font-size: clamp(1.1rem, 2vw, 1.5rem) !important;
  font-weight: 900 !important;
  color: #0F1E1C !important;
  margin-top: 1.5rem;
  margin-bottom: 0.6rem;
}

/* ── BUTTONS ──────────────────────────────────────────────── */
.button,
input[type="submit"],
button[type="submit"],
.wp-block-button__link {
  background: #FF6600 !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 8px !important;
  font-family: 'Outfit', sans-serif !important;
  font-weight: 700 !important;
  padding: 12px 24px !important;
  transition: background 0.2s !important;
}

.button:hover,
input[type="submit"]:hover,
.wp-block-button__link:hover {
  background: #cc5200 !important;
  color: #ffffff !important;
}

/* ── BLOG POST KARTEN ─────────────────────────────────────── */
article.type-post {
  border: 1px solid #EDE4D3;
  border-radius: 16px;
  overflow: hidden;
  background: #ffffff;
  margin-bottom: 2rem;
  transition: transform 0.25s, box-shadow 0.25s;
}

article.type-post:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 32px rgba(0,169,157,0.12);
}

.entry-header .entry-title a {
  color: #0F1E1C !important;
  text-decoration: none !important;
  font-family: 'Playfair Display', serif !important;
}

.entry-header .entry-title a:hover {
  color: #00A99D !important;
}

.entry-meta, .posted-on, .byline {
  color: #5A6E6B;
  font-size: 0.8rem;
}

/* ── SIDEBAR & WIDGETS ────────────────────────────────────── */
.widget-title {
  font-family: 'Playfair Display', serif !important;
  font-size: 1.1rem !important;
  font-weight: 900 !important;
  color: #0F1E1C !important;
  border-bottom: 2px solid #00A99D;
  padding-bottom: 0.5rem;
  margin-bottom: 1rem;
}

/* ── PAGINATION ───────────────────────────────────────────── */
.pagination .page-numbers,
a.page-numbers {
  color: #00A99D !important;
  border: 1px solid #00A99D !important;
  border-radius: 6px !important;
  padding: 4px 10px !important;
}

.pagination .page-numbers.current,
span.page-numbers.current {
  background: #00A99D !important;
  color: #ffffff !important;
  border-color: #00A99D !important;
}

/* ── FOOTER ───────────────────────────────────────────────── */
.site-footer,
.site-footer .inside-footer {
  background: #0F1E1C !important;
  color: rgba(255,255,255,0.6) !important;
  padding: 2rem 1.5rem !important;
  font-size: 0.82rem !important;
  font-family: 'Outfit', sans-serif !important;
}

.site-footer a {
  color: rgba(255,255,255,0.6) !important;
  text-decoration: none !important;
  transition: color 0.2s !important;
}

.site-footer a:hover {
  color: #00A99D !important;
}

.footer-bar,
.site-footer .footer-bar-section {
  background: #080e0d !important;
  color: rgba(255,255,255,0.4) !important;
  font-size: 0.72rem !important;
  text-align: center !important;
  padding: 0.75rem !important;
}

/* ── IMAGES — kein Layout Shift ───────────────────────────── */
img {
  max-width: 100%;
  height: auto;
}

.entry-content img {
  border-radius: 12px;
}

/* ── CONTAINER ────────────────────────────────────────────── */
.grid-container,
.container {
  max-width: 1200px;
}

/* ── RESPONSIVE ───────────────────────────────────────────── */
@media (max-width: 768px) {
  .site-branding a { font-size: 1.2rem !important; }
  article.type-post { border-radius: 12px; }
}
