@font-face {
  font-family: "Avenir";
  src: url("../font/AvenirLight.ttf") format("truetype");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Avenir";
  src: url("../font/AvenirRegular.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Avenir";
  src: url("../font/AvenirBook.ttf") format("truetype");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Avenir";
  src: url("../font/AvenirHeavy.ttf") format("truetype");
  font-weight: 600;
  font-display: swap;
}
@font-face {
  font-family: "Avenir";
  src: url("../font/AvenirBlack.ttf") format("truetype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

:root {
  --color-primary: #BA0AE2;
  --color-secondary: #FFEF77;
  --color-dark: #121111;
  --color-medium: #343434;
  --color-light: #767676;
  --color-white: #ffffff;
  --color-gray-medium: #B9B9B9
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}
h1,
h2,
h3,
h4,
h5,
h6,
p,
ul,
ol,
dl {
  margin: 0;
  padding: 0;
}
body {
  font-size: clamp(0.875rem, 2vw, 1.375rem);
  line-height: clamp(1.545em, 1.2em + 0.5vw, 2.125em);
  font-family: "Avenir", sans-serif;
  font-weight: 400;
  background-color: var(--color-dark);
  color: var(--color-white);
}


h1 {
  font-size: clamp(2.5rem, 7vw, 6.6rem);
  line-height: clamp(1.118em, 1.2em + 1vw, 1.1667em);
  font-family: "Avenir", sans-serif;
  font-weight: 700;
}


h2 {
  font-size: clamp(2.25rem, 4vw, 3rem);
  line-height: clamp(1.45em, 1.4em + 0.5vw, 1.8125em);
  font-family: "Avenir", sans-serif;
  font-weight: 700;
}

h3 {
  font-size: clamp(1.625rem, 4vw, 2.1875rem); 
  line-height: clamp(1.45em, 1.4em + 0.5vw, 1.8125em);
  font-family: 'Avenir', sans-serif;
  font-weight: 700;
}

h4 {
  font-size: clamp(1.125rem, 2.5vw, 1.5rem); /* 18px → 24px */
  line-height: clamp(1.5em, 2.8vw, 1.6em);
  font-family: "Avenir", sans-serif;
  font-weight: 700;
}
h5 {
  font-size: clamp(0.9375rem, 2vw, 1.25rem);
  line-height: clamp(1.4em, 2.5vw, 1.5em);
  font-family: "Avenir", sans-serif;
  font-weight: 700;
}
.fs-24 {
  font-size: clamp(1.125rem, 2.5vw, 1.5rem); /* 18px → 24px */
  line-height: clamp(1.5em, 2.8vw, 1.6em);
}


.fs-20 {
  font-size: clamp(0.9375rem, 2vw, 1.25rem);
  line-height: clamp(1.4em, 2.5vw, 1.5em);
}

.fs-16 {
  font-size: clamp(0.875rem, 1.8vw, 1rem);
  line-height: clamp(1.35em, 2.2vw, 1.5em);
}

.fs-14 {
  font-size: clamp(0.75rem, 1.5vw, 0.875rem);
  line-height: clamp(1.3em, 2vw, 1.4em);
}
.f-normal {
  font-weight: 400;
}
.f-bold {
  font-weight: 700;
}
.mw-1100 {
  max-width: 1100px;
}
.mw-800 {
  max-width: 800px;
}

.mw-430 {
  max-width: 430px;
}
.container,
.container-lg,
.container-md,
.container-sm,
.container-xl,
.container-xxl {
  padding-left: 30px;
  padding-right: 30px;
}

.w-fit {
  width: fit-content;
}
.gradient-text {
  background: linear-gradient(
    90deg,
    var(--color-primary),
    var(--color-secondary)
  );
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text; /* for some browsers */
}
.text-primary {
  color: var(--color-primary) !important;
}
.text-secondary {
  color: var(--color-secondary) !important;
}
.text-gray {
  color: var(--color-light) !important;
}
.border-primary {
  border-color: var(--color-primary) !important;
  opacity: 1 !important;
}
.border-secondary {
  border-color: var(--color-secondary) !important;
  opacity: 1 !important;
} 
.border-medium{
  border-color: var(--color-medium) !important;
  opacity: 1 !important;
}

button:focus,
button:focus-visible,
a:focus,
a:focus-visible {
  outline: none !important;
  box-shadow: none !important;
}

/* buttons-css */
.primary-btn {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 12px 48px;
 background-color: var(--color-primary);
  color: var(--color-secondary);
  text-decoration: none;
  width: fit-content;
  border: none;
  transition: all 0.4s ease;
  overflow: hidden;
}

/* Hover effects */
.primary-btn:hover {
  transform: translateY(-3px);
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.4);
  background-color: var(--color-secondary);
  color: var(--color-dark);
}


/* Shine effect (sweeps once per hover) */
.primary-btn::after {
  content: "";
  position: absolute;
  top: 0;
  left: -75%;
  width: 50%;
  height: 100%;
  background: linear-gradient(
    120deg,
    transparent,
    rgba(255, 255, 255, 0.5),
    transparent
  );
  transform: skewX(-25deg);
  transition: 1s;
}

.primary-btn:hover::after {
  left: 130%;
}


/* header-css */
header {
  padding: 40px 40px 24px 40px;
}
header.fixed-top.active {
    background: var(--color-dark);
}
.navbar-brand {
  max-width: 350px;
}
.navbar-toggler:focus {
  box-shadow: none;
}
a.nav-link:hover {
    color: var(--color-primary) !important;
}
header:has(.navbar-collapse.show) {
  background: rgba(0, 0, 0, 0.8); /* example dark bg */
  backdrop-filter: blur(6px);
}
.navbar-toggler.collapsed .close-toggle {
    display: none;
}
.navbar-toggler.collapsed .open-toggle {
    display: block;
}
button.navbar-toggler .open-toggle {
    display: none;
}

/* banner-section-css */
#banner-section {
  padding: 300px 0px 250px 0;
  background-image: url("../images/banner-bg.png");
  background-size: cover;
  background-position: top center;
  background-repeat: no-repeat;
}

/* included-section-css */
#included-section {
  padding: 100px 0px 120px 0px;
  
}

