/******************************************************************
Theme Name: Via Birdges
Description: 
Author: GOOLA
Author URI: http://www.goola-la.com
Version: 1.0
*/


html,body {
	padding:0;
	margin:0;
	font-family: 'Miriam Libre', sans-serif;
	font-weight:400;
	direction:ltr;
	text-align:left;
	font-size:16px;
	line-height:24px;
	color:#5F5F5F;
}

.site {
	padding:0 32px;
	position:relative;
}
.isite {
	max-width:1400px;
	display:block;
	margin:auto;
}
p {
	margin:0 0 24px 0;
}
a,.link {
	color:#0033A1;
	font-weight:700;
}

header {
	position:relative;
	z-index:10;
	padding:48px 0 0px;
	border-bottom:2px solid #0033A1;
}
header .logo {
	display: inline-block;
    margin-bottom: 20px;
}
header .mmenu li.curr a {
	border-bottom:3px solid #0033A1;
    padding-bottom: 14px;
}
header .mmenu li a {
	text-decoration: none;
    padding-bottom: 17px;
    display: inline-block;
}
header .mmenu li {
	padding-left:42px;
}
header .mmenu {
	position: absolute;
	right:32px;
	bottom:0;
	padding-bottom:20px;
    padding: 0;
    margin: 0;
}
header .mmenu .imenu {
    list-style-type: none;
	display:flex;
	padding: 0;
    margin: 0;
}

section.s0 .ecrap.color-bwhite .entry .title {
	color:white;
}
section.s0.textBox .ecrap.color-bwhite .entry {
	padding:0;
}
section.s0 .ecrap.color-bwhite {
	background:#0033A1;
	color:white;
	padding:64px 0;
	margin-bottom:64px;
}
body header.color-bwhite {
	background:#0033A1;
	border-bottom: 2px solid white;;
}
body header.color-bwhite .mmenu li.curr a ,
body header.color-bwhite .mmenu li a,
body header.color-white .mmenu li.curr a ,
body header.color-white .mmenu li a {
	color:white;
	border-color:white;
}
header .hamb-logo,
header .hamb {
	display:none;
}

/* general */
.flex-rap {
	display:flex;
}
.entry .title {
	color:#0033A1;
	line-height:48px;
	font-size:32px;
	margin:0;
	margin-bottom:24px;
}
section {
	background:white;
	position:relative;
	z-index:1;
}
section.bcolor-blue .site * {
	color:white !important;
}
section.bcolor-blue .site .isite {
	background:#06379D;
}
/* textBox */
.textBox .entry a {
	font-weight: normal;
    font-size: 14px;
}
.textBox .entry {
    max-width: 1100px;
    margin: auto;	
}
.textBox .entry {
	padding:40px 0;
	margin:0px auto;
}
.textBox .entry.layout-sidetitle .text {
	display:inline-block;
	vertical-align:top;
	width:73%;
}
.textBox .entry.layout-sidetitle .title-rap .title {
	font-size: 24px;
    line-height: 32px;
}
.textBox .entry.layout-sidetitle .title-rap {
	display:inline-block;
	vertical-align:top;
	width:25%;
	margin-right:2%;
}

