/* ═══════════════════════════════════════════════════════
   GLANZ SERVICE BLOCKS – Vollständiges CSS
   Alles über Klassen, keine Inline-Styles
   ═══════════════════════════════════════════════════════ */

/* ── Basis ─────────────────────────────────────────────── */
.gs-orange { color: #f59e0b !important; }

/* Theme Container aufheben */
.entry-content { max-width: none !important; padding: 0 !important; }
.wp-block-post-content { max-width: none !important; }
.entry-content > * { margin-top: 0 !important; margin-bottom: 0 !important; }

/* ── Buttons ────────────────────────────────────────────── */
.gs-btn-primary .wp-block-button__link {
    background: #f59e0b !important; color: #fff !important;
    border-radius: 0 !important; font-weight: 700 !important;
    font-size: 14px !important; padding: 13px 28px !important; border: none !important;
}
.gs-btn-ghost .wp-block-button__link {
    background: transparent !important; color: #fff !important;
    border-radius: 0 !important; font-weight: 600 !important;
    font-size: 14px !important; padding: 12px 28px !important;
    border: 2px solid rgba(255,255,255,0.45) !important;
}
.gs-btn-outline .wp-block-button__link {
    background: transparent !important; color: #0f172a !important;
    border-radius: 0 !important; font-weight: 700 !important;
    font-size: 14px !important; padding: 12px 28px !important;
    border: 2px solid #0f172a !important;
}

/* ── Eyebrow ────────────────────────────────────────────── */
.gs-eyebrow {
    font-size: 13px !important; font-weight: 700 !important;
    letter-spacing: 2px !important; text-transform: uppercase !important;
    color: #f59e0b !important; font-style: italic !important;
    margin: 0 0 10px !important;
}
.gs-eyebrow-center { text-align: center !important; }

/* ── Section Headings ───────────────────────────────────── */
.gs-section-h2 {
    font-size: 36px !important; font-weight: 800 !important;
    letter-spacing: -1px !important; line-height: 1.15 !important;
    color: #0f172a !important; margin: 0 0 16px !important;
}
.gs-h2-center { text-align: center !important; }
.gs-h2-white { color: #ffffff !important; }

.gs-section-head {
    text-align: center !important;
    margin-bottom: 48px !important;
    max-width: 700px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* ═══════════════════════════════════════════════════════
   HERO
   ═══════════════════════════════════════════════════════ */
.gs-hero-section {
    background-color: #0f172a;
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    position: relative !important;
}
/* Hintergrundbild: setze es über WordPress Customizer
   Design → Customize → Zusätzliches CSS:
   .gs-hero-section { background-image: url('DEINE-BILD-URL') !important; }
*/
.gs-hero-inner {
    max-width: 1120px !important;
    margin: 0 auto !important;
    padding: 72px 40px !important;
}
.gs-hero-box {
    background: rgba(15,23,42,0.82) !important;
    padding: 44px !important;
    max-width: 580px !important;
}
.gs-hero-eyebrow {
    font-size: 12px !important; font-weight: 700 !important;
    letter-spacing: 2px !important; text-transform: uppercase !important;
    color: #ffffff !important; margin: 0 0 14px !important;
}
.gs-hero-eyebrow::before { content: '——  '; color: #f59e0b; }
.gs-hero-h1 {
    font-size: clamp(30px, 4vw, 50px) !important;
    font-weight: 800 !important; line-height: 1.1 !important;
    letter-spacing: -1px !important; color: #ffffff !important;
    margin: 0 0 16px !important;
}
.gs-hero-sub {
    font-size: 15px !important; line-height: 1.75 !important;
    color: #cbd5e1 !important; margin: 0 0 22px !important;
}
.gs-hero-phone {
    font-size: 24px !important; font-weight: 800 !important;
    margin: 0 0 24px !important;
}
.gs-hero-phone::before {
    content: '📞';
    display: inline-block; background: #f59e0b;
    border-radius: 50%; width: 38px; height: 38px;
    text-align: center; line-height: 38px;
    margin-right: 10px; font-size: 16px;
    vertical-align: middle;
}
.gs-hero-phone-link { color: #ffffff !important; text-decoration: none !important; }
.gs-hero-btns { margin-bottom: 22px !important; gap: 12px !important; }
.gs-hero-trust {
    font-size: 12px !important; color: #94a3b8 !important;
    padding-top: 16px !important; margin: 0 !important;
    border-top: 1px solid rgba(255,255,255,0.15) !important;
}
.gs-check { color: #f59e0b !important; font-weight: 700 !important; }

/* Regionbar */
.gs-regionbar {
    background: #1e3a5f !important;
    margin: 0 !important; padding: 0 !important;
}
.gs-regionbar-inner {
    max-width: 1120px !important; margin: 0 auto !important;
    padding: 12px 40px !important;
    font-size: 12px !important; color: #93c5fd !important;
}
.gs-regionbar-label {
    font-size: 10px !important; font-weight: 700 !important;
    letter-spacing: 1.5px !important; text-transform: uppercase !important;
    color: #f59e0b !important; margin-right: 16px !important;
    padding-right: 16px !important; border-right: 1px solid rgba(255,255,255,0.2) !important;
}

/* ═══════════════════════════════════════════════════════
   ABOUT
   ═══════════════════════════════════════════════════════ */
.gs-about-section {
    background: #ffffff !important;
    padding: 80px 40px !important;
    margin: 0 !important;
}
.gs-about-cols { max-width: 1120px !important; margin: 0 auto !important; gap: 64px !important; }
.gs-about-left { display: flex !important; flex-direction: column !important; justify-content: center !important; }
.gs-about-quote {
    font-size: 15px !important; line-height: 1.8 !important; font-style: italic !important;
    color: #64748b !important; border-left: 3px solid #f59e0b !important;
    padding-left: 18px !important; margin: 0 0 24px !important;
}
.gs-checklist { list-style: none !important; padding-left: 0 !important; margin: 0 0 28px !important; }
.gs-checklist li { position: relative !important; padding-left: 24px !important; margin-bottom: 8px !important; font-size: 14px !important; color: #374151 !important; }
.gs-checklist li::before { content: '✓' !important; position: absolute !important; left: 0 !important; color: #f59e0b !important; font-weight: 800 !important; }
.gs-about-right { position: relative !important; }
.gs-about-img img { width: 100% !important; height: 400px !important; object-fit: cover !important; display: block !important; }
.gs-about-badge {
    background: #f59e0b !important; display: inline-flex !important;
    align-items: center !important; gap: 12px !important;
    padding: 16px 20px !important; margin-top: 0 !important;
}
.gs-badge-num { font-size: 36px !important; font-weight: 800 !important; color: #ffffff !important; line-height: 1 !important; margin: 0 !important; }
.gs-badge-text { font-size: 12px !important; font-weight: 600 !important; color: #ffffff !important; margin: 0 !important; }

/* ═══════════════════════════════════════════════════════
   LEISTUNGEN
   ═══════════════════════════════════════════════════════ */
.gs-leistungen-section {
    background: linear-gradient(160deg, #0f172a 0%, #1e3a5f 100%) !important;
    padding: 80px 40px !important; margin: 0 !important;
}
.gs-leistungen-section .gs-section-head { margin-bottom: 40px !important; }
.gs-leistungen-row { gap: 3px !important; max-width: 1120px !important; margin: 0 auto 3px !important; }
.gs-svc-card { padding: 28px 24px !important; }
.gs-svc-white { background: #ffffff !important; }
.gs-svc-orange { background: #f59e0b !important; }
.gs-svc-title { font-size: 15px !important; font-weight: 700 !important; margin: 0 0 8px !important; }
.gs-svc-white .gs-svc-title { color: #0f172a !important; }
.gs-svc-orange .gs-svc-title { color: #ffffff !important; }
.gs-svc-desc { font-size: 13px !important; line-height: 1.6 !important; margin: 0 !important; }
.gs-svc-white .gs-svc-desc { color: #64748b !important; }
.gs-svc-orange .gs-svc-desc { color: rgba(255,255,255,0.9) !important; }

/* ═══════════════════════════════════════════════════════
   WARUM WIR
   ═══════════════════════════════════════════════════════ */
.gs-warum-section {
    background: #ffffff !important;
    padding: 80px 40px !important; margin: 0 !important;
}
.gs-stats-row { gap: 0 !important; border: 1px solid #e2e8f0 !important; max-width: 1120px !important; margin: 0 auto 40px !important; }
.gs-stat-card { padding: 36px 24px !important; text-align: center !important; border-right: 1px solid #e2e8f0 !important; }
.gs-stat-card:last-child { border-right: none !important; }
.gs-stat-num { font-size: 48px !important; font-weight: 800 !important; color: #0f172a !important; line-height: 1 !important; margin: 0 0 8px !important; letter-spacing: -2px !important; }
.gs-stat-label { font-size: 13px !important; color: #64748b !important; line-height: 1.5 !important; margin: 0 !important; }
.gs-features-row { gap: 3px !important; max-width: 1120px !important; margin: 0 auto !important; }
.gs-feature-card { background: #f8fafc !important; padding: 24px !important; }
.gs-feature-title { font-size: 14px !important; font-weight: 700 !important; color: #0f172a !important; margin: 0 0 6px !important; }
.gs-feature-desc { font-size: 13px !important; color: #64748b !important; line-height: 1.6 !important; margin: 0 !important; }

/* ═══════════════════════════════════════════════════════
   BEWERTUNGEN
   ═══════════════════════════════════════════════════════ */
.gs-reviews-section {
    background: #f8fafc !important;
    padding: 80px 40px !important; margin: 0 !important;
}
.gs-reviews-row { gap: 20px !important; max-width: 1120px !important; margin: 0 auto !important; }
.gs-review-card { background: #ffffff !important; padding: 28px 24px !important; border: 1px solid #e2e8f0 !important; }
.gs-review-stars { font-size: 16px !important; color: #f59e0b !important; letter-spacing: 2px !important; margin: 0 0 12px !important; }
.gs-review-text { font-size: 14px !important; line-height: 1.75 !important; font-style: italic !important; color: #374151 !important; margin: 0 0 20px !important; }
.gs-review-sep { border-color: #f1f5f9 !important; margin: 0 0 16px !important; }
.gs-review-author { font-size: 13px !important; color: #94a3b8 !important; margin: 0 !important; display: flex !important; align-items: center !important; gap: 10px !important; }
.gs-review-author strong { color: #0f172a !important; }
.gs-review-avatar { background: #f59e0b !important; color: #fff !important; font-weight: 800 !important; font-size: 12px !important; padding: 6px 8px !important; flex-shrink: 0 !important; }
.gs-review-city { font-size: 12px !important; }
.gs-reviews-cta { text-align: center !important; margin-top: 40px !important; display: flex !important; align-items: center !important; justify-content: center !important; gap: 20px !important; flex-wrap: wrap !important; }
.gs-reviews-cta-text { font-size: 14px !important; color: #64748b !important; margin: 0 !important; }

/* ═══════════════════════════════════════════════════════
   PORTFOLIO
   ═══════════════════════════════════════════════════════ */
.gs-portfolio-section {
    background: #ffffff !important;
    padding: 80px 40px !important; margin: 0 !important;
}
.gs-portfolio-row { gap: 16px !important; max-width: 1120px !important; margin: 0 auto !important; }
.gs-portfolio-card { background: #0f172a !important; overflow: hidden !important; }
.gs-portfolio-img img { width: 100% !important; height: 200px !important; object-fit: cover !important; display: block !important; opacity: 0.7 !important; }
.gs-portfolio-img { margin: 0 !important; }
.gs-portfolio-tag { background: #f59e0b !important; color: #fff !important; font-size: 11px !important; font-weight: 700 !important; padding: 4px 10px !important; display: inline-block !important; margin: 12px 12px 6px !important; }
.gs-portfolio-title { font-size: 14px !important; font-weight: 700 !important; color: #ffffff !important; margin: 0 12px 4px !important; }
.gs-portfolio-loc { font-size: 12px !important; color: #cbd5e1 !important; margin: 0 12px 16px !important; }
.gs-portfolio-cta { justify-content: center !important; margin-top: 32px !important; }

/* ═══════════════════════════════════════════════════════
   KONTAKT
   ═══════════════════════════════════════════════════════ */
.gs-kontakt-section {
    background: #0f172a !important;
    padding: 80px 40px !important; margin: 0 !important;
}
.gs-kontakt-section .gs-section-head .gs-section-h2 { color: #ffffff !important; }
.gs-kontakt-sub { font-size: 15px !important; color: #94a3b8 !important; line-height: 1.7 !important; text-align: center !important; margin: -24px 0 40px !important; }
.gs-kontakt-cols { gap: 48px !important; max-width: 1120px !important; margin: 0 auto !important; }
.gs-kontakt-info { display: flex !important; flex-direction: column !important; gap: 20px !important; }
.gs-info-item { display: flex !important; flex-direction: column !important; gap: 4px !important; margin: 0 !important; }
.gs-info-label { font-size: 11px !important; font-weight: 700 !important; letter-spacing: 0.8px !important; text-transform: uppercase !important; color: #64748b !important; }
.gs-info-val { font-size: 15px !important; font-weight: 600 !important; color: #f1f5f9 !important; }
.gs-info-link { color: #f1f5f9 !important; text-decoration: none !important; }
.gs-kontakt-form { background: #ffffff !important; padding: 36px !important; }
.gs-form-title { font-size: 20px !important; font-weight: 800 !important; color: #0f172a !important; margin: 0 0 8px !important; }
.gs-form-hint { font-size: 13px !important; color: #64748b !important; margin: 0 0 20px !important; }

/* ═══════════════════════════════════════════════════════
   RESPONSIVE
   ═══════════════════════════════════════════════════════ */
@media (max-width: 768px) {
    .gs-hero-inner { padding: 48px 24px !important; }
    .gs-hero-box { padding: 28px !important; max-width: 100% !important; }
    .gs-hero-h1 { font-size: 28px !important; }
    .gs-about-section, .gs-leistungen-section, .gs-warum-section,
    .gs-reviews-section, .gs-portfolio-section, .gs-kontakt-section { padding: 56px 24px !important; }
    .gs-stats-row { flex-wrap: wrap !important; }
    .gs-stat-card { flex-basis: 50% !important; border-right: none !important; border-bottom: 1px solid #e2e8f0 !important; }
    .gs-section-h2 { font-size: 26px !important; }
}
