html {
  scroll-behavior: smooth;
}
body {
  margin: 0;
  background: #000;
}
img {
  border: none;
  margin: 0;
  padding: 0;
}
a {
  margin: 0;
  padding: 0;
  cursor: pointer;
  text-decoration: none;
}
.row {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
}
#wrapper-index {
  position: relative;
  margin: 0 auto;
  width: 100%;
  min-height: 100%;
  height: auto !important;
  text-align: left;
}

/* SECTION ONE */
#section-one {
  position: relative;
  background: url("../pics/ranking-area-bg.jpg") repeat-x;
  top: 0px;
  border-bottom: 2px solid #ffaa3f;
  animation: scrollBackground 30s linear infinite;
  overflow: hidden;
}
@keyframes scrollBackground {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: 1000px 0;
  }
}
#section-one-inner {
  height: 100%;
  min-height: 650px;
}
#section-one-inner h1 {
  color: #ffaa3f;
  font-family: "Josefin Sans", sans-serif;
  text-align: center;
  margin: 0;
  position: relative;
  top: 60px;
  font-size: clamp(20px, 3.5vw, 35px);
  transition: all 0.3s;
}
#stats-holder {
  position: relative;
  top: 130px;
  display: flex;
  justify-content: space-around;
  flex-wrap: wrap;
  gap: 30px;
  transition: all 0.3s;
}
.casual-box,
.competitive-box,
.bar-league-box {
  display: block;
  width: 347px;
  height: 371px;
}
.casual-box img,
.competitive-box img,
.bar-league-box img {
  width: 100%;
}

/* SECTION TWO */
#section-two {
  position: relative;
  background: url("../pics/video-area-bg.jpg") repeat-x;
  top: 0px;
  border-bottom: 2px solid #ffaa3f;
}
#section-two-inner {
  padding: 105px 0;
}
#section-two-inner h1 {
  font-family: "Josefin Sans", sans-serif;
  color: #fff;
  text-align: right;
  font-size: clamp(50px, 4.5vw, 60px);
  display: block;
  position: relative;
  max-width: 206px;
}
#section-two-inner h1::before {
  content: "";
  position: absolute;
  display: block;
  width: 100%;
  min-width: 277px;
  height: 100%;
  max-height: 272px;
  top: 90px;
  left: -30px;
  background: url("../pics/curved-arrow.png") no-repeat;
  z-index: 1;
}
#sec-two-content {
  display: flex;
  justify-content: space-between;
}
.video-holder img {
  width: clamp(330px, 49vw, 750px);
  /* This needs to be adjusted when the real video is added */
}

/* SECTION THREE */
#section-three {
  position: relative;
  top: 0px;
  border-bottom: 2px solid #ffaa3f;
}
#section-three-inner {
  background: url("../pics/players-area-bg.jpg") no-repeat;
  background-size: 100% 100%;
  padding: 0 0 15px 0;
}
#sec-three-content {
  display: flex;
  flex-direction: column;
  padding: 0;
}
#section-three-inner h1 {
  font-family: "Josefin Sans", sans-serif;
  color: #fff;
  font-size: clamp(22px, 4.5vw, 60px);
  display: block;
  position: relative;
  margin: 60px auto 0;
}
#section-three-inner h1 span {
  margin: 0 0 0 343px;
}
.globe-holder {
  text-align: center;
}
.globe-holder img {
  width: clamp(120px, 25vw, 340px);
}

#section-beta {
  background: #000;
  color: #fff;
  border-bottom: 2px solid #ffaa3f;
  padding: 80px 0;
  text-align: center;
}

.beta-image {
  padding: 20px 0;
}

.beta-image img {
  max-width: 100%;
  height: auto;
  border: 10px solid #005727;
}

.beta-text {
  flex: 1;
  min-width: 300px;
  max-width: 600px;
  margin: 0 auto;
  padding: 0 20px;
}

.beta-text h1 {
  color: #ffffff;
  font-family: "Josefin Sans", sans-serif;
  font-size: clamp(26px, 4vw, 48px);
}

.beta-text p {
  font-size: clamp(16px, 2.5vw, 20px);
  margin: 20px 0;
}

.discord-btn {
  display: inline-block;
  background: #4752c4;
  color: #fff;
  font-weight: bold;
  padding: 12px 24px;
  border-radius: 6px;
  font-size: 18px;
  margin-top: 20px;
  transition: background 0.3s;
}

.discord-btn:hover {
  background: #414bb6;
}

.beta-image img {
  width: clamp(280px, 45vw, 500px);
}

#section-ladders {
  background: url("../pics/ranking-area-bg.jpg") repeat-x;
  padding: 60px 0;
  border-bottom: 2px solid #ffaa3f;
}

#ladders-layout {
  display: flex;
  gap: 40px;
  flex-wrap: wrap;
}

.news-section {
  flex: 1;
  min-width: 300px;
  color: #fff;
  padding: 0 20px;
}

.news-section h2 {
  font-family: "Josefin Sans", sans-serif;
  font-size: clamp(24px, 3vw, 36px);
  color: #ffaa3f;
  margin-bottom: 20px;
}

.news-container {
  background: #111;
  border: 1px solid #ffaa3f;
  border-radius: 8px;
  padding: 20px;
  box-shadow: 0 0 8px rgba(255, 170, 63, 0.15);
  transition: box-shadow 0.3s;
  width: 100%;
}

