@import url('https://fonts.googleapis.com/css2?family=Archivo:wght@200;400;700;900&display=swap');

@font-face {
    font-family: Rouben;
    font-weight: 700;
    src: url("../fonts/RoubenBold.otf") format("opentype");
}
@font-face {
    font-family: Rouben;
    font-weight: 500;
    src: url("../fonts/Rouben Regular.otf") format("opentype");
}




/*  --------------------------  Whitespaces  -------------------------- */
.whitespace-1 {
  height: 1px;
}
.whitespace-2 {
  height: 1px;
}
.whitespace-3 {
  height: 1px;
}
.whitespace-4 {
  height: 1px;
}
.whitespace-5 {
  height: 5px;
}
.whitespace-10 {
  height: 10px;
}
.whitespace-15 {
  height: 15px;
}
.whitespace-20 {
  height: 20px;
}
.whitespace-25 {
  height: 25px;
}
.whitespace-30 {
  height: 30px;
}
.whitespace-35 {
  height: 35px;
}
.whitespace-40 {
  height: 40px;
}
.whitespace-50 {
  height: 50px;
}
.whitespace-60 {
  height: 60px;
}
.whitespace-70 {
  height: 70px;
}
.whitespace-80 {
  height: 80px;
}
.whitespace-90 {
  height: 90px;
}
.whitespace-100 {
  height: 100px;
}
.whitespace-110 {
  height: 110px;
}
.whitespace-120 {
  height: 120px;
}
.whitespace-130 {
  height: 130px;
}
.whitespace-140 {
  height: 140px;
}
.whitespace-150 {
  height: 150px;
}






/* ----------------------------------------------------------------------------------------------------------------------------- */
/* GLOBAL */
/* ----------------------------------------------------------------------------------------------------------------------------- */

html {
	height: 100%;
}
body {
	font-family: "Archivo", sans-serif;
	font-weight: 400;
	line-height: 1.66666666;
	font-size: 20px;
	color: #262f55;
	padding: 0;
	margin: 0;
	overflow-x: hidden;
	height: 100%;
}
::-moz-selection {
  text-shadow: none;
  background: #a89254;
	color: #fff;
}
::selection {
  text-shadow: none;
  background: #a89254;
	color: #fff;
}
img::selection {
  background: transparent;
}
img::-moz-selection {
  background: transparent;
}
img { 
	width: 100%; 
	height: auto;  
	border: 0; 
	-ms-interpolation-mode: bicubic; 
	transition:all 0.3s ease-in-out 0s; 
	-webkit-transition:all 0.3s ease-in-out 0s; 
}
a {
	cursor: pointer;
	color: inherit;
	text-decoration: none;
	transition: all 0.4s; 
	-webkit-transition: all 0.4s; 
	outline: none;
}
a:hover, a:focus, a:active
{
	color: inherit;
}
a:focus, a:hover {
	text-decoration: none;
}
a:hover img {
	filter: contrast(105%) brightness(145%) grayscale(0.4);
}
.no-transition {
  -webkit-transition: height 0.01s !important;
  -moz-transition: height 0.01s !important;
  -ms-transition: height 0.01s !important;
  -o-transition: height 0.01s !important;
  transition: height 0.01s !important;
}





/* ----------------------------------------------------------------------------------------------------------------------------- */
/* TYPO */
/* ----------------------------------------------------------------------------------------------------------------------------- */







h1, h2, h3, h4, h5, 
.h1, .h2, .h3, .h4, .h5 
{
	display: block;
	font-weight: 700;
	font-family: Rouben;
}

