@charset "UTF-8";
:before,:after,html *{-webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;-moz-osx-font-smoothing: grayscale; /*(For Firefox)*/-webkit-font-smoothing: antialiased; /*(For Chrome and Safari)*/}
.clearfix:after,
.clear{clear: both;display: block;height: 0;width: 100%;float: none !important;}
.clearfix:after{content: '';}
input::-moz-focus-inner /*Remove button padding in FF*/{ border: 0;padding: 0;}
a{text-decoration: none;outline: 0 !important;}
a:hover{color: inherit;text-decoration: none;}
img{max-width: 100%;vertical-align: top;}
*:focus ,
textarea,
input,
textarea:focus, input:focus{outline: none;border-radius: 0}
input[type=number]::-webkit-outer-spin-button,
input[type=number]::-webkit-inner-spin-button {-webkit-appearance: none !important;margin: 0;}
input[type=number] {-moz-appearance:textfield !important;}
input::placeholder{ 
	color: #cacdc8;
	opacity:1;
}
textarea::placeholder{ 
	color: #cacdc8;
	opacity: 1;
}
::-moz-placeholder {
	opacity: 1;
}
.cvr-bg-bf:before,
.cvr-bg-af:after,
.cvr-bg{
	background-repeat: no-repeat;
	background-position: center top;
	background-attachment: scroll;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
}
.cvr-bg-bf:before,
.cvr-bg-af:after{
	content: '';
	display: inline-block;
        vertical-align: middle;
}
body{
        background: #f5f5e9;
        color: #58595b;
	font-size: 16px;
	font-family: 'Raleway';
	font-weight:  400;
	position: static;
	overflow-y:auto
}
.wrapper{
	width: 100%;
	margin: 0 auto;
	max-width: calc(1366px + 7.8vw);
	padding-left: 3.9vw;
	padding-right: 3.9vw;

}

.rowflex{
	display: flex;
	flex-wrap: wrap;
}
.rowflex > *{
	flex: 1;
}
.format-text{
	line-height: 150%;
	font-size: 16px;
}
.format-text > *{
	margin-top: 30px;
}
.format-text > *:first-child{
	margin-top: 0;
}
.format-text b,
.format-text strong{
	font-weight: 700;
}
.format-text em,
.format-text i:not(.fa){
	font-style: italic;
}
.format-text h1,
.format-text h2,
.format-text h3,
.format-text h4,
.format-text h5,
.format-text h6{
	color: #1a4120;
	font-weight: 500;
	line-height: 140%;
	font-family: 'Playfair Display';
}
.format-text h1{
	font-size: 70px;
}
.format-text h2{
	font-size: 60px;
}
.format-text h3{
	font-size: 40px;
}
.format-text h4{
	font-size: 30px;
}
.format-text h5{
	font-size: 20px;
}
.format-text h6{
	font-size: 16px;
}
.format-text h1 + *,
.format-text h2 + *,
.format-text h3 + *,
.format-text h4 + *,
.format-text h5 + *,
.format-text h6 + *{
	margin-top: 10px;
}
.format-text a:not(.button){
	color: #1a4120;
	font-weight: 500;
}
.format-text a:not(.button):hover{
	text-decoration: underline;
}
.format-text ul{
	list-style: disc;
	padding-left: 22px;
}
.format-text ul li,
.format-text ol li{
	padding-bottom: 10px;
}
.format-text ol{
	list-style: decimal;
}
.format-text ol{
	padding-left: 20px;
}
.format-text sup{
	color: #d90000;
	position: relative;
	top: 0;
	line-height: 100%;
}
.format-text blockquote{
	font-size: 18px;
	font-style: italic;
	line-height: 160%;
	color: #817F85;
}

.menu li.btn > a,
.button{
	/* Remove First */
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	outline: none;
	border-radius: 5px;
	display: inline-block;
	color: #58595b;
	background: rgba(0,0,0,0);
	font-family: 'Raleway';
	font-weight: 400;
	font-size: 16px;
	height: 30px;
	line-height: 28px;
	padding: 0 15px;
	text-align: center;
	cursor: pointer;
	border: 1px solid #898a88;
	outline: none !important;
	transition:all 0.2s ease-in;
}

