/* BASIS */
@media (min-width: 801px) and (hover: hover) {
  body {
    color: var(--zero); } }
* {
  box-sizing: border-box; }

html {
  width: 100%;
  height: 100%; }

body {
  width: 100%;
  height: 100vH;
  margin: 0;
  padding: 0;
  background-color: var(--zero);
  color: var(--primary); }

::-moz-selection {
  text-shadow: none;
  background: #505050;
  background: rgba(0, 0, 0, 0.5);
  color: #fff; }

::selection {
  text-shadow: none;
  background: #505050;
  background: rgba(0, 0, 0, 0.5);
  color: #fff; }

img::selection {
  background: 0 0; }

img::-moz-selection {
  background: 0 0; }

/* ---------------- STARTSEITE ---------------- */
#start {
  display: flex;
  justify-content: center;
  align-items: center;
  align-content: center;
  flex-direction: row;
  width: 100%;
  height: 100%; }
  @media (max-width: 600px) {
    #start {
      flex-direction: column; } }
  #start .baeckerei,
  #start .gaestezimmer {
    width: 50%;
    height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
    align-content: center;
    flex-direction: column; }
    @media (max-width: 600px) {
      #start .baeckerei,
      #start .gaestezimmer {
        width: 100%;
        height: 50vh; } }
    #start .baeckerei .logo,
    #start .gaestezimmer .logo {
      width: 100%;
      height: 20vH; }
      @media (max-width: 600px) {
        #start .baeckerei .logo,
        #start .gaestezimmer .logo {
          height: 15vH; } }
      #start .baeckerei .logo:hover,
      #start .gaestezimmer .logo:hover {
        opacity: 0.5; }
    #start .baeckerei .menu,
    #start .gaestezimmer .menu {
      width: 100%;
      height: 80vH;
      background-size: cover;
      position: relative; }
      @media (max-width: 600px) {
        #start .baeckerei .menu,
        #start .gaestezimmer .menu {
          height: 35vH; } }
      #start .baeckerei .menu .bbox,
      #start .gaestezimmer .menu .bbox {
        width: 100%;
        height: 100%;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        align-content: center;
        position: relative;
        z-index: 3; }
        @media (max-width: 600px) {
          #start .baeckerei .menu .bbox,
          #start .gaestezimmer .menu .bbox {
            scale: 0.8;
            transform-origin: center; } }
        #start .baeckerei .menu .bbox .boxheader,
        #start .gaestezimmer .menu .bbox .boxheader {
          color: #fff;
          font-size: 2rem;
          text-transform: uppercase;
          font-weight: 700;
          text-align: center;
          margin-bottom: 0px;
          transition: all 0.7s ease;
          transition-delay: 0.5s; }
          @media (max-width: 600px) {
            #start .baeckerei .menu .bbox .boxheader,
            #start .gaestezimmer .menu .bbox .boxheader {
              margin-top: 1em; } }
        #start .baeckerei .menu .bbox:hover .boxheader,
        #start .gaestezimmer .menu .bbox:hover .boxheader {
          margin-bottom: 50px;
          transition: all 0.7s ease;
          transition-delay: 0.5s; }
          @media (max-width: 600px) {
            #start .baeckerei .menu .bbox:hover .boxheader,
            #start .gaestezimmer .menu .bbox:hover .boxheader {
              margin-bottom: inherit; } }
        #start .baeckerei .menu .bbox .hbtn,
        #start .gaestezimmer .menu .bbox .hbtn {
          display: flex;
          justify-content: space-around;
          align-items: center;
          border: 1px solid transparent;
          width: 0;
          height: 0;
          z-index: 10;
          transition: all 0.4s 0s, border 0.4s 0.6s, height 0.4s 0.4s, margin 0.4s 0.4s; }
          #start .baeckerei .menu .bbox .hbtn .btn,
          #start .gaestezimmer .menu .bbox .hbtn .btn {
            text-align: left;
            padding-top: 8px;
            box-sizing: border-box;
            word-break: keep-all;
            white-space: nowrap;
            opacity: 0; }
            #start .baeckerei .menu .bbox .hbtn .btn a,
            #start .gaestezimmer .menu .bbox .hbtn .btn a {
              display: block;
              font-weight: 300;
              text-decoration: none;
              text-transform: uppercase;
              color: var(--zero);
              font-size: 1.5rem;
              position: relative;
              padding-left: 35px; }
              #start .baeckerei .menu .bbox .hbtn .btn a:before,
              #start .gaestezimmer .menu .bbox .hbtn .btn a:before {
                content: '';
                background: url("../images/design/icon-arrow.svg") no-repeat;
                background-position: center center;
                background-size: cover;
                position: absolute;
                width: 20px;
                height: 19px;
                left: 2px;
                top: 5px; }
              #start .baeckerei .menu .bbox .hbtn .btn a:hover:before,
              #start .gaestezimmer .menu .bbox .hbtn .btn a:hover:before {
                background: url("../images/design/icon-arrow-outline.svg") no-repeat;
                rotate: 1turn;
                transition: .5s ease-in-out;
                scale: 1.2; }
          #start .baeckerei .menu .bbox .hbtn ul,
          #start .gaestezimmer .menu .bbox .hbtn ul {
            scale: 0;
            list-style: none;
            column-count: 2;
            column-gap: 2em; }
            @media (max-width: 800px) {
              #start .baeckerei .menu .bbox .hbtn ul,
              #start .gaestezimmer .menu .bbox .hbtn ul {
                column-count: 1;
                column-gap: 0em;
                padding-inline-start: 0px; } }
        @media (min-width: 601px) and (hover: hover) {
          #start .baeckerei .menu .bbox:hover .hbtn,
          #start .gaestezimmer .menu .bbox:hover .hbtn {
            height: auto;
            width: 90%; } }
        #start .baeckerei .menu .bbox .touchbtn,
        #start .gaestezimmer .menu .bbox .touchbtn {
          height: auto;
          width: 90%; }
          #start .baeckerei .menu .bbox .touchbtn .btn,
          #start .gaestezimmer .menu .bbox .touchbtn .btn {
            opacity: 1; }
            #start .baeckerei .menu .bbox .touchbtn .btn:nth-child(1),
            #start .gaestezimmer .menu .bbox .touchbtn .btn:nth-child(1) {
              transition: 0.6s;
              transition-delay: 0.4s; }
            #start .baeckerei .menu .bbox .touchbtn .btn:nth-child(2),
            #start .gaestezimmer .menu .bbox .touchbtn .btn:nth-child(2) {
              transition: 0.6s;
              transition-delay: 0.6s; }
            #start .baeckerei .menu .bbox .touchbtn .btn:nth-child(3),
            #start .gaestezimmer .menu .bbox .touchbtn .btn:nth-child(3) {
              transition: 0.6s;
              transition-delay: 0.8s; }
            #start .baeckerei .menu .bbox .touchbtn .btn:nth-child(4),
            #start .gaestezimmer .menu .bbox .touchbtn .btn:nth-child(4) {
              transition: 0.6s;
              transition-delay: 1s; }
            #start .baeckerei .menu .bbox .touchbtn .btn:nth-child(5),
            #start .gaestezimmer .menu .bbox .touchbtn .btn:nth-child(5) {
              transition: 0.6s;
              transition-delay: 1.2s; }
            #start .baeckerei .menu .bbox .touchbtn .btn:nth-child(6),
            #start .gaestezimmer .menu .bbox .touchbtn .btn:nth-child(6) {
              transition: 0.6s;
              transition-delay: 1.4s; }
            #start .baeckerei .menu .bbox .touchbtn .btn:nth-child(7),
            #start .gaestezimmer .menu .bbox .touchbtn .btn:nth-child(7) {
              transition: 0.6s;
              transition-delay: 1.6s; }
            #start .baeckerei .menu .bbox .touchbtn .btn:nth-child(8),
            #start .gaestezimmer .menu .bbox .touchbtn .btn:nth-child(8) {
              transition: 0.6s;
              transition-delay: 1.8s; }
          #start .baeckerei .menu .bbox .touchbtn ul,
          #start .gaestezimmer .menu .bbox .touchbtn ul {
            scale: 1; }
        @media (min-width: 601px) and (hover: hover) {
          #start .baeckerei .menu .bbox:hover .btn,
          #start .gaestezimmer .menu .bbox:hover .btn {
            opacity: 1; }
            #start .baeckerei .menu .bbox:hover .btn:nth-child(1),
            #start .gaestezimmer .menu .bbox:hover .btn:nth-child(1) {
              transition: 0.4s;
              transition-delay: 0.4s; }
            #start .baeckerei .menu .bbox:hover .btn:nth-child(2),
            #start .gaestezimmer .menu .bbox:hover .btn:nth-child(2) {
              transition: 0.4s;
              transition-delay: 0.6s; }
            #start .baeckerei .menu .bbox:hover .btn:nth-child(3),
            #start .gaestezimmer .menu .bbox:hover .btn:nth-child(3) {
              transition: 0.4s;
              transition-delay: 0.8s; }
            #start .baeckerei .menu .bbox:hover .btn:nth-child(4),
            #start .gaestezimmer .menu .bbox:hover .btn:nth-child(4) {
              transition: 0.4s;
              transition-delay: 1s; }
            #start .baeckerei .menu .bbox:hover .btn:nth-child(5),
            #start .gaestezimmer .menu .bbox:hover .btn:nth-child(5) {
              transition: 0.4s;
              transition-delay: 1.2s; }
            #start .baeckerei .menu .bbox:hover .btn:nth-child(6),
            #start .gaestezimmer .menu .bbox:hover .btn:nth-child(6) {
              transition: 0.4s;
              transition-delay: 1.4s; }
            #start .baeckerei .menu .bbox:hover .btn:nth-child(7),
            #start .gaestezimmer .menu .bbox:hover .btn:nth-child(7) {
              transition: 0.4s;
              transition-delay: 1.6s; }
            #start .baeckerei .menu .bbox:hover .btn:nth-child(8),
            #start .gaestezimmer .menu .bbox:hover .btn:nth-child(8) {
              transition: 0.4s;
              transition-delay: 1.8s; }
          #start .baeckerei .menu .bbox:hover ul,
          #start .gaestezimmer .menu .bbox:hover ul {
            scale: 1; } }
      #start .baeckerei .menu:before,
      #start .gaestezimmer .menu:before {
        content: '';
        position: absolute;
        width: 100%;
        height: 100%;
        left: 0px;
        overflow: hidden;
        opacity: 0.8;
        transition: all 0.7s ease;
        transition-delay: 0.1s; }
      #start .baeckerei .menu:hover:before,
      #start .gaestezimmer .menu:hover:before {
        background-size: 250%;
        transition: all 0.7s ease;
        transition-delay: 0s; }
        @media (min-width: 601px) and (max-width: 800px) {
          #start .baeckerei .menu:hover:before,
          #start .gaestezimmer .menu:hover:before {
            background-size: 350%; } }
        @media (max-width: 600px) {
          #start .baeckerei .menu:hover:before,
          #start .gaestezimmer .menu:hover:before {
            background-size: 200px; } }
    @media (max-width: 600px) {
      #start .baeckerei.fullheight,
      #start .gaestezimmer.fullheight {
        height: 100%; }
      #start .baeckerei.inaktiv,
      #start .gaestezimmer.inaktiv {
        display: none; } }
  #start .baeckerei .logo {
    background: url("../images/design/Bauer-Konditorei-Baeckerei.svg") no-repeat;
    background-position: center center;
    background-size: auto 50%; }
    @media (max-width: 600px) {
      #start .baeckerei .logo {
        background-size: auto 50%; } }
  #start .baeckerei .menu {
    background: url("../images/start/Baeckerei-Start.jpg") no-repeat center center;
    background-size: cover; }
    #start .baeckerei .menu:before {
      background: url("../images/design/Dot-Baeckerei.svg") no-repeat;
      background-position: center center;
      background-size: 250px; }
      @media (max-width: 600px) {
        #start .baeckerei .menu:before {
          background-size: 200px; } }
  #start .gaestezimmer .logo {
    background: url("../images/design/Bauer-Gaestezimmer.svg") no-repeat;
    background-position: center center;
    background-size: auto 50%; }
    @media (max-width: 600px) {
      #start .gaestezimmer .logo {
        background-size: auto 50%; } }
  #start .gaestezimmer .menu {
    background: url("../images/start/Gaestezimmer-Start.jpg") no-repeat center center;
    background-size: cover; }
    #start .gaestezimmer .menu:before {
      background: url("../images/design/Dot-Gaestezimmer.svg") no-repeat;
      background-position: center center;
      background-size: 250px; }
      @media (max-width: 600px) {
        #start .gaestezimmer .menu:before {
          background-size: 200px; } }