h1 {
	font-size: 68px;
	line-height: 1.11;
	letter-spacing: -.05em;
}
h2 {
	font-size: 44px;
	line-height: 1.2;
	letter-spacing: -.01em;
	margin-bottom: 3rem;
}
h3, .h3 {
	font-size: 33px;
	line-height: 1.2;
	letter-spacing: -.01em;
	margin-bottom: 3rem;
}
h4 {
	font-size: 26px;
	line-height: 1.2;
	letter-spacing: -.01em;
	margin-bottom: 1.5rem;
}
h5 {
	font-size: 24px;
	line-height: 1.2;
	letter-spacing: -.01em;
	margin-bottom: 1.5rem;
}




.case-normal {
	text-transform: none;
}
.case-upper {
	text-transform: uppercase;
}


p {
	margin-bottom: 15px;
}
.txt-lg {
	font-size: 24px;
	font-weight: 600;
}

strong, .strong,
.strong ul li
{
	font-weight: 700;
}



@media (max-width:960px) {
	h1 {
		font-size: 40px
	}
	h2 {
		font-size: 40px
	}
	h3 {
		font-size: 35px
	}
	h4 {
		font-size: 27px
	}
}
@media (max-width:480px) {
	h1 {
		font-size: 40px
	}
	h2 {
		font-size: 28px;
	}
	h3 {
		font-size: 30px
	}
	h4 {
		font-size: 24px
	}
	.txt-lg {
		font-size: 20px;
	}
}




 








.pill {
	background: #e3f4de;
	padding: 1px 17px 5px 17px;
	margin-top: -5px;
	border-radius: 40px;
	display: inline-block;
	margin-left: 5px;
	font-weight: 600;
	white-space: nowrap;
}
.pill:hover {
	background: #f2c94c;
}
.color-green {
	color: #5983ca;
}


.box {
	padding: 30px;
	border-radius: 15px;
	background: #e3f4de;
}


ul, li {
	list-style: none;
	margin: 0;
	padding: 0;
}

ul.bullet {
  list-style:none;
  padding-left: 56px;
}

ul.bullet li {
	list-style: none;
	margin-top: 15px;
	color: inherit;
}
ul.bullet li:before {
	content: '';
	display: inline-block;
	height: 1em;
	width: 26px;
	margin-left: -26px;
	background: url(../images/list-bullet.svg) left 8px no-repeat;
}






/* ----------------------------------------------------------------------------------------------------------------------------- */
/* COMMON ELEMENTS */
/* ----------------------------------------------------------------------------------------------------------------------------- */


button {
	border: none;
}



.button {
	font-family: Rouben;
	display: inline-block;
	text-align: center;
	text-decoration: none;
	user-select: none;
	background: #262f55;
	padding: 16px 40px 16px 40px;
	font-weight: 200;
	font-size: 20px;
	line-height: 1.33;
	box-shadow: none;
	color: #fff;
	border-radius: 1px;
	transition: .3s all ease-in;
}
.button:hover, .button.light:hover {
	background: #e29181;
	color: #fff; 
}
.button.light {
	background: #fff;
	color: #262f55;
}
.button.nobutton {
	background: none;
}



@media (max-width:767px) {
	.button {
		width: 100%;
		margin-bottom: 10px;
		margin-top: 10px;
		padding: 10px 10px 10px 10px;
	}
	.button.menu-btn {
		margin: 0;
		text-align: left;
		background: none;
		color: #5983ca;
	}
}





/* --------- LIST-ROWS --------- */
.list .row {
	border-bottom: 1px solid rgba(255,255,255,0.05);
	padding: 20px 0;
	cursor: pointer;
	border-radius: 100px;
	transition: all .3s ease-in;
}
.list .row:hover {
	background: rgba(0,0,0,0.1);
}
.list .row:first-child {
	border-top: 1px solid rgba(255,255,255,0.05);
}
.list .col-date, 
.list .col-cta 
{
	margin-top: -2px;
}
.list .pill {
	font-size: 14px;
	font-weight: 700;
	background: #1e6b75;
	color: #5983ca;
	padding: 2px 17px 4px 17px;
}
.list .col-cta .pill{
	background: none;
	font-weight: 900;
	font-size: 20px;
	color: #f2c94c;
}
.list .col-links a {
	display: inline-block;
	text-decoration: underline;
	padding: 1px 17px 5px 17px;
	border-radius: 40px;
}
.list .col-links a:hover {
	background: #f2c94c;
}
.list .col-buttons {
	text-align: right;
}
.list .col-buttons .button {
	margin-left: 15px;
}
.list .col-title .title {
	font-weight: 900;
	display: block;
	font-size: 24px;
	line-height: 1.2;
	letter-spacing: -.01em;
}
.list .col-title .pill {
}
.list .col-title .desc {
	font-size: 18px;
	margin-top: 10px;
	line-height: 1.5;
	display: block;
	opacity: 0.75;
}

