/*!************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[4].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./src/sponsors/style.scss ***!
  \************************************************************************************************************************************************************************************************************************************************/
.sponsor-module-wrapper {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  padding: 1.6rem;
}

/* SEARCH BAR */
.sponsor-search-wrapper {
  width: 100%;
  max-width: 1240px;
  text-align: left;
  margin-top: 20px;
  margin-bottom: 20px;
}

.sponsor-search {
  position: relative;
  width: 100%;
}

.sponsor-search:before {
  position: absolute;
  content: "";
  left: 10px;
  top: 50%; /* Move to the vertical center */
  transform: translateY(-50%); /* Offset by half the element's height */
  width: 24px;
  height: 24px; /* Match the icon's dimensions */
  background: url("data:image/svg+xml,%3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\"%3E%3Cpath d=\"M19.6 21L13.3 14.7C12.8 15.1 12.225 15.4167 11.575 15.65C10.925 15.8833 10.2333 16 9.5 16C7.68333 16 6.14583 15.3708 4.8875 14.1125C3.62917 12.8542 3 11.3167 3 9.5C3 7.68333 3.62917 6.14583 4.8875 4.8875C6.14583 3.62917 7.68333 3 9.5 3C11.3167 3 12.8542 3.62917 14.1125 4.8875C15.3708 6.14583 16 7.68333 16 9.5C16 10.2333 15.8833 10.925 15.65 11.575C15.4167 12.225 15.1 12.8 14.7 13.3L21 19.6L19.6 21ZM9.5 14C10.75 14 11.8125 13.5625 12.6875 12.6875C13.5625 11.8125 14 10.75 14 9.5C14 8.25 13.5625 7.1875 12.6875 6.3125C11.8125 5.4375 10.75 5 9.5 5C8.25 5 7.1875 5.4375 6.3125 6.3125C5.4375 7.1875 5 8.25 5 9.5C5 10.75 5.4375 11.8125 6.3125 12.6875C7.1875 13.5625 8.25 14 9.5 14Z\" fill=\"%23333333\"%3E%3C/path%3E%3C/svg%3E");
  background-repeat: no-repeat;
}

.sponsor-search input {
  flex: 1;
  padding: 15px 10px 16px 40px;
  border: 1px solid #E6E6E6;
  border-radius: var(--global-border-radius);
  font-size: 1rem;
  width: calc(100% - 52px);
  max-height: 48px;
}

.sponsor-module-content-wrapper {
  max-width: 1240px;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}

/* sponsor Group Wrapper */
.sponsor-group {
  width: 100%;
  padding: 1.6rem;
}

.sponsor-group:not(:first-child) {
  padding-top: 100px; /* Add top padding only to elements after the first */
}

/* sponsor Group Title */
.sponsor-group-title {
  text-align: center;
  padding-bottom: 40px;
  font-size: 32px;
  font-weight: 700;
  line-height: 40px;
}

/* sponsor List Wrapper */
.sponsor-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 32px;
  width: 100%;
}

/* Individual sponsor Item */
.sponsor-item {
  flex: 0 0 calc(25% - 26px);
  min-width: 284px;
  min-height: 284px;
  border-radius: var(--global-border-radius);
  cursor: pointer;
  perspective: 1000px;
}

.sponsor-item-inner {
  position: relative;
  width: 100%;
  height: 100%;
  transform-style: preserve-3d;
  transform-origin: center;
  transition: transform 0.6s ease;
}

/* Flip on Hover */
.sponsor-item:hover .sponsor-item-inner {
  transform: rotateY(180deg);
}

/* Disallow flip when no description */
.sponsor-item.no-flip .sponsor-item-inner {
  transform: none !important; /* Prevent flipping */
}

.sponsor-item.no-flip:hover {
  cursor: default; /* No hover effect */
}

.sponsor-item-front,
.sponsor-item-back {
  position: absolute;
  width: 100%;
  height: 100%;
  min-height: 284px;
  min-width: 284px;
  backface-visibility: hidden; /* Hide the back face when the front is visible */
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  border-radius: var(--global-border-radius);
  overflow: hidden;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  padding: 24px 16px;
  box-sizing: border-box;
}

.sponsor-item-back {
  cursor: default;
}

