/*
===========================================================
======================== VARIABLES ========================
===========================================================
*/

:root{

  /* FONTS */
  --font-base:'Plus Jakarta Sans', Arial, sans-serif;
  --font-regular:400;
  --font-bold:600;

  /* COLORS */
  --white:#FCF8F5;
  --primary:#E3542C;
  --primary-dark:#DA2606;
  --black-2:#12100E;
}

/*
===========================================================
========================= GENERAL =========================
===========================================================
*/

body, body.light{
  background-color: var(--white);
  color:var(--black-2);
  font-family: var(--font-base);
  font-size: 18px;
}

.photographer__service-content .wrapper .count{
  font-family: var(--font-base);
}

.has-border--bottom{
  border-bottom:1px solid var(--black-2);
}
.has-border--top{
  border-top:1px solid var(--black-2);
}


/*
===========================================================
========================= COLORS ==========================
===========================================================
*/

.light .body-speaker{
  background-color: var(--white);
}

.light .main-menu li a:hover,
.wc-cursor{
  color:var(--primary);
}
.bg-primary,
.light .speaker-email__area,
.light .footer__area-6{
  background-color: var(--primary) !important;
}

.light p,
.light .athletic__footer-center p,
.light .speaker-email__content .sec-title-16,
.light .speaker-email__content form input[type="email"],
.light .speaker-email__content p,
.light .footer__subtitle-6,
.light .footer__title-6,
.light .footer__content-6 .copytext p,
.photographer__footer-social li a,
.photographer__footer-social li a:hover,
.photographer__footer-links li a,
.photographer__footer-links li a:hover,
.light .speaker-event__btn .wc-btn-circle:hover{
  color:var(--black-2);
}
.light .speaker-email__content form input[type="email"]{
  border-color:var(--black-2);
}

/*
===========================================================
========================= BUTTONS =========================
===========================================================
*/

.wc-btn-border{
  border-radius: 30px;
}


/*
===========================================================
========================= HEADER ==========================
===========================================================
*/

.film-header__logo img{
  max-width: 150px;
}

.speaker-header__inner{
  padding-left: 0px;
  padding-right: 0px;
  position: relative;
}

.main-menu ul.dp-menu{
  background-color: var(--white);
  border:1px solid var(--black-2);
}
.main-menu ul.dp-menu li a{
  color:var(--black-2);
  font-weight: var(--font-regular);
}
.main-menu ul.dp-menu li a:hover{
  letter-spacing: 0;
}

.offcanvas__area .offcanvas{
  width: 100vw;
}
.offcanvas__logo::after{
  content:none;
}

.speaker-header::before{
  position: absolute;
  content: "";
  width: 1px;
  height: 100%;
  top: 0;
  inset-inline-end: 350px;
  background-color: var(--black-2);
}
.film-header__nav{
  justify-content: center;
}
.film-header__navicon .contact-btn{
  font-size: 14px;
  text-transform: uppercase;
}
.film-header__navicon .contact-btn:after{
  content:'';
  position: absolute;
  z-index: -1;
  background-color: var(--primary);
  width: 100%;
  max-width: 0px;
  height: 100%;
  right: -100px;
  top:0;
  transition: max-width .3s ease-in-out;
}
.film-header__navicon .contact-btn:hover:after{
  max-width: 350px;
}
.film-header__navicon .contact-btn img{
  width: 16px;
  transform: rotate(-45deg);
  margin-left: 5px;
}



/*
===========================================================
========================= CONTENT =========================
===========================================================
*/

.has-border-top{
  border-top:1px solid var(--black-2);
}
.has-border-bottom{
  border-bottom:1px solid var(--black-2);
}
.has-border-left{
  border-left:1px solid var(--black-2);
}
.has-border-right{
  border-right:1px solid var(--black-2);
}

.cols-3{
  grid-template-columns: 1fr 1fr 1fr !important;
}


[class^=aspect]{
  object-fit: cover;
  width: 100%;
  height: 100%;
}
.aspect--1{
  aspect-ratio: 1;
}
.aspect--2-3{
  aspect-ratio: 2/3;
}
.aspect--4-5{
  aspect-ratio: 4/5;
}
.aspect--3-2{
  aspect-ratio: 3/2;
}
.aspect--5-4{
  aspect-ratio: 5/4;
}

.sec-title-16{
  font-weight: var(--font-regular);
}

.speaker-hero__inner{
  padding:100px 0;
  display: block;
}
.speaker-hero__inner::after{
  content:none;
}
.speaker-event__inner::before,
.speaker-event__inner::after{
  content:none;
}
.speaker-event__text p{
  text-indent: 0;
}


.speaker-event__top::after{
  inset-inline-start:calc(66% - 1px);
}

.page-header--section{
  padding-top:120px;
  padding-bottom: 90px;
}