.list-type02 .row {
	border-radius: 0;
	border-bottom: 1px solid rgba(0, 0, 0, 0.05);	
}
.list-type02 .row:first-child {
	border-top: 1px solid rgba(0, 0, 0, 0.05);	
}
.list-type02 .row:hover {
	background: none;
}


.list-type03 .row {
	border-radius: 0;
	border-bottom: 1px solid rgba(0, 0, 0, 0.05);	
	padding: 50px 30px;
}
.list-type03 .row:nth-child(odd) {
	background: #f8f8f8;
}
.list-type03 .row:first-child {
	border-top: 1px solid rgba(0, 0, 0, 0.05);	
}
.list-type03 .row:hover {
	background: none;
}


/* --------- MODAL --------- */
.modal {
	text-align: center;
	z-index: 20002;
}
.modal-backdrop {
	z-index: 20001
}
.modal-dialog {
	text-align: center;
	display: inline-block;
	width: auto;
	max-width: 60vw;
	margin-top: 10vh;
}
.modal.modal-processStepsExist .modal-dialog {
}
.modal-backdrop.in {
	opacity: 0.9;
	background: #0B1020;
}
.modal-content {
	box-shadow: none;
	border: none;
	background: none;
	padding: 0;
	margin: 0;
}
.modal-body {
	margin: 0 auto;
	padding: 0;
	width: 100%;
}
.modal-header {
	padding: 0;
	border: none;
	min-height: 0;
}
.close-modal {
  position: fixed !important;
  width: 52px;
  height: 52px;
  background-color: transparent;
  top: 15px;
  right: 15px;
  cursor: pointer;
	z-index: 10000000;
	background: #a89254;
	border-radius: 80px;
}
.close-modal .lr {
  height: 35px;
  width: 3px;
  margin-left: 25px;
	margin-top: 8px;
  background-color: #fff;
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  z-index: 1051;	
}
.close-modal .lr .rl {
  height: 35px;
  width: 3px;
  background-color: #fff;
  -ms-transform: rotate(90deg);
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
  z-index: 1052;
}
.close-modal:hover .lr {
  transition: all 0.25s;
	-webkit-transition: all 0.25s;
  -ms-transform: rotate(225deg);
  -webkit-transform: rotate(225deg);
  transform: rotate(225deg);
}

.modal-white .modal-dialog {
	background: #fff;
	padding: 60px 30px 60px 30px;
	width: 100%;
}







#topBar {
	margin-bottom: 0;
	padding: 30px 0 22px 0;
	font-weight: 700;
	border: none !important;
	border-radius: 0 !important;
	font-family: Rouben;
	letter-spacing: -0.03em;
	font-size: 24px;	
}
#topBar .logo img {
	margin: 8px 0 0 0;
	max-width: 240px;
	width: auto;
}
#topBar #menu {
	padding: 30px 0 7px 0;
}
#topBar #menu > .nav {
	float: right;
	margin-right: -15px;	
}
#topBar #menu > .nav > li > a {
	padding: 15px 15px 15px 30px;
}
.nav > li > a:focus, .nav > li > a:hover {
	color: inherit;
	background: inherit;
}
#topBar #menu > .nav > li.active > a {
	font-weight: 800;
}

