.elementor-kit-5{--e-global-color-primary:#0060FF;--e-global-color-secondary:#000000;--e-global-color-text:#000000;--e-global-color-accent:#0060FF;--e-global-color-024614b:#6321EF;--e-global-color-ebf8023:#515EFF;--e-global-color-8aa25e1:#1424E4;--e-global-color-e09f310:#FF233D;--e-global-color-28da6c8:#02D9B2;--e-global-color-84f0349:#FDCA0D;--e-global-color-229d391:#FF296A;--e-global-color-2a0bad1:#00FF99;--e-global-color-c855e65:#FF8BA0;--e-global-color-8de24c4:#AB52FF;--e-global-typography-primary-font-family:"PP Neue";--e-global-typography-primary-font-weight:normal;--e-global-typography-secondary-font-family:"Almarena";--e-global-typography-secondary-font-weight:normal;--e-global-typography-text-font-family:"PP Neue";--e-global-typography-text-font-weight:normal;--e-global-typography-accent-font-family:"PP Neue";--e-global-typography-accent-font-weight:normal;font-family:"PP Neue", Sans-serif;}.elementor-kit-5 button,.elementor-kit-5 input[type="button"],.elementor-kit-5 input[type="submit"],.elementor-kit-5 .elementor-button{background-color:#000000;font-weight:500;color:#FFFFFF;border-style:none;border-radius:300px 300px 300px 300px;padding:0.7em 1em 0.7em 1em;}.elementor-kit-5 a{color:#000000;}.elementor-kit-5 a:hover{color:#000000;}.elementor-kit-5 h1{font-family:"Almarena", Sans-serif;}.elementor-kit-5 h2{font-family:"Almarena", Sans-serif;}.elementor-kit-5 h3{font-family:"PP Neue", Sans-serif;font-weight:500;}.elementor-kit-5 h4{font-family:"Almarena", Sans-serif;}.elementor-kit-5 h6{font-family:"PP Neue", Sans-serif;font-weight:normal;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1300px;}.e-con{--container-max-width:1300px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.elementor-lightbox{background-color:#000000;--lightbox-ui-color:#FFFFFF;--lightbox-ui-color-hover:#FFFFFF;--lightbox-text-color:#000000;}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-5 button,.elementor-kit-5 input[type="button"],.elementor-kit-5 input[type="submit"],.elementor-kit-5 .elementor-button{padding:0.5em 0.8em 0.5em 0.8em;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS */p:first-of-type { margin-bottom:0px !important; margin-top:0px !important}





.post-tags {
    display: none !important;
    
}

.hentry .category-events .elementor-post-info__item--type-date {
    display: none !important;
    
}

strong {font-weight: bold !important;}
    

html, body {
  overflow-x: hidden;
}

.site-header  {
    display: none !important;
;

}


::-moz-selection { /* Code for Firefox */
  color: white;
  background: #0060FF;
}

::selection {
  color: white;
  background: #0060FF;
}



/* tpf grid system */

.grid-tpf {
    
   padding: min(80px, 8.3vw) !important;
    
}

.grid-tpf-top {
    
   padding-top: min(80px, 8.3vw) !important;
    
}

.grid-tpf-top-sml {
    
   padding-top: min(40px, 8.3vw) !important;
    
}

.grid-tpf-btm {
    
   padding-bottom: min(80px, 8.3vw) !important;
    
}

.grid-tpf-btm-sml {
    
   padding-bottom: min(40px, 8.3vw) !important;
    
}

.grid-tpf-left {
    
   padding-left: min(80px, 8.3vw) !important;
    
}

.grid-tpf-right {
    
   padding-right: min(80px, 8.3vw) !important;
    
}



/* tpf fonts */

.large-home h1 {
    

    
    font-size: calc(70px + (780 - 70) * ((100vw - 300px) / (1920 - 300))) !important;
    line-height: 100% !important;
    -webkit-marquee-increment: 0vw ;
    -webkit-font-smoothing: antialiased;
   
}

@media screen and (max-width: 767px) { .large-home h1 { font-size: 70px !important; } } 
@media screen and (min-width: 1920px) { .large-home h1 { font-size: 780px !important; } } 

h1 {
    
    font-size: calc(45px + (120 - 45) * ((100vw - 300px) / (1920 - 300))) !important;
    line-height: 1.1 !important;


    
    -webkit-marquee-increment: 0vw ;
    -webkit-font-smoothing: antialiased;
   
    
}

@media screen and (max-width: 767px) { h1 { font-size: 45px !important; } } 
@media screen and (min-width: 1920px) { h1 { font-size: 120px !important; } } 




.services-text h2 {
    
    font-size: calc(45px + (140 - 45) * ((100vw - 300px) / (1920 - 300))) !important;
    line-height: 1.1 !important;
   


    
    -webkit-marquee-increment: 0vw ;
    -webkit-font-smoothing: antialiased;
   
    
}

@media screen and (max-width: 767px) { .services-text h2 { font-size: 45px !important; } } 
@media screen and (min-width: 1920px) { .services-text h2 { font-size: 140px !important; } } 


h2 {
    
    font-size: calc(35px + (90 - 35) * ((100vw - 300px) / (1920 - 300))) !important;
    line-height: 100% !important;

    -webkit-marquee-increment: 0vw ;
    -webkit-font-smoothing: antialiased;
   
    
}

@media screen and (max-width: 767px) { h2 { font-size: 35px !important; } } 
@media screen and (min-width: 1920px) { h2 { font-size: 90px !important; } } 

h3 {
    
    font-size: calc(25px + (35 - 25) * ((100vw - 300px) / (1920 - 300))) !important;
    line-height: 100% !important;
    margin-top:0.8em;
    -webkit-marquee-increment: 0vw ;
    -webkit-font-smoothing: antialiased;
   
    
}

@media screen and (max-width: 767px) { h3 { font-size: 25px !important; } } 
@media screen and (min-width: 1920px) { h3 { font-size: 35px !important; } } 




.h1-hero h1 {
    
    font-size: calc(25px + (50 - 25) * ((100vw - 300px) / (1920 - 300))) !important;
    line-height: 1.1 !important;
e-increment: 0vw ;
    -webkit-font-smoothing: antialiased;
   
    
}

@media screen and (max-width: 767px) { .h1-hero h1 { font-size: 25px !important; } } 
@media screen and (min-width: 1920px) { .h1-hero h1 { font-size: 35px !important; } } 


h4 {
    
    font-size: calc(25px + (70 - 25) * ((100vw - 300px) / (1920 - 300))) !important;
    line-height: 100% !important;

    -webkit-marquee-increment: 0vw ;
    -webkit-font-smoothing: antialiased;
    margin-top: 0;
    margin-bottom: 0;
   
    
}

@media screen and (max-width: 767px) { h4 { font-size: 25px !important; } } 
@media screen and (min-width: 1920px) { h4 { font-size: 70px !important; } } 




.elementor-icon-box-title {
     font-size: calc(15px + (25 - 15) * ((100vw - 300px) / (1920 - 300))) !important;
    line-height: 100% !important;
    -webkit-marquee-increment: 0vw ;
    -webkit-font-smoothing: antialiased;
    
}

 .elementor-icon-box-wrapper {
    text-align: center;
    display: flex;
    align-content: center;
    flex-direction: row;
    align-items: center;
}


.elementor-widget-icon-box.elementor-position-left .elementor-icon-box-icon, .elementor-widget-icon-box.elementor-position-right .elementor-icon-box-icon {
    display: flex !important;
    flex: unset;
}


@media screen and (max-width: 767px) { .elementor-icon-box-title { font-size: 15px !important; } } 
@media screen and (min-width: 1920px) { .elementor-icon-box-title { font-size: 25px !important; } } 



 .elementor-testimonial__name {
    color: #FFFFFF;
     font-size: calc(20px + (35 - 20) * ((100vw - 300px) / (1920 - 300))) !important;
    line-height: 100% !important;
    -webkit-marquee-increment: 0vw ;
    -webkit-font-smoothing: antialiased;
}

@media screen and (max-width: 767px) {  .elementor-testimonial__name { font-size: 20px !important; } } 
@media screen and (min-width: 1920px) {  .elementor-testimonial__name { font-size: 35px !important; } } 

.case-study-ex {
    font-size: calc(14px + (25 - 14) * ((100vw - 300px) / (1920 - 300))) !important;
    line-height: 125% !important;

    -webkit-marquee-increment: 0vw ; 
    
}

@media screen and (max-width: 767px) { .case-study-ex { font-size: 14px !important; } } 
@media screen and (min-width: 1600px) { .case-study-ex { font-size: 25px !important; } }

p {
    font-size: calc(16px + (25 - 16) * ((100vw - 300px) / (1920 - 300))) !important;
    line-height: 125% !important;
    margin-top:0.8em;
    -webkit-marquee-increment: 0vw ; 
    
}

@media screen and (max-width: 767px) { p { font-size: 16px !important; } } 
@media screen and (min-width: 1600px) { p { font-size: 25px !important; } }

.elementor-nav-menu {
  font-size: calc(13px + (20 - 13) * ((100vw - 300px) / (1920 - 300))) !important;
    line-height: 125% !important;

    -webkit-marquee-increment: 0vw ; 
    
}

@media screen and (max-width: 767px) { .elementor-nav-menu { font-size: 13px !important; } } 
@media screen and (min-width: 1600px) { .elementor-nav-menu { font-size: 20px !important; } }


.elementor-button-text {
    font-size: calc(13px + (20 - 13) * ((100vw - 300px) / (1920 - 300))) !important;
    line-height: 125% !important;

    -webkit-marquee-increment: 0vw ; 
    
}

@media screen and (max-width: 767px) { .elementor-button-text { font-size: 13px !important; } } 
@media screen and (min-width: 1600px) { .elementor-button-text { font-size: 20px !important; } }


.e-text-path {
    
   font-size: calc(16px + (27 - 16) * ((100vw - 300px) / (1920 - 300))) !important;
    line-height: 125% !important;
    margin-top:0.8em;
    -webkit-marquee-increment: 0vw ;
}






.skills-list {
    font-size: calc(16px + (25 - 16) * ((100vw - 300px) / (1920 - 300))) !important;
    line-height: 125% !important;
    margin-top:0.8em;
    -webkit-marquee-increment: 0vw ; 
    
}

@media screen and (max-width: 767px) {.skills-list  { font-size: 16px !important; } } 
@media screen and (min-width: 1600px) { .skills-list  { font-size: 25px !important; } }

.right-terms {
    font-size: calc(16px + (25 - 16) * ((100vw - 300px) / (1920 - 300))) !important;
    line-height: 125% !important;

    -webkit-marquee-increment: 0vw ; 
    
}

@media screen and (max-width: 767px) { .right-terms   { font-size: 16px !important; } } 
@media screen and (min-width: 1600px) { .right-terms  { font-size: 25px !important; } }

.left-terms {
    font-size: calc(16px + (25 - 16) * ((100vw - 300px) / (1920 - 300))) !important;
    line-height: 125% !important;

    -webkit-marquee-increment: 0vw ; 
    
}

@media screen and (max-width: 767px) { .left-terms { font-size: 16px !important; } } 
@media screen and (min-width: 1600px) { .left-terms { font-size: 25px !important; } }

.back-term {
  font-size: calc(15px + (25 - 15) * ((100vw - 300px) / (1920 - 300))) !important;
    line-height: 125% !important;

    -webkit-marquee-increment: 0vw ;    
    
}

@media screen and (max-width: 767px) { .back-term { font-size: 16px !important; } } 
@media screen and (min-width: 1600px) { .back-term { font-size: 25px !important; } }




.excerpt-post {
    font-size: calc(16px + (22 - 16) * ((100vw - 300px) / (1920 - 300))) !important;
    line-height: 125% !important;
    -webkit-marquee-increment: 0vw ; 
    
}

@media screen and (max-width: 767px) { .excerpt-post  { font-size: 16px !important; } } 
@media screen and (min-width: 1600px) { .excerpt-post  { font-size: 22px !important; } }






.p-large p {
    font-size: calc(16px + (30 - 16) * ((100vw - 300px) / (1920 - 300))) !important;
    line-height: 125% !important;
    margin-top:0.8em;
    -webkit-marquee-increment: 0vw ; 
    
}

@media screen and (max-width: 767px) { .p-large p { font-size: 16px !important; } } 
@media screen and (min-width: 1600px) { .p-large p { font-size: 30px !important; } }

.p-small p {
    font-size: calc(13px + (22 - 13) * ((100vw - 300px) / (1920 - 300))) !important;
    line-height: 125% !important;
    margin-top:0.8em;
    -webkit-marquee-increment: 0vw ; 
    
}

@media screen and (max-width: 767px) { .p-small p { font-size: 13px !important; } } 
@media screen and (min-width: 1600px) { .p-small p { font-size: 22px !important; } }


.p-x-small p {
    font-size: calc(13px + (17 - 13) * ((100vw - 300px) / (1920 - 300))) !important;
    line-height: 125% !important;
    margin-top:0.8em;
    -webkit-marquee-increment: 0vw ; 
    
}

@media screen and (max-width: 767px) { .p-x-small p { font-size: 13px !important; } } 
@media screen and (min-width: 1600px) { .p-x-small p { font-size: 17px !important; } }

h6 {
    font-size: calc(13px + (17 - 13) * ((100vw - 300px) / (1920 - 300))) !important;
    line-height: 125% !important;
    margin-top:0.8em;
    -webkit-marquee-increment: 0vw ; 
    
}

@media screen and (max-width: 767px) { h6 { font-size: 13px !important; } } 
@media screen and (min-width: 1600px) { h6 { font-size: 17px !important; } }


.p-x-large p {
    font-size: calc(30px + (45 - 30) * ((100vw - 300px) / (1920 - 300))) !important;
    line-height: 125% !important;
    margin-top:0.8em;
    -webkit-marquee-increment: 0vw ; 
    
}

@media screen and (max-width: 767px) { .p-x-large p { font-size: 30px !important; } } 
@media screen and (min-width: 1600px) { .p-x-large p { font-size: 45px !important; } }



/* animated arrows */


.elementor-testimonial__name::after {
  display: inline-block;

  padding-left: 8px;
  content: "\2192";
  -webkit-transition: transform 0.3s ease-out;
  -moz-transition: transform 0.3s ease-out;
  -ms-transition: transform 0.3s ease-out;
  -o-transition: transform 0.3s ease-out;
  transition: transform 0.3s ease-out;
}

.elementor-testimonial__name:hover::after {
  -webkit-transform: translateX(4px);
  -moz-transform: translateX(4px);
  -ms-transform: translateX(4px);
  -o-transform: translateX(4px);
  transform: translateX(4px);
}


.link-underline a::after {
  display: inline-block;

  padding-left: 8px;
  content: "\2192";
  -webkit-transition: transform 0.3s ease-out;
  -moz-transition: transform 0.3s ease-out;
  -ms-transition: transform 0.3s ease-out;
  -o-transition: transform 0.3s ease-out;
  transition: transform 0.3s ease-out;
}

.link-underline a:hover::after {
  -webkit-transform: translateX(4px);
  -moz-transform: translateX(4px);
  -ms-transform: translateX(4px);
  -o-transform: translateX(4px);
  transform: translateX(4px);
}


.link-underline-b a::before {
  display: inline-block;

  padding-right: 8px;
  content: "\2190";
  -webkit-transition: transform 0.3s ease-out;
  -moz-transition: transform 0.3s ease-out;
  -ms-transition: transform 0.3s ease-out;
  -o-transition: transform 0.3s ease-out;
  transition: transform 0.3s ease-out;
}

.link-underline-b a:hover::before {
  -webkit-transform: translateX(-4px);
  -moz-transform: translateX(-4px);
  -ms-transform: translateX(-4px);
  -o-transform: translateX(-4px);
  transform: translateX(-4px);
}



.back-term a::before {
  display: inline-block;

  padding-right: 8px;
  content: "\2190";
  -webkit-transition: transform 0.3s ease-out;
  -moz-transition: transform 0.3s ease-out;
  -ms-transition: transform 0.3s ease-out;
  -o-transition: transform 0.3s ease-out;
  transition: transform 0.3s ease-out;
}

.back-term a:hover::before {
  -webkit-transform: translateX(-4px);
  -moz-transform: translateX(-4px);
  -ms-transform: translateX(-4px);
  -o-transform: translateX(-4px);
  transform: translateX(-4px);
}

.post-title-arrow h3::after {
  display: inline-block;

  padding-left: 8px;
  content: "\2192";
  -webkit-transition: transform 0.3s ease-out;
  -moz-transition: transform 0.3s ease-out;
  -ms-transition: transform 0.3s ease-out;
  -o-transition: transform 0.3s ease-out;
  transition: transform 0.3s ease-out;
}

.post-title-arrow h3:hover::after {
  -webkit-transform: translateX(4px);
  -moz-transform: translateX(4px);
  -ms-transform: translateX(4px);
  -o-transform: translateX(4px);
  transform: translateX(4px);
}


.elementor-button-text::after {
  display: inline-block;

  padding-left: 8px;
  content: "\2192";
  -webkit-transition: transform 0.3s ease-out;
  -moz-transition: transform 0.3s ease-out;
  -ms-transition: transform 0.3s ease-out;
  -o-transition: transform 0.3s ease-out;
  transition: transform 0.3s ease-out;
}

.elementor-button-text:hover::after {
  -webkit-transform: translateX(4px);
  -moz-transform: translateX(4px);
  -ms-transform: translateX(4px);
  -o-transform: translateX(4px);
  transform: translateX(4px);
}


.elementor-icon-box-wrapper .elementor-icon-box-title  a {
  position: relative;
  color: #000;
  text-decoration: none;
}

.elementor-icon-box-wrapper .elementor-icon-box-title  a:hover {
  color: #000;
}

.elementor-icon-box-wrapper  .elementor-icon-box-title   a::before {
  content: "";
  position: absolute;
  display: block;
  width: 100%;
  height: 2px;
  bottom: 0;
  left: 0;
  background-color: #000;
  transform: scaleX(0);
  transition: transform 0.3s ease;
}

.elementor-icon-box-wrapper  .elementor-icon-box-title a:hover::before {
  transform: scaleX(1);
}

.link-underline a{
  --n:4; /* adjust this to control the delay */

  text-decoration:none;
  display:inline-block;
  background:
    linear-gradient(to right,
       #000          calc(100%/var(--n)),
       transparent 0 calc((var(--n) - 1)*100%/var(--n)),
       #000 0) 
    bottom right/
    calc(var(--n)*100%) 1px 
    no-repeat;
}
.link-underline a:hover {
  background-position:bottom left;
  transition:1.5s; /* adjust this to control the total duration */
}

.link-underline-b a{
  --n:4; /* adjust this to control the delay */

  text-decoration:none;
  display:inline-block;
  background:
    linear-gradient(to right,
       #000          calc(100%/var(--n)),
       transparent 0 calc((var(--n) - 1)*100%/var(--n)),
       #000 0) 
    bottom right/
    calc(var(--n)*100%) 1px 
    no-repeat;
}
.link-underline-b a:hover {
  background-position:bottom left;
  transition:1.5s; /* adjust this to control the total duration */
}


 /* Improved Animations Stylesheet from https://element.how/elementor-improve-entrance-animations/ , works for the 'fade' animations */

@keyframes fadeDown {
    from {
        opacity: 0;
        transform: translate3d(0,-30px,0)
    }

    to {
        opacity: 1;
        transform: none
    }
}

.elementor-element.fadeInDown {
    animation-name: fadeDown
}

@keyframes fadeLeft {
    from {
        opacity: 0;
        transform: translate3d(-30px,0,0)
    }

    to {
        opacity: 1;
        transform: none
    }
}

.elementor-element.fadeInLeft {
    animation-name: fadeLeft
}

@keyframes fadeRight {
    from {
        opacity: 0;
        transform: translate3d(30px,0,0)
    }

    to {
        opacity: 1;
        transform: none
    }
}

.elementor-element.fadeInRight {
    animation-name: fadeRight
}

@keyframes fadeUp {
    from {
        opacity: 0;
        transform: translate3d(0,30px,0)
    }

    to {
        opacity: 1;
        transform: none
    }
}

.elementor-element.fadeInUp {
    animation-name: fadeUp
}

@media only screen and (max-width: 1024px) {
 .elementor-toggle .elementor-tab-title .elementor-toggle-icon svg {
    margin-inline-start: -5px;
    width: 40px !important;
    height: 40px !important;
    margin-top:-10px;
}
}

 .elementor-toggle .elementor-tab-title .elementor-toggle-icon svg {
    margin-inline-start: -5px;
    width: 60px;
    height: 60px;
}




    
    

.elementor-icon-list-text {

        padding: 0.7em 1em 0.7em 1em;
    border: 1px;
    border-style: solid;
    border-color: black;
    border-radius: 100em;
    
    color: black !important;
    
      font-size: calc(13px + (15 - 13) * ((100vw - 300px) / (1920 - 300))) !important;
    line-height: 125% !important;

    -webkit-marquee-increment: 0vw ; 
    
}

@media screen and (max-width: 767px) { .elementor-icon-list-text { font-size: 13px !important; } } 
@media screen and (min-width: 1600px) { .elementor-icon-list-text { font-size: 15px !important; } }/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'PP Neue';
	font-style: normal;
	font-weight: normal;
	font-display: auto;
	src: url('https://epicadventurebattersea.tpf.london/wp-content/uploads/2023/07/PPNeueMontreal-Book.woff2') format('woff2'),
		url('https://epicadventurebattersea.tpf.london/wp-content/uploads/2023/07/PPNeueMontreal-Book.woff') format('woff'),
		url('https://epicadventurebattersea.tpf.london/wp-content/uploads/2023/07/PPNeueMontreal-Book.ttf') format('truetype');
}
@font-face {
	font-family: 'PP Neue';
	font-style: normal;
	font-weight: 500;
	font-display: auto;
	src: url('https://epicadventurebattersea.tpf.london/wp-content/uploads/2023/07/PPNeueMontreal-Medium.woff2') format('woff2'),
		url('https://epicadventurebattersea.tpf.london/wp-content/uploads/2023/07/PPNeueMontreal-Medium.woff') format('woff'),
		url('https://epicadventurebattersea.tpf.london/wp-content/uploads/2023/07/PPNeueMontreal-Medium.ttf') format('truetype');
}
/* End Custom Fonts CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Almarena';
	font-style: normal;
	font-weight: normal;
	font-display: auto;
	src: url('https://epicadventurebattersea.tpf.london/wp-content/uploads/2023/07/AlmarenaDisplayRegular.woff2') format('woff2'),
		url('https://epicadventurebattersea.tpf.london/wp-content/uploads/2023/07/AlmarenaDisplayRegular.woff') format('woff'),
		url('https://epicadventurebattersea.tpf.london/wp-content/uploads/2023/07/AlmarenaDisplayRegular.ttf') format('truetype');
}
/* End Custom Fonts CSS */