/* sponsor Image */
.sponsor-item-front img {
  width: 100%;
  max-width: 260px; /* Ensure the image doesn't exceed the desired width */
  max-height: 260px; /* Set the maximum height */
  -o-object-fit: contain;
     object-fit: contain;
  overflow: hidden;
}

/* Demo presenter Text */
.flip-card-bug {
  color: #777;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 1.2px;
  position: absolute;
  bottom: 12px;
  text-transform: uppercase;
}

.sponsor-item-back {
  background: #000;
  color: #fff;
  transform: rotateY(180deg); /* Position the back side initially */
  font-size: 16px;
  text-align: left;
  display: flex;
  align-items: flex-start;
  justify-content: center;
}

.sponsor-item-back-content-wrapper {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  text-align: center;
  gap: 14px;
  align-items: center;
}

.sponsor-item-back-title {
  font-size: 18px;
  line-height: 32px;
  font-weight: 700;
}

.sponsor-item-back-subtitle-wrapper {
  padding-bottom: 6px;
  -webkit-line-clamp: 3;
  overflow: hidden;
  text-overflow: ellipsis;
  box-sizing: border-box;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  font-size: 18px;
  line-height: 26px;
}

.sponsor-item-back-subtitle-wrapper p {
  margin: 0;
}

.sponsor-learn-more {
  padding: 12px 35px 11px;
  border: 1px solid #FFFFFF;
  color: #FFFFFF;
  background-color: transparent;
  text-decoration: none;
  border-radius: var(--global-border-radius);
  cursor: pointer;
  text-transform: uppercase;
  letter-spacing: 1px;
  font-weight: bold;
}

/* Modal Wrapper */
.sponsor-modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.7);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1000;
  visibility: hidden;
  opacity: 0;
  transition: visibility 0s, opacity 0.2s ease-in-out;
  color: #121212;
}

.sponsor-modal:not(.hidden) {
  visibility: visible;
  opacity: 1;
}

/* Modal Content */
.sponsor-modal-content {
  position: relative;
  background: #fff;
  border-radius: var(--global-border-radius);
  width: 100%;
  max-height: 80vh;
  max-width: 792px;
  z-index: 9999;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  margin: 20px;
}

/* Modal Close Button */
.sponsor-modal-close {
  position: absolute;
  top: 10px;
  right: 10px;
  background: none;
  border: none;
  font-size: 24px;
  cursor: pointer;
}

/* Top Wrapper */
.sponsor-modal-header {
  background-color: #F5F5F5;
  width: 100%;
  border-radius: var(--global-border-radius) var(--global-border-radius) 0 0;
}

.sponsor-modal-header-content-wrapper {
  width: 100%;
  box-sizing: border-box;
  padding: 32px 54px;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 24px;
}

/* Modal Image */
.modal-sponsor-logo-wrapper {
  height: 160px;
  width: 100%;
  max-width: 284px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #FFFFFF;
  padding: 20px;
  box-sizing: border-box;
}

