* {
    font-family: "montserratregular";
}


/*********************************
            HEADER  
********************************/

header {
    background-color: rgba(255, 255, 255, 0.9);
    overflow: visible;
    padding-top: 3rem;
    top: 0px;
}

.navbar-nav,
form {
    width: 100%;
    text-align: center;
}

.navbar-nav>li {
    float: none;
    display: inline-block;
}

.navbar-nav li a {
    color: #2a2e30;
    padding-left: 17px;
    padding-right: 17px;
    font-family: "montserratmedium";
    font-size: 1.1rem;
    letter-spacing: 1px;
    display: block;
    box-sizing: content-box;
}

.navbar-nav li a:hover {
    text-decoration: none;
}

.navbar-nav li a:hover:after,
.navbar-nav li.active a:after {
    content: "";
    /* This is necessary for the pseudo element to work. */
    display: block;
    /* This will put the pseudo element on its own line. */
    margin: 0 0 0 30%;
    /* This will center the border. */
    width: 70%;
    /* Change this to whatever width you want. */
    padding-top: 5px;
    /* This creates some space between the element and the border. */
    border-bottom: 2px solid #dd353f;
    /* This creates the border. Replace black with whatever color you want. */
}

h2 {
    font-family: "montserratblack_italic";
    font-size: 3rem;
    margin-bottom: 2rem;
}

#frmSearch {
    max-width: 40rem;
    margin: 0px auto;
    width: 80%;
}

#search {
    border: solid 1px #000;
    font-family: "montserratregular";
    font-size: 10px;
    float: none !important;
    padding: 5px 10px;
    max-width: 40rem;
    width: 100%;
}

p {
    margin-bottom: 2rem;
    font-size: 1.8rem;
}

.social a {
    color: #4267b2 !important;
    font-size: 2.4rem !important;
}


/*********************************
              INDEX  
********************************/


/*********  categorias  *********/

.categorias-list {
    column-count: 5;
    list-style: none;
}

.categorias-list li {
    margin-bottom: 1.5rem;
}

.banner {
    position: relative;
}

#banner a {
    pointer-events: none;
}

.over-gif {
    height: 100%;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 10000000;
}


/*********************************
            PRODUCTOS  
********************************/

.categoria {
    text-transform: capitalize;
}

.producto-item {
    margin-bottom: 4rem;
}

.panel-group {
    border: 1px solid #f4f5f8;
    box-sizing: border-box;
    margin: 0 auto;
    max-width: 450px;
}

.panel-group .panel {
    margin-bottom: 0;
    border-radius: 4px;
}

.panel-default {
    border-color: #ddd;
}

.panel-default>.panel-heading {
    background: #b1182e url(/images/collapsable_heading_bg_2.jpg) repeat 0px 0px;
    height: 56px;
    text-align: left;
    position: relative;
    padding: 0px;
}

.panel-default>.panel-heading {
    background-color: #b1182e;
    border-color: #ddd;
    font-family: "montserratsemibold";
    font-size: 1.4rem;
    height: 56px;
    text-align: left;
    position: relative;
    padding: 10px 15px;
    text-transform: uppercase;
}

.panel-default>.panel-heading>a {
    color: #fff;
    text-decoration: none;
}


/*********************************
            SERVICIOS  
********************************/

.servicios h2 {
    color: #e20513;
    font-family: "montserratsemibold";
}


/*********************************
            CONTACTO
********************************/

.frm-contacto {
    background: url("/images/bg-nosotros.jpg") no-repeat center center;
    background-size: cover;
}

.contacto-form {
    background-color: rgba(0, 0, 0, 0.7);
    margin: 35px auto 25px auto;
    max-width: 480px;
    padding: 5px 10px 20px 10px;
    width: 100%;
}

.contacto-form-header {
    background-color: rgba(177, 24, 46, 0.8);
    color: #fff;
    font-family: "WalkwayExpandBlack-Regular";
    font-size: 12px;
    margin: 0px auto 60px auto;
    padding: 7px 0px;
    text-align: center;
    width: 100%;
}

.form-group {
    border-bottom: 1px solid rgba(16, 16, 17, 0.5);
    margin-bottom: 15px;
}

