@import url("https://fonts.googleapis.com/css2?family=Oswald:wght@200..700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap");
html,
body {
  overflow-x: hidden;
}
img {
  width: 100%;
}
ul {
  margin: 0;
  padding: 0;
}
section.inner-banner-row {
  background-color: #000;
  padding: 75px 0;
}
#header-row {
  position: fixed;
  transition: all 0.4s ease-in-out;
  background: #fff;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}
#header-row.sticky-header {
  top: 0;
  width: 100%;
  z-index: 999;
  /* \: all 0.4s linear; */
}
.navbar-nav {padding-bottom: 10px;}
.sticky-header .navbar-nav {
  margin-bottom: 0;
  padding-bottom: 10px;
}
.sticky-header .navbar-expand-sm .navbar-nav .nav-link {
  color: #000;
}

.navbar {
  padding: 0;
}
.navContainer {
  flex-direction: column;
  padding: 0 100px;
}
.navbar-expand-sm .navbar-nav .nav-link {
  color: #000;
  font-family: Oswald;
  font-size: 19px;
  font-style: normal;
  font-weight: 700;
  line-height: 18px;
  text-transform: uppercase;
  padding: 0 27px;
}
.header-sec img {
  display: block;
  width: 12%;
  margin: 0 auto;
}
.header-sec {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-bottom: 20px;
  padding-top: 7px;
}
.header-sec ul.lft-icon li {
  list-style: none;
}
.header-sec ul.lft-icon li a {
  width: 28px;
  height: 28px;
  line-height: 18px;
  border: 1px solid #000;
  border-radius: 100%;
  display: block;
  text-align: center;
  align-content: center;
}
.header-sec ul.lft-icon li a i {
  color: #000;
  font-size: 16px;
}
.header-sec ul.rit-icon {
  display: flex;
  gap: 24px;
}
.header-sec ul.lft-icon {
    display: flex;
    gap: 18px;
}
.header-sec ul.rit-icon li {
  list-style: none;
}
.header-sec ul.rit-icon li a i {
  color: #000;
  font-size: 24px;
}
section.banner-row {
  background-image: url(../images/banner.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  padding-top: 350px;
  padding-bottom: 200px;
}
.banner-sec h1 {
  color: #fff;
  font-family: Oswald;
  font-size: 82.559px;
  font-style: normal;
  font-weight: 300;
  line-height: 87px;
  text-transform: uppercase;
  text-align: center;
  margin-bottom: 60px;
}
.banner-sec h1 strong {
  -webkit-text-stroke-width: 0.34px;
  -webkit-text-stroke-color: #000;
  font-family: Oswald;
  font-weight: 700;
}
a {
  text-decoration: unset;
}
button.w-btn {
  border-radius: 30px;
  background: #fff;
  border: 0;
  padding: 15px 32px;
  color: #070707;
  font-family: Poppins;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 30px; /* 187.5% */
  text-transform: uppercase;
  transition: all 0.5s;
}
button.w-btn:hover {
  box-shadow: 0 20px 38px rgba(0, 0, 0, 0.16) !important;
  -webkit-transform: translateY(-3px);
  background-color: #000;
  color: #fff;
}
.banner-sec button.w-btn {
  display: table;
  margin: 0 auto;
}
section.video-row {
  padding: 122px 138px 113px 138px;
}
.video-sec {
  position: relative;
}
.video-sec h2 {
  color: #fff;
  font-family: Oswald;
  font-size: 58.898px;
  font-style: normal;
  font-weight: 300;
  line-height: 67.773px;
  text-transform: uppercase;
  text-align: right;
  position: absolute;
  right: 80px;
  bottom: 80px;
  margin-bottom: 0px;
}
.video-sec h2 strong {
  -webkit-text-stroke-width: 0.24px;
  -webkit-text-stroke-color: #000;
  font-family: Oswald;
  font-weight: 700;
}
.video-sec:before {
  content: "";
  /* background: linear-gradient(105deg, rgba(0, 0, 0, 0) 5.22%, #000 98.54%); */
  width: 1605px;
  height: 99.5%;
  border-radius: 20px;
  position: absolute;
  top: 0px;
  right: 0px;
}
section.webinar-row {
  padding: 0 18px;
}
.w-head {
  padding-bottom: 50px;
}
.w-head h2 {
  color: #000;
  text-align: center;
  font-family: Oswald;
  font-size: 58.973px;
  font-style: normal;
  font-weight: 600;
  line-height: 69.094px; /* 117.163% */
  text-transform: uppercase;
  margin-bottom: 20px;
}
.w-head h3 {
  color: #000;
  text-align: center;
  font-family: Oswald;
  font-size: 40.973px;
  font-style: normal;
  font-weight: 600;
  line-height: 69.094px; /* 117.163% */
  text-transform: uppercase;
  margin-bottom: 20px;
  margin-top: 110px !important;
}
.w-head p {
  color: #1e1e1e;
  text-align: center;
  font-family: Poppins;
  font-size: 21px;
  font-style: normal;
  font-weight: 300;
  line-height: 35px; /* 166.667% */
  /* width: 60%; */
  margin: 0 auto;
}
.gun-sec .main {
  background: radial-gradient(
    65.95% 81.61% at 50% 50%,
    #eaeaea 0%,
    #cecece 100%
  );
  height: 585px;
  width: 100%;
  display: flex;
  flex-direction: column;
  /* align-items: center; */
  /* justify-content: end; */
  padding-bottom: 40px;
}
section.webinar-row .col-lg-4:nth-child(2) .gun-sec .main {
  margin: 0 auto;
}
section.webinar-row .col-lg-4:nth-child(3) .gun-sec .main {
  margin: 0 auto;
  margin-right: 0;
}
.sold-out {
  color: red;
  font-weight: bold;
  font-size: 16px;
}
.gun-sec .main .inner-main {
  display: flex;
  flex-direction: column;
  gap: 15px;
  align-items: center;
  padding: 30px 0px 0px 0px;
  opacity: 0;
}
.gun-sec .main .inner-main h3 {
  color: #000;
  font-family: Poppins;
  font-size: 22px;
  font-style: normal;
  font-weight: 700;
  line-height: 32px; /* 95.455% */
  text-transform: capitalize;
  margin-bottom: 0px;
}
.gun-sec .main .inner-main a#btn {
  color: #000;
  font-family: Poppins;
  font-size: 18px;
  font-style: normal;
  font-weight: 700;
  line-height: 20px; /* 100% */
  text-decoration-line: underline;
  text-underline-position: from-font;
  text-transform: capitalize;
}
section.webinar-row .col-lg-4:nth-child(3) .gun-sec .main img {
  /* position: relative; */
  display: block;
  margin: 0 auto;
  /* width: 85%; */
  left: 0;
  right: 0;
  /* top: -100px; */
}
.gun-sec .main img {
  /* transform: rotate(-90deg); */
}
.gun-sec {
  position: relative;
}
.gun-sec:before {
  content: "";
  background: linear-gradient(
    180deg,
    rgba(255, 193, 117, 0) 30.78%,
    #ff944d 118.46%
  );
  position: absolute;
  bottom: 0;
  right: 0;
  left: 0;
  width: 100%;
  height: 664px;
  opacity: 0;
  pointer-events: none;
  z-index: 11;
  transition: all 0.4s linear;
}
.gun-sec:hover:before {
  opacity: 1;
}
section.webinar-row .col-lg-4:nth-child(2) .gun-sec:before {
  margin: 0 auto;
}
section.webinar-row .col-lg-4:nth-child(3) .gun-sec:before {
  margin: 0 auto;
  margin-right: 0;
}
.gun-sec:hover .main .inner-main {
  opacity: 1;
  z-index: 11;
}
section.service-row {
  padding: 160px 150px;
}
.ser {
  border-radius: 20px;
  background: #1e1e1e;
  padding: 40px;
  transition: all 0.5s linear;
  margin-bottom: 40px;
}
.ser:hover {
  background: linear-gradient(180deg, rgba(255, 193, 117, 0) 0%, #ff944d 0%);
}
.ser:hover * {
  color: #000 !important;
}
section.service-row .col-lg-4:nth-child(2) .ser {
  margin: 0 auto;
  margin-bottom: 40px;
}
section.service-row .col-lg-4:nth-child(3) .ser {
  margin: 0 auto;
  margin-right: 0;
}
.ser h3 {
  color: #fff;
  font-family: Oswald;
  font-size: 25px;
  font-style: normal;
  font-weight: 400;
  line-height: 25px; /* 100% */
  text-transform: uppercase;
  padding-top: 40px;
  margin-bottom: 28px;
  display: block;
}
.ser p {
  color: #fff;
  font-family: Poppins;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 32px; /* 166.667% */
  text-align: left;
}
section.service-row .col-lg-4:nth-child(4) .ser ul {
  margin-left: 20px;
}
section.service-row .col-lg-4:nth-child(6) .ser ul li {
  list-style: none;
}
.ser ul li {
  color: #fff;
  font-family: Poppins;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 32px; /* 166.667% */
  text-align: left;
  margin-bottom: 5px;
}
.ser ul li:last-child {
  margin-bottom: 0px;
}
section.service-row button.w-btn {
  border: 1px solid #202020;
  display: table;
  margin: 0 auto;
  padding: 15px 56px;
}
/* Calendar Styles */
.calendar {
  margin: auto;
  border-collapse: collapse;
  text-align: center;
  width: 100%;
}
.calendar th {
  padding: 10px;
  font-weight: 600;
  color: #333;
}
.calendar td {
  height: 100px; /* fixed height for all cells */
  width: 60px;   /* fixed width for all cells */
  vertical-align: top; /* align content to top */
  position: relative;
  padding: 5px;
}

.calendar td > div {
  display: flex;
  flex-direction: column;
  justify-content: flex-start; /* keeps date at top */
  overflow: hidden;            /* hide overflow text */
  text-overflow: ellipsis;     /* optional: add ... for long text */
}
.calendar .today {
  font-weight: bold;
  color: #000;
}
.calendar th,
.calendar td {
  border: 1px solid #f0f0f0;
}
.calendar-sec .head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 20px;
}
.calendar-sec .head button {
  padding: 5px 10px;
  cursor: pointer;
}
.calendar-sec .head h2 {
  margin: 0;
}
section.membership-row {
  padding: 120px 250px 80px;
}
.member-sec {
  border: 1.654px solid #c9c9c9;
  padding: 40px 30px;
  width: 98%;
  transition: all 0.5s linear;
  border-radius: 20px;
  background: rgba(255, 255, 255, 0.3);
  box-shadow: 12px 12px 6px 0px rgb(136 136 136);
}
.member-sec h3 {
  color: #000;
  font-family: Oswald;
  font-size: 40px;
  font-style: normal;
  font-weight: 600;
  line-height: 50px;
  text-transform: uppercase;
}
.member-sec p {
  color: #1e1e1e;
  text-align: left;
  font-family: Poppins;
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 32px;
  padding-bottom: 10px;
  margin: 0;
}
.member-sec ul {
  margin: 0;
  margin-left: 20px;
}
.member-sec li {
  list-style: square;
  font-family: Poppins;
  font-size: 18px;
  color: #000;
  line-height: 28px;
  border-bottom: 2px solid #000;
  width: 97%;
  padding: 10px 0;
  font-weight: 400;
}
.member-sec ul li:last-child {
  border: 0;
}
.member-sec ul li::marker {
  color: #000;
}
section.membership-row .col-lg-6:first-child .member-sec p {
  padding-bottom: 42px;
}
.member-sec:hover {
  background: linear-gradient(
    180deg,
    rgba(255, 193, 117, 0) 30.78%,
    #ff944d 118.46%
  );
}
section.membership-row button.w-btn {
  border: 1px solid #202020;
  display: table;
  margin: 0 auto;
  padding: 15px 56px;
  margin-top: 40px;
}
footer.footer-row {
  background-color: #323232;
  padding: 90px 136px 90px 150px;
}
.footer-links h3 {
  color: #fff;
  font-family: Oswald;
  font-size: 20px;
  font-style: normal;
  font-weight: 700;
  line-height: 35px; /* 175% */
  text-transform: uppercase;
  margin-bottom: 20px;
}
.footer-links ul li {
  list-style: none;
  margin-bottom: 24px;
}
.footer-links ul li:last-child {
  margin-bottom: 0px;
}
.footer-links ul li a {
  color: #fff;
  font-family: Oswald;
  font-size: 19px;
  font-style: normal;
  font-weight: 300;
  line-height: 18px; /* 94.737% */
  text-transform: uppercase;
}
.footer-cont img {
  display: table;
  margin: 0 auto;
  margin-bottom: 30px;
  width: 24%;
}
.footer-cont p {
  color: #fff;
  text-align: center;
  font-family: Poppins;
  font-size: 20px;
  font-style: normal;
  font-weight: 300;
  line-height: 32px;
  width: 70%;
  margin: 0 auto;
}
.footer-cont p strong {
  font-family: Poppins;
  font-weight: 600;
}
.copyright-row {
  padding: 40px 136px 36px 150px;
}
.copyright-sec p {
  color: #000;
  font-family: Poppins;
  font-size: 22px;
  font-style: normal;
  font-weight: 400;
  line-height: 22px; /* 122.222% */
  letter-spacing: 3px;
  margin: 0;
}
.copyright-row .col-lg-6:last-child p {
  text-align: right;
}
section.ser-inner-row {
  padding: 80px 250px;
}
.ser-img img {
  display: block;
  width: 90%;
}
.ser-content h2 {
  color: #000;
  font-family: Oswald;
  font-size: 45px;
  font-style: normal;
  font-weight: 600;
  line-height: 60px;
  text-transform: uppercase;
  margin-bottom: 30px;
}
.ser-content ul {
  margin: 0;
  margin-left: 20px;
}
.ser-content ul li {
  color: #1e1e1e;
  font-family: Poppins;
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 30px;
  margin-bottom: 20px;
}
.ser-content ul li strong {
  font-family: Poppins;
}
.ser-content h3 {
  color: #000;
  font-family: Oswald;
  font-size: 25px;
  font-style: normal;
  font-weight: 400;
  line-height: 35px;
  text-transform: uppercase;
  margin-bottom: 10px;
}
.ser-content p {
  color: #1e1e1e;
  font-family: Poppins;
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 32px;
  padding-bottom: 20px;
  margin-bottom: 0px;
}
.ser-content p strong {
  font-family: Poppins;
}
section.ser-inner-row .row:nth-child(3) .ser-img img,
section.ser-inner-row .row:nth-child(5) .ser-img img,
section.ser-inner-row .row:nth-child(7) .ser-img img,
section.ser-inner-row .row:nth-child(9) .ser-img img {
  display: table;
  margin: 0 auto;
  margin-right: 0;
}
section.ser-inner-row .row:nth-child(4) .ser-content ul li {
  list-style: none;
}
section.ser-inner-row .row:nth-child(4) .ser-content ul {
  margin-left: 0px;
}
section.ser-inner-row .row:nth-child(5) .ser-content ul li {
  list-style: none;
}
section.ser-inner-row .row:nth-child(5) .ser-content ul {
  margin-left: 0px;
}
section.ser-inner-row button.w-btn {
  border: 1px solid #202020;
  box-shadow: 0 20px 38px rgba(0, 0, 0, 0.16) !important;
}
section.ser-inner-row .row {
  padding-bottom: 60px;
}
section.ser-inner-row .row:nth-child(9) {
  padding-bottom: 0px;
}
section.member-detail-row {
  padding: 60px 250px;
}
.member-content h2 {
  color: #000;
  font-family: Oswald;
  font-size: 58.973px;
  font-style: normal;
  font-weight: 600;
  line-height: 69.094px;
  text-transform: uppercase;
  margin-bottom: 20px;
}
.member-content p {
  color: #1e1e1e;
  font-family: Poppins;
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 32px;
}
.member-content p strong {
  font-family: Poppins;
}
.member-content ul {
  margin: 0 0 30px 30px;
}
.member-content ul li {
  color: #1e1e1e;
  font-family: Poppins;
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 32px;
  padding-bottom: 15px;
}
.member-content ul li strong {
  font-family: Poppins;
}
.member-content ul li:last-child {
  padding-bottom: 0px;
}
section.about-row {
  padding: 80px 150px;
}
.abt-content h2 {
  color: #000;
  text-align: center;
  font-family: Oswald;
  font-size: 58.973px;
  font-style: normal;
  font-weight: 600;
  line-height: 69.094px; /* 117.163% */
  text-transform: uppercase;
  margin-bottom: 20px;
}
.abt-content p {
  color: #1e1e1e;
  text-align: center;
  font-family: Poppins;
  font-size: 16px;
  font-style: normal;
  font-weight: 300;
  line-height: 30px; /* 166.667% */
}
.abt-img img {
  width: 60%;
}
section.about-row .col-lg-3:last-child .abt-img img {
  display: table;
  margin: 0 auto;
  margin-right: 0;
}
section.mission-row {
  padding: 0 250px 80px;
}
.mission-sec {
  padding: 30px 90px 40px 60px;
  border: 4px solid #323232;
  background: radial-gradient(
    65.95% 81.61% at 50% 50%,
    #eaeaea 0%,
    #cecece 100%
  );
  box-shadow: 20.9px 20.9px 6.316px 0px rgb(136 136 136);
}
.mission-sec h2 {
  color: #000;
  text-align: center;
  font-family: Oswald;
  font-size: 58.973px;
  font-style: normal;
  font-weight: 600;
  line-height: 69.094px;
  text-transform: uppercase;
  margin-bottom: 25px;
}
.mission-sec p {
  color: #1e1e1e;
  text-align: center;
  font-family: Poppins;
  font-size: 18px;
  font-style: normal;
  font-weight: 300;
  line-height: 36px; /* 166.667% */
}
section.contact-row {
  padding: 80px 250px;
}
.cont-content h2 {
  color: #1e1e1e;
  font-family: Oswald;
  font-size: 45px;
  font-style: normal;
  font-weight: 700;
  line-height: 57px; /* 126.667% */
  letter-spacing: -1.8px;
  text-transform: capitalize;
  margin-bottom: 40px;
}
.cont-content ul {
  margin-left: 20px;
}
.cont-content ul li {
  color: #1e1e1e;
  font-family: Poppins;
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 18px; /* 90% */
  text-transform: capitalize;
  margin-bottom: 40px;
}
.cont-content ul li a {
  color: #1e1e1e;
  font-family: Poppins;
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 18px; /* 90% */
  text-transform: capitalize;
}
.cont-content ul li:nth-child(2) a {
  text-transform: lowercase;
}
.cont-content {
  position: relative;
}
.cont-content:after {
  content: "";
  opacity: 0.3;
  background: #000;
  width: 1px;
  height: 488px;
  position: absolute;
  right: 0;
  top: 0;
}
.cont-form {
  padding-left: 110px;
}
.cont-form form input,
.cont-form form textarea {
  background: #f9f9f9;
  backdrop-filter: blur(4.25px);
  height: 70px;
  border: 0;
  border-radius: 45px;
  padding-left: 40px;
  color: #888;
  font-family: Poppins;
}
.cont-form form input::placeholder,
.cont-form form textarea::placeholder {
  color: #888;
  font-family: Poppins;
  font-size: 16px;
  font-style: normal;
  font-weight: 500;
  line-height: 18px; /* 112.5% */
  opacity: 1;
}
.cont-form form textarea {
  height: 158px;
  padding-top: 25px;
}
.cont-form .form-group {
  padding: 0px 0 15px;
}
.cont-form form button {
  color: #fff;
  text-align: center;
  font-family: Poppins;
  font-size: 18px;
  font-style: normal;
  font-weight: 600;
  line-height: normal;
  text-transform: capitalize;
  border-radius: 30px;
  background: #00233d;
  display: block;
  width: 100%;
  height: 60px;
  border: 0;
}
section.account-row {
  padding: 80px 0;
}
.account-tabs ul#pills-tab {
  margin-bottom: 40px;
}
.account-tabs ul#pills-tab .nav-link {
  color: #000;
  font-family: Poppins;
  font-size: 20px;
  font-style: normal;
  font-weight: 500;
  line-height: 30px;
  text-transform: uppercase;
  padding: 0px 0px;
  position: relative;
  border-radius: 0;
}
.account-tabs ul#pills-tab .nav-link.active,
.account-tabs ul#pills-tab .nav-link:hover {
  background: transparent;
  color: #3452ff;
  border-bottom: 1px solid #3452ff;
}
.account-tabs ul#pills-tab .nav-item:first-child {
  padding-right: 80px;
  position: relative;
}
.account-tabs ul#pills-tab .nav-item:first-child:after {
  content: "";
  background-color: #00000054;
  height: 30px;
  width: 3px;
  position: absolute;
  right: 40px;
  top: 0;
}
.register-form,
.login-form {
  max-width: 600px;
  margin: 0 auto;
  background: #fff;
  padding: 30px 25px;
  border-radius: 10px;
  box-shadow: 0 0 15px rgba(0, 0, 0, 0.1);
}
.register-form form label,
.login-form form label {
  color: #000;
  font-family: Poppins;
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  margin: auto;
  line-height: 1.5;
  padding-bottom: 10px;
  text-transform: capitalize;
  display: block;
}
.register-form label span,
.login-form form span {
  color: #a00;
}
.login-form label.rem {
  display: inline-block;
  padding-bottom: 0px;
}
.register-form p.info-text {
  color: #000;
  font-family: Poppins;
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 1.5;
  padding-bottom: 14px;
  margin: 0;
}
.register-form form input[type="text"],
.register-form form input[type="email"],
.register-form form input[type="password"],
.login-form input[type="text"],
.login-form input[type="email"],
.login-form input[type="password"] {
  width: 100%;
  padding: 10px;
  margin-bottom: 18px;
  border: 1px solid #000;
  border-radius: 6px;
  font-size: 15px;
}
.register-form form button,
.login-form form button {
  width: 100%;
  background-color: #3452ff;
  color: white;
  font-family: Poppins;
  font-size: 18px;
  margin-top: 15px;
  border: none;
  border-radius: 6px;
  cursor: pointer;
  transition: all 0.3s ease;
  height: 44px;
}
.register-form form button:hover,
.login-form form button:hover {
  box-shadow: 0 20px 38px rgba(0, 0, 0, 0.16) !important;
  -webkit-transform: translateY(-3px);
}
.login-form .forgot-pass a {
  text-align: center;
  display: block;
  font-family: Poppins;
  font-size: 15px;
  line-height: 15px;
  padding-top: 15px;
}
section.print-row {
  padding: 60px 250px;
}

