/* Large desktop scaling */

@media (min-width: 1440px) {
  /* Base typography */
  h1 {
    font-size: clamp(4em, calc(10vw - 5em), 7em);
  }

  /* Header, navigation, and hero */
  .bestell_logo {
    width: clamp(230px, 14vw, 270px);
  }

  .evaluation_grafik {
    font-size: clamp(26px, 1.6vw, 30px);
  }

  .start_grafik,
  .contact_grafik,
  .impressum_grafik {
    font-size: clamp(38px, 2.5vw, 44px);
  }

  .icon_wok {
    top: clamp(275px, calc(10vw + 131px), 323px);
  }

  /* Dish list */
  .single_dishes {
    height: clamp(240px, 15vw, 285px);
  }

  .single_dishes_meal {
    font-size: clamp(36px, 2.2vw, 42px);
  }

  .single_dishes_discription {
    font-size: clamp(24px, 1.4vw, 27px);
  }

  .single_dishes_price {
    font-size: clamp(34px, 2vw, 40px);
  }

  .plus_grafik {
    width: clamp(60px, 3.7vw, 70px);
    height: clamp(60px, 3.7vw, 70px);
  }

  .plus_grafik:hover {
    width: clamp(70px, 4.2vw, 80px);
    height: clamp(70px, 4.2vw, 80px);
  }

  /* Shopping basket */
  .shopping_basket {
    width: clamp(390px, 24vw, 460px);
    flex-grow: 0;
    flex-shrink: 0;
  }

  #headline_h2 {
    font-size: clamp(36px, 2.3vw, 42px);
  }

  .basket_meal {
    font-size: clamp(19px, 1.2vw, 23px);
  }

  .basket_subtotal,
  .basket_total {
    font-size: clamp(20px, 1.25vw, 24px);
  }

  .box_for_order {
    height: auto;
    min-height: clamp(150px, 9vw, 170px);
    align-items: center;
  }

  .order_box {
    font-size: clamp(20px, 1.25vw, 24px);
    padding: clamp(10px, 0.7vw, 14px) clamp(14px, 1vw, 20px);
  }

  .icon_grafik,
  .icon_grafik_minus,
  .icon_grafik_rubbish {
    width: clamp(26px, 1.6vw, 30px);
    height: clamp(26px, 1.6vw, 30px);
  }

  .icon_grafik {
    font-size: clamp(18px, 1.1vw, 21px);
  }

  .icon_grafik:hover,
  .icon_grafik_rubbish:hover {
    width: clamp(30px, 1.9vw, 36px);
    height: clamp(30px, 1.9vw, 36px);
  }

  .button_grafik {
    font-size: clamp(25px, 1.6vw, 29px);
  }

  .button_grafik:hover {
    font-size: clamp(28px, 1.8vw, 32px);
  }

  /* Footer */
  .footer_grafik {
    gap: clamp(100px, 7vw, 130px);
    padding-top: clamp(15px, 1.1vw, 20px);
    padding-bottom: clamp(10px, 0.8vw, 15px);
  }

  .icon_thanks,
  .privacy_policy {
    font-size: clamp(20px, 1.35vw, 26px);
  }

  .copyright_jm {
    font-size: clamp(26px, 1.7vw, 32px);
  }

  /* Legal notice */
  .box_grafik {
    width: clamp(900px, 65vw, 1100px);
  }

  .box_grafik .headline_grafik {
    font-size: clamp(24px, 1.6vw, 30px);
  }

  .box_grafik h3 {
    font-size: clamp(34px, 2.2vw, 40px);
  }

  .project_note {
    max-width: 700px;
  }

  .box_grafik .privacy_link {
    font-size: clamp(24px, 1.6vw, 30px);
    padding: clamp(10px, 0.8vw, 14px) clamp(22px, 1.5vw, 30px);
  }

  .copyright_jm_impressum {
    font-size: clamp(26px, 1.6vw, 30px);
    margin-top: clamp(18px, 1.25vw, 24px);
  }

  /* Privacy policy */
  main.legal_content {
    max-width: clamp(900px, 65vw, 1100px);
  }

  .legal_content h2 {
    font-size: clamp(36px, 2.4vw, 44px);
  }

  .legal_content h3 {
    font-size: clamp(34px, 2.2vw, 40px);
  }

  .legal_content p,
  .legal_content a {
    font-size: clamp(24px, 1.6vw, 30px);
  }

  /* Contact form */
  .input_position {
    width: clamp(1040px, 68vw, 1200px);
    height: 390px;
  }

  .headline_grafik_mail {
    width: clamp(650px, 42vw, 760px);
    font-size: clamp(50px, 3.2vw, 58px);
  }

  .label_grafik {
    font-size: clamp(34px, 2.1vw, 38px);
  }

  .input_grafik {
    width: clamp(650px, 42vw, 760px);
    font-size: clamp(25px, 1.6vw, 29px);
  }

  .send_button {
    font-size: clamp(25px, 1.6vw, 29px);
  }

  .send_button:hover {
    font-size: clamp(29px, 1.9vw, 34px);
  }

  form + .headline_grafik .privacy_link {
    font-size: clamp(34px, 2.1vw, 38px);
    padding: clamp(12px, 0.9vw, 16px) clamp(26px, 1.7vw, 34px);
  }
}

