/*
Theme Name: AUSTRA
Template: oceanwp
Author: SOLADVANCE - Sistemas Informáticos
Author URI: https://soladvance.pt
Version: 1.0.1786363332
Updated: 2026-08-10 12:02:12

*/

/* ###  FONT  ### */

/* Normal */
@font-face {
  font-family: 'Montserrat';
  src: url('/wp-content/themes/austra/font/montserrat-variablefont_wght.woff2') format('woff2');
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}

/* Italic */
@font-face {
  font-family: 'Montserrat';
  src: url('/wp-content/themes/austra/font/montserrat-italic-variablefont_wght.woff2') format('woff2');
  font-weight: 100 900;
  font-style: italic;
  font-display: swap;
}

/* Aplicar globalmente */
body {
  font-family: 'Montserrat', sans-serif;
}

em {
  font-style: italic;
}

#content-wrap {
	font-size:16px;
}

/* ###  FONT (END)  ### */


/* ###  GENERAL  ### */

.page-header {
    background-image: linear-gradient(to bottom, #f5f5f5, #fff);
}

body:not(.home) h2:not(:first-child) {
	margin-top:50px;    
}

#main #content-wrap {
    padding-top: 0;
    padding-bottom: 0;
	min-width:100%;
}

#main h2::after {
    content:"";
	display:block;
	width:100px;
	height:2px;
	background: #8ab63b;
    margin-top: 10px;
}

#main .blue h2::after {
	background: #025b8e;
}

#main ul i {
    background: #8ab63b;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    color: #fff;
    font-size: 1.7em;
    margin-left: -18px;
    display: flex !important;
    align-items: center;
    justify-content: center;
}

#main #main ul.big i {
    width: 50px;
    height: 50px;
    font-size: 2em;
    margin-left: -27px;
}

#main ul.blue i {
    background: #025b8e;
}

#main ul li .elementor-icon-list-icon:not(#main .nobkgicon ul li .elementor-icon-list-icon, #main #cta ul li .elementor-icon-list-icon), #main .elementor-icon-box-icon {
    background: #8ab63b;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
	margin-right:20px;
}

#main .blue ul li .elementor-icon-list-icon, #main .blue .elementor-icon-box-icon {
    background: #025b8e !important;	
}

#main ul li .elementor-icon-list-icon > svg, #main .elementor-icon-box-icon .elementor-icon > svg {
    width: 30px;
    height: 30px;
}

#main .nobkgicon ul li .elementor-icon-list-icon > svg {
	width:15px;
	height:20px;
	fill:#ccc;
}

#main ul li.elementor-icon-list-item h3 {
	margin:0;
}

div#form {
    border: solid 1px #ddd;
    border-top: solid 7px #8AB63B;
    border-radius: 10px;
    padding: 20px 20px 0;
    box-shadow: 0 0 15px #00000021;
}

@media (max-width: 1281px) {
	.bkgimageblock::before {
		--overlay-opacity: 0.8 !important;
	}
}

@media (max-width: 1025px) {
	.bkgimageblock {
		background-image: unset !important;
	}
}

@media (max-width: 767px) {
    body .elementor-widget-icon-box.elementor-mobile-position-block-start .elementor-icon-box-wrapper {
        flex-direction: row;
        text-align: start;
    }
}

/* ###  GENERAL (END)  ### */


/* ###  HOME  ### */

@media (max-width: 821px) {
	#hero::before {
		background-color: transparent;
		background-image: linear-gradient(0deg, #FFFFFF 50%, #FFFFFF00 100%);
	}
}

#hero h1 {
    font-size: 2em;
    font-weight: 200;
	line-height:1.2em;
	max-width: 800px;
	margin-bottom:30px;
}

span.austra {
    display: block;
    font-size: 2em;
    font-weight: 700;
	margin-bottom:.2em;
}

#hero h2 {
    font-size: 1.5em;
}

.first h2 {
    color: #164532;
}

.second h2 {
    color: #8ab63b;
	margin-top:10px;
}

