/* 
 Theme Name:   ZG Theme
 Theme URI:    https://zentrigate.com
 Description:  Main theme for Zentrigate.
 Author:       JMColeman
 Author URI:   https://zentrigate.com
 Template:     kadence
 Version:      1.0
 License:      GNU General Public License v2 or later
 License URI:  http://www.gnu.org/licenses/gpl-2.0.html
*/

/* ============================================
   ZENTRIGATE – COMPLETE STYLESHEET
   ============================================ */

/* ---- BASE ---- */
body {
    background-color: #071422 !important;
    color: #e0e0e0 !important;
    font-family: 'Inter', sans-serif !important;
}

h1, h2, h3, h4, h5, h6 {
    color: #ffffff !important;
    font-weight: 700 !important;
}

a {
    color: #4CAF50 !important;
    text-decoration: none !important;
    transition: color 0.3s ease !important;
}
a:hover {
    color: #ffd700 !important;
}

/* ---- HEADER ---- */
.site-header {
    background-color: #071422 !important;
    border-bottom: 3px solid #ffd700 !important;
}
.site-header a {
    color: #4CAF50 !important;
}
.site-header a:hover {
    color: #256527 !important;
}

/* ---- FOOTER ---- */
.site-footer {
    background-color: #071422 !important;
    border-top: 3px solid #ffd700 !important;
}
.site-footer .footer-copyright {
    color: #4CAF50 !important;
}
.site-footer a {
    color: #4CAF50 !important;
}
.site-footer a:hover {
    color: #256527 !important;
}

/* ---- HERO ---- */
.hero {
    padding: 120px 20px !important;
    text-align: center !important;
    background: linear-gradient(135deg, #071422, #0a1a30) !important;
    border-bottom: 1px solid #ffd700 !important;
}
.hero-inner {
    max-width: 1200px !important;
    margin: 0 auto !important;
}
.hero-title {
    font-size: 48px !important;
    font-weight: 900 !important;
    color: #4CAF50 !important;
    margin-bottom: 10px !important;
}
.hero-subtitle {
    font-size: 24px !important;
    color: #ffd700 !important;
    margin-bottom: 30px !important;
}
.hero-buttons {
    display: flex !important;
    gap: 20px !important;
    justify-content: center !important;
    flex-wrap: wrap !important;
}

/* ---- BUTTONS ---- */
.btn {
    display: inline-block !important;
    padding: 12px 30px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    border: 2px solid #4CAF50 !important;
    border-radius: 4px !important;
    transition: all 0.3s ease !important;
}
.btn-primary {
    background-color: #ffd700 !important;
    color: #4CAF50 !important;
}
.btn-primary:hover {
    background-color: #4CAF50 !important;
    color: #ffd700 !important;
    border-color: #ffd700 !important;
}
.btn-secondary {
    background-color: #4CAF50 !important;
    color: #ffd700 !important;
    border-color: #ffd700 !important;
}
.btn-secondary:hover {
    background-color: #ffd700 !important;
    color: #4CAF50 !important;
    border-color: #4CAF50 !important;
}
.btn-cta {
    background-color: #ffd700 !important;
    color: #4CAF50 !important;
    font-size: 18px !important;
    padding: 15px 40px !important;
}
.btn-cta:hover {
    background-color: #4CAF50 !important;
    color: #ffd700 !important;
    border-color: #ffd700 !important;
}

/* ---- USPs ---- */
.usps {
    padding: 80px 20px !important;
    background-color: #071422 !important;
}
.usps-inner {
    max-width: 1200px !important;
    margin: 0 auto !important;
}
.section-title {
    font-size: 36px !important;
    font-weight: 700 !important;
    color: #ffffff !important;
    text-align: center !important;
    margin-bottom: 10px !important;
}
.section-subtitle {
    font-size: 18px !important;
    color: #4CAF50 !important;
    text-align: center !important;
    margin-bottom: 50px !important;
}
.usp-grid {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 20px !important;
}
.usp-card {
    text-align: center !important;
    padding: 30px 20px !important;
    background: rgba(255, 255, 255, 0.05) !important;
    border: 1px solid rgba(255, 215, 0, 0.2) !important;
    border-radius: 8px !important;
    transition: transform 0.3s ease, border-color 0.3s ease !important;
}
.usp-card:hover {
    transform: translateY(-5px) !important;
    border-color: #ffd700 !important;
}
.usp-icon {
    font-size: 48px !important;
    margin-bottom: 15px !important;
}
.usp-card h3 {
    font-size: 22px !important;
    font-weight: 600 !important;
    color: #ffffff !important;
    margin-bottom: 10px !important;
}
.usp-card p {
    color: #cccccc !important;
    font-size: 16px !important;
}

/* ---- CTA ---- */
.cta {
    padding: 80px 20px !important;
    background: linear-gradient(135deg, #0a1a30, #071422) !important;
    text-align: center !important;
    border-top: 1px solid #ffd700 !important;
    border-bottom: 1px solid #ffd700 !important;
}
.cta-inner {
    max-width: 1200px !important;
    margin: 0 auto !important;
}
.cta h2 {
    font-size: 36px !important;
    font-weight: 700 !important;
    color: #ffffff !important;
    margin-bottom: 10px !important;
}
.cta p {
    font-size: 18px !important;
    color: #cccccc !important;
    margin-bottom: 30px !important;
}

/* ---- FULL-WIDTH FÜR KADENCE ---- */
.site-main,
.entry-content,
.wp-site-blocks,
.kt-row-layout-inner,
.kt-row-column-wrap,
.container,
.kt-container,
.wp-block-group,
.wp-block-group__inner-container {
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    background-color: #071422 !important;
}

/* ---- WEISSE BOXEN ENTFERNEN ---- */
.entry-content .wp-block-group,
.entry-content .wp-block-cover,
.entry-content .wp-block-columns,
.entry-content .wp-block-column {
    background-color: transparent !important;
}

/* ---- TABLET: 2 SPALTEN ---- */
@media (max-width: 1024px) {
    .usp-grid {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}

/* ---- MOBILE: 1 SPALTE ---- */
@media (max-width: 768px) {
    .usp-grid {
        grid-template-columns: 1fr !important;
        gap: 20px !important;
    }
    .hero-title {
        font-size: 32px !important;
    }
    .hero-subtitle {
        font-size: 18px !important;
    }
    .hero-buttons {
        flex-direction: column !important;
        align-items: center !important;
    }
    .cta h2 {
        font-size: 28px !important;
    }
}

/* Fluent Forms Button – ZentriGate Style */
.fluentform .ff-el-group .ff-btn-submit,
.fluentform .ff-btn-submit {
    background-color: #ffd700 !important;
    color: #4CAF50 !important;
    border: 2px solid #4CAF50 !important;
    border-radius: 4px !important;
    padding: 12px 30px !important;
    font-weight: 700 !important;
    transition: all 0.3s ease !important;
}

.fluentform .ff-el-group .ff-btn-submit:hover,
.fluentform .ff-btn-submit:hover {
    background-color: #4CAF50 !important;
    color: #ffd700 !important;
    border-color: #ffd700 !important;
}