.webinar-section {
  background-color: #ffffff;
  padding: 90px 0;
}

.webinar-card {
  background-color: #fff;
  border-radius: 16px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
  overflow: hidden;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  display: flex;
  flex-direction: column;
  height: 100%;
}

.webinar-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.12);
}

.webinar-img-wrapper {
  position: relative;
  display: block;
}

.webinar-img-wrapper img {
  width: 100%;
  height: 300px;
  object-fit: contain;
  background: #fff;
  padding: 8px;
  border: 1px solid #eee;
  transition: opacity 0.3s ease;
}

.webinar-img-wrapper .hover-img {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;  /* hidden by default */
}

.webinar-img-wrapper:hover .main-img {
  opacity: 0;  /* hide main on hover */
}

.webinar-img-wrapper:hover .hover-img {
  opacity: 1;  /* show hover on hover */
}


.webinar-card-body {
  padding: 20px;
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.webinar-title {
  font-size: 14px;
  font-weight: 600;
  margin-bottom: 8px;
  color: #f06000;
  text-align: center;
}

.webinar-desc {
  font-size: 0.95rem;
  color: #666;
  line-height: 1.5;
  flex-grow: 1;
  margin-bottom: 12px;
}

.webinar-info {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.webinar-info.vertical-info {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  display: flex;
  gap: 5px;
}

.webinar-price,
.webinar-seats {
  font-size: 0.9rem;
  font-weight: 500;
  padding: 6px 10px;
  border-radius: 8px;
}

.webinar-price {
  background-color: #e8f8ec;
  color: #2e7d32;
  text-align: center;
}

.webinar-seats {
  background-color: #e7f0fe;
  color: #1e5bc6;
}

a.btn.btn-primary.join-btn {
  padding: 12px 20px 10px 15px;
}

.fc-daygrid-event-dot {
  display: none !important;
}

.calendar-event-text {
  font-size: 12px; /* smaller font to fit */
  color: #f06000;
  margin-top: 4px;
  line-height: 1.2;
  font-weight: 600;
  font-family: "Poppins";
  overflow: hidden;
  text-overflow: ellipsis;
}

/* MY-ACCOUNT */

.tg {
  --bg-primary: #000000;
  --text-primary: #000000;
}

.tg-account .account-banner {
  background: var(--bg-primary);
  width: 100%;
  float: left;
  padding: 100px 0 0;
}

.tg-account .account-banner .inner-banner .detail * {
  color: #fff;
}

.tg-account .account-banner .inner-banner .profile {
  text-align: center;
}

.tg-account .account-banner .inner-banner .profile span.image img {
  width: 130px;
  border-radius: 50%;
  box-shadow: 0px 0px 15px -10px #000;
}

.tg-account .account-banner .inner-banner .detail h3.user-name {
  font-size: 20px;
  margin-top: 20px;
}

.tg-account .account-banner .inner-banner .nav-area {
  width: 100%;
  float: left;
  margin-top: 45px;
}

.tg-account .account-banner .inner-banner .nav-area ul li a {
  background: rgba(255, 255, 255, 0.4);
  color: #fff;
  font-weight: 500;
  border-radius: 0px;
  font-size: 16px;
  border: none;
  padding: 10px 28px;
  min-width: 120px;
  display: block;
  transition: 0.4s;
  text-align: center;
}

.tg-account .account-banner .inner-banner .nav-area ul li {
  margin-right: 7px;
}

.tg-account .account-banner .inner-banner .nav-area ul li a.active,
.tg-account .account-banner .inner-banner .nav-area ul li a:hover {
  color: var(--text-primary);
  background: #fff;
}

.tg-tabs-content-wrapp {
  width: 100%;
  float: left;
  padding: 30px 0;
  margin-bottom: 80px;
}

div#my-orders-table_length {
  width: fit-content;
  float: left;
}

div#my-orders-table_filter {
  width: fit-content;
  float: right;
}