.modal-sponsor-logo {
  max-width: 100%;
  max-height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.modal-sponsor-info-wrapper {
  padding-top: 24px;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  flex-direction: column;
  gap: 8px;
  flex: 1;
}

/* Modal Text */
.modal-sponsor-flip-card-bug {
  color: #777;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 1.2px;
  text-transform: uppercase;
}

.modal-sponsor-name {
  font-size: 24px;
  line-height: 32px;
  font-weight: bold;
}

.modal-sponsor-product {
  font-size: 16px;
  line-height: 24px;
  text-align: left;
}

.modal-sponsor-link {
  font-size: 14px;
  line-height: 26px;
  color: #121212;
  text-decoration: none;
  cursor: pointer;
}

/* Modal Body */
.sponsor-modal-body {
  padding: 24px 54px 56px;
  max-height: 450px;
  width: 100%;
  box-sizing: border-box;
  overflow-y: scroll;
  -webkit-mask-image: linear-gradient(rgba(0, 0, 0, 0) 1%, #121212 8%, #121212 85%, rgba(0, 0, 0, 0) 98%);
          mask-image: linear-gradient(rgba(0, 0, 0, 0) 1%, #121212 8%, #121212 85%, rgba(0, 0, 0, 0) 98%);
}

.modal-sponsor-description {
  font-size: 16px;
  line-height: 26px;
}

.modal-sponsor-description p {
  margin-bottom: 12px;
}

.modal-sponsor-description p:not(:first-child) {
  margin-top: 12px;
}

.modal-sponsor-video-wrapper {
  max-width: 80%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 24px auto 0;
}

.modal-sponsor-video {
  width: 100%;
}

/* Modal Demo */
.modal-sponsor-resource-section-title {
  font-size: 24px;
}

.modal-sponsor-demo-item {
  padding: 24px 0;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  flex-direction: column;
  gap: 18px;
}

.modal-sponsor-demo-title {
  font-size: 20px;
  font-weight: 700;
  line-height: 28px;
}

.modal-sponsor-demo-description {
  font-size: 16px;
  line-height: 26px;
}

/* Modal Resources */
.modal-sponsor-resource-wrapper {
  padding-top: 48px;
}

.modal-sponsor-resource-item {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-direction: column;
  gap: 12px;
}

.modal-sponsor-resource-title {
  font-size: 20px;
  font-weight: 700;
  line-height: 28px;
}

.modal-sponsor-resource-content-wrapper {
  display: flex;
  gap: 32px;
  align-items: flex-start;
  justify-content: flex-start;
  width: 100%;
}

.modal-sponsor-resource-copy-wrapper {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 32px;
  flex: 2;
}

.modal-sponsor-resource-description {
  font-size: 16px;
  line-height: 26px;
}

.modal-sponsor-resource-cta-wrapper a {
  border-radius: var(--global-border-radius);
  background: #121212;
  color: #FFFFFF;
  text-decoration: none;
  text-align: center;
  padding: 15px 26px;
  display: inline-block;
}

.modal-sponsor-resource-image-wrapper {
  max-width: 250px;
  flex: 1;
}

.modal-sponsor-resource-image-wrapper img {
  width: 100%;
  height: auto;
}

/* Modal Sessions */
.modal-sponsor-sessions {
  border-left: 1px solid #484848;
  padding: 8px 24px;
  width: calc(100% - 34px);
}

.session-item:last-child {
  border-bottom: none !important;
}

/* Scroll prompt arrow */
.sponsor-scroll-prompt-arrow {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-bottom: 24px;
  transition: opacity 0.4s ease;
  opacity: 0.6;
}

.sponsor-scroll-prompt-arrow.at-bottom {
  opacity: 0;
}

.sponsor-scroll-prompt-arrow svg {
  transform: rotate(90deg);
}

@media only screen and (max-width: 1080px) {
  /* sponsor Card */
  .sponsor-item {
    flex: 0 0 calc(30% - 26px);
  }
}
@media only screen and (max-width: 769px) {
  .sponsor-group:not(:first-child) {
    padding-top: 72px; /* Add top padding only to elements after the first */
  }
  /* sponsor Card */
  .sponsor-item {
    flex: 0 0 40%;
  }
}
@media only screen and (max-width: 580px) {
  /* Block Wrapper */
  .sponsor-module-wrapper {
    padding: 0 1.6rem;
  }
  /* sponsor Card */
  .sponsor-item {
    flex: 100%;
    display: flex;
    flex-direction: row;
  }
  .sponsor-info {
    padding: 10px 8px 8px 10px;
    flex: 2;
  }
  /* sponsor Modal */
  .sponsor-modal-close svg {
    width: 24px;
    height: 24px;
  }
  .sponsor-modal-header-content-wrapper {
    padding: 50px 24px 18px;
    flex-direction: column;
    gap: 12px;
  }
  .modal-sponsor-logo-wrapper {
    max-width: unset;
  }
  .modal-sponsor-logo {
    width: 270px;
  }
  .modal-sponsor-info-wrapper {
    padding-top: 8px;
    width: 100%;
  }
  .sponsor-modal-body {
    padding: 24px 24px 56px;
  }
}
@media only screen and (max-width: 500px) {
  /* Modal */
  .sponsor-modal-header-content-wrapper {
    margin-bottom: unset;
  }
  .modal-sponsor-info-wrapper {
    padding-top: 0px;
  }
  .sponsor-modal-body {
    padding: 5px 24px 56px;
    -webkit-mask-image: linear-gradient(rgba(0, 0, 0, 0) 2%, #121212 5%, #121212 85%, rgba(0, 0, 0, 0) 98%);
            mask-image: linear-gradient(rgba(0, 0, 0, 0) 2%, #121212 5%, #121212 85%, rgba(0, 0, 0, 0) 98%);
  }
}

/*# sourceMappingURL=style-index.css.map*/