/*---------------------------------------------------------------------------------

 Theme Name:   Divi Child
 Theme URI:    https://www.merseyflight.co.uk
 Description:  Child theme for customisations
 Author:       Neil Williams
 Author URI:
 Template:     Divi
 Version:      1.0.0
 License:      GNU General Public License v2 or later
 License URI:  http://www.gnu.org/licenses/gpl-2.0.html

------------------------------ ADDITIONAL CSS HERE ------------------------------*/


/*=====================================================
 MERSEYFLIGHT TIMELINE
 Feature 2 - Marker States
=====================================================*/

/*=====================================================
 BOEING ND COLOURS
=====================================================*/

:root {

    /* Background */
    --mf-bg: #0A0F1C;

    /* Route */
    --mf-route-future:   #5E6672;
    --mf-route-complete: #D8DDE3;
    --mf-route-active:   #FF00FF;

    /* Waypoints */
    --mf-waypoint-future:   #808080;
    --mf-waypoint-complete: #FFFFFF;
    --mf-waypoint-active:   #FF00FF;
    --mf-waypoint-fill:     #202020;

    /* Aircraft */
    --mf-aircraft-stroke: #FF00FF;
    --mf-aircraft-halo:   #171717;

    /* Dimensions */
    --mf-route-width: 2px;
    --mf-active-width: 3px;
    --mf-waypoint-stroke: 1.5px;

    /* Animation */
    --mf-transition: 350ms ease;
}


/*------------------------------------
  Smooth transitions
------------------------------------*/

.et_pb_timeline_card{

    transition:
        opacity .25s ease,
        box-shadow .25s ease;

}

.et_pb_timeline_marker{

    transition:
        opacity .25s ease;

}

/*=====================================================
  TIMELINE MARKER STATES
=====================================================*/

.is-future .et_pb_timeline_marker,
.is-complete .et_pb_timeline_marker,
.is-current .et_pb_timeline_marker {

    background: transparent !important;
    border: none !important;
    box-shadow: none;

}


/*=====================================================
 SVG ROUTE
=====================================================*/

.mf-flightplan{

    position:relative;

}

.mf-flightpath {

    position: absolute;
    inset: 0;

    width: 100%;
    height: 100%;

    pointer-events: none;

    z-index: 1;

    overflow: visible;

}

.mf-flightplan .et_pb_timeline_item {

    position: relative;
    z-index: 2;

}

/*=====================================================
  FLIGHT PATH
=====================================================*/

/* Base route */

.mf-leg {

    fill: none;
    stroke-linecap: round;

    stroke-width: var(--mf-route-width);

    transition:
        stroke var(--mf-transition),
        opacity var(--mf-transition);

}

/* Future */

.mf-leg-future {

    stroke: var(--mf-route-future);
    opacity: .55;

}

/* Completed */

.mf-leg-complete {

    stroke: var(--mf-route-complete);
    opacity: 1;

}

/* Active */

.mf-leg-current {

    stroke: var(--mf-route-active);
    stroke-width: var(--mf-active-width);

    opacity: 1;

    filter:
        drop-shadow(0 0 2px rgba(255,0,204,.9))
        drop-shadow(0 0 6px rgba(255,0,204,.45));

}

/* Progress overlay */

.mf-leg-overlay {

    fill: none;

    stroke: var(--mf-route-active);
    stroke-width: var(--mf-active-width);

    stroke-linecap: round;

    filter:
        drop-shadow(0 0 2px rgba(255,0,204,.9))
        drop-shadow(0 0 6px rgba(255,0,204,.45));

}
/*=====================================================
  Hide native Divi connector
=====================================================*/

.mf-flightplan .et_pb_timeline_connector {
    opacity: 0;
}

.mf-flightpath{

    z-index:1;

}

.mf-flightplan .et_pb_timeline_marker{

    position:relative;

    z-index:10;

}

.mf-flightplan .et_pb_timeline_card{

    position:relative;

    z-index:5;

}

.et_pb_timeline_marker .et-pb-icon{

    opacity:0;

}

/*=====================================================
  WAYPOINTS
=====================================================*/

.mf-waypoint-path {

    fill: none;

    stroke-width: var(--mf-waypoint-stroke);

    transition:
        stroke var(--mf-transition),
        fill var(--mf-transition),
        transform var(--mf-transition);

}

/* Future */

.is-future .mf-waypoint-path {

    fill: none;
    stroke: var(--mf-route-future);

}

/* Current */

.is-current .mf-waypoint-path {

    fill: var(--mf-route-active);
    stroke: var(--mf-route-active);

}

/* Complete */
.is-complete .mf-waypoint-path {

    fill: var(--mf-route-active);
    stroke: var(--mf-route-active);

}

/*=====================================================
 AIRCRAFT
=====================================================*/

.mf-aircraft-icon path {

    fill: #ffffff;
    stroke: none;

    filter:
        drop-shadow(0 0 2px rgba(255,255,255,.35));

}

.mf-aircraft-icon {
    overflow: visible;
}

.mf-aircraft {

    fill: none;
    stroke: none;

}


/* ==========================================
   COURSE PANELS
========================================== */


.mf-course-panel{

    display:none;

}

.mf-course-panel.is-active{

    display:flex;
    flex-direction:column;

    overflow-y:auto;
    overflow-x:hidden;

    overscroll-behavior:contain;

	min-height:0;
    box-sizing:border-box;
}


@keyframes mfPanelFade{

    from{

        opacity:0;

        transform:translateY(16px);

    }

    to{

        opacity:1;

        transform:none;

    }

}

/* ==========================================
   ACTIVE COURSE
========================================== */

/* Timeline cards */

.et_pb_timeline_item{

    opacity:.6;

    transition:
        opacity .25s ease,
        box-shadow .25s ease,
        border-color .25s ease;

}

.et_pb_timeline_title{

    color:#D8DDE3;

    transition:color .25s ease;

}

/* Active card */

.mf-active-course{
    opacity:1;
}

/*
.mf-active-course .et_pb_timeline_card{
    box-shadow:
        0 0 12px rgba(255,0,204,.12);
}
*/

.mf-active-course .et_pb_timeline_title{
    color:var(--mf-route-active) !important;
}


.mf-active-course .et_pb_timeline_content{
    color:#FFFFFF;
    opacity:1;
}

.et_pb_timeline_content{

    color:#9CA3AF;

}

.mf-course-title{

    position:relative;

    padding-bottom:18px;

    margin-bottom:32px;

}

/*
.mf-course-viewport{

    position: sticky;
    top: 40px;

    max-height: calc(100vh - 140px);
	min-height: 420px;

    overflow-y: auto;

    padding-bottom: 20px;
}


.mf-course-viewport{

    scrollbar-width:thin !important;

}

.mf-course-viewport::-webkit-scrollbar{

    width:6px !important;

}
*/

/* ==========================================
   FOOTER / PANEL BEHAVIOUR
========================================== */

/* Keep the fixed course column at its normal stacking level */
.mf-flightplan-layout .et_pb_column_4 {
    z-index: 0 !important;
}

/* Footer must establish its own stacking context above the course area */
body .et-l--footer {
    position: relative !important;
    z-index: 999999 !important;
    isolation: isolate;
}
/* ==========================================
   DIVI TOGGLE / ACCORDION
========================================== */

/* Hide Divi's icon */
.et_pb_toggle_title:before{
    display:none !important;
}