#hero .elementor-divider {
    margin: 30px 0;
}

#hero p {
    max-width: 400px;
    font-size: 1.2em;
    line-height: 1.5em;
    color: #164532;
}

#main #hero h2::after {
    display:none;
}

#aboutus .left h2{
	font-size:2.2em;
}

#aboutus .left p{
	font-size:1.2em;
}

#aboutus .left .greybox p{
	font-size:1em;
}

#aboutus img{
	border-radius:5px;
}

#aboutus .right a {
	color:#8AB63B;
}

#aboutus .right a:hover {
	color:#025B8E;
}

#aboutus .right a::after {
	font-family:"FontAwesome";
	content:"\f061";
	margin-left:20px;
}

#cta ul li .elementor-icon-list-icon {
    background: none;
    width: unset;
    height: unset;
    margin: 0;
}

#cta .water a {
	color:#fff;
}

#cta .water a:hover {
	color:#ffffff99;
}

#cta .water a.phone::after {
	content:'Chamada para rede fixa nacional';
	position:absolute;
	top:25px;
	left:2px;
	font-size:.5em;
}

#cta h2 {
	font-size:2em;
}

#cta h3 {
	font-size:1.5em;
}

/* ###  HOME (END)  ### */


/* ###  ACTIVITIES  ### */

#otheractivity a::after {
	font-family:"FontAwesome";
	content:"\f061";
	margin-left:20px;
}

#otheractivity.aterro a {
	color:#8AB63B;
}

#otheractivity.aterro a:hover {
	color:#025B8E;
}

#otheractivity.sirecro a {
	color:#025B8E;
}

#otheractivity.sirecro a:hover {
	color:#8AB63B;
}

#main #sirecroprocess ol {
    list-style: none;
    padding: 0;
    position: relative;
}

/* Linha vertical */
#main #sirecroprocess ol::before {
    content: "";
    position: absolute;
    top: 20px;
    bottom: 70px;
    left: 20px;

    width: 2px;
    background: #999;
}

/* Cada etapa */
#main #sirecroprocess ol li {
    position: relative;
    padding: 0 0 15px 50px;
}

/* Remove espaço no último */
#main #sirecroprocess ol li:last-child {
    padding-bottom: 0;
}

/* Círculo + número */
#main #sirecroprocess ol li::before {
    content: counter(list-item);

    position: absolute;
    top: 0;
    left: 0;

    width: 40px;
    height: 40px;

    border-radius: 50%;
    background: #999;
    color: #fff;

    display: flex;
    align-items: center;
    justify-content: center;

    font-weight: 700;
    font-size: 16px;
    line-height: 1;

    z-index: 1;
}

/* Título */
/*
#main #sirecroprocess ol li strong {
    display: block;
    margin-bottom: 5px;
    font-size: 18px;
}
*/

/* ###  ACTIVITIES (END)  ### */


/* ###  RESTRICTED AREA  ### */

.w3eden.wpdm-auth-page .wpdm-auth-brand img {
    max-width: 325px;
	width:100%;
    height: auto;
	filter: brightness(0) saturate(100%) invert(100%) sepia(90%) saturate(164%) hue-rotate(253deg) brightness(105%) contrast(100%);
}

@media (min-width: 1281px) {
	.associados-page .content-area {
		background-image: url(/wp-content/uploads/2026/09/associados-bkg.jpg);
		background-position: center left;
		background-repeat: no-repeat;
		background-size: contain;
	}
}

#main #rarea .toolbar .elementor-element .elementor-icon-box-wrapper {
    gap: 5px;
}

#main #rarea .toolbar .elementor-icon-box-icon {
    background: #ccc;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
	margin:auto;
}

#main #rarea .toolbar .elementor-icon-box-icon:hover {
    background: #025b8e;	
}

#main #rarea .toolbar .elementor-icon-box-icon .elementor-icon > svg {
    width: 20px;
    height: 20px;
}

#main #rarea .toolbar p {
	font-size:0.7em;
	margin:0;
	padding:0;
}

