/* --- responsive.css --- */

/* General Responsive Styles */

/*
* These styles apply to devices with a screen width of 768px or less.
*/
@media screen and (max-width: 768px) {
  /* Header & Navbar */
  #header .container {
    padding: 0.5rem;
  }

  #header .header-left {
    display: block;
  }

  .logo-container {
    justify-content: center;
  }

  .navbar ul {
    display: flex;
    flex-direction: row;
    align-items: center;
  }

  .navbar li {
    margin: 0.5rem 0;
  }

  .navigation.header-right {
    justify-content: center;
  }

  /* Intro Banner */
  .intro-banner {
    height: calc(100vh - 5rem);
  }

  .intro-banner-content {
    padding: 1rem;
  }

  .banner-headline-text-part h3 {
    font-size: 24px;
  }

  .banner-headline-text-part p {
    font-size: 16px;
  }

  /* Icon and Counter Boxes */
  .icon-boxes-content,
  .counter-boxes-content {
    padding: 1.5rem 0;
  }

  .icon-boxes-content .bottom-side,
  .counter-boxes-content .bottom-side {
    flex-direction: column;
    align-items: center;
  }

  .icon-boxes-content .icon-box,
  .counter-boxes-content .counter-box {
    width: 100%;
    height: auto;
    padding: 1rem;
  }

  .icon-box .icon-box-circle,
  .counter-box .counter-box-circle {
    height: 2.5rem;
    width: 2.5rem;
    padding: 0.5rem;
  }

  .icon-box .icon-box-circle i,
  .counter-box .counter-box-circle i {
    font-size: 1rem;
  }

  /* Browse Sections */
  .browse-content {
    flex-direction: column;
    padding: 0 1.5rem;
  }

  .left-side-overlay-content,
  .right-side-overlay-content {
    padding: 1rem;
  }

  /* Chatbot */
  .chatbot-btn {
    right: 20px;
    bottom: 20px;
  }

  .chatbot {
    right: 0;
    bottom: 0;
    height: 100%;
    border-radius: 0;
    width: 100%;
  }

  .chatbot .chatbox {
    height: 90%;
    padding: 25px 15px 100px;
  }

  .chatbot .chat-input {
    padding: 5px 15px;
  }

  .chatbot header span {
    display: block;
  }
}

/* iPad (landscape) styles */

/*
* These styles apply to devices with a screen width between 768px and 1024px.
*/
@media screen and (min-width: 768px) and (max-width: 1024px) {
  /* Header */
  #header .container {
    padding: 0.5rem 1rem;
  }

  #header .header-left {
    grid-template-columns: 1fr 1fr;
  }

  .logo-container {
    justify-content: flex-start;
  }

  .navbar ul li {
    margin-left: 2rem;
  }

  /* Intro Banner */
  .intro-banner {
    height: calc(100vh - 5rem);
  }

  .intro-banner-content {
    padding: 2rem;
  }

  .banner-headline-text-part h3 {
    font-size: 32px;
  }

  .banner-headline-text-part p {
    font-size: 18px;
  }

  /* Icon and Counter Boxes */
  .icon-boxes-content,
  .counter-boxes-content {
    padding: 2rem 0;
  }

  .icon-boxes-content .bottom-side .icon-box,
  .counter-boxes-content .bottom-side .counter-box {
    width: 200px;
    height: auto;
    padding: 1rem;
  }
}