@media (max-width: 600px) {
  body.open #start .baeckerei .menu,
  body.open #start .gaestezimmer .menu {
    height: 85vH; }
    body.open #start .baeckerei .menu:before,
    body.open #start .gaestezimmer .menu:before {
      background-size: 300%; }
  body.open .hbtn {
    height: auto !important;
    width: 90% !important; }
  body.open ul {
    scale: 1 !important; }
  body.open .btn {
    opacity: 1 !important;
    cursor: pointer; }
    body.open .btn:nth-child(1) {
      transition: 0.4s;
      transition-delay: 0.4s; }
    body.open .btn:nth-child(2) {
      transition: 0.4s;
      transition-delay: 0.6s; }
    body.open .btn:nth-child(3) {
      transition: 0.4s;
      transition-delay: 0.8s; }
    body.open .btn:nth-child(4) {
      transition: 0.4s;
      transition-delay: 1s; }
    body.open .btn:nth-child(5) {
      transition: 0.4s;
      transition-delay: 1.2s; }
    body.open .btn:nth-child(6) {
      transition: 0.4s;
      transition-delay: 1.4s; }
    body.open .btn:nth-child(7) {
      transition: 0.4s;
      transition-delay: 1.6s; }
    body.open .btn:nth-child(8) {
      transition: 0.4s;
      transition-delay: 1.8s; }
  body.fullheight {
    height: 100%; }
  body.inaktiv {
    display: none; } }
