@charset "UTF-8";
/* CSS Document */

*{    box-sizing: border-box;}
#container {
    font-family: 'Montserrat', sans-serif;
    }
a {
    -webkit-transition: all 0.5s;
    transition: all 0.5s;}
html{
    font-size:16px;
    color: #444;
	font-weight:300;
    scroll-behavior: smooth;
    }
body{
    padding: 0!important;
    margin: 0!important;
    background-color: #262626;
    }

img[align="left"] {
    margin-right: 20px
}
img[align="right"] {
    margin-left: 20px
}
h1 {
    font-size: 2rem;
    margin: 0 0 10px 0;
    letter-spacing: -1.5px;
    font-weight: 500;
}
h2 {
    font-size: 1.7rem;
    margin: 25px 0 30px 0;
    letter-spacing: -1px;
    font-weight: 500;
}
h3 {
    font-size: 1.6rem;
    margin: 30px 0 7px 0;
    letter-spacing: -0.5px;
    font-weight: 700;
}
h4 {
    font-size: 1.4rem;
    margin: 0 0 5px 0;
    letter-spacing: -0.5px;
    font-weight: 500;
}
h5 {
    font-size: 1.2rem;
    margin: 0 0 5px 0;
    font-weight: 600;
    letter-spacing: -0.5px
}
h6 {
    font-size: 1.1rem;
    margin: 0 0 5px 0;
    font-weight: 600;
    letter-spacing: -0.5px
}
a {
    color: #00417A;
}
img {
    padding: 0;
    border: 0;
    max-width: 100%;
    height: auto;
    -ms-interpolation-mode: bicubic;
	}
pre{
    display: block;
    padding: 9.5px;
    margin: 0 0 10px;
    font-size: 13px;
    line-height: 1.42857143;
    color: #333;
    word-break: break-all;
    word-wrap: break-word;
    background-color: #f5f5f5;
    border: 1px solid #ccc;
    border-radius: 4px;
}
p.callout{
    font-size: 1.7rem;
}
p.space{
    flex:0 0 100%!important;
    margin:7px 0;
}
sub, sup {
  font-size: 55%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
sup {top: -0.6em;}
sub {bottom: 0em;}
 /a[x-apple-data-detectors] {
color: inherit !important;
}

#container {
    max-width: 1440px;
    width: 100%;
    margin: 0 auto;
    height:100%;
    background:white;
    box-shadow:0 0 20px rgba(0,0,0,0.5);
    position: relative;
}
#header{
    width: 100%;
    max-width:1440px;
    position: relative;
    display:flex
}
#hero{
    overflow:hidden;
    width:100%;
    position:relative;
    display: flex;
    flex-wrap: nowrap;
    align-content: stretch;
    align-items: stretch;
    background-color: black;
    min-height:500px;
    min-height:calc(420px + (777 - 420) * ((100vw - 500px) / 940));
}
#hero .scroll-item{
    min-width:100%;
    background-size: cover;
    background-position: center;
    display: flex;
    flex-direction: row;
    align-items: center;
    position: relative
 }
#hero .scroll-item .hero-image {
    position:absolute;
    width:100%;
    height:100%;
    background-size: cover;
    background-position: center;
    top:0
}
#hero .scroll-item video{
    object-fit: cover;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    min-width: 100%;
    min-height: 100%;    
}
#hero .scroll-item .hero-image::after {
    content: '';
	position: absolute;
    height:100%;
    width:100%;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
background: -webkit-linear-gradient(top, rgba(0,0,0,0.28) 0%,rgba(0,0,0,0.28) 10%,rgba(0,0,0,0) 30%,rgba(0,0,0,0) 100%), -webkit-linear-gradient(left, rgba(0,0,0,0.28) 0%,rgba(0,0,0,0.28) 24%,rgba(0,0,0,0) 60%,rgba(0,0,0,0) 100%), linear-gradient(to bottom, rgba(0,0,0,0.28) 0%,rgba(0,0,0,0.28) 10%,rgba(0,0,0,0) 30%,rgba(0,0,0,0) 100%), linear-gradient(to right, rgba(0,0,0,0.28) 0%,rgba(0,0,0,0.28) 24%,rgba(0,0,0,0) 60%,rgba(0,0,0,0) 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#47000000', endColorstr='#00000000',GradientType=0 ); /* IE6-9 */
  }
