/*
To change this license header, choose License Headers in Project Properties.
To change this template file, choose Tools | Templates
and open the template in the editor.
*/
/* 
    Created on : 8/mai/2018, 11:46:24
    Author     : Carlos Braga
*/
body {
    font-family: "Roboto";
}


/*main#panel {
    max-height: 100vh;
    overflow: auto;
}*/
.slideout-menu {
    position: fixed;
    top: 0;
    bottom: 0;
    width: 300px;
    min-height: 100vh;
    /*overflow-y: scroll;*/
    -webkit-overflow-scrolling: touch;
    z-index: 0;
    display: none;
}

.slideout-menu-left {
    left: 0;
}

.slideout-menu-right {
    right: 0;
}

.slideout-panel {
    position: relative;
    z-index: 1;
    will-change: transform;
    min-height: 100vh;
}

.slideout-open,
.slideout-open body,
.slideout-open .slideout-panel {
    overflow: hidden;
}

.slideout-open .slideout-menu {
    display: block;
}
.slideout-menu {
    z-index: 3;
    display: block;
    will-change: transform;
}
.slideout-menu-left {
    left: -300px;
}
.slideout-menu-right {
    right: -300px;
}
.slideout-dimmer {
    visibility: hidden;
    opacity: 0;
    z-index: -1;
    pointer-events: none;
    background-color: rgba(0,0,0,.5);
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}
.slideout-open .slideout-dimmer {
    visibility: visible;
    opacity: 1;
    z-index: 2;
}


/*Roboto FONT*/
@font-face {
    font-family: "Roboto";
    src: url(fonts/Roboto-Thin.ttf) format("truetype");
    font-weight: 200;
}
@font-face {
    font-family: "Roboto";
    src: url(fonts/Roboto-ThinItalic.ttf) format("truetype");
    font-style: italic;
    font-weight: 200;
}
@font-face {
    font-family: "Roboto";
    src: url(fonts/Roboto-Light.ttf) format("truetype");
    font-weight: 300;
}
@font-face {
    font-family: "Roboto";
    src: url(fonts/Roboto-LightItalic.ttf) format("truetype");
    font-style: italic;
    font-weight: 300;
}
@font-face {
    font-family: "Roboto";
    src: url(fonts/Roboto-Regular.ttf) format("truetype");
    font-weight: 400;
}
@font-face {
    font-family: "Roboto";
    src: url(fonts/Roboto-Italic.ttf) format("truetype");
    font-style: italic;
    font-weight: 400;
}
@font-face {
    font-family: "Roboto";
    src: url(fonts/Roboto-Medium.ttf) format("truetype");
    font-weight: 500;
}
@font-face {
    font-family: "Roboto";
    src: url(fonts/Roboto-MediumItalic.ttf) format("truetype");
    font-style: italic;
    font-weight: 500;
}
@font-face {
    font-family: "Roboto";
    src: url(fonts/Roboto-Bold.ttf) format("truetype");
    font-weight: 700;
}
@font-face {
    font-family: "Roboto";
    src: url(fonts/Roboto-BoldItalic.ttf) format("truetype");
    font-style: italic;
    font-weight: 700;
}
@font-face {
    font-family: "Roboto";
    src: url(fonts/Roboto-Black.ttf) format("truetype");
    font-weight: 900;
}
@font-face {
    font-family: "Roboto";
    src: url(fonts/Roboto-BlackItalic.ttf) format("truetype");
    font-style: italic;
    font-weight: 900;
}



div#home_section {
    position: relative;
}
/*Header*/
.page_header_container {
    background: rgba(0, 41, 63, 0);
    position: fixed;
    width: 100%;
    transition: .15s all linear;
    z-index: 150;
}
.page_header_container.scrolled_header {
    background: rgba(0, 41, 63, 1);
    z-index: 150;
}
.page_header_wrapper {
    max-width: 960px;
    margin: 0 auto;
}
.page_header_logo_container {
    width: 200px;
    padding: 12px 0 6px;
}
.page_header_container img.page_header_logo {
    opacity: 0;
    transition: .15s all linear;
}
.page_header_container.scrolled_header img.page_header_logo {
    opacity: 1;
}
img.page_header_logo {
    width: 100%;
}