/* Home Page */
body.home header .mmenu {
	bottom:16px;
}
body.home header {
	border:0;
}
body.home section.textBox .entry {
	font-size: 18px;
    line-height: 25px;
	padding:80px 0;
}
@keyframes arrow-jump {
  0% {
    transform: translateY(0px);
  }
  25% {
    transform: translateY(8px);
  }
  50% {
    transform: translateY(-3px);
  }
  75% {
    transform: translateY(5px);
  }
  100% {
    transform: translateY(0px);
  }
}
.mainImageHome .arrowdown {
    width: 20px;
    animation: arrow-jump 8s infinite ease-in-out;
	position:absolute;
	top: calc(100vh - 32px);
    left: 32px;
    margin-top: -28px;
}
.mainImageHome {
	z-index:0;
}
.mainImageHome .limg {
	position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
}
.mainImageHome .boxes-rap .box-item .bxtitle {
    position: absolute;
    top: 50%;
    left: 50%;
    color: white;
    transform: translate(-50%,-50%);
    font-size: 32px;	
}
@keyframes adown {
  0% {
    background-position: 0 100%;
  }
  50% {
    background-position: 0 0;
  }
  100% {
    background-position: 0 100%;
  }
}
@keyframes aup {
	0% {
		background-position: 0 0%;
	}
	50% {
		background-position: 0 100%;
	}
	100% {
		background-position: 0 0;
	}
}
.mainImageHome .boxes-rap .box-item.repeat1 .imgrap .bimg.down:hover ,
.mainImageHome .boxes-rap .box-item.repeat1 .imgrap .bimg.up:hover {
	animation-play-state: running;
}
.mainImageHome .boxes-rap .box-item.repeat1 .imgrap .bimg.down {
	animation: adown 30s linear infinite paused;
}
.mainImageHome .boxes-rap .box-item.repeat1 .imgrap .bimg.up {
	animation: aup 30s linear infinite paused;
}
.mainImageHome .boxes-rap .box-item.repeat1 .imgrap .bimg.up {
	top:calc(-20% - 5px);
}
.mainImageHome .boxes-rap .box-item.repeat1 .imgrap .bimg {
	display:inline-block;
	position:relative;
	width:25%;
	height:140%;
	top:-20%;
	transition:all 2s;
	background-repeat:repeat;
}
.mainImageHome .boxes-rap .box-item.repeat a:hover .imgrap .bimg {
	width:105%;
	height:105%;
	top:-2.5%;
	left:-2.5%;
}
.mainImageHome .boxes-rap .box-item.repeat .imgrap .bimg {
	position: absolute;
    top: 0;
    left: 0;
	width:100%;
	height:100%;
	transition:all 2.5s;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
}
.mainImageHome .boxes-rap .box-item .imgrap,
.mainImageHome .boxes-rap .box-item a {
	height:100%;
	display:block;
	position:relative;
	overflow:hidden;
}
.mainImageHome .boxes-rap .box-item {
	height:100%;
	width:50%;
	min-width:50%;
	max-width:50%;
}
.mainImageHome .boxes-rap {
	height: 50vh;
    overflow: hidden;
}
.mainImageHome .imgrap.mimg .bimg {
	position: fixed;
    top: 0;
    overflow: hidden;
    height: 50vh;
	width:100%;
}
.mainImageHome .imgrap.mimg .bimg.landscape img {
	height:100%;
	width:auto;
	position:relative;
	left:50%;
	transform:translateX(-50%);
}
.mainImageHome .imgrap.mimg img {
	width:100%;
}
.mainImageHome .imgrap.mimg {
	position: relative;
    overflow: hidden;
    margin-top: -112px;
    height: 50vh;
}
/* mainImage */
.mainImage.s0 {
	margin-top:80px;
}
.mainImage .entry.imgrap img {
	display:block;
	margin:auto;
	width:100%;
	height:auto;
}

/* page-project */
body.single-project header {
	border-bottom:2px solid white;
}
.page-project .content .site {
	padding:0;
}
.project-head .plink a {
	color:white;
	font-weight:normal;
}
.project-head h1 {
	width:50%;
	font-size: 48px;
    line-height: 52px;
}
.project-head {
	background: #0033A1;
    color: white;
    padding-top: 148px;
    margin-top: -113px;
    padding-bottom: 120px;
    margin-bottom: -68px;
}
.page-project .content {
	width: calc(100% - 200px - 64px - 64px - 72px);
	padding:32px;
	padding-top:0;
	display:inline-block;
	vertical-align:top;
}
.page-project .sidebar .sitem p {
	margin:0;
}
.page-project .sidebar .sitem .sltitle {
	margin: 0;
    font-size: 18px;
    font-weight: 700;
    line-height: 24px;
    color: #0033A1;
    margin-bottom: 8px;
}
.page-project .sidebar .sitem {
	border-top: 1px solid #A1B0D0;
    margin-top: 12px;
    padding-top: 12px;
}
.page-project .sidebar .stitle {
	margin: 0;
    color: #0033A1;
    font-weight: 700;
    font-size: 24px;
    line-height: 32px;
	position:relative;
}
.page-project .sidebar {
	display:inline-block;
	vertical-align:top;
	padding:32px;
	width:200px;
	background:#F9F9FF;
	margin-right:72px;
	border-radius:5px;
}
.page-project .textBox {
	margin-top:0px;
}
.page-project {
	display:block;
	margin:auto;
	max-width:1400px;
	width:95vw;
}

/* galleryBox */