.creator-hero__imgs{
  align-items: center;
}
.creator-hero__imgs a{
  border:1px solid var(--black-2);
  border-radius:50%;
  text-align: center;
  line-height: 60px;
  margin-right: 15px;
  width: 60px;
  height: 60px;
  background-color: transparent;
  transition: all .3s ease-in-out;
}
.creator-hero__imgs a:hover{
  background-color: var(--primary);
}


.speaker-hero__title small{
  font-size: 18px;
}

.photographer__service-items{
  grid-gap:0;
}
.photographer__service-item{
  padding:60px 100px 30px;
  border-bottom:1px solid var(--black-2);
}


.works-section .works-section--top{
  display:grid;
  grid-template-columns:50% 50%;
  border-top:1px solid var(--black-2);
  border-bottom:1px solid var(--black-2);
}
.works-section .works-section--bottom{
  display:grid;
  grid-template-columns:33.333% 33.333% 33.333%;
}
.works-section .works-section--bottom .works-card:not(:last-of-type){
  border-right:1px solid var(--black-2);
}
.works-section .works-section--top .works-card:first-of-type{
  border-right:1px solid var(--black-2);
}
.works-card{
/*  min-height: 500px;*/
  display: flex;
  flex-direction: column;
  border-right:1px solid var(--black-2);
}
.works-section .works-card.works-card--title .works-card--title-inner{
  padding: 60px;
  display: flex;
  align-items: end;
}
.works-section .works-card .works-card--title-inner,
.works-card .works-card--img{
  flex:1;
}
/*.works-card .works-card--img img:not('.aspect--1'){
  width: 100%;
  height: 100%;
  object-fit: cover;
  aspect-ratio: 4/5;
}*/
.works-card .works-card--bottom{
  border-top:1px solid var(--black-2);
}
.works-card .works-card--bottom a{
  padding:20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 80%;
  border-bottom:1px solid var(--black-2);
}
.works-section .works-card.works-card--title .works-card--bottom{
  background-color: var(--primary);
  text-transform: uppercase;
  font-weight: var(--font-bold);
}
.works-card .works-card--bottom a .works-card--client{
  font-weight: var(--font-bold);
  text-transform: uppercase;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient:vertical;
  overflow:hidden;
  text-overflow: ellipsis;
}

.services-section .services-section--top{
  border-bottom: 1px solid var(--black-2);
  display: grid;
  grid-template-columns: 50% 50%;
}
.services-section .services-section--bottom{
  display: grid;
  grid-template-columns: 25% 25% 25% 25%;
  position: relative;
  border-bottom: 1px solid var(--black-2);
}
.services-section .services-card:not(:last-of-type),
.services-section .services-card:not(:last-of-type){
  border-right: 1px solid var(--black-2);
}
.services-section .services-card{
  padding:60px;
  flex:1 1 350px;
}
.services-section .services-section--top .services-card.services-card--txt{
  min-height: 400px;
  display: flex;
  flex-direction: row;
  align-items: flex-end;
}
.services-section .services-section--top .services-card.services-card--txt p{
  max-width: 500px;
}
.services-section .services-section--bottom .services-card{
  display: flex;
  flex-direction: column;
}
.services-section .services-section--bottom .services-card img{
  max-height: 85px;
  height: auto;
  width: auto;
  max-width: 85px;
  margin-bottom: 30px;
}
.services-section .services-section--bottom .services-card h4{
  margin-bottom: 15px;
}
.services-page .services-section .services-card:not(:last-of-type){
  border-bottom: 1px solid var(--black-2);
}
.services-page .services-section .services-card:last-of-type{
  border-right: 1px solid var(--black-2);
}

.light .speaker-email__content form img{
  filter: none;
}

.portfolio-page--wrapper .portfolio-page--categories{
  border-top:1px solid var(--black-2);
  border-bottom:1px solid var(--black-2);
  padding:20px 0;
}
.portfolio-page--wrapper .portfolio-page--categories ul{
  display: flex;
  flex-direction: row;
}
.portfolio-page--wrapper .portfolio-page--categories ul li{
  padding-right: 60px;
}
.portfolio-page--wrapper .portfolio-page--categories ul li a{
  display: flex;
  flex-direction: column;
  font-size: 80%;
}

.portfolio-page--wrapper .portfolio-page--projects .pagination{
  padding:60px 0;
}