.button:active,
.button:focus{
	border-radius: 5px;
}
.menu li.btn > a:hover,
.button:hover{
	color: #fff;
	background: #1a4120;
	border: 1px solid #1a4120;
}
.accord{
	display: flex;
	flex-wrap: wrap;
	border: 1px solid #7f807f;
	border-left: none;
	border-radius: 0 25px 25px 0;
}
.expander >*,
.accord >*{
	flex: 50%;
	max-width: 50%;
}
.accord > ul{
	border-right: 1px solid #7f807f;
}
.accord > ul a{
	display: block;
	position: relative;
	color: #1a4120;
	font-size: 38px;
	font-family: 'Playfair Display';
	padding: 22px 100px 28px 30px;
	border-bottom: 1px solid #7f807f;
	background: rgba(255,255,255,0);
	transition:all 0.2s ease;
}
.accord > ul a.current,
.accord > ul a:hover{
	background: #19411f;
	border-color: #19411f;
	color: #fff;
}
.accord > ul li:last-child a{
	border: none;
}
.accord > ul a:after{
	display: block;
	position: absolute;
	right: 50px;
	top: 50%;
	-ms-transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	width: 30px;
	height: 28px;
	background-image: url(../img/icon/arrow-green2.png);
	transition:all 0.2s ease;
	filter: none;
}
.accord > ul a.current:after,
.accord > ul a:hover:after{
	filter: brightness(0) invert(1);
}
.accord .holder{
        padding: 35px 60px;
}
.accord .format-text{
	font-weight: 500;
	max-width: 480px;
	line-height: 160%;
	font-size: 17px;
}
.accord .item{
	display: none;
}
.expander{
	display: flex;
	flex-wrap: wrap;
	background: #19411f;
	border-radius: 25px;
	color: #fff;
	padding: 40px 0 60px 30px;
	min-height: 470px;
}
.expander > ul li{
	display: block;
	margin: 0 0 28px;
	line-height: 100%;
}
.expander > ul li:last-child{
	margin: 0;
}
.expander > ul a{
	display: inline-block;
	position: relative;
	color: #fff;
	font-size: 20px;
	text-transform: uppercase;
	line-height: 100%;
	padding-right: 45px;
	min-width: 260px;
}
.expander > ul a.current{
	font-weight: 700;
}
.expander .item{
	display: none;
}
.expander > ul a:after{
	position: absolute;
	right: 0;
	top: 2px;
	width: 16px;
	height: 15px;
	background-image: url(../img/icon/arrow-white2.png);
	transition:right 0.2s ease;
}
.expander > ul a:hover:after{
	right: -5px;
}
.xchild{
	padding: 15px 0;
	border-top: 1px solid #fff;
	border-bottom: 1px solid #fff;
}
.xchild ~ .xchild{
	border-top: none;
}
.xchild h3{
	font-size: 20px;
	line-height: 130%;
	position: relative;
	cursor: pointer;
	-webkit-user-select: none; /* Safari */        
	-moz-user-select: none; /* Firefox */
	-ms-user-select: none; /* IE10+/Edge */
	user-select: none; /* Standard */
	padding: 0 70px 0 15px;
}
.xchild h3:before,
.xchild h3:after{
	display: block;
	position: absolute;
	background: #fff;
	content: '';
	transition:all 0.2s ease;
	transform: rotate(0deg);
}
.xchild h3:before{
	width: 12px;
	height: 2px;
	right: 50px;
	top: 11px;
}
.xchild h3:after{
	width: 2px;
	height: 12px;
	right: 55px;
	top: 6px;
}
.xchild.active h3:after{
	transform: rotate(90deg);
}
.xchild .format-text{
	padding: 15px 15px 50px;
	border-top: 1px solid #fff;
	margin: 15px 0 0;
	display: none;
}
/*.xchild.active .format-text{
	display: block;
}
*/
/** HEADER **/
#top{
        overflow: hidden;
	background: #f5f5e9;
	position: fixed;
	z-index: 999;
	left: 0;
	top: 0;
	width: 100%;
	padding: 0 0 20px;
}
#top .logo,
#top .menu{
        flex: 50%;
        max-width: 50%;
}
#top .rowflex{
        border-bottom: 1px solid #a7a7a2;
        border-right: 1px solid #a7a7a2;
        border-radius: 0 0 20px 0;
}
#top .logo{
        padding-bottom: 15px;
	padding-top: 15px;
}
#top .menu{
        border-left: 1px solid #a7a7a2;
}
.menu .top{
        border-bottom: 1px solid #a7a7a2;
        padding: 20px 20px 8px;
}
.menu li{
        display: inline-block;
        vertical-align: middle;
        margin-right: 20px;
        position: relative;
}
.menu li:last-child{
        margin: 0;
}
.menu li.btn{
        float: right;
        position: relative;
        top: -5px;
}
.menu li:not(.btn) > a{
        color: #58595b;
        font-size: 16px;
        display: inline-block;
        position: relative;
}
.menu li:not(.btn):not(.current-menu-item) > a:after{
        display: block;
        position: absolute;
        left: 50%;
        bottom: -3px;
        width: 0;
        height: 1px;
        content: '';
        background: #58595b;
        transition:all 0.2s ease;
}
.menu li:not(.btn):not(.current-menu-item):hover > a:after,
.menu li:not(.btn):not(.current-menu-item) > a:hover:after{
        width: 100%;
        left: 0;
}
.menu ul#menu-header-menu > li.current-menu-item > a{
        color: #1a4120;
        font-weight: 700;
}
.menu li ul{
        position: absolute;
        display: block;
        left: 0;
        width: 50vw;
        padding: 35px 0 0;
        opacity: 0;
        visibility: hidden;
        transition:all 0.2s ease;
}
.menu li:hover > ul,
.menu li.current-menu-item > ul{
        opacity: 1;
        visibility: visible;
}
.menu li ul li{
        display: inline-block;
}
#body{
	padding-top: 138px;
}
/** FOOTER **/
#bottom{
        background: #19411f;
        color: #fff;
}
.footer-widget{
        padding: 30px 0 35px;
}
.footer-widget .rowflex{
        justify-content: space-between;
}
.footer-widget .widget{
        flex: 25%;
        max-width: 25%;
}
.footer-widget .widget-address{
        flex: 35%;
        max-width: 35%;
}
.footer-widget .widget-subs{
        flex: 30%;
        max-width: 30%;
}
.widget-address{
        font-size: 20px;
        font-family: 'Playfair Display';
        font-weight: 500;
        line-height: 130%;
}
.widget li{
        display: block;
        line-height: 170%;
}
.widget li a{
        color: #fff;
        font-size: 16px;
}
.widget li a:hover{
        text-decoration: underline;
}
.widget-subs .in{
        display: inline-block;
        width: 24px;
        height: 24px;
        background-image: url(../img/icon/in.png);
        opacity: 1;
        transition:opacity 0.2s ease-in;
        float: right;
        margin: 0 0 60px;
}
.widget-subs .in:hover{
        opacity: .7;
}
.widget-subs form{
	position: relative;
}
.widget-subs .wpcf7-spinner{
	position: absolute;
	right: 24px;
	bottom: 6px;
}
.widget-subs input[type='email']{
        -webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	outline: none;
	border-radius: 0;
	display: inline-block;
	width: calc(100% - 130px);
	background: rgba(0,0,0,0);
	color: #fff;
	border: none;
	font-size: 20px;
	font-family: 'Playfair Display';
	font-weight: 400;
	padding: 0 0 10px;
        border-bottom: 2px solid #fff;
        vertical-align: bottom;
        margin-right: 20px;
}
.widget-subs input[type='submit']{
        background: none;
        cursor: pointer;
        color: #fff;
        border: 2px solid #fff;
        line-height: 30px;
        font-family: 'Playfair Display';
        font-size: 20px;
        font-weight: 500;
        padding: 0px 15px 4px;
        display: inline-block;
        vertical-align: bottom;
        transition:all 0.2s ease-in;
}
.widget-subs input[type='submit']:hover{
        background: #0e2411;
        border: 2px solid #0e2411;
}
#bottom .tribute{
        padding: 0 0 25px;
	font-size: 12px;
}
#bottom .tribute p{
        float: right;
        font-weight: 300;
}
#bottom .tribute p:first-child{
        float: left;
}
.widget-address a,
#bottom .tribute p a{
        color: #fff;
}
.widget-address a:hover,
#bottom .tribute p a:hover{
        text-decoration: underline;
}
/** HOMEPAGE **/
.inner-page,
.inner-news,
.inner-porto,
.inner-about,
.inner-home{
        padding: 100px 0 130px;
}
.inner-news .list .wrapper > h3,
.inner-about .pillar .hentry h2,
.hero h1{
        color: #1a4120;
        font-size: 76px;
        font-family: 'Playfair Display';
        font-weight: 400;
        line-height: 110%;
}
.inner-about .pillar .hentry h2 em,
.inner-about .pillar .hentry h2 i,
.hero h1 em,
.hero h1 i{
        font-style: italic;
}
.hero figure{
        display: block;
        margin: 40px 0 0;
        height: 450px;
}
.hero figure img{
        width: 100%;
        height: 100%;
        object-fit: cover;
}
.hero .copy{
        margin: 40px 0 0;
        color: #1a4120;
        font-size: 38px;
        line-height: 140%;
        font-family: 'Playfair Display';
}
.inner-news .hero .copy .txt{
        max-width: 940px;
}
.inner-home .about{
        padding: 30px 0 50px;
}
.inner-home .porto .rowflex,
.inner-home .about .rowflex{
        justify-content: space-between;
}
.inner-home .porto h2,
.inner-home .about h2{
        flex: 30%;
        max-width: 30%;
        color: #58595b;
        font-size: 20px;
        text-transform: uppercase;
        padding-left: 25px;
}
.inner-home .porto h2{
        color: #fff;
        padding: 5px 0 0;
}
.inner-home .about .caption{
        flex: 50%;
        max-width: 50%;
        padding: 0 0 0 50px;
}
.inner-home .about .caption p{
        font-family: 'Playfair Display';
        color: #1a4120;
        font-size: 42px;
        line-height: 110%;
        font-weight: 400;
        margin: 0 0 40px;
}
.inner-home .about .caption p em,
.inner-home .about .caption p i{
        font-style: italic;
}
.inner-home .porto .rowflex{
        background: #19411f;
        border-radius: 25px;
        padding: 30px 0 40px 25px;
}
.inner-home .porto ul{
        flex: 50%;
        max-width: 50%;
}
.inner-home .porto ul a{
        color: #fff;
        font-size: 20px;
        text-transform: uppercase;
        display: block;
        position: relative;
        padding: 15px 70px 15px 160px;
        border-bottom: 1px solid #fff;
        line-height: 100%;
        position: relative;
        transition:all 0.2s ease;
}
.inner-home .porto ul a:hover{
        color: #19411f;
        border-color: #fff;
        background: #fff;
}
.inner-home .porto ul li:first-child a{
        border-top: 1px solid #fff;
}
.inner-home .porto ul a b{
        position: absolute;
        left: 45px;
        top: 48%;
        -ms-transform: translateY(-48%);
        -webkit-transform: translateY(-48%);
        transform: translateY(-48%);
}
.inner-home .porto ul a:after{
        display: block;
        position: absolute;
        right: 50px;
        top: 18px;
        width: 13px;
        height: 13px;
        background-image: url(../img/icon/arrow-green.png);
        transition:all 0.2s ease;
         filter: brightness(0) invert(1);
}
.inner-home .porto ul a:hover:after{
        filter: none;
}
.inner-home .navi{
        margin: 65px 0 0;
}
.inner-home .navi a{
        flex: 50%;
        max-width: 50%;
        height: 310px;
        padding: 0 0 30px 40px;
        border: 1px solid #898a88;
        color: #1a4120;
        font-size: 38px;
        display: flex;
        align-items: flex-end;
        position: relative;
        font-family: 'Playfair Display';
        font-weight: 400;
        transition:all 0.2s ease;
        background: rgba(255,255,255,0);
}
.inner-home .navi a:hover{
        background: #1a4120;
        border-color: #1a4120;
        color: #fff;
}
.inner-home .navi a:nth-child(odd){
        border-left: none;
        border-right: none;
}
.inner-home .navi a:nth-child(even){
        border-radius: 0 25px 25px 0;
}
.inner-home .navi a:after{
        display: block;
        position: absolute;
        right: 26px;
        top: 29px;
        width: 32px;
        height: 32px;
        background-image: url(../img/icon/arrow-green.png);
        transition:all 0.2s ease;
        filter: none;
}
.inner-home .navi a:hover:after{
        filter: brightness(0) invert(1);
}
/** ABOUT **/
.inner-about .copy{
        padding: 50px 0 0;
}
.inner-about .copy .rowflex{
        justify-content: space-between;
}
.inner-about .copy .rowflex > *{
        flex: calc(50% - 30px);
        max-width: calc(50% - 30px);
}
.inner-about .copy .quote{
        color: #1a4120;
        font-size: 38px;
        line-height: 130%;
        font-family: 'Playfair Display';
}
.inner-about .copy .format-text{
        font-weight: 500;
        font-size: 18px;
}
.inner-about .pillar{
        padding: 100px 0 0;
}
.inner-about .pillar .hentry{
        margin: 0 0 80px;
}
.inner-porto .comp h2,
.inner-about .team h2,
.inner-about .pillar .hentry span{
        display: block;
        color: #58595b;
        font-size: 20px;
        line-height: 100%;
        text-transform: uppercase;
        margin: 0 0 30px;
}
.inner-about .pillar .hentry h2{
        margin: 0 0 50px;
}
.inner-about .pillar .hentry .txt{
        color: #1a4120;
        font-size: 40px;
        line-height: 120%;
        font-family: 'Playfair Display';
}
.inner-about .team{
        padding: 100px 0 0;
}
.inner-about .team h2{
        margin: 0 0 40px;
        padding: 0 0 0 25px;
}
/** PORTO **/
.inner-porto .over{
        padding: 80px 0 0;
}
.inner-porto .over h2{
        display: block;
        -webkit-user-select: none; /* Safari */        
        -moz-user-select: none; /* Firefox */
        -ms-user-select: none; /* IE10+/Edge */
        user-select: none; /* Standard */
        font-family: 'Playfair Display';
        font-size: 38px;
        position: relative;
        background: #19411f;
        padding: 60px 85px 20px 17px;
        color: #fff;
        cursor: pointer;
        border-radius: 0 25px 0 0;
        line-height: 100%;
}
.inner-porto .over h2:after{
        display: block;
        position: absolute;
        right: 40px;
        bottom: 20px;
        width: 40px;
        height: 44px;
        background-image: url(../img/icon/arrow-white3.png);
	transition:all 0.3s ease;
	transform: rotate(0deg);
}
.inner-porto .over.active h2:after{
        transform: rotate(-180deg);
}
.inner-porto .over .holder{
        padding: 60px 35px 60px 40px;
        border: 1px solid #b1b1ab;
        border-left: none;
        border-radius: 0 0 25px 0;
        display: none;
}
/*.inner-porto .over.active .holder{
        display: block;
}*/
.inner-porto .over .txt{
        color: #1a4120;
        font-size: 38px;
        line-height: 140%;
        font-family: 'Playfair Display';
        max-width: 1000px;
}
.inner-porto .over .grid{
        border: 1px solid #b1b1ab;
        border-left: none;
        border-radius: 0 25px 25px 0;
        margin: 40px 0 0;
}
.inner-porto .over .grid > *{
        flex: 50%;
        max-width: 50%;
        border-top: 1px solid #b1b1ab;
        padding: 15px 80px 30px;
        text-align: center;
        color: #1a4120;
        font-family: 'Playfair Display';
        font-size: 38px;
        line-height: 130%;
}
.inner-porto .over .grid > *:nth-child(1),
.inner-porto .over .grid > *:nth-child(2){
        border-top: none;
}
.inner-porto .over .grid > *:nth-child(even){
        border-left: 1px solid #b1b1ab; 
}
.inner-porto .over table td:first-child,
.inner-porto .over .grid > * strong,
.inner-porto .over .grid > * b{
        color: #58595b;
        font-size: 20px;
        text-transform: uppercase;
        font-family: 'Raleway';
        font-weight: 400;
}
.inner-porto .over .tbl{
        margin: 45px 0 0;
}
.inner-porto .over table{
        width: 100%;
        border-collapse: separate;
        border-spacing: 0;
}
.inner-porto .over table th{
        background: #19411f;
        font-weight: 700;
        color: #fff;
        font-size: 20px;
        padding: 55px 35px 30px;
}
.inner-porto .over table td:first-child,
.inner-porto .over table th:first-child{
        text-align: left;
}
.inner-porto .over table th:last-child{
        border-radius: 0 25px 0 0;
}
.inner-porto .over table td{
        text-align: center;
        padding: 10px 35px;
        color: #1a4120;
        font-size: 38px;
        font-family: 'Playfair Display';
        border: 1px solid #939490;
        border-style: none solid solid none;
        vertical-align: middle;
        line-height: 100%;
}
.inner-porto .over table td:first-child{
        border-left: none;
}
.inner-porto .over table tr:last-child td:last-child{
        border-bottom-right-radius: 25px;
}
.inner-porto .comp{
        padding: 90px 0 0;
}
.inner-porto .comp h2{
        padding-left: 17px;
}
.inner-porto .comp .item{
        border-top: 1px solid #646566;
        border-right: 1px solid #646566;
        display: flex;
        flex-wrap: wrap;
        position: relative;
        overflow: hidden;
}
.inner-porto .comp .item > *{
        flex: 50%;
        max-width: 50%;
}
.inner-porto .comp .item:last-child{
        border-bottom: 1px solid #646566;
        border-radius: 0 0 25px 0;
}
.inner-porto .comp .item:first-child{
        border-radius: 0 25px 0 0 ;
}
.inner-porto .comp .item > .imgs{
        padding: 30px 70px 70px 17px;
}
.inner-porto .comp .item.active > .imgs{
        border-right: 1px solid #646566;
}
.inner-porto .comp .item:not(.active) > .imgs >*{
        display: none;
}
.inner-porto .comp .imgs figure{
        margin: 0 0 30px;
}
.inner-porto .comp .imgs figure:first-child{
        margin: 0 0 95px;
}
.inner-porto .comp h3{
        display: block;
        cursor: pointer;
        padding: 35px 40px 35px 50px;
        color: #1a4120;
        font-size: 38px;
        font-family: 'Playfair Display';
        font-weight: 400;
        line-height: 100%;
        transition:color 0.2s ease;
}
.inner-porto .comp .item:not(.active) h3:hover{
        color: #fff;
}
.inner-porto .comp h3:before{
        display: block;
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        z-index: 1;
        content: '';
        background: #19411f;
        opacity: 0;
        transition:all 0.2s ease;
}
.inner-porto .comp .item.active h3:before{
        display: none;
}
.inner-porto .comp .item:not(.active) h3:hover:before{
        opacity: 1;
}
.inner-porto .comp h3 span{
        display: block;
        position: relative;
        padding-right: 20px;
        z-index: 2;
}
.inner-porto .comp h3 span:before,
.inner-porto .comp h3 span:after{
        display: block;
        position: absolute;
        content: '';
        background: #1a4120;
        transition:all 0.2s ease;
}
.inner-porto .comp h3 span:before{
        width: 20px;
        height: 2px;
        right: 0;
        top: 17px;
}
.inner-porto .comp h3 span:after{
        height: 20px;
        width: 2px;
        right: 9px;
        top: 8px;
}
.inner-porto .comp .item.active h3 span:after{
        transform: rotate(-90deg);
}
.inner-porto .comp .holder{
        padding: 5px 40px 40px 50px;
        display: none;
}
.inner-porto .comp .item:not(.active) h3:hover span:after,
.inner-porto .comp .item:not(.active) h3:hover span:before{
        background: #fff;
}
.inner-porto .comp .item.active .holder{
        display: block;
}
.inner-porto .comp .button{
        float: right;
        margin: 0 0 30px;
        padding: 0 10px;
        line-height: 30px;
}
.inner-porto .comp .button:after{
        display: inline-block;
        vertical-align: middle;
        width: 10px;
        height: 10px;
        background-image: url(../img/icon/arrow-grey.png);
        position: relative;
        margin-left: 5px;
        transition:all 0.2s ease-in;
        top: -1px;
        filter: none;
}
.inner-porto .comp .button:hover:after{
        filter: brightness(0) invert(1);
}
.inner-porto .comp .format-text{
        font-size: 20px;
        line-height: 140%;
}
.inner-porto .comp .tbl{
        margin: 55px 0 0;
}
.inner-porto .comp table{
        width: 100%;
}
.inner-porto .comp table td{
        width: calc(100% - 150px);
        vertical-align: top;
        color: #58595b;
        font-size: 17px;
        line-height: 160%;
        font-weight: 500;
        padding: 25px 0;
        border-top: 1px solid #898a88;
}
.inner-porto .comp table tr.fullwidth td{
	border: none;
	padding-top: 0;
}
.inner-porto .comp table td:first-child{
        width: 150px;
        padding-right: 35px;
}
.inner-porto .comp table tr.fullwidth td{
        padding-right: 0;
}
.inner-porto .comp table .trio{
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
}
.inner-porto .comp table .trio > *{
        flex: 27%;
        max-width: 27%;
}
.inner-porto .comp table .trio > *:first-child{
        flex: 30%;
        max-width: 30%;
}
.inner-news .list{
        margin: 80px 0 0;
}
.inner-news .list a{
        display: flex;
        flex-wrap: wrap;
        border: 1px solid #646566;
        border-left: none;
        border-top: none;
        padding: 15px 70px 15px 25px;
        font-family: 'Playfair Display';
        color: #1a4120;
        font-size: 30px;
        position: relative;
        justify-content: space-between;
        align-items: center;
        transition:all 0.2s ease;
}
.inner-news .list a:hover{
        border-color: #1a4120;
        background: #1a4120;
        color: #fff;
}
.inner-news .list a:after{
        display: block;
        position: absolute;
        right: 30px;
        top: 50%;
        -ms-transform: translateY(-50%);
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
        width: 22px;
        height: 22px;
        background-image: url(../img/icon/arrow-green3.png);
        transition:all 0.2s ease;
}
.inner-news .list a:hover:after{
        filter: brightness(0) invert(1);
}
.inner-news .list a:first-child{
        border-top: 1px solid #646566;
        border-radius: 0 25px 0 0;
}
.inner-news .list a span{
        flex: 80%;
        max-width: 80%;
        line-height: 120%;
}
.inner-news .list a.nodate span{
	flex: 100%;
	max-width: 100%;
}
.inner-news .list a small{
        font-family: 'Raleway';
        font-size: 14px;
        text-transform: uppercase;
        flex: 15%;
        max-width: 15%;
}
.inner-news .list a.nodate small{
	display: none;
}
.inner-news .list .wrapper > h3{
	font-size: 42px;
	margin: 0 0 30px;
	font-weight: 500;
}
.inner-page .content{
        margin: 80px 0 0;
}
.inner-page .format-text{
        font-size: 18px;
        line-height: 150%;
}
div.wpcf7 .wpcf7-submit:disabled {
	cursor: not-allowed !important;
}
.wpcf7-not-valid-tip{
	display: none !important;
}
.wpcf7 form .wpcf7-response-output{
	background: #0e2311;
	font-size: 14px;
	padding: 10px 15px;
	color: #fff;
	border: none !important;
	margin: 20px 0 0 !important;
	border-radius: 5px;
	max-width: 600px;
}
.wpcf7-form.sent *:not(.wpcf7-response-output){
	display: none;
}
.wpcf7-form.sent .wpcf7-response-output{
	margin: 0 !important;
}