div#my-orders-table_length select,
div#my-orders-table_filter input {
  border: 1px solid #207ba1;
  padding: 5px 15px;
}

div#my-orders-table_length,
div#my-orders-table_filter {
  margin-bottom: 22px;
}
table#my-orders-table {
  color: white;
}

.tg-tabs-content-wrapp form.tg-form {
  width: 100%;
  float: left;
  color: #fff;
  padding: 30px 30px 60px;
  border: 1px solid #eaeaea;
}

.tg-tabs-content-wrapp form.tg-form button {
  background: var(--bg-primary);
  border: none;
  padding: 10px 32px;
  cursor: pointer;
  margin: 13px 0 0;
}
.tg-tabs-content-wrapp form.tg-form button:hover {
  background: #fff;
  border: 2px solid black;
  padding: 10px 32px;
  cursor: pointer;
  margin: 13px 0 0;
  color: #000;
}

.tg-tabs-content-wrapp .my-account-dashboard .card img {
  max-width: 80px;
}

.tg-tabs-content-wrapp .my-account-dashboard .card {
  text-align: center;
}

.tg-tabs-content-wrapp .my-account-dashboard .card h2 {
  font-size: 20px;
  margin-top: 14px;
}

.tg-tabs-content-wrapp .my-account-dashboard .card p {
  font-size: 15px;
}

