/*
Theme Name: BlueGray StreamingLab
Theme URI: https://www.visioneimmagine.com/
Version: 1.0.0
Requires PHP: 7.0
Requires at least: 5.2
Author: StreamingLab / VisioneImmagine
Description: Tema personalizzato di StreamingLab, derivato originariamente da BlueGray e reso autonomo per il progetto StreamingLab.
Text Domain: bluegray-streaminglab
License: GNU General Public License v3
License URI: https://www.gnu.org/licenses/gpl-3.0.html
*/

/* ===== STREAMINGLAB FRONT PAGE RESET + LAYOUT ===== */

body.home {
    margin: 0 !important;
    padding: 0 !important;
    background: #020814 !important;
}

.home #page,
.home .site,
.home .site-content,
.home .content-area,
.home .site-main,
.home #primary,
.home #content {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    background: transparent !important;
    box-shadow: none !important;
}

.home header.site-header,
.home .site-header,
.home #mainnav,
.home nav,
.home .main-navigation,
.home .widget-area,
.home aside#secondary,
.home .sidebar,
.home article,
.home .post,
.home .hentry,
.home .entry-header,
.home .entry-content,
.home .entry-footer,
.home footer.site-footer {
    display: none !important;
}

.sl-home-wrapper {
    position: relative;
    min-height: 100vh;
    padding: 22px;
    color: #eef7ff;
    background:
        linear-gradient(rgba(3, 9, 18, 0.55), rgba(3, 9, 18, 0.78)),
        url('images/sfondo-home.png') center center / cover no-repeat;
    overflow: hidden;
    box-sizing: border-box;
}

.sl-bg-overlay {
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at 10% 15%, rgba(0, 170, 255, 0.16), transparent 26%),
        radial-gradient(circle at 90% 10%, rgba(255, 40, 80, 0.12), transparent 18%),
        radial-gradient(circle at 50% 100%, rgba(0, 170, 255, 0.10), transparent 28%);
    pointer-events: none;
}

.sl-frame {
    position: relative;
    z-index: 2;
    background: rgba(6, 14, 24, 0.72);
    border: 1px solid rgba(86, 207, 255, 0.85);
    border-radius: 14px;
    box-shadow:
        0 0 0 1px rgba(86, 207, 255, 0.10) inset,
        0 0 22px rgba(0, 170, 255, 0.18);
    box-sizing: border-box;
}

.sl-hero-frame {
    display: grid;
    grid-template-columns: 1fr 170px;
    gap: 18px;
    align-items: center;
    padding: 18px 22px;
    margin: 0 0 24px 0;
}

.sl-main-title {
    margin: 0 0 8px 0;
    font-size: 44px;
    line-height: 1.05;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.sl-title-main {
    color: #f8fbff;
    text-shadow: 0 0 12px rgba(170, 225, 255, 0.18);
}

.sl-title-sep {
    color: #8bd9ff;
    margin: 0 8px;
}

.sl-title-accent {
    color: #ff304f;
    text-shadow: 0 0 12px rgba(255, 48, 79, 0.18);
}

.sl-subtitle {
    margin: 0;
    font-size: 17px;
    color: #d7e9f8;
    font-weight: 700;
}

.sl-hero-right {
    display: flex;
    justify-content: flex-end;
}

.sl-avatar-frame {
    width: 150px;
    padding: 6px;
    border-radius: 12px;
    background: rgba(4, 11, 20, 0.82);
    border: 1px solid rgba(86, 207, 255, 0.72);
    box-shadow: 0 0 16px rgba(0, 170, 255, 0.18);
}

.sl-avatar-frame img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 8px;
}

.sl-content-grid {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(320px, 0.85fr);
    gap: 22px;
    align-items: start;
}

.sl-editorial-box {
    padding: 24px 22px;
    margin-bottom: 20px;
}

.sl-editorial-box p {
    margin: 0;
    font-size: 18px;
    line-height: 1.5;
    font-weight: 700;
    color: #edf6ff;
}

.sl-nav-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
}

.sl-nav-card {
    min-height: 132px;
    padding: 14px;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    text-decoration: none;
    color: #f3f9ff;
    box-sizing: border-box;
    transition: transform 0.18s ease, box-shadow 0.18s ease;
}

.sl-nav-card:hover {
    transform: translateY(-2px);
    box-shadow:
        0 0 0 1px rgba(120, 224, 255, 0.12) inset,
        0 0 22px rgba(0, 170, 255, 0.22);
}

.sl-card-title {
    display: block;
    margin-bottom: 8px;
    font-size: 18px;
    font-weight: 800;
    color: #f5fbff;
}

.sl-card-text {
    display: block;
    font-size: 12.5px;
    line-height: 1.45;
    color: #dce8f5;
}

.sl-facebook-box {
    padding: 14px;
    margin-bottom: 18px;
}

.sl-facebook-box h3 {
    margin: 0 0 12px;
    font-size: 20px;
    color: #2fb7ff;
    font-weight: 800;
}

.sl-facebook-box iframe,
.sl-facebook-box .fb_iframe_widget,
.sl-facebook-box .cff-wrapper,
.sl-facebook-box .wslb-box,
.sl-facebook-box .fb-page {
    max-width: 100% !important;
}

.sl-bottom-note {
    position: relative;
    z-index: 2;
    margin-top: 22px;
    text-align: center;
}

.sl-bottom-note p {
    margin: 0;
    font-size: 15px;
    font-weight: 800;
    color: #f4f9ff;
    text-shadow: 0 0 8px rgba(0, 170, 255, 0.14);
}

/* Nasconde eventuali elementi vecchi residui */
.home .container,
.home .wrapper,
.home .wrap,
.home .inner,
.home .site-inner {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
}

/* Responsive */
@media (max-width: 1180px) {
    .sl-main-title {
        font-size: 38px;
    }

    .sl-content-grid {
        grid-template-columns: 1fr;
    }

    .sl-hero-frame {
        grid-template-columns: 1fr 140px;
    }

    .sl-avatar-frame {
        width: 130px;
    }
}

@media (max-width: 760px) {
    .sl-home-wrapper {
        padding: 16px;
    }

    .sl-hero-frame {
        grid-template-columns: 1fr;
    }

    .sl-hero-right {
        justify-content: flex-start;
    }

    .sl-main-title {
        font-size: 30px;
    }

    .sl-subtitle {
        font-size: 15px;
    }

    .sl-editorial-box p {
        font-size: 16px;
    }

    .sl-nav-grid {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 520px) {
    .sl-nav-grid {
        grid-template-columns: 1fr;
    }

    .sl-main-title {
        font-size: 25px;
    }
}