/* CSS RESET */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
.col, .col-1, .col-10, .col-11, .col-12, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-auto, .col-lg, .col-lg-1, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-auto, .col-md, .col-md-1, .col-md-10, .col-md-11, .col-md-12, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-auto, .col-sm, .col-sm-1, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-auto, .col-xl, .col-xl-1, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-auto {
	padding: 0;
}
a {
	text-decoration: none !important;
}
*, button:focus, a:focus {
	outline: 0 !important;
}
* {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
/* SETTINGS */ 
html {
	font-family: 'UniBlack', sans-serif;
}
body {
	line-height: 1.2;
	max-width: 100%;
	overflow: hidden;
	position: relative;
	scrollbar-color: transparent;
	scrollbar-width: thin;
}
main {
	display: flex;
	flex-flow: column;
	width: 100%;
	position: relative;
	overflow: hidden;
}
main.go {
	height: auto !important;
	min-height: 100vh;
	overflow: visible;
}
.largefont {
	font-size: 4vw;
}
.medifont {
    font-size: 2vw;
}
.regafont {
	font-size: 1.4vw;
}
.smallfont {
	font-size: 1.25vw;
}
.smallerfont {
	font-size: 1vw;
}
.smallestfont {
	font-size: .85vw;
}
strong {
	font-weight: 700;
}
::-webkit-scrollbar {
  	width: 4px;
}
::-webkit-scrollbar-thumb {
  	background: #696F72; 
  	border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover {
  	background: black; 
}
@font-face {
	font-family: "UniReg";
	src: url("https://punktvilnius.com/wp-content/themes/kabinet/assets/css/universo_regular/font.eot");
	src: url("https://punktvilnius.com/wp-content/themes/kabinet/assets/css/universo_regular/font.woff") format("woff"),
	url("https://punktvilnius.com/wp-content/themes/kabinet/assets/css/universo_regular/font.otf") format("opentype"),
	url("https://punktvilnius.com/wp-content/themes/kabinet/assets/css/universo_regular/font.svg#filename") format("svg"),
		url("https://punktvilnius.com/wp-content/themes/kabinet/assets/css/universo_regular/font.ttf");
}
@font-face {
	font-family: "UniBlack";
	src: url("https://punktvilnius.com/wp-content/themes/kabinet/assets/css/universo_black/font.eot");
	src: url("https://punktvilnius.com/wp-content/themes/kabinet/assets/css/universo_black/font.woff") format("woff"),
	url("https://punktvilnius.com/wp-content/themes/kabinet/assets/css/universo_black/font.otf") format("opentype"),
	url("https://punktvilnius.com/wp-content/themes/kabinet/assets/css/universo_black/font.svg#filename") format("svg"),
		url("https://punktvilnius.com/wp-content/themes/kabinet/assets/css/universo_black/font.ttf");
}
/* HEADER */
header {
    display: inline-flex;
	justify-content: space-between;
	align-items: center;
	padding: 2vw;
    background: black;
    height: 20vh;
	width: 100%;
	transition: background 1s ease-in-out;
}
.logosign {
    display: inline-flex;
    justify-content: flex-start;
    align-items: center;
}
.logosign img {
    width: 5vw;
    height: auto;
    min-height: 1px;
}
.menu-container {
    display: inline-flex;
    color: white;
}
.menu, .menu ul {
    display: inline-flex;
}
.menu li {
	margin-right: 2vw;
	list-style: none;
}
.lang-container {
    position: relative;
}
.lang-container li {
    list-style: none;
    text-transform: uppercase;
}
.lang-container li:nth-child(n+2) {
    position: absolute;
    bottom: -100%;
    left: 0;
    opacity: 0;
    transition: opacity .5s ease-in-out;
}
.lang-container:hover li:nth-child(n+2) {
	opacity: 1;
}
.booknow-wrap {
    display: inline-flex;
    justify-content: flex-end;
    align-items: center;
}
.booknow {
    text-transform: uppercase;
    background: white;
    padding: .75vw 2vw;
    border-radius: 10px;
}
/* MAIN */
.landing-scroll, .scroll-content, .openhrs, .scroll, .servs-wrap {
    display: flex;
    flex-flow: column;
    justify-content: center;
    align-items: center;
}
.landing-scroll {
    height: 80vh;
    background-size: cover;
    background-position: center;
    width: 100%;
	position: relative;
	background-color: black;
}
.layer {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,.5);
	z-index: 0;
}
.scroll-content {
	z-index: 1;
}
.no-image .scroll-content {
	margin-bottom: 10vh;
}
.thelogo {
    width: 45%;
	height: auto;
	min-height: 1px;
}
.openhrs {
    color: white;
	font-family: UniReg;
}
.socials-wrap {
    position: absolute;
    bottom: 4vw;
	left: 0;
	width: 100%;
    display: inline-flex;
	justify-content: center;
	align-items: flex-end;
	z-index: 1;
}
.facebook, .instagram {
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    display: flex;
}
.socials-wrap a {
	width: 4vw;
    height: 4vw;
}
.facebook {
    margin-right: 1vw;
}
.scroll {
	width: 100%;
	min-height: 100vh;
	padding: 2vw 20vw;
}
.scroll.about {
	background: #696F72;
	color: black;
}
.title {
    margin-bottom: 4vw;
}
.about-desc {
    font-weight: 400;
    font-family: UniReg;
	width: 100%;
}
.about-desc p {
    margin-bottom: 1vw;
	text-align: center;
}
.about-desc p:last-child {
    margin-bottom: 0;
}
.scroll.gallery {
    background: black;
}
.gal-img-container {
    width: 100%;
}
.owl-stage-outer {
    z-index: 1;
}
.owl-nav {
    position: absolute;
    width: 120%;
    left: -10%;
    display: inline-flex;
    justify-content: space-between;
    align-items: center;
    line-height: 1;
    height: 100%;
	top: 0;
}
.owl-nav span {
    font-size: 6vw;
    font-family: Unireg;
    color: white;
}
.gal-img {
	height: 80vh;
}
.gal-img-pre {
    width: 100%;
    height: 80vh;
    background-position: center;
    background-size: cover;
    position: relative;
}
.owl-dots {
    display: inline-flex;
    width: 100%;
    justify-content: center;
	z-index: 1;
	position: absolute;
	bottom: -2vw;
}
.owl-dots button {
	margin-right: 2vw;
}
.owl-dots button:last-child {
	margin-right: 0;
}
.owl-dots button span {
    width: 0.65vw;
    height: 0.65vw;
    background: #696F72;
    display: flex;
    border-radius: 50%;
	transition: background .3s ease-in-out;
}
.owl-dots button.active span {
    background: white;
}
.scroll.services {
    background: #696F72;
	border-top: 1px solid black;
}
.servs-wrap {
    width: 100%;
	padding: 0 10%;
	overflow: hidden;
}
.single-serv {
    display: inline-flex;
    width: 100%;
    justify-content: space-between;
    align-items: center;
    border-bottom: 1px solid rgba(0,0,0,.5);
    padding-bottom: .5vw;
    margin-bottom: .5vw;
	text-transform: uppercase;
}
.single-serv:last-child {
    margin-bottom: 0;
}
.serv-price {
	text-align: right;
}
.services .booknow {
    margin-top: 4vw;
    background: black;
    color: #696F72;
}
.scroll.team {
	background: black;
}
.scroll.team .title {
	color: white;
}
.team-wrap {
	display: inline-flex;
	flex-wrap: wrap;
	width: 100%;
}
.single-team {
    color: white;
    width: 22%;
    margin-right: calc(12% / 3);
}
.single-team:nth-child(4n) {
    margin-right: 0;
}
.teamimg {
    width: 100%;
    background-position: top;
	background-size: cover;
}
.booknow-wrap {
    display: flex;
    justify-content: center;
}
.teampos {
    font-family: UniReg;
}
.teamtxt {
    margin: .5vw 0;
}
.scroll.contacts {
    background: #696F72;
}
.contacts-container {
    display: inline-flex;
    width: 100%;
    justify-content: space-between;
}
.contacts-map {
    display: flex;
	width: 62%;
}
.contacts-map iframe {
	height: 100%;
}
.contacts-wrap {
    width: 33%;
    display: flex;
    flex-flow: column;
    justify-content: space-between;
    align-items: flex-start;
}
.contacts-desc p {
    font-family: UniReg;
    margin-bottom: 2vw;
}
.contacts-desc p strong {
    font-family: UniBlack;
}
.contacts-social {
	width: 100%;
	display: inline-flex;
	justify-content: flex-start;
	align-items: center;
}
.contacts-social a {
	width: 3.5vw;
    height: 3.5vw;
}
footer {
    display: inline-flex;
    padding: 2vw;
    justify-content: center;
    align-items: center;
    width: 100%;
    background: black;
    color: #696F72;
    font-family: UniReg;
}
.scroll.privacy {
	background: #696F72;
    text-align: center;
}
#cookie-notice {
    border-top: 1px solid #696F72;
}
.cn-button.bootstrap {
	background: #696F72;
}
.booknow.nolink {
	cursor: pointer;
}
.yclient-book-container {
    position: fixed;
    top: 0;
    right: -25vw;
    height: 100%;
    width: 25vw;
    z-index: 1000;
	transition: right 1s ease-in-out;
}
.yclient-book-container.active {
	right: 0;
}
.yclient-book-container .closer {
    position: absolute;
    width: 2vw;
	height: 2vw;
    top: 1vw;
	left: 2vw;
    z-index: 2000;
    transition: transform 1s ease-in-out;
    cursor: pointer;
}
.yclient-book-container .closer:hover {
    transform: rotate(180deg);
}
.yclient-book-container iframe {
    height: 100%;
    width: 100%;
}
/* MOBILE */
@media all and (max-width: 1079px) {
	body {
		display: flex;
		flex-flow: column;
		justify-content: flex-start;
	}
	body.active {
		overflow: hidden;
		height: 100vh;
	}
	header {
		height: 10vh;
		position: fixed;
		top: 0;
		z-index: 10;
		padding: 2vh;
	}
	header.active {		
		background: rgba(0,0,0,.5)
	}
	.booknow-wrap {
		height: 5vh;
	}
	header .booknow-wrap {
		position: absolute;
		top: calc(50% - 2.5vh);
		right: 2vh;
		transition: right .5s ease-in-out;
		justify-content: center;
	}	
	.booknow {
		height: 100%;
		padding: 0 2vw;
		display: flex;
		justify-content: center;
		align-items: center;
	}
	.logosign {
		height: 100%;
	}
	.logosign img {
		width: auto;
		min-width: 1px;
		height: 100%;
	}
	.mobile-btn {
		width: 5vh;
		height: 5vh;
		position: absolute;
		border: 3px solid white;
		border-radius: 10px;
		padding: 1vw;
		top: calc(50% - 2.5vh);
		left: calc(50% - 2.5vh);
		display: flex;
		justify-content: center;
		align-items: center;
	}
	.mobile-btn .lang-container li {
		width: 100%;
		display: flex;
		justify-content: center;
		align-items: center;
		margin-bottom: 1px;
		color: white;
	}
	.mobile-btn span {
    	position: absolute;
		width: calc(100% - 2vh);
		height: 5px;
		background: white;
		left: 1vh;
	}
	.mobile-btn span:first-child {
		top: 1vh;
	}
	.mobile-btn span:nth-child(2) {
		top: calc(50% - 2.5px);
	}
	.mobile-btn span:last-child {
		bottom: 1vh;
	}
	.menu-container {
		position: fixed;
		top: 10vh;
		z-index: 10;
		height: 0;
		flex-flow: column;
		justify-content: center;
		align-items: center;
		background: #696F72;
		width: 100%;
		left: 0;
		overflow: hidden;
		transition: height .5s ease-in-out;
	}
	.active.menu-container {
		height: 90vh;
	}
	.menu, .single-team {
		flex-flow: column;
		justify-content: center;
	}
	.menu {
		align-items: center;
	}
	.single-team {
		align-items: flex-start;
	}
	.menu li {
		margin-right: 0;
		margin-bottom: 2vh;
	}
	.lang-container li:nth-child(n+2) {
		position: inherit;
		opacity: 1;
	}
	.lang-container {
		display: inline-flex;
		justify-content: center;
		align-items: center;
		text-align: center;
		width: 100%;
		height: 100%;
	}
	.landing-scroll {
		margin-top: 10vh;
		height: 90vh;
	}
	.openhrs {
		margin-top: 2vh;
	}
	.thelogo {
    	width: 75%;
	}
	.socials-wrap {
		bottom: 10vh;
	}
	.socials-wrap a {
		width: 5vh;
		height: 5vh;
	}
	.facebook {
		margin-right: 2.5vh;
	}
	.about-desc p {
    	margin-bottom: 2vh;
	}
	.owl-dots button span {
		width: 2vh;
		height: 2vh;
	}
	.owl-dots button {
		margin-right: 2vh;
	}
	.single-team {
		width: calc(50% - 2.5vh);
		margin-right: 5vh;
		margin-bottom: 5vh;
		display: flex;
	}
	.single-team:nth-child(2n) {
		margin-right: 0;
	}
	.teamtxt {
		margin: 1vh 0;
	}
	.contacts-container {
		flex-flow: column-reverse;
		justify-content: center;
		align-items: center;
	}
	.contacts-wrap {
		width: 100%;
		justify-content: center;
		align-items: center;
		margin-bottom: 5vh;
	}
	.contacts-map {
		display: flex;
		width: 100%;
		height: 25vh;
	}
	.contacts-social {
		justify-content: center;
		margin-top: 5vh;
	}
	.contacts-map iframe {
		width: 100%;
	}
	.contacts-social a {
		width: 5.5vh;
		height: 5.5vh;
	}
	.contacts-desc p {
		margin-bottom: 2vh;
		text-align: center;
	}
	.contacts-desc p:last-child {
		margin-bottom: 0;
	}
	footer {
		padding: 5vh;
		flex-flow: column;
	}
	.footer-rights {
		margin-bottom: 1vh;
	}
	.scroll.privacy {
		padding-top: 15vh;
	}
}
@media all and (max-width: 1079px) and (min-width: 768px) {	
	.yclient-book-container {
		width: 50vw;
		right: -50vw;
	}
	.yclient-book-container .closer {
		width: 4vw;
		height: 4vw;
	}
	.largefont {
		font-size: 6vw;
	}
	.menu li a {
		font-size: 4.5vw;
	}
	.regafont {
    	font-size: 2.2vw;
	}
	.smallfont, .smallerfont {
		font-size: 2vw;
	}
	.smallestfont {
		font-size: 1.8vw;
	}	
	.scroll {
		width: 100%;
		min-height: 100vh;
		padding: 5vh 10vh;
	}	
	.title {
		margin-bottom: 10vh;
	}	
	.gal-img-pre {
		height: 50vh;
	}
	.owl-dots {
		bottom: -5vh;
	}
	.services .booknow {
		margin-top: 10vh;
	}	
	.owl-nav span {
    	font-size: 10vh;
	}
}
@media all and (max-width: 767px) {
	.yclient-book-container {
		width: 100vw;
		right: -100vw;
	}
	.yclient-book-container .closer {
		width: 6vw;
		height: 6vw;
		top: 4vw;
		right: 2vw;
	}
	.serv-price {
		width: 60%;
	}
	.largefont {
		font-size: 10vw;
	}
	.regafont {
		font-size: 3.2vw;
	}
	.smallfont {
		font-size: 3.5vw;
	}
	.smallerfont {
		font-size: 3vw;
	}
	.smallestfont {
		font-size: 2.9vw;
	}
	.scroll {
		padding: 5vh;
	}
	.title {
		margin-bottom: 5vh;
	}
	.gal-img-pre {
		height: 40vh;
	}
	.owl-dots {
		bottom: -7.5vh;
	}
	.servs-wrap {
		padding: 0;
	}
	.services .booknow {
		margin-top: 5vh;
	}
	.owl-nav span {
    	font-size: 7.5vh;
	}
}
@media all and (min-width: 1080px) {
	.mobile-btn {
		display: none;
	}
	.logosign, .booknow-wrap {
		width: 20vw;
	}
	.about-desc a, footer a, .contacts-desc p a, .menu li a, .lang-item a {
		position: relative;
		transition: color .5s ease-in-out;
	}
	.about-desc a::before, footer a::before, .contacts-desc p a::before, .menu li a::before, .lang-item a::before {
		position: absolute;
		content: '';
		bottom: -4px;
		left: 0;
		background: white;
		width: 0%;
		height: 2px;
		transition: width .5s ease-in-out;
	}
	.about-desc a:hover::before, footer a:hover::before, .contacts-desc p a:hover::before, .menu li a:hover::before, .lang-item a:hover::before {
		width: 100%;
	}
	.about-desc a:hover, footer a:hover, .contacts-desc p a:hover {
		color: white;
	}
	.booknow {
		transition: color .5s, background .5s ease-in-out;
	}
	header .booknow:hover {
		color: white;
		background: #696F72;
	}
	.services .booknow:hover {
		background: white;
	}
}
@media all and (min-width: 640px) and (max-height: 700px) {
	header {
		height: 20vh;
	}
	header .booknow-wrap {
		height: calc(100% - 10vh);
    	top: 5vh;
	}
	.mobile-btn {
		width: 10vh;
		height: 10vh;
		top: 5vh; 
	}
	.thelogo {
    	width: 45%;
	}
	.regafont {
    	font-size: 1.8vw;
	}
	.socials-wrap a, .contacts-social a {
		width: 7.5vh;
		height: 7.5vh;
	}
	.scroll {
		padding: 10vh 20vh;
	}
	.about-desc p {
		margin-bottom: 5vh;
	}
	.gal-img-pre {
		height: 80vh;
	}
	.contacts-map {
		height: 50vh;
	}
	.scroll.privacy {
		padding-top: 25vh;
	}
	.menu-container {
		top: 20vh;
	}
	.active.menu-container {
		height: 80vh;
	}
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
	.menu-container {
		width: 100%;
	}
	header .booknow-wrap {
		text-align: center;
	}
}