.et_pb_toggle_title{

    position:relative;

    padding-left:36px !important;   /* space reserved for chevron */

}

.et_pb_toggle_title:after{

    content:"";

    position:absolute;

    left:0px;                      /* move chevron horizontally */

    top:50%;

    width:7px;
    height:7px;

    border-top:2px solid #FF00FF;
    border-right:2px solid #FF00FF;

    transform:translateY(-50%) rotate(45deg);

    transition:transform .25s ease;

    box-sizing:border-box;

}

.et_pb_toggle_open .et_pb_toggle_title:after{

    transform:translateY(-50%) rotate(135deg);

}


.hero-image {
    mask-image:
        linear-gradient(to right, transparent 0%, black 50%, black 100%),
        linear-gradient(to top, transparent 0%, black 50%, black 100%);
    mask-composite: intersect;
}

@media (min-width: 768px) {
    .mf-flightplan {
        transform: translateY(100px) !important;
    }
}

/* =====================================================
   HOME PAGE HERO
   ===================================================== */
/* =====================================================
   MERSEYFLIGHT HERO TYPOGRAPHY
   ===================================================== */

.mf-home-hero {
    font-family: "Inter", sans-serif;
}

.mf-hero-label,
.mf-hero-label p {
    font-family: "IBM Plex Mono", monospace !important;
}

.mf-hero-title,
.mf-hero-title h1,
.mf-hero-title h2,
.mf-hero-title h3,
.mf-hero-title p {
    font-family: "Space Grotesk", sans-serif !important;

    color: #ffffff !important;
    line-height: 1.05em !important;
    font-weight: 600 !important;
    letter-spacing: -1px !important;
    font-size: 72px !important;
}

.mf-hero-text,
.mf-hero-text p {
    font-family: "Inter", sans-serif !important;
    font-size: 18px !important;
    line-height: 1.6 !important;
    font-weight: 400 !important;
    color: rgba(255,255,255,0.85) !important;
}

/* =====================================================
   MERSEYFLIGHT HERO IMAGE
   ===================================================== */


.mf-home-hero {
    position: relative;
    overflow: hidden;
}

.mf-home-hero::before {
    content: "";
    position: absolute;
    inset: 0;

    background: linear-gradient(
        90deg,
        rgba(3, 14, 28, 0.72) 0%,
        rgba(3, 14, 28, 0.45) 32%,
        rgba(3, 14, 28, 0.12) 55%,
        transparent 75%
    );

    pointer-events: none;
    z-index: 1;
}

/* Keep Divi's actual content above the gradient */
.mf-home-hero > * {
    position: relative;
    z-index: 2;
}

.mf-home-hero .mf-hero-content {
    max-width: 650px;
}

.mf-home-hero .mf-hero-title {
    margin-bottom: 24px !important;
}

.mf-home-hero .mf-hero-text {
    margin-top: 0 !important;
}


/* =====================================================
   HOMEPAGE OPTIONS SECTION
   ===================================================== */

.mf-home-options {
    background: #07192f !important;
    padding: 50px 0 50px !important;
}


/* =====================================================
   SECTION HEADING
   ===================================================== */

.mf-home-options .mf-section-label,
.mf-home-options .mf-section-label p {
    font-family: "IBM Plex Mono", monospace !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    letter-spacing: 1.5px !important;	
    color: #EF4138 !important;
    /* color: #f238c9 !important; 2809 */
    text-transform: uppercase;
    margin-bottom: 18px !important;
}

.mf-home-options .mf-section-heading,
.mf-home-options .mf-section-heading p,
.mf-home-options .mf-section-heading h1,
.mf-home-options .mf-section-heading h2 {
    font-family: "Space Grotesk", sans-serif !important;
    font-size: 48px !important;
    line-height: 1.08 !important;
    font-weight: 600 !important;
    letter-spacing: -1px !important;
    color: #ffffff !important;
}


/* =====================================================
   CARDS
   ===================================================== */

.mf-home-options .mf-option-card {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;

    min-height: 480px;

    padding: 38px !important;

    overflow: hidden;

    border: 1px solid rgba(255,255,255,0.14);

    background-color: #0b223d;

    transition:
        transform .35s ease,
        border-color .35s ease;
}


/* Dark gradient over background images */

.mf-home-options .mf-option-card::before {
    content: "";
    position: absolute;
    inset: 0;

    background: linear-gradient(
        180deg,
        rgba(3, 14, 28, 0.10) 0%,
        rgba(3, 14, 28, 0.30) 40%,
        rgba(3, 14, 28, 0.94) 100%
    );

    z-index: 0;
    pointer-events: none;
}


/* Keep card content above overlay */

.mf-home-options .mf-option-card > * {
    position: relative;
    z-index: 1;
}


/* Hover */

.mf-home-options .mf-option-card:hover {
    transform: translateY(-6px);
    border-color: #EF4138;
    /* border-color: #f238c9; 2809 */
}


/* =====================================================
   CARD TYPOGRAPHY
   ===================================================== */

.mf-home-options .mf-card-label,
.mf-home-options .mf-card-label p {
    font-family: "IBM Plex Mono", monospace !important;

    font-size: 12px !important;
    font-weight: 600 !important;

    letter-spacing: 1.3px !important;

    color: #EF4138 !important;
    /* color: #f238c9 !important; 2809 */

    text-transform: uppercase;

    margin-bottom: 16px !important;
}


.mf-home-options .mf-card-heading,
.mf-home-options .mf-card-heading p,
.mf-home-options .mf-card-heading h1,
.mf-home-options .mf-card-heading h2,
.mf-home-options .mf-card-heading h3 {
    font-family: "Space Grotesk", sans-serif !important;

    font-size: 36px !important;
    line-height: 1.08 !important;
    font-weight: 600 !important;

    letter-spacing: -0.8px !important;

    color: #ffffff !important;

    margin-bottom: 18px !important;
}


.mf-home-options .mf-card-text,
.mf-home-options .mf-card-text p {
    font-family: "Inter", sans-serif !important;

    font-size: 16px !important;
    line-height: 1.6 !important;

    color: rgba(255,255,255,0.86) !important;

    margin-bottom: 22px !important;
}


.mf-home-options .mf-option-card img {
    transition: transform 0.6s ease;
}

.mf-home-options .mf-option-card:hover img {
    transform: scale(1.05);
}


/* =====================================================
   CARD LINK
   ===================================================== */

.mf-home-options .mf-card-link,
.mf-home-options .mf-card-link p,
.mf-home-options .mf-card-link a {
    font-family: "IBM Plex Mono", monospace !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    letter-spacing: 1px !important;
    color: #ffffff !important;
    text-decoration: none !important;
    text-transform: uppercase;

    transition: color .3s ease;
}


/* =====================================================
   HOVER
   ===================================================== */
/* Card link hover */

.mf-home-options .mf-option-card:hover .mf-card-link,
.mf-home-options .mf-option-card:hover .mf-card-link *,
.mf-home-options .mf-option-card:hover .mf-card-link a {
    color: #EF4138 !important;
}

.mf-home-options .mf-option-card:hover {
    transform: translateY(-6px);

    border-color: #EF4138;
}

/* ========== PRODUCT PAGES ==========*/



.mf-product-page .mf-product-title,
.mf-product-page .mf-product-title h1 {
    font-family: "Space Grotesk", sans-serif !important;
    font-size: 48px !important;
    line-height: 1.08 !important;
    font-weight: 600 !important;
    letter-spacing: -1px !important;
    color: #ffffff !important;
}

