
/* ------------------------------------------------------------------------ */
/*  BASE STYLES
/* ------------------------------------------------------------------------ */

html {
    font-size: 18px;
    margin: 0;
    padding: 0;
    height: 100%;
}

body {
    font-size: 1rem;
    background-color: #fff;
    position: relative;
    margin: 0;
    padding: 0;
    width: 100%;
    height: 100%;
    color: #18030F;
    font-family: Montserrat, Calibri, Helvetica, Arial, sans-serif;
    font-weight: 400;
    line-height: 150%;
}

a {
    color: #FF9019;
    text-decoration: none;
    transition: all 0.2s ease-in-out;
    position: relative;
}

a:hover,
a:focus {
    color: #40B451;
    /*opacity: 0.8;*/
    text-decoration: none;
}

h1,
h2,
h3,
h4,
h5,
h6,
p,
ul,
ol {
    margin-top: 0;
}

strong {
    font-weight: 700;
}

address {
    font-style: normal;
}

* {
    box-sizing: border-box;
}

::-moz-selection {
    background: rgba(36, 216, 169, 0.15)
}

::selection {
    background: rgba(36, 216, 169, 0.15);
}

/* ------------------------------------------------------------------------ */

/*  Colors and decoration
/* ------------------------------------------------------------------------ */

.bk-black {
    background-color: #18030F;
}

.bk-orange {
    background-color: #FF9019;
}

.txt-orange {
    color: #FF9019;
}

.bk-green {
    background-color: #FF9019;
}

.txt-green {
    color: #FF9019;
}

.has-wave {
    position: relative;
    /*overflow: hidden;*/
}

.has-wave-top:after {
    width: 110%;
    height: 100%;
    background: url(../images/wave-top.svg) no-repeat top center;
    /*background-size: 100% 100%;*/
    position: absolute;
    top: -2px;
    left: -5%;
    right: 0;
    content: "";
    z-index: 2;
    pointer-events: none;
}

.has-wave-bottom:after {
    width: 105%;
    height: 100%;
    background: url(../images/wave-bottom.svg) no-repeat top;
    background-size: contain;
    position: absolute;
    top: 0px;
    left: -5%;
    right: 0;
    content: "";
    z-index: -2;
    pointer-events: none;
}


/* ------------------------------------------------------------------------ */

/*  Typography
/* ------------------------------------------------------------------------ */

h1 {
    font-weight: 700;
    font-family: "Londrina Solid", Helvetica, Arial, sans-serif;
    font-weight: 900;
    font-size: 176px;
    line-height: 80%;
    color: #fff;
    text-transform: uppercase;
    margin: auto;
    margin-bottom: 0;
}

h1 em {
	display: block;
	margin-left: 0.75em;
	font-style: normal;
}


h2 {
    font-size: 96px;
    font-family: "Londrina Solid", Helvetica, Arial, sans-serif;
    font-weight: 900;
    line-height: 100%;
    line-height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    transform: translateX(-100%) translateY(-100%) rotate(-90deg);
    transform-origin: bottom right 0;
    z-index: 10;
	margin-bottom: 0;
    margin-left: 90px
}

h2.has-club:after {
    content: "";
    display: inline-block;
    background: url(../images/club.svg) no-repeat center;
    background-size: contain;
    transform: rotate(90deg) translateY(5px);
    overflow: hidden;
    height: 60px;
    width: 60px;
}

h3,
.h-intro {
    font-size: 38px;
    font-family: "Londrina Solid", Helvetica, Arial, sans-serif;
    font-weight: 900;
    line-height: 100%;
    line-height: 100%;
    margin-top: 0em;
    margin-bottom: 0.5em;
}

.col-8 h3 {
	margin-top: 2em;
}

p {
    font-size: 18px;
    color: #022D39;
    line-height: 150%;
    margin-bottom: 1.5em;
    font-family: Montserrat, Calibri, Helvetica, Arial, sans-serif;
    font-weight: 400;
}

p:last-child {
    margin-bottom: 0 !important;
}


@media (max-width: 1180px) {
   
}

@media (max-width: 992px) {
    h2 {
		transform: none;
		position: relative;
		margin: 0 0 0.5em;
		font-size: 46px;
	}
	.col-8 h3 {
		margin-top: 0.5em;
		font-size: 32px;
	}
	
}

@media (max-width: 770px) {
    
}

@media (max-width: 576px) {
    
}


/* ------------------------------------------------------------------------ */
/*  Grid
/* ------------------------------------------------------------------------ */

.container-fluid {
    width: 100%;
    float: left;
}

.container {
    width: 1280px;
    margin: auto;
}

@media (min-width: 1260px) {
    .container {
        width: 100%;
        max-width: 1140px;
        padding-left: 0px;
        padding-right: 0px;
    }
}

@media (max-width: 1280px) {
    .container {
        width: 100%;
        padding-left: 20px;
        padding-right: 20px;
    }
}

@media (max-width: 770px) {}

