article, aside, details, figcaption, figure, footer, header, hgroup, nav, section { display:block; }
html { height:100%; overflow-x:hidden; font-size:100%; -webkit-text-size-adjust:100%; -ms-text-size-adjust:100%; }
body { margin:0; font-size:14px; line-height:1.4; font-family:arial, sans-serif; color:#000; background:#f2f2f2; height:100%; }
a { color:#000; }
a:hover { color:#666; }
a:visited { color:#444; }
ul, ol { margin:1em 0; padding:0 0 0 2em; }
ul li, ol li { padding:0 0 0.4em 0; }
img { border:0; -ms-interpolation-mode:bicubic; max-width:100%; }
button { font-size:100%; margin:0; vertical-align:baseline; cursor:pointer; }
b, strong { font-weight:bold; }
.clearfix:before, .clearfix:after { content:""; display:table; }
.clearfix:after { clear:both; }
.clearfix { zoom:1; }

.container {
  max-width:1300px;
  margin:0 auto;
}

.header {
  padding:2em 2%;
  background:#313131;
  border-bottom:1px solid #88c8f6;
  position:relative;
}
.header:before {
  content:"";
  display:block!important;
  background:#313131;
  border-bottom:1px solid #88c8f6;
  height:100%;
  width:6000px;
  position:absolute;
  left:-2000px;
  top:0;
  z-index:-1;
}
.logo {
  float:left;
  display:inline-block;
  font-size:24px;
  color:#ededed;
}
.logo img {
  display:block;
  max-width:577px;
  width:100%;
  height:auto;
}

.message {
  border:1px solid #d7cf49;
  color:#fff;
  background:#d7cf49;
  padding:8px 14px;
  border-radius:8px;
}
.message.tel a:link,
.message.tel a:hover,
.message.tel a:visited {
  color:white;
  font-size:1.3em;
}
.tel {
  line-height:1.55;
}

.hero {
  border-bottom:0;
  background:#9fdbfc;
  color:black;
  padding:10px 0 10px 2%;
  margin:0 0 2em 0;
  position:relative;
}
.hero:before {
  content:"";
  display:block!important;
  box-shadow:0 10px 6px -6px #777;
  border-bottom:0;
  background:#9fdbfc;
  height:100%;
  width:6000px;
  position:absolute;
  left:-2000px;
  top:0;
  z-index:-1;
}
.hero h1 {
  font-size:24px;
  color:#fff;
}
.hero h1,
.hero p,
.hero li,
.message.tel {
  text-shadow:0 0 2px rgba(0, 0, 0, 0.5);
}
.info {
  padding:0 0 2.5em 0;
}
.article {
  padding:0 0 0 2%;
}

h1, h2 {
  font-weight:normal;
  color:#010101;
}
h1 { font-size:22px; }
h3, h4, h5, h6 {
  font-weight:bold;
  color:#010101;
}
article h2,
article p,
div.copyright {
  text-shadow:0 0 1px rgba(0, 0, 0, 0.4);
}

.col_25 { width:23%; margin:0 2% 0 0; float:left; }
.col_33 { width:31%; margin:0 2% 0 0; float:left; }
.col_50 { width:48%; margin:0 2% 0 0; float:left; }
.col_66 { width:64%; margin:0 2% 0 0; float:left; }
.col_75 { width:73%; margin:0 2% 0 0; float:left; }
.col_100 { width:98%; margin:0 2% 0 0; }

.img_floatleft { float:left; margin:0 10px 5px 0; }
.img_floatright { float:right; margin:0 0 5px 10px; }
img.intro {
  border:1px solid rgba(255, 255, 255, 0.8);
  width:80%;
  float:right;
  padding:0.5em;
  border-radius:5px;
}

.success {
  border:1px solid #49d76e;
  color:#fff;
  background:#49d76e;
  padding:8px 14px;
  border-radius:8px;
}
.phone {
  font-weight:bold;
}
.label {
  display:inline-block;
  padding:4px 7px;
  border-radius:4px;
}
.label-info {
  color:#fff;
  background:#499cd7;
}

.legal {
  margin:2.5em 2% 0 0;
  padding-top:1.5em;
  border-top:1px solid #d8d8d8;
}
.legal p {
  max-width:1050px;
}

.footer {
  padding:2em 2% 5em 2%;
  color:#666;
  background:#fff;
  position:relative;
}
.footer:before {
  content:"";
  display:block!important;
  background:#fff;
  height:100%;
  width:6000px;
  position:absolute;
  left:-2000px;
  top:0;
  z-index:-1;
  box-shadow:#d8d8d8 0 -1px 5px;
}
.copyright {
  width:49%;
  float:left;
}
.l {
  clear:both;
  padding-top:10px;
}

a.button,
.button {
  border:1px solid #9a9a9a;
  text-align:center;
  text-decoration:none;
  border-radius:3px;
  box-shadow:rgba(0, 0, 0, 0.64) 0 1px 4px;
  background:linear-gradient(#ffffff, #e2e2e2);
  color:#484848;
  font-size:14px;
  padding:5px 14px;
  font-family:verdana, sans-serif;
  display:inline-block;
}
a.button:hover,
.button:hover {
  border:1px solid #5a5a5a;
  background:linear-gradient(#e2e2e2, #ffffff);
}

#cookie_note {
  display:none;
  position:fixed;
  bottom:50px;
  left:50%;
  max-width:90%;
  transform:translateX(-50%);
  padding:20px;
  background-color:white;
  border-radius:4px;
  box-shadow:2px 3px 10px 4px rgba(0, 0, 0, 0.5);
}
#cookie_note p {
  margin:0;
  font-size:0.9rem;
  text-align:left;
  color:black;
  width:99%;
  text-shadow:none;
}
.cookie_accept {
  margin:0.5em 0 0 0;
  padding:0.5em;
}
@media (min-width:576px) {
  #cookie_note.show {
    display:flex;
    flex-wrap:wrap;
    width:80%;
    z-index:9;
  }
}

@media only screen and (max-width:768px) {
  .col_25,
  .col_33,
  .col_66,
  .col_50,
  .col_75 {
    width:98%;
    float:none;
  }
  img.intro {
    width:97%;
    float:none;
  }
  .header:before,
  .hero:before {
    display:none!important;
  }
}

@media only screen and (max-width:575px) {
  #cookie_note.show {
    display:block;
    text-align:left;
    bottom:50px;
    width:85%;
    z-index:9;
  }
}

@media only screen and (max-width:480px) {
  .header {
    margin-bottom:0;
  }
  .header:before,
  .hero:before,
  .footer:before {
    display:none!important;
  }
  .logo {
    display:block;
    float:none;
    text-align:center;
  }
  .message.tel {
    width:auto;
    font-size:1.05em;
    float:none;
    margin:1em 0 0 0;
  }
  .copyright {
    width:100%;
    float:none;
    text-align:center;
  }
  .footer {
    padding-bottom:2em;
  }
}

@media print {
  * { background:transparent!important; color:black!important; text-shadow:none!important; box-shadow:none!important; }
  a, a:visited { color:#444!important; text-decoration:underline; }
  img { max-width:100%!important; }
  .header, .footer, #cookie_note { display:none; }
  .col_33, .col_66, .col_50 { width:98%; float:none; }
}
