/*====================================
BODY
====================================*/

.sg-body{

    margin:0;

    font-family:'Nunito',sans-serif;

    background:#fff;

    min-height:auto;
}


/*====================================
HEADER
====================================*/

.sg-header{
    background-color: #fff;
    background-image: url("../upload/encabezado2.png");
    background-repeat: no-repeat;
    background-position: center top;
    background-size: cover;

    box-shadow: 0 2px 10px rgba(0,0,0,.08);
}

/*====================================
CONTAINER
====================================*/

.sg-container{

    width:min(1200px,92%);

    margin:auto;

}

/*====================================
HEADER LAYOUT
====================================*/

.sg-header .sg-container{

    display:flex;

    align-items:center;

    justify-content:space-between;

    gap:30px;

    min-height:50px;

}

.sg-logo{

    width:290px;

    height:auto;

    display:block;

}

.sg-nav{

    display:flex;

    gap:20px;

    flex:1;

    justify-content:center;

}

.sg-btn{

    display:inline-flex;
    align-items:center;
    justify-content:center;

    padding:8px 18px;

    background:linear-gradient(180deg,#1196dd 0%,#0081c6 100%);
    color:#fff;

    text-decoration:none;

    font-size:16px;
    font-weight:700;
    letter-spacing:.3px;

    border:1px solid #006fa8;
    border-radius:8px;

    box-shadow:
        0 6px 12px rgba(28,98,116,.28),
        inset 0 1px 0 rgba(255,255,255,.18);

    transition:
        background .25s ease,
        transform .25s ease,
        box-shadow .25s ease;

}

.sg-btn:hover{

    background:linear-gradient(180deg,#21a4ea 0%,#0a8dd2 100%);

    color: #d0d0d0;

    transform:translateY(-2px);

    box-shadow:
        0 10px 18px rgba(28,98,116,.35),
        inset 0 1px 0 rgba(255,255,255,.25);

}

.sg-btn:active{

    transform:translateY(1px);

    box-shadow:
        0 3px 6px rgba(28,98,116,.22),
        inset 0 2px 4px rgba(0,0,0,.12);

}

.sg-btn:focus-visible{

    outline:none;

    box-shadow:
        0 0 0 4px rgba(0,129,198,.22),
        0 6px 12px rgba(28,98,116,.28);

}

.sg-btn:hover{

    transform:translateY(-2px);

}

.sg-menu-btn{

    width:38px;
    height:38px;

    display:flex;
    justify-content:center;
    align-items:center;

    background:#0081c6;

    border:none;

    border-radius:6px;

    color:#fff;

    font-size:18px;

    cursor:pointer;

    box-shadow:0 6px 18px rgba(0,0,0,.18);

    transition:.25s ease;

}

@media (max-width: 992px){

.sg-header .sg-container{

    flex-wrap:wrap;

    justify-content:center;

}

.sg-nav{

    width:100%;

    justify-content:center;

}

}

@media (max-width:768px){

.sg-header .sg-container{

    flex-direction:column;

    padding:20px 0;

}

.sg-nav{

    flex-direction:column;

    width:100%;

}

.sg-btn{

    width:100%;

}

}

/*==================================================
MAIN
==================================================*/

.sg-main{
    width:100%;
    padding:70px 0;
    background:#ffffff;
}

/*==================================================
SERVICES
==================================================*/

.sg-services{
    width:100%;
}

.sg-container{
    width:min(1200px,90%);
    margin:0 auto;
}

.sg-services__header{
    margin-bottom:60px;
    text-align:center;
}

.sg-services__title{
    color:#0081c6;
    font-size:2rem;
    font-weight:700;
    line-height:.90;
    text-transform:uppercase;
    font-family: Arial, Helvetica, sans-serif;

}

.sg-services__grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:35px;
    align-items:stretch;
}

/*==================================================
SERVICE CARD
==================================================*/

.sg-card{
    position:relative;
    display:flex;
    flex-direction:column;
    overflow:hidden;
    background:#ffffff;
    border-radius:12px;
    box-shadow:0 8px 24px rgba(0,0,0,.12);
    transition:.3s ease;
}

.sg-card:hover{
    transform:translateY(-8px);
    box-shadow:0 16px 36px rgba(0,0,0,.18);
}

.sg-card__image{
    width:100%;
    height:245px;
    overflow:hidden;
    background:#f5f5f5;
}

.sg-card__image img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}

.sg-card__content{
    display:flex;
    flex-direction:column;
    align-items:center;
    padding:28px;
}

