@import url("fonts.css");
html {
  box-sizing: border-box; }

*, *:before, *:after {
  box-sizing: inherit; }

html {
  background-color: #010018;
  color: #e4e4e4;
  height: 100%; }

body {
  font-family: Open Sans,Arial;
  font-size: 10pt;
  line-height: 1.4;
  text-align: justify;
  margin: 0;
  padding: 0;
  min-height: 100%;
  display: flex;
  flex-direction: column; }
  @media (min-width: 650px) {
    body {
      font-size: 11pt; } }
  @media (min-width: 1000px) {
    body {
      font-size: 12pt; } }
#head {
  background-color: #178ca7;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 0;
  padding: 30px 60px;
  color: #010018; }
  #head .sitetitle {
    font-size: 1.4em;
    font-weight: bold; }
  #head a, #head a:visited {
    color: #010018; }

#ingredients {
  margin: 30px 2vw;
  box-sizing: border-box;
  padding: 20px;
  border: 1px solid #178ca7;
  border-radius: 10px;
  text-align: left; }
  @media (min-width: 1000px) {
    #ingredients {
      float: left;
      position: fixed;
      margin-top: 30px;
      margin-bottom: 0px; } }
  @media (min-width: 1000px) {
    #ingredients {
      width: 250px;
      margin-left: 25px;
      margin-right: 25px; } }
  @media (min-width: 1250px) {
    #ingredients {
      width: 300px;
      margin-left: 50px;
      margin-right: 50px; } }
  #ingredients .ingred-title {
    font-size: 1.3em;
    font-weight: bold; }
  #ingredients h2 {
    font-size: 1em;
    font-weight: bold; }
  #ingredients .ingred-portions {
    text-align: right;
    font-style: italic; }
  #ingredients .ingred-qt {
    color: #efc586; }
  #ingredients ul {
    padding-left: 25px; }

#content {
  display: flex;
  justify-content: center;
  margin: 30px 2vw;
  height: 100%; }
  #content .content-inner {
    width: 100%; }
  @media (min-width: 1000px) {
    #content {
      margin-right: 0;
      margin-left: 275px; }
      #content .content-inner {
        width: 650px; } }
  @media (min-width: 1250px) {
    #content {
      margin-right: 0;
      margin-left: 350px; }
      #content .content-inner {
        width: 800px; } }
  @media (min-width: 1550px) {
    #content {
      margin-right: 0;
      margin-left: 0; } }
  #content h1 {
    font-size: 1.4em;
    color: #ffc467; }
  #content h2 {
    font-size: 1.3em;
    text-indent: 2ex;
    color: #ffd89a; }
  #content h3 {
    font-size: 1.1em;
    text-indent: 4ex;
    color: #ffeccd; }
  #content table {
    width: 100%;
    border-collapse: collapse;
    border: 2px solid #178ca7;
    border-radius: 10px; }
    #content table thead {
      border-bottom: 2px solid #11667a; }
    #content table td, #content table th {
      padding: 10px;
      border: 1px solid #11667a; }
  #content .pagenamerow {
    display: flex;
    align-items: center;
    justify-content: space-between; }
  #content #pagename {
    font-size: 1.5em;
    font-weight: bold; }
  #content .source {
    margin-top: 15px;
    text-align: right;
    font-size: 0.9em;
    font-style: italic; }

#main_photo {
  display: flex;
  justify-content: space-around;
  margin: 25px 0; }
  @media (min-width: 1000px) {
    #main_photo {
      margin: 50px 0; } }
  #main_photo a {
    display: block;
    width: 85%; }
    @media (min-width: 1000px) {
      #main_photo a {
        width: 75%; } }
  #main_photo img {
    border-radius: 10px;
    max-width: 100%;
    height: auto; }

#foot {
  font-size: 0.7em;
  color: #989898;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  flex-direction: column;
  margin: 10px 20px;
  margin-top: auto; }
  @media (min-width: 650px) {
    #foot {
      flex-direction: row; } }
  #foot > div {
    margin: 5px 15px; }
    @media (min-width: 650px) {
      #foot > div {
        margin: 0 15px; } }
a, a:visited {
  color: #6ec1e1;
  text-decoration: none; }

ul {
  list-style-type: circle; }

.with_abbrv {
  text-decoration: underline dotted; }

.homepagecat {
  margin-top: 50px; }

.headbadges {
  display: flex;
  align-items: center;
  margin-right: 20px;
  margin-left: 30px; }

.headbadge {
  padding: 10px;
  border-radius: 10px;
  font-size: 1.2em;
  margin-left: 10px;
  /* Should be overriden */
  border: 2px solid;
  border-color: #178ca7;
  color: #178ca7; }
  .headbadge-veganness-vegan {
    border-color: #40d540;
    color: #40d540; }
  .headbadge-veganness-veganisable {
    border-color: #bfce2a;
    color: #bfce2a; }
  .headbadge-veganness-vege {
    border-color: #ce8649;
    color: #ce8649; }
  .headbadge-season-winter {
    border-color: #02bace;
    color: #02bace; }
  .headbadge-season-summer {
    border-color: #ff3838;
    color: #ff3838; }
  .headbadge-quality {
    border-color: #ffee00;
    color: #ffee00; }

.badges {
  display: inline-block;
  margin-left: 0.5ex; }

.badge {
  font-weight: bold;
  display: inline-block;
  border: 2px solid black;
  padding: 0 0.5ex;
  border-radius: 1.5ex;
  margin: 0.2ex 0;
  margin-left: 0.6ex;
  font-size: 0.7em;
  position: relative;
  bottom: 0.2ex; }
  .badge-veganness-vegan {
    border-color: #40d540;
    color: #40d540; }
  .badge-veganness-veganisable {
    border-color: #bfce2a;
    color: #bfce2a; }
  .badge-veganness-vege {
    border-color: #ce8649;
    color: #ce8649; }
  .badge-season-winter {
    border-color: #02bace;
    color: #02bace; }
  .badge-season-summer {
    border-color: #ff3838;
    color: #ff3838; }
  .badge-quality {
    border-color: #ffee00;
    color: #ffee00; }
  .badge-photo {
    border-color: #7faca8;
    color: #7faca8; }

.content-inner figure {
  margin: 40px 0; }

.content-inner .invert_colors img {
  filter: invert(100%);
  -webkit-filter: invert(100%); }

.content-inner img {
  max-width: 100%; }