.elementor-kit-30{--e-global-color-primary:#2C344E;--e-global-color-secondary:#708090;--e-global-color-text:#02060E;--e-global-color-accent:#D1BE9C;--e-global-color-16bfc88:#EFEFEF;--e-global-color-ff6b6e3:#003366;--e-global-typography-primary-font-family:"Inter";--e-global-typography-primary-font-size:34px;--e-global-typography-primary-font-weight:600;--e-global-typography-primary-text-transform:none;--e-global-typography-primary-line-height:1.1em;--e-global-typography-primary-letter-spacing:0.5px;--e-global-typography-secondary-font-family:"Inter";--e-global-typography-secondary-font-size:20px;--e-global-typography-secondary-font-weight:600;--e-global-typography-secondary-text-transform:none;--e-global-typography-secondary-line-height:1.2em;--e-global-typography-secondary-letter-spacing:0px;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-size:20px;--e-global-typography-text-font-weight:400;--e-global-typography-text-text-transform:none;--e-global-typography-text-line-height:1.5em;--e-global-typography-text-letter-spacing:0px;--e-global-typography-accent-font-family:"Inter";--e-global-typography-accent-font-size:14px;--e-global-typography-accent-font-weight:600;--e-global-typography-accent-text-transform:none;--e-global-typography-accent-line-height:1.1em;--e-global-typography-accent-letter-spacing:0.3px;background-color:#FFFFFF;color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );text-transform:var( --e-global-typography-text-text-transform );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );overscroll-behavior:none;--e-page-transition-entrance-animation:e-page-transition-fade-out;--e-page-transition-animation-duration:800ms;--e-preloader-animation-duration:1000ms;--e-preloader-delay:300ms;--e-preloader-color:var( --e-global-color-ff6b6e3 );--e-preloader-size:32px;}.elementor-kit-30 button,.elementor-kit-30 input[type="button"],.elementor-kit-30 input[type="submit"],.elementor-kit-30 .elementor-button{background-color:var( --e-global-color-16bfc88 );font-family:"Inter", Sans-serif;font-weight:600;letter-spacing:1px;text-shadow:0px 1px 1px rgba(0, 0, 0, 0.3);color:var( --e-global-color-primary );box-shadow:0px 4px 10px 0px #000000;}.elementor-kit-30 button:hover,.elementor-kit-30 button:focus,.elementor-kit-30 input[type="button"]:hover,.elementor-kit-30 input[type="button"]:focus,.elementor-kit-30 input[type="submit"]:hover,.elementor-kit-30 input[type="submit"]:focus,.elementor-kit-30 .elementor-button:hover,.elementor-kit-30 .elementor-button:focus{background-color:var( --e-global-color-16bfc88 );color:var( --e-global-color-accent );}.elementor-kit-30 p{margin-block-end:53px;}.elementor-kit-30 a{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );text-transform:var( --e-global-typography-secondary-text-transform );line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-kit-30 a:hover{color:var( --e-global-color-primary );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );text-transform:var( --e-global-typography-text-text-transform );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-kit-30 h1{color:var( --e-global-color-primary );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );text-transform:var( --e-global-typography-primary-text-transform );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-kit-30 h2{color:var( --e-global-color-primary );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );text-transform:var( --e-global-typography-secondary-text-transform );line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-kit-30 h3{color:var( --e-global-color-primary );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );text-transform:var( --e-global-typography-secondary-text-transform );line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-kit-30 h4{color:var( --e-global-color-accent );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );text-transform:var( --e-global-typography-secondary-text-transform );line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-kit-30 h5{color:var( --e-global-color-primary );font-family:"Montserrat", Sans-serif;font-size:17px;font-weight:500;text-transform:uppercase;line-height:1.1em;letter-spacing:0.3px;}.elementor-kit-30 h6{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );text-transform:var( --e-global-typography-accent-text-transform );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-kit-30 img{border-style:none;border-radius:0px 0px 0px 0px;transition-duration:0.4s;}.elementor-kit-30 img:hover{filter:brightness( 112% ) contrast( 100% ) saturate( 100% ) blur( 0px ) hue-rotate( 0deg );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1200px;}.e-con{--container-max-width:1200px;--container-default-padding-top:10px;--container-default-padding-right:10px;--container-default-padding-bottom:10px;--container-default-padding-left:10px;}.elementor-widget:not(:last-child){margin-block-end:10px;}.elementor-element{--widgets-spacing:10px 10px;--widgets-spacing-row:10px;--widgets-spacing-column:10px;}{}.entry-title{display:var(--page-title-display);}.elementor-lightbox{background-color:var( --e-global-color-primary );--lightbox-ui-color:var( --e-global-color-accent );}.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-kit-30{--e-global-typography-primary-font-size:28px;--e-global-typography-secondary-font-size:20px;--e-global-typography-text-font-size:19px;--e-global-typography-accent-font-size:14px;font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-kit-30 p{margin-block-end:0.1rem;}.elementor-kit-30 a{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-kit-30 a:hover{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-kit-30 h1{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-kit-30 h2{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-kit-30 h3{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-kit-30 h4{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-kit-30 h5{font-size:20px;}.elementor-kit-30 h6{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.e-con{--container-default-padding-top:7px;--container-default-padding-right:6px;--container-default-padding-bottom:7px;--container-default-padding-left:6px;}}@media(max-width:767px){.elementor-kit-30{--e-global-typography-primary-font-size:24px;--e-global-typography-primary-line-height:1.1em;--e-global-typography-secondary-font-size:20px;--e-global-typography-text-font-size:19px;--e-global-typography-text-line-height:1.6em;--e-global-typography-accent-font-size:14px;font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-kit-30 p{margin-block-end:0.1em;}.elementor-kit-30 a{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-kit-30 a:hover{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-kit-30 h1{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-kit-30 h2{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-kit-30 h3{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-kit-30 h4{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-kit-30 h5{font-size:19px;}.elementor-kit-30 h6{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-kit-30 button,.elementor-kit-30 input[type="button"],.elementor-kit-30 input[type="submit"],.elementor-kit-30 .elementor-button{padding:0px 0px 0px 0px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* =====================================================
   GLOBAL TYPOGRAPHY (MOBILE / TABLET)
   ===================================================== */

@media (max-width: 1024px){
  h1, h2, h3,
  .elementor-heading-title,
  .elementor-post-title{
    text-transform: uppercase;
  }
}


/* =====================================================
   SITE FRAME (OPTIONAL VISUAL BRAND FRAME)
   Remove if you no longer want the side frame
   ===================================================== */

@media (min-width:1025px){
  body{
    border-left:50px solid #2C344E;
    border-right:50px solid #2C344E;
  }
}

@media (min-width:768px) and (max-width:1024px){
  body{
    border-left:20px solid #2C344E;
    border-right:20px solid #2C344E;
  }
}

@media (max-width:767px){
  body{
    border-left:10px solid #2C344E;
    border-right:10px solid #2C344E;
  }
}


/* =====================================================
   MEGA MENU — FORCED OPEN SYSTEM
   ===================================================== */

/* Hide all panels when menu forced open */
body.mm-open .mm-panel{
  visibility:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
  transform:none !important;
  display:none !important;
}

/* Show targeted panel */
body.mm-open.mm-target-mm-programmes #mm-programmes,
body.mm-open.mm-target-mm-earn       #mm-earn,
body.mm-open.mm-target-mm-redeem     #mm-redeem,
body.mm-open.mm-target-mm-flights    #mm-flights,
body.mm-open.mm-target-mm-hotels     #mm-hotels{
  visibility:visible !important;
  opacity:1 !important;
  pointer-events:auto !important;
  display:block !important;
}

