body {
    overflow-x: hidden;
    font-family: 'Roboto Slab', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';
}

p {
    line-height: 1.75;
}

a {
    color: #004fa9;
}

a:hover {
    color: #003d79;
}

.text-primary {
    color: #1e467c !important;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: 700;
    font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';
}

.page-section {
    padding: 100px 0;
}

.page-section h2.section-heading {
    font-size: 40px;
    margin-top: 0;
    margin-bottom: 20px;
    text-decoration: #1e467c underline;
}

.page-section h3.section-subheading {
    font-size: 16px;
    font-weight: 400;
    font-style: italic;
    margin-bottom: 75px;
    text-transform: none;
    font-family: 'Droid Serif', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';
}

@media (min-width: 768px) {
    section {
        padding: 150px 0;
    }
}

::-moz-selection {
    background: #1a3456;
    text-shadow: none;
}

::selection {
    background: #1a3456;
    color: #fff9f3;
    text-shadow: none;
}

img::-moz-selection {
    background: transparent;
}

img::selection {
    background: transparent;
}

img::-moz-selection {
    background: transparent;
}

.btn {
    font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';
    font-weight: 700;
}

.btn-xl {
    font-size: 18px;
    padding: 20px 40px;
}

.btn-primary {
    background-color: #1e467c;
    border-color: #1e467c;
}

.btn-primary:active, .btn-primary:focus, .btn-primary:hover {
    background-color: #1a3456 !important;
    border-color: #1a3456 !important;
    color: white;
}

.btn-primary:active, .btn-primary:focus {
    box-shadow: 0 0 0 0.2rem rgba(26, 106, 211, 0.5) !important;
}

#mainNav {
   background-color: rgba(234, 242, 250, 0.8);
    transition: all 0.5s, background-color .15s;
}

#mainNav:hover{
    background-color: rgba(234, 241, 250, 0.99);
    transition: all 0.5s, background-color .15s;
}

#mainNav .navbar-toggler {
    font-size: 12px;
    right: 0;
    padding: 13px;
    text-transform: uppercase;
    color: #000e1f;
    border: 0;
    background-color: #1e467c;
    font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';
}

#mainNav .navbar-brand {
    color: #1e467c;
    font-family: 'Kaushan Script', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';
}

#mainNav .navbar-brand.active, #mainNav .navbar-brand:active, #mainNav .navbar-brand:focus, #mainNav .navbar-brand:hover {
    color: #0066cb;
}

#mainNav .navbar-nav .nav-item .nav-link {
    font-size: 90%;
    font-weight: 400;
    padding: 0.75em 0;
    letter-spacing: 1px;
    color: #000e1f;
    font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';
}

#mainNav .navbar-nav .nav-item .nav-link.active:not(.subnav-link) {
    color: #1e467c !important;
}
#mainNav .navbar-nav .nav-item .nav-link:hover, .nav-hover:hover .nav-link{
    color: #5186ff;
}

@media (min-width: 992px) {
    #mainNav {
        border: none;
        transition: .5s;
    }
    #mainNav .navbar-brand {
        font-size: 1.75em;
        transition: all 0.3s;
    }
    #mainNav .navbar-nav .nav-item .nav-link {
        padding: 1.1em 1em !important;
    }
    #mainNav.navbar-shrink {
        padding-top: .5rem;
        padding-bottom: 0.5rem;
        transition: .5s;
    }
    #mainNav.navbar-shrink .navbar-brand {
        font-size: 1.25em;/*
        padding: 12px 0;*/
    }
}

header.masthead {
    text-align: center;
    color: #000e1f;
    background-image: url("../img/header-bg.jpg");
    background-repeat: no-repeat;
    background-attachment: scroll;
    background-position: center center;
    background-size: cover;
}

header.masthead .intro-text {
    padding-top: 150px;
    padding-bottom: 100px;
    color: white;
}

header.masthead .intro-text .intro-lead-in {
    font-size: 22px;
    font-style: italic;
    line-height: 22px;
    margin-bottom: 25px;
    font-family: 'Droid Serif', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';
}