.mf-product-page .mf-product-price,
.mf-product-page .mf-product-price .price,
.mf-product-page .mf-product-price .woocommerce-Price-amount {
    font-family: "Space Grotesk", sans-serif !important;
    font-size: 30px !important;
    font-weight: 500 !important;
    color: #ffffff !important;
}

.mf-product-page .mf-product-cart .single_add_to_cart_button {
    background: #EF4138 !important;
    /* background: #f238c9 !important; 2809 */
    /* border: none !important;
    border-radius: 0 !important; */

    font-family: "IBM Plex Mono", monospace !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    letter-spacing: 1px !important;

    color: #ffffff !important;

    padding: 18px 34px !important;

    text-transform: uppercase !important;
}

/* add to cart */
.mf-product-page .mf-product-cart .single_add_to_cart_button:hover {
	background: transparent !important;
    border-color: #EF4138 !important;
    color: #EF4138 !important;
	/* background: #EF4138 !important; */
	/*background: #ff5bd8 !important; 2809 */
}


/* =====================================================
   PRODUCT DESCRIPTION
   ===================================================== */

.mf-product-page .et_pb_wc_description,
.mf-product-page .et_pb_wc_description p,
.mf-product-page .et_pb_wc_description li {
    color: rgba(255,255,255,0.88) !important;
}

.mf-product-page .et_pb_wc_description p {
    font-family: "Inter", sans-serif !important;
    font-size: 16px !important;
    line-height: 1.65 !important;
}

/* =====================================================
   PRODUCT BREADCRUMB
   ===================================================== */

/*
.mf-product-page .mf-product-breadcrumb,
.mf-product-page .mf-product-breadcrumb *,
.mf-product-page .woocommerce-breadcrumb {
    color: rgba(255,255,255,0.70) !important;
}

.mf-product-page .mf-product-breadcrumb a,
.mf-product-page .woocommerce-breadcrumb a {
    color: #EF4138 !important;
}
*/

/* === Divider ===*/

.mf-product-page .mf-product-summary hr,
.mf-product-page .et_pb_divider {
    border-color: rgba(255,255,255,0.18) !important;
}

/* =====================================================
   PRODUCT META
   ===================================================== */

.mf-product-page .product_meta,
.mf-product-page .product_meta span {
    color: rgba(255,255,255,0.65) !important;
}


.mf-product-page .product_meta a {
    color: #EF4138 !important;
    /* color: #f238c9 !important; 2809 */
    text-decoration: none !important;
}


.mf-product-page .product_meta a:hover {
    color: #FF2C2C !important;
    /* color: #ff5bd8 !important; 2809 */
}


/* =====================================================
   DIVI 5 PRODUCT TABS
   ===================================================== */

.mf-product-page .et_pb_tabs_controls {
    display: flex !important;
    gap: 0 !important;

    margin: 0 !important;
    padding: 0 !important;

    background: #07192f !important;

    border-bottom: 1px solid rgba(255,255,255,0.12) !important;
}


/* Individual tabs */

.mf-product-page .et_pb_tabs_controls li {
    position: relative;

    height: auto !important;
    min-height: 0 !important;

    margin: 0 !important;
    padding: 0 !important;

    background: transparent !important;
    border: none !important;

    list-style: none !important;
}


/* Tab text */

.mf-product-page .et_pb_tabs_controls li a {
    display: block !important;

    padding: 20px 24px !important;

    font-family: "IBM Plex Mono", monospace !important;
    font-size: 12px !important;
    font-weight: 600 !important;

    letter-spacing: 1px !important;
    text-transform: uppercase !important;

    color: rgba(255,255,255,0.75) !important;

    text-decoration: none !important;

    transition: color .25s ease;
}


/* Hover */

.mf-product-page .et_pb_tabs_controls li:hover a {
    color: #ffffff !important;
}


/* Active tab - force readable text */

.mf-product-page .et_pb_tabs_controls > li.et_pb_tab_active {
    opacity: 1 !important;
    color: #ffffff !important;
}

.mf-product-page .et_pb_tabs_controls > li.et_pb_tab_active > a {
    color: #ffffff !important;
    opacity: 1 !important;
    -webkit-text-fill-color: #ffffff !important;
}

/* Active magenta underline */

.mf-product-page .et_pb_tabs_controls li.et_pb_tab_active::after {
    content: "";

    position: absolute;

    left: 24px;
    right: 24px;
    bottom: -1px;

    height: 2px;

    background: #EF4138;
    /* background: #f238c9; 2809 */
}


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

.mf-product-page .et_pb_all_tabs {
    background: #061629 !important;
    padding: 35px !important;
}


.mf-product-page .et_pb_tab_content {
    color: rgba(255,255,255,0.88) !important;
}


.mf-product-page .et_pb_tab_content h2,
.mf-product-page .et_pb_tab_content h3 {
    font-family: "Space Grotesk", sans-serif !important;

    color: #ffffff !important;

    font-weight: 600 !important;
}


.mf-product-page .et_pb_tab_content p,
.mf-product-page .et_pb_tab_content li {
    font-family: "Inter", sans-serif !important;

    font-size: 16px !important;
    line-height: 1.65 !important;

    color: rgba(255,255,255,0.88) !important;
}


.mf-product-page .et_pb_tab_content a {
    color: #EF4138 !important;
    /* color: #f238c9 !important; */
}

/* Hide Reviews tab */

.mf-product-page .et_pb_tabs_controls li:last-child {
    display: none !important;
}


/* =====================================================
   PRODUCT PAGE - MOBILE
   ===================================================== */

@media (max-width: 767px) {

    /* Product title */

    .mf-product-page .mf-product-title,
    .mf-product-page .mf-product-title h1 {
        font-size: 30px !important;
        line-height: 1.05 !important;
        letter-spacing: -0.5px !important;
    }

    /* Product price */

    .mf-product-page .mf-product-price,
    .mf-product-page .mf-product-price .price,
    .mf-product-page .mf-product-price .woocommerce-Price-amount {
        font-size: 20px !important;
        line-height: 1.2 !important;
    }
	
	    /* Product image */

    .mf-product-page .mf-product-image img,
    .mf-product-page .woocommerce-product-gallery img,
    .mf-product-page .et_pb_wc_images img {
        width: 100% !important;
        height: auto !important;
        max-height: 300px !important;
        object-fit: cover !important;
    }
	
	/* Product summary spacing */

    .mf-product-page .mf-product-summary {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }

    .mf-product-page .mf-product-price {
        margin-bottom: 12px !important;
    }

    .mf-product-page .mf-product-summary .et_pb_divider {
        margin-top: 12px !important;
        margin-bottom: 18px !important;
    }
	
	/* Purchase controls */

    .mf-product-page .mf-product-cart {
        margin-top: 20px !important;
        margin-bottom: 18px !important;
    }

    .mf-product-page .mf-product-cart form.cart {
        display: flex !important;
        align-items: center !important;
        gap: 10px !important;
        flex-wrap: nowrap !important;
    }

    .mf-product-page .mf-product-cart .quantity {
        margin: 0 !important;
    }

    .mf-product-page .mf-product-cart .quantity .qty {
        width: 44px !important;
        height: 38px !important;
        padding: 0 !important;
        text-align: center !important;
        box-sizing: border-box !important;
    }

    .mf-product-page .mf-product-cart .single_add_to_cart_button {
        height: 38px !important;
        padding: 0 18px !important;
        font-size: 11px !important;
        letter-spacing: 0.8px !important;
        margin: 0 !important;
    }
	
	/* Product tabs */

    .mf-product-page .et_pb_tabs_controls {
        display: flex !important;
        flex-wrap: nowrap !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        width: 100% !important;
        -webkit-overflow-scrolling: touch !important;
    }

    .mf-product-page .et_pb_tabs_controls li {
        flex: 0 0 auto !important;
        width: auto !important;
    }

    .mf-product-page .et_pb_tabs_controls li a {
        padding: 14px 16px !important;
        font-size: 10px !important;
        white-space: nowrap !important;
    }

    .mf-product-page .et_pb_tabs_controls li.et_pb_tab_active::after {
        left: 16px !important;
        right: 16px !important;
    }

    /* Tab content */

    .mf-product-page .et_pb_all_tabs {
        padding: 16px 10px !important;
    }

    .mf-product-page .et_pb_tab_content p,
    .mf-product-page .et_pb_tab_content li {
        font-size: 15px !important;
        line-height: 1.6 !important;
    }

}