.menu-associados > .menu-item-has-children > a {
    display: flex;
    align-items: center;
}

.menu-associados > .menu-item-has-children > a::before {
    content: "\f0c9";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    margin-right: 10px;
}

.menu-associados > .menu-item-has-children > a::after {
    content: "\f078";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    margin-left: auto;
    font-size: 0.8em;
    transition: transform 0.3s ease;
	margin-left:10px;
}

/*
.menu-associados > .menu-item-has-children:hover > a::after {
    transform: rotate(180deg);
}
*/

.menu-associados {
    list-style: none;
    margin: 0;
    padding: 0;
}

.menu-associados > li {
    position: relative;
}

/* Submenu escondido */
.menu-associados .sub-menu {
    display: none;
    list-style: none;
    margin: 0;
    padding: 10px 0 0;

    position: absolute;
    top: 100%;
    left: 0;

    min-width: 250px;
    background: #fff;

    z-index: 999;
	
	border-top: solid 3px #8ab63b;
	border-radius:5px;
	
	webkit-box-shadow: 0 2px 6px rgba(0, 0, 0, .2);
    -moz-box-shadow: 0 2px 6px rgba(0,0,0,.2);
    box-shadow: 0 2px 6px rgba(0, 0, 0, .2);
}

/* Mostrar ao passar o rato */
.menu-associados li:hover > .sub-menu {
    display: block;
	text-align:left;
}

.menu-associados .sub-menu li {
    margin: 0;
	border-bottom: 1px solid #f1f1f1;
}

.menu-associados .sub-menu li:last-of-type {
	border:0;
}

.menu-associados .sub-menu a {
    display: block;
    padding: 10px 20px;
    white-space: nowrap;
}

.w3eden .well.c2a3 {
    background: #fff;
    border: solid 1px #ddd;
}

.w3eden span.text-muted {
    display: block;
    margin-top: 10px;
}

.single-wpdmpro #content {
	max-width:1200px;
	margin:auto;
}

.single-wpdmpro .w3eden h1, .single-wpdmpro h2 {
	display:none;
}

/*
.w3eden .row {
    display: flex;
    flex-wrap: wrap;
    margin-right: -15px;
    margin-left: -15px;
    flex-direction: column-reverse;
}
*/

.single-wpdmpro .w3eden .col-md-5, .single-wpdmpro .w3eden .col-md-7 {
	width:100%;
}

.single-wpdmpro .w3eden .col-md-7 {
	text-align:right;
}

.single-wpdmpro .menu-menu-associados-container {
    float: left;
}

.single-wpdmpro .w3eden .col-md-7 .menu-associados > .menu-item-has-children > a::before {
    content: "\f0c9";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    margin-right: 10px;
}

.single-wpdmpro .w3eden .col-md-7 .menu-associados .sub-menu a::before {
	content:'';
}

.single-wpdmpro .w3eden .col-md-7 a:first-of-type::before {
	content:'\f00a';
	font-family: "FontAwesome";
}

.single-wpdmpro .w3eden .col-md-7 a:nth-of-type(2)::before {
	content:'\f007';
	font-family: "FontAwesome";
	margin-left:20px;
}

.single-wpdmpro .w3eden .col-md-7 a:nth-of-type(3)::before {
	content:'\f2f5';
	font-family: "FontAwesome";
	margin-left:20px;
	margin-right:5px;
}

.single-wpdmpro .w3eden .wpdm-exhibit__description {
	margin-bottom:30px;
}

.single-wpdmpro .w3eden .wpdm-exhibit__cta {
    margin-bottom: 0;
}

@media (max-width: 991px) {
	.w3eden .media {
		flex-wrap: wrap;
		align-items: flex-start;
	}

	/* Ícone fixo, nunca encolhe nem quebra */
	.w3eden .media .mr-3 {
		flex: 0 0 auto;
	}

	/* Texto cabe sempre ao lado do ícone */
	.w3eden .media .media-body {
		flex: 1 1 0;      /* base 0 + crescimento = cabe ao lado do ícone */
		min-width: 0;
	}

	/* Botão em linha própria, por baixo */
	.w3eden .media .ml-3[align="right"] {
		flex: 0 0 100%;
		max-width: 100%;
		text-align: right;
		margin-top: 8px;
	}
}