header.masthead .intro-text .intro-heading {
    font-size: 50px;
    font-weight: 700;
    line-height: 50px;
    margin-bottom: 25px;
    font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';
}

@media (min-width: 768px) {
    header.masthead .intro-text {
        padding-top: 300px;
        padding-bottom: 200px;
    }
    header.masthead .intro-text .intro-lead-in {
        font-size: 40px;
        font-style: italic;
        line-height: 40px;
        margin-bottom: 25px;
        font-family: 'Droid Serif', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';
    }
    header.masthead .intro-text .intro-heading {
        font-size: 75px;
        font-weight: 700;
        line-height: 75px;
        margin-bottom: 50px;
        font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';
    }
}

.service-heading {
    margin: 15px 0;
    text-transform: none;
}

.timeline {
    position: relative;
    padding: 0;
    list-style: none;
}

.timeline:before {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 40px;
    width: 2px;
    margin-left: -1.5px;
    content: '';
    background-color: #e9ecef;
}

.timeline > li {
    position: relative;
    min-height: 50px;
    margin-bottom: 50px;
}

.timeline > li:after, .timeline > li:before {
    display: table;
    content: ' ';
}

.timeline > li:after {
    clear: both;
}

.timeline > li .timeline-panel {
    position: relative;
    float: right;
    width: 100%;
    padding: 0 20px 0 100px;
    text-align: left;
}

.timeline > li .timeline-panel:before {
    right: auto;
    left: -15px;
    border-right-width: 15px;
    border-left-width: 0;
}

.timeline > li .timeline-panel:after {
    right: auto;
    left: -14px;
    border-right-width: 14px;
    border-left-width: 0;
}

.timeline > li .timeline-image {
    position: absolute;
    z-index: 100;
    left: 0;
    width: 80px;
    height: 80px;
    margin-left: 0;
    text-align: center;
    color: #000e1f;
    border: 7px solid #e9ecef;
    border-radius: 100%;
    background-color: rgb(126, 184, 241);
    transition: .2s;
}

.timeline > li .timeline-image:hover {
    background-color: #1a3456;
}

.timeline > li .timeline-image h4 {
    font-size: 8px;
    line-height: 14px;
    margin-top: 12px;
}

.timeline > li.timeline-inverted > .timeline-panel {
    float: right;
    padding: 0 20px 0 100px;
    text-align: left;
}

.timeline > li.timeline-inverted > .timeline-panel:before {
    right: auto;
    left: -15px;
    border-right-width: 15px;
    border-left-width: 0;
}

.timeline > li.timeline-inverted > .timeline-panel:after {
    right: auto;
    left: -14px;
    border-right-width: 14px;
    border-left-width: 0;
}

.timeline > li:last-child {
    margin-bottom: 0;
}

.timeline .timeline-heading h4 {
    margin-top: 0;
    color: inherit;
}

.timeline-heading h4{
    text-decoration: #00a4fc underline;
}

.timeline .timeline-heading h4.subheading {
    text-transform: none;
}

.timeline .timeline-body > ul,
.timeline .timeline-body > p {
    margin-bottom: 0;
}

@media (min-width: 768px) {
    .timeline:before {
        left: 50%;
    }
    .timeline > li {
        min-height: 100px;
        margin-bottom: 100px;
    }
    .timeline > li .timeline-panel {
        float: left;
        width: 41%;
        padding: 0 20px 20px 30px;
        text-align: right;
    }
    .timeline > li .timeline-image {
        left: 50%;
        width: 100px;
        height: 100px;
        margin-left: -50px;
    }
    .timeline > li .timeline-image h4 {
        font-size: 10px;
        line-height: 18px;
        margin-top: 16px;
    }
    .timeline > li.timeline-inverted > .timeline-panel {
        float: right;
        padding: 0 30px 20px 20px;
        text-align: left;
    }
}

@media (min-width: 992px) {
    .timeline > li {
        min-height: 150px;
    }
    .timeline > li .timeline-panel {
        padding: 0 20px 20px;
    }
    .timeline > li .timeline-image {
        width: 150px;
        height: 150px;
        margin-left: -75px;
    }
    .timeline > li .timeline-image h4 {
        font-size: 18px;
        line-height: 26px;
        margin-top: 30px;
    }
    .timeline > li.timeline-inverted > .timeline-panel {
        padding: 0 20px 20px;
    }
}