#toggle-baeckerei,
#toggle-gaestezimmer {
  display: none; }
  @media screen and (max-width: 600px) {
    #toggle-baeckerei,
    #toggle-gaestezimmer {
      display: block;
      background-color: var(--transparent);
      cursor: pointer;
      z-index: 500;
      margin-bottom: 2em; } }
  #toggle-baeckerei:hover,
  #toggle-gaestezimmer:hover {
    color: var(--zero);
    background-color: var(--transparent); }
    #toggle-baeckerei:hover .button_container span,
    #toggle-gaestezimmer:hover .button_container span {
      background: var(--primary); }
  #toggle-baeckerei .button_container,
  #toggle-gaestezimmer .button_container {
    display: block;
    margin-bottom: -1em;
    margin-top: 1em;
    height: 40px;
    width: 50px;
    cursor: pointer;
    transition: opacity .25s ease;
    position: relative; }
    #toggle-baeckerei .button_container span,
    #toggle-gaestezimmer .button_container span {
      background: var(--secondary);
      border: none;
      height: 3px;
      width: 100%;
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      transition: all .35s ease;
      cursor: pointer; }
      #toggle-baeckerei .button_container span:nth-of-type(2),
      #toggle-gaestezimmer .button_container span:nth-of-type(2) {
        top: 17px;
        left: 0;
        right: 0; }
      #toggle-baeckerei .button_container span:nth-of-type(3),
      #toggle-gaestezimmer .button_container span:nth-of-type(3) {
        top: 33px;
        left: 0;
        right: 0; }
    #toggle-baeckerei .button_container:hover,
    #toggle-gaestezimmer .button_container:hover {
      opacity: 1; }
      #toggle-baeckerei .button_container:hover span,
      #toggle-gaestezimmer .button_container:hover span {
        background: var(--primary) !important; }
  #toggle-baeckerei.active,
  #toggle-gaestezimmer.active {
    background-color: var(--transparent); }
    #toggle-baeckerei.active:hover,
    #toggle-gaestezimmer.active:hover {
      background-color: var(--transparent); }
      #toggle-baeckerei.active:hover span,
      #toggle-gaestezimmer.active:hover span {
        background: var(--tertiary) !important; }
    #toggle-baeckerei.active .button_container .top,
    #toggle-gaestezimmer.active .button_container .top {
      transform: translateY(16px) translateX(0) rotate(45deg);
      background: var(--tertiary); }
    #toggle-baeckerei.active .button_container .middle,
    #toggle-gaestezimmer.active .button_container .middle {
      opacity: 0;
      background: var(--tertiary); }
    #toggle-baeckerei.active .button_container .bottom,
    #toggle-gaestezimmer.active .button_container .bottom {
      transform: translateY(-16px) translateX(0) rotate(-45deg);
      background: var(--tertiary); }

