:root {
  --orange: #F54517;
  --black: #0d0d0d;
}
html,body,h1,h2,h3,h4,h5,h6,p,span {
  margin: 0;
  padding: 0;
}
body{font-family: 'Archivo', sans-serif;background-color:#fff;color:#0f0f0f;font-size:10px;font-weight:400;line-height:1.3;overflow-x:clip}


.not-black{color:#0d0d0d}
.white-color{color:#fff}

.whsk-medium{font-weight:500}
.whsk-bold{font-weight:700}
.whsk-black{font-weight:800}

.maxgridrow{max-width:1760px;margin:0 auto;width:100%;}

@media screen and (max-width: 1200px){
  .is-full-1200{width:100% !important;}
}
@media screen and (max-width: 500px){
  .is-full-small{width:100% !important;}
}

.thumb-holder{
  line-height: 0;
	padding-bottom: 66%;
	height: 0;
	position: relative;
}
.thumb-holder img{
  object-fit: cover;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
}
.thumb-holder.square-image{
  padding-bottom: 100%;
}
.thumb-holder.vertical-image{
  padding-bottom: 175%;
}
.thumb-holder.carousel-image{
  padding-bottom: 116.4%;
}
.thumb-holder.slim-image{
  padding-bottom: 45%;
}

.title-sep {
  width: 410px;
  height: 3px;
  background-color: var(--black);
  margin-bottom:70px;
}

.title-sigil img{
  width: 32px;
  margin-right: 10px;
}

img {width:100%;height:auto}
/* HEADER */
header.is-site-header{padding:20px 80px;border-bottom:1px solid #ccc;position:sticky;top:0;width:100%;z-index:10;background:#fff;}
header .logo{max-width:160px;transition:max-width 0.3s ease;}
header .menu-main-menu-container ul{display:flex;flex-wrap:wrap;}
header .menu-main-menu-container li{margin:0 20px;}
header .menu-main-menu-container li a{padding:13px 0;position:relative;color:#212122;font-weight:700;font-size:14px}
header .menu-main-menu-container li a::after{
  content: '';
  display: block;
  opacity: 0;
  background-color: #212122;
  bottom: 0;
  left: 0;
  position: absolute;
  z-index: 2;
  width: 100%;
  transition: .3s;
  transition-timing-function: cubic-bezier(.58,.3,.005,1);
  height: 3px;
}
header .menu-main-menu-container li:hover a::after,header .menu-main-menu-container li.current-menu-item a::after{opacity: 1;}
header .menu-column {align-content:center;}
header .menu-column .menu {display:flex;align-items:center;justify-content:center;}

.sigil{line-height: 0;}


/* Hero */
.hero-row{
  height: 80vh;
  width: 100%;
  position:relative;
}
.hero-row .background-hero{
  width: 100%;
  height: 100%;
  background-color: #02010100;
  background-image: url(https://www.flowsports.gr/wp-content/uploads/2024/11/Main_Image_2560_2.gif);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}

/* About section */
.flow-section.section-about{margin-top:150px}
.about-images-half {
  display: flex;
  position: relative;
  width: 100%;
  height: 100%;
  align-content: flex-start;
}
.about-images-half .motion-image-wrap{
  position: absolute;
  height: 100%;
  width: 100%;
  overflow: hidden;
  left: 0;
  top: 0;
}
.about-images-half .motion-image-wrap .motion-image {
  background-position: center left;
  background-repeat: no-repeat;
  background-size: 61% auto;
  left: 0;
  position: absolute;
  top: 0;
  transition-duration: 1s;
  transition-property: transform, opacity;
  transition-timing-function: cubic-bezier(0, .33, .07, 1.03);
  height: 100%;
  width: 100%;
}

/* .middle-image-wrap {
  width: 100%;
  animation-duration: 1.25s;
  animation-delay: 1.25s;
  position: relative;
  animation-name: zoomIn;
} */
.middle-image-wrap {
  width: 100%;
  position: relative;
  visibility: hidden; /* Keep hidden initially */
  opacity: 0;
}

.middle-image-wrap .middle-image img {
  width: 60%;
  margin-left: 20%;
  object-fit: contain;
}
.small-image-wrap {
  position: absolute;
  top: 43%;
  right: 15%;
  width: 35%;
}

/* Shared animation properties */
.middle-image-wrap,
.about-images-half .motion-image-wrap .motion-image,
.small-image-wrap {
  visibility: hidden; /* Keep hidden initially */
  opacity: 0; /* Start with opacity 0 */
  animation-duration: 1.25s;
  animation-fill-mode: forwards; /* Ensure the final state of the animation is applied */
}

/* Individual animations */
.middle-image-wrap.animate {
  animation-name: zoomInWithVisibility;
  animation-delay: .8s;
}

.about-images-half .motion-image-wrap .motion-image.animate {
  animation-name: zoomInWithVisibility;
  animation-delay: 0s;
}

.small-image-wrap.animate {
  animation-name: zoomInWithVisibility;
  animation-delay: 1s;
}

/* Define the keyframes for the animation */
@keyframes zoomInWithVisibility {
  0% {
    visibility: visible; /* Make it visible at the start of the animation */
    opacity: 0; /* Start with opacity 0 */
    transform: scale(0.8); /* Optional: Add a zoom effect */
  }
  100% {
    visibility: visible; /* Ensure it remains visible */
    opacity: 1; /* Fully visible */
    transform: scale(1); /* End with normal size */
  }
}


.about-text-half {
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: 100%;
  width: 100%;
}
.about-text-half .about-sigil {width:74px;padding-bottom:10px;}
.about-text-half .about-title h1{
  color: #02010100;
  -webkit-text-stroke-width: 1px;
  stroke-width: 1px;
  -webkit-text-stroke-color: #000;
  stroke: #000;
  font-family: "Archivo Black", Sans-serif;
  font-size: 100px;
  font-weight: 800;
  text-transform: uppercase;
  line-height: 1.3;
  letter-spacing: 0.4px;
  padding-bottom: 20px;
}
.about-text-half .about-subtitle h3{
  color: var(--black);
  font-family: "Archivo Black", Sans-serif;
  font-size: 38px;
  font-weight: 800;
  text-transform: uppercase;
  line-height: 1.3;
  letter-spacing: 0.4px;
  padding-bottom: 35px;
}
.about-text-half .about-content p{
  color: var(--black);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.7;
  letter-spacing: 0.4px;
}

/* Athletes section */
.section-athletes,.section-creators{
  background: url(https://www.flowsports.gr/wp-content/uploads/2024/11/shape_bg-1-1.png);
  background-position: center 30%;
  background-repeat: no-repeat;
  background-size: cover;
  padding: 10px;
  opacity: 1;
  transition: background 0.3s, border-radius 0.3s, opacity 0.3s;
  padding: 150px 0  100px 0;
}
.section-title{
  color: var(--black);
  font-family: "Archivo Black", Sans-serif;
  font-size: 30px;
  font-weight: 800;
  text-transform: uppercase;
  line-height: 1.3;
  letter-spacing: 0.4px;
  display: flex;
  align-items: center;
}
.carousel-item.slick-slide{
  padding-inline: 25px;
}
.carousel-item .carousel-text{
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-top: 25px;
  font-weight: 800;
}
.carousel-item .carousel-text h3{
  font-family: "Archivo Black", Sans-serif;
  font-size: 20px;
}
.carousel-item .carousel-text p{
  font-size: 16px;
  color: var(--black);
}
.insta-name{
  display: flex;
  align-items: flex-end;
  justify-content: center;
  line-height: 1.1;
  gap: 5px;
  padding-top:10px;
}
.client-carousel .slick-track{padding-bottom:30px;}
.client-carousel .slick-dots li{margin:0}
.client-carousel .slick-dots li button:before{font-size:20px}

/* Services Section */
.section-services .big-lead-wrap{
  display: flex;
  justify-content: flex-end;
  width: 100%;
}
.section-services .big-lead{width:80%;}
.section-services .big-lead h2{
  font-family: "Archivo Black", Sans-serif;
  font-size: 38px;
  font-weight: 600;
  text-transform: uppercase;
  line-height: 1.3em;
  letter-spacing: 0.4px;
  margin: 150px 0;
}
.service-card {
  position: relative;
  border: 2px solid #000;
  height: 486px;
  margin-bottom:40px;
}
.service-card-front{
  height:100%;
  opacity: 1;
  transition: opacity 1s ease-in-out;
}
.service-card-inner {
  padding: 60px;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
}
.service-card-inner .service-card-image{width:100%;margin-bottom:20px}
.service-card-inner .service-card-image img{width:40%;}
.service-card-title{
  color: var(--black);
  font-family: "Archivo Black", Sans-serif;
  font-size: 20px;
  font-weight: 800;
  text-transform: uppercase;
  line-height: 1.3;
  letter-spacing: 0.4px;
  margin: 5px 0 10px 0;
}
.service-card-back{
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  background: var(--orange);
  opacity: 0;
  transition: opacity 1s ease-in-out;
}
.service-card-back .service-card-title{
  margin: 0 0 20px 0;
  color: #fff;
}
.service-card-back .service-card-desc p{
  color: #fff;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.7;
  letter-spacing: 0.4px;
  margin: 0 0 20px 0;
}
.service-card:hover .service-card-front{
  opacity: 0;
  transition: opacity 1s ease-in-out;
}
.service-card:hover .service-card-back{
  opacity: 1;
  transition: opacity 1s ease-in-out;
}

/* Banner Section */
.banner-lead-section {background:#212122;margin-bottom: 60px;padding: 150px 0px 150px 100px;    background-image: url(https://www.flowsports.gr/wp-content/uploads/2024/11/bg_img_shape-1.png);background-position: 306px 0px;background-repeat: no-repeat;background-size: cover;opacity: 1;transition: background 0.3s, border-radius 0.3s, opacity 0.3s;}
.banner-lead-inner{display:flex;justify-content:space-between;margin-left:auto;margin-right:auto;position:relative;}
.banner-wrap{font-family: "Archivo Black", Sans-serif;font-size: 90px;font-weight: 800;margin: 20px 0;color:#fff;}
.banner-sigil{width:74px;filter:invert(1);}
.counter-wrap{display:flex;align-items:center;justify-content:flex-start;flex-wrap:wrap;color:var(--orange);}
.number-counter-wrap{display:flex;align-items:center;}
.number-counter{margin:0 0 0 20px}

.collage-image {
  /* background-image: url(https://www.flowsports.gr/wp-content/uploads/2024/11/Large_Image2.png);
  background-position: top left;
  background-repeat: no-repeat;
  background-size: contain; */
  width: 100%;
  height: 100%;
  position:relative;
}
.floating-image-wrap{
  width:40%;
  height:100%;
  position:absolute;
  top: 0;
}
.floating-image{
  margin: 0;
  background-image: url(https://www.flowsports.gr/wp-content/uploads/2024/11/Floating_Image.png);
  background-position: top left;
  background-repeat: no-repeat;
  background-size: 50% auto;
  height:100%;
  transform: translateY(50px);
  transition: transform 0.1s linear;
}

/* Footer */
.is-site-footer{background:var(--orange);}
.is-site-footer .maxgridrow{padding:80px;}
.is-site-footer .logo{max-width:200px;margin:0 auto;}
.is-site-footer .footer-col-text{color:#fff;font-size:20px;font-family:'Archivo Black', sans-serif;font-weight:800;line-height:1.3;letter-spacing:0.4px;margin-bottom:30px;}
.social-links{display:flex;gap:20px;align-items:center;}
.is-site-footer .contact-wrap div{margin-bottom:12px;}
.is-site-footer .contact-wrap p,.is-site-footer .contact-wrap a{color:#e7e7e7;font-size:16px;font-weight:800;}
.is-site-footer .contact-wrap a{text-decoration:underline;}


@media screen and (max-width: 1500px){
  .about-text-half .about-title h1{
    font-size: 80px;
  }
  .about-images-half .motion-image-wrap .motion-image{
    background-size: 65% auto;
  }
  .small-image-wrap{width:40%;right: 10%;}
}



.burger-btn-wrap{height: 100%;}
.header-narrow #burger{width:45px;cursor:pointer}
.header-narrow #burger span:nth-child(2){margin-block:8px}
.header-narrow #burger span:nth-child(3),.header-narrow #burger:hover span:nth-child(2){width:60%;transition: width .5s ease-in-out;}
.header-narrow #burger:hover span:nth-child(3),.header-narrow #burger span:nth-child(2){width:100%;transition: width .5s ease-in-out;}
.header-narrow #burger span{width:100%;background:#000;display:block;height:4px}
.header-narrow #burger:hover span{background:var(--orange)}


#burger-aside {
  transition: all .5s ease;
  position: fixed;
  right: -300px;
  top: 0;
  bottom: 0;
  z-index: 15;
  width: 300px;
  overflow-x: hidden;
  color: #434343;
}
#burger-aside::-webkit-scrollbar{display:none}
#burger-aside.active {
  right: -10px;
  transition: all .5s ease;
}
#burger-aside .centered-logo {
  padding-top: 30px;
}
#burger-aside .centered-logo .logo{
  max-width: 150px;
  margin: 0 auto;
}
#burger-aside #close-burger {
  position: absolute;
  width: 18px;
  height: 18px;
  top: 23px;
  right: 18px;
  cursor: pointer;
  z-index: 1;
}#burger-aside #close-burger svg{
  transform: scale(1);
  transition: transform .3s ease;
}#burger-aside #close-burger svg:hover{
  transform: scale(1.6);
  transition: transform .3s ease;
}
#burger-aside .burger-menu-inner {
  width: 290px;
  background-color: var(--orange);
  min-height: 100vh;
  position: relative;
  padding:10px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.body-overlay {
  display: none;
  position: absolute;
  background: black;
  top: 0;
  bottom: -20px;
  left: 0;
  right: 0;
  z-index: 10;
  opacity: .6;
}
#burger-aside .menu-item a{
  display: block;
  font-size: 18px;
  font-weight: 500;
  color: #fff;
  padding: 10px 0;
  border-bottom: 1px solid rgba(0, 0, 0, .06);
  text-align: center;
}
#burger-aside .menu-item:hover a{
  background: #fff;
  color: var(--orange);
}

.burger-menu-footer{margin-bottom:30px;}
.burger-menu-footer .social-text{display:none;}
.burger-menu-footer .social-links{justify-content:center;}
.burger-menu-footer .social-link.facebook-link{width: 30px;height: 30px;}
.burger-menu-footer .social-link.instagram-link{width: 27px;height: 27px;}
.burger-menu-footer .social-link.tiktok-link{width: 25px;height: 25px;}
.burger-menu-footer .social-link.x-link{width: 24px;height: 24px;}

.burger-menu-footer .social-link svg{width:100%;height:100%;}

html:has(body.burger-open) {
  overflow-y: hidden;
}
body {position: relative;}
body.burger-open .body-overlay {
  display: block;
}

@media screen and (max-width: 1023px){
  header .logo{max-width:120px;}
  .header-narrow #burger{width:35px}
  .header-narrow #burger span{height:3.2px;}
  .header-narrow #burger span:nth-child(2){margin-block:6px}
  .hero-row{height:100vh}
  .hero-row .background-hero{background-image: url(https://www.flowsports.gr/wp-content/uploads/2024/11/Main_Image_Mobile3.gif);background-position:center 80%}
  .section-about .about-main-cols{flex-direction:column-reverse;}
  .section-about .about-text-half{padding:0 20px;}
  .about-text-half .about-title h1{font-size:54px;}
  .about-text-half .about-subtitle h3{font-size:26px;}
  .section-services .maxgridrow{padding:0 20px}
  .section-services .big-lead-wrap{justify-content:flex-start}
  .section-services .big-lead{width:100%}
  .section-services .big-lead h2{font-size:26px}

  .banner-lead-section{padding:100px 20px}
  .banner-wrap{font-size:54px}
  .banner-lead-section .collage-image .thumb-holder{padding-bottom:54%}

  .is-site-footer .footer-col-text{margin-bottom:20px}
}
@media screen and (max-width: 768px){
  .maxgridrow{padding:0 12px}
  header.is-site-header{padding:20px 20px;}
  header .logo{max-width:80px;}

  .flow-section.section-about{margin-top:50px}
  .about-text-half .about-sigil{width:37px}
  .about-text-half .about-title h1{font-size:24px;padding-bottom:10px}
  .about-text-half .about-subtitle h3{font-size:20px;padding-bottom:10px}

  .banner-wrap{font-size:24px}
  .title-sep{width:100%}
}