.galleryBox .gallery-rap .gallery-window .gallery-long .slide .slide-rap {
	position: relative;
    top: 50%;
    transform: translateY(-50%);
	margin-top:-1px;
}
.galleryBox .gallery-rap .gallery-window .gallery-long .slide img {
	display:block;
	max-width:100%;
	max-height:100%;
	margin:auto;
}
.galleryBox .gallery-rap .gallery-window .gallery-long .slide {
	position:relative;
	text-align:center;
	width:1%;
}
.galleryBox .gallery-rap .gallery-window .gallery-long {
	display:flex;
	width:10000%;
	position:relative;
	left:0;
	transition:left 0.5s;
}
.galleryBox .gallery-rap .gallery-window {
	overflow:hidden;
	background:#F9F9FF;
}
.galleryBox .gallery-rap {
	position:relative;
}
.galleryBox .nav.dis {
	display:none;
}
.galleryBox .nav.prev {
	left:35px;
	right:auto;
}
.galleryBox .nav:before {
	content:"";
	background: #0033A1;
    height: 2px;
    width: 24px;
    position: absolute;
    margin: auto;
    right: 0;
    left: -3px;
    top: 0;
    bottom: 0;
}
.galleryBox .nav.prev:after {
	left: 0;
    right: 14px;
    transform: rotate(135deg);
}
.galleryBox .nav:after {
	content:"";
	border-right: 2px solid #0033A1;
    position: absolute;
    margin: auto;
    right: 0;
    top: 0;
    bottom: 0px;
    border-bottom: 2px solid #0033A1;
    width: 8px;
    height: 8px;
    left: 14px;
    transform: rotate(-45deg);
}
.galleryBox .nav {
	width: 44px;
    height: 44px;
    padding: 0;
    border-radius: 50px;
    background: white;
    border: 0;
    top: 0;
    bottom: 0;
    position: absolute;
    margin: auto;
    left: auto;
    right: 32px;
    cursor: pointer;
}
.galleryBox .thumbs-rap .thumbs .thumb.curr:after {
	background:transparent;
}
.galleryBox .thumbs-rap .thumbs .thumb:after {
	content:"";
	position:absolute;
	margin:auto;
	background:#C9C9C9;
	width:6px;
	height:6px;
	border-radius:10px;
	top:0;
	bottom:0;
	left:0;
	right:0;
}
.galleryBox .thumbs-rap .thumbs .thumb.curr {
	background:#0033A1;
}
.galleryBox .thumbs-rap .thumbs .thumb {
	display: inline-block;
	vertical-align:middle;
	top:-2px;
	position:relative;
    margin-right: 4px;
    width: 12px;
    height: 12px;
	border-radius:12px;
    padding: 0px;
    background: transparent;
    border: 0;
	cursor:pointer;
}
.galleryBox .thumbs-rap .thumbs {
	display: inline-block;
    vertical-align: middle;
}
.galleryBox .thumbs-rap .pgnum {
    font-size: 16px;
    display: inline-block;
    vertical-align: middle;
    margin-right: 24px;
}
.galleryBox .thumbs-rap {
	margin-top:16px;
}

/* structureBox */
.structureBox {
	margin-top:40px;
}
.projectsBox .mtitle ,
.structureBox .title {
	color: #0033A1;
    font-weight: 700;
    font-size: 20px;
    line-height: 24px;
    margin: 0 0 16px;
}
.structureBox .plist .pitem .title {
	position:absolute;
	color:white;
	bottom: 14px;
    left: 20px;
    margin: 0;
    font-size: 18px;
}
.plist .pitem img {
	width:100%;
	display:block;
}
.structureBox .plist .pitem {
	margin-right:32px;
	margin-bottom:32px;
	width:calc(50% - 32px);
	position:relative;
	text-decoration:none;
	border-radius: 8px;
    overflow: hidden;
}
.structureBox .plist {
	display:flex;
	flex-wrap: wrap;
	margin-right:-32px;
}
/* projectsBox */ 
.projectsList {
	padding:62px 0;
}
.projectsList .projectsBox .plist .pitem:hover img {
	opacity:0;
}
.projectsBox .plist .pitem img {
	opacity:1;
	transition:opacity 0.5s;
}
.projectsBox .plist .pitem .title {
    color: #5F5F5F;
    font-weight: 400;
    margin: 16px 0 8px;
}	
.projectsBox .plist .pitem {
	margin-right:18px;
	margin-bottom:18px;
	width:calc(25% - 18px);
	text-decoration:none;
	color:inherit;
	position:relative;
	display:inline-block;
	vertical-align:top;
	border-radius: 10px;
    overflow: hidden;
	background-size:cover;
}
.projectsBox .plist {
	flex-wrap: wrap;
	margin-right:-18px;
	overflow:auto;
}
section.projectsBox {
	border-top:1px solid #A1B0D0;
	padding-top:80px;
	padding-bottom:80px;
	margin-top:calc(80px - 32px);
}
.projectsList .projectsBox .imgrap:after {
	content:"";
	position:absolute;
	top:0;
	bottom:0;
	right:0;
	left:0;
	background: linear-gradient(180deg, rgba(0, 0, 0, 0%) 0%, rgba(0, 0, 0, 0.35) 100%), url(<path-to-image>), rgba(0,0,0,0) 50% / cover no-repeat
}
.projectsList .projectsBox .pitem:first-child {
	width: calc(50% - 18px);
    float: left;
}
.projectsList .projectsBox .pitem .title {
	color:white;
	position:absolute;
	bottom:16px;
	left:32px;
	margin:0;
	transition:bottom 0.5s;
	font-size:20px;
}

