/*    ##################################################################################################################     */
/*  ################################## [ Extra small devices (phones, 767px and down) ] ##################################   */
/*    ##################################################################################################################     */

/* ============================================ [ Screen from 1 pixel onwards ] ============================================ */
@media only screen and (min-width: 1px) {
  .full-page-container img.under-construction-sign,
  img.low-resolution-warning-sign {
    display: none;
  }

  .full-page-container img.stop-low-resolution-sign {
    display: block;
    width: 100%;
  }

  .home-page-banner img {
    display: none;
  }

  .page-navigation-container {
    display: none;
  }

  .page-footer {
    display: none;
  }
}

/* =========================================== [ Screen from 250 pixel onwards ] =========================================== */
@media only screen and (min-width: 250px) {
  /* --------------- [ Page Body ] --------------- */
  body {
    font-family: Arial, Helvetica, sans-serif;
    background-color: white;
    margin-bottom: 0px;
  }
  /* --------------------------------------------- */

  /* ---------------- [ Low Resolution Icon ] -------------- */
  .full-page-container img.low-resolution-warning-sign {
    display: block;
    width: 20%;
    height: 20%;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 5px;
  }
  /* -------------------------------------------------------- */

  /* ---------------- [ Switched OFF ] ---------------- */
  .page-navigation-container .desktop-icon {
    display: none;
  }

  .full-page-container img.stop-low-resolution-sign {
    display: none;
  }

  .page-navigation-container img.tutorial-page-icon {
    display: none;
  }

  .mobile-desktop-menu-content-container {
    display: none;
    position: absolute;
    background-color: gold;
    min-width: 160px;
    overflow: clip;
    box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.7);
    border-radius: 12px 12px 12px 12px;
  }
  /* --------------------------------------------------- */

  /* -------- [ Page Navigation Container ] --------- */
  .page-navigation-container {
    display: inline-block;
    position: sticky;
    top: 0.5%;
    width: 100%;
    height: calc(90px + 2vw);
    background-color: rgb(33, 33, 180);
    border: 2px solid wheat;
    border-radius: 20px 20px 10px 10px;
    box-shadow: 7px 10px 30px 2px rgb(25, 0, 4);
    margin-top: 3px;
    margin-bottom: 22px;
    margin-right: 5px;
    margin-left: -2px;
    text-align: center;
  }

  .page-navigation-container .phone-tablet-icon {
    display: inline-block;
    position: absolute;
    max-width: 50%;
    max-height: 50%;
    left: 2%;
    bottom: 25%;
  }
  /* --------------------------------------------------- */

  /* -------- [ Page Navigation & Menu Button Links ] ------- */
  .mobile-desktop-menu-content-container {
    position: absolute;
    right: 1%;
    top: 85%;
    border: 2px solid black;
  }

  .mobile-desktop-menu-content-container a.menu-link {
    display: block;
    color: black;
    border: 2px solid gold;
    border-radius: 10px 10px 10px 10px;
    text-align: center;
    padding-left: 1px;
    padding-right: 1px;
    text-decoration: none;
    padding-top: 12px;
    padding-bottom: 12px;
    font-weight: bolder;
  }

  .mobile-desktop-menu-content-container a.menu-link:hover {
    background-color: black;
    color: gold;
  }
  /* ----------------------------------------------------------- */

  /* ---------------- [ Page Navigation Dropdown Menu ] ---------------- */
  .mobile-desktop-container {
    display: inline-block;
  }

  .mobile-desktop-container .menu-button {
    position: absolute;
    right: 7px;
    bottom: 18.5%;
    background-color: black;
    border-radius: 10px 10px 10px 10px;
    color: gold;
    font-weight: bolder;
    padding: 20px 20px 20px 20px;
    border-top-color: rgb(215, 186, 20);
    border-left-color: rgb(215, 186, 20);
    border-bottom-color: rgb(235, 202, 15);
    border-right-color: rgb(235, 202, 15);
    box-shadow: 0px 0px 13px 3px rgba(57, 148, 255, 0.79);
  }

  .mobile-desktop-container .menu-button:hover,
  .menu-button:focus {
    background-color: gold;
    color: black;
  }

  /* Class used to hide / show the menu when the menu button is pressed */
  .show {
    display: block;
  }
  /* --------------------------------------------------------------------- */

  /* ---------------------------- [ Home Page Banner ] ------------------------------  */
  .home-page-banner {
    width: 40%;
    margin: 0 auto;
  }

  .home-page-banner img {
    display: block;
    width: 100%;
    border-radius: 3px;
    box-shadow: 0px 10px 13px -7px #000000, 5px 5px 15px 5px rgba(0, 0, 0, 0);
  }

  .home-page-banner img:hover {
    width: 101%;
    box-shadow: 0px 10px 13px -7px #469100, 5px 5px 15px 5px rgba(0, 0, 0, 0);
  }
  /* ---------------------------------------------------------------------------------- */

  /* ---- [ Page Footer ] ---- */
  .page-footer {
    display: block;
    margin-left: -10px;
    margin-right: -10px;
    margin-top: 700px;
  }

  .page-footer img {
    width: 100%;
  }
  /* ------------------------- */
}