#hero .scroll-indicator{
    position: absolute;   
    padding-left: 10%;
    bottom: 0;
    left:0;
    padding-bottom: 18%;
    display: flex;
    z-index: 1000;
 }
#hero .content{
    width: 60%;
    z-index: 1000;
    margin: 15% 0 22% 10%;
}
#hero .content > h1, #hero .content > h2, #hero .content > h3{
    color:white;
    font-weight: 600;
    margin: 0 0 10px 0;
    }
#hero .content > h1{font-size:4rem}
#hero .content > h2{font-size:2.9rem}
#hero .content > h3{font-size:2.2rem}
#hero .content > p{
    color:white;
    font-size:2rem;
    margin: 0;
}
#overlay{
    position: absolute;
    width:100%;
    max-width:1440px;
    bottom:0;
    left:0;
    padding-top: 36.45%
}
#overlay svg{
    position: absolute;
    bottom:0;
    width:100%;
    height:auto;
}

#menu{
    background-color: white;
    height: 55px;
    position: absolute;
    display: flex;
    align-items: center;
    flex-direction: row;
    top: 40px;
    width: 80%;
    max-width:1152px;
    z-index: 1000;
    left: 50%;
    transform: translateX(-50%);
    box-shadow: 0 0 12px rgba(0,0,0,0.4);
    }
#menu.fixed{
    position:fixed;
}
#preview #container #menu.fixed{
    position:fixed;
    width: 48vw;
    left: 46vw;
    transform: none
}
#menu-logo{
    flex-shrink:0;
    width:168px;
    height:30px;
    margin:6px 0 10px 10px;
    text-indent: -3000px;
    overflow: hidden;
    background-image: url(http://thelibrary.solutions/newsletters/_assets/westcon-comstor.png);
    background-size:100% 100%;
	}
#menu-logo.comstor{background-image: url(http://thelibrary.solutions/newsletters/_assets/comstor.png); width:111px;}
#menu-logo.westcon{background-image: url(http://thelibrary.solutions/newsletters/_assets/westcon.png); width:111px;}
#menu-nav{
    display:flex;
    flex-grow:1;
    height:100%;
    justify-content: flex-end;
    align-items: center;
    align-content: center;
}
#menu-nav a{
    display:flex;
    height:100%;
    font-size:0.8rem;
    cursor: pointer;
    align-items: center;
    padding:0 20px;
    text-decoration: none;
    color:#444;
}
#menu-nav a:hover{
    background:rgba(0,0,0,0.1)
}
#breadcrumbs{
    padding: 0 20% 0 10%;
    position: relative;
    top:-50px
}
#intro{
    padding: 0 20% 0 10%;
    position: relative;
    top:-30px;
}
#footer{
    background: #323232;
    padding: 40px;
    color:#aaa5a5;
    }
