/*
-------------------------------------
FONTS
-------------------------------------
*/

/* --- GILROY --- */

@font-face {
	font-family: 'Gilroy-Light';
	src: url('../fonts/gilroy/Gilroy-Light/font.woff2') format('woff2'),
	url('../fonts/gilroy/Gilroy-Light/font.woff') format('woff');
}

@font-face {
	font-family: 'Gilroy-Regular';
	src: url('../fonts/gilroy/Gilroy-Regular/font.woff2') format('woff2'),
	url('../fonts/gilroy/Gilroy-Regular/font.woff') format('woff');
}

@font-face {
	font-family: 'Gilroy-SemiBold';
	src: url('../fonts/gilroy/Gilroy-SemiBold/font.woff2') format('woff2'),
	url('../fonts/gilroy/Gilroy-SemiBold/font.woff') format('woff');
}

/*
-------------------------------------
BASE CLASSES
-------------------------------------
*/

* {
    -webkit-appearance: none;
}

*,
*:before,
*:after {
	box-sizing: border-box;
}

html {
	font-family: Arial, Helvetica, sans-serif;
	overflow-x: hidden;
}

body {
	margin: 0;
	padding: 0;
	min-width: 320px;
	height: 100%;
	outline: none;
	background: #fff;
	-webkit-font-smoothing: antialiased;
}

img,
video,
section,
article,
header,
footer,
nav,
aside,
hgroup,
a {
	display: block;
}

img,
video {
	border: 0;
	width: 100%;
	max-width: 100%;
  height: auto;
}

button {
	outline: none;
	border: none;
	background: none;
}

button::-moz-focus-inner {
	border: 0;
}

.invert-colors {
  filter: invert(1);
}

/*
-------------------------------------
DEBUG VIEW
-------------------------------------
*/

.debug-view {
	width: 100%;
	height: 20px;
	position: fixed;
	top: 0;
	z-index: 9999;
  display: none;
}

.debug-view p {
	color: #fff !important;
	background: #000;
	height: 25px;
	line-height: 25px;
	padding: 0 7px;
	display: table;
	margin: 0 auto;
	font-size: 12px;
	font-weight: 400;
}

/* --- DEFAULT VIEW --- */

@media only screen and (min-width: 1581px) {
	p.standard,
	p.large-tablet,
	p.small-tablet,
	p.mobile {
		display: none;
	}
}

/* --- STANDARD VIEW --- */

@media only screen and (min-width: 1281px) and (max-width: 1580px) {
	p.default,
	p.large-tablet,
	p.small-tablet,
	p.mobile {
		display: none;
	}
}

/* --- LARGE TABLET VIEW --- */

@media only screen and (min-width: 1025px) and (max-width: 1280px) {
	p.default,
	p.standard,
	p.small-tablet,
	p.mobile {
		display: none;
	}
}

/* --- SMALL TABLET VIEW --- */

@media only screen and (min-width: 641px) and (max-width: 1024px) {
	p.default,
	p.standard,
	p.large-tablet,
	p.mobile {
		display: none;
	}
}

/* --- MOBILE VIEW --- */

@media only screen and (max-width: 640px) {
	p.default,
	p.standard,
	p.large-tablet,
	p.small-tablet {
		display: none;
	}
}

/*
-------------------------------------
TYPOGRAPHY
-------------------------------------
*/

h1,
h2,
h3,
h4,
h5,
h6,
p,
li {
	color: #000;
	font-style: normal;
	margin: 0;
	padding: 0;
	cursor: default;
	line-height: 100%;
	font-weight: normal;
}

h1,
h5 {
	font-family: 'Gilroy-SemiBold', Arial, Helvetica, sans-serif;
}

h2,
h3,
h4,
h6,
a,
ul,
li,
input,
label,
button,
textarea {
	font-family: 'Gilroy-Regular', Arial, Helvetica, sans-serif;
}

p {
	font-family: 'Gilroy-Light', Arial, Helvetica, sans-serif;
}

h1 {
	font-size: 100px;
}

h2,
h3,
h4{
	font-size: 30px;
}

h3, h4, h5, h6 {
	line-height: 120%;
}

h5, h6 {
	font-size: 25px;
}

p, li {
	font-size: 18px;
	line-height: 140%;
}

a {
	font-size: 27px;
	color: #000;
	text-decoration: none;
}

a,
button {
	cursor: pointer;
}

a,
button,
form {
	outline: none;
}

ul {
	margin: 0;
	padding: 0;
}

ul, li {
	list-style: none;
}

/*
-------------------------------------
CENTRE HOVER
-------------------------------------
*/

.cenrel {
	position: relative;
}

.cenabs {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 500;
}

.cenabs.fr {
	right: 0;
	left: auto;
	float: none;
}

.cenabs.fl {
	left: 0;
	right: auto;
	float: none;
}

.centab {
	display: table;
	width: 100%;
	height: 100%;
}