div#my-orders-table_info {
  float: left;
}

div#my-orders-table_paginate {
  float: right;
}

.page-item.active .page-link {
  background-color: lightgrey !important;
  border: 1px solid black;
}

.page-link {
  color: black !important;
}

div#my-orders-table_paginate a {
  background: #e6e6e6;
  margin: 0 2px;
  padding: 3px 11px;
  display: inline-block;
  cursor: pointer;
  text-decoration: none;
  color: #000;
}

div#my-orders-table_paginate {
  margin-top: 8px;
}

div#my-orders-table_paginate span a.current {
  color: #fff !important;
  background: var(--primary);
}

.tg-tabs-content-wrapp .my-account-dashboard .card {
  cursor: pointer;
}

.tg-tabs-content-wrapp .my-account-dashboard .card:hover,
.tg-tabs-content-wrapp .my-account-dashboard .card.active {
  background: var(--text-primary);
}

.tg-tabs-content-wrapp .my-account-dashboard .card:hover *,
.tg-tabs-content-wrapp .my-account-dashboard .card.active * {
  color: #fff;
}

.tg-tabs-content-wrapp .my-account-dashboard .card {
  transition: 0.4s;
  border-radius: 0px;
  box-shadow: 0px 2px 7px -5px;
}

table#my-orders-table a.view-order {
  background: var(--text-primary);
  cursor: pointer;
  text-decoration: none;
  color: #fff;
  padding: 8px 12px;
  border-radius: 10px;
  border: 1px solid #fff;
  /* margin-top: 5px !important; */
  line-height: 38px;
}
a.w-btn {
  border-radius: 30px;
  background: #fff;
  border: 0;
  padding: 15px 32px;
  color: #070707;
  font-family: Poppins;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 30px;
  text-transform: uppercase;
  transition: all 0.5s;
}
a.w-btn:hover {
  background: #000;
  color: white;
  border: 1px solid white;
}