@media (min-width: 1200px) {
    .timeline > li {
        min-height: 170px;
    }
    .timeline > li .timeline-panel {
        padding: 0 20px 20px 100px;
    }
    .timeline > li .timeline-image {
        width: 170px;
        height: 170px;
        margin-left: -85px;
    }
    .timeline > li .timeline-image h4 {
        margin-top: 40px;
    }
    .timeline > li.timeline-inverted > .timeline-panel {
        padding: 0 100px 20px 20px;
    }
}

.team-member {
    margin-bottom: 50px;
    text-align: center;
}

.team-member img {
    width: 225px;
    height: 225px;
    border: 7px solid rgba(0, 0, 0, 0.1);
}

.team-member h4 {
    margin-top: 25px;
    margin-bottom: 0;
    text-transform: none;
}

.team-member p {
    margin-top: 0;
}

section#contact {
    background-color:  #EBFAEA ;
    background-image: url("../img/map-image.jpg");
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}

section#contact .section-heading {
    color: #111b20;
    text-decoration: none;
}

section#contact .form-group {
    margin-bottom: 25px;
}

section#contact .form-group input,
section#contact .form-group textarea {
    padding: 20px;
}

section#contact .form-group input.form-control {
    height: auto;
}

section#contact .form-group textarea.form-control {
    height: 248px;
}

section#contact .form-control:focus {
    /*border-color: #1e467c;*/
    border-color: #00c1fc;
    box-shadow: none;
}

section#contact ::-webkit-input-placeholder {
    font-weight: 700;
    color: #111d20;
    font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';
}

section#contact :-moz-placeholder {
    font-weight: 700;
    color: #111d20;
    font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';
}

section#contact ::-moz-placeholder {
    font-weight: 700;
    color: #111d20;
    font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';
}

section#contact :-ms-input-placeholder {
    font-weight: 700;
    color: #111d20;
    font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';
}

#footer {
    background-color: #eaf2fa;
}

.footer span.copyright {
    font-size: 90%;
    line-height: 40px;
    text-transform: none;
    font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';
}

.footer ul.quicklinks {
    font-size: 90%;
    line-height: 40px;
    margin-bottom: 0;
    text-transform: none;
    font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';
}

.footer h6{
    color:#000e1f;
}

ul.social-buttons {
    margin-bottom: 0;
}

ul.social-buttons li a {
    font-size: 20px;
    line-height: 50px;
    display: block;
    width: 50px;
    height: 50px;
    transition: all 0.3s;
    color: #000e1f;
    border-radius: 100%;
    outline: none;
    background-color: #eaf3fa;
}

ul.social-buttons li a:active, ul.social-buttons li a:focus, ul.social-buttons li a:hover {
    background-color: #1e467c;
}

.nav-logo {
    max-width: 10rem;
}

.nav-contact{
    padding-left: 1.5rem;
    margin-bottom: 1rem;
    color: #000e1f;
}

@media (min-width: 768px){
    .nav-logo {
        max-width: 15rem;
    }
    .nav-contact{
        margin-bottom: 0;
    }
}

.nav-contact i{
    color: #1e467c;
}

.container-main{
    padding-top: 7rem;
    min-height: 94.7vh;
}

.container-login{
    min-height: 95vh;
}

.display-block{
    display: block;
}

.list-inline-item{
    font-size: .75rem !important;
    margin: -.5rem .25rem;
}

.subnav .active{
    color: white !important;
}

.subnav .nav-item{
    margin: auto .2rem;
    text-align: center;
}
@media (min-width: 992px) {
    .subnav .nav-item{
        margin: 0;
    }
}

@media (min-width: 768px) {
    .subnav {
        margin-top: 4.7rem;
    }

    .list-inline-item{
        font-size: 90% !important;
        margin-top: -1rem;
        margin-bottom: -1rem;
    }

    .subnav-expand{
        margin-top: 15rem;
        transition: all 0.5s;
    }

}