button#wpdm-mobile-toggle::before {
    content: 'Menu de Perfil  >';
    width: max-content;
    position: absolute;
    right: 30px;
    background: #4a8eff;
    padding: 10px 30px 10px 20px;
    border-radius: 7px;
    font-family: 'Montserrat';
}

.wpdm-exhibit.filepage {
    padding: 20px;
}

@media (max-width: 539px) {
	.single-wpdmpro .w3eden .col-md-7 {
		text-align: right;
		display: flex;
		flex-direction: column-reverse;
	}
	.functionlinks {
		text-align: center;
		margin-bottom:20px;
	}
	.single-wpdmpro .w3eden .col-md-7 a:nth-of-type(2)::before {
		margin-left: 10px;
	}
	.single-wpdmpro .w3eden .col-md-7 a:nth-of-type(3)::before {
		margin-left: 10px;
		margin-right: 3px;
	}
	.w3eden .filepage .wpdm-exhibit__cta {
		padding: 15px;
	}
	.w3eden .filepage .wpdm-exhibit__cta .btn, .w3eden .wpdm-exhibit__cta a.btn, .w3eden .wpdm-exhibit__cta form .btn, .w3eden .wpdm-exhibit__cta .wpdm-download-link .btn {
		font-size: 12px;
		padding: 12px 20px;
	}
}

/* ###  RESTRICTED AREA (END)  ### */


/* ###  FORMS  ### */

.col-100 {
    display: block;
    width: 100% !important;
    padding: 0 0 20px;
}

.col-100.message-box {
    padding: 0;
}

.col-100.gdpr-consent {
    padding: 0;
    font-size: .7em;
}

.col-50-left, .col-50-right {
    display: block;
    width: 50% !important;
    float: left;
}

.contact-form .col-50-left {
    clear: both;
    padding: 0 10px 20px 0;
}

.contact-form .col-50-right {
    padding: 0 0 20px 10px;
}

@media (max-width: 560px) {
	.col-50-left, .col-50-right {
		width: 100% !important;
		float: none;
		padding: 0 0 20px 0 !important;
	}
}

.contact-form .col-100 p {
    clear: both;
}

.contact-form p {
    margin: 0;
}

.contact-form span {
    padding: 10px 0;
}

.contact-form span input:not(.wpcf7-file), .contact-form span textarea, .wpcf7-form span select {
    font-weight: 400;
    font-size: 16px !important;
    border: 1px solid #d9d9d9;
    color: #000 !important;
    background-color: #fff !important;
}

body.page #main .wpcf7 .wpcf7-form-control:not(.wpcf7-submit):not(.wpcf7-checkbox):not(.wpcf7-radio):not(.wpcf7-textarea) {
    height: 40px;
    padding: 0 0 0 10px !important;
}

form textarea {
    min-height: 100px;
}

.contact-form ::placeholder {
    font-weight: 300;
    font-size: 14px;
    color: #777;
}

.contact-form ::-webkit-input-placeholder {
    font-weight: 300;
    font-size: 14px;
    color: #777;
}

.contact-form :-ms-input-placeholder {
    font-weight: 300;
    font-size: 14px;
    color: #777;
}

.contact-form ::-moz-placeholder {
    font-weight: 300;
    font-size: 14px;
    color: #777;
}

.contact-form :-moz-placeholder {
    font-weight: 300;
    font-size: 14px;
    color: #777;
}

#contacts-area form textarea {
    max-height: 120px;
}

.page .elementor-container .wpcf7 .wpcf7-form-control-wrap span.wpcf7-form-control.wpcf7-acceptance {
    padding-left: 0 !important;
}

.wpcf7-acceptance span.wpcf7-list-item {
    margin: 0;
}