@media (min-width: 768px) {
  table#my-orders-table td.action,
  table#my-orders-table th.action {
    text-align: center;
  }
}

@media (max-width: 768px) {
  .tg-account .account-banner .inner-banner .nav-area ul li a {
    min-width: auto !important;
    padding: 8px 15px;
  }
}

@media (max-width: 600px) {
  .tg-account .account-banner .inner-banner .nav-area ul li a span {
    display: none;
  }

  .tg-account .account-banner .inner-banner .nav-area ul li a {
    min-width: auto;
    padding: 8px 20px;
  }

  .tg-account .account-banner .inner-banner .nav-area ul {
    text-align: center;
    margin: 0 auto;
    width: fit-content;
  }

  .tg-account .detail {
    text-align: center;
  }

  div#my-orders-table_length select,
  div#my-orders-table_filter input {
    max-width: 120px;
    font-size: 14px;
  }

  div#my-orders-table_length label,
  div#my-orders-table_filter label {
    font-size: 0px;
  }
}
/*  Invoice  */
.invoice-container {
  background: #fff;
  padding: 30px;
  border-radius: 8px;
  max-width: 900px;
  margin: auto;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
  font-family: Arial, sans-serif;
}

.invoice-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 3px solid #f4f4f4;
  padding-bottom: 15px;
  margin-bottom: 20px;
}

.invoice-header img {
  max-height: 80px;
}

.invoice-details {
  margin-bottom: 20px;
}

.invoice-details h3 {
  margin-bottom: 10px;
  color: #333;
}

.invoice-table {
  width: 100%;
  border-collapse: collapse;
}

.invoice-table th {
  background: #f8f8f8;
  text-align: left;
  padding: 10px;
  border-bottom: 2px solid #ddd;
}

.invoice-table td {
  padding: 10px;
  border-bottom: 1px solid #eee;
}

.invoice-table tbody tr:nth-child(even) {
  background: #fafafa;
}

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

.total-amount {
  font-size: 1.1em;
  color: #1a53ff;
  font-weight: bold;
}

.status-badge {
  padding: 4px 10px;
  border-radius: 4px;
  font-size: 0.85em;
  font-weight: bold;
  color: #fff;
}

.status-badge.paid {
  background: #28a745;
}

.btn-print {
  display: inline-block;
  margin-top: 20px;
  background: #1a53ff;
  color: #fff;
  padding: 8px 16px;
  border-radius: 4px;
  text-decoration: none;
}

.btn-print:hover {
  background: #fff;
  color: #0f3fcc;
  border: 1px solid #0f3fcc;
}



@media print {
  /* Hide header/footer/navigation specifically (be more selective than hiding entire body) */
  header,
  footer,
  nav,
  .site-footer,
  .no-print,
  .btn,
  .back-button,
  .copyright-row,
  .modal,
  .toast {
    display: none !important;
  }

  /* Ensure invoice section is full width and no margin */
  #invoiceSection {
    position: relative !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #fff !important;
    box-shadow: none !important;
  }

  table,
  thead,
  tbody,
  tfoot,
  tr,
  td,
  th {
    page-break-inside: avoid !important;
  }
  thead {
    display: table-header-group;
  }
  tfoot {
    display: table-footer-group;
  }

  html,
  body {
    height: auto !important;
    overflow: visible !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #222 !important;
    background: #fff !important;
  }

  @page {
    size: auto;
    margin: 10mm;
  }

  /* Hide any elements with the helper class */
  .no-print {
    display: none !important;
  }
}


/*SINGLE WEBINAR */
.single-webinar-section {
    background-color: #fff;
    padding: 60px 0;
}
ul.list-unstyled li::before {
    content: ".";
    color: #000000;
    display: inline-block;
    width: 0.7em;
    margin-left: -1em;
    font-size: 40px;
}

.webinar-title-single {
    font-size: 1.6rem;
    font-weight: 700;
    color: #221815;
}

.webinar-info {
    display: flex;
    gap: 20px;
    font-size: 1rem;
    font-weight: 500;
    margin-top: 10px;
}

.webinar-price {
    background-color: #e8f8ec;
    color: #2e7d32;
    padding: 6px 12px;
    border-radius: 8px;
    font-size: 16px;
}

.webinar-seats {
    background-color: #e7f0fe;
    color: #1e5bc6;
    padding: 6px 12px;
    border-radius: 8px;
    margin-right: 70px;
}

.webinar-seats1 {
    background-color: #e7f0fe;
    color: #1e5bc6;
    padding: 6px 12px;
    border-radius: 8px;
    margin-top: 13px;
}