/* =====================================================
   MERSEYFLIGHT SHOPPING CART
   CLEAN MASTER CSS
   ===================================================== */


/* =====================================================
   CART PAGE
   ===================================================== */

.mf-cart-page {
    background: #07192f !important;
}

.mf-cart-page .woocommerce,
.mf-cart-page .woocommerce-cart-form,
.mf-cart-page .cart-collaterals,
.mf-cart-page .cross-sells,
.mf-cart-page .mf-cart-code,
.mf-cart-page .mf-cart-code .et_pb_code_inner {
    background: transparent !important;
}


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

.mf-cart-header {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    background: #07192f !important;
    padding: 0 !important;
}

.mf-cart-header .et_pb_module {
    background: transparent !important;
}

.mf-cart-header .et_pb_module h1,
.mf-cart-header h1,
.mf-cart-page h1 {
    font-family: "Space Grotesk", sans-serif !important;
    font-size: 42px !important;
    line-height: 1.1 !important;
    font-weight: 600 !important;
    letter-spacing: -0.8px !important;
    text-transform: uppercase !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    opacity: 1 !important;
    text-align: center !important;
}


/* =====================================================
   CART HEADER – DESKTOP SPACING
   ===================================================== */

@media (min-width: 981px) {

	.mf-cart-header .et_pb_fullwidth_header {
        padding-top: 55px !important;
        padding-bottom: 45px !important;
    }

    .mf-cart-header .et_pb_fullwidth_header_container {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }

    .mf-cart-header .header-content-container {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }

    .mf-cart-header .header-content {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
        margin-bottom: 0 !important;
    }
}


/* =====================================================
   CART CONTENT WIDTH
   ===================================================== */

.mf-cart-page .mf-cart-code .woocommerce {
    width: 100% !important;
    max-width: 1050px !important;
    margin: 0 auto !important;
}


/* =====================================================
   CART TABLE
   ===================================================== */

.mf-cart-page .woocommerce-cart-form {
    width: 100% !important;
}

.mf-cart-page table.shop_table {
    width: 100% !important;
    background: #0b223d !important;
    border: 1px solid rgba(255,255,255,0.18) !important;
    border-collapse: collapse !important;
    color: #ffffff !important;
}


/* Table headings */

.mf-cart-page table.shop_table thead th {
    background: transparent !important;
    color: rgba(255,255,255,0.65) !important;

    font-family: "IBM Plex Mono", monospace !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    letter-spacing: 1.2px !important;
    text-transform: uppercase !important;

    padding: 18px !important;

    border-bottom: 1px solid rgba(255,255,255,0.18) !important;
}


/* Table cells */

.mf-cart-page table.shop_table td {
    background: transparent !important;
    color: rgba(255,255,255,0.88) !important;

    font-family: "Inter", sans-serif !important;
    font-size: 15px !important;

    padding: 20px 18px !important;

    border-top: 1px solid rgba(255,255,255,0.10) !important;
}


/* =====================================================
   PRODUCT ROW
   ===================================================== */

.mf-cart-page .woocommerce-cart-form__cart-item {
    background: #0b223d !important;
}

.mf-cart-page .woocommerce-cart-form__cart-item td {
    padding-top: 22px !important;
    padding-bottom: 22px !important;
    vertical-align: middle !important;
}


/* Product image */

.mf-cart-page .woocommerce-cart-form__cart-item .product-thumbnail img {
    width: 140px !important;
    height: auto !important;
    border: 1px solid rgba(255,255,255,0.12) !important;
}


/* Product name */

.mf-cart-page .woocommerce-cart-form__cart-item .product-name a {
    font-family: "Space Grotesk", sans-serif !important;
    font-size: 18px !important;
    font-weight: 600 !important;
    color: #ffffff !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
}

.mf-cart-page .woocommerce-cart-form__cart-item .product-name a:hover {
    color: #EF4138 !important;
    /* color: #f238c9 !important; 2809 */
}


/* Price and subtotal */

.mf-cart-page .woocommerce-cart-form__cart-item .product-price,
.mf-cart-page .woocommerce-cart-form__cart-item .product-subtotal {
    font-family: "Inter", sans-serif !important;
    font-size: 16px !important;
    color: #ffffff !important;
}

.mf-cart-page .woocommerce-cart-form__cart-item .amount {
    color: #ffffff !important;
}


/* VAT label */

.mf-cart-page .woocommerce-cart-form__cart-item .tax_label {
    color: rgba(255,255,255,0.55) !important;
    font-size: 11px !important;
}


/* Remove item */

.mf-cart-page .woocommerce-cart-form__cart-item .product-remove a {
    color: #EF4138 !important;
    /* color: #f238c9 !important; 2809 */
    font-size: 22px !important;
}

.mf-cart-page .woocommerce-cart-form__cart-item .product-remove a:hover {
    color: #ffffff !important;
}


/* Quantity */

.mf-cart-page .quantity input.qty {
    width: 60px !important;
    height: 42px !important;

    background: #07192f !important;
    border: 1px solid rgba(255,255,255,0.25) !important;

    color: #ffffff !important;

    font-family: "Inter", sans-serif !important;
    font-size: 15px !important;
    text-align: center !important;
}

/* =====================================================
   HIDE COUPON & SHIPPING
   ===================================================== */

.mf-cart-page .coupon {
    display: none !important;
}

.mf-cart-page .cart_totals .woocommerce-shipping-totals,
.mf-cart-page .cart_totals .shipping {
    display: none !important;
}

/* =====================================================
   UPDATE CART
   ===================================================== */

.mf-cart-page .woocommerce-cart-form .actions {
    background: #07192f !important;
    padding: 20px !important;
}

.mf-cart-page .actions > .button {
    background: transparent !important;
    color: rgba(255,255,255,0.5) !important;
    border: 1px solid rgba(255,255,255,0.25) !important;
}


/* =====================================================
   CART NOTIFICATION
   ===================================================== */

.mf-cart-page .woocommerce-message {
    background: #020b16 !important;
    border: 1px solid rgba(255,255,255,0.18) !important;
    color: #ffffff !important;

    padding: 18px 22px !important;
    margin-bottom: 28px !important;

    font-family: "Inter", sans-serif !important;
    font-size: 14px !important;
}