.page_header_menu_wrapper {
    height: 76px;
}
.md-button.md-ink-ripple {
    margin: 0;
    color: #fff;
    border-radius: 0;
}







/* HOME */
.home_wrapper {
    width: 100%;
    height: 100vh;
    background: url(/img/fundo.png);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}






/* GALLERY */
.gallery_container {
    min-height: calc(100vh);
    /*min-height: calc(100vh - 262px);*/
}
.gallery_wrapper {
    max-width: 960px;
    margin: 0 auto;
}
.gallery_banner_container {
    position: relative;
}
.gallery_banner_container slick {
    width: 600px;
    height: 330px;
    margin: 0 0 0 !important;
}
.gallery_banner_container slick img {
    width: 100%;
}
button.home_slider_button {
    position: absolute;
    top: 0;
    height: 100%;
    background: rgba(51, 51, 51, 0.1);
}
button.home_slider_button.next.md-button.md-ink-ripple {
    right: 0;
}
button.home_slider_button.previous {
    left: 0;
}
ul.slick-dots li button:before {
    content: "";
    width: 10px;
    height: 10px;
    background: #00293f;
    border: 1px solid #fff;
}
ul.slick-dots li button {
    width: 10px;
    height: 10px;
    padding: 0;
}
ul.slick-dots li {
    width: 10px;
    height: 10px;
}
button.slick-prev.slick-arrow, button.slick-next.slick-arrow {
    display: none !important;
}
ul.slick-dots {
    bottom: 25px;
}
.gallery_wrapper {
    padding: 100px 0;
}
.gallery_side_description_paragraph {
    font-size: 13px;
    padding: 0 6px;
    text-align: justify;
    margin: 0 0 10px;
    text-indent: 24px;
}
.gallery_side_description_wrapper {
    margin: 0 0 6px;
}
.gallery_banner_container a.gallery_map_button.md-button.md-ink-ripple {
    margin: 50px 0 0;
    width: 100%;
}
.popup_image_container button.md-button.md-ink-ripple {
    width: calc(100% - 12px);
    background: #00293f;
    margin: 6px;
    font-weight: 400;
}
a.gallery_map_button.md-button.md-ink-ripple {
    background: #00293f;
    margin: 0 6px;
}
.gallery_side_description_title {
    margin: 0 0px 6px;
    font-size: 16px;
    border-bottom: 1px solid #c29b0c;
    text-transform: uppercase;
    padding: 0 0 12px;
    color: #00293f;
    font-weight: 500;
}
.gallery_side_description_container {
    padding: 0 12px;
}

.gallery_banner_wrapper {
    position: relative;
}
.contacts_form_wrapper input, .contacts_form_wrapper textarea {
    width: 100%;
    line-height: 30px;
    margin: 6px 0;
    padding: 0px 6px;
    border: 0;
    font-size: 14px;
    box-shadow: 0px 0px 3px -1px rgba(0, 0, 0, 0.75);
    border-radius: 3px;
}
.contacts_form_wrapper button.md-button.md-ink-ripple {
    background: rgb(0, 41, 63);
    width: 100%;
    margin: 6px 0;
    transition: .15s all linear;
}






