body {
  font-family: 'Funnel Display', sans-serif;
  color: black;
  -webkit-overflow-scrolling: touch;
  --orange:#e37f44;
  font-size:0.8em;
}

@media screen and (min-width: 500px) and (max-width: 750px) {
    .HighlightsSectionMiddleFix {
        padding-top:120px !important;
    }
}
.softFont {
  font-family: 'Funnel Display';
  font-weight: 300;
}
.page-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.menuEl {
  cursor:pointer;
  text-align: left;
  padding: 8px 12px;
}
.contactButton {
  background-image: linear-gradient(#ff3131, #ff914d);
  border-radius: 15px;
  font-weight: 700;
  margin: 0 18px;
  display:grid;
  align-items: center;
  grid-template-columns: min-content min-content;
  place-content: space-around;
}
.main-content {
  box-shadow: 0 0 40px #121727;
  position: relative;
  max-width: 1250px; /* Limit the content width */
  margin: 0 auto;
  background-color: white;
  z-index: 2;
  overflow:hidden;
}
.blurred-background {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: -10;
  filter: blur(15px); /* Apply blur */
  opacity: 0.4; /* Optional: Slight transparency */
  transform: scale(1.05); /* Slightly scale up to cover the sides */
  pointer-events: none; /* Ensure t */
  /* animation: moveBackground 20s linear infinite;  */
  /* Optional movement effect */
}
.normalText {
  font-size: 3.2em;
  font-weight: 700;
  color: white;
  line-height:1.2;
}

.kickersBox {
  padding: 30px 45px;
  background-color: #121727;
  color: white;
  text-align: center;
  font-size: 1.8em;
  max-width: 200px;
  margin: 10px auto;
  font-weight: 600;
  line-height: 1.1;
  border: 1px solid var(--backgroundColor);
  box-shadow: 0 0 1px black;
}
.kickersGrid {
  align-items: center;
  grid-template-columns: var(--horizontalGrid);
}

@media screen and (max-width: 700px) {
  .kickersGrid {
    grid-template-columns: 100%;
  }
  .kickersGridInvertRow {
    order: -1;
  }
  .minContentWidthOnNarrow {
    width: min-content;
  }
}

.contactForm {
  --h-padding: 35px;
  width: calc(100% - calc(var(--h-padding) * 2)- 4px);
  max-width: 570px;
  margin: 0 auto;
  border: 0;
  /* 2px solid #121727; */
  /* color: white; */
  padding: 25px var(--h-padding);
  border-radius: 2px;
}

.formText {
  padding: 15px 0 5px;
  font-size: 1.2em;
  font-weight: 500;
}

.formInput {
  background-color: unset;
  --h-padding: 14px;
  width: calc(100% - calc(var(--h-padding) * 2 + 4px));
  font-size: 1.1em;
  padding: 14px var(--h-padding);
  border: 1px solid #121727;
  border-width: 0px 0px 1px 0;
  border-radius: 0;
}
.requiredField {
  font-size: 0.8em;
  top: -4px;
  position: relative;
  font-style: italic;
}
.sendButton {
  border: 0;
  padding: 19px 21px;
  margin-top: 15px;
  font-weight: 700;
  background-color: #121727;
  border-radius: 3px;
  font-size: 1em;
  color: white;
  font-size: 1.3em;
}
.contactFooter {
  background-color: rgb(29, 29, 29);
}
.contactFooterGrid {
  grid-template-columns: 100%;
}
.footerGrid {
  grid-template-columns: 45% 55%;
}
.topLogoCont {
  width:70%;
  max-width: 500px;
  display:grid;
  grid-template-columns: 100%;
}
.topLogoCont img {
  width: 100%;
  grid-row: 1;
  grid-column: 1;
}
.topLogo {
  width:50% !important;
  max-width:300px;
  margin-top:5%;
  margin-left: 7%;
}
.hurryV {
  display: none;
}
.hurryH {
  display: block;
}
.hurryCont {
    height: 650px
}
.hurryContContactPage {
  height: 520px;
}
.mapsGrid {
  grid-template-columns: 40% 60%;
}
.mapsCont {
  height: 450px;
}
.mapsV {
  display: none;
}
@media screen and (max-width: 650px) {
  .contactForm {
    padding-top: 0;
  }
}
@media screen and (max-width: 750px) {
  .topLogoCont {
    width:90%
  }
  .topLogo {
    width: 55% !important;
    max-width: 350px;
  }
  .hurryV {
    display: block;
  }
  .hurryH {
    display: none;
  }
  .hurryCont {
    height: 780px;
  }
  .hurryContContactPage {
    height: 480px;
  }
  .mapsCont {
    height: 750px;
  }
  .mapsGrid {
    grid-template-columns: 100%;
  }
  .mapsGrid > div:nth-child(1) {
    display: none;
  }
  .mapsV {
    display: block;
  }
}
.footerGrid .secondChild {
  margin: 0 auto;
}

.footerGrid .child {
  padding-left: 30px;
}
@media screen and (max-width: 800px) {
  .centeredBelow800 {
    text-align:center;
  }
  .contactGrid{
    justify-self: center;
    margin-top: 10px;
    grid-template-columns: max-content 1fr;
    /* row-gap: 8px; */
  }
  .footerGrid {
    grid-template-columns: 100%;
    padding: 100px 0 !important;
  }
  .footerGrid .child {
    padding-left: unset;
    text-align: center;
    max-width: 400px;
    margin: 0 auto;
  }
  .footerGrid .secondChild {
    padding: 18px 0;
    width: 90%;
    margin: 40px auto;
    border: 1px solid rgba(255, 255, 255, 0.5);
    border-right: 0;
    border-left: 0;
  }
  .footerGrid .child > img {
    width: 100%;
    max-width: 300px;
  }
}
.pagePadding {
  padding: 0 20px;
}
@media screen and (min-width: 600px) {
  .contactFooterGrid {
    grid-template-columns: 50% 50%;
  }
  .contactFooterSecondChild {
    justify-self: end;
  }
}
.widthOnTablet {
  display:none;
}
.padding20pxAbove500 {
  padding: 20px 0;
}
.padding20pxBelow500 {
  padding: 0 20px;
}
.showBelow500 {
  display:block;
}
.hideBelow500{
  display:none;
}
.neorumPowered {
  display: grid;
  grid-template-columns: max-content max-content;
  column-gap: 30px;
  align-items: center;
  position: relative;
  justify-content: center;
  font-size: 1.2em;
  padding-top: 30px;
  font-weight: 300;
  color:white;
}
@media screen and (min-width:500px) {
  .linkLogo{
    height:200px;
  }
  .hideBelow500{
    display:block;
  }
  .showBelow500{
    display:none;
  }
  .widthOnTablet {
    display:block;
  }
  .padding20pxAbove500 {
    padding:20px
  }
  .padding20pxBelow500 {
    padding: 0;
  }
  .minHeight350Below800 {
    min-height:300px;
  }
  .boxAbove500{
    background-color:rgba(255,255,255,0.2); 
    border:3px solid rgba(255,255,255,0.3); 
    box-shadow: 14px 16px 87px 17px rgba(255,255,255,0.2) inset
  }
}
.showBelow800 {
  display:block;
}
.maxWidth300Below800 {
  max-width:300px;
  margin:0 auto;
}
@media screen and (min-width: 800px) {
  .pagePadding {
    padding: 0 2% !important;
  }
  .showBelow800 {
    display:none;
  }
  .maxWidth300Below800 {
    max-width:unset;
  }
  .neorumPowered {
    grid-column: span 2;
    grid-template-columns: max-content max-content 100px;
  }
}
@media screen and (min-width: 950px) {
  .pagePadding {
    padding: 0 4% !important;
  }
  .letsTalkTitle {
    padding: 0 !important;
    width: unset;
  }
}
@media screen and (min-width: 1100px) {
  .pagePadding {
    padding: 0 6% !important;
  }
}

.grecaptchaContainer {
  position: relative;
  overflow: hidden;
  width: 100%;
  height: 100px;
}
.grecaptcha-badge {
  position: absolute !important;
}

.descCont {
  border-radius: 4px;
  background-color: rgba(0, 0, 0, 0.3);
  color: white;
  width: calc(100% - 15px);
  /* padding-top: 108%; */
  margin-bottom: 17px;
  height: 280px;
}
.descText {
  padding: 10px 50px 10px 14px;
  font-size: 0.9em;
  text-align: left;
  color: white;
}

.triangleCont {
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 220px;
  background: linear-gradient(29deg, #363d62, #1b1f38, #232843, #353847);
  background: linear-gradient(29deg, hsl(230 29% 36% / 1), hsl(232 35% 22% / 1), hsl(231 31% 36% / 1), hsl(230 15% 24% / 1));
  background: linear-gradient(29deg, hsl(230 29% 40% / 1), hsl(232 35% 26% / 1), hsl(231 31% 30% / 1), hsl(230 15% 34% / 1));
  -webkit-clip-path: var(--polygon);
  shape-outside: var(--polygon-shape);
  clip-path: var(--polygon);
  border-radius: 4px;
  right: 0;
  max-width: 300px;
  max-height: 94%;
}
.triangleText {
  position: absolute;
  text-align: right;
  right: 15px;
  bottom: 7px;
  font-size: 1.2em;
  font-weight: 600;
  color: white;
}
.triangleParent {
  --polygon: polygon(100% 20px, 100% calc(100% - 0px), 20px calc(100% - 0px));
  --polygon-shape: polygon(100% 30px, 100% calc(100% - 0px), 30px calc(100% - 0px));
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0px;
  top: 0;
}

.blockImage {
  display: none;
  position: absolute;
  width: calc(100% - 50px);
  left: 50%;
  transform: translateX(-50%);
  top: 0;
}
.blockImage > div {
  position: absolute;
  padding-top: 82.5%;
  position: relative;
}
.blockImage > div > div {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
}
.blockImage img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  border-radius: 4px;
}

.block {
  position: relative;
  margin: 20px auto;
  width: 85%;
}
.servicesGrid {
  grid-template-columns: 33% 33% 33%;
}
.gridColumn {
  grid-column: var(--gridColumn);
}
.gridRow {
  grid-row: var(--gridRow);
}
@media (max-width: 800px) {
  .gridColumn {
    grid-column: unset;
  }
  .gridRow {
    grid-row: unset;
  }
  .fillerBlockHider {
    display: none;
  }
  .servicesGrid {
    grid-template-columns: 50% 50%;
  }
  .servicesReverse1 {
    order: -1;
  }
  .servicesReverse2 {
    order: 1;
  }
}
/* .noWrapOver500 {
  white-space: nowrap;
} */
@media (max-width: 500px) {
  .contactGrid {
    font-size:0.35em !important;
    justify-self: center;
    margin-top: 10px;
    grid-template-columns: 100%;
    row-gap: 0;
  }
  .triangleCont {
    position: relative;
    float: right;
    margin-top: 10px;
  }
  /* .noWrapOver500 {
    white-space: unset;
  } */
  .limitHeightOnNarrow {
    height: 150px !important;
  }
  .removeTopMarginOnPhone {
    margin-top: 0;
  }
  .descCont {
    height: 140px;
  }
  .descText {
    padding-right: 34px;
  }
  .servicesGrid {
    grid-template-columns: 100%;
  }
}
.fillerBlock {
  height: calc(100% - 40px);
  width: 85%;
  border-radius: 6px;
  /* padding: 20px; */
  /* overflow: hidden; */
  place-self: center;
  overflow: hidden;
}

.logoBounce {
  -webkit-animation: bounce 1s infinite alternate;
  animation: bounce 1s infinite alternate;
}

@-webkit-keyframes bounce {
  0% {
    transform: translateY(0);
  }
  100% {
    transform: translateY(-4px);
  }
}

@keyframes bounce {
  0% {
    transform: translateY(0);
  }
  100% {
    transform: translateY(-4px);
  }
}

.servicesSectionTitle {
  margin: 0 0 20px 30px;
  font-size: 1.6em;
  font-weight: 500;
}
textarea:focus,
input:focus {
  outline: none;
}

.hookButton {
  box-shadow: 0 0 39px 6px rgba(255, 255, 255, 0.5) inset;
  border-radius: 10px;
  padding: 6px 22px;
  margin: 6px 0;
  border: 2px solid rgba(255, 255, 255, 0.5);
}
.sectionButton {
  box-shadow: 0 0 27px -10px rgba(255, 255, 255, 1) inset;
    border-radius: 10px;
    padding: 6px 52px;
    margin: 6px 0;
    border: 2px solid rgba(255, 255, 255, 0.5);
    color:white;
    display:inline-block;
    font-weight:400;
    font-size:1.5em;
}
.sectionButtonCont{
  text-align:center;
}
.gridTwo {
  grid-template-columns:100%;
  column-gap: 30px;
  align-items:center;
}
.cultureSect {
  margin:20px 20px;
  text-align:center;
}
.hideBelow800{
  display:none;
}
@media screen and (min-width: 800px) {
  .gridTwo {
    grid-template-columns: min-content 1fr;
  }
  .gridTwoB {
    grid-template-columns: 50% 50%;
    padding: 60px 0 !important;
  }
  .cultureSect {
    margin: 20px 100px;
    text-align:left;
  }
  .sectionButtonCont {
    text-align:left;
    margin:0px 100px 0px 10%;
  }
  .hideBelow800 {
    display:grid;
  }
  .displayBelow800 {
    display:none !important;
  }
  .widthOnTablet {
    display:none;
  }
  .minHeight350Below800 {
    min-height:unset;
  }
}
.primaryIcon{
    --size:40%; 
    width:var(--size); 
    position:relative;
    /* border:1px solid white; */
}
.primaryIcon > div {
  padding-top: 100%;
}
.primaryIcon > div > div {
  position:absolute; 
}
.primaryIcon > div > div > div {
  background-color:var(--iconColor);
  padding-top:100%;
  box-shadow: 13px 18px 38px 1px rgba(255,255,255, 0.8) inset;
  border-radius: 6px;
}
.primaryIcon > div > div > div > img {
  position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);
  width:80%
}
.secIconsGroup{
  --size:66%; 
  width:var(--size); 
  position:relative;
  /* border:1px solid white; */
}
.secIconsGroup > div {
  padding-top:100%;
}
.secIconsGroup > div > div {
  position:absolute; 
}
.secIconsGroup > div > div > div {
  padding-top:100%;
  box-shadow: 13px 18px 72px 6px rgba(255, 255, 255, 0.5) inset;
  border-radius: 4px;
}
.secIconsGroup > div > div > div > img {
  position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);
  width:70%
}