/* =========================================== [ Screen from 350 pixel onwards ] =========================================== */
@media only screen and (min-width: 350px) {
  .full-page-container img.low-resolution-warning-sign {
    display: none;
  }

  .mobile-desktop-container .menu-button {
    bottom: 19%;
  }

  .page-navigation-container {
    margin-top: 0px;
    top: 0.2%;
  }
}

/* =========================================== [ Screen from 450 pixel onwards ] =========================================== */
@media only screen and (min-width: 450px) {
  .mobile-desktop-container .menu-button {
    bottom: 19.8%;
  }
}

/* =========================================== [ Screen from 550 pixel onwards ] =========================================== */
@media only screen and (min-width: 550px) {
  .mobile-desktop-container .menu-button {
    bottom: 20.3%;
  }
}

/* =========================================== [ Screen from 650 pixel onwards ] =========================================== */
@media only screen and (min-width: 650px) {
  .mobile-desktop-container .menu-button {
    bottom: 21.5%;
  }
}

/* =========================================== [ Screen from 750 pixel onwards ] =========================================== */
@media only screen and (min-width: 750px) {
  .mobile-desktop-container .menu-button {
    bottom: 21.8%;
  }
}
/*   ######################################################################################################################     */
/*  ########################################################### [ END ] ######################################################  */
/*   ######################################################################################################################     */

/*    ################################################################################################################     */
/*  ############################### [ Medium devices (landscape tablets, 768px and up) ] ###############################   */
/*    ################################################################################################################     */

/* =========================================== [ Screen from 768 pixel onwards ] =========================================== */
@media only screen and (min-width: 768px) {
  /* --------------------- [ Switched OFF ] --------------------- */

  .page-navigation-container .phone-tablet-icon {
    display: none;
  }

  .phone-tablet-icon {
    display: none;
  }

  .mobile-desktop-container .menu-button {
    display: none;
  }
  /* ---------------------------------------------------------- */

  .page-navigation-container {
    height: calc(46px + 1vw);
  }

  .page-navigation-container .desktop-icon {
    display: inline-block;
    position: absolute;
    max-width: 70%;
    max-height: 70%;
    left: 0.8%;
    bottom: 25%;
    top: 16%;
  }

  .page-navigation-container img.tutorial-page-icon {
    display: inline-block;
    position: absolute;
    max-width: 82%;
    max-height: 82%;
    right: 0.8%;
    top: 8.6%;
  }
  /* -------------------------------------------------------------------------------- */

  /* -------------------- [ Page Navigation Links ] ------------------- */
  .mobile-desktop-menu-content-container {
    all: unset;
  }

  .mobile-desktop-menu-content-container a.menu-link {
    display: inline-block;
    margin-top: calc(1px + 0.35vw);
    font-size: calc(3px + 0.7vw);
    margin-bottom: 3px;
    margin-left: 10px;
    margin-right: 0px;
    color: beige;
    text-decoration: none;
    border: 1px solid gold;
    border-radius: 10px 30px;
    padding-left: calc(1px + 1vw);
    padding-right: calc(1px + 1vw);
    padding-top: 4px;
    padding-bottom: 4px;
    font-weight: bold;
    background-color: black;
  }

  .mobile-desktop-menu-content-container a.menu-link:hover {
    background-color: gold;
    color: black;
  }
  /* --------------------------------------------------------------- */

  .mobile-desktop-container {
    margin-right: 35px;
  }
}

/* =========================================== [ Screen from 850 pixel onwards ] =========================================== */
@media only screen and (min-width: 850px) {
  .mobile-desktop-menu-content-container a.menu-link {
    margin-top: calc(0.7px + 0.3vw);
  }
}

/* =========================================== [ Screen from 900 pixel onwards ] =========================================== */
@media only screen and (min-width: 900px) {
  .mobile-desktop-menu-content-container a.menu-link {
    margin-top: calc(0.2px + 0.3vw);
  }
}

/* =========================================== [ Screen from 970 pixel onwards ] =========================================== */
@media only screen and (min-width: 970px) {
  .mobile-desktop-menu-content-container a.menu-link {
    margin-top: calc(0.1px + 0.27vw);
  }
}
/*    ################################################################################################################     */
/*  ################################ [ Large devices (laptops/desktops, 992px and up) ] ################################   */
/*    ################################################################################################################     */