/* Seat layout */
.seat-grid {
    display: grid;
    grid-template-columns: repeat(8, 1fr);
    gap: 10px;
    margin-top: 20px;
}

.seat {
    width: 38px;
    height: 38px;
    background-image: url(../images/seat-available.png);
    background-size: cover;
    background-repeat: no-repeat;
    position: relative;
    font-size: 10px;
    color: #000;
    text-align: center;
    line-height: 26px;
    font-weight: bold;
    cursor: pointer;
    transition: 0.2s;
    border: none;
}

.seat.selected {
    background-image: url('../images/seat-green.png');
    color: #fff;
}

.seat.booked {
    background-image: url('../images/seat-booked.png');
    color: #fff;
    pointer-events: none;
}


.seat:hover {
    border-color: #28a745;
}

/* Legend styles */
.seat-legend {
    margin-top: 20px;
    display: flex;
    justify-content: center;
    /* ÃƒÆ’Ã†â€™Ãƒâ€ Ã¢â‚¬â„¢ÃƒÆ’Ã¢â‚¬Â ÃƒÂ¢Ã¢â€šÂ¬Ã¢â€žÂ¢ÃƒÆ’Ã†â€™ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â‚¬Å¾Ã‚Â¢ÃƒÆ’Ã†â€™Ãƒâ€ Ã¢â‚¬â„¢ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬Ãƒâ€¦Ã‚Â¡ÃƒÆ’Ã†â€™ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡ÃƒÆ’Ã¢â‚¬Å¡Ãƒâ€šÃ‚Â°ÃƒÆ’Ã†â€™Ãƒâ€ Ã¢â‚¬â„¢ÃƒÆ’Ã¢â‚¬Â ÃƒÂ¢Ã¢â€šÂ¬Ã¢â€žÂ¢ÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â¢ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡Ãƒâ€šÃ‚Â¬ÃƒÆ’Ã¢â‚¬Å¡Ãƒâ€šÃ‚Â¦ÃƒÆ’Ã†â€™Ãƒâ€ Ã¢â‚¬â„¢ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬Ãƒâ€¦Ã‚Â¡ÃƒÆ’Ã†â€™ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡ÃƒÆ’Ã¢â‚¬Å¡Ãƒâ€šÃ‚Â¸ÃƒÆ’Ã†â€™Ãƒâ€ Ã¢â‚¬â„¢ÃƒÆ’Ã¢â‚¬Â ÃƒÂ¢Ã¢â€šÂ¬Ã¢â€žÂ¢ÃƒÆ’Ã†â€™ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡ÃƒÆ’Ã¢â‚¬Å¡Ãƒâ€šÃ‚Â¢ÃƒÆ’Ã†â€™Ãƒâ€ Ã¢â‚¬â„¢ÃƒÆ’Ã¢â‚¬Å¡Ãƒâ€šÃ‚Â¢ÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â¢ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡Ãƒâ€šÃ‚Â¬ÃƒÆ’Ã¢â‚¬Â¦Ãƒâ€šÃ‚Â¡ÃƒÆ’Ã†â€™ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡ÃƒÆ’Ã¢â‚¬Å¡Ãƒâ€šÃ‚Â¬ÃƒÆ’Ã†â€™Ãƒâ€ Ã¢â‚¬â„¢ÃƒÆ’Ã¢â‚¬Å¡Ãƒâ€šÃ‚Â¢ÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â¢ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡Ãƒâ€šÃ‚Â¬ÃƒÆ’Ã¢â‚¬Â¦Ãƒâ€šÃ‚Â¾ÃƒÆ’Ã†â€™ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡ÃƒÆ’Ã¢â‚¬Å¡Ãƒâ€šÃ‚Â¢ÃƒÆ’Ã†â€™Ãƒâ€ Ã¢â‚¬â„¢ÃƒÆ’Ã¢â‚¬Â ÃƒÂ¢Ã¢â€šÂ¬Ã¢â€žÂ¢ÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â¢ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡Ãƒâ€šÃ‚Â¬ÃƒÆ’Ã¢â‚¬Â¦Ãƒâ€šÃ‚Â¡ÃƒÆ’Ã†â€™Ãƒâ€ Ã¢â‚¬â„¢ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬Ãƒâ€¦Ã‚Â¡ÃƒÆ’Ã†â€™ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡ÃƒÆ’Ã¢â‚¬Å¡Ãƒâ€šÃ‚Â¡ This centers the items */
    gap: 30px;
    text-align: center;
    font-size: 20px;
}


.seat-legend .legend-item {
    display: flex;
    align-items: center;
    gap: 8px;
}

.seat-legend .legend-box {
    width: 25px;
    height: 25px;
    border-radius: 4px;
    border: 1px solid #ccc;
}

.box-available {
    background-color: white;
}

.box-booked {
    background-color: #e70e23;
}

.box-selected {
    background-color: #28a745;
}

.random-controls {
    display: flex;
    gap: 10px;
    margin-top: 20px;
}

.seat-box-container {
    border: 2px solid #e0e0e0;
    background-color: #f9f9f9;
    border-radius: 10px;
    margin-top: 30px;
    padding: 20px;
    width: 85%;
}

.webinar-img {
    transition: transform 0.4s ease-in-out, box-shadow 0.4s ease-in-out;
    will-change: transform;
}

.webinar-img:hover {
    transform: scale(1.06) rotateZ(1deg) translateY(-5px);
    box-shadow: 0 18px 35px rgba(0, 0, 0, 0.2);
    cursor: pointer;
}

button#generateBtn {
    font-size: 19px;
    border-radius: 15px;
}

.seat.paid {
    background-image: url('../images/seat-booked.png');
    color: #fff;
    pointer-events: none;
}

/* Tab styling (centered with underline on active) */
.nav-tabs {
    border-bottom: none !important;
}

.nav-tabs .nav-link {
    border: none;
    border-bottom: 2px solid transparent;
    color: #000;
    background: none;
    font-size: 20px;
    font-weight: 600;
    padding: 10px 25px;
    margin: 0 10px;
}

.nav-tabs .nav-link.active {
    border-bottom: 2px solid #000;
    color: #000;
    font-weight: 700;
}

/* Description list bullet style */
.desc-list li {
    position: relative;
    padding-left: 18px;
    margin-bottom: 10px;
    color: #1E1E1E;
    font-family: Poppins;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 28px;
    text-transform: capitalize;
}