/* projectsList */
.projectsList .projectsBox .pitem:hover .title {
	bottom:48px;
}
.projectsList .projectsBox .pitem:hover .link {
	bottom:16px;
}
.projectsList .projectsBox .pitem .link {
	position: absolute;
    color: white;
    bottom: -32px;
    left: 32px;
	transition:bottom 0.5s;
	font-weight:normal;
}
/* contactBox */
.contactBox .info .iitem .icon svg {
	width:100%;
	display:block;
}
.contactBox .info .iitem .icon {
	width:20px;
	min-width:20px;
	position:relative;
	margin-right:12px;
	margin-top:2px;
}
.contactBox .info .iitem p {
	margin:0;
}
.contactBox .info .iitem {
	display:flex;
	margin-bottom:16px;
}
.contactBox .info {
	display: inline-block;
    margin-left: 5%;
    width: calc(100% - 5% - 700px);
	margin-top:80px;
}
.contactBox .mainlead {
	width:700px;
	max-width:100%;
	position:relative;
	overflow:auto;
	margin-bottom:80px;
	display:inline-block;
	vertical-align:top;
	margin-top:80px;
}
.contactBox .tumsg .itu {
	display:block;
	font-size: 20px;
    line-height: 32px;
    width: 80%;
    text-align: center;
    position: relative;
    top: 50%;
    transform: translateY(-50%);
}
.contactBox .tumsg {
	display:none;
	position:absolute;
	background:white;
	top:0;
	bottom:0;
	right:0;
	left:0;
}
.contactBox .mainlead .irap.ierror textarea,
.contactBox .mainlead .irap.ierror input {
	border-color:red;
}
.contactBox .mainlead .irap.ierror label {
	color:red;
}
.contactBox .mainlead.sentok .tumsg ,
.contactBox .mainlead.merror .emsg.merror ,
.contactBox .mainlead.gerror .emsg.gerror {
	display:block;
}
.contactBox .emsg {
	position:absolute;
	color:red;
	bottom:0;
	left:0;
	right:200px;
	display:none;
}
.contactBox input[type="submit"] {
	float:right;
	background:#0033A1;
	color:white;
	font-size:20px;
	font-family:'Miriam Libre', sans-serif;
	margin-right:40px;
	border:0;
	border-radius:4px;
	padding:8px 32px;
	cursor:pointer;
}
.contactBox .irap.itextarea {
	width:calc(100% - 40px);
}
.contactBox .irap {
	display:inline-block;
	vertical-align:bottom;
	width:calc(50% - 40px);
	margin-right:40px;
	margin-bottom:36px;
	position:relative;
}
.contactBox .irap.imand label:after {
	content:"*";
}
.contactBox .irap label {
	display:block;
}
.contactBox .irap.itextarea textarea {
	height:172px;
	padding:12px;
}
.contactBox .irap textarea,
.contactBox .irap input {
	border-radius: 4px;
	border: 1px solid #CDCDCD;
	height:32px;
	padding:4px 12px;
	width:calc(100% - 26px);
	font-family:'Miriam Libre', sans-serif;
	font-size:16px;
	line-height:24px;
}