.heartbeat {
  animation: heartbeat 4s ease-in-out infinite;
}

@keyframes heartbeat {
  0% {
    transform: scale(1);
    opacity: 1;
  }
  8% {
    transform: scale(1.02);
    opacity: 0.96;
  }
  16% {
    transform: scale(1);
    opacity: 1;
  }
  24% {
    transform: scale(1.01);
    opacity: 0.99;
  }
  30% {
    transform: scale(1);
    opacity: 1;
  }
  100% {
    transform: scale(1);
    opacity: 1;
  }
}

.linkLogo {
  height:280px;
}

.blockLabels {
  font-weight:500
}
.reelsSwiper-wrapper {
  max-width:360px;
  width:90%;
}
.reelsSwiper-slide {
  width:90%;
  padding: 0 min(20px, 5%) 40px;
  box-sizing: border-box;
}
.reelsSwiper-slide.swiper-slide-prev {
  filter: blur(8px); /* Blur all visible (including sides); adjust 8px as needed */
}
.reelsSwiper-slide.swiper-slide-next {
  filter: blur(8px); /* Sharp center slide */
}
.prodsSwiper-wrapper {
  max-width:420px;
  width:90%;
  
}
.prodsSwiper-slide {
  width:90%;
  /* height:500px; */
  padding: 0 min(20px, 5%) 40px;
  box-sizing: border-box;
  transform: scale(1);
  transition:  500ms ease-in-out;
  transform-origin: bottom center;
}
.prodsSwiper-content {
  height: 100%;
  min-height:380px;
  width: 100%;
  --shadowInv: 1.5;
  --backInv: 1;
  background-color: rgba(255, 255, 255, calc(var(--backInv) * 0.1));
  box-shadow: 45px 57px 113px 10px rgba(255, 255, 255, calc(var(--shadowInv) * 0.1)) inset;
  border-radius:7px;
  border:2px solid rgba(255,255,255,0.3);
  box-sizing:border-box;
  padding:20px;
    display:grid;
  grid-template-rows: max-content 1fr;
}
@media screen and (max-width:500px) {
  .prodsSwiper-content {
    min-height:400px;
  }
}
.prodsSwiper {
  margin-top:20px;
  --swiper-pagination-bullet-size: 14px;
}
.prodsSwiper-slide.swiper-slide-active{
  transform: scale(1.1);
}
.swiper-navigation-icon {
  color:var(--orange);
}
.swiper-pagination-bullet {
  background-color:white;
  opacity:0.5;
}
.swiper-pagination-bullet-active {
  opacity:unset;
}
.prodSwiper {
  width:100%;
  border-radius:5px;
  z-index:-1;
  position:relative;
}
.prodSwiper-wrapper {
  height:150px;
  width:100%;

}
.prodSwiper-slide {
  background-color:white;
}
.prodSwiper-slide img {
  width:100%;
  height:100%;
  object-fit: cover;
}
.prodsText {
  font-size:1.1em; 
  color:white;
  align-self:end;
  margin-top:20px;
}
.prodsTextBold {
  font-weight:700;
}
.secSwiperCont .coverImage {
  position: absolute;
  grid-row: 1;
  width: 100%;
  height: 100%;
  z-index: 100;
  top:-10px;
}
.secSwiperCont .coverImage img{
  clip-path: polygon(0 0, calc(100% - 40px) 0, 0 100%);
  width: 100%;
  height: 100%;
  object-fit: cover;
  /* object-position: -38px -45px; */
  border-radius: 8px 0 0 0;
}
.secSwiperCont {
  padding:10px 0 0 10px;
  display:grid;
  grid-template-columns:100%; 
  box-sizing:border-box;
  position:relative;
  z-index:1;
}
.goadElementsCont {
  font-size:1.52em; 
  display:grid; 
  grid-template-columns:100%;
  justify-items: center;
  row-gap: 15px;
}
.goadElement {
    display: flex;
    height: 40px;
    align-items: center;
    gap: 18px;
    box-shadow: 11px 12px 40px -14px white inset;
    padding: 6px 16px;
    border-radius: 4px;
    background-color: rgba(3,25,81,0.8);
    font-weight:700;
}