.mf-cart-page .woocommerce-message .button {
    background: transparent !important;
    border: 1px solid rgba(255,255,255,0.45) !important;

    color: #ffffff !important;

    font-family: "IBM Plex Mono", monospace !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    letter-spacing: 1px !important;
    text-transform: uppercase !important;

    padding: 10px 18px !important;
    border-radius: 0 !important;
}

.mf-cart-page .woocommerce-message .button:hover {	
    background: #EF4138 !important;
    /*background: #f238c9 !important; 2809 */
    border-color: #EF4138 !important;
    color: #ffffff !important;
}


/* =====================================================
   LOWER CART AREA
   ===================================================== */

.mf-cart-page .cart-collaterals {
    width: 100% !important;
    margin-top: 50px !important;

    display: flex !important;
    gap: 40px !important;
    align-items: flex-start !important;
}

.mf-cart-page .cross-sells {
    width: calc(50% - 30px) !important;
    float: none !important;
}

.mf-cart-page .cart_totals {
    width: calc(50% - 30px) !important;
    float: none !important;
    margin: 0 !important;
    background: transparent !important;
}

/* =====================================================
   LOWER SECTION HEADINGS
   ===================================================== */

.mf-cart-page .cross-sells > h2,
.mf-cart-page .cart_totals > h2 {
    font-family: "Space Grotesk", sans-serif !important;
    font-size: 28px !important;
    font-weight: 600 !important;
    color: #ffffff !important;
    margin: 0 0 20px !important;
    line-height: 1.2 !important;
}

/* =====================================================
   CROSS-SELL PRODUCT
   ===================================================== */

.mf-cart-page .cross-sells ul.products {
    margin: 0 !important;
    padding: 0 !important;
}

.mf-cart-page .cross-sells ul.products li.product {
    width: 280px !important;
    margin: 0 !important;
    padding: 0 !important;
}

.mf-cart-page .cross-sells .et_shop_image {
    display: block !important;
    overflow: hidden !important;
    border: 1px solid rgba(255,255,255,0.12) !important;
}

.mf-cart-page .cross-sells .et_shop_image img {
    width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    transition: transform .4s ease !important;
}

.mf-cart-page .cross-sells li.product:hover img {
    transform: scale(1.04);
}


/* Cross-sell product name */

.mf-cart-page .cross-sells .woocommerce-loop-product__title {
    font-family: "Space Grotesk", sans-serif !important;
    font-size: 17px !important;
    font-weight: 600 !important;
    line-height: 1.3 !important;

    color: #ffffff !important;

    margin-top: 16px !important;
    padding: 0 !important;
}


/* Cross-sell price */

.mf-cart-page .cross-sells .price,
.mf-cart-page .cross-sells .price *,
.mf-cart-page .cross-sells .woocommerce-price-suffix {
    font-family: "Inter", sans-serif !important;
    color: rgba(255,255,255,0.70) !important;
}

.mf-cart-page .cross-sells .price {
    font-size: 14px !important;
}


/* Sale badge */

.mf-cart-page .cross-sells .onsale {
	background: #EF4138 !important;
	/* background: #f238c9 !important; */
    color: #ffffff !important;

    font-family: "IBM Plex Mono", monospace !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    letter-spacing: 1px !important;
    text-transform: uppercase !important;

    padding: 7px 10px !important;
}


/* =====================================================
   CART TOTALS
   ===================================================== */

.mf-cart-page .cart_totals .shop_table {
    width: 100% !important;

    background: #0b223d !important;
    border: 1px solid rgba(255,255,255,0.12) !important;
    border-collapse: collapse !important;
}

.mf-cart-page .cart_totals .shop_table tr {
    border-bottom: 1px solid rgba(255,255,255,0.14) !important;
}

.mf-cart-page .cart_totals .shop_table tr:last-child {
    border-bottom: none !important;
}

.mf-cart-page .cart_totals .shop_table th,
.mf-cart-page .cart_totals .shop_table td {
    padding: 18px 16px !important;
    vertical-align: top !important;
}


/* Totals labels */

.mf-cart-page .cart_totals .shop_table th {
    font-family: "IBM Plex Mono", monospace !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    letter-spacing: 1.2px !important;
    text-transform: uppercase !important;

    color: rgba(255,255,255,0.65) !important;
}


/* Totals values */

.mf-cart-page .cart_totals .shop_table td {
    font-family: "Inter", sans-serif !important;
    font-size: 15px !important;
    color: rgba(255,255,255,0.82) !important;
}

.mf-cart-page .cart_totals .amount {
    color: #ffffff !important;
}


/* Total row */

.mf-cart-page .cart_totals .order-total th,
.mf-cart-page .cart_totals .order-total td {
    color: #ffffff !important;
    font-weight: 600 !important;
}

.mf-cart-page .cart_totals .order-total .amount {
    font-size: 17px !important;
}


/* VAT */

.mf-cart-page .cart_totals .includes_tax {
    color: rgba(255,255,255,0.55) !important;
    font-size: 12px !important;
}


/* Shipping */

.mf-cart-page .woocommerce-shipping-destination {
    color: rgba(255,255,255,0.75) !important;
}

.mf-cart-page .shipping-calculator-button,
.mf-cart-page .shipping-calculator-button:hover {	
    color: #EF4138 !important;
    /* color: #f238c9 !important; 2809 */
    font-weight: 600 !important;
    text-decoration: none !important;
}


/* =====================================================
   CHECKOUT BUTTON
   ===================================================== */

.mf-cart-page .wc-proceed-to-checkout {
    padding: 16px 0 0 !important;
}

.mf-cart-page .wc-proceed-to-checkout .checkout-button {
    display: block !important;
    width: 100% !important;
    box-sizing: border-box !important;

    margin: 0 !important;
    padding: 14px 20px !important;

    background: #EF4138 !important;
    /* background: #f238c9 !important; 2809 */
    border: 1px solid #EF4138 !important;
    /* border: 1px solid #f238c9 !important; */
    border-radius: 0 !important;

    color: #ffffff !important;

    font-family: "IBM Plex Mono", monospace !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    letter-spacing: 1.2px !important;
    text-transform: uppercase !important;
    text-align: center !important;

    text-decoration: none !important;

    transition:
        background .25s ease,
        border-color .25s ease,
        color .25s ease,
        transform .25s ease !important;
}

.mf-cart-page .wc-proceed-to-checkout .checkout-button:hover {
    background: transparent !important;
    border-color: #EF4138 !important;
    color: #EF4138 !important;
/*
	border-color: #f238c9 !important;
    color: #f238c9 !important;
*/
	transform: translateY(-2px);
}


/* =====================================================
   TABLET
   ===================================================== */