/* footer */ 
footer {
	border-bottom:40px solid black;
	z-index:1;
	background:black;
	color:white;
	position:relative;
}
footer .scrolltop-rap .top-arrow .arrow:before {
	content:"";
	position: absolute;
    background: #0033A1;
    width: 2px;
    height: 20px;
    margin: auto;
    right: 0;
    left: 0;
    top: 0;
}
footer .scrolltop-rap .top-arrow .arrow:after {
	content:"";
	position: absolute;
    width: 10px;
    height: 10px;
    border-left: 2px solid #0033A1;
    border-top: 2px solid #0033A1;
    transform: rotate(45deg);
    margin: auto;
    right: 0;
    left: 0;
    top: 0;
}
footer .scrolltop-rap .top-arrow .arrow {
	display:block;
	height:24px;
	width:24px;
	margin:0px auto 4px;
	position:relative;
}
footer .scrolltop-rap .top-arrow {
	border-radius: 4px;
	border: 1px solid var(--via-blue, #0033A1);
	background: var(--pale-blue, #F9F9FF);
	padding:0;
	font-family:'Miriam Libre', sans-serif;
	position:absolute;
	width:46px;
	height:60px;
	padding:8px;
	left:100px;
	top:50%;
	transform:translateY(-50%);
	color:#0033A1;
	cursor:pointer;
}
footer .scrolltop-rap {
	background-color: #06379D;
    padding:85px 32px;
	cursor:pointer;
    position: relative;
    background-repeat: repeat;
    background-position: center;
    background-size: initial;
	color:white;
	text-align:center;
	line-height:22px;
	text-transform: uppercase;
    font-size: 18px;
    font-weight: bold;
}

@keyframes animate-row-1 {
  0% {
    background-position: 0%   0;
  }
  50% {
    background-position: 100% 0;
  }
  100% {
    background-position: 0    0;
  }
}
@keyframes animate-row-2 {
  0% {
    background-position: 100% 0;
  }
  50% {
    background-position: 0    0;
  }
  100% {
    background-position: 100% 0;
  }
}
footer .flex-rap .box-rap .bgrap.bg4 {
	animation: animate-row-2 35s linear infinite paused;
}
footer .flex-rap .box-rap .bgrap.bg3 {
	animation: animate-row-1 33s linear infinite paused;
}
footer .flex-rap .box-rap .bgrap.bg2 {
	animation: animate-row-2 36s linear infinite paused;
}
footer .flex-rap .box-rap .bgrap.bg1 {
	animation: animate-row-1 30s linear infinite paused;
}
footer .flex-rap .box-rap .bgrap:hover {
	animation-play-state: running;
}
footer .flex-rap .box-rap .bgrap {
	cursor:pointer;
	top: 0%;
    position: absolute;
    height: 25%;
    width: 100%;
    left: 0;
	overflow:hidden;
	background-repeat:repeat;
}
footer .flex-rap .box-rap.socials .links-rap a {
	display:inline-block;
	margin:0 16px;
	line-height:40px;
}
footer .flex-rap .box-rap.socials .links-rap {
	position: relative;
    width: 100%;
    text-align: center;
    top: 50%;
    transform: translateY(-50%);
}
footer .flex-rap .box-rap.contact-info .text {
	width: 300px;
    position: relative;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
}
footer .flex-rap .box-rap a {
	color:white;
	text-decoration:none;
}
footer .flex-rap .box-rap a:hover {
	text-decoration:underline;
}
footer .flex-rap .box-rap {
	height:460px;
	width:50%;
	position:relative;
}
footer .contact-rap a:hover {
	text-decoration:underline;
}
footer .contact-rap a {
	text-decoration:none;
	color:white;
}
footer .contact-rap {
	position: relative;
    z-index: 1;
    background-color: #06379D;
    color: white;
    padding: 60px 32px;
	font-size:20px;
	font-weight:bold;
    text-align: center;
}

@media only screen and (min-width:71px) and (max-width:1100px) { /* TABLET */
	
	.projectsList .projectsBox .pitem .link {
		bottom: 16px;
	}
	.projectsList .projectsBox .pitem .title {
		bottom: 48px;
		right: 32px;
		font-size:16px;
		line-height:19px;
	}
	.page-project .content {
		width: calc(100% - 175px - 64px - 48px - 24px);
	}
	.page-project .sidebar {
		width: 175px;
		padding: 24px;
		margin-right: 24px;
	}
	.projectsBox .plist .pitem .title {
			line-height: 19px;
	}
	.contactBox .info {
		margin-left: 2.5%;
		width: calc(100% - 2.5% - 450px);
	}
	.contactBox .mainlead {
		width: 450px;
	}
	.contactBox .irap {
		margin-right:16px;
		width:calc(50% - 16px);
	}
	.contactBox .irap.itextarea {
		width: calc(100% - 16px);
	}
	.contactBox input[type="submit"] {
		margin-right:16px;
	}
	.project-head h1 {
		width: 75%;
		font-size: 36px;
		line-height: 44px;
	}
}
@media only screen and (min-width:1400px) { /* WIDE DESKTOP */
}