/* =========================================== [ Screen from 992 pixel onwards ] =========================================== */
@media only screen and (min-width: 992px) {
  .mobile-desktop-menu-content-container a.menu-link {
    margin-top: calc(1px + 0.2vw);
  }

  .page-navigation-container {
    height: calc(47px + 1vw);
  }
}

/* =========================================== [ Screen from 1100 pixel onwards ] ========================================== */
@media only screen and (min-width: 1100px) {
  .mobile-desktop-menu-content-container a.menu-link {
    margin-top: calc(0.9px + 0.2vw);
  }
}

/* =========================================== [ Screen from 1130 pixel onwards ] ========================================== */
@media only screen and (min-width: 1130px) {
  .mobile-desktop-menu-content-container a.menu-link {
    margin-top: calc(0.5px + 0.2vw);
  }
}
/*   ######################################################################################################################     */
/*  ########################################################### [ END ] ######################################################  */
/*   ######################################################################################################################     */

/*    ################################################################################################################     */
/*  ####################### [ Extra large devices (large laptops and desktops, 1200px and up) ] ########################   */
/*    ################################################################################################################     */

/* =========================================== [ Screen from 1200 pixel onwards ] ========================================== */
@media only screen and (min-width: 1200px) {
  .mobile-desktop-menu-content-container a.menu-link {
    margin-top: calc(0.4px + 0.2vw);
    border: 2px solid gold;
  }

  .page-navigation-container {
    height: calc(53px + 1vw);
  }
}

/* =========================================== [ Screen from 1300 pixel onwards ] ========================================== */
@media only screen and (min-width: 1300px) {
  .mobile-desktop-menu-content-container a.menu-link {
    margin-top: calc(0.2px + 0.2vw);
  }
}

/* =========================================== [ Screen from 1350 pixel onwards ] ========================================== */
@media only screen and (min-width: 1350px) {
  .mobile-desktop-menu-content-container a.menu-link {
    margin-top: calc(0.1px + 0.19vw);
  }
}

/* =========================================== [ Screen from 1400 pixel onwards ] ========================================== */
@media only screen and (min-width: 1400px) {
  .mobile-desktop-menu-content-container a.menu-link {
    margin-top: calc(0.1px + 0.21vw);
    font-size: calc(5px + 0.7vw);
  }

  .page-navigation-container {
    height: calc(56px + 1vw);
  }
}

/* =========================================== [ Screen from 1500 pixel onwards ] ========================================== */
@media only screen and (min-width: 1500px) {
  .mobile-desktop-menu-content-container a.menu-link {
    margin-top: calc(0.1px + 0.17vw);
  }
}

/* =========================================== [ Screen from 1600 pixel onwards ] ========================================== */
@media only screen and (min-width: 1600px) {
  .mobile-desktop-menu-content-container a.menu-link {
    margin-top: calc(0.1px + 0.16vw);
  }
}

/* =========================================== [ Screen from 1700 pixel onwards ] ========================================== */
@media only screen and (min-width: 1700px) {
  .page-navigation-container {
    height: calc(60px + 1vw);
  }

  .mobile-desktop-menu-content-container a.menu-link {
    margin-top: calc(0.1px + 0.25vw);
  }
}

/* =========================================== [ Screen from 1800 pixel onwards ] ========================================== */
@media only screen and (min-width: 1800px) {
  .mobile-desktop-menu-content-container a.menu-link {
    margin-top: calc(0.1px + 0.22vw);
  }
}

/* =========================================== [ Screen from 1900 pixel onwards ] ========================================== */
@media only screen and (min-width: 1900px) {
  .mobile-desktop-menu-content-container a.menu-link {
    margin-top: calc(0.1px + 0.2vw);
  }
}

/* =========================================== [ Screen from 1950 pixel onwards ] ========================================== */
@media only screen and (min-width: 1950px) {
  .mobile-desktop-menu-content-container a.menu-link {
    margin-top: calc(0.1px + 0.16vw);
  }
}

/* =========================================== [ Screen from 2000 pixel onwards ] ========================================== */
@media only screen and (min-width: 2000px) {
  .page-navigation-container {
    height: calc(65px + 1vw);
  }

  .mobile-desktop-menu-content-container a.menu-link {
    margin-top: calc(0.1px + 0.26vw);
  }
}

/* =========================================== [ Screen from 2100 pixel onwards ] ========================================== */
@media only screen and (min-width: 2100px) {
  .mobile-desktop-menu-content-container a.menu-link {
    margin-top: calc(0.1px + 0.23vw);
  }
}

/* =========================================== [ Screen from 2200 pixel onwards ] ========================================== */
@media only screen and (min-width: 2200px) {
  .mobile-desktop-menu-content-container a.menu-link {
    margin-top: calc(0.1px + 0.2vw);
  }
}