.included-card-row .col-lg-4.col-md-6.col-12{
  padding: 50px 0px;
}
.included-card {
    border: 1px solid var(--color-medium);
    padding: 0 50px;
    border-width: 0px 1px 0px 0px;
}
.included-card-row .col-lg-4.col-md-6.col-12:nth-child(3n+3) .included-card {
  border-width: 0px;
}
.included-list li {
    list-style: none;
    position: relative;
    padding-left: 30px;
    margin-bottom: 15px;
}


/* premium-section-css */
#premium-bus-section {
  padding-bottom: 120px;
}
.premium-list {
  margin-left: 50px;
}
.premium-list li::marker {
  color: var(--color-primary);
}
.premium-right-img img {
  filter: drop-shadow(0px 16px 9px rgba(0,0,0,0.23));
}
.premium-right-img-bg {
    background-color: #43007c;
    width: 100%;
    height: 100%;
    top: 48px;
    left: 48px;
    z-index: -1;
}


/* price-section-css */
#price-section {
    background-image: url(../images/price-bg.png);
    padding: 100px 0px 60px;
    color: var(--color-white);
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}

.price-title span {
  background: linear-gradient(
    137deg,
    var(--color-primary) 0%,
    var(--color-secondary) 50%
  );
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.pricing-card {
  max-width: 650px;
  margin-top: 40px;
}
.pricing-card-body {
  max-width: 350px;
}

.prcing-card-title {
  font-size: clamp(46px, calc(1.5rem + 2.2vw), 74px);
  font-weight: 700;
}
.prcing-card-title span {
  font-size: clamp(15px, calc(0.9375rem + 0.9vw), 26px);
  font-weight: 300;
}

.included-list li {
    list-style: none;
    position: relative;
    padding-left: 30px;
    margin-bottom: 15px;
}

.included-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 20px;  
  height: 20px;  
  background: url("data:image/svg+xml;utf8,<svg width='22' height='23' viewBox='0 0 22 23' xmlns='http://www.w3.org/2000/svg'><path d='M10.5375 2.02346C15.2991 2.02346 19.1591 6.09993 19.1591 11.1285C19.1591 16.1571 15.2991 20.2336 10.5375 20.2336C5.77593 20.2336 1.91591 16.1571 1.91591 11.1285C1.94208 6.11143 5.78682 2.0511 10.5375 2.02346ZM10.5375 0.000116199C4.71781 0.000116199 0 4.98247 0 11.1285C0 17.2746 4.71781 22.2569 10.5375 22.2569C16.3572 22.2569 21.075 17.2746 21.075 11.1285C21.0878 8.17296 19.9818 5.33454 18.0028 3.24462C16.0239 1.1547 13.3361 -0.0134114 10.5375 0.000116199Z' fill='%23FFEF77'/><path d='M7.95079 15.3776L5.07692 12.3932C4.73428 12.0234 4.69383 11.4466 4.98113 11.0275C5.13825 10.7804 5.39489 10.6241 5.67608 10.6043C5.95727 10.5845 6.23128 10.7034 6.41806 10.9263L8.62136 13.2531L14.6565 6.87959C15.0379 6.57752 15.5715 6.61757 15.9086 6.97357C16.2457 7.32957 16.2837 7.89317 15.9976 8.29593L9.29193 15.3776C9.11957 15.576 8.87631 15.689 8.62136 15.689C8.36641 15.689 8.12315 15.576 7.95079 15.3776Z' fill='%23FFEF77'/></svg>") no-repeat center/contain;

}