.desc-list li::before {
    content: "ÃƒÆ’Ã†â€™Ãƒâ€ Ã¢â‚¬â„¢ÃƒÆ’Ã¢â‚¬Â ÃƒÂ¢Ã¢â€šÂ¬Ã¢â€žÂ¢ÃƒÆ’Ã†â€™ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â‚¬Å¾Ã‚Â¢ÃƒÆ’Ã†â€™Ãƒâ€ Ã¢â‚¬â„¢ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬Ãƒâ€¦Ã‚Â¡ÃƒÆ’Ã†â€™ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡ÃƒÆ’Ã¢â‚¬Å¡Ãƒâ€šÃ‚Â¢ÃƒÆ’Ã†â€™Ãƒâ€ Ã¢â‚¬â„¢ÃƒÆ’Ã¢â‚¬Â ÃƒÂ¢Ã¢â€šÂ¬Ã¢â€žÂ¢ÃƒÆ’Ã†â€™ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡ÃƒÆ’Ã¢â‚¬Å¡Ãƒâ€šÃ‚Â¢ÃƒÆ’Ã†â€™Ãƒâ€ Ã¢â‚¬â„¢ÃƒÆ’Ã¢â‚¬Å¡Ãƒâ€šÃ‚Â¢ÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â¢ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬Ãƒâ€¦Ã‚Â¡ÃƒÆ’Ã¢â‚¬Å¡Ãƒâ€šÃ‚Â¬ÃƒÆ’Ã†â€™ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â¦ÃƒÆ’Ã¢â‚¬Å¡Ãƒâ€šÃ‚Â¡ÃƒÆ’Ã†â€™Ãƒâ€ Ã¢â‚¬â„¢ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬Ãƒâ€¦Ã‚Â¡ÃƒÆ’Ã†â€™ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡ÃƒÆ’Ã¢â‚¬Å¡Ãƒâ€šÃ‚Â¬ÃƒÆ’Ã†â€™Ãƒâ€ Ã¢â‚¬â„¢ÃƒÆ’Ã¢â‚¬Â ÃƒÂ¢Ã¢â€šÂ¬Ã¢â€žÂ¢ÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â¢ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡Ãƒâ€šÃ‚Â¬ÃƒÆ’Ã¢â‚¬Â¦Ãƒâ€šÃ‚Â¡ÃƒÆ’Ã†â€™Ãƒâ€ Ã¢â‚¬â„¢ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬Ãƒâ€¦Ã‚Â¡ÃƒÆ’Ã†â€™ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡ÃƒÆ’Ã¢â‚¬Å¡Ãƒâ€šÃ‚Â¢";
    position: absolute;
    left: 0;
    color: #000 !important;
    font-size: 18px;
    line-height: 1;
}

.related-products h4 {
    font-size: 24px;
    color: #000;
}

.product-card {
    transition: transform 0.2s, box-shadow 0.2s;
    background-color: #fff;
}

.product-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.1);
}

.product-card img {
    height: 200px;
    object-fit: cover;
}

.reviews-section {
    border-top: 1px solid #ddd;
    padding-top: 20px;
}

.review-box {
    background: #fff;
    border: 1px solid #ddd;
    border-radius: 6px;
}

.rating {
    color: #3366ff;
    /* star color */
    font-size: 18px;
}

.star-rating {
    font-size: 1.6rem;
    cursor: pointer;
}

.star {
    color: #ccc;
    transition: color 0.2s;
}

.star.hover,
.star.active {
    color: gold;
}




/* Fingerprint Services */

.appointment-page {
    padding: 40px 20px;
    background: #f8f9fa;
}

.appointment-heading {
    font-size: 70px;
    font-weight: bold;
    text-align: center;
    margin-bottom: 40px;
    font-family: Oswald;
    font-weight: 600;
    line-height: 86.5px;
    text-transform: capitalize;
}

.filter-row {
    display: flex;
    justify-content: center;
    gap: 15px;
    margin-bottom: 30px;
}

.filter-row1 input {
    padding: 10px;
    width: 100%;
    border: 1px solid #ccc;
    border-radius: 8px;
    margin-bottom: 30px;
}
.filter-row input,
.filter-row select {
    padding: 10px;
    width: 35%;
    border: 1px solid #ccc;
    border-radius: 8px;
}

.service-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(420px, 1fr));
    gap: 20px;
}

/* Enable scroll and style scrollbar for service-grid */
.service-grid {
    max-height: 600px;
    /* Adjust if needed */
    overflow-y: auto;
    scrollbar-width: thin;
    scrollbar-color: #91a4e7ee #e0e0e0;
    /* Firefox */
}

/* Webkit browsers (Chrome, Edge, Safari) */
.service-grid::-webkit-scrollbar {
    width: 8px;
}

.service-grid::-webkit-scrollbar-track {
    background: #e0e0e0;
    border-radius: 4px;
}

.service-grid::-webkit-scrollbar-thumb {
    background-color: #3c66f5;
    border-radius: 4px;
}

.service-card {
    background: white;
    border-radius: 10px;
    padding: 20px;
    box-shadow: 0 0 10px #ccc;
    margin-right: 14px;
}

.service-label {
    background: #01971933;
    color: #019719;
    font-size: 13px;
    padding: 4px 10px;
    display: inline-block;
    border-radius: 5px;
    margin-bottom: 10px;
}

.service-title {
    font-weight: 500;
    font-size: 18px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    align-items: center;
    gap: 8px;
    max-width: 100%;
}


.service-meta {
    font-size: 14px;
    color: #666;
    margin: 12px 0;
}

.service-price {
    background: #e5ecff;
    color: #3c66f5;
    font-weight: bold;
    border-radius: 12px;
    padding: 5px 12px;
    float: right;
    font-size: 13px;
     flex-shrink: 0;
}

.service-name-text {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    display: inline-block;
    max-width: calc(100% - 80px); /* adjust based on price label size */
}


.service-actions {
    margin-top: 20px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.btn-continue {
    background: #3c66f5;
    color: white;
    border: none;
    padding: 8px 14px;
    border-radius: 6px;
    align-self: center;
    font-size: 15px;
}

.btn-continue:hover {
    background: #274bd6;
}

.modal {
    position: fixed;
    z-index: 9999;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgba(0, 0, 0, 0.4);
}

.modal-content {
    background-color: #fff;
    margin: 10% auto;
    padding: 20px;
    border-radius: 10px;
    width: 30%;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.25);
}

.close {
    float: right;
    font-size: 28px;
    cursor: pointer;
}

button.text-primary.open-modal {
    color: #3c66f5 !important;
    background-color: #fff;
    border-radius: 7px;
    padding: 8px;
    border: none;
    font-size: 14px;
    font-weight: 600;
}

button.text-primary.open-modal:hover {
    background: aliceblue;
    border: 1px solid aliceblue;
}

/* ... your CSS from before ... */
.filter-row .select2-container {
    width: 35% !important;
    border-radius: 8px;
    font-size: 14px;
}

.select2-selection--single {
    height: 42px !important;
    padding: 5px 10px;
    border-radius: 8px;
    border: 1px solid #ccc;
    display: flex;
    align-items: center;
}

button#bookServiceBtn {
    align-self: end;
    margin-top: 20px;
}

.employee-card {
    opacity: 0;
    transform: translateX(-100px) scale(0.9);
    animation: bounceInLeft 0.6s ease forwards;
}