/* =========================================== [ Screen from 2330 pixel onwards ] ========================================== */
@media only screen and (min-width: 2330px) {
  .mobile-desktop-menu-content-container a.menu-link {
    margin-top: calc(0.1px + 0.17vw);
  }
}

/* =========================================== [ Screen from 2400 pixel onwards ] ========================================== */
@media only screen and (min-width: 2400px) {
  .page-navigation-container {
    height: calc(70px + 1vw);
  }

  .mobile-desktop-menu-content-container a.menu-link {
    margin-top: calc(0.1px + 0.27vw);
  }
}

/* =========================================== [ Screen from 2500 pixel onwards ] ========================================== */
@media only screen and (min-width: 2500px) {
  .page-navigation-container {
    height: calc(75px + 1vw);
  }

  .mobile-desktop-menu-content-container a.menu-link {
    margin-top: calc(0.1px + 0.27vw);
    font-size: calc(8px + 0.7vw);
  }
}

/* =========================================== [ Screen from 2600 pixel onwards ] ========================================== */
@media only screen and (min-width: 2600px) {
  .mobile-desktop-menu-content-container a.menu-link {
    margin-top: calc(0.1px + 0.23vw);
  }
}

/* =========================================== [ Screen from 2900 pixel onwards ] ========================================== */
@media only screen and (min-width: 2900px) {
  .mobile-desktop-menu-content-container a.menu-link {
    margin-top: calc(0.1px + 0.18vw);
  }
}

/* =========================================== [ Screen from 3000 pixel onwards ] ========================================== */
@media only screen and (min-width: 3000px) {
  .page-navigation-container {
    height: calc(77px + 1vw);
  }
}

/* =========================================== [ Screen from 3100 pixel onwards ] ========================================== */
@media only screen and (min-width: 3100px) {
  .mobile-desktop-menu-content-container a.menu-link {
    margin-top: calc(0.1px + 0.19vw);
  }
}

/* =========================================== [ Screen from 3200 pixel onwards ] ========================================== */
@media only screen and (min-width: 3200px) {
  .mobile-desktop-menu-content-container a.menu-link {
    margin-top: calc(0.1px + 0.17vw);
  }

  .page-navigation-container {
    height: calc(78px + 1vw);
  }
}

/* =========================================== [ Screen from 3300 pixel onwards ] ========================================== */
@media only screen and (min-width: 3300px) {
  .page-navigation-container {
    height: calc(79px + 1vw);
  }
}

/* =========================================== [ Screen from 3400 pixel onwards ] ========================================== */
@media only screen and (min-width: 3400px) {
  .page-navigation-container {
    height: calc(80px + 1vw);
  }
}

/* =========================================== [ Screen from 3500 pixel onwards ] ========================================== */
@media only screen and (min-width: 3500px) {
  .page-navigation-container {
    height: calc(81px + 1vw);
  }
}

/* =========================================== [ Screen from 3600 pixel onwards ] ========================================== */
@media only screen and (min-width: 3600px) {
  .page-navigation-container {
    height: calc(82px + 1vw);
  }
}

/* =========================================== [ Screen from 3700 pixel onwards ] ========================================== */
@media only screen and (min-width: 3700px) {
  .page-navigation-container {
    height: calc(83px + 1vw);
  }
}

/* =========================================== [ Screen from 3800 pixel onwards ] ========================================== */
@media only screen and (min-width: 3800px) {
  .page-navigation-container {
    height: calc(87px + 1vw);
  }

  .mobile-desktop-menu-content-container a.menu-link {
    border: 3px solid gold;
  }
}

/* =========================================== [ Screen from 3900 pixel onwards ] ========================================== */
@media only screen and (min-width: 3900px) {
  .page-navigation-container {
    height: calc(89px + 1vw);
  }
}

/* =========================================== [ Screen from 4000 pixel onwards ] ========================================== */
@media only screen and (min-width: 4000px) {
  .page-navigation-container {
    height: calc(90px + 1vw);
  }
}

/* =========================================== [ Screen from 4050 pixel onwards ] ========================================== */
@media only screen and (min-width: 4050px) {
  .page-navigation-container {
    height: calc(91px + 1vw);
  }
}

/* =========================================== [ Screen from 4101 pixel onwards ] ========================================== */
@media only screen and (min-width: 4101px) {
  .full-page-container img.under-construction-sign {
    display: block;
    width: 12%;
    height: 12%;
    margin-left: auto;
    margin-right: auto;
  }
}
/* ===================================== !! No more styles after 4100 pixels onwards !! ==================================== */

/*   ######################################################################################################################     */
/*  ########################################################### [ END ] ######################################################  */
/*   ######################################################################################################################     */