/* Widescreen scaling */

@media (min-width: 1920px) {
  /* Base typography */
  h1 {
    font-size: clamp(7em, calc(-1.211em + 6.842vw), 13.5em);
  }

  /* Header, navigation, and hero */
  .bestell_logo {
    width: clamp(268.8px, calc(53.356px + 11.221vw), 439.36px);
  }

  .evaluation_grafik {
    font-size: clamp(30px, calc(10.295px + 1.026vw), 45.6px);
  }

  .start_grafik,
  .contact_grafik,
  .impressum_grafik {
    font-size: clamp(44px, calc(17.726px + 1.368vw), 64.8px);
  }

  .icon_position {
    position: relative;
  }

  .img_grafik {
    height: clamp(200px, calc(-52.632px + 13.158vw), 400px);
    margin-bottom: clamp(90px, calc(24.211px + 3.421vw), 140px);
  }

  .icon_wok {
    width: clamp(150px, calc(31.579px + 6.167vw), 240px);
    height: clamp(150px, calc(31.579px + 6.167vw), 240px);
    border-width: clamp(10px, calc(1.579px + 0.438vw), 16px);
    top: clamp(135px, calc(-60.789px + 10.197vw), 290px);
  }

  /* Dish list */
  .single_dishes {
    height: clamp(285px, calc(129px + 8.125vw), 408.5px);
  }

  .single_dishes_meal {
    font-size: clamp(42px, calc(19.011px + 1.197vw), 60.2px);
  }

  .single_dishes_discription {
    font-size: clamp(26.88px, calc(11.904px + 0.78vw), 38.736px);
  }

  .single_dishes_price {
    font-size: clamp(38.4px, calc(16.067px + 1.163vw), 56.08px);
  }

  .plus_grafik {
    width: clamp(70px, calc(37.158px + 1.711vw), 96px);
    height: clamp(70px, calc(37.158px + 1.711vw), 96px);
  }

  .plus_grafik:hover {
    width: clamp(80px, calc(47.158px + 1.711vw), 106px);
    height: clamp(80px, calc(47.158px + 1.711vw), 106px);
  }

  /* Shopping basket */
  .shopping_basket {
    width: clamp(460px, calc(197.263px + 13.684vw), 668px);
    flex-grow: 0;
    flex-shrink: 0;
  }

  #headline_h2 {
    font-size: clamp(42px, calc(19.011px + 1.197vw), 60.2px);
  }

  .basket_meal {
    font-size: clamp(23px, calc(8.221px + 0.77vw), 34.7px);
  }

  .basket_subtotal,
  .basket_total {
    font-size: clamp(24px, calc(10.863px + 0.684vw), 34.4px);
  }

  .box_for_order {
    height: auto;
    min-height: clamp(170px, calc(68.947px + 5.263vw), 250px);
    align-items: center;
  }

  .order_box {
    font-size: clamp(24px, calc(10.863px + 0.684vw), 34.4px);
    padding: clamp(14px, calc(3.895px + 0.526vw), 22px)
      clamp(20px, calc(4.842px + 0.789vw), 32px);
  }

  .icon_grafik,
  .icon_grafik_minus,
  .icon_grafik_rubbish {
    width: clamp(30px, calc(13.579px + 0.855vw), 43px);
    height: clamp(30px, calc(13.579px + 0.855vw), 43px);
  }

  .icon_grafik {
    font-size: clamp(21px, calc(9.505px + 0.599vw), 30.1px);
  }

  .icon_grafik:hover,
  .icon_grafik_rubbish:hover {
    width: clamp(36px, calc(19.579px + 0.855vw), 49px);
    height: clamp(36px, calc(19.579px + 0.855vw), 49px);
  }

  .button_grafik {
    font-size: clamp(29px, calc(10.937px + 0.941vw), 43.3px);
  }

  .button_grafik:hover {
    font-size: clamp(32px, calc(12.295px + 1.026vw), 47.6px);
  }

  /* Footer */
  .footer_grafik {
    gap: clamp(130px, calc(41.579px + 4.605vw), 200px);
    padding-top: clamp(20px, calc(7.368px + 0.658vw), 30px);
    padding-bottom: clamp(15px, calc(6.158px + 0.461vw), 22px);
  }

  .icon_thanks,
  .privacy_policy {
    font-size: clamp(26px, calc(8.316px + 0.921vw), 40px);
  }

  .copyright_jm {
    font-size: clamp(32px, calc(9.263px + 1.184vw), 50px);
  }

  /* Legal notice */
  .box_grafik {
    width: clamp(1100px, calc(291.579px + 42.105vw), 1740px);
  }

  .box_grafik .headline_grafik {
    font-size: clamp(30px, calc(9.789px + 1.053vw), 46px);
  }

  .box_grafik h3 {
    font-size: clamp(40px, calc(11.705px + 1.474vw), 62.4px);
  }

  .project_note {
    max-width: clamp(700px, calc(194.737px + 26.316vw), 1100px);
  }

  .box_grafik .privacy_link {
    font-size: clamp(30px, calc(9.789px + 1.053vw), 46px);
    padding: clamp(14px, calc(5.916px + 0.421vw), 20.4px)
      clamp(30px, calc(5.747px + 1.263vw), 49.2px);
  }

  .copyright_jm_impressum {
    font-size: clamp(30px, calc(9.789px + 1.053vw), 46px);
    margin-top: clamp(24px, calc(6.316px + 0.921vw), 38px);
  }

  /* Privacy policy */
  main.legal_content {
    max-width: clamp(1100px, calc(291.579px + 42.105vw), 1740px);
  }

  .legal_content h2 {
    font-size: clamp(44px, calc(11.158px + 1.711vw), 70px);
  }

  .legal_content h3 {
    font-size: clamp(40px, calc(11.705px + 1.474vw), 62.4px);
  }

  .legal_content p,
  .legal_content a {
    font-size: clamp(30px, calc(9.789px + 1.053vw), 46px);
  }

  /* Contact form */
  .input_position {
    width: clamp(1200px, calc(290.526px + 47.368vw), 1920px);
    height: clamp(390px, calc(127.263px + 13.684vw), 598px);
  }

  .headline_grafik_mail {
    width: clamp(760px, calc(173.895px + 30.526vw), 1224px);
    font-size: clamp(58px, calc(17.579px + 2.105vw), 90px);
  }

  .label_grafik {
    font-size: clamp(38px, calc(9.705px + 1.474vw), 60.4px);
  }

  .input_grafik {
    width: clamp(760px, calc(173.895px + 30.526vw), 1224px);
    font-size: clamp(29px, calc(6.768px + 1.158vw), 46.6px);
  }

  .send_button {
    font-size: clamp(29px, calc(6.768px + 1.158vw), 46.6px);
  }

  .send_button:hover {
    font-size: clamp(34px, calc(9.747px + 1.263vw), 53.2px);
  }

  form + .headline_grafik .privacy_link {
    font-size: clamp(38px, calc(9.705px + 1.474vw), 60.4px);
    padding: clamp(16px, calc(3.874px + 0.632vw), 25.6px)
      clamp(34px, calc(5.705px + 1.474vw), 56.4px);
  }
}