.cv-file {
    width: calc(50% - 10px) !important;
    margin-left: 10px;
    border: 1px solid #d9d9d9;
    height: 52px;
}

.cv-file label {
    font-weight: 300;
    font-size: 14px;
    color: #777 !important;
    margin-top: -4px;
}

.cv-warning {
    font-size: 12px;
    color: #aaa;
}

.cv-file span.wpcf7-form-control-wrap {
    display: flex;
    margin-left: -10px;
    margin-top: -35px;
}

.wpcf7 .wpcf7-submit {
    font-weight: 600;
    font-size: 1em;
    border: 0;
    color: #fff;
    text-transform: uppercase;
    background-color: #8ab63b;
}

.wpcf7 .wpcf7-submit:hover {
    background-color: #6B8D2E;
}

.wpcf7 .wpcf7-submit:disabled {
    background-color: #8ab63bb3;
    cursor: not-allowed;
}

.page .wpcf7 .wpcf7-form-control:not(.wpcf7-submit):not(.wpcf7-checkbox):not(.wpcf7-radio) {
    padding: 7px 10px !important;
}

.wpcf7-not-valid-tip {
    font-family: Montserrat;
    font-weight: 600;
    display: inline-block;
    font-size: .7em;
    text-align: right;
    padding-left: 5px !important;
    position: absolute;
    padding-top: 0 !important;
    padding-right: 5px !important;
    padding-right: 1em;
    padding-bottom: 0 !important;
    color: #e35f62 !important;
    overflow: hidden;
    right: 0;
    top: -15px;
}

#contacts-area .message-box .wpcf7-not-valid-tip {
    top: -55px;
}

.cv-file .wpcf7-not-valid-tip {
    font-family: Montserrat;
    font-weight: 600;
    display: inline-block;
    font-size: .75em;
    text-align: right;
    padding-left: 5px !important;
    position: absolute;
    padding-top: 0 !important;
    padding-right: 5px !important;
    padding-right: 1em;
    padding-bottom: 0 !important;
    color: #e35f62 !important;
    overflow: hidden;
    right: 0;
    top: 15px;
}

.wpcf7 form .wpcf7-response-output {
    margin: 0 auto 10px;
}

.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output {
    font-weight: 600;
    text-align: center;
    border: 0;
    color: #fff;
    background-color: #ff8401;
}

.wpcf7 form.sent .wpcf7-response-output {
    font-weight: 600;
    font-size: 1.5em;
    text-align: center;
    border: 0;
    color: #fff;
    text-transform: uppercase;
    background-color: #19a777;
}

button .fa-chevron-right {
    vertical-align: middle;
    margin-left: 1em;
}

.acceptance {
    font-size: .7em;
    margin-top: -20px;
    line-height: 1.7em;
}

.codedropz-upload-inner h3 {
    font-size: 1.5em;
}

/* ###  FORMS (END)  ### */


/* ###  FOOTER  ### */

.site-footer {
    border-top: solid 1px #ddd;
}

@media (min-width: 481px) {
	#footer-widgets .col-1 {
		width: 30%;
	}

	#footer-widgets .col-2 {
		width: 70%;
	}
}

@media only screen and (min-width: 481px) and (max-width: 768px) {
    #footer-widgets.tablet-2-col .footer-box {
        width: initial !important;
    }
}

@media (max-width: 480px) {
	#footer-widgets figure.alignleft {
		float:none;
		text-align:center;
	}
}

#footer-widgets .footer-box .footer-widget ul {
    display: inline-flex;
}

@media (max-width: 913px) {
	#footer-widgets .footer-box .footer-widget ul {
		flex-direction: column;
	}
}

.custom-menu-widget .oceanwp-custom-menu>ul>li {
    border-bottom: none !important;
	padding:0 15px;
}

#footer #footer-bottom-menu li::before {
    content: 'by';
    margin-right: 3px;
    font-family: inherit;
    padding: inherit;
    font-weight: inherit;
}

/* ###  FOOTER (END)  ### */