@media (max-width: 980px) {

    .mf-cart-page .mf-cart-code .woocommerce {
        width: calc(100% - 32px) !important;
        max-width: none !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }

    /* Mobile/tablet cart table */

    .mf-cart-page .woocommerce-cart-form__contents {
        border: 1px solid rgba(255,255,255,0.12) !important;
        background: #0b223d !important;
    }

    .mf-cart-page .woocommerce-cart-form__cart-item {
        padding: 8px 0 !important;
        background: #0b223d !important;
    }

    .mf-cart-page .woocommerce-cart-form__cart-item td {
        border-bottom: 1px solid rgba(255,255,255,0.12) !important;
        padding: 16px !important;
    }

    /* Remove */

    .mf-cart-page .woocommerce-cart-form__cart-item .product-remove {
        padding-bottom: 8px !important;
        text-align: left !important;
    }

    .mf-cart-page .woocommerce-cart-form__cart-item .product-remove a {		
        color: #EF4138 !important;
        /* color: #f238c9 !important; 2909 */
        font-size: 20px !important;
    }

    /* Product image */

    .mf-cart-page .woocommerce-cart-form__cart-item .product-thumbnail {
        text-align: center !important;
    }

    .mf-cart-page .woocommerce-cart-form__cart-item .product-thumbnail img {
        width: 100px !important;
        max-width: 100px !important;
        margin: 0 auto !important;
    }

    /* Product name */

    .mf-cart-page .woocommerce-cart-form__cart-item .product-name {
        color: #ffffff !important;
        font-family: "Space Grotesk", sans-serif !important;
        font-size: 16px !important;
        font-weight: 600 !important;
    }

    .mf-cart-page .woocommerce-cart-form__cart-item .product-name a {
        color: #ffffff !important;
    }

    /* WooCommerce labels */

    .mf-cart-page .woocommerce-cart-form__cart-item td::before {
        font-family: "IBM Plex Mono", monospace !important;
        font-size: 10px !important;
        font-weight: 600 !important;
        letter-spacing: 1px !important;
        text-transform: uppercase !important;
        color: rgba(255,255,255,0.60) !important;
    }

    /* Values */

    .mf-cart-page .woocommerce-cart-form__cart-item .product-price,
    .mf-cart-page .woocommerce-cart-form__cart-item .product-subtotal {
        color: rgba(255,255,255,0.85) !important;
        font-family: "Inter", sans-serif !important;
        font-size: 14px !important;
    }

    /* Quantity */

    .mf-cart-page .woocommerce-cart-form__cart-item .quantity {
        display: inline-block !important;
    }

    .mf-cart-page .woocommerce-cart-form__cart-item input.qty {
        width: 55px !important;
        height: 40px !important;

        background: #07192f !important;
        border: 1px solid rgba(255,255,255,0.25) !important;

        color: #ffffff !important;
        text-align: center !important;
    }

    /* Lower sections */

    .mf-cart-page .cart-collaterals {
        display: block !important;
        margin-top: 40px !important;
    }

    .mf-cart-page .cross-sells,
    .mf-cart-page .cart_totals {
        width: 100% !important;
        float: none !important;
    }

    .mf-cart-page .cart_totals {
        margin-top: 45px !important;
    }

    /* Cross-sell */

    .mf-cart-page .cross-sells ul.products {
        margin: 0 !important;
    }

    .mf-cart-page .cross-sells ul.products li.product {
        width: 100% !important;
        margin: 0 !important;
    }

    .mf-cart-page .cross-sells ul.products li.product img {
        width: 100% !important;
        max-width: 350px !important;
    }

}


/* =====================================================
   MOBILE
   ===================================================== */

@media (max-width: 767px) {

    /* Page */

    .mf-cart-page {
        padding-top: 0 !important;
    }

    /* Header */

	.mf-cart-header {
        padding: 0 !important;
    }

    .mf-cart-header .et_pb_fullwidth_header {
        padding-top: 30px !important;
        padding-bottom: 20px !important;
    }

    .mf-cart-header .et_pb_fullwidth_header_container,
    .mf-cart-header .header-content-container,
    .mf-cart-header .header-content {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
        margin-bottom: 0 !important;
    }

    /* Content */

    .mf-cart-page .mf-cart-code {
        width: 100% !important;
        max-width: none !important;
        padding-left: 10px !important;
        padding-right: 10px !important;
        box-sizing: border-box !important;

        padding-top: 0 !important;
        margin-top: 0 !important;
    }
	
    	.mf-cart-page .mf-cart-code .woocommerce {
        width: 100% !important;
        max-width: none !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
    
	.mf-cart-page .mf-cart-code .woocommerce {
        width: 100% !important;
        max-width: none !important;
        margin-top: 0 !important;
    }

    .mf-cart-page .woocommerce-cart-form {
        width: 100% !important;
    }
	
    /* Cart table */

    .mf-cart-page .shop_table {
        width: 100% !important;
        margin: 0 !important;
        border-collapse: collapse !important;
    }

    .mf-cart-page .shop_table thead {
        display: none !important;
    }

    .mf-cart-page .shop_table tbody,
    .mf-cart-page .shop_table tr {
        display: block !important;
        width: 100% !important;
    }

    .mf-cart-page .shop_table .cart_item {
        position: relative !important;
        padding: 18px !important;
        box-sizing: border-box !important;
        border: 1px solid rgba(255,255,255,0.14) !important;
        background: #0b223d !important;
    }	
	
    .mf-cart-page .shop_table .cart_item td {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        width: 100% !important;
        padding: 12px 0 !important;
        border-bottom: 1px solid rgba(255,255,255,0.10) !important;
        box-sizing: border-box !important;
    }

    .mf-cart-page .shop_table .cart_item td:last-child {
        border-bottom: 0 !important;
    }

    .mf-cart-page .shop_table .cart_item td::before {
        font-family: "IBM Plex Mono", monospace !important;
        font-size: 10px !important;
        font-weight: 600 !important;
        text-transform: uppercase !important;
        letter-spacing: 0.5px !important;
        color: rgba(255,255,255,0.85) !important;
    }

	
    /* Mobile - remove product thumbnail */

    .mf-cart-page .woocommerce-cart-form__cart-item td.product-thumbnail {
        display: none !important;
    }

    .mf-cart-page .woocommerce-cart-form__cart-item td.product-thumbnail img {
        display: none !important;
    }

    .mf-cart-page .woocommerce-cart-form__cart-item td.product-thumbnail::before,
    .mf-cart-page .woocommerce-cart-form__cart-item td.product-thumbnail::after {
        display: none !important;
        content: none !important;
    }
	
	.mf-cart-page .woocommerce-cart-form__cart-item td.product-remove::before,
    .mf-cart-page .woocommerce-cart-form__cart-item td.product-remove::after {
        display: none !important;
        content: none !important;
    }
	
	.mf-cart-page .shop_table .product-name {
        font-size: 14px !important;
        font-weight: 600 !important;
        text-align: right !important;
    }
	
    /* Notification */

    .mf-cart-page .woocommerce-notices-wrapper {
        margin-bottom: 18px !important;
    }

    .mf-cart-page .woocommerce-message {
        background: #0b223d !important;
        border: 1px solid rgba(255,255,255,0.16) !important;
        border-top: 2px solid #EF4138 !important;
        /* border-top: 2px solid #f238c9 !important; 2809 */

        color: rgba(255,255,255,0.85) !important;

        padding: 18px !important;

        font-family: "Inter", sans-serif !important;
        font-size: 12px !important;
        line-height: 1.5 !important;
    }

    .mf-cart-page .woocommerce-message::before {
        display: none !important;
    }

    .mf-cart-page .woocommerce-message .button {
        float: none !important;
        display: block !important;

        margin-top: 12px !important;

        background: transparent !important;
        color: #ffffff !important;
        border: 1px solid rgba(255,255,255,0.35) !important;

        font-family: "IBM Plex Mono", monospace !important;
        font-size: 10px !important;
        text-transform: uppercase !important;
        letter-spacing: 1px !important;
    }

    /* Headings */

    .mf-cart-page .cross-sells > h2,
    .mf-cart-page .cart_totals > h2 {
        font-size: 24px !important;
    }

    /* Checkout */

    .mf-cart-page .cart_totals .wc-proceed-to-checkout {
        padding-top: 20px !important;
    }

}

/* =====================================================
   CHECKOUT PAGE
   ===================================================== */

.mf-checkout-page {
    background: #061629 !important;
}

/* Checkout form panel */

.mf-checkout-page .woocommerce {
    background: #0b223d !important;
    border: 1px solid rgba(255,255,255,0.10) !important;
    padding: 30px !important;
    box-sizing: border-box !important;
}

.mf-checkout-page .woocommerce-checkout {
    color: rgba(255,255,255,0.85) !important;
}

/* Checkout headings */

.mf-checkout-page h3,
.mf-checkout-page .woocommerce-billing-fields h3,
.mf-checkout-page .woocommerce-shipping-fields h3,
.mf-checkout-page .woocommerce-additional-fields h3 {
    color: #ffffff !important;
    font-family: "Space Grotesk", sans-serif !important;
    font-weight: 600 !important;
}

/* Field labels */

.mf-checkout-page label {
    color: rgba(255,255,255,0.75) !important;
    font-family: "Inter", sans-serif !important;
}

/* Form fields */

.mf-checkout-page input.input-text,
.mf-checkout-page textarea,
.mf-checkout-page select {
    background: #07192f !important;
    color: #ffffff !important;
    border: 1px solid rgba(255,255,255,0.18) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

.mf-checkout-page input.input-text:focus,
.mf-checkout-page textarea:focus,
.mf-checkout-page select:focus {	
    border-color: #EF4138 !important;
    /* border-color: #f238c9 !important; */
    outline: none !important;
}

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

.mf-checkout-header {
    background: #061629 !important;
    padding-top: 55px !important;
    padding-bottom: 55px !important;
}

.mf-checkout-header .et_pb_fullwidth_header_container,
.mf-checkout-header .header-content-container,
.mf-checkout-header .header-content {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

.mf-checkout-header .et_pb_module_header {
    color: #ffffff !important;
    font-family: "Space Grotesk", sans-serif !important;
    font-size: 42px !important;
    font-weight: 600 !important;
    letter-spacing: -1px !important;
}

.mf-checkout-header::before,
.mf-checkout-header::after {
    display: none !important;
}

/* Checkout title colour */

.mf-checkout-header .et_pb_module_header,
.mf-checkout-header h1 {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

/* =====================================================
   CHECKOUT — ORDER SUMMARY
   ===================================================== */

.mf-checkout-page .woocommerce-checkout-review-order {
    margin-top: 25px !important;
}

.mf-checkout-page .woocommerce-checkout-review-order h3 {
    color: #ffffff !important;
    font-family: "Space Grotesk", sans-serif !important;
    font-size: 26px !important;
    font-weight: 600 !important;
}

/* Order table */

.mf-checkout-page .woocommerce-checkout-review-order-table {
    width: 100% !important;
    background: #0b223d !important;
    border: 1px solid rgba(255,255,255,0.18) !important;
    border-collapse: collapse !important;
    color: rgba(255,255,255,0.85) !important;
}

.mf-checkout-page .woocommerce-checkout-review-order-table th,
.mf-checkout-page .woocommerce-checkout-review-order-table td {
    background: transparent !important;
    color: rgba(255,255,255,0.85) !important;
    border-color: rgba(255,255,255,0.16) !important;
    padding: 12px 10px !important;
}

.mf-checkout-page .woocommerce-checkout-review-order-table th {
    font-family: "IBM Plex Mono", monospace !important;
    font-size: 11px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.8px !important;
}

.mf-checkout-page .woocommerce-checkout-review-order-table .product-name,
.mf-checkout-page .woocommerce-checkout-review-order-table .product-total {
    color: #ffffff !important;
}

/* Payment methods */

.mf-checkout-page #payment {
    background: #0b223d !important;
    color: rgba(255,255,255,0.85) !important;
    border: 1px solid rgba(255,255,255,0.10) !important;
    border-radius: 0 !important;
    padding: 10px !important;
}

.mf-checkout-page #payment label {
    color: rgba(255,255,255,0.85) !important;
}

.mf-checkout-page #payment .payment_box {
    background: #07192f !important;
    color: rgba(255,255,255,0.75) !important;
}

.mf-checkout-page #payment .payment_box::before {
    border-bottom-color: #07192f !important;
}