@media (min-width: 992px) {
    .subnav {
        margin-top: 6.95rem;
    }

    .subnav-shrink{
        margin-top: 4.7rem;
        transition: all 0.5s;
    }

    .list-inline-item{
        font-size: 90% !important;
        margin-top: -1rem;
        margin-bottom: -1rem;
    }
}

.merriweather{
    font-family: Merriweather, serif !important;
}

.sitemap{
    display: inline-list-item;
    list-style: none;
}

.sub-sitemap{
    display: inline-list-item;
    list-style: none;
}

@media (min-width: 768px) {
    .sitemap{
        display: block;
    }

    .sub-sitemap{
        display: block;
    }
}

.footer i{
    min-width: 1rem;
    margin-right: -0rem !important;
}
.footer-info{
    text-align: justify;
}

.footer-info li{
    display: inline-block !important;
    background: none;
    border: none;
}
.footer-info i{
    display: inline-block !important;
}
.footer-info span{
    display: inline-block !important;
}

.logo{
    max-width: 75%;
}

.home-head{
    max-height: 50rem !important;
}

.mw-10r{
    height: 10rem !important;
    width: 10rem !important;
}

.footer-copyright{
    background-color: #E6EDFF;
    color: #000e1f;
}
.footer-copyright a{
    color: #1e3f6b;
}

.footer .map-link{
    margin-bottom: .5rem;
}

.accent-3{
    width: 60px;
    border-color: #1e467c;
}

.dropdown-menu{
    position: absolute !important;
    z-index: 99999999999;
}

li.btn-group{
    position: relative;
}

.nav-hover:hover{
    color:#1e467c !important;
}


.dropdown-item{
    font-size: .75rem;
    font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';
}
@media (min-width: 375px){
    .dropdown-item{
        font-size: 1rem;
    }
}

.dropdown-item:hover{
    background-color: #E6EDFF;
    border-color: #E6EDFF;
}

section.page-section p, section.page-section li{
    text-align: justify;
}


@media (max-width: 425px){
    .section-heading{
        font-size: 2rem !important;
    }
}
@media (max-width: 343px){
    .section-heading{
        font-size: 1.75rem !important;
    }
}
@media (max-width: 306px){
    .section-heading{
        font-size: 1.5rem !important;
    }
}

.product-list{
    padding-left:1rem;
    margin-top: -1rem;
    list-style-type: disc;
}
@media (max-width: 768px){
    .product-list{
        margin: -1rem auto auto;
        text-align: justify;
        display: inline-block;
    }
}

@media (max-width: 992px){
    .dropdown-toggle{
        padding-left: 1.75rem !important;
    }
}

.home-btn{
    margin-bottom: 1rem;
}
.home-btn h4{
    margin-top: 0;
}
.home-btn a{
    text-decoration: none;
}
.home-btn:hover .fa-circle{
    color: #1a3456 !important;
}
.home-btn:hover .fa-inverse, .home-btn:hover .service-heading{
    color: #E6EDFF !important;
}
.home-btn:hover .fa-inverse, .home-btn:hover .service-heading, .home-btn:hover .fa-circle{
    transition: .2s;
}

header.product-header{
    background-image: url("../img/panel-bg.jpg");
}

.product-header .btn-primary{
    display: flex;
    align-items: center;
    min-height: 4em;
}
.product-header .btn-primary:focus{
    border: 0 !important;
}
.product-header .btn-primary span{
    margin: auto;
}

@media (min-width: 576px) {
    .intro-text{
         font-size: 1.25rem;
     }
}

header.info-header{
    background-image: url("../img/energy-bg.jpg");
}

::-webkit-input-placeholder { /* Edge */
    color: lightgray !important;
}

:-ms-input-placeholder { /* Internet Explorer 10-11 */
    color: lightgray !important;
}

::placeholder {
    color: lightgray !important;
}

/******************
 *** CARD TABLE ***
 ******************/
.cut{
    overflow: hidden;
    max-width: 200px;
    white-space: nowrap;
}
.cut:hover{
    white-space: initial;
    overflow: visible;
}