/* featured-clubs-section-css */
#featured-clubs-section {
  padding: 100px 0px 70px 0px;
  background-color: var(--color-white);
  color: var(--color-dark);
}
.swiper-wrapper {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 8px;
    
}
.card__wrapper{
  min-height: 420px;
  color: var(--color-white);
  padding-bottom: 27px;
}
.swiper-card-img {
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    z-index: -1;
}
.swiper-button-next:after{
    display: none;
}
.swiper-button-next::before{
  content: "";
  display: inline-block;
  width: 31px;
  height: 28px;
  background: url("data:image/svg+xml;utf8,<svg width='17' height='28' viewBox='0 0 17 28' xmlns='http://www.w3.org/2000/svg'><path d='M11.2407 13.999L0.640686 24.5989C0.200123 24.9889 -0.0349218 25.561 0.00421513 26.148C0.043352 26.7351 0.352257 27.2709 0.840687 27.599C1.66928 28.1988 2.80951 28.1143 3.54069 27.399L15.4407 15.3989C15.8329 15.0391 16.0562 14.5312 16.0562 13.9989C16.0562 13.4667 15.8329 12.9588 15.4407 12.5989L3.54069 0.598949C2.80951 -0.116406 1.66928 -0.200868 0.840687 0.398949C0.352257 0.726985 0.0433539 1.26279 0.00421703 1.84985C-0.0349199 2.43691 0.200123 3.00898 0.640686 3.39895L11.2407 13.999Z' fill='%23000'/></svg>") no-repeat center/contain;

  position: absolute;
  right:-40px;
}
.swiper-button-prev::after {
  content: "";
  display: inline-block;
  width: 31px;
  height: 28px;
 background: url("data:image/svg+xml;utf8,<svg width='17' height='28' viewBox='0 0 17 28' xmlns='http://www.w3.org/2000/svg'><path d='M11.2407 13.999L0.640686 24.5989C0.200123 24.9889 -0.0349218 25.561 0.00421513 26.148C0.043352 26.7351 0.352257 27.2709 0.840687 27.599C1.66928 28.1988 2.80951 28.1143 3.54069 27.399L15.4407 15.3989C15.8329 15.0391 16.0562 14.5312 16.0562 13.9989C16.0562 13.4667 15.8329 12.9588 15.4407 12.5989L3.54069 0.598949C2.80951 -0.116406 1.66928 -0.200868 0.840687 0.398949C0.352257 0.726985 0.0433539 1.26279 0.00421703 1.84985C-0.0349199 2.43691 0.200123 3.00898 0.640686 3.39895L11.2407 13.999Z' fill='%23000'/></svg>") no-repeat center/contain;
 transform: rotate(180deg);
  position: absolute;
  left:-40px;
}
.lineup-card {
    filter: drop-shadow(0px 3px 3.5px rgba(0,0,0,0.16));
    background-color: var(--color-white);
}


.lineup-card-list{
  padding: 16px 40px 40px 40px;
}
.lineup-card-list ol{
  padding-left: 30px;

}
/* footer-section-css */
footer#footer-section {
  border-top: 1px solid var(--color-light);
  border-bottom: 1px solid var(--color-light);
  padding: 70px 0px;
  background-color: #000000;
}
.footer-list li {
  margin-bottom: 16px;
}
.footer-list li a {
  text-decoration: none;
  color: var(--color-silver-gray);
}
.footer-list li a:hover {
    color: var(--color-primary) !important;
}

/* copyright-section */

#copyright-section {
  padding: 20px 0px;
  background-color: #000000;
}
#copyright-section a:hover {
    color: var(--color-primary) !important;
}

/********* media-screen-css-start **********/
@media (min-width: 1400px) {
  .container {
    max-width: 1420px;
  }
  .included-card-row {
    margin: 0 -50px;
}
}
@media  (max-width:991px) 
  {
    .swiper-wrapper {
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
}
}
@media (max-width: 767px) {
  
  header {
    padding: 26px 20px;
  }
  .navbar-brand {
    max-width: 250px;
  }
  #banner-section {
    padding: 180px 0px 50px 0;
  }
.m-banner-title {
    color: var(--color-secondary) !important;
    font-size: 22px;
    text-align: center;
    
  }
  .m-text-secondary{
    color: var(--color-secondary) !important;
  }
  .yellow-stars {
    width: 15px;
}
  #included-section {
    padding: 60px 0px 60px 0px;
  }
  .included-card-row .col-lg-4.col-md-6.col-12 {
    padding: 0;
}
.included-card {
    padding: 32px;
    border-width: 0px 0px 1px 0px;
}
.included-card-row .col-lg-4.col-md-6.col-12:nth-child(3n+3) .included-card {
    border-width: 0px 0px 1px 0px;
}
 .premium-right-img {
    margin-bottom: 60px;
}
.swiper-wrapper {
    grid-template-columns: repeat(4, 1fr);
    gap: 0;
}
#premium-bus-section {
    padding-bottom: 40px;
}
.premium-list {
    margin-left: 20px;
}
#price-section {
    padding: 40px 0px 40px;
}
  #featured-clubs-section {
    padding: 50px 0px 10px 0px;
  }
.feature-card-star {
    width: 18px;
}
.feature-card-star {
    width: 18px;
}
  .footer-logo.pb-3 {
    max-width: 160px;
  }
  footer#footer-section {
    padding: 40px 0px;
  }
}