.mf-checkout-page #payment .woocommerce-privacy-policy-text,
.mf-checkout-page #payment .woocommerce-terms-and-conditions-checkbox-text {
    color: rgba(255,255,255,0.75) !important;
}

.mf-checkout-page #payment a {
    color: #EF4138 !important;
    /* color: #f238c9 !important; */
}

/* Place order */

.mf-checkout-page #place_order {
    background: #EF4138 !important;
    /*background: #f238c9 !important; 29/09 */
    color: #ffffff !important;
    /* border: none !important;
    border-radius: 0 !important; */

    font-family: "IBM Plex Mono", monospace !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    letter-spacing: 1px !important;
    text-transform: uppercase !important;

    padding: 16px 28px !important;
}

/* checkout hover */
.mf-checkout-page #place_order:hover {
    background: transparent !important;
    border-color: #EF4138 !important;
    color: #EF4138 !important;
    /* background: #FF2C2C !important; */
    /* background: #ff5bd8 !important; 2809 */
}

/* =====================================================
   CHECKOUT — MOBILE WIDTH
   ===================================================== */

@media (max-width: 767px) {

    .mf-checkout-page .woocommerce {
        width: 100% !important;
        max-width: none !important;
        margin: 0 !important;
    }

    .mf-checkout-page .woocommerce-checkout {
        width: 100% !important;
        max-width: none !important;
        margin: 0 !important;
    }

    .mf-checkout-page .checkout {
        width: 100% !important;
        max-width: none !important;
        margin: 0 !important;
    }

    .mf-checkout-page .woocommerce-checkout .col2-set,
    .mf-checkout-page .woocommerce-checkout .col2-set .col-1,
    .mf-checkout-page .woocommerce-checkout .col2-set .col-2 {
        width: 100% !important;
        max-width: none !important;
        float: none !important;
        margin: 0 !important;
    }

}

@media (max-width: 767px) {

    /* Checkout main container */

    .mf-checkout-page .et_pb_row {
        width: calc(100% - 30px) !important;
        max-width: none !important;
        margin-left: 15px !important;
        margin-right: 15px !important;
    }

    .mf-checkout-page .et_pb_column {
        width: 100% !important;
        max-width: none !important;
        margin: 0 !important;
    }

}

@media (max-width: 767px) {

    /* Checkout title spacing */

    .mf-checkout-header {
        padding-top: 30px !important;
        padding-bottom: 30px !important;
    }

    .mf-checkout-header .et_pb_module_header {
        font-size: 30px !important;
    }


    /* Checkout form spacing */

    .mf-checkout-page .form-row {
        margin-bottom: 10px !important;
    }

    .mf-checkout-page .form-row label {
        margin-bottom: 4px !important;
    }


    /* Section headings */

    .mf-checkout-page h3 {
        font-size: 20px !important;
        line-height: 1.15 !important;
        margin-bottom: 10px !important;
    }


    /* Additional information */

    .mf-checkout-page .woocommerce-additional-fields {
        margin-top: 8px !important;
    }


    /* Order section */

    .mf-checkout-page .woocommerce-checkout-review-order {
        margin-top: 12px !important;
    }

}