@media (max-width: 576px) {}

.col-1,
.col-2,
.col-3,
.col-4,
.col-5,
.col-6,
.col-7,
.col-8,
.col-9,
.col-10,
.col-11,
.col-12 {
    padding-left: 20px;
    padding-right: 20px;
    float: left;
}

.col-1 {
    width: 8.33%;
}

.col-2 {
    width: 16.66%;
}

.col-3 {
    width: 25%;
}

.col-4 {
    width: 33.33%;
}

.col-5 {
    width: 41.65%;
}

.col-6 {
    width: 50%;
}

.col-7 {
    width: 58.31%;
}

.col-8 {
    width: 66.64%;
}

.col-9 {
    width: 74.97%;
}

.col-10 {
    width: 83.3%;
}

.col-11 {
    width: 91.63%;
}

.col-12 {
    width: 100%;
}

@media (max-width: 992px) {
    .col-lg {
        width: 100%;
    }
    .hide-lg {
        display: none;
    }
    .col-12-lg {
        width: 100%;
    }
}

@media (max-width: 770px) {
    .col-md {
        width: 100%;
    }
    .col-6-md {
        width: 50%;
    }
    .hide-md {
        display: none;
    }
    .col-12-md {
        width: 100%;
    }
}

@media (max-width: 576px) {
    .col-sm {
        width: 100%;
    }
    .col-6-sm {
        width: 50%;
    }
    .hide-sm {
        display: none;
    }
    .col-6-md {
        /*width: 100%;*/
    }
    .col-1,
    .col-2,
    .col-3,
    .col-4,
    .col-5,
    .col-6,
    .col-7,
    .col-8,
    .col-9,
    .col-10,
    .col-11,
    .col-12 {
        padding-left: 10px;
        padding-right: 10px;
        float: left;
    }
}

.row {
    float: left;
    width: 100%;
}

.row-no-pad {
    /*margin-left: -10px;*/
    /*margin-right: -10px;*/
}

.pad-xs {
    padding-top: 6px;
    padding-bottom: 6px;
}

.pad-sm {
    padding-top: 20px;
    padding-bottom: 20px;
}

.pad-md {
    padding-top: 40px;
    padding-bottom: 40px;
}

.pad-lg {
    padding-top: 80px;
    padding-bottom: 80px;
}

.margin-xs {
    margin-top: 12px;
    margin-bottom: 12px;
}

.pad-box-xs {
    padding: 6px;
}

.pad-box-sm {
    padding: 20px;
}

.pad-box-md {
    padding: 40px;
}

.pad-box-lg {
    padding: 80px;
}

.no-pad {
    padding: 0;
}

.no-pad-top {
    padding-top: 0;
}

.no-pad-bottom {
    padding-bottom: 0;
}

.no-pad-right {
    padding-right: 0;
}

.no-pad-left {
    padding-left: 0;
}

.col-center {
    /*margin: auto;*/
    max-width: 960px;
}

@media (max-width: 992px) {
    .pad-box-sm {
        padding: 16px;
    }
}

@media (max-width: 770px) {
    .pad-xs {
        padding-top: 6px;
        padding-bottom: 6px;
    }
    .pad-sm {
        padding-top: 16px;
        padding-bottom: 16px;
    }
    .pad-md {
        padding-top: 20px;
        padding-bottom: 20px;
    }
    .pad-lg {
        padding-top: 26px;
        padding-bottom: 26px;
    }
    .pad-box-md {
        padding: 20px;
    }
    .pad-box-sm {
        padding: 12px;
    }
    .pad-box-lg {
        padding: 26px;
    }
}

@media (max-width: 576px) {
    .pad-sm {
        padding-top: 8px;
        padding-bottom: 8px;
    }
}

/*======== Helper classes ========*/

.text-center {
    text-align: center;
}

.text-left {
    text-align: left;
}

.text-right {
    text-align: right;
}

.is-hidden {
    display: none;
}

.overflow-hidden {
    overflow: hidden !important;
}

.float-left {
    float: left;
}

.float-right {
    float: right;
}

.pos-rel {
    position: relative;
}

.img-responsive,
.img-responsive img {
    max-width: 100%;
    max-height: auto;
}

.flex {
    display: flex;
    flex-wrap: wrap;
}

.flex-col>div {
    flex-grow: 1;
}

.flex>div {
    flex-grow: 1;
}

img.aligncenter,
.aligncenter img {
    margin: 1em auto;
    max-width: 100%;
    height: auto;
    display: block;
}

@media (max-width: 992px) {}

@media (max-width: 770px) {
    /*.flex > div {
		flex-shrink: 0;
		width: 100%;
	}*/
}

@media (max-width: 576px) {
    .col-side p {
        font-size: 16px;
    }
    .flex {}
}

/*======== Lists ========*/
.list-production,
.list-downloads {
    list-style: none;
    margin: 0;
    padding: 0;
}