#toggle-baeckerei,
#toggle-gaestezimmer {
  display: none; }

@media (max-width: 600px) {
  #toggle-baeckerei,
  #toggle-gaestezimmer {
    display: block;
    z-index: 400;
    left: calc(50% - 35px); }
    #toggle-baeckerei:hover, #toggle-baeckerei.active, #toggle-baeckerei.active:hover,
    #toggle-gaestezimmer:hover,
    #toggle-gaestezimmer.active,
    #toggle-gaestezimmer.active:hover {
      background-color: var(--transparent); }
    #toggle-baeckerei .button_container span,
    #toggle-gaestezimmer .button_container span {
      background-color: var(--zero) !important; }
    #toggle-baeckerei .button_container:hover,
    #toggle-gaestezimmer .button_container:hover {
      opacity: 1; }
      #toggle-baeckerei .button_container:hover span,
      #toggle-gaestezimmer .button_container:hover span {
        background: var(--zero) !important; }
      #toggle-baeckerei .button_container:hover .top,
      #toggle-gaestezimmer .button_container:hover .top {
        background: var(--zero);
        left: -10px;
        right: inherit; }
      #toggle-baeckerei .button_container:hover .middle,
      #toggle-gaestezimmer .button_container:hover .middle {
        background: var(--zero); }
      #toggle-baeckerei .button_container:hover .bottom,
      #toggle-gaestezimmer .button_container:hover .bottom {
        background: var(--zero);
        left: inherit;
        right: -10px; } }
