/*! HTML5 Boilerplate v5.3.0 | MIT License | https://html5boilerplate.com/ */

/*
 * What follows is the result of much research on cross-browser styling.
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
 * Kroc Camen, and the H5BP dev community and team.
 */
html { box-sizing: border-box; } *, *:before, *:after { box-sizing: inherit; }
a{-webkit-transition:all 0.4s ease;
         -moz-transition:all 0.4s ease;
               -o-transition:all 0.4s ease;
                     transition:all 0.4s ease;
text-decoration: none;
color: #044C62;}
a:hover{background: #044C62; color: #fff; }
a img{-webkit-transition:all 0.4s ease;
         -moz-transition:all 0.4s ease;
               -o-transition:all 0.4s ease;
                     transition:all 0.4s ease;}
.smoothie{-webkit-transition:all 1s ease;
         -moz-transition:all 1s ease;
               -o-transition:all 1s ease;
                     transition:all 1s ease;}
.smoothiefast{-webkit-transition:all 0.4s ease;
         -moz-transition:all 0.4s ease;
               -o-transition:all 0.4s ease;
                     transition:all 0.4s ease;}
h1,h2,h3,h4,h5,h6{margin: 0 0 10px 0; color: #044C62; font-family: 'Playfair Display', 'Merriweather', serif;}
p{margin: 0 0 10px 0;}
img{max-width: 100%;}
strong{ color: #044C62;}
body{background: url(../img/hexellence.png); background-attachment: fixed; font-family: 'Playfair Display','Merriweather', sans-serif;}
/* ==========================================================================
   Author's custom styles
   ========================================================================== */
.container{width: 96%; max-width: 1440px; margin: 0 auto; background: #ececec; min-height: 1000px; box-shadow:0 3px 10px -4px rgba(0,0,0,0.2);}
.header{width: 100%; padding: 20px; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; background: #fff; border-bottom: 0px solid #DDD; position: relative; -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center;}
.logo{width: 300px;}
.header a:hover{ background: none; color: #044C62}
.logo img{width: 100%;}
.headerdetails{display: -webkit-box;display: -webkit-flex;display: -ms-flexbox;display: flex; -webkit-justify-content: space-around; -ms-flex-pack: distribute; justify-content: space-around; -webkit-flex-wrap: nowrap; -ms-flex-wrap: nowrap; flex-wrap: nowrap; -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center;}
.social{display: none;}
.fa-circle{color:#044C62; }
.social:hover .fa-circle{color:#0785AB; }
.social{margin-left: 10px;}
.phone h3{font-weight: 700; color: #044C62; font-size: 2rem; }
.toggler{display: none;}
.navigation{width: 100%; padding: 0 20px 10px; background: #fff; border-bottom: 0px solid #DDD; position: relative; z-index: 10001;}
.is_stuck .nav{border-top: 0px;}
.is_stuck{box-shadow: 0 1px 3px rgba(0,0,0,0.12)}
.nav{outline: 0px solid red; margin: 0; padding: 10px 0 0; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between;border-top: 1px solid #044C62;}
.nav li{list-style-type: none; margin: 0; padding: 0; }
.nav li a{font-family: 'Playfair Display', 'Merriweather Sans', sans-serif; color: #044C62; font-weight: 700; text-transform: uppercase; font-size: 12px; letter-spacing: 1.2px;}
.nav li a:hover{color: #0CA7D3; background: none;}
.nav li a.current{color: #0CA7D3;}
.nav li a.current:hover{color: #044D5E;}

.phantomnavigation{opacity: 0; width: 96%; max-width: 1440px; margin: 0 auto; padding: 0 20px 10px; background: #fff; position: fixed; top:0; z-index: -1000000;box-shadow: 0 14px 28px rgba(150,150,150,0.15), 0 10px 10px rgba(150,150,150,0.12); -webkit-transition:all 0.4s ease;-moz-transition:all 0.4s ease;-o-transition:all 0.4s ease;transition:all 0.4s ease;}
.phantomnavigation.sticky{opacity: 1;z-index: 1000000;}
.phantomnavigation.sticky .nav{border-top: 0px;}


.content{width: 100%; padding: 0 20px 10px; background: #fff;}
.slideshow{width: 100%; height: auto; max-height: calc(100vh - 150px); overflow: hidden; position: relative; box-shadow: 0 3px 3px -3px rgba(0,0,0,.3);}
.slidecover{width: 100%; height: 100%; position: absolute; top: 0; left: 0; z-index: 1002; pointer-events: none; background: linear-gradient(to right, rgba(0,0,0,0.3) 0%,rgba(0,0,0,0.0) 100%); display: none}
.slideshow figure{width: 100%; height: 100%; margin: 0; padding: 0; position: relative; z-index: 10;}
.caption{position: absolute; top: 50px; left: 50px; width: 400px; height: auto; min-height: 200px; padding: 10px; border: 1px solid #fff; display: flex;display: none; }
.slideshow img{width: 100%; height: 100%; object-fit: cover;}
.icaption{position: absolute; top: 50px; left: 50px; text-align: center; z-index: 1003; }
.icaption h1{font-size: 56px; color: #fff; font-family: 'Playfair Display', serif; text-shadow: 1px 2px 1px rgba(0,0,0,0.5);}
.icaption p{font-size: 26px; color: #fff; font-family: 'Playfair Display', serif; text-shadow: 1px 2px 1px rgba(0,0,0,0.5);}
.icaption:hover{background: none;}
.thegrid{display: -webkit-flex;display: -ms-flexbox;display: flex; -webkit-box-pack: justify; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; background: #fff; padding: 0 20px 20px;}
.block{min-height: 300px; margin-bottom: 10px;  position: relative; background: #ECECEC; display: block; vertical-align: top}


.thegrid{padding-top: 10px; background:rgba(0,0,0,0.05); background: #ECECEC; }
.block{background: #fff; box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24);
  transition: all 0.3s cubic-bezier(.25,.8,.25,1); overflow: hidden;}

.block:hover{box-shadow: 0 7px 14px rgba(0,0,0,0.25), 0 5px 5px rgba(0,0,0,0.22); }

.block1{width: calc(64% - 5px); background: #fff; background-size: contain;}
.block2{width: calc(36% - 5px); background: url(../img/interiordark.jpg) bottom right no-repeat; background-size: cover;}
.block3{width: calc(50% - 5px); background: #fff; background-size: cover;}
.block4{width: calc(50% - 5px); display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center; background: #fff; overflow: hidden;}
.block4:hover{  background: #fff;}
.block4:hover img{transform:scale(1.05);}
.block5{width: calc(36% - 5px); background: #fff url(../img/union-jack-lady.jpg) center center no-repeat; background-size: cover; height: 300px; }
.block6{width: calc(64% - 5px); background: #fff url(../img/watches2.jpg) bottom right no-repeat; background-size: contain;}

.blockcontent{position: relative; z-index: 2; outline: 0px red solid; height: auto; }

.block1 .blockcontent{position: relative; padding: 20px; }
.block1 p{color: #044C62; font-size: 14px; max-width: 50%; }
.block1 h2{color: #044C62; font-size: 32px;}

.block2 .blockcontent{position: relative; padding: 20px; }
.block2 p{color: #fff; font-size: 14px; max-width: 70%; }
.block2 h2{color: #fff; font-size: 24px;}

.block3 .blockcontent{position: relative; padding: 20px;  }
.block3 p{color: #fff; font-size: 14px; max-width: 70%; }
.block3 h2{color: #fff; font-size: 24px;}

.block4 img{width: 80%;}

.block5 .blockcontent{position: relative; z-index: 2; outline: 0px red solid; height: 100%; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; text-align: center; padding: 50px 30px; }
.block5 p{color: #fff; font-size: 14px; padding: 0 20px;}
.block5 h2{color: #fff;}
.box5title{position: absolute; bottom: 0; left: 0; width: 100%; font-size: 1.3rem; padding: 10px 20px; background: rgba(255,255,255,0.4); font-weight: 900; color: #044C62;}

.block6 .blockcontent{position: relative; padding: 20px; text-align: left}
.block6 p{color: #044C62; font-size: 14px; }
.block6 h2{color: #044C62; font-size: 32px;}


.blockcover{position: absolute; top: 0; left: 0; background: rgba(0,0,0,0.0); width: 100%; height: 100%; z-index: 1;}

.readmore{padding: 5px 10px; border: 1px solid #fff; color: #fff; text-transform: uppercase; letter-spacing: 1.2px; }

.readmore:hover{background: #fff; color: #000;}


.thevid{width: auto; height: min-height:100% !important; min-width: 100% !important; position: absolute; top: 0; left: 0;}


.extrablocks{width: 100%; display: flex; justify-content: space-between; flex-wrap: wrap; margin-bottom: 10px;}
.extrablock{width: calc(25% - 7.5px); height: 150px; box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24);
  transition: all 0.3s cubic-bezier(.25,.8,.25,1); overflow: hidden; position: relative;} 
.extrablock:hover{box-shadow: 0 7px 14px rgba(0,0,0,0.25), 0 5px 5px rgba(0,0,0,0.22); }
.extrablock img{width: 100%; height: 100%; object-fit: cover; position: relative; z-index: 5;transition: 0.2s ease all;}
.extrablockcaption{position: absolute; bottom: 0; left: 0; width: 100%; padding: 10px; font-size: 14px; background: rgba(255,255,255,0.8); color: #044C62; font-family: 'Playfair Display', 'Merriweather', serif; z-index: 6;}
.hovercaption{transform: translateY(100%); transition: 0.2s ease all;}
.extrablock:hover .hovercaption{transform: translateY(0%);}
.extrablock:hover .extrablockcaption{background: rgba(255,255,255,1);}
/*.extrablock:hover img{transform: scale(1.05,1.05);}

.toggler{font-size: 16px; text-transform: uppercase; font-weight: 300; letter-spacing: 0px; padding: 0; margin: 0; width: 100%; text-align: right;}
.toggler i{margin-left: 5px; margin-top: -0px;}

  figure:hover, figure:focus {
    -webkit-filter: none !important;
            filter: none !important; }
  figure:hover::after, figure:focus::after, figure:hover::before, figure:focus::before {
    opacity: 0 !important; }

/* ==========================================================================
   THE EXPERIENCE
   ========================================================================== */
.content{background:linear-gradient(to bottom, rgba(255,255,255,1) 50%, rgba(255,255,255,0) 80%);}
.gridex{padding: 0 20px; background:linear-gradient(to bottom, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 20%);}

.content{background:linear-gradient(to bottom, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 0%); padding: 0 0 20px 0; padding: 20px}
.gridex{padding: 20px; background:linear-gradient(to bottom, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 0%);}

.gridexb{background:linear-gradient(to bottom, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 10%) !important;}


.blockex{background: #fff; box-shadow: 0 3px 3px -3px rgba(0,0,0,0.3); overflow: hidden; position: relative;  margin: 0 auto;}
.blockex1{width: 50%;  display: -webkit-box;  display: -webkit-flex;  display: -ms-flexbox;  display: flex; -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center; overflow: hidden; }

.blockexcontent h2:after{
    content: '';
    display: block;
    margin: 20px 0;
    width: 40px;
    border-top: 2px solid #222;
}
.blockexcontent p{font-size: 14px;}

.blockex2{width: 50%;}

/*.blockex1:hover img{transform:scale(1.1);}*/
.blockex1 img{width: 80%; transition: 0.3s all; position: relative; z-index: 3;}
.blockex3 img{width: 80%; transition: 0.3s all; position: relative; z-index: 3;}
.blockexcover{position: absolute; width: 100%; height: 100%; top: 0; left: 0; background: rgba(0,0,0,0.4); z-index: 2;}
.blockexcontent{position: relative; width: 100%; height: auto; padding: 80px 100px;}
.blockvideo{position: absolute; width: 100%; height: 100%; top: 0; left: 0; z-index: 1;}
.quoteblock{width: 100%; background: #222222; display: flex; justify-content: center; align-items: center; flex-wrap: wrap; padding: 100px 20px; margin: 0;}
.quoteblock h2{color: #fff; font-size: 24px; text-align: center; font-weight: 400; width: 100%; margin-bottom: 20px;}

.quoteblock{background: none;}
.quoteblock h2{color: #222;}



.quoteblock p{color: #ccc; text-transform: uppercase; letter-spacing: 1.4px; font-family: 'Merriweather Sans', sans-serif; font-size: 16px; width: 100%;text-align: center; }


.gridex2{padding: 0 20px; flex-direction: row-reverse; margin-bottom: 20px;}

.blockex3{width: 50%; overflow: hidden; background: #fff;display: flex; justify-content: center; align-items: center;}

.choiceblock{width: 100%; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-justify-content: space-around; -ms-flex-pack: distribute; justify-content: space-around; -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; padding:0 20px 20px; margin: 0; position: relative;}
.choiceblock:before{content: ''; position: absolute; left: 20px; top: 0; width: calc(100% - 40px); height:1px; background: #ccc;}
.choiceblock h1{color: #222; font-size: 24px; text-align: center; font-weight: 400; width: 100%; margin-bottom: 20px;}
.choices{width: 100%; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; }


.eachchoice{width: 25%; position: relative;  padding: 40px 20px; text-align: center; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center; -webkit-box-orient: vertical; -webkit-box-direction: normal; -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; }
.eachchoice h2{}
.eachchoice p{font-size: 12px;margin-bottom: 20px;}
.ghostly{padding: 10px 20px; border:1px solid #044C62; color: #044C62; text-transform: uppercase; letter-spacing: 1.2px; font-size: 12px;}
.ghostly:hover{background:#044C62; color: #fff;}
.contentex{display: none;}
.splitter{width:calc(100% - 60px); margin:20px auto 0; height:1px; background:#ccc;}
.eachchoiceafter:after{content: ''; position: absolute; right: 1px; top: 0px; height: calc(100% - 10px); width: 1px; background: #ccc;}
/*.gridex{padding: 0 0 0 0;}
.gridex2{padding: 0 0 0 0;}
.quoteblock{background: #222;}
.quoteblock h1{color: #fff;}

.gridex{background:linear-gradient(to bottom, rgba(255,255,255,0) 0%, rgba(255,255,255,0) 20%);}

.exslideshow{width: 100%; height: auto; min-height: 200px; overflow: hidden; position: relative; box-shadow: 0 3px 3px -3px rgba(0,0,0,.3); background: url(../img/slide1.jpg) center center; background-size: cover;}


/* ------------------------------------------
  PRODUCTS
--------------------------------------------- */
.blockunite{width: 50%;  border: 8px solid #fff; padding: 20px; margin: 0 auto }
.blocknoborder{border: 0px solid #fff;}
.blockborder{border: 8px solid #fff;}

.inventory{width: 100%;  border: 8px solid #fff; padding: 20px; }
.blockunite a:hover{background: none;}
.productgrid{display: -webkit-flex;display: -ms-flexbox;display: flex; -webkit-box-pack: justify; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; padding: 20px; background:-webkit-linear-gradient(top, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 0%); background:linear-gradient(to bottom, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 0%);}
.productblock2{width: 50%; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center;}
.productblock3{width: 50%; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-pack: start; -webkit-justify-content: flex-start; -ms-flex-pack: start; justify-content: flex-start; -webkit-box-align: start; -webkit-align-items: flex-start; -ms-flex-align: start; align-items: flex-start; outline: 0px solid red;margin: 0 auto }
.productblockcontent{position: relative; width: 100%; height: auto; padding: 80px 100px;}
.productblocknopad{padding-top: 20px;}
.productblockcontent h1{font-size: 24px;}
.productblockcontent h1:after{
    content: '';
    display: block;
    margin: 20px 0;
    width: 40px;
    border-top: 2px solid #222;
}
.displaynone{display: none;}
.padding20{padding: 20px;}
.clearleft{width:100%; clear:left;}
.minheight600{min-height:600px;}
/* ------------------------------------------
  NEWS
--------------------------------------------- */
.newscontent h1{font-size: 24px;}
.newscontent{width: 80%; max-width: 1000px; margin: 20px auto; border: 8px solid #fff; padding: 20px; }
.newsstory{padding: 20px 0;}
.archiveblock{width: 80%; max-width: 1000px; margin: 0 auto 40px; }
.eacharchive{width: 100%; display: block; padding: 20px; background: #fff; box-shadow: 0 3px 3px -3px rgba(0,0,0,0.3); margin-bottom: 10px; transition: all 0.3s cubic-bezier(.25,.8,.25,1); }
.eacharchive:hover{box-shadow: 0 7px 14px rgba(0,0,0,0.25), 0 5px 5px rgba(0,0,0,0.22); background: #fff; }

#f_your_message{height: 70px;}


/* ==========================================================================
   NEWS
   ========================================================================== */
.newstextcontent{width: 100%;}
.newsimagecontent{width:100%; margin: 60px auto; outline: 0px solid red;box-shadow: 0 30px 90px rgba(0,0,0,0.25), 0 7px 20px rgba(0,0,0,0.05);}
.bodyhead{margin-bottom: 10px;}

.embed-container {
	position: relative;
	padding-bottom: 56.25%; /* 16:9 */
	padding-top: 0;
	height: 0;
}
.embed-container iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
    border: none;
}
.bloggrid {display: grid; grid-gap: 40px; grid-template-columns: 1fr; width: 100%; margin: 40px 0;}


.box {position: relative; overflow: hidden; box-shadow: 0 60px 60px 0 rgba(0,0,0,.2); box-shadow: 0 40px 40px 0 rgba(22,24,34,.2); border-radius: 0; background: #fff; position: relative;  border: 10px solid #fff; min-height: 250px;}
/*fallback for ie - setting width less than 100% breaks the grid*/
.box{width: 100%; display: inline-block;}

.itembox{max-height: 400px; min-height: 300px;}

.boximage{position: absolute; top: 0; left: 0; width: 100%; height: 100%; transition: all 0.3s ease; overflow: hidden; z-index: 3;}
.boxtext{padding: 20px; color: rgba(255,255,255,1);}
.boxtitle{font-weight: 400; font-size: 24px;}
.boxbody{font-weight: 400; font-size: 16px;}
.boxdate{font-weight: 400; font-size: 14px; margin: 20px 0; padding: 5px 10px; border-bottom: 1px solid #fff; border-top: 1px solid #fff; display: inline-block; transition: 0.3s all ease;}
.boxbodyblog{font-weight: 400; font-size: 14px;}
.boxline{width: 20%; height: 1px; background: rgba(255,255,255,1); display: block; margin: 10px 0;}
.boxlink{font-weight: 700; color: #d73323;}

.boxcover{position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 4; background: rgba(26,26,26,0.6); display: flex; justify-content: flex-start; flex-wrap: wrap; align-items: center; transition: 0.3s all ease;}
.boxicon{font-size: 48px; color: #fff; transition:transform .8s ease-in-out;}
.box:hover .boxicon{ transform: rotate(720deg) scale(1.3,1.3);}
.box:hover{box-shadow:  0rem 0.875rem 1.5rem 0rem rgba(32,46,66,0.059);}
.box:hover .boximage img{transform: scale(1.1,1.1);}
.box:hover .boxcover{background: rgba(26,26,26,0.7);}

.boxtextheader{font-weight: 700; font-size: 16px;}
.boxtextsub{font-size: 13px;}
.objectfit img{width: 100%; height: 100%; object-fit: cover; position: relative;}
.objectfit{background-size: cover; background-position: center center;}
.compat-object-fit img{opacity: 0;}
/* ------------------------------------------
  FOOTER STYLES
--------------------------------------------- */
.footer{width: 100%; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; background: #044C62; background: #fff; padding: 20px;font-size: 12px;}

.lowerfooter{
    border-top:1px solid #ccc;
    width: 100%;
	text-align: right;
	color: #044C62;
	padding: 0;
    font-size: 12px;
   background: #fff;
    padding: 10px;
display: flex; justify-content: space-between; flex-wrap: wrap; align-items: center;
}
.footer-left{width: calc(100% - 320px);}


.footer-right{

	margin-top: 6px;
	width: 300px;
    font-size: 15px;
    text-align: right;
   
}
.footer-right span{margin-left: 10px;}
.footer-right p{margin-top: 0; margin-bottom: 2px;}

.footerlogo{margin-bottom: 10px;}
.footerlogo img{width: 200px;}

.footer a{color: #044C62; font-weight: 400;}
.footer-left a{text-transform: uppercase; font-family: 'Playfair Display', 'Merriweather', serif; font-size: 16px;}
.footer a:hover{color: #0CA7D3; background: none;}
.footer a.footcurrent{color: #0CA7D3; }
.lowerfooter a{color: #0CA7D3;}
.lowerfooter a:hover{ background: none;}

/* ------------------------------------------
  FORM STYLES
--------------------------------------------- */
.theform{width:100%; margin: 0 auto; padding: 0; margin-bottom: 20px;}
.itemform{background: #fff; margin: 20px 0; padding: 20px; display: flex; justify-content: space-between; flex-wrap: wrap;}
.halfinput{width:  50%; position: relative;}
.fullinput{width: 100%; position: relative;}
.textinput{width: 100%; border-top: 1px solid #d9d9d9; border-left: 1px solid #d9d9d9; border-right: 1px solid #d9d9d9; padding: 5px;}
.textinput:focus{background: #d9d9d9;}

.iteminput{width: 100%; border-top: 1px solid #d9d9d9; border-left: 1px solid #d9d9d9; border-right: 1px solid #d9d9d9; padding: 5px;}
.iteminput:focus{background: #d9d9d9;}

.submitbutton{width: 100%; border: 1px solid #044C62; background: #044C62; color: #fff; padding: 15px; transition: 0.4s; text-transform: uppercase; font-size: 1rem;}
.submitbutton:hover{background: #666;}
.submitbutton:active{background: #999;}
.theform label{padding: 10px 0px; outline: 0px solid red; display: block;}
.theform textarea{min-height: 160px;}
.mapbox{width: 100%; height: 500px; margin-bottom: 20px;}


/* ------------------------------------------
  CATALOGUE
--------------------------------------------- */
.catcontent{position: relative; width: 100%; height: auto; padding: 20px;}
.catcontent h1{font-size: 24px;}
.catcontent h1:after{
    content: '';
    display: block;
    margin: 20px 0;
    width: 40px;
    border-top: 2px solid #222;
}
.catcontent p{font-size: 14px;}


.jplist-panel{display: -webkit-flex;display: -ms-flexbox;display: flex; -webkit-box-pack: justify; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; background: rgba(63,98,111,0.05); padding: 20px;}
.jplist-drop-down {
                    width: 18%;
                    font-size: 12px;
    
                }
                
                
                
                .jplist-panel button {
                    font-size: 12px;
                }
                
                .jplist-label {
                    font-size: 12px;
                }
                .jplist-icon{line-height: 15px;}
                .text-filter-box {width: 18%;}
                .jplist-panel input[type="text"]{width: calc(100% - 35px); font-size: 12px;}
                .jplist-icon{width: 35px;}
                
                .searchlist{width:100%; padding:20px 0; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-pack: start; -webkit-justify-content: flex-start; -ms-flex-pack: start; justify-content: flex-start; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap;background: rgba(63,98,111,0.05); padding: 20px;}
                .list-item{width: calc(33.333333% - 10px); border: 0px solid #ccc; background: #fff; padding: 0; margin-bottom: 15px; font-weight: 300; position: relative; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-align: start; -webkit-align-items: flex-start; -ms-flex-align: start; align-items: flex-start;}
                .list-item:hover{background: #fff; box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24); color: #044C62}
                .list-item:hover .listlink{background: #3F626F; color: #fff; }
                .list-item:nth-of-type(3N+2) {margin: 0 13px 15px 13px;}
                /*.list-item:nth-of-type(4N+3){margin: 0 13px 15px 7px;}*/
                .listimage2{width: 40%; padding: 20px; outline: 0px solid green;}
                
                
                
                .listinfo{width:60%; padding: 20px 20px 30px 20px; }
                .listlink{position: absolute; bottom: 0; right: 0; padding: 5px 10px; color: #3F626F; font-size: 0.8rem;}
                /*.listlink:hover{background: #3F626F; color: #fff; }*/
                .listdetails{font-size: 0.9rem; font-style: italic; padding: 0;}
                .title h3{font-size: 1.1rem;}
                .eachtopic{background: #3F626F; color: #fff; font-size: 0.8rem; padding: 3px 5px; margin: 0 5px 5px 0;}
                .eachcollection{border: 1px solid #3F626F; color: #3F626F; font-size: 0.8rem; padding: 3px 5px; margin: 0 5px 5px 0;}
                .topiclist{display: flex; justify-content: flex-start; flex-wrap: wrap;}
                .eachtopichead{display: none;}
                

.shownone{display: none;}

/* ==========================================================================
   LINKS
   ========================================================================== */
.linkholder{width: 80%; max-width: 1200px; margin: 0 auto;}
.eachuseful{width:100%; background:#fff; padding:20px 20px 40px 20px; margin-bottom:20px; position:relative;}
.usefullink:hover {background: #fff;}
.usefullink{position:absolute; bottom:0; right:0; padding:10px; background: #ececec; color: #1a1a1a;}
.smallchevron{font-size:0.7rem;}

.sitemapul{list-style-type: none;}
.sitemapul li{margin-bottom:5px; background:#f3f3f3; padding: 10px;}
.sitemapul li ul li{margin-bottom:0px; background:none;}
.sitemapul li ul{list-style-type: none;}

/* ==========================================================================
   GDPR
   ========================================================================== */

.ptable{margin: 20px 0;}
.ptable tr td{padding: 20px;}
.ptable thead th{padding: 20px; background: #044C62; }
.ptable thead th p strong{font-weight: 700; color: #fff;}
.smallprint{font-size: 12px !important;}
.smallprint p{font-size: 12px !important; line-height: 20px;}




.has-tooltip:hover + .tooltip,
.has-tooltip:focus + .tooltip,
.has-tooltip.hover + .tooltip {
  opacity: 1;
  transform: translate(-50%, -100%) scale(1) rotate(0deg);
  pointer-events: inherit;
}
.has-tooltip:hover + .textinput { background-color: yellow;}
.has-tooltip{color: #044C62;}
.tooltip {
  display: block;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -50%) scale(0.75) rotate(5deg);
  transform-origin: bottom center;
  padding: 10px 30px;
  border-radius: 5px;
  background: rgba(0, 0, 0, 0.75);
  text-align: center;
  color: #fff;
  transition: 0.15s ease-in-out;
  opacity: 0;
  width: 100%;
  max-width: 100%;
  pointer-events: none;
  z-index: 5;
}
.tooltip.blue {
  background: rgba(4,76,98, 0.75);
}
.tooltip.blue:after {
  border-top: 5px solid rgba(4,76,98, 0.75);
}
.tooltip.red {
  background: rgba(231, 29, 54, 0.75);
}
.tooltip.red:after {
  border-top: 5px solid rgba(231, 29, 54, 0.75);
}
.tooltip.green {
  background: rgba(46, 196, 182, 0.75);
}
.tooltip.green:after {
  border-top: 5px solid rgba(46, 196, 182, 0.75);
}
.tooltip.purple {
  background: rgba(165, 147, 224, 0.75);
}
.tooltip.purple:after {
  border-top: 5px solid rgba(165, 147, 224, 0.75);
}
.tooltip:hover {
  opacity: 1;
  transform: translate(-50%, -100%) scale(1) rotate(0deg);
  pointer-events: inherit;
}
.tooltip img {
  max-width: 100%;
}
.tooltip:after {
  content: "";
  display: block;
  margin: 0 auto;
  widtH: 0;
  height: 0;
  border: 5px solid transparent;
  border-top: 5px solid rgba(0, 0, 0, 0.75);
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 100%);
}

.field {
  position: relative;
  padding: 20px;
}


.privacylinks{width: 100%; padding: 40px 40px 20px; background: #003E4A; display: flex; justify-content: space-between; flex-wrap: wrap; }
.privacylink{width: calc(50% - 10px); margin-bottom: 20px; padding: 10px; background: #fff;color: #003E4A; transition: all 0.3s cubic-bezier(.25,.8,.25,1); box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24); text-transform: uppercase; font-weight: 300; font-size: 14px;}
.privacylink:hover{background: #0CA7D3; }



/* ==========================================================================
   MODAL
   ========================================================================== */

.modal {
  position: fixed;
  top: 0;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 0vh;
  background-color: transparent;
  overflow: hidden;
  transition: background-color 0.25s ease;
  z-index: 1200001;
}
.modal.open {
  position: fixed;
  width: 100%;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0.5);
  transition: background-color 0.25s;
}
.modal.open > .content-wrapper {
  transform: scale(1);
}
.modal .content-wrapper {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  width: 80%;
  max-width: 1000px;
  margin: 0;
  padding: 2.5rem;
  background:#f7f7f7;
  border-radius: 0.3125rem;
  box-shadow: 0 0 2.5rem rgba(0, 0, 0, 0.5);
  transform: scale(0);
  transition: transform 0.25s;
  transition-delay: 0.15s;
    max-height: 90vh;
    overflow: auto;
}
.modal .content-wrapper .close {
  position: absolute;
  top: 0.5rem;
  right: 0.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  border: none;
  background-color: transparent;
  font-size: 1.5rem;
  transition: 0.25s linear;
    cursor: pointer;
}
.modal .content-wrapper .close:before, .modal .content-wrapper .close:after {
  position: absolute;
  content: '';
  width: 1.25rem;
  height: 0.125rem;
  background-color: black;
}
.modal .content-wrapper .close:before {
  transform: rotate(-45deg);
}
.modal .content-wrapper .close:after {
  transform: rotate(45deg);
}
.modal .content-wrapper .close:hover {
  transform: rotate(360deg);
}
.modal .content-wrapper .close:hover:before, .modal .content-wrapper .close:hover:after {
  background-color: tomato;
}
.modal .content-wrapper .modal-header {
  position: relative;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  margin: 0;
  padding: 0 0 1.25rem;
}
.modal .content-wrapper .modal-header h2 {
  font-size: 1.5rem;
  font-weight: bold;
    color: #044C62;
}
.modal .content-wrapper .modal-content {
  position: relative;
  display: flex; flex-wrap: wrap; width: 100%;padding: 0;
}
.modal .content-wrapper .modal-content p {
  font-size: 0.875rem;
  line-height: 1.75;
    width: 100%;
}
.modal .content-wrapper .modal-footer {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  width: 100%;
  margin: 0;
  padding: 1.875rem 0 0;
}
.modal .content-wrapper .modal-footer .action {
  position: relative;
  margin-right: 0.625rem;
  padding: 0.625rem 1.25rem;
  border: none;
  background-color: slategray;
  border-radius: 0.25rem;
  color: white;
  font-size: 1rem;
  font-weight: 600;
    text-transform: uppercase;
  overflow: hidden;
  z-index: 1;
}
.modal .content-wrapper .modal-footer .action:before {
  position: absolute;
  content: '';
  top: 0;
  left: 0;
  width: 0%;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.2);
  transition: width 0.25s;
  z-index: 0;
}
.modal .content-wrapper .modal-footer .action:first-child {
  background-color: #044C62;
}
.modal .content-wrapper .modal-footer .action:last-child {
  background-color: #033d4e;
}
.modal .content-wrapper .modal-footer .action:hover:before {
  width: 100%;
}
/* ==========================================================================
   EXAMPLE Media Queries for Responsive Design.
   These examples override the primary ('mobile first') styles.
   Modify as content requires.
   ========================================================================== */
@media only screen and (min-width: 1025px) {
    .togglee{display: flex !important;}
}
@media only screen and (max-width: 1024px) {
    .extrablock{width: calc(50% - 7.5px);margin-bottom: 10px;}
    .extrablocks{margin-bottom: 0;}
.block1, .block2, .block3, .block4, .block5, .block6{width: 100%; min-height: 200px;}
    .blockcover{position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgba(255,255,255,0.8); }
.footer-left{max-width: 100%; width:100%; text-align: center; }
.footer-right{width: 100%; max-width: 100%; text-align: center; }
    .footer-right i{display: none;}
    .lowerfooter{text-align: center;}
    .block1 h2{font-size: 22px;}
    .block6 h2{font-size: 22px;}
    .block6 p{max-width: 80%;}
    .block1 p{max-width: 80%;}
    .block1{background-size: 30%;}
    .icaption{position: absolute; top: 0px; left: 0px; text-align: center; z-index: 1003; width: 100%; padding: 20px; }
.icaption h1{font-size: 26px; color: #fff; font-family: 'Playfair Display', serif;}
.icaption p{font-size: 18px; color: #fff; font-family: 'Playfair Display', serif;}
    
.navigation{padding-bottom: 10px;}
.is_stuck{box-shadow: 0 0px 0px rgba(0,0,0,0.12);}
    .toggler{display: block; text-align: right; position:fixed; top: 10px; right: 2%; padding: 10px; outline: 0px solid red; z-index: 100000000; background: #fff;}
    .togglee{display: none;}
    .navigation{width: 100%; text-align: center;}
    
    .nav{border: 0px solid #fff;}
    .nav li a{font-family: 'Playfair Display', 'Merriweather Sans', sans-serif; color: #044C62; font-weight: 700; text-transform: uppercase; font-size: 16px; letter-spacing: 1.2px;}
    .nav li{padding: 0 0 10px;}
    .logo{width: 100%; text-align: left; margin-bottom: 10px;}
    .headerdetails{width: 100%;  justify-content: flex-start; text-align: left; margin: 0;}
    .phone{text-align: left; }
    .phone h3{font-size: 1.6rem;}
    .header{padding-bottom: 0;}
    .logo img{width: 100%; max-width: 260px;}
    
.blockex1, .blockex2, .blockex3, .blockex4, .blockex5, .blockex6{width: 100%;}
    .quoteblock{padding: 40px;}
    .eachchoice{width: 100%; padding: 40px 20px; background: #fff; box-shadow: 0 3px 3px -3px rgba(0,0,0,0.3); margin-bottom: 10px;}
    .eachchoiceafter:after{content: ''; position: absolute; left: 0px; top:100%; width: calc(100% - 10px); height: 1px; background: #ccc;}
    .footsocial{width: 100%; text-align: center; margin-bottom: 10px;}
    .footpowered{width: 100%; text-align: center;}
    
    .blockunite{width: 100%; margin-bottom: 20px;}
    .productblock2{width: 100%; background: #fff; box-shadow: 0 3px 3px -3px rgba(0,0,0,0.3); padding: 20px;}
    .productblock3{width: 100%; background: #fff; box-shadow: 0 3px 3px -3px rgba(0,0,0,0.3); padding: 20px;}
    .productblockcontent{padding: 0;}
    .choiceblock:before{height: 0px;}
    .mapbox{width: calc(100% - 40px); margin: 0 auto 20px;}
    
    .list-item{width: 100%;}
    .list-item:nth-of-type(3N+2) {margin: 0 0 15px 0;}
    .jplist-drop-down {width: 100%;}
    .text-filter-box {width: 100%;}
    .jplist-panel input[type="text"]{width: calc(100% - 35px);}
    .jplist-icon{width: 35px;}
}
@media only screen and (max-width: 700px) {
    .icaption{position: relative; background: #fff; display: block;}
    .icaption h1{font-size: 22px; color: #044C62; text-shadow: 0px 0px 0px rgba(0,0,0,0.5);}
    .icaption p{font-size: 14px; color: #044C62; text-shadow: 0px 0px 0px rgba(0,0,0,0.5); }

    .blockexcontent{position: relative; width: 100%; height: auto; padding: 40px 50px;}
       .extrablock{width: 100%; margin-bottom: 10px; height: 200px;}
    .extrablocks{margin-bottom: 0;}
}





@media screen and (max-width: 400px) {
    .list-item{align-items: flex-start;}
    .listimage2{width: 30%; padding: 20px; }
    .listinfo{width:70%; padding: 20px 20px 30px 0px;}
    .privacylink{width: 100%;}

}
/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */

html {
    color: #222;
    font-size: 1em;
    line-height: 1.4;
}

/*
 * Remove text-shadow in selection highlight:
 * https://twitter.com/miketaylr/status/12228805301
 *
 * These selection rule sets have to be separate.
 * Customize the background color to match your design.
 */

::-moz-selection {
    background: #b3d4fc;
    text-shadow: none;
}

::selection {
    background: #b3d4fc;
    text-shadow: none;
}

/*
 * A better looking default horizontal rule
 */

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}

/*
 * Remove the gap between audio, canvas, iframes,
 * images, videos and the bottom of their containers:
 * https://github.com/h5bp/html5-boilerplate/issues/440
 */

audio,
canvas,
iframe,
img,
svg,
video {
    vertical-align: middle;
}

/*
 * Remove default fieldset styles.
 */

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

/*
 * Allow only vertical resizing of textareas.
 */

textarea {
    resize: vertical;
}

/* ==========================================================================
   Browser Upgrade Prompt
   ========================================================================== */

.browserupgrade {
    margin: 0.2em 0;
    background: #ccc;
    color: #000;
    padding: 0.2em 0;
}

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

/*
 * Hide visually and from screen readers
 */

.hidden {
    display: none !important;
}

/*
 * Hide only visually, but have it available for screen readers:
 * http://snook.ca/archives/html_and_css/hiding-content-for-accessibility
 */

.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

/*
 * Extends the .visuallyhidden class to allow the element
 * to be focusable when navigated to via the keyboard:
 * https://www.drupal.org/node/897638
 */

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
}

/*
 * Hide visually and from screen readers, but maintain layout
 */

.invisible {
    visibility: hidden;
}

/*
 * Clearfix: contain floats
 *
 * For modern browsers
 * 1. The space content is one way to avoid an Opera bug when the
 *    `contenteditable` attribute is included anywhere else in the document.
 *    Otherwise it causes space to appear at the top and bottom of elements
 *    that receive the `clearfix` class.
 * 2. The use of `table` rather than `block` is only necessary if using
 *    `:before` to contain the top-margins of child elements.
 */

.clearfix:before,
.clearfix:after {
    content: " "; /* 1 */
    display: table; /* 2 */
}

.clearfix:after {
    clear: both;
}



/* ==========================================================================
   Print styles.
   Inlined to avoid the additional HTTP request:
   http://www.phpied.com/delay-loading-your-print-css/
   ========================================================================== */

@media print {
    *,
    *:before,
    *:after,
    *:first-letter,
    *:first-line {
        background: transparent !important;
        color: #000 !important; /* Black prints faster:
                                   http://www.sanbeiji.com/archives/953 */
        box-shadow: none !important;
        text-shadow: none !important;
    }

    a,
    a:visited {
        text-decoration: underline;
    }

    a[href]:after {
        content: " (" attr(href) ")";
    }

    abbr[title]:after {
        content: " (" attr(title) ")";
    }

    /*
     * Don't show links that are fragment identifiers,
     * or use the `javascript:` pseudo protocol
     */

    a[href^="#"]:after,
    a[href^="javascript:"]:after {
        content: "";
    }

    pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }

    /*
     * Printing Tables:
     * http://css-discuss.incutio.com/wiki/Printing_Tables
     */

    thead {
        display: table-header-group;
    }

    tr,
    img {
        page-break-inside: avoid;
    }

    img {
        max-width: 100% !important;
    }

    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3;
    }

    h2,
    h3 {
        page-break-after: avoid;
    }
}