/* CONTACTS */
.contacts_big_wrapper {
    max-width: 960px;
    margin: 0 auto;
    width: calc(100% - 67px);
    background: #dddddd;
    padding: 30px 0;
}
.contacts_wrapper {
    padding: 0 12px;
}
.contacts_wrapper input, .contacts_wrapper textarea {
    width: 100%;
    line-height: 30px;
    margin: 6px 0;
    padding: 0px 6px;
    border: 0;
    font-size: 14px;
    box-shadow: 0px 0px 3px -1px rgba(0, 0, 0, 0.75);
    border-radius: 3px;
}
.contacts_wrapper button.md-button.md-ink-ripple {
    background: rgb(0, 41, 63);
    width: 100%;
    margin: 6px 0;
    transition: .15s all linear;
}
.contacts_wrapper button.md-button.md-ink-ripple[disabled] {
    background: rgba(0, 41, 63, 0.25);
    cursor: not-allowed;
}
.contacts_title_wrapper {
    text-align: center;
    font-size: 20px;
    color: #00293f;
    padding: 12px 0;
}
.contacts_container {
    min-height: calc(100vh);
}
.contacts_alternative_wrapper {
    padding: 0 12px;
}
.contacts_bigtitle_wrapper {
    font-size: 24px;
    text-align: center;
    padding: 12px 0;
    color: #00293f;
    font-weight: 500;
}
a.contacts_alternative_item {
    font-size: 18px;
    margin: 0 0 18px;
    color: #00293f;
    text-decoration: none;
}
.contacts_alternative_icon {
    font-size: 24px;
    padding: 6px 6px;
    width: 36px;
    height: 36px;
    text-align: center;
}
a.contacts_alternative_item:hover {
    color: rgba(0, 41, 63, 0.7);
}
.contacts_alternative_text {
    width: 150px;
}









/* FOOTER */
.footer_container {
    background: #ddd;
}
.footer_wrapper {
    max-width: 960px;
    margin: 0 auto;
    padding: 24px 0;
}
.footer_logo_container {
    padding: 0 50px 0 0;
}
img.page_footer_logo {
    width: 100%;
}

.footer_text {
    font-size: 14px;
    color: #333;
}
.footer_text_separator {
    height: 6px;
}
.footer_social_container {
    text-align: right;
}
.footer_social_text {
    text-align: right;
    font-size: 16px;
    text-transform: uppercase;
    font-weight: 500;
    color: #00293f;
}
a.footer_social_button.md-button.md-ink-ripple {
    font-size: 30px;
    min-width: auto;
    min-height: auto;
    width: auto;
    height: auto;
    padding: 0;
    color: #00293f;
}









/*####################### MOBILE ##########################*/
@media screen and (max-width: 959px) and (min-width: 600px) {
    .footer_text {
        text-align: right;
        padding: 0 12px;
    }
    .footer_left_container {
        margin: 0 0 36px;
    }
    .footer_logo_container {
        padding: 0 12px 0;
    }
}
@media screen and (max-width: 959px) {
    .page_header_container {
        background: rgba(0, 41, 63, 0);
        position: fixed;
        width: 100%;
        transition: .15s all linear;
        z-index: 150;
        max-width: 100vw;
    }
    .gallery_banner_container slick {
        width: calc(100% - 24px);
    }
    .gallery_banner_container {
        max-width: calc(100vw - 24px);
        padding: 0 12px;
    }
    .gallery_banner_container slick {
        width: 100%;
        height: auto;
    }
    .slick-initialized .slick-slide {
        height: auto;
    }
    .footer_logo_container {
        padding: 0 50px 0;
    }
    .footer_left_container {
        text-align: center;
        margin: 24px 0;
    }
    .footer_social_container {
        width: 100%;
        text-align: center;
    }
    .footer_social_text {
        text-align: center;
    }
    .gallery_banner_container a.gallery_map_button.md-button.md-ink-ripple {
        margin: 12px 0 0;
    }
}


nav#menu {
    background: #333;
    z-index: 200;
}
.mobile_sidemenu_wrapper img {
    width: calc(100% - 24px);
    display: block;
    margin: 0 auto;
}

md-content#main_menu_links_container {
    background: transparent;
    height: calc(100% - 121px);
}
.sidemenu_social_container a.footer_social_button.md-button.md-ink-ripple {
    color: #ffffff;
}
.sidemenu_social_container {
    padding: 0 0 12px;
}
.mobile_sidemenu_wrapper {
    border-bottom: 2px solid #fff;
    margin: 0 0 18px;
}
.mobile_sidemenu_wrapper img {
    width: 100%;
}
.page_header_mobile_wrapper button.md-button.md-ink-ripple {
    min-width: 50px;
    min-height: 50px;
    font-size: 18px;
}
.page_header_mobile_wrapper .page_header_logo_container {
    padding: 0;
    width: auto;
}
.page_header_mobile_wrapper .page_header_logo_container img.page_header_logo {
    width: 100%;
    height: 40px;
    object-fit: contain;
    object-position: center;
}