.list-production li {
    display: block;
    background: url(../images/dots.svg) repeat-x center;
}
.list-production li strong,
.list-production li em {
    display: inline-block;
    background-color: #000;
    padding: 4px 8px;
}

.list-production em {
    float: right;
    font-style: normal;
}

.list-downloads li {
	display: block;
	padding: 4px 8px;
}

.list-downloads li span {
	display: inline-block;
	background-color: #E9F5F3;
	border-radius: 100px;
	padding: 0px 12px 0 0;
	font-weight: 700;
	text-transform: uppercase;
	font-size: 15px;
	color: #FF9019;
}

.list-downloads li span a {
	display: inline-block;
	background-color: #FF9019;
	border-radius: 100px;
	padding: 6px 18px;
	color: #fff;
	margin-right: 6px;
}

.list-downloads li:hover a {
	background-color: #18030F;
}

.list-downloads li:hover span {
	color: #FF9019;
}


/* ------------------------------------------------------------------------ */

/*  Header
/* ------------------------------------------------------------------------ */
.header-main {
    background: #000 url(../images/header.jpg) center bottom no-repeat;
    background-size: cover;
    padding-bottom: 300px;
    height: 0;
    /* padding-bottom: 280px; */
    /* min-height: 760px; */
	position: relative;
}

.logo-title {
    position: absolute;
    left: 50%;
    /* margin-left: -50%; */
    top: 60px;
    max-width: 360px;
    transform: translateX(-50%);
}

.h-logos {
    max-width: 220px;
    position: absolute;
    right: 20px;
    bottom: 140px;
}

@media (min-width: 770px) {
    .logo-title {
        max-width: 800px;
    }
    .header-main {
        padding-bottom: 54%;
        max-height: 80vh;
    }
}


.h-intro {
    color: #fff;
}

.char {
    pointer-events: none;
}

.char1 {
    position: absolute;
    bottom: 90px;
    right: 20px;
}

.char2 {
    position: absolute;
    bottom: -90px;
    left:0px;
}

.char3 {
    position: absolute;
    bottom: -120px;
    right: 60px;
	/* z-index: ; */
}

.has-side-title {
    position: relative;
    padding-left: 120px;
}

.content-main {
    position: relative;
    z-index: 10;
	padding-top: 0px;
	margin-top: 0px;
}

.bk-ireland {
	 background: url(../images/ireland.png) center bottom no-repeat;
	 background-size: 40%;
	 /*background-size: 70%;*/
	 /*overflow: hidden;*/
}

iframe {
	box-shadow:0 10px 10px 0px rgba(0, 0, 0, 0.12);
	margin-bottom: 40px;
	width: 100%;
}

.wave-top {
	width: 100%;
	height: auto;
	position: absolute;
	bottom: -2px;
	left: 0;
	right: 0;
}

.wave-bottom {
	width: 105%;
	height: auto;
	position: absolute;
	top: -2px;
	left: 0;
	right: 0;
}

.video-responsive{
    /*overflow:hidden;*/
    padding-bottom:56.25%;
    position:relative;
    height:0;
}
.video-responsive iframe{
    left:0;
    top:0;
    height:100%;
    width:100%;
    position:absolute;
}


/* ------------------------------------------------------------------------ */

/*  Footer
/* ------------------------------------------------------------------------ */
.footer-main {
    position: relative;
    z-index: 2;
	overflow: hidden;
}
.footer-main,
.footer-main p {
    color: #fff;
}

.footer-main .col-8 {
    padding-top: 160px;
    padding-bottom: 120px;
}

.footer-main .col-4 {
    padding-top: 180px;
    padding-bottom: 120px;
    position: relative;
    z-index: 3;
}

@media (max-width: 992px) {

}

.logo img {
    width: 130px;
}

@media (max-width: 770px) {
	body {
		font-size: 16px;
	}
	h1 {
		font-size: 68px;
	}
	h3 {
		font-size: 32px;
	}
	p {
		font-size: 16px;
	}
	.logo img {
		width: 130px;
	}
	.char1 {
		width: 300px;
		bottom: 40px;
	}
	.char2 {
		display: none;
	}
	.char3 {
		width: 230px;
	}
	.has-side-title {
		padding-left: 20px;
	}
	.footer-main .col-8 {
	    padding-top: 40px;
		padding-left: 10px;
	    padding-bottom: 0px;
	}
	.footer-main .col-4 {
	    padding-top: 30px;
	    padding-bottom: 40px;
	}
	.content-main {
	    position: relative;
	    z-index: 10;
		padding-top: 0px;
		margin-top: -20px;
	}
	.list-production li {
	    display: block;
	    background: none;
		padding: 5px 0;
	}
	.list-production li strong,
	.list-production li em {
	    display: block;
	    background-color: #000;
	    padding: 0;
	}
	
	.list-production em {
	    float: none;
	    font-style: normal;
	}
}

@media (max-width: 576px) {
	.char3 {
		display: none;
	}
}