.sg-card__title{
    margin-bottom:18px;
    color:#FC9003;
    font-size:1.35rem;
    font-weight:700;
    text-align:center;
    text-transform:uppercase;
    font-family: Arial, Helvetica, sans-serif;
}

.sg-card__description{
    margin-bottom:22px;
    color:#666;
    font-size:1rem;
    line-height:1.7;
    text-align:center;
    font-family: Arial, Helvetica, sans-serif;
}

/*====================================
BRANDS
====================================*/

.sg-services__brands{

    margin-top:10px;

    display:flex;

    justify-content:space-between;

    align-items:center;

}

.sg-brand{

    width:130px;

    height:auto;

    display:block;

}

/*==================================================
BUTTONS
==================================================*/

.sg-button{
    display:inline-flex;
    justify-content:center;
    align-items:center;
    align-self:center;

    min-width:220px;

    padding:14px 28px;

    border:none;
    border-radius:8px;

    text-decoration:none;

    font-size:1rem;
    font-weight:600;

    cursor:pointer;

    transition:.25s ease;
}

.sg-button--primary{
    background:#0081c6;
    color:#ffffff;
}

.sg-button--primary:hover{
    background:#006fa9;
    color: #d0d0d0;
    transform:translateY(-2px);
}

/*==================================================
RESPONSIVE
==================================================*/

@media (max-width:1200px){

    .sg-services__grid{
        gap:28px;
    }

}

@media (min-width:769px) and (max-width:992px){

    .sg-services__grid{

        grid-template-columns:repeat(2,1fr);

    }

    .sg-card:last-child{

        grid-column:1 / 3;

        justify-self:center;

        width:calc(50% - 18px);

    }

}

@media (max-width:768px){

    .sg-main{

        padding:50px 0;

    }

    .sg-services__title{

        font-size:1.7rem;

    }

    .sg-services__grid{

        grid-template-columns:1fr;

    }

    .sg-card__image{

        height:220px;

    }

}

@media (max-width:576px){

    .sg-container{

        width:92%;

    }

    .sg-card__content{

        padding:22px;

    }

    .sg-card__title{

        font-size:1.2rem;

    }

    .sg-card__description{

        font-size:.95rem;

    }

    .sg-button{

        width:100%;

        min-width:unset;

    }

}

/*==================================================
FLOATING BUTTON
==================================================*/

.sg-floating-button{

    position:fixed;

    right:50px;

    bottom:150px;

    width:70px;

    height:70px;

    display:flex;

    justify-content:center;

    align-items:center;

    border-radius:50%;

    z-index:9999;

    cursor:pointer;

    transition:.3s ease;

}

.sg-floating-button img{

    width:100%;

    height:auto;

    display:block;

}

.sg-floating-button:hover{

    transform:scale(1.08);

}

@media(max-width:768px){

    .sg-floating-button{

        right:50px;

        bottom:150px;

        width:60px;

        height:60px;

    }

}

@media (max-width:768px){

    .sg-services__brands{

        flex-direction:column;

        gap:35px;

    }

    .sg-brand{

        width:100px;

    }

}

/*====================================
FORM GRID
====================================*/

.sg-form-grid{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:24px;

    margin-top:30px;

}

.sg-form-group{

    display:flex;

    flex-direction:column;

}

.sg-form-group--full{

    grid-column:1 / -1;

}

/*====================================
INPUTS
====================================*/

.sg-input{

    width:100%;

    padding:14px 18px;

    border:1px solid #d9d9d9;

    border-radius:8px;

    font-size:16px;

    font-family:'Nunito',sans-serif;

    transition:.25s;

}

.sg-input:focus{

    border-color:#0081c6;

    outline:none;

    box-shadow:0 0 0 3px rgba(0,129,198,.15);

}

.sg-input:disabled{

    background:#f5f5f5;

    cursor:not-allowed;

}

@media (max-width:768px){

    .sg-form-grid{

        grid-template-columns:1fr;

    }

    .sg-form-group--full{

        grid-column:auto;

    }

    .sg-form-group--search{

    grid-template-columns:1fr;

}

}

/*====================================
FILE INPUT
====================================*/

.sg-file-label{

    display:block;

    margin-bottom:12px;

    color:#333;

    font-size:16px;

    font-weight:600;

}

.sg-file-input{

    width:100%;

    padding:12px;

    border:2px dashed #b9c4cc;

    border-radius:8px;

    background:#fafafa;

    cursor:pointer;

    transition:.25s;

}

.sg-file-input:hover{

    border-color:#0081c6;

    background:#f3fbff;

}

