.elementor-860 .elementor-element.elementor-element-c93f8e3{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-860 .elementor-element.elementor-element-384439e > .elementor-widget-container{margin:0px 0px 00px 0px;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}/* Start custom CSS for html, class: .elementor-element-384439e */<style>
    /* 1. RESET */
    html, body {
        margin: 0 !important;
        padding: 0 !important;
        top: 0 !important;
    }

    /* Eliminamos cualquier margen superior de Elementor */
    .elementor-widget-html, 
    .elementor-widget-html .elementor-widget-container,
    .elementor-section.elementor-top-section {
        margin-top: 0 !important;
        padding-top: 0 !important;
    }

    /* Empuja solo el contenido, no el body */
    .elementor-location-header + .elementor {
        margin-top: 90px !important;
    }

    @media (max-width: 1024px) {
        .elementor-location-header + .elementor {
            margin-top: 75px !important;
        }
    }

    /* Ajuste cuando hay barra de admin */
    .admin-bar .elementor-location-header + .elementor {
        margin-top: 122px !important; /* 90 + 32 */
    }

    @import url('https://fonts.googleapis.com/css2?family=Oxygen:wght@400;700&display=swap');

    :root {
        --gsm-blue: #38b6bd;
        --gsm-green: #97c02e;
        --gsm-white: #ffffff;
        --gsm-black: #000000;
        --font-main: 'Oxygen', sans-serif;
    }

    /* HEADER */
    .gsm-header-swiss {
        position: fixed;
        top: 0 !important;
        left: 0;
        width: 100%;
        height: 90px;
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 0 5%;
        z-index: 1000000;
        transition: all 0.4s ease;
        background: var(--gsm-black) !important;
        font-family: var(--font-main);
        box-sizing: border-box;
        border-bottom: 1px solid rgba(255, 255, 255, 0.1);
    }

    .gsm-header-swiss.scrolled {
        height: 75px;
        background: rgba(0, 0, 0, 0.95) !important;
        backdrop-filter: blur(15px);
    }

    .gsm-logo-swiss img {
        height: 52px;
        width: auto;
        display: block;
    }

    .gsm-nav-pc { 
        display: flex; 
        list-style: none; 
        gap: 35px; 
        align-items: center; 
        margin: 0; 
        padding: 0; 
    }

    .gsm-nav-pc > li { 
        position: relative; 
        height: 90px; 
        display: flex; 
        align-items: center; 
    }

    .gsm-nav-pc a {
        color: var(--gsm-white);
        text-decoration: none !important;
        font-size: 13px;
        font-weight: 700;
        letter-spacing: 1.5px;
        text-transform: uppercase;
    }

    .gsm-nav-pc a:hover { color: var(--gsm-blue); }

    .gsm-mega-grid {
        position: absolute;
        top: 100%;
        left: 50%;
        transform: translateX(-50%) translateY(20px);
        background: #0a0a0a;
        width: 500px;
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 10px;
        padding: 20px;
        border-radius: 8px;
        border: 1px solid rgba(255, 255, 255, 0.1);
        opacity: 0;
        visibility: hidden;
        transition: 0.3s ease;
    }

    .gsm-nav-pc li:hover .gsm-mega-grid {
        opacity: 1; 
        visibility: visible; 
        transform: translateX(-50%) translateY(0);
    }

    .gsm-mega-item { padding: 12px; border-radius: 6px; text-decoration: none !important; }
    .gsm-mega-item:hover { background: rgba(255, 255, 255, 0.05); }
    .gsm-mega-title { color: #fff; font-size: 11px; font-weight: 700; display: block; }
    .gsm-mega-desc { color: #666; font-size: 10px; }

    .gsm-burger { display: none; cursor: pointer; flex-direction: column; gap: 7px; z-index: 1000002; }
    .gsm-burger span { width: 28px; height: 1px; background: #fff; transition: 0.4s; }

    .gsm-mobile-overlay {
        position: fixed;
        top: 0; left: 0; width: 100%; height: 100vh;
        background: #000;
        display: flex; flex-direction: column;
        align-items: center; justify-content: center;
        opacity: 0; visibility: hidden;
        transition: 0.4s ease;
        z-index: 1000001;
    }

    .gsm-mobile-overlay.active { opacity: 1; visibility: visible; }

    @media (max-width: 1024px) {
        .gsm-nav-pc { display: none; }
        .gsm-burger { display: flex; }
        .gsm-header-swiss { height: 75px; }
    }
</style>/* End custom CSS */