.menu-btn {
	font-size: 24px;	
	padding: 16px 30px 16px 30px !important;
	line-height: 1.33 !important;
	margin-left: 30px;
	margin-top: -7px;
	background: #262f55;
	color: #fff;
	font-weight:  700;
}
.menu-btn:hover {
	background: #e4f3de !important;
	color: inherit;
}


@media (max-width:767px) {
	#topBar .logo {
		margin-left: 30px;
	}
}




/* Collapse menu breakpoint */
@media (max-width: 1398px) {
	.navbar-header {
			float: none;
	}
	.navbar-toggle {
			display: block;
	}
	.navbar-collapse {
			border-top: none;
			box-shadow: none;
	}
	.navbar-collapse.collapse {
			display: none;
	}
	#topBar  #menu > .nav {
			float: none !important;
			margin: 0
	}
	.navbar-nav>li {
			float: none;
	}
	.navbar-nav>li>a {
			padding-top: 10px;
			padding-bottom: 10px;
	}
	.navbar-text {
			float: none;
			margin: 15px 0;
	}
	.navbar-collapse.collapse.in { 
			display: block!important;
	}
	.collapsing {
			overflow: hidden!important;
	}
}
@media (min-width: 1399px) {
	.navbar-collapse.collapse {
			display: block;
	}
}













/* XWIDTH - xtra large container */

@media (min-width: 480px) {
	.xwidth {
		width:450px
 	}
}
@media (min-width:992px) {
	.xwidth {
		width:970px
 	}
}
@media (min-width:768px) {
	.xwidth {
		width:750px
 	}
}
@media (min-width:1200px) {
 .xwidth {
	  width:1170px
 }
}
@media (min-width:1330px) {
	.xwidth {
		width: 100%;
		padding-left: 60px;
		padding-right: 60px;
	}
}
@media (min-width:1920px) {
	.xwidth {
		width: 1680px;
	}
}






/* SEPARATORS */
.separator {
  position: relative;
  width: 100%;	
	margin-bottom: -60px;
}
.separator::after {
  position: absolute;
  content: "";
  width: 100%;
  background: #145660;
  clip-path: polygon(100% 0, 0 100%, 100% 100%);
  height: 290px;
	bottom: 0px;
}
.separator2 {
	margin-bottom: 0px;
}
.separator2::after {
  background-color: #fff;
  height: 80px;
}






/* ANIMATIONS */
@keyframes float {
	0% {
		transform: translatey(0px);
	}
	50% {
		transform: translatey(-10px) rotate(0.5deg);
	}
	100% {
		transform: translatey(0px);
	}
}
@keyframes float-long {
	0% {
		transform: translatey(0px);
	}
	25% {
		transform: translatey(-10px) rotate(0.5deg);
	}
	50% {
		transform: translatey(0px);
	}
	100% {
		transform: translatey(0px);
	}
}
@keyframes slideIn {
  0% {
    right: -700px;
		opacity: 0;
  }
  50% {
		opacity: 1;
  }
  100% {
    right: 0px;
		opacity: 1;
  }
}

.anim-float {
	animation: float 4s ease-in-out infinite, slideIn ease 1.5s;
}










/* SOCIAL ICONS */
.social-icons {
	position: fixed;
	top: 50%;
	transform: translateY(-50%);
	margin-top: 30px;
	right: 30px;
	z-index: 100;
}
.social-icon svg {
	width: 36px;
	fill: #d8dec4;
}
@media (max-width:700px) {
	.social-icons {
		position: relative;
		transform: none;
		margin-top: 0px;
		right: auto;
		z-index: 100;		
		text-align: center;
		background: #013044;
		padding: 5px 0 0 0;
	}
	.social-icons li {
		display: inline;
	}
}