video {
    object-fit: contain;
    width: 100% !important;
    height: auto!important;
}
.section {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: stretch; /*not sure if required */
    padding:60px 20px;
}
/*.section::before{
    content: " ";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 339px 60px 0;
    border-color: transparent #007bff transparent transparent;
}*/
.section:not(.bg){
    background: url(http://thelibrary.solutions/newsletters/_css/img/triangle-blue.png) left bottom no-repeat, url(http://thelibrary.solutions/newsletters/_css/img/triangle-default.png) right top no-repeat;
    background-size: 339px 60px;
}

.section.bg{
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
 }

.section.grey{ background-color: #e4e9eb!important;}
.section.wide{ padding:0}
.section > h3{
    flex: 1 1 100%;
    margin:10px 10px 30px 10px;
}
.article{
    width:100%;
}
.section > .article{
    padding-left:5%;
    padding-left: calc(10% - 20px);
    padding-right:5%;
    padding-right: calc(10% - 20px);
    display:block;
}

.scroller, .mini-scroller{
    width:100%;
    display: flex;
    flex-wrap: nowrap;
    overflow: hidden;
    align-content: stretch;
    align-items: stretch;
    position: relative;
}
.scroller{
    background-color: black;
}
.scroller .scroll-item, .mini-scroller .scroll-item{
    min-width:100%;
    background-size: cover;
    background-position: center;
    display: flex;
    flex-direction: row;
    align-items: center;
    position: relative;
 }
.scroller .scroll-item{color:white;}
.scroller .scroll-item::before{
    content: '';
	position: absolute;
    height:100%;
    width:100%;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
    background: rgba(0,0,0,0.5);
 }
.scroller .scroll-item.zero::before{background: none;}
.scroller .scroll-item.one::before{background: rgba(0,0,0,0.1);}
.scroller .scroll-item.two::before{background: rgba(0,0,0,0.2);}
.scroller .scroll-item.three::before{background: rgba(0,0,0,0.3);}
.scroller .scroll-item.four::before{background: rgba(0,0,0,0.4);}
.scroller .scroll-item .content{
    position: relative;
    margin:100px auto;
    width:60%
 }
.mini-scroller .scroll-item .content{
    width:90%;
    margin:0 auto;
}
.scroller .scroll-item .content p, .scroller .scroll-item .content h3{
    color: white;
 }
.scroller .scroll-indicator{
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom:20px;
    display:flex;
    justify-content: center;
    align-items: center;  
 }
.scroll-indicator div{
    display:block;
    height:7px;
    width:40px;
    margin:0 7px;
    border-radius: 3px;
    background: rgba(255,255,255,0.3);
    color:transparent;
    cursor: pointer;
}
.scroll-indicator div.selected{
    background: rgba(255,255,255,1);
}
.scroller .scroll-previous,.scroller .scroll-next{
    position: absolute;
    width:8%;
    min-width: 50px;
    height:100%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 3rem;
    font-weight: 700;    
    -webkit-transition: all 1s;
    transition: all 1s;
    background: rgba(0,0,0,0.07);
    cursor: pointer;
    z-index: 1000;
 }
.mini-scroller .scroll-previous, .mini-scroller .scroll-next{
    position: absolute;
    height:100%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 3rem;
    font-weight: 700;    
    -webkit-transition: all 1s;
    transition: all 1s;
    cursor: pointer;
    z-index:1000;
}
.scroller .scroll-next, .mini-scroller .scroll-next{
    right:0
 }
.scroller .scroll-next:hover{
    background: rgba(0,0,0,0.3);
    text-indent: 10px
 }
.scroller .scroll-previous:hover {
    background: rgba(0,0,0,0.3);
    text-indent: -10px
}
.scroller > h3{
    position: absolute;
    color: white;
    top: 20px;
    left: 10%;
    z-index:1000
}

.columns{
    display: flex;
    flex-wrap: wrap;
    width: 100%;
}
.section > .columns{
    margin: 0px 10px;
}

.col-full {flex: 0 0 100%}
.col-50 {flex: 1 1 46%}
.col-66 {flex: 1 1 64%}
.col-33 {flex: 1 1 28%}
.col-25 {flex: 1 1 21%}
.col-66-static {flex: 0 0 66%}
.col-50-static {flex: 0 0 50%}
.col-50-static.right{margin-left:50%}
.col-66-static.right{margin-left:50%}

.col-50, .col-66, .col-33, .col-25{margin: 10px}
/*p, ul, ul li, ol, ol li, td, h1, h2, h3, h4, h5, h6 {
    color: #444;
	font-weight:300;
}*/

.inverse{color: white;}

a.cta, input[type=submit]{
    border: 2px solid #22517b;
	border-radius: 3px;
    padding: 18px 26px;
	display: inline-block;
	text-transform: uppercase;
	font-weight: 500;
	text-decoration: none;
	font-size:16px;
	margin-top:20px;
	align-self: flex-start;
}
a.cta:hover, input[type=submit]:hover{
    background-color: #22517b;
    color:white;
}
a.cta.inverse{
    border-color: white;
}
a.cta.inverse:hover{
    color: #22517b;
    background-color:rgba(255,255,255,1);
}


.feature {
/*  width: 100%;
	margin:0 10px 20px 10px;*/
	display: flex;
	flex-direction: column;
    padding: 0;
    /* consider using the break word to prevent width problems on small columns?
    word-break: break-word;*/
}

.feature .content{
	display: flex;
	flex-direction: column;	
	flex-grow:2;
}
.feature a{
    border: 2px solid #22517b;
	border-radius: 3px;
    padding: 18px 26px;
	display: inline-block;
	text-transform: uppercase;
	font-weight: 500;
	text-decoration: none;
	font-size:16px;
	margin-top:auto;
	align-self: flex-start;
}
.feature a:hover{
    background-color: #22517b;
    color:white;
}
.feature h3{
	margin-top:0;
	margin-bottom:24px;
    font-weight: 500;
    font-size:1.4rem;
}
.feature p{
	margin: 0 0 20px 0
}
.feature .image{
    color:#22517b;
    min-height: 1px;
    text-align: center;
}
.feature .image img{width:100% \9}
    
.feature .author {
    margin-bottom:20px;
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    align-items: center;
    padding-bottom: 20px;
    border-bottom:1px solid rgba(0,0,0,0.2)
}
.feature .author > div{
    width: 70px;
    height: 70px;
    position: relative;
    overflow: hidden;
    border-radius: 50%;
    margin-right:20px
}
.feature .author > div img{
    max-width: 200%;
    max-height: 200%;
}
    
.style1 {
    box-shadow: 0 0 8px rgba(0,0,0,0.3);
    background-color: white;	
}
.style1 .content, .style2 .content{
	padding:20px 20px 25px 20px;
}
.style1 .image{
	width:100%;
	/*display: flex;
	justify-content: center;
  	align-items: center;*/
}
.style1 .image.bg-col{
    background-color: #22517b;
}
.style1 .image > span, .feature .image > svg{
    margin: 15px 0
}
.style1 .image > i{
    margin:23px 0
}
.style2{
	flex-direction: row;	
}
.style2 .image{
	flex: 0 0 35%;
	text-align: center
}
.style2 .content{
	flex: 0 0 65%;
	box-sizing: border-box;
    padding-top:0;
}
.style2 .image span{
	margin-top:20px
}
.style3, .style4{
	text-align: center;
    background-color: transparent;
    -webkit-transition: background-color 1s;
    transition: background-color 1s;
}
.style3 .content a, .style4 .content a {
	align-self: center
}
.style3 .image{
	padding-bottom:10px;
}
.style3 .image img, .style4 .image img{
	max-width:120px;
	height:auto
}		
.style4:hover{
	background-color: rgba(0,0,0,0.1);
	transition: all 0.5s;
}
.style4{
	cursor: pointer!important;
}
.style4 .image, .style4 {
	padding:10px;
}
.style4 .content a{display: none!important}

/*nth of type defined first, so it can be overidden by the left/right manual class*/
/*starts at 0, so it starts even then odd

.style5:nth-child(odd),
:not(.style5) ~ .style5:nth-child(even),
:not(.style5) ~ :not(.style5) ~ .style5:nth-child(odd) {
    display: flex;
	flex-direction: row
}
.style5:nth-child(even),
:not(.style5) ~ .style5:nth-child(odd),
:not(.style5) ~ :not(.style5) ~ .style5:nth-child(even) {
    display: flex;
	flex-direction: row-reverse;
}

.style5:nth-child(even) .content,
:not(.style5) ~ .style5:nth-child(even) .content,
:not(.style5) ~ :not(.style5) ~ .style5:nth-child(odd) .content
{
    padding: 20px 5% 20px 10%;
}

.style5:nth-child(odd) .content,
:not(.style5) ~ .style5:nth-child(even) .content,
:not(.style5) ~ :not(.style5) ~ .style5:nth-child(even) .content
{
    padding: 20px 10% 20px 5%;
}
*/
.style5,
.style5 ~ .style5 ~ .style5,
.style5 ~ .style5 ~ .style5 ~ .style5 ~ .style5,
.style5 ~ .style5 ~ .style5 ~ .style5 ~ .style5 ~ .style5 ~ .style5
{
    display: flex;
	flex-direction: row
}
.style5 ~ .style5,
.style5 ~ .style5 ~ .style5 ~ .style5,
.style5 ~ .style5 ~ .style5 ~ .style5 ~ .style5 ~ .style5
{
    display: flex;
	flex-direction: row-reverse;
}
.style5 > .content,
.style5 ~ .style5 ~ .style5 > .content,
.style5 ~ .style5 ~ .style5 ~ .style5 ~ .style5 > .content,
.style5 ~ .style5 ~ .style5 ~ .style5 ~ .style5 ~ .style5 ~ .style5 > .content
{
    padding: 20px 10% 20px 5%;
}
.style5 ~ .style5 > .content
.style5 ~ .style5 ~ .style5 ~ .style5 > .content,
.style5 ~ .style5 ~ .style5 ~ .style5 ~ .style5 ~ .style5 > .content
{
    padding: 20px 5% 20px 10%;
}

.style5.left {
	display: flex;
	flex-direction: row
}
.style5.right, .style2.right {
	display: flex;
	flex-direction: row-reverse;
}
.style5{
    flex: 1 0 100%!important;
    margin: 0 -20px;
 }
.style5 .image{
	flex: 0 0 50%;
	overflow: hidden;
    background-size: cover;
}
.style5 .image.bg-col{
    background-color: #22517b;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size:3vw
}
.style5 .content a{
	margin-top:20px
}
.style5 .image img{
    max-width: unset;
	object-fit: cover;
	width: 100%;
    height: 100%;
}
.style5 .content{
	flex: 0 0 50%;
    display: flex;
    justify-content: center;
    flex-direction: column;

}
.style5.left .content{padding: 20px 10% 20px 5%;}
.style5.right .content{padding: 20px 5% 20px 10%;}



@media only screen and (min-width:1440px) {
    /*Anything above 1440px*/
    #hero{min-height:777px}
    .style5 .image.bg-col{font-size:45px}
 }
    
@media only screen and (min-width:800px) { 
    /*.col-50:first-of-type, .col-66:first-of-type, .col-33:first-of-type, .col-25:first-of-type{margin-left: 0px}
    .col-50:last-of-type, .col-66:last-of-type, .col-33:last-of-type, .col-25:last-of-type{margin-right: 0px}*/
}

@media only screen and (max-width:1000px) {
    #hero .content > h1{font-size:5.4vw}
    #hero .content > h2{font-size:4.3vw}
    #hero .content > h3{font-size:3vw}
    #hero .content > p{font-size:3vw}
    #menu{top: 3vw}
    #breadcrumbs{top:-40px}
}
@media only screen and (max-width:800px) {
    html{font-size:15px}
    .col-md-full{flex: 0 0 100%}
    .col-md-50{flex: 1 1 45%}
    .col-md-66{flex: 1 1 62%}
    .col-md-33{flex: 1 1 31%}
    .col-md-25{flex: 1 1 21%}
    p.callout{font-size: 1.5rem;}
}
@media only screen and (max-width:500px) {		
    html{font-size:14px}
    .col-sm-full{flex: 1 1 100%}
    .col-sm-50{flex: 1 1 45%}
    .col-sm-66{flex: 1 1 62%}
    .col-sm-33{flex: 1 1 30%}
    .col-sm-25{flex: 1 1 20%}
    p.callout{font-size: 1.4rem;}
 
    #menu{
        margin: 0;
        position: relative;
        width:100%;
        top:0;
        justify-content: center;
        flex-direction: column;
        height: auto;
    }
    #menu-nav{
        height:auto;
    }
    #menu-nav a{
        padding-top: 10px;
        padding-bottom:10px;
    }
    #hero .content{
        top:20px
    }
    #hero .content > h1{font-size:32px}
    #hero .content > h2{font-size:26px}
    #hero .content > h3{font-size:20px}
    #hero .content > p {font-size:16px}
    
    #breadcrumbs{top:-30px}
    
    .style5 {
        box-shadow: 0 0 8px rgba(0,0,0,0.3);
    	flex-direction:column!important;
        background-color:white;
        margin-bottom:20px;
    }    
    .style5 .content{padding:20px 40px!important;}
    .style5 .image{
        width:100%;
        min-height:170px;
        display: flex;
        justify-content: center;
        align-items: center;}
    .style5 .image.bg-col{ font-size:1.4rem}
}
@media only screen and (max-width:320px) {
    html{font-size:13px}
}
@media (max-width:1440px) and ( min-aspect-ratio: 24/13 ), (min-width:1440px) and ( max-height:777px )
{
    #hero{min-height:500px;height:100vh;}
    #hero .content > h1{font-size:3rem}
    #hero .content > h2{font-size:2.5rem}
    #hero .content > h3{font-size:2rem}
    #hero .content {margin-top:18%}
    #overlay{padding-top: 66vh;}
    #overlay svg{height:100%}
}
@media ( max-height:500px )
{
    #overlay{padding-top: 330px;}
}
    
