﻿
body, html {
    height: 100%;
    margin: 0;
    scroll-behavior: smooth;
}

@font-face {
    font-family: 'BebasNeue';
    src: url('/fonts/BebasNeue.otf') format('opentype');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Montserrat-Medium';
    src: url('/fonts/Montserrat-Medium.otf') format('opentype');
    font-style: normal;
    font-weight: 500;
    font-display: swap;
}
p,
.features > p,
.feature-item p,
.esg-section p,
.registro-publico p,
footer p,
.lead { /* Bootstrap */
    font-family: 'Montserrat-Medium', sans-serif !important;
    font-weight: 500 !important;
}

.container,
.container-fluid,
.container-xxl,
.container-xl,
.container-lg,
.container-md,
.container-sm {
    --bs-gutter-x: 0; /* anula el padding horizontal del container */
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/* Forzá también las clases de Bootstrap */
h1, .h1, .display-1, .display-2, .display-3, .display-4, .display-5, .display-6 {
    font-family: 'BebasNeue', 'BebasNeue' !important;
    font-weight: normal !important;
    font-size: 83px !important;
    overflow-wrap: normal !important; /* evita cortes dentro de palabras */
    word-break: keep-all !important; /* no cortes salvo en espacios/naturales */
    hyphens: manual !important; /* no insertes guiones automáticamente */
    word-wrap: break-word !important;
}

h2, .h2 {
    font-family: 'BebasNeue', 'BebasNeue' !important;
    font-weight: normal !important;
    font-size: 49px !important;
    overflow-wrap: normal !important; /* evita cortes dentro de palabras */
    word-break: keep-all !important; /* no cortes salvo en espacios/naturales */
    hyphens: manual !important; /* no insertes guiones automáticamente */
    word-wrap: break-word !important;
}

p {
    font-family: 'Montserrat-Medium', sans-serif !important;
    font-weight: normal !important;
    overflow-wrap: normal !important; /* evita cortes dentro de palabras */
    word-break: keep-all !important; /* no cortes salvo en espacios/naturales */
    hyphens: manual !important; /* no insertes guiones automáticamente */
    word-wrap: break-word !important;
}

    p.lead {
        font-family: 'Montserrat-Medium', sans-serif !important;
        font-weight: 500 !important; /* Medium */
        overflow-wrap: normal !important; /* evita cortes dentro de palabras */
        word-break: keep-all !important; /* no cortes salvo en espacios/naturales */
        hyphens: manual !important; /* no insertes guiones automáticamente */
        word-wrap: break-word !important;
    }

.form-container {
    display: flex;
    justify-content: center;
    /*    align-items: center;
*/ /* height: 100vh;*/
    background-color: #f5f5f5;
    padding-top: 60px; /* o margin-top, si preferís */
    padding-bottom: 30px;

}
main {
    padding-top: 80px; /* un poco más que el alto real del header */
}
.demo-section {
    background: white;
    padding: 30px;
    border-radius: 12px;
    box-shadow: 0 4px 20px rgba(0,0,0,0.1);
    max-width: 500px;
    width: 100%;
    margin-top: 10px;
    align-self: flex-start;
}

.k-form .k-form-field-wrap input[type="checkbox"] {
    vertical-align: middle;
    margin-right: 8px;
}

.k-form .k-form-field-wrap {
    display: flex;
    align-items: center;
}

.k-dropzone .k-dropzone-hint {
    display: none !important;
}

.k-form .hidden-field {
    display: none !important;
}


/* #region Navbar styles */
.navbar-header {
    border-bottom: 1px solid rgba(255,255,255, 0.1);
}

.navbar-brand {
    font-size: 2rem;
    font-weight: lighter;
}
/* #endregion */

/* #region Footer styles */
.footer {
    position: absolute;
    bottom: 0;
    width: 100%;
    font-size: 0.85em;
}
/* #endregion */

/* #region custom Kendo UI styles */


h1 a {
    color: #fff;
    text-decoration: none;
}

h2 {
    font-weight: lighter;
}



.placeholder img {
    display: inline-block;
}

p .k-button {
    margin: 0 15px 0 0;
}

#configure {
    display: none;
}

p .k-button {
    margin: 0 15px 0 0;
}

.k-state-active .label {
    font-size: 1em;
}

#responsive-panel {
    padding: 0;
    width: 100%;
}

    #responsive-panel .k-menu {
        padding: .5rem;
    }
/* #endregion */

@media (max-width: 767px) {
    #responsive-panel {
        transition: all linear .2s;
    }

    #configure {
        display: block;
        float: right;
    }

    .k-rpanel {
        padding: 0 1rem;
    }

    .k-rpanel-expanded {
        padding: .5rem 1rem;
    }

    .navbar-header {
        width: 100%;
    }

    .navbar-brand {
        font-size: 1.5rem;
    }

    h2 {
        font-size: 2rem;
        overflow-wrap: normal !important; /* evita cortes dentro de palabras */
        word-break: keep-all !important; /* no cortes salvo en espacios/naturales */
        hyphens: manual !important; /* no insertes guiones automáticamente */
        word-wrap: break-word !important;
    }

    .k-menu .k-item,
    .k-menu .k-link {
        width: 100%;
    }

    .k-widget.k-menu-horizontal > .k-item {
        border: none;
    }

    .k-menu .k-link {
        box-sizing: border-box;
    }

    .k-rpanel-expanded ul {
        flex-direction: column;
    }


    #IdFormulario-form-label {
        display: none;
    }



    .btn-atras {
        display: inline-block;
        padding: 0.75em 2em;
        border: 1px solid #333;
        background-color: #fff;
        color: #333;
        border-radius: 999px;
        font-weight: 600;
        width: 160px;
        text-decoration: none;
        transition: background-color 0.3s ease, color 0.3s ease;
    }

        .btn-atras:hover,
        .btn-atras:focus {
            background-color: #333;
            color: #fff;
        }

    .btn-siguiente {
        display: inline-block;
        padding: 0.75em 2em;
        border: 1px solid #333;
        background-color: #333;
        color: #fff;
        width: 160px;
        border-radius: 999px;
        font-weight: 600;
        text-decoration: none;
        transition: background-color 0.3s ease, color 0.3s ease;
    }

        .btn-siguiente:hover,
        .btn-siguiente:focus {
            background-color: #fff;
            color: #333;
        }



 
}
