html, body { height: auto; min-height: 100vh; }
body { font-size: 12px; overflow-x: hidden; }

/********* TEXT *********/
.h-fix { overflow: hidden; }
h1 { text-transform: uppercase; font-weight: 700; color: #603701; }
h6 { font-weight: 700; }
.bg-brown h1, .bg-brown h3 { color: #FFF; }
/************************/

/********* PAGE STRUCTURE *********/
#page-wrapper { overflow-x: hidden; }
.page-content { /*padding: 0 30px;*/ padding: 0px; }
.padding-30-left { padding-left: 30px; }
.padding-20-left { padding-left: 20px; }
.padding-30-right { padding-right: 30px; }
.padding-top-20 { padding-top: 20px; }
#associados .page-content, #acig .page-content, #servicos .page-content { /*padding: 30px;*/ padding: 0px; height: auto; min-height: 100vh; }
.news .page-content { padding: 30px 90px 0; }
.show-grid { margin-bottom: 15px; }
.height-100 { height: auto; min-height: 100vh; }
.vcenter { display: inline-block; vertical-align: middle; float: none; }
.vtop { display: inline-block; vertical-align: top; float: none; }
.bg-color { height: 100%; position: absolute; top: 0; left: 0; width: 50%; padding-right: 10px; }
.bg-brown { /*background-color: #603701;*/ }
/*.row { margin-left: -15px; margin-right: -15px; }*/
.inline-block { display: inline-block; }
#acig .vcenter { padding-left:20px; }
#actividades .vcenter { padding-left:20px; }
#servicos .vcenter { padding-right:40px; }
#guimaraes .vcenter { padding-right:40px; }
/**********************************/

/********* SNIPPETS *********/
.table-elem { height: auto; min-height: calc(100vh - 60px); display: table; width: 100%; position: relative; z-index: 1; }
.table-cell-elem { display: table-cell; height: 100%; vertical-align: middle; }
/****************************/

/********* BUTTONS *********/
.btn { font-weight: 700; -moz-border-radius: 0; -webkit-border-radius: 0; border-radius: 0; padding: 12px 15px; }
.btn-black { background: #000; border-color: #000; }
.btn-brown { background: #603701; border-color: #603701; }
.btn-light-brown { background: #a06a00; border-color: #a06a00; color: #FFF; }
.btn-light-brown:hover, .section .btn-light-brown:active, .section .btn-light-brown:focus { color: #fff; background-color: #603701; border-color: #603701; }
.btn-icon-before .fa { margin-right: 5px; }
/***************************/

/********* IMAGES *********/
.cssBgImage { position: absolute; top: 0; right: 0; bottom: 0; left: 0; background-repeat: no-repeat; background-size: cover; background-position: center center; z-index: 0; }
.page-contentCssBgImage .cssBgImage { /*left: 30px; right: 30px */ left: 0px; right: 0px;}
.col-md-cssBgImage .cssBgImage { /*left: 10px; right: 10px;*/ left: 0px; right: 0px; }
#associados .page-contentCssBgImage .cssBgImage { /*top:30px; bottom: 30px;*/ top:0px; bottom: 0px; }
.ratio { position: relative; width: 100%; height: 0; padding-bottom: 50%; background-repeat: no-repeat; background-position: center center; background-size: cover; }
/**************************/

/********* HEADER *********/
.header { position: absolute; top: 0; display:none;  left: 0; right: 0; z-index: 5; padding: 10px 0; background: rgba(0,0,0,0.5); }
.header.fixed { position: fixed; }
.header .row { margin-left: 0; margin-right: 0; }
.header ul, .share-links ul, .footer ul { margin-bottom: 0; -webkit-padding-start: 0; }
.share-links ul { margin-top: 10px; }
.footer ul { margin-bottom: 10px; text-align: left; display: none; }
.header ul li, .share-links ul li, .footer ul li { display: inline-block; vertical-align: middle; margin: 0 5px; }
.share-links ul li { margin: 0 10px 0 0; }
.header ul li a, .share-links ul li a, .footer ul li a { color: #FFF; font-weight: 700; display: block; }
.header .text-left ul li a { text-transform: uppercase; }
.header ul li a.round-icon, .share-links ul li a.round-icon, .footer ul li a.round-icon { background-color: #FFFFFF; color: #000000; width: 30px; height: 30px; border-radius: 50%; text-align: center; line-height: 30px; font-size: 14px; }
.header ul li a.round-icon.round-icon-fix { background-color: transparent !important; width: 0 !important; }
.share-links strong { text-transform: uppercase; }
#navPanel, #titleBar { display: none; }
/**************************/

/********* WAYPOINTS *********/
ul.navigation { position: fixed; right: 0; z-index: 5; margin-bottom: 0; -webkit-padding-start: 0; list-style: none; top: 50%; transform: translateY(-50%); text-align: center; width: 30px; }
ul.navigation li { background: #ececec; width: 15px; height: 15px; display: inline-block; -moz-border-radius: 50%; -webkit-border-radius: 50%; border-radius: 50%; cursor: pointer; opacity:0.7; }
ul.navigation li.active { background: #736537; border:3px solid #ececec; opacity:1; }
/*****************************/

/********* SECTION STRUCTURE *********/
.section { position: relative; z-index: 0; width: 100%; height: auto; min-height: 100vh; }
/*************************************/

/********* SECTION BANNER *********/
#banner { background-color: red; }
.sliderContainer { width: 100%; height: 100%; position: absolute; z-index: 1; overflow: hidden; }
.royalSlider { height: 100% !important; width: 100% !important; }
img.rsImg { min-width: 100%; min-height: 100%; }
.rsOverflow { width: 100% !important; height: 100% !important; }
.rsABlock { width: 100%; top:calc( 50% - 195px ) !important; /*top: auto !important; bottom: 75px !important;*/ }
.infoBlock-inner { line-height: 1em; max-width: 600px; margin: 0 auto; }
.infoBlock-inner h4 { font-size: 3em; line-height:1.3em; text-transform: uppercase; margin-bottom: 0 }
.rsNav.rsBullets { right: auto !important; width: 100%; bottom: 50px !important; line-height: 10px !important; }
.rsMinW .rsBullet { width: 10px !important; height: 10px !important; padding: 10px 8px 10px 6px !important; }
.rsMinW .rsBullet span { width: 10px !important; height: 10px !important; }
.banner-logo { /*background-color: rgba(0,0,0,0.8);*/ /*border-radius: 50%;*/ padding: 5px; margin-bottom:40px; }
.copyright { position: absolute; z-index: 1; bottom: 0; left: 0; right: 0; color: #FFFFFF; padding: 10px 30px; }
.copyright a { color: #FFFFFF; }
/**********************************/

/********* SECTION NEWS *********/
.owl-carousel .owl-controls .owl-nav .owl-prev,
.owl-carousel .owl-controls .owl-nav .owl-next { font-size: 70px; position: absolute; top: 11%; }
.owl-carousel .owl-controls .owl-nav .owl-prev { left: -35px; }
.owl-carousel .owl-controls .owl-nav .owl-next { right: -35px; }

#owl-carousel2 .owl-controls .owl-nav .owl-prev,
#owl-carousel2 .owl-controls .owl-nav .owl-next { font-size: 70px; position: absolute; top: 0%; }
#owl-carousel2 .owl-controls .owl-nav .owl-prev { left: 0px; }
#owl-carousel2 .owl-controls .owl-nav .owl-next { right: 0px; }


#owl-carousel3 .owl-controls .owl-nav .owl-prev,
#owl-carousel3 .owl-controls .owl-nav .owl-next { font-size: 70px; position: absolute; top: 0%; }
#owl-carousel3 .owl-controls .owl-nav .owl-prev { left: 0px; }
#owl-carousel3 .owl-controls .owl-nav .owl-next { right: 0px; }

.item.news-item a { color: #000; }
/********************************/

/********* SECTION ASSOCIATED *********/
#associados { color: #FFFFFF; z-index:3; }
#associados h1 { color: #FFFFFF; }
#associados .page-content:before, #associados .page-content:after { position: absolute; z-index: 1; color: #FFFFFF; font-weight: 700; }
#associados .page-content:before { content: "1865"; bottom: 50px; left: 35px; font-size: 60px; line-height: 60px; }
#associados .page-content:after { content: "since"; bottom: 35px; left: 35px; font-size: 20px; line-height: 20px; }
.associated-inner { max-width: 400px; margin: 0 auto; }
/**************************************/

/********* SECTION PRESIDENT MESSAGE *********/
.presidentMessage-bg { position: relative; background-image: url(../images/bg.gif); background-repeat: no-repeat; background-size: cover; background-position-y: 100px; }
.presidentMessage-left h1, .presidentMessage-left h3 { color: #603701; margin-bottom: 0; margin-top: 0; }
.presidentMessage-left h3 { margin-top: 20px; }
/*********************************************/

/********* FOOTER *********/
.footer { background-color: #000; color: #7e8186; padding: 10px 0; }
.footer p { margin: 0; }
.footer a { color: #FFF; }
.footer a:hover { color: #FFF; }
.number-mail { color: #a16703; }
/**************************/

/********* ERROR PAGE *********/
body.error-page { background-color: #333; color: #a3a3a3; }
body.error-page #page-wrapper { height: 100vh; padding-top: 50px; }
body.error-page .container { height: 100%; display: table; }
body.error-page .error-page { display: table-cell; vertical-align: middle; text-align: center; height: 100% }
.error-page ul.navigation { display: none; }
/******************************/

/********* MODAL *********/
.custom-modal {
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0px;
    left: 0px;
    overflow-y: auto;
	overflow-x:hidden;
    opacity: 0;
    z-index: -9999;
    animation-duration: 0.6s;
    background-color: rgb(0, 0, 0);
    padding: 50px 0;
}
.custom-modal#proposta-de-socio { padding: 0 0 50px; }
.custom-modal-content { color: #FFF; }
#closebt-container { position: relative; width: 100%; text-align: center; margin-top: 40px; }
.closebt { -webkit-transition: all 0.2s; -moz-transition: all 0.2s; -ms-transition: all 0.2s; -o-transition: all 0.2s; transition: all 0.2s; cursor: pointer; }
.closebt:hover { transform: rotate(90deg); }
.custom-modal:not(#news-modal) h1 { text-transform: lowercase; font-size: 3em; }
.custom-modal:not(#news-modal) h1:before { content: '.'; }
.custom-modal:not(#news-modal) h6 { border-bottom: 1px solid #333; padding-bottom: 5px; }
.custom-modal:not(#news-modal) h6:before { content: '\\ ';  }
.custom-modal .col-left h1, .custom-modal .col-left .news-title { display: none; }
/*#news-modal .custom-modal-content h1 { text-transform: none; font-size: 2em; }
#news-modal .custom-modal-content h1:before {  }*/
.custom-modal-close-wrapper { margin-top: 20px; text-align: center; }
.custom-modal .news-title { color: #a36a01; font-weight: 700; font-size: 3.5em; text-transform: uppercase; }
.custom-modal .news-abstract { color: #FFF; font-weight: 700; font-size: 14px; margin-bottom: 20px; }
.custom-modal .news-text, .custom-modal .news-date { color: #FFF; }
.custom-modal .news-image { border: 10px solid #FFF; margin-bottom: 15px; }
.custom-modal label.error { color: #EF3E1F; }
/************************/

/* FORMS */
.form-tag { padding-top: 10px; }
.form-tag label { color: #FFF; font-weight: 700; font-size: 14px;  }
.form-tag-alt label { color: #926001; }
.form-control { background-color: #302219; border: 1px solid #302219; color: #FFF; -moz-border-radius: 0; -webkit-border-radius: 0; border-radius: 0; }
.form-control-alt { background-color: #926001; border-color: #926001; color: #000;  }
.form-control:focus { border-color: #302219; }
.form-control-alt:focus { border-color: #926001; }
.form-control::-webkit-input-placeholder { color: #FFF; }
.form-control:-moz-placeholder { color: #FFF; } /* Firefox 18- */
.form-control::-moz-placeholder { color: #FFF; } /* Firefox 19+ */
.form-control:-ms-input-placeholder { color: #FFF; }
.form-control-alt::-webkit-input-placeholder { color: #000; }
.form-control-alt:-moz-placeholder { color: #000; } /* Firefox 18- */
.form-control-alt::-moz-placeholder { color: #000; } /* Firefox 19+ */
.form-control-alt:-ms-input-placeholder { color: #000; }
.input-group-addon { background-color: #926001; border-color: #926001; color: #000; -moz-border-radius: 0; -webkit-border-radius: 0; border-radius: 0; }
.add-more-elements, .remove-element { background: none; border: none; color: #302219; font-size: 40px; line-height: 40px; padding: 0; -moz-transition: all 0.2s ease-out 0s; -webkit-transition: all 0.2s ease-out 0s; transition: all 0.2s ease-out 0s; }
.add-more-elements:hover, .remove-element:hover { color: #926001; }
.add-more-elements:focus, .remove-element:focus { outline: none; color: #926001; }
.social-bodies-elements-hidden { display: none; }
.form-tag input[type="checkbox"], .form-tag input[type="radio"] { margin: 6px 5px 0 0; }
.form-messages h2 { color: chartreuse; }
.form-control.error { border-color: #EF3E1F; background-color: #AD240C; }
.form-control.valid { background-color: #518220; border-color: chartreuse; }

.custom-modal-content .col-right { padding-right:20px !important; }
.custom-modal:not(#news-modal) h1:after {     content: "X";
    float: right; pointer-events: all;
    margin-right: 35px;
    margin-top: -50px;
    font-weight: bold;
    font-size: 50px;
	cursor:pointer;
	}

	.news-abstract { font-size:14px; }
	#actividades .vcenter p { font-size:14px; }
	#acig .vcenter p { font-size:14px; }
	#guimaraes .vcenter p { font-size:14px; }
	#servicos .vcenter p { font-size:14px; }
	#presidentMessage .vtop { font-size:14px; }
@media screen and (min-width: 1410px) {
	#presidentMessage .vtop { font-size:20px; }
	#acig .vcenter h1 { font-size:22px; }
	#servicos .vcenter h1 { font-size:22px; }
	#guimaraes .vcenter h1 { font-size:22px; }
	#acig .vcenter p { font-size:20px; }
	#actividades .vcenter h1 { font-size:22px; }
	#actividades .vcenter p { font-size:20px; }
	.custom-modal-content .col-right h1 { font-size:22px; }
	.custom-modal-content .col-right { font-size:20px; }
	.custom-modal-content .news-title { font-size:22px; }
	.news-abstract { font-size:18px; }
	.custom-modal-content .news-text, .custom-modal-content .news-abstract { font-size:20px; }
	
	
		#acig .vcenter { padding-left:60px; padding-right:60px; }
	#actividades .vcenter { padding-right:60px; padding-left:60px; }
	#servicos .vcenter { padding-right:60px; padding-left:60px; }
	#guimaraes .vcenter { padding-right:60px; padding-left:60px; }

}

@media screen and (max-width: 991px) {
    .custom-modal .col-left h1, .custom-modal .col-left .news-title { display: block; }
    .custom-modal .col-right h1, .custom-modal .col-right .news-title { display: none; }
    .custom-modal .col-right { margin-top: 15px; }
}

@media screen and (max-width: 767px) {
    .header .col-sm-6.text-right { display: none; }
    .header .col-sm-6.text-left { text-align: center; }
    .footer ul { display: block; }
    .show-grid { margin-bottom: 0; }
    .row .col-sm-6 a.btn:first-child { margin-bottom: 15px; }
    .col-md-cssBgImage { width: 100%; }
    .height-100 { min-height: initial; }
    .bg-color { width: 100%; padding-right: 0; }
    .bg-brown.height-100 { height: 50%; }
    .presidentMessage-bg { background-position-y: 20px; }
    .presidentMessage-bg .col-sm-6 { background-color: rgba(255,255,255, 0.6); }
    .presidentMessage-bg .col-sm-6:last-child { padding: 0 30px; }
    .presidentMessage-left { width: 100%; }
    .padding-20-left { padding-left: 30px; }
    .presidentMessage-left h1, .presidentMessage-left h3 { text-shadow: 2px 2px 2px rgba(0,0,0,0.8); }
    .presidentMessage-bg p { text-shadow: 1px 1px 1px rgba(222, 220, 220, 0.8); font-weight: 700; }
    .footer .vcenter { width: 50%; }
	 #servicos .h-fix { width:100%; }
	 #guimaraes .h-fix { width:100%; }
	 .custom-modal:not(#news-modal) h1:after {     content: ""; }

	 
	 /*
	 .owl-carousel .owl-controls .owl-nav .owl-prev, .owl-carousel .owl-controls .owl-nav .owl-next { display:none !important; }
	 #owl-carousel2 .owl-controls .owl-nav .owl-prev, #owl-carousel2 .owl-controls .owl-nav .owl-next { display:none !important; }
	 #owl-carousel3 .owl-controls .owl-nav .owl-prev, #owl-carousel3 .owl-controls .owl-nav .owl-next { display:none !important; }
	 */
	 
	#acig .vcenter { padding-left:20px; padding-right:20px; }
	#actividades .vcenter { padding-right:20px; padding-left:20px; }
	#servicos .vcenter { padding-right:20px; padding-left:20px; }
	#guimaraes .vcenter { padding-right:20px; padding-left:20px; }
	ul.navigation { display:none; }
}

@media screen and (max-width: 740px) {
    .news .page-content { padding: 30px 45px 0; }
    .section:not(#banner), #associados .page-content, #acig .page-content, #servicos .page-content { min-height: initial; }
    .copyright .text-right { text-align: center; }
}

@media screen and (max-width: 530px) {
    .footer ul { text-align: center; }
    .footer .vcenter { width: 100%; text-align: center; }
    .footer .vcenter:first-child { margin-bottom: 10px; }

    .header { display: none; }

    /* Off-Canvas Navigation */
    #page-wrapper {
        -moz-backface-visibility: hidden;
        -webkit-backface-visibility: hidden;
        -ms-backface-visibility: hidden;
        backface-visibility: hidden;
        -moz-transition: -moz-transform 0.5s ease;
        -webkit-transition: -webkit-transform 0.5s ease;
        -ms-transition: -ms-transform 0.5s ease;
        transition: transform 0.5s ease;
        padding-bottom: 0;
        padding-top: 44px !important;
    }

    #titleBar {
        -moz-backface-visibility: hidden;
        -webkit-backface-visibility: hidden;
        -ms-backface-visibility: hidden;
        backface-visibility: hidden;
        -moz-transition: -moz-transform 0.5s ease;
        -webkit-transition: -webkit-transform 0.5s ease;
        -ms-transition: -ms-transform 0.5s ease;
        transition: transform 0.5s ease;
        display: block;
        height: 44px;
        left: 0;
        position: fixed;
        top: 0;
        width: 100%;
        z-index: 9998;
        background: #603701;
        box-shadow: 0 0.125em 0.125em 0 rgba(0, 0, 0, 0.125);
    }

    #titleBar .title {
        color: #ffffff;
        display: block;
        font-weight: 300;
        height: 44px;
        line-height: 44px;
        text-align: center;
    }

    #titleBar .title a {
        color: inherit;
        border: 0;
    }

    #titleBar .toggle {
        text-decoration: none;
        height: 60px;
        left: 0;
        position: absolute;
        top: 0;
        width: 90px;
        outline: 0;
        border: 0;
    }

    #titleBar .toggle:before {
        -moz-osx-font-smoothing: grayscale;
        -webkit-font-smoothing: antialiased;
        font-family: FontAwesome;
        font-style: normal;
        font-weight: normal;
        text-transform: none !important;
    }

    #titleBar .toggle:before {
        background: #a06a00;
        color: rgba(255, 255, 255, 0.5);
        content: '\f0c9';
        display: block;
        font-size: 18px;
        height: 44px;
        left: 0;
        line-height: 44px;
        position: absolute;
        text-align: center;
        top: 0;
        width: 54px;
    }

    #navPanel {
        -moz-backface-visibility: hidden;
        -webkit-backface-visibility: hidden;
        -ms-backface-visibility: hidden;
        backface-visibility: hidden;
        -moz-transform: translateX(-275px);
        -webkit-transform: translateX(-275px);
        -ms-transform: translateX(-275px);
        transform: translateX(-275px);
        -moz-transition: -moz-transform 0.5s ease;
        -webkit-transition: -webkit-transform 0.5s ease;
        -ms-transition: -ms-transform 0.5s ease;
        transition: transform 0.5s ease;
        display: block;
        height: 100%;
        left: 0;
        overflow-y: auto;
        position: fixed;
        top: 0;
        width: 275px;
        z-index: 10002;
        background: #603701;
        padding: 0.75em 1.25em;
    }

    #navPanel .link {
        border: 0;
        border-top: solid 1px rgba(255, 255, 255, 0.05);
        color: rgba(255, 255, 255, 0.75);
        display: block;
        height: 3em;
        line-height: 3em;
        text-decoration: none;
    }

    #navPanel .link:hover {
        color: inherit !important;
    }

    #navPanel .link:first-child {
        border-top: 0;
    }

    #navPanel .link.depth-0 {
        color: #ffffff;
        font-weight: 300;
    }

    #navPanel .link .indent-1 {
        display: inline-block;
        width: 1.25em;
    }

    #navPanel .link .indent-2 {
        display: inline-block;
        width: 2.5em;
    }

    #navPanel .link .indent-3 {
        display: inline-block;
        width: 3.75em;
    }

    #navPanel .link .indent-4 {
        display: inline-block;
        width: 5em;
    }

    #navPanel .link .indent-5 {
        display: inline-block;
        width: 6.25em;
    }

    body.navPanel-visible #page-wrapper {
        -moz-transform: translateX(275px);
        -webkit-transform: translateX(275px);
        -ms-transform: translateX(275px);
        transform: translateX(275px);
    }

    body.navPanel-visible #titleBar {
        -moz-transform: translateX(275px);
        -webkit-transform: translateX(275px);
        -ms-transform: translateX(275px);
        transform: translateX(275px);
    }

    body.navPanel-visible #navPanel {
        -moz-transform: translateX(0);
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0);
    }
}