@media (max-width: 600px) {
  body.open #toggle-baeckerei .button_container:hover .top,
  body.open #toggle-gaestezimmer .button_container:hover .top {
    left: 0px;
    right: inherit; }
  body.open #toggle-baeckerei .button_container:hover .bottom,
  body.open #toggle-gaestezimmer .button_container:hover .bottom {
    left: inherit;
    right: 0px; } }

.responsive {
  transition: 0.2s ease-out;
  animation: overlay-anim-reverse 1s 1 reverse; }
  .responsive.anim {
    animation: overlay-anim 1s 1 forwards;
    width: 100%;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-content: center;
    align-items: center;
    transition: transform 0.2s 0.41s; }
    .responsive.anim a {
      animation: blend-in 1s 1 forwards; }
    .responsive.anim a.logo {
      animation: none !important; }
@-webkit-keyframes overlay-anim {
  0% {
    transform: translateY(0%);
    width: 100%;
    left: 0%;
    height: 70px; }
  50% {
    transform: translateY(0);
    width: 80%;
    left: 10%; }
  100% {
    transform: translateY(0);
    width: 100%;
    left: 0; } }
@-webkit-keyframes overlay-anim-reverse {
  0% {
    transform: translateY(0%);
    width: 100%;
    left: 0%;
    height: 70px; }
  50% {
    transform: translateY(0);
    width: 80%;
    left: 10%; }
  100% {
    transform: translateY(0);
    width: 100%;
    left: 0; } }
@-webkit-keyframes blend-in {
  0% {
    opacity: 0; }
  70% {
    opacity: 0.5; }
  100% {
    opacity: 1; } }
/* ---------------- FOOTER ---------------- */
footer {
  background-color: var(--light);
  display: flex;
  flex-direction: row;
  align-items: center;
  align-content: center;
  justify-content: flex-end;
  padding: 2em;
  border-top: 0.8em solid var(--zero); }
  @media (max-width: 600px) {
    footer {
      flex-direction: column;
      justify-content: center; } }
  footer .footer__logo img {
    width: 100px;
    height: auto;
    margin-bottom: 0em; }
    @media (max-width: 600px) {
      footer .footer__logo img {
        margin-bottom: 1em; } }
  footer .footer__links a {
    color: var(--secondary);
    text-transform: uppercase;
    margin: 10px; }
