@font-face {
  font-family: "seinfeld";
  src: url("Seinfeld Font-Oblique.otf");
  font-display: swap;
}

/* FORCE FONT GLOBALLY */
* {
  font-family: "seinfeld", serif !important;
}

/* ================= GLOBAL ================= */

* {
  box-sizing: border-box;
}

html,
body {
  margin: 0;
  padding: 0;
  overflow-x: hidden;
  min-height: 100vh;
  background: url("https://media.wifi4seinfeld.com/bgpic.png") center/cover no-repeat;
  font-family: "seinfeld";
}

/* ================= INTRO ================= */

.introduction {
  position: absolute;
  top: clamp(20px, 4vh, 60px);
  left: clamp(10px, 3vw, 40px);

  font-size: clamp(18px, 4vw, 55px);
  color: #e4021c;

  text-shadow: 2px 1px #000;

  min-height: fit-content;
  padding: 10px;

  background: linear-gradient(#fcd81a, #c1a416);
  border: 3px solid #fcd81a;
  border-radius: 50px;

  box-shadow: 0 0 50px #000;
}

/* ================= SEARCH ================= */

#searchbar {
  position: absolute;
  top: clamp(120px, 22vh, 180px);
  left: clamp(26px, 5.2vw, 82px);

    inline-size: min(60vw, 700px);
    padding-block: 0.8rem;

  padding: 0 15px;

  font-size: clamp(16px, 2vw, 30px);
  color: #fff;

  background-color: #5c4f62;
  border: 5px solid #706376;

  outline: none;

  box-shadow: 0 0 30px #000;
}

#searchbutton {
  position: absolute;
  top: clamp(200px, 30vh, 270px);
  left: clamp(26px, 5.2vw, 82px);

    inline-size: min(62vw, 725px);
    padding-block: 0.8rem;

  font-size: clamp(14px, 2vw, 20px);
  font-weight: 600;

  color: #e4021c;

  background: linear-gradient(#fcd81a, #c1a416);

  border: 5px solid #c1a416;
  border-radius: 35px;

  box-shadow: 0 0 30px #000;

  cursor: pointer;
  transition: 0.2s;
}

#searchbutton:hover {
  transform: scale(1.02);
}

/* ================= CONTACT ================= */

.contacts {
  position: absolute;
  top: clamp(20px, 5vh, 60px);
  right: clamp(10px, 3vw, 50px);

    inline-size: min(30vw, 555px);
    min-block-size: fit-content;

  padding: 10px;

  background-color: #5c4f62;
  border: 10px solid #706376;

  box-shadow: 0 0 120px #000;
}

/* ================= INPUTS ================= */

#name,
#email,
#message {
  width: 100%;

  margin-bottom: 10px;
  padding: 8px;

  border: none;
  outline: none;

  font-family: "seinfeld";

  background: #3e3542;
  color: #fff;
}

#message {
  min-height: 100px;
  resize: vertical;
}

/* ================= SEND BUTTON ================= */

#sendbutton {
  width: 100%;
  margin-top: 10px;

  font-size: clamp(14px, 2vw, 20px);

  color: #e4021c;

  background: linear-gradient(#fcd81a, #c1a416);

  border: 5px solid #c1a416;
  border-radius: 35px;

  box-shadow: 0 0 30px #000;

  cursor: pointer;
  transition: 0.2s;
}

#sendbutton:hover {
  transform: scale(1.02);
}

/* ================= BOX SECTION ================= */

.boxes {
  position: fixed;

  left: 2vw;
  right: 2vw;
  bottom: 2vh;

    block-size: fit-content;

  display: flex;
  align-items: center;
  gap: 15px;

  padding: 15px;

  overflow-x: auto;
  overflow-y: hidden;

  background-color: #2f2832;
  border: 18px solid #706376;

  box-shadow: 0 0 50px #000;
}

.box {
  flex: 0 0 auto;

    inline-size: clamp(140px, 16vw, 190px);
    aspect-ratio: 2 / 3;

  background-color: #4b434f;

  box-shadow: -5px 0 15px #000;

  transition: 0.2s;
}

.box:hover {
  opacity: 0.7;
  transform: translateY(-3px);
}

/* ================= COVER ART ================= */

#s1and2cover {
  background-image: url("https://media.wifi4seinfeld.com/boxart1&2.png");
}

#s3cover {
  background-image: url("https://media.wifi4seinfeld.com/boxart3.png");
}

#s4cover {
  background-image: url("https://media.wifi4seinfeld.com/boxart4.png");
}

#s5cover {
  background-image: url("https://media.wifi4seinfeld.com/boxart5.png");
}

#s6cover {
  background-image: url("https://media.wifi4seinfeld.com/boxart6.png");
}

#s7cover {
  background-image: url("https://media.wifi4seinfeld.com/boxart7.png");
}

#s8cover {
  background-image: url("https://media.wifi4seinfeld.com/boxart8.png");
}

#s9cover {
  background-image: url("https://media.wifi4seinfeld.com/boxart9.png");
}

/* ================= COVER DISPLAY FIX ================= */

#s1and2cover,
#s3cover,
#s4cover,
#s5cover,
#s6cover,
#s7cover,
#s8cover,
#s9cover {
    inline-size: 100%;
    block-size: 100%;

  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;

  border: none;
  opacity: 0.9;
}

/* ================= SCROLLBAR ================= */

::-webkit-scrollbar {
  width: 10px;
}

::-webkit-scrollbar-track {
  background: #514756;
}

::-webkit-scrollbar-thumb {
  background: #b30000;
  border-radius: 5px;
}

::-webkit-scrollbar-thumb:hover {
  background: #7a0f0f;
}

/* ================= SELECTION ================= */

::selection {
  color: red;
  background: white;
}
/* ================= PORTRAIT ================= */
@media (orientation: portrait) {

    body {
        display: flex;
        flex-direction: column;
        gap: 20px;
    }

    .introduction,
    .contacts,
    #searchbar,
    #searchbutton,
    .boxes {
        position: static !important;
    }

    /* FORCE ORDER */
    .introduction {
        order: 1;
    }

    .contacts {
        order: 2;
        inline-size: 100%;
    }

    #searchbar {
        order: 3;
        inline-size: 100%;
    }

    #searchbutton {
        order: 4;
        inline-size: 100%;
    }

    .boxes {
        order: 5;
        inline-size: 100%;
        margin-top: 20px;
    }
}


/* ================= MOBILE LANDSCAPE ONLY ================= */
@media (orientation: landscape) and (max-width: 1024px) {

    /* SEARCH */
    #searchbar {
        top: clamp(90px, 16vh, 130px);
        left: clamp(18px, 3.5vw, 55px);
    }

    #searchbutton {
        top: clamp(150px, 22vh, 200px);
        left: clamp(18px, 3.5vw, 55px);
    }

    /* CONTACT */
    .contacts {
        min-height: unset;

        padding: 6px;

        display: flex;
        flex-direction: column;
        gap: 6px;
    }

    #name,
    #email,
    #message {
        margin-bottom: 4px;
        padding: 4px 6px;
    }

    #message {
        min-height: 60px;
    }

    /* BOXES */
    .boxes {
        position: relative;
        margin-top: 65vh;

        width: calc(100% - 20px); /* keeps it inside viewport */
        max-width: 100%;

        overflow-x: auto;
        overflow-y: hidden;

        padding: 10px;
        border-width: 12px;

        box-sizing: border-box;
    }

    .box {
        flex: 0 0 auto;

        width: clamp(85px, 10vw, 130px); /* slightly narrower */
    }
}