/* ************************************* */
/*                                       */
/* Global                                */
/*                                       */
/* ************************************* */

* {
  box-sizing: border-box;
  -webkit-font-smoothing: none;
  -webkit-font-smoothing:subpixel-antialiased;
}

::selection {
  background-color: #1a8aaa;
  color: white;
}

*,
html,
body {
  margin:0;
  padding:0;
}

body {
  font-family: var(--font-primary);
  font-weight: var(--font-primary-weight);
  font-size: var(--font-primary-size);
  background:var(--color-grey-light);
}

.is-hidden {
  display:none;
}

.img--responsive {
  width:100%;
  height:auto;
  display:block;
}

.img--mb {
  margin-bottom:20px;
}

.img--home {
  margin-left:0;
  width:100%;
}

@media only screen and (min-width: 768px) {

  .img--home {
    margin-left:-5px;
  }
}

.center {
  text-align:center;
  margin-left:auto;
  margin-right:auto;
}

.flexcenter {
  display:flex;
  justify-content: center;
  align-items: center;
}

.flexvcenter {
  display:flex;
  align-items: center;
}



/* ************************************* */
/*                                       */
/* Page layout                           */
/*                                       */
/* ************************************* */

.page__header,
.page__main
{
  max-width: var(--layout-page-maxwidth-with-padding);
  padding-left: var(--padding-primary-horizontal-px);
  padding-right: var(--padding-primary-horizontal-px);
  margin:0 auto 0 auto;
}

.page__nav__inner
{
  margin:0 auto 0 auto;
}

@media only screen and (min-width: 768px) {

  .page__header,
  .page__main
  {
    padding-left: var(--padding-secondary-horizontal-px);
    padding-right: var(--padding-secondary-horizontal-px);
  }

}



/* ************************************* */
/*                                       */
/* Header                                */
/*                                       */
/* ************************************* */

.logo {
  align-items: center;
  min-height:60px;
  display:flex;
}

@media only screen and (min-width: 576px) {

  .logo {
    overflow:hidden;
    margin-right:var(--margin-primary-horizontal-px);
  }

}

@media only screen and (min-width: 768px) {

  .logo {
    /*height:50px;
    min-height:50px;*/
    height: 48px;
    min-height: 48px;
  }

}

.logo__img {
  height:auto;
  width: 100%;
}

@media only screen and (min-width: 768px) {

  .logo__img {
    height:100%;
    width:auto;
  }

}

.logo-small {
  display:none;
}

@media only screen and (min-width: 768px) {

  .logo-is-visible .logo-small {
    display:block;
    line-height:0;
  }

}

.logo-mobile {
  position:absolute;
  left:var(--margin-primary-horizontal-px);
  z-index:10;
  align-items: center;
  min-height:60px;
  display:flex;
}

@media only screen and (min-width: 768px) {

  .logo-mobile {
    display:none;
  }

}

.logo-mobile .logo-mobile__img {
  max-height:26px;
}


.page__header {
  position:absolute;
  font-family: var(--font-header);
  font-size: var(--font-header-size);
  font-weight: var(--font-header-weight);
  display:flex;
}

@media only screen and (min-width: 768px) {

  .page__header {
    position:relative;
    padding-top:var(--padding-secondary-vertical-px);
    padding-bottom:var(--padding-secondary-vertical-px);
    flex-direction: row;
    align-items: center;
    justify-content:space-between;
  }

}



/* ************************************* */
/*                                       */
/* Content                               */
/*                                       */
/* ************************************* */

@media only screen and (min-width: 576px) {

  .content_site form#abo input[type="text"],
  .content_site form#abo .SumoSelect{
    width: 80%;
  }
  .content_site form#abo input[type="text"].input--number {
    width: 20%;
  }

}


/* ************************************* */
/*                                       */
/* Sections                              */
/*                                       */
/* ************************************* */

.section {
  padding-top:var(--padding-secondary-vertical-px);
  padding-bottom:var(--padding-quaternary-vertical-px);
  position:relative;
  clear:both; /* Legacy clearfix */
}