.cencell {
	display: table-cell;
	vertical-align: middle;
}

/*
-------------------------------------
GRIDS
-------------------------------------
*/

.col-1-2 {
	width: 50%;
}

.col-1-2.gutter {
	width: 47.5%;
	margin-left: 5%;
}

.col-1-3 {
	width: 33.333%;
}

.col-2-3 {
	width: 66.666%;
}

.col-1-3.gutter {
	width: 30%;
	margin-left: 5%;
}

.col-1-2.gutter:first-child,
.col-1-3.gutter:first-child {
	margin-left: 0;
}

.col-1-4 {
	width: 25%;
}

.col-3-4 {
	width: 75%;
}

.col-1-5 {
	width: 20%;
}

.col-2-5 {
	width: 40%;
}

.col-3-5 {
	width: 60%;
}

.col-4-5 {
	width: 80%;
}

.col-1-8 {
	width: 12.5%;
}

.col-7-8 {
	width: 87.5%;
}

/*
-------------------------------------
POSITIONING ELEMENTS
-------------------------------------
*/

.pos-rel {
	position: relative;
}

.pos-abs {
	position: absolute;
}

.pos-fixed {
	position: fixed;
}

/*
-------------------------------------
FLOATING ELEMENTS
-------------------------------------
*/

.fl {
	float: left;
}

.fr {
	float: right;
}

.expander {
	clear: both;
}

/*
---------------------------------------
M-AUTO
---------------------------------------
*/

.m-auto {
	margin: 0 auto;
}

/*
-------------------------------------
WIDTH & HEIGHT ELEMENTS
-------------------------------------
*/

.width-100 {
	width: 100%;
}

.height-100 {
	height: 100vh !important;
}

.height-100-pc {
	height: 100%;
}

/*
-------------------------------------
BACKGROUNDS
-------------------------------------
*/

.cover-bg {
	background-size: cover !important;
	-moz-background-size: cover !important;
	-webkit-background-size: cover !important;
	background-repeat: no-repeat;
	background-position: center center;
}

.contain-bg {
	background-size: contain !important;
	-moz-background-size: contain !important;
	-webkit-background-size: contain !important;
}

/*
-------------------------------------
A FILL
-------------------------------------
*/

a.fill {
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	z-index: 501;
}

a.fill:before {
	content: "";
	display: inline-block;
	height: 100%;
	vertical-align: middle;
}

/*
-------------------------------------
VIDEOS
-------------------------------------
*/

.video-wrapper {
	padding-bottom: 56.25%; /* 16:9 */
	height: 0;
}

.video-wrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/*
---------------------------------------
TRANSITIONS
---------------------------------------
*/

.animate {
	-webkit-transition: all 0.3s !important;
	-moz-transition: all 0.3s !important;
	-ms-transition: all 0.3s !important;
	-o-transition: all 0.3s !important;
	transition: all 0.3s !important;
}

/*
---------------------------------------
BORDERS
---------------------------------------
*/

.border-none {
	border: none !important;
}

/*
---------------------------------------
BUTTONS
---------------------------------------
*/

button.btn-01 {
    background-color: #000;
    color: #fff;
    border: 2px solid #000;
    display: block;
    height: 50px;
    line-height: 50px;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-size: 15px;
	margin: 0;
	padding: 0 18px;
}

button.btn-01.placeholder {
	background: none;
	color: #000;
}

button.btn-01.placeholder span {
	position: absolute;
	top: 0;
	left: 15px;
}

a.btn {
	text-transform: uppercase;
	font-size: 16px;
	letter-spacing: 2px;
	border-style: solid;
	border-width: 2px;
	padding: 15px 30px;
}

a.btn.btn-01 {
	color: #fff;
	border-color: #fff;
}

a.btn.btn-01:hover {
	border-color: #000;
	background-color: #000;
}

a.btn.btn-02,
a.btn.btn-03 {
	color: #fff;
	border-color: #000;
	background-color: #000;
	text-align: center;
}

a.btn.btn-02:hover {
	border-color: #fff;
	background-color: transparent;
}

a.btn.btn-03:hover {
	color: #000;
	background-color: transparent;
}

/*
---------------------------------------
OPACITY FILTER
---------------------------------------
*/

.opacity-filter {
	background-color: rgba(0,0,0,0.1);
	z-index: 100;
}

/*
---------------------------------------
BRAND APPROVED INDICATOR
---------------------------------------
*/

.pl-item-image-wrapper {
  width: 100%;
  height: auto;
}

.brand-approved-indicator {
  position: absolute;
  bottom: 0px;
  left: 0;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.9);
  padding: 8px 15px;
  z-index: 502;
}

.brand-approved-indicator span {
  float: right;
  color: #fff;
  font-size: 12px;
  letter-spacing: 1px;
  font-family: 'Gilroy-Regular', Arial, Helvetica, sans-serif;
  font-weight: 600;
}