.contacto-form input:not([type="submit"]),
.contacto-form textarea {
    border: none;
    background: transparent;
    color: #fff;
    font-size: 1.2rem;
    margin: 0px auto 10px 0px;
    outline: none;
    resize: none;
    width: 90%;
}

.contacto-form p {
    margin: 0px !important;
}

.form-group {
    border-bottom: 1px solid rgba(16, 16, 17, 0.5);
    margin-bottom: 15px;
}

.no-margin-bottom {
    margin-bottom: 0px !important;
}

.contacto-form-darkbg {
    background-color: rgba(0, 0, 0, 0.2);
    padding: 10px 10px 10px 10px;
}

.contacto-form input[type="submit"] {
    background-color: rgba(177, 24, 46, 0.7);
    border: none;
    color: #fff;
    float: right;
    padding: 5px 10px;
}

.no-border {
    border: none;
}

input::placeholder {
    color: rgba(255, 255, 255, 0.9);
}

textarea::placeholder {
    color: rgba(255, 255, 255, 0.9);
}


/*********************************
          FOOTER  
********************************/

footer p span {
    font-family: "montserratblack_italic";
    font-size: 1.9rem;
}

footer p a {
    color: #000;
    font-family: "montserratblack_italic";
    font-size: 1.6rem;
}

footer p {
    font-family: "montserratthin";
    font-size: 1.3rem;
}

footer .newsletter p {
    font-family: "montserratregular";
    font-size: 1.6rem;
}

footer .copy {
    color: #c3bebe;
    font-family: "montserratregular";
    font-size: 1rem;
}

footer input {
    border: solid 1px #000;
    font-family: "montserratregular";
    font-size: 10px;
    float: none !important;
    padding: 5px 10px;
    max-width: 40rem;
    width: 100%;
}

.detalles-producto h1 {
    font-family: "montserratblack_italic";
    font-size: 3rem;
    text-transform: uppercase;
}

.detalles-producto h2 {
    font-family: "montserratsemibold";
    font-size: 1.8rem;
}

.detalles-producto p {
    font-size: 1.5rem;
    font-family: "montserratregular";
    text-transform: capitalize;
}

.detalles-producto span.label {
    color: #2a2e30;
    font-family: "montserratsemibold";
    font-size: 1.5rem;
}

.table-striped td {
    padding: 15px 10px !important;
}


/*********************************
          BACKGROUNDS  
********************************/

.bg-nosotros {
    background: transparent url("/images/bg-nosotros.jpg") center center;
    background-size: cover;
}

.bg-gray {
    background-color: #f8fafa;
}


/*********************************
            GENERALS  
********************************/

.categorias-list li a {
    color: #2a2e30;
}

.categorias-list li a:hover {
    color: 333;
    text-decoration: none;
}

.band {
    margin: 0px;
    padding: 5rem !important;
}

.text-white {
    color: #fff;
}


/*FORMS*/

.padding-bottom-30 {
    padding-bottom: 3rem !important;
}

.padding-top-30 {
    padding-top: 3rem !important;
}

.padding-bottom-50 {
    padding-bottom: 5rem !important;
}

.padding-top-50 {
    padding-top: 5rem !important;
}

.padding-top-70 {
    padding-top: 7rem !important;
}

.clear {
    clear: both !important;
}

.lastLi {
    clear: both !important;
    float: none !important;
    margin: 0 !important;
    padding: 0% !important;
    width: 0% !important;
}

.separator-line {
    height: 2px;
    background: #dfe2e3;
}

.row {
    padding: 0px !important;
}

.whiteText {
    color: #fff;
}


/*********************************
          MEDIA QUERIES  
********************************/

@media all and (max-width: 768px) {
    .navbar-brand {
        height: auto !important;
        width: 80%;
    }
}

@media all and (max-width: 720px) {
    .categorias-list {
        column-count: 1;
        padding-left: 50px !important;
    }
    .navbar-nav li {
        display: block;
    }
}

@media all and (max-width: 480px) {
    .navbar-brand {
        height: auto !important;
        width: 40%;
    }
}