.content_site .section:first-of-type{
  padding-top: 0;
}

/* Legacy clearfix */
.section:after {
  content: "";
  display: table;
  clear: both;
}

.section--line {
  padding-top:var(--padding-tertiary-vertical-px);
  padding-bottom:var(--padding-secondary-vertical-px);
  border-top: 1px solid var(--color-grey-dark);
}

.section--title {
  padding-top:40px; /* Should not be responsible */
}

.h2--section + .row {
  padding-top:15px;
  padding-bottom:15px;
}

#layout_content div.home {
  padding-bottom: var(--margin-secondary-vertical-px);
}

/* ************************************* */
/*                                       */
/* Blocks and Boxes                      */
/*                                       */
/* ************************************* */

.box {
  border:1px solid var(--color-accent);
  background: var(--color-accent);
  color:var(--color-light);
  padding:1.25rem;
}

.box--grey-dark {
  border:1px solid var(--color-france);
  background: var(--color-france);
}

.box--light {
  border:none;
  background: var(--color-light);
  color:var(--color-dark);
  margin-bottom:20px;
}

.box--stretch {
  height:100%;
}

.box--adaptive-color {
  padding:0;
  margin-top:20px;
  margin-bottom:10px;
  border:0;
  background:white;
  color:var(--color-dark);
}

.box--simple {
  padding:0;
  margin-top:20px;
  margin-bottom:10px;
  border:0;
  background:transparent;
  color:var(--color-dark);
}

/* ************************************* */
/*                                       */
/* Regions                               */
/*                                       */
/* ************************************* */

.region {
  padding-bottom:var(--padding-primary-vertical-px);
}

/* ************************************* */
/*                                       */
/* Elements                              */
/*                                       */
/* ************************************* */

@media only screen and (min-width: 992px) {

  .home h1 {
    font-size: 40px;
  }

}

.cover--home {
  margin-bottom:var(--margin-secondary-vertical-px);
}

.teaser-on-home {
  display:flex;
  flex-direction: column;
  /* justify-content: space-between; */
  height:100%;
  padding: 5px 0 var(--padding-quaternary-vertical-px) 0;
}

.teaser-on-home > div {
  padding-top:var(--padding-tertiary-vertical-px);
  padding-bottom:var(--padding-tertiary-vertical-px);
}

@media only screen and (min-width: 768px) {

  .teaser-on-home > div {
    padding-top:10px;
    padding-bottom:10px;
  }

  div#blog-griechenland p {
    margin: 0 0 0 var(--margin-primary-vertical-px);
  }

}

.teaser-on-home > div:first-child {
  padding-top:0;
}

.teaser-on-home > div:last-child {
  padding-bottom:0;
}

.image-overlay {
  position: relative;
}

.image-overlay__txt {
  position:absolute;
  width:100%;
  background-color: var(--color-overlay);
  bottom:0;
  left:0;
  padding:10px var(--padding-primary-horizontal-px) 10px var(--padding-primary-horizontal-px);
  color:var(--color-dark);
}

.caption {
  padding:10px var(--padding-primary-horizontal-px) 10px var(--padding-primary-horizontal-px);
  border-top:1px solid white;
}

.caption .h3{
  margin-bottom: 0;
}

.more {

}

.more--headline {
  border-bottom: 1px dotted;
  padding-bottom: 2px;
  text-transform: none;
  font-size: var(--font-size-small);
  display:inline-blocK;
}

@media only screen and (min-width: 768px) {

  .more--headline {
    margin-left:10px;
  }

}

.scrollable {
  overflow-x:auto;
  overflow-y:hidden;
}

@media only screen and (max-width: 767px) {

  div#blog-griechenland table, div#blog-griechenland tbody, div#blog-griechenland tr, div#blog-griechenland td {
    display: contents;
  }

}

@media only screen and (max-width: 320px) {

  .shop-buttons {
    top: -70px;
    display: unset;
  }
  h1.h1 {
    margin-bottom: 0;
  }

}