/* MEDIA QUERY FOR WEBKIT BASED BROWSER **/
@media screen and (-webkit-min-device-pixel-ratio:0) {

}

/* MEDIA QUERY FOR GECKO BASED BROWSER **/
@-moz-document url-prefix(){
        
}
.porto-mobile,
#botto, .tribute br,
.mobile-trigger{
	display: none;
}
@media (max-width: 1800px) {

}
@media (max-width: 1404px) {
	#top .logo{
		flex: 40%;
		max-width: 40%;
	}
	#top .menu{
		flex: 60%;
		max-width: 60%;
	}
	.widget-subs input[type='email']{
		font-size: 1.2vw;
	}
}
@media (max-width: 1170px) {
	#top .logo{
		flex: 30%;
		max-width: 30%;
	}
	#top .menu{
		flex: 70%;
		max-width: 70%;
	}
	.widget-subs input[type='email']{
		font-size: 1.1vw;
	}
}
@media (min-width: 998px) {
	#top .menu{
		display: block !important;
	}
}
@media (max-width: 997px) {
	.widget-subs input[type='email']{
		font-size: 20px;
	}
	.wrapper{
		max-width: 100%;
		padding: 0 20px;
	}
	#top{
		overflow: visible;
	}
	#body{
		padding-top: 99px;
	}
	
	#top .logo{
		flex: 100px;
		max-width: 100px;
		padding: 10px 0;
		order: 1;
	}
	#top .menu{
		width: 100%;
		flex: 100%;
		max-width: 100%;
		display: none;
		order: 3;
		padding: 20px 0 30px 5px;
		border: none;
	}
	#top .rowflex{
		justify-content: space-between;
		align-items: center;
	}
	.menu .top{
		border: none;
		padding: 0;
	}
	.menu li ul{
		width: 100%;
		position: relative;
		padding: 15px 0 5px 15px;
		display: none;
	}
	.menu li.current-menu-item > ul{
		display: block;
	}
	.menu li{
		display: block;
		width: 100%;
		margin: 0 0 20px;
	}
	.mobile-trigger{
		display: inline-block;
		vertical-align: middle;
		position: relative;
		flex: 20px;
		max-width: 20px;
		margin-right: 20px;
		order: 2;
	}
	a.menu-mobile{
		width: 20px;
		height: 15px;
		position: relative;
		display: inline-block;
	}
	.menu-mobile .menu-bar b:after,
	.menu-mobile .menu-bar b:before,
	.menu-mobile .menu-bar b{
		position: absolute;
		width: 100%;
		height: 2px;
		left: 0;
		top: 7px;
		background: #1a4120;
		display: block;
	}
	.menu-mobile .menu-bar b{
		-webkit-transition:background 300ms ;
		-moz-transition:background 300ms ;
		-o-transition:background 300ms ;
		-ms-transition:background 300ms ;
		transition:background 300ms ;
	}
	.menu-mobile .menu-bar b:after,
	.menu-mobile .menu-bar b:before{
		content: '';
		-webkit-transition:top 300ms 300ms, transform 300ms 0ms, -webkit-transform 300ms 0ms, background 300ms;
		-moz-transition:top 300ms 300ms, transform 300ms 0ms, -webkit-transform 300ms 0ms, background 300ms;
		-o-transition:top 300ms 300ms, transform 300ms 0ms, -webkit-transform 300ms 0ms, background 300ms;
		-ms-transition:top 300ms 300ms, transform 300ms 0ms, -webkit-transform 300ms 0ms, background 300ms;
		transition:top 300ms 300ms, transform 300ms 0ms, -webkit-transform 300ms 0ms, background 300ms;
	}
	
	.menu-mobile .menu-bar b:after{
		top: 7px;
	}
	.menu-mobile .menu-bar b:before{
		top: -7px;
	}
	
	.open-menu .menu-mobile  .menu-bar b:after,
	.open-menu .menu-mobile  .menu-bar b:before{
		top:0;
		-webkit-transition:top 300ms 0ms, transform 300ms 300ms, -webkit-transform 300ms 300ms, background 300ms;
		-moz-transition:top 300ms 0ms, transform 300ms 300ms, -webkit-transform 300ms 300ms, background 300ms;
		-o-transition:top 300ms 0ms, transform 300ms 300ms, -webkit-transform 300ms 300ms, background 300ms;
		-ms-transition:top 300ms 0ms, transform 300ms 300ms, -webkit-transform 300ms 300ms, background 300ms;
		transition:top 300ms 0ms, transform 300ms 300ms, -webkit-transform 300ms 300ms, background 300ms;
		left: 0;
	}
	.open-menu .menu-mobile  .menu-bar b{
		background: rgba(0,0,0,0);
	}
	.open-menu .menu-mobile  .menu-bar b:after{
	    -ms-transform: rotate(45deg); /* IE 9 */
	    -webkit-transform: rotate(45deg); /* Chrome, Safari, Opera */
	    transform: rotate(45deg);
	}
	.open-menu .menu-mobile  .menu-bar b:before{
		-ms-transform: rotate(-45deg); /* IE 9 */
		-webkit-transform: rotate(-45deg); /* Chrome, Safari, Opera */
		transform: rotate(-45deg);
	}
	.footer-widget .widget,
	.footer-widget .widget-address{
		flex: 50%;
		max-width: 50%;
	}
	.footer-widget .widget-subs{
		flex: 100%;
		max-width: 100%;
		margin: 50px 0 0;
	}
	#bottom .tribute p:first-child,
	#bottom .tribute p{
		float: none;
		line-height: 180%;
	}
	.accord > ul a{
		font-size: 28px;
	}
	.porto-desktop{
		display: none;
	}
	.porto-mobile{
		display: block;
	}
	.porto-mobile > ul{
		display: block;
		margin: 0 0 25px;
		padding: 0 0 25px;
		border-bottom: 1px solid #898a88;
	}
	.porto-mobile > ul:last-child{
		padding: 0;
		margin: 0;
		border: none;
	}
	.porto-mobile > ul > li:nth-child(3){
		display: flex;
		flex-wrap: wrap;
		padding: 5px 0 0;
	}
	.porto-mobile > ul > li > ul{
		flex: 50%;
		max-width: 50%;
	}
	.inner-porto .comp .tbl td strong{
		font-weight: 600;
	}
}
@media only screen and (min-width: 769px) and (max-width: 991px)  {

}
@media (max-width: 768px) {
	#botto, .tribute br{
		display: block;
	}
	.inner-porto .comp h3:before,
	.expander > ul a:after,
	.hero h1 br,
	.accord > ul a:after{
		display: none;
	}
	.accord{
		overflow: hidden;
	}
	.expander > ul,
	.accord > ul{
		flex-wrap: nowrap;
		overflow: auto;
		-webkit-overflow-scrolling: touch;
		-ms-overflow-style: -ms-autohiding-scrollbar;
		display: flex;
                padding: 0 ;
		border: none;
	}
	.expander > ul::-webkit-scrollbar,
        .accord > ul::-webkit-scrollbar {
		width: 0px;
		background: transparent; /* make scrollbar transparent */
	}
	.expander > ul li,
	.accord > ul li{
		flex: 0 0 auto;
		margin: 0;
	}
	.inner-news .list a:after{
		right: 20px;
	}
	.inner-home .porto ul a b{
		left: 0;
	}
	.inner-home .navi a:after{
		width: 20px;
		height: 20px;
		top: 20px;
		right: 20px;
	}
	.inner-home .porto ul a:after{
		top: 50%;
		-ms-transform: translateY(-50%);
		-webkit-transform: translateY(-50%);
		transform: translateY(-50%);
		right: 17px;
	}
	.accord > ul li:last-child a,
	.accord > ul a{
		padding: 8px 15px;
		border: none;
		font-size: 16px;
		border-bottom: 1px solid #7f807f;
	}
	.expander > .holder{
		min-height: 150px;
		padding: 20px 0 0;
	}
	.xchild h3:before{
		right: 5px;
		top: 9px;
	}
	.xchild h3:after{
		right: 10px;
		top: 4px;
	}
	
	.hero figure{
		height: 250px;
	}
	.inner-home .navi a{
		height: 200px;
	}
	.accord .holder{
		min-height: 150px;
	}
	.inner-home .porto ul a{
		line-height: 130%;
	}
	.expander > ul a{
		min-width: 1px;
	}
	.expander{
		min-height: 1px;
	}
	.inner-porto .over h2{
		font-size: 28px;
		padding: 40px 30px 10px 15px;
	}
	.inner-porto .over h2:after{
		width: 20px;
		height: 22px;
		right: 20px;
		bottom: 15px;
	}
	.inner-porto .over .grid > *{
		border: 1px solid #b1b1ab !important;
		border-top: none !important;
		border-right: none !important;
	}
	.inner-porto .over .grid > *:last-child{
		border-bottom: none !important;
	}
	.inner-porto .comp .item > .imgs{
		order: 2;
	}
	.inner-porto .comp .item > .caption{
		order: 1;
	}
	.inner-porto .comp table td:first-child{
		width: 120px;
	}
	.inner-porto .comp .imgs{
		border: none !important;
	}
	.inner-porto .comp .item:not(.active) h3:hover{
		color: #1a4120;
	}
	.inner-porto .comp .item:not(.active) h3:hover span:after, .inner-porto .comp .item:not(.active) h3:hover span:before{
		background: #1a4120;
	}
	.inner-porto .comp h3{
		line-height: 130%;
	}
	.inner-porto .over .grid > * strong, .inner-porto .over .grid > * b{
		display: block;
		line-height: 120%;
		padding: 0 0 5px;
	}
	.inner-porto .comp .imgs figure:first-child{
		text-align: center;
	}
	.inner-home .porto ul a:before{
		display: block;
		position: absolute;
		left: -25px;
		top: -1px;
		width: 25px;
		background: #fff;
		content: '';
		transition:all 0.2s ease;
		height: calc(100% + 2px);
		opacity: 0;
	}
	.inner-home .porto ul a:hover:before{
		opacity: 1;
	}
	
	/** GENERIC **/
	.inner-porto .comp table .trio > *,
	.inner-porto .comp table .trio > *:first-child,
	.inner-porto .comp .item > *,
	.inner-porto .over .grid > *,
	.expander >*, .accord >*,
	.inner-about .copy .rowflex > *,
	.inner-home .porto ul,
	.inner-home .porto h2, .inner-home .about h2,
	.inner-home .about .caption,
	.inner-news .list a span,
	.inner-news .list a small,
	.footer-widget .widget,
	.footer-widget .widget-address,
	.footer-widget .widget-subs{
		flex:100%;
		max-width: 100%;
	}
	.widget-subs .in{
		float: left;
	}
	.menu li.btn{
		top: auto;
	}

	/** MARGIN **/
	.inner-home .navi,
	.inner-news .list,
	.inner-page .content{
		margin: 40px 0 0;
	}
	.footer-widget .widget,
	.footer-widget .widget-subs{
		margin: 30px 0 0;
	}
	.inner-porto .comp table .trio > *:not(:first-child),
	.hero .copy{
		margin: 20px 0 0;
	}
	.inner-about .pillar .hentry{
		margin: 0 0 50px;
	}
	.widget-subs .in{
		margin:  0 0 40px;
	}
	.inner-porto .comp .imgs figure:first-child,
	.inner-about .pillar .hentry h2,
	.inner-about .copy .quote{
		margin: 0 0 30px;
	}
	.inner-home .about .caption p,
	 .inner-home .porto h2,
	 .inner-home .about h2{
		margin: 0 0 20px;
	 }
	 .inner-news .list .wrapper > h3,
	 .inner-porto .comp .imgs figure,
	 .inner-porto .comp h2, .inner-about .team h2, .inner-about .pillar .hentry span{
		margin: 0 0 15px;
	 }
	.inner-news .list a span{
		margin: 0 0 10px;
	}
	.expander > ul li{
		margin: 0 20px 0 0;
	}
	.inner-news .list .wrap{
		margin-left: -20px;
	}
	.footer-widget .widget:first-child{
		margin: 0;
	}
	
	/** PADDING **/
	.inner-about .team,
	.inner-about .pillar{
		padding: 60px 0 0;
	}
	.inner-about .copy{
		padding: 30px 0 0;
	}
	.inner-page, .inner-news, .inner-porto, .inner-about, .inner-home{
		padding: 50px 0 80px;
	}
	.inner-news .list a{
		padding-right: 60px;
	}
	.inner-porto .comp table td:first-child{
		padding-right: 20px;
	}
	.inner-home .navi a,
	.inner-home .navi a:nth-child(even){
		padding: 0 0 15px 10px;
	}
	.inner-home .about .caption{
		padding-left: 25px;
	}
	.inner-news .list a{
		padding-left: 20px;
	}
	.inner-porto .comp h2{
		padding-left: 0;
	}
	.inner-home .porto ul a{
		padding: 10px 40px 10px 30px;
	}
	.accord .holder{
		padding: 5px 15px 20px 0;
	}
	.expander{
		padding: 30px 20px;
	}
	.xchild h3{
		padding: 0 30px 0 0;
	}
	.xchild .format-text{
		padding: 15px 0;
	}
	.inner-about .team h2{
		padding: 0 0 0 15px;
	}
	.inner-porto .over .holder{
		padding: 30px 20px 40px 0;
	}
	.inner-porto .over table th{
		padding: 20px 10px 10px;
	}
	.inner-porto .over .grid > *{
		padding: 15px;
	}
	.inner-porto .over table td{
		padding: 8px;
	}
	.inner-porto .comp .item.active > .imgs,
	.inner-porto .comp .holder,
	.inner-porto .comp h3{
		padding: 20px 20px 20px 0;
	}
	.inner-porto .comp .item > .imgs,
	.expander > ul a{
		padding: 0;
	}
	
	/** FONT SIZE **/
	.format-text h1,
	.inner-about .pillar .hentry h2, .hero h1{
		font-size: 40px;
	}
	.format-text h2{
		font-size: 30px;
	}
	
	.inner-about .copy .quote,
	.inner-home .about .caption p,
	.format-text h3{
		font-size: 26px;
	}
	.inner-news .list .wrapper > h3,
	.inner-porto .comp h3,
	.inner-porto .over .grid > *,
	.inner-porto .over .txt,
	.inner-about .pillar .hentry .txt,
	.hero .copy{
		font-size: 24px;
	}
	.inner-home .navi a,
	.inner-news .list a,
	.format-text h4{
		font-size: 20px;
	}
	.inner-porto .over table td,
	.format-text h5{
		font-size: 18px;
	}
	.inner-porto .comp .format-text,
	.inner-porto .over .grid > * strong, .inner-porto .over .grid > * b,
	.xchild h3,
	.expander > ul a,
	.accord .format-text,
	.inner-porto .comp h2, .inner-about .team h2, .inner-about .pillar .hentry span,
	.inner-about .copy .format-text,
	.inner-home .porto ul a,
	.inner-home .porto h2,
	 .inner-home .about h2,
	.inner-page .format-text,
	.widget-subs input[type='email']{
		font-size: 16px;
	}
	.inner-porto .comp table td,
	.inner-porto .over table td:first-child,
	.inner-porto .over table th,
	.format-text h6{
		font-size: 14px;
	}
	
}
/* Custom mobile */
@media (max-width: 480px) {
	
	.widget-subs input[type='email']{
		font-size: 4vw;
	}
}

@media (max-width: 360px) {
	
}
@media (min-width: 1230px) {

}

#responsive{
	display:block;
	width:10px;
	height: 10px;
	position: fixed;
	bottom:10px;
	left: 10px;
	z-index: 9999;
}
/** RESPONSIVE VIEWER **/
@media (max-width: 1274px) {  #responsive{background: blueViolet !important;}}
@media (max-width: 991px) {  #responsive{background: red !important;}}
@media (max-width: 768px) {  #responsive{background: blue !important;}}
@media (max-width: 480px) {  #responsive{background: cyan !important;}}
@media (max-width: 360px) {  #responsive{background: green !important;}}