/* Fonts */

@font-face { font-family: LoraVariable; src: url(/library/fonts/Lora/Variable.otf) format("opentype"); }

@font-face { font-family: LatoRegular; src: url(/library/fonts/Lato/Regular.otf) format("opentype"); }
@font-face { font-family: LatoBold; src: url(/library/fonts/Lato/Bold.otf) format("opentype"); }
@font-face { font-family: LatoLight; src: url(/library/fonts/Lato/Light.otf) format("opentype"); }


/* Colors */

:root {
    --blue: #62B5E5;
    --purple: #912990;
    --grey: #F5F2F0;
    --txtgrey: #999999;
    --black: #363636; 
    --heading: inherit;
}

/* CSS Reset */

* { background-repeat: no-repeat; background-position: center center; box-sizing: border-box; }
body { margin: 0px; padding: 0px; width: 100%; height: auto; background-color: #ffffff;  font-size: 100%; line-height: 1.2; text-rendering: optimizeLegibility; -webkit-font-smoothing: antialiased; font-family: LatoRegular;  font-weight: 400; font-style: normal; }
a { text-decoration: underline; text-decoration-color: transparent; transition: all .3s ease-in-out;  font-weight:700; color: var(--text);  font-family: LatoBold;  font-style: normal; }
a:hover { text-decoration-color: currentColor; }
ul, ol { padding: 0px; margin: 0px; }
li { list-style-type: none; vertical-align: top; }
h1, h2, h3, h4, h5, h6 { padding: 0px 0px 0px 0px; margin: 0px; font-size: 120%; font-family: LatoBold  }
h2 { color: var(--blue); font-size: 230%; }
h2, .titletxt { color: var(--blue); font-size: 190%; padding-bottom: 20px; }
fieldset { padding: 0px; margin: 0px; border: none; }
input, textarea, select { font-size: 90%; background: transparent; border: solid #000000 1px; padding: 5px;  box-sizing: border-box; }
input[type=text], input[type=password]  { height: 30px; }
input[type=button], input[type=submit] { cursor: pointer;  padding: 10px 20px 10px 20px; }
select { color: var(--text); height: 30px; padding-right: 30px; background-image: none; background-repeat: no-repeat; background-position: right 10px center; }
p { padding: 0px 0px 20px 0px; margin: 0px; }
strong { font-weight: normal;  font-family: LatoBold; font-weight: 700; font-style: normal; }
table { border-spacing: 0px; }
td, th { padding: 0px; text-align: left; vertical-align: top; }
td { text-align: center; }
.text-start { text-align: left;}
.hidden { display: none; }
.spacer { clear: both; height: 0px; display: none;}


/* General */

.layoutcredits { display: none; }
.layoutmiddle { position: relative; max-width: 1240px; margin: 0px auto; }
.pagecomponents_inner>div { margin-bottom: 30px; }

@media ( max-width: 1240px )
{
  .pagecomponents_inner>div { width: 96%; margin: 0px auto 30px auto; }
}

/* Header */

.layoutheader { margin-bottom: 20px; }
.layoutheader .logo { margin: 0px auto; width: fit-content; }

/* Menu */

.layoutheader .toggle { display: none; }
.layoutheader .menu { border-top: 1px solid #DCDCDC; border-bottom: 1px solid #DCDCDC; background-color: white;  }
.layoutheader .menu ul, .layoutfooter .menu ul { max-width: 700px; margin: 0px auto; display: flex; justify-content: space-between; }
.layoutheader .menu ul li.selected { border-bottom: 4px solid var(--blue); }
.layoutheader .menu ul li a { padding: 10px 0px; display: block; text-decoration: none; text-transform: uppercase; font-size: 80%; font-family: LatoRegular; font-weight: 500;}
.layoutheader .menu ul li a:hover { color: var(--blue); }

@media (max-width: 750px )
{
  .layoutheader .menu ul li.selected { border: none; }
  .layoutheader .toggle { display: block;  text-align: center; }
  .layoutheader .toggle i  { color: var(--blue); font-size: 200%;  }

  .layoutheader .menu ul { display: none; }
  .layoutheader .menu.toggleon ul { display: block; position: absolute; z-index: 999; background-color: var(--blue); width: 100%;}
  .layoutheader .menu.toggleon ul li a { color: white; font-size: 100%;}
  .layoutheader .menu.toggleon ul { padding: 20px; }
}

/* Footer */

.layoutfooter .layoutfooter_inner .white  { border-top: 1px solid var(--blue); padding: 30px 0px; margin-top: 50px; }
.layoutfooter .layoutfooter_inner .white .items { max-width: 800px; margin: 0px auto; }

@media ( max-width: 840px )
{
  .layoutfooter .layoutfooter_inner .white .items { max-width: 960%; display: block; }
  .layoutfooter .menu ul { display: block;}
}

.layoutfooter .menu { padding-bottom: 50px; }
.layoutfooter .menu ul { max-width: 100%;  }
.layoutfooter .menu ul li a { color: var(--txtgrey); }

.layoutfooter .link { width: fit-content; margin: 0px auto; margin-bottom: 30px;  }
.layoutfooter .link .links i { color: var(--blue); font-size: 270%;}

.layoutfooter .copyright { text-align: center; color: var(--txtgrey); font-size: 90%; }
.layoutfooter .copyright p:last-of-type { padding-bottom: 0px; }


/* Database Random */

.dbase_random { background-color: var(--grey); padding: 30px 15px; position: relative; max-width: 1240px; margin: 0px auto 20px auto; width: 100%; }
.dbase_random h2 { font-weight: bold; font-size: 130%; padding-bottom: 20px; }
.dbase_random span { display: block; padding-left: 300px; padding-bottom: 20px;  }
.dbase_random span:first-child { padding-bottom: 10px; }
.dbase_random span:first-child::before { font-family: Arial; content: '	\201C'; position: absolute; left: 100px; top: 80px; font-size: 700%; color: var(--blue); }
.dbase_random span.column_TestiName { display: inline-block; font-weight: bold; padding-right: 10px; }
.dbase_random .column_TestiName::before { content: '\270E'; color: var(--blue); padding-right: 10px;  }
.dbase_random span.column_TestiCompany { display: inline-block; padding: 0px;}

@media ( max-width: 600px )
{
    .dbase_random span { padding: 0px; }
    .dbase_random span:first-child { padding-top: 50px; }
    .dbase_random span:first-child::before { top: 50px; left: 10px; }
}

/* Blogs */

.list_article { background-color: var(--blue); color: white; padding: 20px;; }
.list_article h2, .list_article .list, .list_article .noarticles { max-width: 1240px; margin: 0px auto; }
.list_article h2 { font-size: 160%; font-weight: bold; padding-bottom: 20px; color: white; }
.list_article .noarticles p { padding-bottom: 0px; }
.list_article .list { display: flex; justify-content: space-between; }
.list_article .list .article { background-color: white; width: 24%; padding: 10px; }
.list_article .list .article .headline { color: var(--blue); border-bottom: 2px solid black; margin-bottom: 10px; padding-bottom: 5px;  }
.list_article .list .article .image img { width: 100%; height: auto; }
.list_article .list .article .abstract { color: black; }
.list_article .list .article .link { color: var(--blue); margin: 0; }

@media ( max-width: 950px )
{
  .list_article .list .article { width: 49%; }
  .list_article .list { flex-wrap: wrap; gap: 10px; }
}
@media ( max-width: 540px )
{
  .list_article .list .article { width: 100%; }
  .list_article .list { flex-wrap: wrap; gap: 10px; }
}

/* Blog page */

.blogs .list_article { background: none; }
.blogs .list_article .list { flex-wrap: wrap; gap: 15px; justify-content:flex-start; }
.blogs .list_article .list .article { background-color: var(--grey);}

.richtextcontent  ol { margin-left: 20px; }
.richtextcontent  li { list-style: disc inside var(--blue); }

@media ( max-width: 950px )
{
  .blogs .list_article .list .article { width: 49%; }
  .blogs .list_article .list { flex-wrap: wrap; gap: 10px; }
}
@media ( max-width: 560px )
{
  .blogs .list_article .list .article { width: 100%; }
  .blogs .list_article .list { flex-wrap: wrap; gap: 10px; }
}

/* Article page */

.std_newsarticlea { padding-bottom: 50px; }
.std_newsarticlea h1 { color: white; background-color: var(--blue); padding: 10px; margin-bottom: 10px; }

/* Carousels */ 

.feat_carousel .carousel { overflow: hidden; position: relative; height: 100%; }
.feat_carousel .carousel>ul { width: 20000em; position: relative; height: 100%; }
.feat_carousel .carousel>ul>li {float: left;height: 100%;list-style-type: none;width: 1240px;}

.feat_carousel .util_textbox_inner { display: flex; gap: 20px; justify-content: space-between; }

.jcarousel-control.skip { display: flex; justify-content: space-between;}
.jcarousel-control.skip a { width: 20px;height: 20px;border-radius: 100%;background-color: #cccccc;font-size: 0;margin-right: 5px;opacity: 0.5;}
.jcarousel-control.skip a.active {background-color: var(--blue); opacity:1;}


.feat_carousel .content, .banner .content {  color: white; background-color: var(--blue); }
.feat_carousel .content h2, .banner .content h2 { font-size: 125%;  color: white;}
.feat_carousel .link a {font-family: Arial; font-weight:bold; color:white; padding: 15px 30px 15px 0px; font-size: 95%; display: inline-block; }
.feat_carousel .util_textbox { overflow: hidden; max-width: 1240px; margin: 0px auto 0px auto; color: var(--white); }
.feat_carousel .content, .banner .content { font-size: 200%; box-sizing: border-box; padding: 150px 40px 20px 40px; width: 35%;float: left;clear: both;}


.banner h3 { font-size: 90%; }

@media ( min-width: 1240px ) /* desktop */
{
  .feat_carousel {max-width: 1240px;  }
  .pagecomponents_inner .feat_carousel, .pagecomponents_inner .video { margin: 0px auto 250px auto; }
  .feat_carousel .imageleft, .banner .imageleft { height: 400px; object-fit: cover; }
    .feat_carousel .imageleft img, .banner .imageleft img { height: 100%; width: auto; }

  .feat_carousel .content, .banner .content {  }

  .jcarousel-control.skip {position: absolute;left: 50%; transform: translate(-50%, 0); width: 150px; margin-top: 20px;}
}

@media ( max-width: 1240px )
{
  .slide .imageright {text-align: center;}
  .slide .imageright { height: 300px; background-size: cover;  background-position: center center; }
  .pagecomponents_inner .feat_carousel, .pagecomponents_inner .video { margin: 0px auto 250px auto; }
}
@media ( max-width: 1200px  )
{
  .feat_carousel .content, .banner .content { padding: 60px 40px 20px 40px; }
}

@media ( max-width: 800px ) /* mobile */
{
  .slide {height: 315px;text-align: center; position: relative;}
  .slide .content h2 { padding: 20px 0px 10px 0px;; font-size: 150%; text-align: center; margin: 0px;}
  .slide .imageright {text-align: center;}
  .slide .imageright {height: 250px;background-size: cover; position: absolute; bottom: -0px; width: 100%;}
  .slide .content { padding: 0px 20px 20px 20px; line-height: 1.5;}
  .slide .link {  padding-right: 20px; }
  .slide .nextprevious { display: none; }
  .slide .jcarousel-control.skip {position: absolute; left: 50%; top: 810px; width: 100px; margin-left: -50px;}
}

@media ( min-width: 800px ) and ( max-width: 1240px )
{
  .slide .imageright {width: 50%;height: 315px;background-size:cover; background-position: right; margin-left: 490px}
  .slide { height: 300px;}
  .slide .content { padding: 10px; width: 40%; float: left;  clear: left; }
  .slide .link { float: left; clear: left; padding-left: 10px; }

}

@media ( max-width: 800px )
{

	.slide .content { padding-top: 0px; }
	.slide {height:  450px;}
	.jcarousel-control.skip { display: none;}
}

@media ( max-width: 720px )
{
  .pagecomponents_inner .feat_carousel, .pagecomponents_inner .video { margin: 0px auto 280px auto; }
}

/* Banner */

.pagecomponents_inner>.banner { margin-bottom: 240px; }
.banner .util_textbox_inner, .about .banner .content { display: flex; }

.banner .imageleft { width: 100%; background-size: cover; }

@media ( max-width: 1240px )
{
  .banner .imageleft { height: 400px; }
}
@media ( max-width: 650px )
{
  .banner .util_textbox_inner, .about .banner .content { flex-direction: column-reverse;}
  .banner .imageleft { height: 250px; }
  .feat_carousel .content, .banner .content { font-size: 150%; box-sizing: border-box; padding: 20px; width: 100%; text-align: center;}
}


/* Free download */

.layoutleft { position: absolute; top: 460px; max-width: 1240px; width: 100%; left: 50%; transform: translate(-50%, 0); }

.freedownload { background-color: var(--purple); padding: 20px; color: white; text-align: center;  }
.freedownload h2 { color: white; font-size: 140%; padding-bottom: 10px; }
.freedownload p { padding: 0px; line-height: 1.5; font-weight: bold; font-size: 110%; }


video { margin: 0px auto; display: block;}

@media ( max-width: 1280px )
{
  .layoutleft { max-width: 96%; }
}

@media (max-width: 750px) {
  video { width: 96%; height: auto; }
  body:has(.section2) .layoutleft { top: 420px; }
}

@media (max-width: 600px) {
  body:has(.section2) .layoutleft { top: 350px; }
}

@media (max-width: 480px) {
  body:has(.section2) .layoutleft { top: 280px; }
}

@media (max-width: 380px) {
  body:has(.section2) .layoutleft { top: 220px; }
}


/* Grey */

.grey { background-color: var(--grey); padding: 50px; }
.grey .std_content_inner { display: flex; align-items: center; justify-content: space-between; font-size: 110%; }
.grey .std_content_inner h2, .grey .std_content_inner .content { width: 49%; }
.grey .std_content_inner h2 { color: var(--blue); font-weight: bold; line-height: 1.5; font-size: 140%;  }

@media ( max-width: 1100px )
{
  .grey { padding: 20px;}
  .grey .std_content_inner { display: block; }
  .grey .std_content_inner h2, .grey .std_content_inner .content { width: 100%; }
}

/* Blue */

.blue { background-color: var(--blue); color: white; padding: 20px; font-size: 120%; }
.blue p:first-child { padding: 0px; font-size: 130%; font-weight: bold;  }
.blue ul { padding: 30px 0px; display: flex; justify-content: first baseline; flex-wrap: wrap; gap: 1%; margin: 0px auto; width: fit-content; }
.blue ul li { width: 32%; line-height: 2; list-style: square;  }

@media ( max-width: 1150px )
{
  .blue ul { display: block; margin: 0; margin-left: 20px; }
  .blue ul li { width: 100%;}
}

/* Help */

.help { max-width: 800px; margin: 0px auto; font-size: 110%; }
.help h2 { color: var(--blue); font-weight: bold; font-size: 120%; }
.help ul { padding: 20px 0px 40px 20px; }
.help ul li { line-height: 2; font-size: 110%; }
.help ul li::before  { content: "\25A0"; color: var(--blue); padding-right: .5em; }
.help strong a { color: var(--blue); }

@media ( max-width: 840px )
{
  .help { max-width: 96% ;}
}

/* Boxes */

.boxes { border-top: 2px solid #f3f3f3; padding: 40px 0px; }
.boxes .items { display: flex; max-width: 700px; margin: 0px auto; gap: 20px;  }
.boxes .items > div { background-color: var(--grey); width: 49%; padding: 20px; }

@media ( max-width: 700px )
{
  .boxes .items { display: block; }
  .boxes .items > div { width: 100%; margin-bottom: 20px; }
  .boxes .items > div:nth-child(2) { margin: 0px; }
}

/* GDPR */

.gdpr .util_textbox_inner { display: flex; align-items: center; justify-content: space-between; }
.gdpr .util_textbox_inner>div { width: 49%; }

.gdpr .util_textbox_inner>div img { width: 100%; height: auto;}
.gdpr .util_textbox_inner> .content { text-align: center; color: var(--blue); font-size: 140%;}
.gdpr .util_textbox_inner> .content p:first-of-type { font-family: LatoBold; font-size: 120%; }
.gdpr .util_textbox_inner> .content p:last-of-type { padding-top: 20px;}
.gdpr .util_textbox_inner> .content p a { text-decoration: none; color: white; background-color: var(--blue); padding: 7px 14px; border-radius: 20px; font-family: LatoRegular; font-weight: 300; font-size: 90%;  }
.gdpr .util_textbox_inner> .content p a:hover { background-color: #3AA2DF; }

@media ( max-width: 700px )
{
  .gdpr .util_textbox_inner { display: block; }
  .gdpr .util_textbox_inner>div { width: 100%; margin-bottom: 20px; }
  .gdpr .util_textbox_inner>div:nth-child(2) { margin-bottom: 0px;}
}

/* Our services */

.ourservices .titletxt { text-align: center; padding-bottom: 30px;  }
.ourservices .items { display: flex; justify-content: space-between; }
.ourservices .items>div { background-color: var(--blue); width: 24%; border-radius: 10px;  box-sizing: border-box; padding: 30px 10px; text-align: center; }
.ourservices .items>div:nth-child(1) { background-color: #A0D7EF; }
.ourservices .items>div:nth-child(2) { background-color: #87C6E4; }
.ourservices .items>div:nth-child(3) { background-color: #6DB2D8; }
.ourservices .items>div:nth-child(4) { background-color: #559CCF; }
.ourservices .items>div i { font-size: 180%; }
.ourservices .items>div h2 { color: black; font-size: 120%; font-weight: normal; padding: 15px 0px;  }
.ourservices .items>div p { font-family: LatoLight; }
.ourservices .items>div p:last-child { padding: 0px; line-height: 1.5; }
.ourservices .items>div {  }


@media ( max-width: 950px )
{
  .ourservices .items { flex-wrap: wrap; gap: 10px;}
  .ourservices .items>div { width: 49%; }
}
@media ( max-width: 500px )
{
  .ourservices .items>div { width: 100%; }
}


/* Contact */

.surv_standard a { color: var(--blue); }
.surv_standard form .label { display: none; }
.surv_standard form .field input { width: 100%; height: 40px; margin-bottom: 20px; background-color: #F5F2F0; border: solid 1px #e6e6e6; }
.surv_standard form .field textarea { width: 100%; resize: vertical; min-height: 150px; margin-bottom: 20px; background-color: #F5F2F0; border: solid 1px #e6e6e6; }
input[type=submit] { color: white; background-color: var(--blue); cursor: pointer; border: none; border-radius: 20px; font-size: 120%; padding: 10px 30px; }
input[type=submit]:hover { background-color: #3AA2DF; }


/* Services */

table { width: 100%; }
.services tr:nth-child(odd) { background-color: #F5F2F0; }
.services td, .services th { padding: 10px 5px; border-top: 1px solid #dee2e6; border-right: 1px solid #dee2e6;  }
.services thead tr:first-of-type { background: none; }
.services th { text-align: center;}
.services tr:last-of-type .services td { border-bottom: 1px solid #dee2e6; }
.services td:first-of-type, .services th:first-of-type { border-left: 1px solid #dee2e6; }

.services h2.titletxt { text-align: center; padding-bottom: 30px;  }
.services .pagecomponents_inner>.banner { margin-bottom: 240px; border: none; padding: 0px;  }
.services .pagecomponents_inner>div { border-bottom: 1px solid black; padding-bottom: 50px; margin-bottom: 50px; }


.services .monthly .items, .services .standalone .items { display: flex; justify-content: space-between;}
.services .monthly .items>div, .services .standalone .items>div { box-shadow: 0 0 5px #dddddd; border-radius: 5px; padding: 20px; width: 49%;  }
.services .monthly .items>div h2, .services .standalone .items>div h2 { font-family: LatoRegular; font-size: 130%; font-weight: normal; }
.services .monthly .items>div h3, .services .standalone .items>div h3 { padding-bottom: 20px; font-family: LatoRegular; font-weight: normal; }
.services .monthly .items>div i, .services .standalone .items>div i { font-size: 250%; padding-bottom: 20px; color: var(--blue); }
.services .monthly .items>div ul li, .services .standalone .items>div ul li { line-height: 1.5; font-size: 90%; }
.services .monthly .items>div ul li::before, .services .standalone .items>div ul li::before { content: '-'; padding-right: 5px; }
.services .monthly .items>div ul li strong, .services .standalone .items>div strong { font-family: LatoRegular; }
.services .standalone .items>div { width: 32%; }

@media ( max-width: 740px )
{
  .services .monthly .items, .services .standalone .items { flex-wrap: wrap; gap: 10px; }
  .services .monthly .items>div, .services .standalone .items>div { width: 100%; }
}

/* About */

.about .banner .content { font-size: 120%; width: 100%; padding: 0px; height: 400px; }
.about .banner .content iframe { width: 1000px; height: 400px; }
.about .banner .content p { padding: 0px; }
.about .banner .content div { padding: 20px;  }

.about .std_content img { margin: 20px; margin-top: 0px; margin-left: 0px;  }
.about .std_content p:nth-child(1) { padding: 0px; }
.about .std_content h3 { padding-bottom: 10px; color: var(--blue); }
.about .std_content ul { display: flex; }
.about .std_content ul li img { height: 150px; width: auto; }

@media ( max-width: 1260px )
{
  .about .banner .content iframe {width: 700px;}
}
@media ( max-width: 950px )
{
  .about .banner .content iframe {width: 500px;}
}
@media ( max-width: 740px )
{
  .about .banner .content iframe {width: 400px;}
}
@media ( max-width: 650px )
{
  .about .banner .content { height: 100%; }
  .about .banner .content iframe { height: 200px; width: 100%; padding: 0px 20px 20px 20px;}
}
@media ( max-width: 500px )
{
  .about .std_content img { float: none !important; display: block; margin: 0px auto 20px auto; }
}

/* Privacy Documents */

.section79 .layoutleft { top: 60px; }

.termsofuse h1, .privacynotice h1 { color: var(--blue); font-size: 200%; text-align: center; padding-bottom: 150px; }
.privacynotice h3, .termsofuse h3 { padding: 30px 0px 20px 0px; font-size: 150%; ; }
.privacynotice ul, .termsofuse ul { margin-left: 20px; margin-bottom: 20px;  }
.privacynotice ul li, .termsofuse ul li { list-style: disc; }
.privacynotice table, .termsofuse table { margin-bottom: 20px; }

/* Resource Hub */

.resourcehub .purple { background-color: var(--purple); color: white; text-align: center; padding: 20px 0px 0px 0px; }
.resourcehub .purple p { max-width: 800px; margin: 0px auto; font-size: 110%; }

/* Product list */

.layoutcontent .shop_productlist ul { margin-top: 20px; display: flex; width: 100%; justify-content: center; gap: 50px;  }
.layoutcontent .shop_productlist ul li { transition: all .3s ease-in-out; width: fit-content; list-style: none; width: 400px; background-color: white; border-radius: 10px; box-shadow: 11px 11px 10px -8px rgba(120,120,120,0.5); position: relative; top: 0; }
.layoutcontent .shop_productlist ul li:hover { top: -10px; }
.layoutcontent .shop_productlist ul li .image img { width: 400px; height: auto; border-radius: 10px 10px 0px 0px; object-fit: cover; height: 160px; }
.layoutcontent .shop_productlist ul li .name, .layoutcontent .shop_productlist ul li .summary, .layoutcontent .shop_productlist ul li .price {  padding: 0px 10px; }
.layoutcontent .shop_productlist ul li .name { font-size: 120%; padding: 10px; text-align: center;  font-weight: bold; }
.layoutcontent .shop_productlist ul li .name a { color: var(--bs-heading-color); }
.layoutcontent .shop_productlist ul li .summary { padding-bottom: 10px; font-size: 110%; text-align: center; }
.layoutcontent .shop_productlist ul li .price {  font-weight: 700; padding-bottom: 10px; text-align: center; }

@media ( max-width: 870px )
{
    .layoutcontent .shop_productlist ul li .image img, .layoutcontent .shop_productlist ul li { width: 300px; }
    .layoutcontent .shop_productlist ul { gap: 30px;  }
}
@media ( max-width: 670px )
{
    .layoutcontent .shop_productlist ul li .image img, .layoutcontent .shop_productlist ul li  { width: 250px; }
}
@media ( max-width: 560px )
{
    .layoutcontent .shop_productlist ul { flex-direction: column; max-width: 96%; margin: 0px auto; }
    .layoutcontent .shop_productlist ul li .image img, .layoutcontent .shop_productlist ul li { width: 100%; }
}


/* Shop */

.layoutcontent .shop_product { padding-bottom: 30px; }
.layoutcontent .shop_product .summary { margin-bottom: 30px; text-align: center;}
.layoutcontent .shop_product img, .layoutcontent .shop_product .name { margin-bottom: 20px;  }
.layoutcontent .shop_product .name, .layoutcontent .shop_basketpage h1, .layoutcontent .my-downloads .pageheader_inner h1 { display: block; text-align: center; font-size: 2rem; line-height: 150% ;}
.layoutcontent .shop_product .image { margin: 0px auto; width: fit-content; }
.layoutcontent .shop_product .description { max-width: 800px; margin: 0px auto; }
.layoutcontent .shop_product .description p { font-size: 1.3rem; padding-bottom: 10px; }
.layoutcontent .shop_product .description ul { padding-bottom: 20px; margin-left: 10px;  }
.layoutcontent .shop_product .description ul li { list-style: disc; line-height: 1.5; }
.layoutcontent .shop_product .price, .layoutcontent .shop_product .available { font-size: 1.1rem; font-weight: bold; max-width: 800px; margin: 0px auto; text-align: center; }
.layoutcontent .shop_product .options { text-align: center; }
.layoutcontent .shop_product .options .label { margin-top: 20px; }
.layoutcontent .shop_product .options .value { margin-top: 10px; }
.layoutcontent .shop_product .quantity { display: flex; justify-content: center; gap: 15px; margin: 10px 0px; display: none;}
.layoutcontent .shop_product .addtobasket { padding-top: 20px; }
.layoutcontent .shop_product .addtobasket input[type=submit], .layoutcontent .shop_basketpage .buttons a, .layoutcontent .shop_basketpage .buttons input[type=submit], .layoutcontent .shop_basketpage .buttons input[type=button], .layoutcontent .my-downloads a { box-sizing: border-box; color: white; background: #62B5E5; border: 2px solid #62B5E5; padding: 7px 15px; border-radius: 20px; cursor: pointer; font-size: 1.1rem; transition: all .3s ease-in-out; }
.layoutcontent .shop_product .addtobasket input[type=submit]:hover, .layoutcontent .shop_basketpage .buttons a:hover, .layoutcontent .shop_basketpage .buttons input[type=submit]:hover, .layoutcontent .shop_basketpage .buttons input[type=button]:hover, .layoutcontent .my-downloads a:hover { background: none; color: black; }
.layoutcontent fieldset { border: none; } 


@media ( max-width: 845px )
{
  .layoutcontent .shop_product { padding: 0px 20px 40px 20px; }
  .layoutcontent .shop_product img { width: 100%; }
}
@media ( max-width: 400px )
{
  .layoutcontent .shop_product .description ul { margin-left: 20px;}
}

/* Basket */

.layoutcontent .shop_basketpage table .price, .layoutcontent table .total, .layoutcontent table .remove, .layoutcontent table .quantity { text-align: right; }
.layoutcontent .shop_basketpage table select { max-width: 50px; color: black; padding: 0px;  width: 30px; height: 25px; }

table th { padding-bottom: 10px; border-bottom: 1px solid grey; }
table td { text-align: left; padding: 10px 0px; border-bottom: 1px solid grey; ; }
.remove { color: var(--blue); font-size: 90%; }
.totaltotalrow th { border: none; padding-top: 10px; text-align: right; }
.totaltotalrow .total { font-weight: normal; }

/* Basket */

.layoutcontent .shop_basketpage h1 { margin-bottom: 20px; color: white; background-color: var(--blue); padding: 20px 0px;  }
.layoutcontent .shop_basketpage .basket, .layoutcontent .checkout, .layoutcontent .shop_basketpage .shop_basket, .layoutcontent .my-downloads .shop_downloads { max-width: 700px; margin: 0px auto; }
.layoutcontent .shop_basketpage .buttons { margin: 20px 0px; text-align: center; }
.layoutcontent .shop_basketpage .buttons a { line-height: 1; }
.layoutcontent .shop_basketpage .buttons input[type=submit], .layoutcontent .shop_basketpage .buttons input[type=button] { padding: 6px 15px;}
.layoutcontent .shop_basketpage .buttons .updatebasket { margin: 0px 20px; }



@media ( max-width: 740px )
{
    .layoutcontent .shop_basketpage .basket, .layoutcontent .checkout, .layoutcontent .my-downloads .shop_downloads { max-width: 96%; }
}
@media ( max-width: 490px )
{
    .layoutcontent .shop_basketpage .buttons .updatebasket { margin: 20px; }
}

/* Checkout */

.layoutcontent .checkout { text-align: center; }
.layoutcontent .checkout h2, .layoutcontent .shop_basket h2 { font-size: 1.5rem; text-align: center; }
.layoutcontent .checkout .field_group>.label { padding: 30px 0px 20px 0px; font-size: 1.2rem; }
.layoutcontent .checkout .field_text>.label, .layoutcontent .checkout .field_select>.label, .layoutcontent .checkout .field_textarea>.label { padding: 10px 0px 5px 0px; }

.layoutcontent .checkout .field_section { padding-top: 20px;  }
.layoutcontent .checkout .errors { color: red; font-weight: 700;}

.layoutcontent .shop_basket h2 { padding: 20px 0px; }
.layoutcontent .shop_basket .confirm>h2 { padding: 0px 0px 20px 0px; }
.layoutcontent .shop_basket .details { display: flex; justify-content: center; gap: 50px; }
.layoutcontent .shop_basket .details h2 { text-align: left; }
.layoutcontent .shop_basket .paymentform { text-align: center; }
.layoutcontent .shop_basket .details h2, .layoutcontent .shop_basket .payment h2 { font-size: 1.2rem; font-weight: normal; }


@media ( max-width: 650px )
{
    .layoutcontent .shop_basket .details { flex-direction: column; width: 400px; margin: 0px auto; }
}
@media ( max-width: 440px )
{
    .layoutcontent .shop_basket .details { width: 50% }
}
@media ( max-width: 340px )
{
    .layoutcontent .checkout input[type=text], .layoutcontent .checkout select, .layoutcontent .checkout textarea { width: 96%; }
}

.checkout input[type=text], .checkout textarea, .checkout select { width: 300px;  }
.checkout textarea { resize: vertical; }
.checkout .field { padding-bottom: 10px; }
.checkout .field>.label { padding-bottom: 10px !important; }
.checkout .field_group>.label label { font-family: LatoLight; font-size: 110%; }

.section7 .layoutleft, .section6 .layoutleft, .section86 .layoutleft { display: none; }
.section7 .pagecomponents_inner>.banner, .section6 .pagecomponents_inner>.banner, .section86 .pagecomponents_inner>.banner { margin-bottom: 20px; }

.freed .pagecomponents_inner { max-width: 800px; margin: 0px auto; display: flex; align-items: center; justify-content: space-between;  }
.free { text-align: center; }
.free ul li { margin: 30px 0px; }
.free ul li:first-of-type { margin-top: 10px; }
.free ul li a { color: white; background-color: var(--purple); padding: 7px 15px; border-radius: 10px; display: block; width: fit-content; margin: 0px auto;  }


@media ( max-width: 840px ) 
{
  .freed .pagecomponents_inner { max-width: 96%; flex-wrap: wrap; flex-direction: column-reverse; }
}