.motivation__shop{
  padding:0;
  height: 60vh;
  min-height: 500px;
  border-bottom:1px solid var(--black-2);
  background-image: none;
}
.motivation__shop-sign1{
  top:50%;
  transform:translateY(-50%);
  width: 100%;
  inset-inline-end:0;
}
.project-intro .sec-title-wrap{
  border-bottom:1px solid var(--black-2);
  padding-top:60px;
  padding-bottom: 60px;
}
.project-intro .project-intro--info{
  border-bottom:1px solid var(--black-2);
  padding-top:30px;
  padding-bottom:30px;
}
.project-intro .project-intro--info ul{
  display: flex;
  flex-direction: row;
}
.project-intro .project-intro--info ul li{
  display: flex;
  flex-direction: column;
  padding-right: 60px;
}
.project-intro .project-intro--info ul li span:last-of-type{
  font-weight: var(--font-bold);
}

.project-section .project-section--text{
  padding-top:150px;
  padding-bottom:60px;
}
.project-section .project-section--blockquote{
  padding-top:90px;
  padding-bottom:90px;
  text-align: center;
}
.project-section .project-section--blockquote .sec-title-3{
  line-height: 1.3;
  font-weight: var(--font-regular);
}

.project-section .project-gallery{
  border-top:1px solid var(--black-2);
  /*display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  grid-template-rows: auto auto;
  grid-auto-rows: 0px;*/
  position: relative;
  overflow: hidden;
}
.project-section .project-gallery .project-gallery--item{
/*  min-height: 500px;*/
  display: inline-block;
}
.project-section .project-gallery .project-gallery--item img{
  height: 100%;
  width:100%;
  object-fit: cover;
}
.project-section .project-gallery .project-gallery--item{
  border-right:1px solid var(--black-2);
  border-bottom:1px solid var(--black-2);
}

.section-txt-image{
  border-top:1px solid var(--black-2);
  border-bottom:1px solid var(--black-2);
  display: grid;
  grid-template-columns: 50% 50%;
}
.section-txt-image .section-txt-image--txt{
  padding:120px 100px;
  position: relative;
}
.section-txt-image .section-txt-image--txt.img-hover img{
  position: absolute;
  transition: all .3s ease-in-out;
  top:50%;
  left:50%;
  transform:translate(-50%, -50%);
  opacity: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 0;
}
.section-txt-image .section-txt-image--txt.img-hover:after{
  content:'';
  position: absolute;
  top:0;
  left:0;
  height: 100%;
  width: 100%;
  opacity: 0;
  background-color: var(--black-2);
  transition: all .3s ease-in-out;
  z-index: 1;
}
.section-txt-image .section-txt-image--txt.img-hover:hover:after{
  opacity: .6;
  transition: all .3s ease-in-out;
}
.section-txt-image .section-txt-image--txt.img-hover:hover *{
  color:var(--white);
  transition: all .3s ease-in-out;
}
.section-txt-image .section-txt-image--txt.img-hover:hover img{
  opacity: 1;
}
.section-txt-image .section-txt-image--txt.img-hover h2,
.section-txt-image .section-txt-image--txt.img-hover .cf_text{
  z-index: 2;
  position: relative;
}

.section-txt-image .section-txt-image--img{

}
.section-txt-image > div:first-of-type{
  border-right: 1px solid var(--black-2);
}
.section-txt-image .section-txt-image--img img{
  height: 100%;
  width: 100%;
  object-fit: cover;
}


.logo-grid--wrapper{
  display: flex;
  justify-content: space-between;
  border-top:1px solid var(--black-2);
  border-bottom:1px solid var(--black-2);
}
.logo-grid--wrapper .logo-item{
  padding:30px;
  flex:1 0 0%;
  text-align: center;
}
.logo-grid--wrapper .logo-item:not(:last-of-type){
  border-right:1px solid var(--black-2);
}
.logo-grid--wrapper .logo-item img{
  max-width: 150px;
}


.arrow-list li b img{
  width: 20px;
  height: auto;
  display: inline-block;
  margin:0 10px 0 5px;
}

.team-wrapper {
  border:1px solid var(--black-2);
  margin-bottom: 40px;
}
.team-wrapper .team-img{
  width: 100%;
  aspect-ratio: 1;
  padding:60px;
  background-color: #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
}
.team-wrapper .team-desc{
  padding: 30px;
  border-top: 1px solid black;
}

ul.list-style li{
  list-style-type: disc;
  list-style-position: inside;
}
ul.contacts-wrapper li{
  margin-bottom: 20px;
}
ul.contacts-wrapper li a{
  font-size: 18px;
  line-height: 1.5;
}

/*
===========================================================
========================= FOOTER ==========================
===========================================================
*/

footer.athletic__footer{
  grid-template-columns: 20% 60% 20%;
  border-top:1px solid var(--black-2);
  padding-top:0;
  padding-bottom:0;
  gap:0;
}
footer.athletic__footer > div{
  padding:30px;
}
footer .athletic__footer-center{
  border-left: 1px solid var(--black-2);
  border-right:1px solid var(--black-2);
}
footer .athletic__footer-center p{
  font-size: 80%;
  font-weight: var(--font-regular);
}
footer .athletic__footer-center p a{
  font-weight: var(--font-bold);
}
footer .athletic__footer-right{
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
}