/* =====================================================
   Booking Form
   ===================================================== */

/* =========================================
   Merseyflight Booking - Left Panel
   ========================================= */

.mf-booking-left {
    position: sticky !important;
    top: 150px;
    align-self: flex-start;

    /* Fill the visible browser height */
    min-height: calc(100vh - 180px);

    /* Aircraft image
    background-size: cover !important;
    background-position: center 85% !important;
    background-repeat: no-repeat !important; */	

    overflow: hidden !important;
}

.mf-booking-left::before {
    content: "";
    position: absolute;
    inset: 0;

    background: linear-gradient(
        to bottom,
        rgba(4,20,40,0.45) 0%,
        rgba(4,20,40,0.30) 35%,
        rgba(4,20,40,0.45) 60%,
        rgba(4,20,40,0.90) 88%,
        #041428 100%
    );

    z-index: 1;
    pointer-events: none;
}


/* =====================================================
   Booking BREADCRUMB
   ===================================================== */

/* Merseyflight – Booking Page Breadcrumb */
/*
.mf-booking-page .mf-product-breadcrumb,
.mf-booking-page .mf-product-breadcrumb *,
.mf-booking-page .woocommerce-breadcrumb {
    color: rgba(255,255,255,0.70) !important;
}

.mf-booking-page .mf-product-breadcrumb a,
.mf-booking-page .woocommerce-breadcrumb a {
    color: #f238c9 !important;
}
*/

.mf-booking-left > * {
    position: relative;
    z-index: 2;
}

.mf-booking-left .et_pb_text {
    text-shadow: 0 1px 3px rgba(0,0,0,0.65);
}

/* =====================================================
   MOBILE — SLIM TIMELINE
   ===================================================== */

@media (max-width: 767px) {

    /* ---------------------------------------------
       1. Make the timeline rail itself 42px wide
       --------------------------------------------- */
/*
    .mf-flightplan .et_pb_timeline {
        width: 25px !important;
        max-width: 25px !important;
        flex: 0 0 25px !important;
        position: relative !important;
    }
*/

    /* ---------------------------------------------
       2. Remove the desktop card area completely
       --------------------------------------------- */
/*
    .mf-flightplan .et_pb_timeline_card,
    .mf-flightplan .et_pb_timeline_space {
        display: none !important;
    }
*/

    /* ---------------------------------------------
       3. Make the ornament exactly the same width
       as the mobile rail
       --------------------------------------------- */
/*
    .mf-flightplan .et_pb_timeline_ornament {
        width: 34px !important;
        max-width: 34px !important;
        min-width: 34px !important;
        margin: 0 !important;
        padding: 0 !important;
        position: relative !important;
    }
*/

    /* ---------------------------------------------
       4. Centre connector and marker on the rail
       --------------------------------------------- */
/*
    .mf-flightplan .et_pb_timeline_connector {
        margin-left: auto !important;
        margin-right: auto !important;
    }

    .mf-flightplan .et_pb_timeline_marker {
        margin-left: auto !important;
        margin-right: auto !important;
    }
*/

    /* ---------------------------------------------
       5. Make the SVG use the same 42px rail
       --------------------------------------------- */
/*
    .mf-flightplan .mf-flightpath {
        width: 34px !important;
        max-width: 34px !important;
        left: 0 !important;
    }
*/

    /* ---------------------------------------------
       6. Hide all timeline text
       --------------------------------------------- */

	
    .mf-flightplan .et_pb_timeline_date,
	.mf-flightplan .et_pb_timeline_card {
        display: none !important;
    }

/*
    .mf-flightplan .et_pb_timeline_date {
        display: block !important;

        font-size: 8px !important;
        line-height: 1.1 !important;
        letter-spacing: 0.5px !important;

        width:30px !important;
        max-width: 30px !important;

        margin: 0 !important;
        padding: 0 !important;
    }	
*/
	
}

	
/* =====================================================
   MOBILE — REMOVE DESKTOP MARKER OFFSET
   ===================================================== */

@media (max-width: 767px) {

    .mf-flightplan .et_pb_timeline_item,
    .mf-flightplan .et_pb_timeline_ornament,
    .mf-flightplan .et_pb_timeline_marker {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    .mf-flightplan .et_pb_timeline_ornament,
    .mf-flightplan .et_pb_timeline_marker {
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    .mf-flightplan .et_pb_timeline_marker {
        position: relative !important;
        left: 17px !important;
        transform: translateX(-50%) !important;
    }

}



/* =====================================================
   MOBILE — FLIGHTPLAN LAYOUT
   ===================================================== */

@media (max-width: 767px) {
	
    .mf-flightplan-layout {
        display: grid !important;
        grid-template-columns: 15% 85% !important;
        grid-template-rows: auto auto !important;
        align-items: start !important;
        width: 100% !important;
        max-width: 100% !important;
        *margin: 0 !important;
        padding: 0 !important;
        box-sizing: border-box !important;
    }

    /* ---------------------------------------------
       INTRO
       --------------------------------------------- */

    .mf-flightplan-layout > .et_pb_text {
        grid-column: 1 / -1 !important;
        grid-row: 1 !important;
    }

    /* ---------------------------------------------
       TIMELINE
       --------------------------------------------- */
    .mf-flightplan {
        transform: translateY(150px) !important;
    }
	
    .mf-flightplan-layout > .et_pb_timeline {
        grid-column: 1 !important;
        grid-row: 2 !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
    }
	
	/* Hide timeline text */
    .mf-flightplan .et_pb_timeline_date,
	.mf-flightplan .et_pb_timeline_card {
        display: none !important;
    }
	
    /* Give the course row a little more usable width */
    body .mf-flightplan-layout .mf-course-row {
        width: calc(100% + 30px) !important;
        max-width: none !important;
        transform: translateX(-40px) !important;
        overflow: visible !important;
    }

    /* The course column must stay inside its row */
    body .mf-flightplan-layout .mf-course-row > .et_pb_column {
        flex: 0 0 100% !important;
        width: 100% !important;
        max-width: none !important;
        min-width: 0 !important;
        margin-right: 0 !important;
    }

    /* Panel simply fills its containing column */
    body .mf-flightplan-layout .mf-course-panel {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        box-sizing: border-box !important;
    }
	

	
    /* ---------------------------------------------
       PANEL ROW
       --------------------------------------------- */

    .mf-flightplan-layout > .et_pb_row {
        grid-column: 2 !important;
        grid-row: 2 !important;

        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;

        margin: 0 !important;
        padding: 0 14px 0 0 !important;

        position: relative !important;
        left: 0 !important;
        right: auto !important;

        box-sizing: border-box !important;
    }

    /* ---------------------------------------------
       PANEL ROW'S COLUMN
       --------------------------------------------- */

    .mf-flightplan-layout > .et_pb_row > .et_pb_column {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;

        margin-left: 0 !important;
        margin-right: 0 !important;
		/*margin: 0 !important;*/
        padding: 0 !important;

        box-sizing: border-box !important;
    }

    /* ---------------------------------------------
       COURSE PANEL
       --------------------------------------------- */

    .mf-flightplan-layout .mf-course-panel {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;

        margin-left: 0 !important;
        margin-right: 0 !important;
		margin-top: 10px !important;

		box-sizing: border-box !important;
    }

    .mf-flightplan-layout > .et_pb_column:nth-child(2) {
        background: transparent !important;
        overflow: visible !important;
    }

}