/* ================================================= SECTIONS ================================================= */
section {
	position: relative;
}
@media (max-width:700px) {
	section {
		margin-top: 0px;
		padding-top: 30px;
	}
}



.dark {
	background: #262f55;
	color: #fff;
}
section.dark h1, 
section.dark h2, 
section.dark h3, 
section.dark h4 
{
	color: #fff !important;
}
section.dark .container {
	padding-bottom: 120px;
}
section.dark .box {
	background-color: #1e6b75
}

section.sub {
	padding-top: 80px;
}

section.gradient {
	background-image: linear-gradient(#fff, #f4f4f4);
}
section {
	background-image: linear-gradient(#fff, #fffefa);
}




/* INTRO */
section.intro {
	 padding-bottom: 155px;
}
section.intro .container {
	position: relative;
}
.dragon-big {
	position: absolute;
	top: 60px;
  right: -40px;
	z-index: 50;
}
section.intro h1 {
	padding-top: 90px;
	position: relative;
	z-index: 80;
}
section.intro h2 {
	font-family: inherit;
}
@media (max-width:1200px) {
	.dragon-big {
		display: none;
	}
	section.intro {
		padding-bottom: 60px;
	}
	section.intro h1 {
		padding-top: 80px;
	}
	.separator {
		display: none;
	}
}
@media (max-width:700px) {
	section.intro h1 {
		padding-top: 30px;
	}
}







/* NEWS */
section.news .col-pic img {
	margin-left: 90px;
}



/* PROJECTS */
.project {
	margin-bottom: 80px;
}
.project h3 {
	margin-bottom: 15px;
}
.old-projects .project {
	border-bottom: 1px solid rgba(255,255,255,0.2);
	padding-bottom: 30px;
	margin-bottom: 30px;
}
.old-projects .project h3 {
	color: #fff !important;
	font-size: 30px;
	line-height: 1.2;
	letter-spacing: -.01em;
	margin-bottom: 1.5rem;
}
.old-projects .project p {
	font-size: 18px;
}
.project .actions {
	text-align: right;
}





/* CONTACT */
section.contact {
	margin-top: 120px;
	padding-top: 40px;
	padding-bottom: 10px;
}

.map {
	position: relative;
}
.map iframe {
	width: 100%;
	height: 600px;
	opacity: 0.95;
	border-radius:  4px;
}

.footnote {
	margin-top: 100px;
	font-size: 15px;
	opacity: 0.5;
	font-weight: 300;
	letter-spacing: 0.05em;
}



















video.reelVideo {
	max-width: 100%;
	opacity: 0.9;
	cursor: pointer;
}
.video-wrapper {
	position: relative;
	cursor: pointer;
	box-shadow: 0 0 100px rgba(0,0,0,0.05);
}
.playpause {
    width:180px;
    height:180px;
    position:absolute;
    left:0%;
    right:0%;
    top:0%;
    bottom:0%;
    margin:auto;
    background-size:contain;
    background-position: center;
		cursor: pointer;
}
.video-wrapper:hover .playpause {
	transform: scale(1.1);
	transition: all 0.5s;
}











.cover-bg-dark {
	background-size: cover; 
	padding: 60px;
	/*text-shadow: 1px 0 10px #000;*/
	color: #fff;
}

.cover-bg-light {
	background-size: cover; 
	padding: 60px;
	padding: 90px 60px;
	color: #262f55;
}
.cover-bg-light p,
.cover-bg-light h2 {
	background: #fff;
	padding: 10px 30px;
	opacity: 0.95;
}
.cover-bg-light p {
	padding: 15px 30px;
}


.cennik {
	border-top: 1px solid #ddd;
}
.cennik .row {
	border-bottom: 1px solid #ddd;
	padding-top: 25px;
}
.cennik .row:nth-child(odd) {
	background: #eee;
}
.cennik .h3 {
	margin-top: 0px;
}
.usluga {
	color: #262f55
}
.cena {
	color: #5983ca;
}