.speaker-email__area{
  border-bottom:1px solid var(--black-2);
  border-top:1px solid var(--black-2);
}

.footer__content-6 .copytext p,
.photographer__footer-links li a{
  text-transform: none;
}

.wc-cursor.text::before{
  background:var(--black-2);
}


/* MODAL */
#contactModal .modal-content{
  background-color: var(--white);
  border:1px solid var(--black-2);
  border-radius: 0;
}
#contactModal .modal-header{
  border:none;
  padding:60px 60px 0 60px;
}
#contactModal .modal-body{
  padding:60px;
}
textarea{
  border:none;
  border-bottom: 1px solid var(--black-2);
  background-color: transparent;
  width: 100%;
  color: var(--black-2);
  color: currentColor;
  padding-bottom: 5px;
}
textarea:focus{
  outline: 0;
}
textarea::placeholder{
  color:currentColor;
}
input[type="checkbox"]{
  -webkit-appearance:checkbox;
}


/*
===========================================================
======================= MEDIA QUERY =======================
===========================================================
*/

@media only screen and (max-width: 1919px){
  .speaker-event__people,
  .speaker-event__text{
    padding:90px 60px;
  }
}

@media (min-width: 1400px){
  .container-fluid{
    padding-right: 100px;
    padding-left: 100px;
  }
}

@media (min-width:768px){
  .speaker-header__inner{
    grid-template-columns:150px auto 150px;
  }
  #open_offcanvas{
    display: none;
  }
  .speaker-event__top{
    grid-template-columns:33% 33% 33%;
  }
  .speaker-event__top::before{
    position: absolute;
    content: "";
    width: 1px;
    height: 100%;
    inset-inline-start: calc(33% - 1px);
    top: 0;
    background:var(--black-2);
  }
}

@media (max-width:767.98px){
  .cols-3{
    grid-template-columns: 1fr !important;
  }
  .speaker-header__inner{
    grid-gap:24px;
    grid-template-columns: 1fr 1fr;
  }
  .film-header__logo{
    text-align: center;
  }
  #open_offcanvas{
    display: block;
    margin:0 auto;
  }
  .light .offcanvas__area .offcanvas{
    background-color: var(--primary);
  }
  .offcanvas__logo img{
    max-width: 120px;
  }
  .light .offcanvas__menu-wrapper.mean-container .mean-nav ul li a{
    border-color: var(--black-2);
  }
  .offcanvas__menu-wrapper.mean-container .mean-nav ul li a{
    padding:30px 15px;
    font-size: 38px;
  }
  .film-header__navicon .contact-btn{
    display: none;
  }
  .speaker-header::before{
    content:none;
  }
  .speaker-event__people, .speaker-event__text{
    padding:30px;
  }
  .photographer__service-item{
    padding:30px;
  }
  .photographer__service-content .wrapper .count{
    top:3px;
    left:0;
  }
  .photographer__service-content .wrapper{
    padding-left: 30px;
  }
  .works-section .works-section--top,
  .works-section .works-section--bottom,
  .services-section .services-section--top,
  .services-section .services-section--bottom,
  .section-txt-image{
    grid-template-columns: 1fr;
  }
  .services-section .services-card:not(:last-of-type), .services-section .services-card:not(:last-of-type){
    border-right: 0px;
    border-bottom: 1px solid var(--black-2);
  }
  .services-section .services-section--top .services-card.services-card--txt{
    min-height: 300px;
  }
  .services-section .services-card{
    padding:60px 30px;
  }
  .section-txt-image:not(:last-of-type){
    border-bottom: 0px;
  }
  .section-txt-image .section-txt-image--txt{
    padding:60px;
    border-right: 0px;
    border-bottom: 1px solid var(--black-2);
  }
  .portfolio-page--wrapper .portfolio-page--categories ul{
    flex-wrap: wrap;
  }
  .portfolio-page--wrapper .portfolio-page--categories ul li{
    width: 50%;
    padding-bottom: 30px;
    padding-right: 0;
  }
  .portfolio-page--wrapper .portfolio-page--categories ul span{
    display: inline;
  }
  .portfolio-page--wrapper .portfolio-page--categories ul li a{
    flex-direction: row-reverse;
    justify-content: flex-end;
  }
  .portfolio-page--wrapper .portfolio-page--categories ul li a span:first-of-type{
    vertical-align: top;
    font-size: 12px;
    padding-left: 5px;
  }
  #contactModal .modal-header{
    padding:30px 30px 0 30px;
  }
  #contactModal .modal-body{
    padding:30px;
  }
}

.body-speaker h1 .anim-reveal-line {
  line-height: 100px!important;
}

.footer__content-6 .copytext p a:hover {
  color: black!important;
}