.sg-input-help{

    display:block;

    margin-top:10px;

    color:#777;

    font-size:14px;

}

/*====================================
INPUT CON BOTÓN
====================================*/

.sg-form-group--search{

    grid-column:1 / -1;

    display:grid;

    grid-template-columns:1fr auto;

    gap:16px;

    align-items:end;
}

/*====================================
modi
====================================*/
.login-container{

    padding:40px 0;
    padding-top:30px;
    padding-bottom:30px;

}

.login-password-group{

    position:relative;

    width:100%;

}

.form-control.login-input{

    width:100%;

    height:42px;

    border:none;

    background:#ececec;

    border-radius:999px;

    padding:0 18px;

    transition:.25s;

}

.login-input:focus{

    background:#ececec;

    box-shadow:none;

}

.login-eye{

    position:absolute;

    top:50%;

    right:16px;

    transform:translateY(-50%);

    border:none;

    background:transparent;

    padding:0;

}

.login-eye:hover{

    background:#e4e4e4;

}

.login-button{

    height:42px;

    border-radius:22px;

    color:#ededed;

    font-size:15px;

    font-weight:700;

    margin-top:18px;

    

}

.login-group{

    margin-bottom:18px;

}

.login-container .col-lg-6{

    display:flex;

    justify-content:center;

    align-items:center;

}

.login-box{

    width:100%;
    max-width:350px;

    display:flex;
    flex-direction:column;
    gap:12px;

}

.login-icon{

    font-size:52px;
    
    color:#FC9003;

}

.login-title{

    font-size:30px;
    margin:0 0 4px;
    line-height:1.1;

}

.login-subtitle{

    font-size:14px;

    margin:0;

    color:#777;

}

.mod-label{
    margin-bottom:8px;
    font-size:18px;
    font-weight: normal;
    /* o */
    font-weight: 400;
}

.form-label{

    font-size:20px;

    font-weight:600;

    margin-bottom:12px;

}

.form-control{

    height:56px;

    border:none;

    background:#ececec;

    border-radius:30px;

    padding:0 24px;

    font-size:17px;

}

.form-control:focus{

    background:#fff;

    box-shadow:0 0 0 4px rgba(0,129,198,.15);

}

.input-group{

    overflow:hidden;

    border-radius:30px;

}

.btn-outline-secondary{

    border:none;

    background:#ececec;

    width:60px;

}

#btnLogin{

    height:56px;

    border:none;

    border-radius:30px;

    background:#0081C6;

    font-size:20px;

    font-weight:700;

    transition:.25s;

}

#btnLogin:hover{

    background:#0081C6;

    transform:translateY(-2px);

}

.mb-3{

    margin-bottom:28px !important;

}

.mb-4{

    margin-bottom:34px !important;

}

.login-label{

    display:block;

    font-size:14px;

    font-weight:700;

    margin-bottom:6px;

}

.login-circle img{

    width:100%;

}

.login-circle{

    width:380px;

    height:380px;

    max-width:100%;

    display:flex;

    justify-content:center;

    align-items:center;

    border-radius:50%;

    background:#f7f7f7;

}

.login-link{

    font-size:13px;
    margin-top: 25px;

}

.login-hero{

    display:flex;

    justify-content:center;

    align-items:center;

    width:100%;

    height:100%;

}

@media (min-width:992px){

    .login-container .col-lg-6:first-child{

        padding-right:30px;

    }

    .login-container .col-lg-6:last-child{

        padding-left:30px;

    }

}

.login-back{

    margin-top: 15px;
    color: #FC9003;
}

@media (max-width:1200px){

    .login-circle{

        width:360px;
        height:360px;

    }

}

@media (max-width:992px){

    .login-circle{

        width:220px;
        height:220px;

    }

}

.footer-wrapper{

    background:#18191A;

    width:100%;

    padding:50px 0 45px;

}

.sg-btn-excel{

    font-family: Arial, Helvetica, sans-serif;
    
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;

    padding:12px 22px;

    background:#198754;
    color:#fff !important;

    border:none;
    border-radius:12px;

    font-size:15px;
    font-weight:600;

    cursor:pointer;

    transition:.25s ease;

    text-decoration:none;

}

.sg-btn-excel:hover{

    background:#157347;

    transform:translateY(-2px);

    box-shadow:0 8px 18px rgba(25,135,84,.25);

}

.sg-btn-excel:focus{

    outline:none;

    box-shadow:0 0 0 4px rgba(25,135,84,.2);

}