/* Stabilise panel animation */
.mm-panel{
  will-change: opacity;
}

.mm-panel a{
  pointer-events:auto;
}


/* =====================================================
   PTP START HERE BUTTON GRID
   ===================================================== */

.ptp-start-buttons{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}

.ptp-start-buttons .elementor-element{
  flex:1 1 calc(50% - 10px);
  min-width:260px;
}

.ptp-start-buttons .elementor-button{
  width:100%;
  display:flex;
  justify-content:center;
  padding:14px 18px;
}

/* Mobile stack */
@media (max-width:767px){
  .ptp-start-buttons .elementor-element{
    flex:1 1 100%;
    min-width:0;
  }
}


/* =====================================================
   LOOP CARD SYSTEM
   ===================================================== */

/* clickable behaviour */
.ptp-card-link,
.ptp-card-link *{
  cursor:pointer;
}

.ptp-card-link{
  display:block;
  text-decoration:none;
  color:inherit;
}

/* card base */
.ptp-card{
  background:#fff;
  transition:transform .18s ease;
}

.ptp-card:hover{
  transform:translateY(-2px);
}

/* image frame */
.ptp-card-media{
  aspect-ratio:3 / 2;
  overflow:hidden;
}

/* image behaviour */
.ptp-card-media img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}/* End custom CSS */