@keyframes bounceInLeft {
    0% {
        opacity: 0;
        transform: translateX(-150px) scale(0.8);
    }

    60% {
        transform: translateX(20px) scale(1.05);
    }

    80% {
        transform: translateX(-5px) scale(1);
    }

    100% {
        opacity: 1;
        transform: translateX(0) scale(1);
    }
}

.seat-hold-wrapper {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 30px;
    margin-bottom: 30px;
    gap: 15px;
}

.seat-hold-alert {
    background-color: #fff3cd;
    color: #856404;
    padding: 12px 20px;
    border-radius: 6px;
    font-weight: 600;
    font-size: 15px;
    border: 1px solid #ffeeba;
    max-width: 700px;
    text-align: center;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1);
}

.card {
    border-radius: 10px;
    transition: all 0.3s ease-in-out;
}

.card:hover {
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.1);
}

label {
    font-size: 14px;
}

input.form-control {
    border-radius: 6px;
    box-shadow: none;
}

ul#myTab {
    width: 100% !important;
    border-bottom: 1px solid white !important;
}

/* Success checkmark animation */
.checkmark-circle {
  width: 100px;
  height: 100px;
  position: relative;
  display: inline-block;
  vertical-align: top;
}
.checkmark-circle .background {
  width: 100px;
  height: 100px;
  border-radius: 50%;
  background: #28a745;
  position: absolute;
}
.checkmark-circle .checkmark {
  border-radius: 5px;
}
.checkmark-circle .checkmark.draw:after {
  animation-duration: 800ms;
  animation-timing-function: ease;
  animation-name: checkmark;
  transform: scaleX(-1) rotate(135deg);
}
.checkmark-circle .checkmark:after {
  opacity: 1;
  height: 50px;
  width: 25px;
  transform-origin: left top;
  border-right: 5px solid #fff;
  border-top: 5px solid #fff;
  content: '';
  left: 25px;
  top: 45px;
  position: absolute;
}
@keyframes checkmark {
  0% {height: 0; width: 0; opacity: 1;}
  20% {height: 0; width: 25px; opacity: 1;}
  40% {height: 50px; width: 25px; opacity: 1;}
  100% {height: 50px; width: 25px; opacity: 1;}
}
.thumb-gallery .thumb-img {
    border: 2px solid transparent;
    transition: border 0.3s ease;
}
.thumb-gallery .thumb-img:hover {
    border: 2px solid #007bff;
}

.membership-wrapper {
    text-align: center;
    margin-top: 110px !important;
}

/* Membership Card Styles */
.membership-card {
    width: 500px;
    height: 280px;
    margin: 20px auto;
    border-radius: 18px;
    padding: 25px;
    color: #fff;
    background: linear-gradient(135deg, #141e30, #243b55);
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.6);
    position: relative;
    overflow: hidden;
    font-family: 'Poppins', sans-serif;
}
.membership-card::before {
    content: "";
    background: url('../images/logo.png') no-repeat center;
    background-size: 280px;
    opacity: 0.05;
    position: absolute;
    inset: 0;
}
.card-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: relative;
    z-index: 2;
}
.membership-title {
    font-size: 16px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 2px;
    color: #ffd700;
}
.member-info {
    margin-top: 15px;
    text-align: left;
}
.member-info h4 {
    font-size: 22px;
    font-weight: 700;
    margin-bottom: 10px;
    color: #fff;
}
.member-info p {
    margin: 3px 0;
    font-size: 13px;
    color: #f1f1f1;
}
.qr-section {
    position: absolute;
    right: 20px;
    bottom: 20px;
    text-align: center;
}
.qr-section img {
    background: rgba(255,255,255,0.9);
    padding: 6px;
    border-radius: 12px;
    width: 95px;
    height: 95px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.3);
}
.qr-section p {
    font-size: 11px;
    color: #ddd;
    margin-top: 5px;
}

/* Print Button */
.print-btn {
    display: inline-block;
    margin-top: 20px;
    background: #ffd700;
    border: none;
    padding: 8px 18px;
    border-radius: 25px;
    font-size: 14px;
    font-weight: 600;
    color: #000;
    cursor: pointer;
    transition: 0.3s;
    box-shadow: 0 4px 10px rgba(0,0,0,0.2);
}
.print-btn:hover {
    background: #ffcc00;
    transform: translateY(-2px);
}

@media print {
  body.print-membership * {
    visibility: hidden;
  }
  body.print-membership .membership-card,
  body.print-membership .membership-card * {
    visibility: visible;
  }
  body.print-membership .membership-card {
    position: absolute;
    top: 0;
    left: 0;
    margin: 0;
    box-shadow: none;
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
  }
  body.print-membership .print-btn {
    display: none !important;
  }
}

.btn-sm.cancel-membership {
    cursor: pointer;
    text-decoration: none;
    color: #fff;
    padding: 10px 12px;
    border-radius: 10px;
    border: 1px solid #fff;
    /* margin-top: 5px !important; */
    line-height: 18px;
    font-size: 16px;
    margin-bottom: 4px;
}
li.serv-desc {
    color: white !important;
        font-family: Poppins;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 32px;
    text-align: left;
}
section.service-row .ser img{
    height:350px;
    object-fit:contain;
}
    .member-header-wrapper {
    position: relative;
}

.member-header-wrapper h2 {
    display: inline-block; /* ensures button can float next to it */
    margin: 0;
}

.member-header-wrapper .join-btn {
    position: absolute;
    right: 60px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 20px;
}
.floating-join-btn {
    position: fixed;
    right: 140px;
    z-index: 9999;
    padding: 12px 25px;
    font-size: 19px;
    border-radius: 5px;
    background-color: #007bff;
    color: #fff;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
    transition: all 0.3s ease;
}

.floating-join-btn:hover {
    background-color: #0056b3;
    transform: translateY(-2px);
    box-shadow: 0 6px 12px rgba(0,0,0,0.25);
}
.video-controls {
  position: absolute;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  gap: 15px;
  background: rgba(0, 0, 0, 0.65);
  padding: 12px 20px;
  border-radius: 50px;
  align-items: center;
  justify-content: center;
  backdrop-filter: blur(6px);
  opacity: 1;
  transition: opacity 0.4s ease;
}

.video-controls.hide {
  opacity: 0;
  pointer-events: none;
}

.video-controls button {
  background: none;
  border: none;
  font-size: 28px;
  color: #fff;
  cursor: pointer;
  padding: 8px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background 0.3s ease, transform 0.2s ease;
}

.video-controls button:hover {
  background: rgba(255, 255, 255, 0.2);
  transform: scale(1.15);
}

.material-icons {
  font-size: 28px;
  transition: transform 0.3s ease;
}
.links{
    justify-content: space-evenly;
    display: flex;
    color: #fff;
    font-family: Oswald;
    font-size: 19px;
    font-style: normal;
    font-weight: 300;
    line-height: 18px;
    text-transform: uppercase;
    text-decoration: none;
    margin-top: 30px;
}
.links a{
      color: #fff;
}
.payments-imgs{
 display:flex;
 gap:20px;
}