@font-face {
  font-family: "Marck Script";
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/mark-script-normal-400-latin-ext.woff2") format("woff2");
  unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: "Marck Script";
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/mark-script-normal-400-latin.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
.visuallyhidden.focusable:focus, .visuallyhidden.focusable:active {
  clip: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  position: static;
  width: auto;
}

html {
  color: #222;
  font-size: 1em;
  line-height: 1.4;
}

::-moz-selection {
  background: #b3d4fc;
  text-shadow: none;
}

::selection {
  background: #b3d4fc;
  text-shadow: none;
}

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid green;
  margin: 1em 0;
  padding: 0;
}

audio {
  vertical-align: middle;
}

canvas {
  vertical-align: middle;
}

iframe {
  vertical-align: middle;
}

img {
  vertical-align: middle;
}

svg {
  vertical-align: middle;
}

video {
  vertical-align: middle;
}

fieldset {
  border: 0;
  margin: 0;
  padding: 0;
}

textarea {
  resize: vertical;
}

body {
  font: 16px/26px "Helvetica Neue", Helvetica, Arial, sans-serif;
  background: #ffffe0;
}

.pizza {
  width: 500px;
  height: 350px;
  z-index: 2;
  position: absolute;
  top: 0;
  right: 0;
  background: url("/static/img/pizza.webp") no-repeat 0 0;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}

.wrapper {
  position: relative;
  width: 90%;
  margin: 0 5%;
  z-index: 3;
}

nav ul {
  margin: 0;
  padding: 0;
  list-style-type: none;
}
nav a {
  display: block;
  margin-bottom: 10px;
  padding: 15px 0;
  text-align: center;
  text-decoration: none;
  font-weight: bold;
  color: white;
  background: #e44d26;
}
nav a:hover {
  color: white;
  text-decoration: underline;
}
nav a:visited {
  color: white;
}

.header-container {
  background-color: rgb(170, 65, 57);
  background: #aa4139;
  background: -webkit-linear-gradient(left, #aa4139 0%, #801115 100%);
  background: linear-gradient(to right, #aa4139 0%, #801115 100%);
  border-bottom: 10px solid green;
  color: #fff;
  font-family: "Marck Script", cursive;
  font-size: 1.7em;
  font-weight: 200;
}

.main {
  padding: 30px 0;
}
.main aside {
  padding: 0 5% 10px;
}
.main article h1 {
  font-size: 3em;
  font-family: "Marck Script", cursive;
  color: green;
}
.main article h2 {
  font-size: 2em;
  font-family: "Marck Script", cursive;
  color: green;
}

.box {
  text-align: center;
  padding-top: 5px;
  padding-bottom: 20px;
  border-bottom: 1px solid green;
}
.box:last-child {
  border: 0;
}
.box h3 {
  font-family: "Marck Script", cursive;
  font-size: 2em;
  color: green;
  margin-bottom: 0.3em;
}

.button {
  display: block;
  width: 100%;
  max-width: 200px;
  font-size: 1.2em;
  text-align: center;
  padding: 10px;
  border: 1px solid green;
  border-radius: 4px;
  box-shadow: 0 0 2px rgba(0, 0, 0, 0.2);
  text-decoration: none;
  color: green;
  margin: 0 auto;
}
.button:hover {
  color: #fff;
  text-decoration: none;
  background: green;
  -webkit-transition: color 0.3s, background 0.3s;
  transition: color 0.3s, background 0.3s;
}

.order_phone {
  font-size: 1.4em;
  margin-bottom: 0.3em;
}
.order_phone a {
  color: inherit;
  text-decoration: none;
}

.opening_hours {
  display: grid;
  grid-template-columns: 12ch auto;
  grid-gap: 0.3rem 0.6rem;
}
.opening_hours dt, .opening_hours dd {
  text-align: left;
  margin: 0;
}
.opening_hours dt:after {
  content: ":";
}
@media (min-width: 768px) and (max-width: 940px) {
  .opening_hours {
    display: inline;
  }
  .opening_hours dd {
    margin-left: 1.6rem;
  }
  .opening_hours dt {
    font-weight: bold;
  }
}

.responsive-container {
  position: relative;
  padding-bottom: 56%;
  height: 0;
  overflow: hidden;
}
.responsive-container > div {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.title {
  font-size: 1em;
  text-align: center;
}

.pizza {
  display: none;
}

.alert {
  box-sizing: border-box;
  padding: 20px;
  background-color: #ebf5eb;
  border-radius: 5px;
}

@media only screen and (min-width: 480px) {
  nav a {
    float: left;
    width: 27%;
    margin: 0 1.7%;
    padding: 25px 2%;
    margin-bottom: 0;
  }
  nav li:first-child a {
    margin-left: 0;
  }
  nav li:last-child a {
    margin-right: 0;
  }
  nav ul li {
    display: inline;
  }
  .oldie nav a {
    margin: 0 0.7%;
  }
}
@media only screen and (min-width: 768px) {
  .pizza {
    display: block;
  }
  .title {
    float: left;
    font-size: 2em;
  }
  nav {
    float: right;
    width: 38%;
  }
  .main h2.h1 {
    font-size: 3rem;
  }
  .main article {
    background: rgba(255, 255, 224, 0.8);
    float: left;
    width: 57%;
    border-radius: 8px;
  }
  .main aside {
    background: rgba(255, 255, 224, 0.8);
    backdrop-filter: blur(2px);
    float: right;
    width: 28%;
    border-radius: 8px;
  }
}
@media only screen and (min-width: 1140px) {
  .wrapper {
    width: 1026px;
    margin: 0 auto;
  }
}
.hidden {
  display: none !important;
  visibility: hidden;
}

.visuallyhidden {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}
.invisible {
  visibility: hidden;
}

.clearfix:before {
  content: " ";
  display: table;
}
.clearfix:after {
  content: " ";
  display: table;
  clear: both;
}

@media print {
  a {
    text-decoration: underline;
  }
  a:visited {
    text-decoration: underline;
  }
  pre {
    border: 1px solid #999;
    page-break-inside: avoid;
  }
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid;
  }
  thead {
    display: table-header-group;
  }
  tr {
    page-break-inside: avoid;
  }
  img {
    page-break-inside: avoid;
    max-width: 100% !important;
  }
  p {
    orphans: 3;
    widows: 3;
  }
  h2 {
    orphans: 3;
    widows: 3;
    page-break-after: avoid;
  }
  h3 {
    orphans: 3;
    widows: 3;
    page-break-after: avoid;
  }
  a[href]:after {
    content: "(" attr(href) ")";
  }
  abbr[title]:after {
    content: "(" attr(title) ")";
  }
  a[href^="#"]:after {
    content: "";
  }
  a[href^="javascript:"]:after {
    content: "";
  }
}
.footer-container footer {
  text-align: center;
  border-top: 1px solid #000;
  padding: 20px 0;
  font-size: 80% !important;
}

.ie7 .title {
  padding-top: 20px;
}