.news-container:hover {
  box-shadow: 0 0 12px rgba(255, 170, 63, 0.3);
}

.news-list {
  list-style: none;
  padding: 0;
  margin: 0;
  font-size: clamp(14px, 2vw, 18px);
  line-height: 1.6;
}
.ladder-section {
  flex: 1;
  min-width: 300px;
  padding: 0 20px;
}

.ladder-component {
  background: #111;
  border: 1px solid #ffaa3f;
  border-radius: 8px;
  padding: 15px;
  box-shadow: 0 0 8px rgba(255, 170, 63, 0.15);
  margin-top: 10px;
}

.ladder-tabs {
  display: flex;
  justify-content: center;
  gap: 10px;
  flex-wrap: wrap;
  margin-bottom: 20px;
}

.tab-btn {
  background: #000;
  color: #ffaa3f;
  border: 1px solid #ffaa3f;
  padding: 8px 16px;
  font-family: Arial, sans-serif;
  font-size: clamp(13px, 2vw, 16px);
  cursor: pointer;
  border-radius: 4px;
  transition: all 0.3s;
}

.tab-btn:hover,
.tab-btn.active {
  background: #ffaa3f;
  color: #000;
}

.ladder-boxes {
  display: flex;
  justify-content: center;
}

.ladder-tab-content {
  display: none;
  width: 100%;
  text-align: center;
}

.ladder-box img {
  width: 100%;
  max-width: 347px;
  height: auto;
  display: block;
  margin: 0 auto;
}

/* Universal box-sizing fix to prevent overflow issues */
*,
*::before,
*::after {
  box-sizing: border-box;
}

/* Prevent horizontal scroll */
body {
  overflow-x: hidden;
}

/* Philippines Page Custom Styling */

.section-light {
  background-color: #000;
  color: #fff;
  padding: 60px 20px;
}

.section-dark {
  background-color: #111;
  color: #fff;
  padding: 60px 20px;
}

.section-highlight {
  background-color: #ffaa3f;
  color: #000;
  padding: 60px 20px;
}

.section-heading {
  color: #ffaa3f;
  font-family: "Josefin Sans", sans-serif;
  font-size: clamp(22px, 3vw, 32px);
  margin-bottom: 20px;
  text-align: center;
}

.page-title {
  font-family: "Josefin Sans", sans-serif;
  font-size: clamp(26px, 4vw, 50px);
  margin-bottom: 20px;
  color: #ffaa3f;
}

.section-paragraph {
  font-size: 16px;
  max-width: 800px;
  margin: 0 auto 20px auto;
  line-height: 1.6;
  text-align: center;
}

.section-list {
  font-size: 16px;
  max-width: 800px;
  margin: 0 auto;
  line-height: 1.8;
  padding-left: 20px;
}

.button-dark {
  background-color: #000;
  color: #ffaa3f;
  padding: 12px 30px;
  display: inline-block;
  border-radius: 6px;
  text-transform: uppercase;
  font-weight: bold;
  transition: background 0.3s ease;
  text-decoration: none;
}

.button-dark:hover {
  background-color: #222;
  color: #fff;
}

/* Responsive two-column layout for large screens */
.flex-row {
  display: flex;
  flex-wrap: wrap;
  gap: 40px;
  justify-content: space-between;
}

.flex-col {
  flex: 1 1 45%;
  min-width: 300px;
}

.left-align {
  text-align: left;
}

.call-section {
  color: #000;
}

.call-heading {
  color: #000;
}

.call-text {
  color: #000;
}

.button-wrapper {
  margin-top: 30px;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .flex-row {
    flex-direction: column;
  }

  .flex-col {
    width: 100%;
  }
}

/* RESPONSIVE CSS */
@media screen and (max-width: 810px) {
  #section-one-inner {
    min-height: 910px;
  }
  #section-one-inner h1 {
    top: 40px;
  }
  #stats-holder {
    top: 80px;
  }
  #sec-two-content {
    justify-content: space-around;
  }
  #section-two-inner h1::before {
    top: 60px;
    left: -10px;
    background-size: 100% 100%;
  }
  #section-three-inner h1 {
    margin: 40px auto 0;
  }
  #section-three-inner h1 span {
    margin: 0 0 0 208px;
  }
}

@media screen and (max-width: 450px) {
  #section-one-inner {
    min-height: 1300px;
  }
  #section-one-inner h1 {
    top: 30px;
  }
  #stats-holder {
    top: 60px;
  }
  #sec-two-content {
    flex-direction: column;
  }
  #section-two-inner {
    padding: 50px 0;
  }
  #section-two-inner h1 {
    max-width: 100%;
    text-align: center;
    margin: 0 0 20px 0;
  }
  #section-two-inner h1::before {
    display: none;
  }
  .video-holder {
    text-align: center;
  }
  #section-three-inner {
    padding: 20px 0 0 0;
  }
  #section-three-inner h1 {
    margin: 10px auto 0;
  }
  #section-three-inner h1 span {
    margin: 0 0 0 126px;
  }
  .ladder-tabs {
    flex-direction: row;
    justify-content: center;
    gap: 10px;
    flex-wrap: wrap;
  }

  .tab-btn {
    flex: 0 0 auto;
    padding: 10px 16px;
    min-width: 80px;
  }

  .news-container {
    padding: 15px;
  }
}