.collaboration .practice {stop-color:#00A082}
.collaboration #Triangle-2{fill:#00A082}
.collaboration .feature .image{color:#00A082}
/*.collaboration .section:not(.bg){background: url(img/triangle-blue.png) left bottom no-repeat, url(img/triangle-collab.png) right top no-repeat;background-size: 339px 60px;*/
    
.security .practice {stop-color:#EF9D0A}
.security #Triangle-2{fill:#EF9D0A}    
.security .feature .image{color:#EF9D0A}
/*.security .section:not(.bg){background: url(img/triangle-blue.png) left bottom no-repeat, url(img/triangle-security.png) right top no-repeat;background-size: 339px 60px;*/
    
.infrastructure .practice {stop-color:#9d2c7c}
.infrastructure #Triangle-2{fill:#9d2c7c}
.infrastructure .feature .image{color:#9d2c7c}
/*.infrastructure .section:not(.bg){background: url(img/triangle-blue.png) left bottom no-repeat, url(img/triangle-infrastructure.png) right top no-repeat;background-size: 339px 60px;*/
		
.datacentre .practice {stop-color:#6d5ba3}
.datacentre #Triangle-2{fill:#6d5ba3}
.datacentre .feature .image{color:#6d5ba3}
/*.datacentre  .section:not(.bg){background: url(img/triangle-blue.png) left bottom no-repeat, url(img/triangle-dc.png) right top no-repeat;background-size: 339px 60px;*/
    
.digdist .practice {stop-color:#97C232}
.digdist #Triangle-2{fill:#97C232}
.digdist .feature .image{color:#97C232}
/*.digdist  .section:not(.bg){background: url(img/triangle-blue.png) left bottom no-repeat, url(img/triangle-dd.png) right top no-repeat;background-size: 339px 60px;*/
    
.gds .practice {stop-color:#AF1F3F}
.gds #Triangle-2{fill:#AF1F3F}
.gds .feature .image{color:#AF1F3F}
/*.gds  .section:not(.bg){background: url(img/triangle-blue.png) left bottom no-repeat, url(img/triangle-gds.png) right top no-repeat;background-size: 339px 60px;*/
    
.services .practice {stop-color:#3396BC}
.services #Triangle-2{fill:#3396BC}
.services .feature .image{color:#3396BC}
/*.services  .section:not(.bg){background: url(img/triangle-blue.png) left bottom no-repeat, url(img/triangle-services.png) right top no-repeat;background-size: 339px 60px;*/

#formArea{
    display: none;
    position: fixed;
    background: rgba(0,0,0,0.6);
    text-align: center;
    top:0;
    left:0;
    width:100%;
    height:100%;
    z-index: 9999;
}
#formArea:before {
    /* position: trick to center content vertically */
    content: '';
    display: inline-block;
    height: 100%;
    vertical-align: middle;
}
#formArea > div{
    background: white;
    box-shadow: 0 0 20px rgba(0,0,0,0.5);
    width: 50%;
    min-width:320px;
    margin:auto;

    position: relative;

    /* position: centering vertical and horizontal */
    text-align: left;
    vertical-align: middle;
    display: inline-block;

    /* dimensions: cut off images */
    overflow: auto;
    padding: 25px 25px 0;
    border-bottom: 25px solid transparent;
}
@media only screen and (max-width:340px) {
    #formArea > div{width: 97%!important;}
}
#formAreaClose{
    text-align: right;
    position: absolute;
    top: 6px;
    right: 5px;
}


form.form input.text, form.form textarea.standard, form.form select, form.form input.date {
		border: 1px solid #CCC;
		color: #202020;
		font-size: 16px;
		font-weight:600;
		font-family: 'Open Sans', sans-serif;
		padding: 12px 8px;
		width: 100%;
		margin:0;
		outline: none;
		border-radius: 5px;
	}
	form.form select {
		height: 48px;
	}	
	
	[type="checkbox"]:not(:checked),
	[type="checkbox"]:checked {
	  position: absolute;
	  left: -9999px;
	}
	[type="checkbox"]:not(:checked) + label,
	[type="checkbox"]:checked + label {
	  position: relative;
	  padding-left: 1.95em;
	  cursor: pointer;
	  display:block;
	}
	[type="checkbox"]:not(:checked) + label:before,
	[type="checkbox"]:checked + label:before {
	  content: '';
	  position: absolute;
	  left: 0; top: 0;
	  width: 1.25em; height: 1.25em;
	  border: 2px solid #ccc;
	  background: #fff;
	  border-radius: 4px;
	  box-shadow: inset 0 1px 3px rgba(0,0,0,.1);
	}
	[type="checkbox"]:not(:checked) + label:after,
	[type="checkbox"]:checked + label:after {
	  content: '✔';
	  position: absolute;
	  top: .1em; left: .3em;
	  font-size: 1.3em;
	  line-height: 0.8;
	  color: #09ad7e;
	  transition: all .2s;
	}
	[type="checkbox"]:not(:checked) + label:after {
	  opacity: 0;
	  transform: scale(0);
	}
	[type="checkbox"]:checked + label:after {
	  opacity: 1;
	  transform: scale(1);
	}
	/* disabled checkbox */
	[type="checkbox"]:disabled:not(:checked) + label:before,
	[type="checkbox"]:disabled:checked + label:before {
	  box-shadow: none;
	  border-color: #bbb;
	  background-color: #ddd;
	}
	[type="checkbox"]:disabled:checked + label:after { color: #999;}
	[type="checkbox"]:disabled + label { color: #aaa;}
	/* accessibility */
	[type="checkbox"]:checked:focus + label:before,
	[type="checkbox"]:not(:checked):focus + label:before { border: 2px dotted blue;}
	label:hover:before { border: 2px solid #4778d9!important;}
	
	.plceholder {
		font-weight: 300!important;
		color:#777777
	}
	p.form-field {width: auto;margin:8px 0 0 0}
	p.GDPR_Consent_Received {margin: 35px 0 0 0}
	p.GDPR-Error{border: 2px dashed #73a94e;padding: 20px;border-radius: 15px;}

	p.form-field > label {display:none}