.cut-small{
    max-width: 50px;
}
.cut-medium{
    max-width: 100px;
}

.cardTable td{
    background-color: #DDD;
}

tr.deleted>td{
    background-color: #9d9d9d;
    color: #ffc107 !important;
}

.cardTable th{
    background-color: #333333;
    color: white;
}

.table-link{
    color: #212529;
}

tr.deleted .table-link{
    color: #ffc107;
}
/* END OF CARD TABLE */


/******************
 *** PAGINATION ***
 ******************/
.pagination{
    font-size: .1rem;
}

.page-item{
    padding: 0;
}

.page-link{
    color: #1e3f6b;
    padding: .5rem !important;
    border: none;
}

a.page-link:hover{
    color: #1a3456;
    background: none;
}
/* END OF CARD TABLE */


/******************
 **** FACTURA *****
 ******************/
.invoice-box {
    max-width: 800px;
    margin: auto;
    padding: 30px;
    border: 1px solid #E6EDFF;
    box-shadow: 0 0 10px rgba(0, 0, 0, .15);
    background-color: white;
    font-size: 16px;
    line-height: 24px;
    font-family: 'Helvetica Neue', 'Helvetica', Helvetica, Arial, sans-serif;
    color: #555;
}

.invoice-box table {
    width: 100%;
    line-height: inherit;
    text-align: left;
}

.invoice-box table td {
    padding: 5px;
    vertical-align: top;
}

.invoice-box table tr td.right {
    text-align: right;
}

.invoice-box table tr.top table td {
    padding-bottom: 20px;
}

.invoice-box table tr.top table td.title {
    font-size: 45px;
    line-height: 45px;
    color: #333;
}

.invoice-box table tr.information table td {
    padding-bottom: 40px;
}

.invoice-box table tr.heading td {
    background: #E6EDFF;
    border-bottom: 1px solid #ddd;
    font-weight: bold;
}

.invoice-box table tr.details td {
    padding-bottom: 20px;
}

.invoice-box table tr.item td{
    border-bottom: 1px solid #E6EDFF;
}

.invoice-box table tr.item.last td {
    border-bottom: none;
}

.invoice-box table tr.total td:nth-child(2) {
    text-align: center;
    border-top: 2px solid #E6EDFF;
    font-weight: bold;
}

@media only screen and (max-width: 600px) {
    .invoice-box table tr.top table td {
        width: 100%;
        display: block;
        text-align: center;
    }

    .invoice-box table tr.information table td {
        width: 100%;
        display: block;
        text-align: center;
    }
}

.invoice-box table tr.total{
    text-align: right;
}

.invoice-box table tr.total td{
    padding-top: 40px;
}

.invoice-box table tr.light td{
    color: lightgray;
    padding-top: 50px;
    font-size: 12px;
}

.invoice-box table tr.total td a {
    display: inline-block;
    background-color: #1e3f6b;
    text-decoration: none;
    color: #fff;
    font-weight: bold;
    font-size: 20px;
    border: none;
    border-radius: .5rem;
    padding: 12px;
}

/** RTL **/
.rtl {
    direction: rtl;
    font-family: Tahoma, 'Helvetica Neue', 'Helvetica', Helvetica, Arial, sans-serif;
}

.rtl table {
    text-align: right;
}

.rtl table tr td:nth-child(2) {
    text-align: left;
}
/* END OF FACTURA */



.form-control-submit-button {
    display: inline-block;
    width: 100%;
    height: 3.125rem;
    border: 1px solid #1e3f6b;
    border-radius: 1.5rem;
    background-color: #1e3f6b;
    color: #fff;
    font: 700 1rem/1.75rem "Montserrat", sans-serif;
    cursor: pointer;
    transition: all 0.1s;
}

.form-control-submit-button:hover {
    border: 1px solid #1a3456;
    background-color: #1a3456;
}

.bg-img{
    background-image: url("../img/header-bg.jpg");
    background-repeat: no-repeat;
    background-attachment: scroll;
    background-position: center center;
    background-size: cover;
}