/* GENERAL */
@font-face {
  font-family: Roobert;
  font-weight: normal;
  src: url(/fonts/Roobert-Regular.woff2) format('woff2'),
       url(/fonts/Roobert-Regular.woff) format('woff');
}
@font-face {
  font-family: Roobert;
  font-weight: bold;
  src: url(/fonts/Roobert-Bold.woff2) format('woff2'),
       url(/fonts/Roobert-Bold.woff) format('woff');
}
:root {
  --ys-green: #607868;
  --ys-black: #252525;
  --ys-beige: #e2dad6;
  --ys-red: #ff5865;
  --ys-red-light: #ff6f7b;
  --ys-purple: #96657d;
  --ys-blue: #5e6eff;
  --ys-flesh-light: #ff9d90;
  --ys-flesh-dark: #c59d90;

  --header-height-desktop: 70px;
  --header-height-mobile: 110px;
  --footer-height: 88px;
  --border-radius: 5px;
}
@view-transition {
  navigation: auto;
}
html, body {
  margin: 0;
  padding: 0;
  background-color: var(--ys-beige);
}
body {
  font-family: Roobert, sans-serif;
  color: var(--ys-black);
}

/* NAVIGATION */
header.navigation {
  color: var(--ys-green);
  background-color: var(--ys-beige);
}
header.navigation .logo img {
  max-width: unset;
  height: 100%;
}
header.navigation .logo .slogan {
  position: relative;
  bottom: 1px;
  color: var(--ys-green);
  /* opacity: 0.75; */
  opacity: 0;
}
header.navigation .nav-items a, header.navigation .language-switcher a {
  color: var(--ys-green);
  padding: 0.5rem;
}
header.navigation .nav-items a:active, header.navigation .language-switcher a:active {
  position: relative;
  top: 2px;
}

/* HERO IMAGE */
main > figure > img {
  width: 100%;
  max-height: 50vh;
  object-position: top;
  object-fit: cover;
  max-width: 1500px;
  margin: 0 auto;
}

/* BEFORE CONTENT */
main header {
  color: var(--ys-green);
}
.flash {
  background-color: var(--ys-blue);
}

/* CONTENT */
.page__content h2 {
  color: var(--ys-purple);
}
.page__content h3 {
  color: var(--ys-flesh-dark);
}
.page__content .prose img {
  border-radius: var(--border-radius);
}
.page__content img.image-right {
  width: 100%;
  margin: 1rem 0;
}
.page__content a {
  color: var(--ys-green);
  text-decoration: underline;
  white-space: nowrap;
}
.page__content a:active {
  position: relative;
  top: 2px;
}
.btn, .page__content a.btn {
  display: inline-block;
  background-color: var(--ys-red);
  color: white;
  border-radius: var(--border-radius);
  padding: 10px 15px;
  text-decoration: none;
}
.btn:hover, .page__content a.btn:hover {
  background-color: var(--ys-red-light);
}
.btn:active, .page__content a.btn:active {
  box-shadow: inset 0 3px 8px rgba(0,0,0,0.3);
}
.prose h2,
.prose h3,
.prose h4,
.prose h5,
.prose h6 {
  font-weight: bold;
  margin-top: 1em;
  margin-bottom: 0.5rem;
}
.prose h2 { font-size: 2em; }
.prose h3 { font-size: 1.5em; }
.prose h4 { font-size: 1.25em; }
.prose h5 { font-size: 1em; }
.prose h6 { font-size: 0.875em; }
.prose p,
.prose dd {
  margin-bottom: 1em;
}
.prose ul, .prose ol {
  margin: 0.5em 0 1em 1.5em;
}
.prose ul {
  list-style-type: disc;
}
.prose ol {
  list-style-type: decimal;
}
.prose dt {
  font-weight: bold;
}
.prose table {
  margin-bottom: 1em;
}
.prose table th,
.prose table td {
  padding: 0.5em;
  border: 1px solid #ccc;
}
.prose blockquote {
  border-left: 4px solid #ccc;
  padding-left: 1em;
  margin-left: 0;
  font-style: italic;
  font-family: serif;
  margin-bottom: 1em;
  margin-top: 1em;
}
.prose q {
  font-style: italic;
}
.prose pre {
  overflow-x: auto;
}

/* HOME */
main.page.home {
  padding-bottom: 0;
}
main.page.home > header {
  display: none;
}
.glide {
  width: 100vw;
}
.glide__slide {
  position: relative;
  width: 100vw;
  display: flex;
  align-items: center;
  justify-content: center;
}
.glide__slide img {
  object-fit: contain;
  object-position: top;
}

/* CONTACT FORM */
.contact-form input,
.contact-form textarea {
  padding: 5px 8px;
  margin: 0.25rem 0 1rem;
  border-radius: var(--border-radius);
  width: 100%;
}
.contact-form input:focus,
.contact-form textarea:focus {
  outline: none;
  box-shadow: 0 0 10px white;
  box-sizing: border-box;
}
input#company {
  display: none;
}

/* FOOTER */
footer {
  background-color: var(--ys-beige);
  color: var(--ys-green);
}
footer ul {
  display: flex;
  flex-direction: row;
  gap: 0.5rem;
  list-style: none;
  padding: 0;
  margin: 0;
}
footer a {
  color: var(--ys-green);
}
footer a:active {
  position: relative;
  top: 2px;
}

/* MEDIA QUERIES */

@media screen and (max-width: 639px) {
  header.navigation nav li:first-child a {
    padding-left: 0;
  }
  main.page {
    margin-top: var(--header-height-mobile);
  }
  .glide__slide img {
    max-height: calc(100vh - var(--header-height-mobile) - var(--footer-height));
  }
  .page__content img.image-right {
    width: 100%;
    float: none;
  }
}
@media screen and (min-width: 640px) {
  main.page {
    margin-top: var(--header-height-desktop);
  }
  .glide__slide img {
    max-height: calc(100vh - var(--header-height-desktop) - var(--footer-height));
  }
  .page__content img.image-right {
    width: 50%;
    float: right;
    margin: 0 0 1rem 1rem;
  }
}