.reelTitleCont {
    display: grid;
    grid-template-columns: 37px 1fr;
    width: 89%;
    align-items: center;
    align-content: center;
    margin: 0 auto;
    margin-top: 18px;
    position: relative;
    line-height: 1;
    padding: 8px 0;
    box-sizing: border-box;
    box-shadow: 23px 3px 21px -1px rgba(255,255,255,0.3) inset;
    border-radius: 6px;
    background-color: rgba(255,255,255,0.2);
    border: 2px solid rgba(255,255,255,0.3);
}
.reelIcon {
  height: 64px;
  position: absolute;
  top: 50%;
  transform: translate(-20%,-50%);
}
.reelTitleText {
  text-align:center; 
  color:white; 
  font-weight:600; 
  font-size:1.3em
}
.igLinkCont {
  position:absolute;
  top: 0;
  right:0;
  display:flex;
  align-items:center;
  padding: 13px 24px;
  background-color: rgba(3, 25, 81, 0.6);
  border-radius: 0 0 0 8px;
  cursor: pointer;
  /* border: 1px solid rgba(255,255,255,0.5); */
}
.igLinkCont img:nth-child(1) {
  height: 56px;
}
.igLinkCont img:nth-child(2){
  height: 37px;
  margin-left: 5px;
}
.play-button {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 80px; /* Size of the play button */
  height: 80px;
  background: rgba(0, 0, 0, 0.6); /* Semi-transparent background */
  border-radius: 50%;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: opacity 0.3s;
}

.play-button::before {
  content: '';
  display: block;
  width: 0;
  height: 0;
  border-left: 32px solid white; /* Play triangle */
  border-top: 20px solid transparent;
  border-bottom: 20px solid transparent;
  transform: translateX(15%);
}
.glowing-circle {
  position:absolute;
  width: 0;
  height: 0;
  border-radius: 50%;
  box-shadow: 0 0 125px 140px rgba(255, 255, 255, 0.15);
}
.explainingText {
  font-size:1.28em;
}
.sideMenuSep {
  margin:4px 12px 13px 84px;
  line-height:0; 
  border:1px solid rgba(234,234,234,0.4);
}