/* =========================================================================
   MMA Fitness Lab theme
   Colours: red #E31C25 / dark red #B9141C / black #111111 / card #1C1C1C
            line #2B2B2B / grey #EEEEEE / muted #9A9A9A / body text #777777
   Font: Montserrat
   Page sections are Elementor widgets with "mm-" CSS classes
   (Advanced tab > CSS Classes). Classes are listed in readme.txt.
   ========================================================================= */

/* ---------- Base ---------- */
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:90px;overflow-x:clip}
body.mmafl-site{margin:0;font-family:"Montserrat",system-ui,-apple-system,sans-serif;font-size:16px;line-height:1.65;color:#111111;background:#FFFFFF;-webkit-font-smoothing:antialiased;overflow-x:clip}
.mmafl-site img{max-width:100%;height:auto}
.mmafl-site a{color:inherit;text-decoration:none}
.mmafl-site h1,.mmafl-site h2,.mmafl-site h3,.mmafl-site h4{font-family:"Montserrat",system-ui,sans-serif;font-weight:900;text-transform:uppercase;line-height:1.05;letter-spacing:-.01em;margin:0 0 .5em}
.mm-skip{position:absolute;left:-9999px;top:0;z-index:999;background:#E31C25;color:#FFFFFF;padding:10px 16px;font-weight:800}
.mm-skip:focus{left:10px;top:10px}
.mmh-wrap{max-width:1240px;margin:0 auto;padding:0 20px}
.mm-main{display:block}

/* Button look shared by header/footer/theme pages */
.mm-btnlike{display:inline-flex;align-items:center;justify-content:center;gap:10px;font-weight:800;font-size:14px;letter-spacing:.06em;text-transform:uppercase;padding:15px 26px;border:2px solid #E31C25;background:#E31C25;color:#FFFFFF!important;transition:.25s;clip-path:polygon(0 0,100% 0,100% 70%,calc(100% - 12px) 100%,0 100%);line-height:1.2;white-space:nowrap}
.mm-btnlike:hover{background:#B9141C;border-color:#B9141C;transform:translateY(-2px)}
.mm-btnlike-ghost{background:transparent;border-color:#FFFFFF}
.mm-btnlike-ghost:hover{background:#FFFFFF;border-color:#FFFFFF;color:#111111!important}

/* Social icons */
.mm-social{display:flex;gap:8px;align-items:center}
.mm-social a{width:34px;height:34px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.25);color:#FFFFFF;transition:.25s}
.mm-social a:hover{background:#E31C25;border-color:#E31C25}
.mm-social svg{width:16px;height:16px;fill:currentColor}

/* ---------- Header ---------- */
.mmh-top{background:#000000;color:#BDBDBD;font-size:13px;border-bottom:1px solid #2B2B2B}
.mmh-top .mmh-wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:44px}
.mmh-top-info{display:flex;gap:26px;flex-wrap:wrap}
.mmh-top-item{display:inline-flex;align-items:center;gap:8px}
.mmh-top-item::before{content:"";width:6px;height:6px;background:#E31C25;transform:rotate(45deg)}
.mmh-top a:hover{color:#FFFFFF}
.mmh-top .mm-social a{width:28px;height:28px;border:0}
.mmh-top .mm-social svg{width:14px;height:14px}

.mmh{position:sticky;top:0;z-index:100;background:rgba(17,17,17,.97);backdrop-filter:blur(8px);border-bottom:1px solid #2B2B2B;transition:box-shadow .3s}
.admin-bar .mmh{top:32px}
.mmh.mmh-scrolled{box-shadow:0 10px 30px rgba(0,0,0,.45)}
.mmh-bar{display:flex;align-items:center;gap:30px;height:86px}
.mmh-logo{flex:0 0 auto}
.mmh-logo img{height:62px;width:auto;display:block}
.mmh-nav{flex:1;display:flex;justify-content:center}
.mmh-nav .menu{list-style:none;margin:0;padding:0;display:flex;gap:4px}
.mmh-nav .menu > li{position:relative}
.mmh-nav .menu > li > a{display:flex;align-items:center;gap:6px;padding:31px 14px;color:#FFFFFF;font-size:13px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;position:relative}
.mmh-nav .menu > li > a::after{content:"";position:absolute;left:14px;right:14px;bottom:22px;height:2px;background:#E31C25;transform:scaleX(0);transform-origin:left;transition:transform .25s}
.mmh-nav .menu > li:hover > a::after,.mmh-nav .menu > li.current-menu-item > a::after,.mmh-nav .menu > li.current-menu-ancestor > a::after{transform:scaleX(1)}
.mmh-nav .menu-item-has-children > a::before{content:"";order:2;width:7px;height:7px;border-right:2px solid #E31C25;border-bottom:2px solid #E31C25;transform:rotate(45deg) translateY(-3px)}
.mmh-nav .sub-menu{list-style:none;margin:0;padding:10px 0;position:absolute;left:0;top:100%;min-width:230px;background:#111111;border-top:3px solid #E31C25;box-shadow:0 20px 40px rgba(0,0,0,.5);opacity:0;visibility:hidden;transform:translateY(10px);transition:.25s;z-index:10}
.mmh-nav .menu > li:hover > .sub-menu,.mmh-nav .menu > li:focus-within > .sub-menu{opacity:1;visibility:visible;transform:none}
.mmh-nav .sub-menu a{display:block;padding:11px 22px;color:#D5D5D5;font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;transition:.2s}
.mmh-nav .sub-menu a:hover{color:#FFFFFF;background:#1C1C1C;padding-left:28px}
.mmh-nav-extra{display:none}
.mmh-toggle{display:none;width:48px;height:48px;border:1px solid #2B2B2B;background:transparent;cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:5px;padding:0;margin-left:auto}
.mmh-toggle span{display:block;width:22px;height:2px;background:#FFFFFF;transition:.3s}
.mmh-open .mmh-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.mmh-open .mmh-toggle span:nth-child(2){opacity:0}
.mmh-open .mmh-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* ---------- Footer ---------- */
.mmf{background:#0B0B0B;color:#BDBDBD;font-size:15px;border-top:4px solid #E31C25}
.mmf-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.4fr;gap:50px;padding-top:90px;padding-bottom:70px}
.mmf h4{color:#FFFFFF;font-size:15px;letter-spacing:.14em;margin:0 0 24px;position:relative;padding-bottom:14px}
.mmf h4::after{content:"";position:absolute;left:0;bottom:0;width:36px;height:3px;background:#E31C25}
.mmf ul{list-style:none;margin:0;padding:0;display:grid;gap:11px}
.mmf-col ul a{transition:.2s;display:inline-flex;align-items:center;gap:8px}
.mmf-col ul a::before{content:"";width:6px;height:6px;border-right:2px solid #E31C25;border-bottom:2px solid #E31C25;transform:rotate(-45deg)}
.mmf-info a::before{display:none!important}
.mmf-col ul a:hover{color:#FFFFFF;transform:translateX(4px)}
.mmf-logo img{height:84px;width:auto;margin-bottom:20px}
.mmf-about p{margin:0 0 24px;line-height:1.7}
.mmf-hours-title{margin-top:34px!important}
.mm-hours{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.mm-hours li{display:flex;justify-content:space-between;gap:14px;border-bottom:1px dashed rgba(255,255,255,.12);padding-bottom:8px;font-size:14px}
.mm-hours b{color:#FFFFFF;font-weight:700;text-align:right}
.mmf-bottom{border-top:1px solid #222222;padding:22px 0;font-size:13px}
.mmf-bottom .mmh-wrap{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
.mmf-top:hover{color:#FFFFFF}

/* Mobile sticky bar */
.mm-sticky{display:none;position:fixed;left:0;right:0;bottom:0;z-index:90;grid-template-columns:1fr 1.5fr;box-shadow:0 -8px 24px rgba(0,0,0,.4);transform:translateY(110%);transition:transform .35s}
.mm-sticky.mm-show{transform:none}
.mm-sticky a{padding:17px 10px;text-align:center;font-weight:800;font-size:14px;letter-spacing:.06em;text-transform:uppercase;color:#FFFFFF}
.mm-sticky-call{background:#111111}
.mm-sticky-book{background:#E31C25}

/* ---------- Non-Elementor pages ---------- */
.mm-pagebanner{background:#111111 url("https://www.mmafitnesslab.com/wp-content/uploads/2025/04/Group-photo-MMA-Fitness-Lab-Singapore.jpg") center 30%/cover;position:relative;color:#FFFFFF;padding:120px 0 100px;text-align:center}
.mm-pagebanner::before{content:"";position:absolute;inset:0;background:rgba(0,0,0,.8)}
.mm-pagebanner .mmh-wrap{position:relative}
.mm-pagebanner h1{font-size:clamp(34px,5vw,60px);margin:0}
.mm-content{padding-top:80px;padding-bottom:100px}
.mm-content p{margin:0 0 1.2em}
.mm-404-num{display:block;font-size:clamp(90px,16vw,200px);font-weight:900;color:#E31C25;line-height:1}
.mm-404 p{color:#D8D8D8}
.mm-404-btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:30px}
.mm-posts{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.mm-post-card{border:1px solid #E4E4E4;background:#FFFFFF;transition:.3s}
.mm-post-card:hover{transform:translateY(-6px);box-shadow:0 24px 50px rgba(0,0,0,.12)}
.mm-post-img img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block}
.mm-post-body{padding:28px}
.mm-post-date{font-size:12px;font-weight:800;color:#E31C25;letter-spacing:.12em;text-transform:uppercase}
.mm-post-body h2{font-size:20px;margin:10px 0 12px}
.mm-readmore{font-weight:800;color:#E31C25;font-size:14px}
.mm-pagination{margin-top:50px}
.mm-pagination .page-numbers{display:inline-block;padding:10px 16px;border:1px solid #DDDDDD;margin-right:6px;font-weight:700}
.mm-pagination .current{background:#E31C25;border-color:#E31C25;color:#FFFFFF}

/* =========================================================================
   ELEMENTOR SECTIONS
   ========================================================================= */
.mmafl-site .elementor-section.mm-sec{padding:110px 0}
.mmafl-site .elementor-top-section.elementor-section-boxed > .elementor-container{max-width:1240px;padding:0 20px}
.mmafl-site .elementor-section.mm-sec-tight{padding:70px 0}
.mmafl-site .elementor-section.mm-flush{padding:0}
.mmafl-site .mm-dark{background-color:#111111;color:#FFFFFF}
.mmafl-site .mm-black{background-color:#000000;color:#FFFFFF}
.mmafl-site .mm-light{background-color:#FFFFFF;color:#111111}
.mmafl-site .mm-grey{background-color:#EEEEEE;color:#111111}
.mmafl-site .mm-red{background-color:#E31C25;color:#FFFFFF}
.mmafl-site .elementor-heading-title{margin:0}
.mmafl-site .elementor-widget-wrap > .elementor-inner-section{width:100%}
.mmafl-site .elementor-inner-section + .elementor-inner-section{margin-top:24px}
.mmafl-site .elementor-inner-section + .elementor-widget{margin-top:30px}
.mmafl-site .mm-sec .elementor-heading-title{color:inherit}
.mmafl-site .mm-sec .elementor-widget:not(:last-child){margin-bottom:20px}
.mmafl-site .mm-sec .elementor-widget-text-editor{color:inherit}
.mmafl-site .mm-sec .elementor-widget-text-editor p:last-child{margin-bottom:0}

/* Section heading block */
.mmafl-site .mm-head > .elementor-widget-wrap{position:relative;text-align:center;max-width:780px;margin:0 auto;padding-bottom:30px!important}
.mmafl-site .mm-head-left > .elementor-widget-wrap{position:relative;padding-bottom:10px!important}
.mmafl-site .mm-head-left .elementor-widget.mm-ghost{left:0;transform:none}
.mmafl-site .elementor-widget.mm-ghost{position:absolute!important;left:50%;top:-48px;transform:translateX(-50%);z-index:0;margin:0!important;pointer-events:none;width:auto!important}
.mmafl-site .mm-ghost .elementor-heading-title{font-size:clamp(70px,13vw,170px)!important;font-weight:900;line-height:1;text-transform:uppercase;white-space:nowrap;color:rgba(255,255,255,.05)!important;letter-spacing:0}
.mmafl-site .mm-light .mm-ghost .elementor-heading-title,.mmafl-site .mm-grey .mm-ghost .elementor-heading-title{color:rgba(0,0,0,.05)!important}
.mmafl-site .mm-head .elementor-widget:not(.mm-ghost){position:relative;z-index:1}
.mmafl-site .mm-eyebrow .elementor-heading-title{display:inline-block;color:#E31C25!important;font-size:13px!important;font-weight:800;letter-spacing:.2em;text-transform:uppercase;line-height:1.4}
.mmafl-site .mm-title .elementor-heading-title{font-size:clamp(30px,4.6vw,54px);font-weight:900;text-transform:uppercase;line-height:1.05;letter-spacing:-.01em}
.mmafl-site .mm-title-sm .elementor-heading-title{font-size:clamp(26px,3.4vw,40px)}
.mmafl-site .mm-red-word,.mmafl-site .mm-title em,.mmafl-site .mm-h1 em{font-style:normal;color:#E31C25}
.mmafl-site .mm-lead{font-size:18px;line-height:1.7}
.mmafl-site .mm-dark .mm-lead,.mmafl-site .mm-black .mm-lead{color:#BDBDBD}
.mmafl-site .mm-lead a{color:#E31C25;font-weight:800}
.mmafl-site .mm-lead a:hover{text-decoration:underline}
.mmafl-site .mm-light .mm-lead,.mmafl-site .mm-grey .mm-lead{color:#777777}
.mmafl-site .mm-center,.mmafl-site .mm-center .elementor-heading-title{text-align:center}

/* Buttons (Elementor Button widget + class mm-btn) */
.mmafl-site .mm-btn .elementor-button{display:inline-flex;align-items:center;justify-content:center;font-family:"Montserrat",sans-serif;font-weight:800;font-size:15px;letter-spacing:.06em;text-transform:uppercase;padding:19px 34px;border:2px solid #E31C25;border-radius:0;background:#E31C25;color:#FFFFFF;line-height:1.2;transition:.25s;clip-path:polygon(0 0,100% 0,100% 70%,calc(100% - 14px) 100%,0 100%);box-shadow:none}
.mmafl-site .mm-btn .elementor-button:hover,.mmafl-site .mm-btn .elementor-button:focus{background:#B9141C;border-color:#B9141C;color:#FFFFFF;transform:translateY(-2px)}
.mmafl-site .mm-btn-ghost .elementor-button{background:transparent;border-color:#FFFFFF}
.mmafl-site .mm-btn-ghost .elementor-button:hover{background:#FFFFFF;border-color:#FFFFFF;color:#111111}
.mmafl-site .mm-btn-dark .elementor-button{background:#111111;border-color:#111111}
.mmafl-site .mm-btn-dark .elementor-button:hover{background:#FFFFFF;border-color:#FFFFFF;color:#111111}
.mmafl-site .mm-light .mm-btn-dark .elementor-button:hover,.mmafl-site .mm-grey .mm-btn-dark .elementor-button:hover{background:#E31C25;border-color:#E31C25;color:#FFFFFF}
.mmafl-site .mm-btn-full .elementor-button{width:100%}
.mmafl-site .mm-btn-center .elementor-button-wrapper{text-align:center}
.mmafl-site .elementor-widget.mm-inline{display:inline-block;width:auto;margin-right:14px}

/* Tick list (Text Editor with a bullet list + class mm-ticks) */
.mmafl-site .mm-ticks ul{list-style:none;margin:0;padding:0;display:grid;gap:13px}
.mmafl-site .mm-ticks li{display:flex;gap:13px;align-items:flex-start;font-weight:600;font-size:16px;line-height:1.45}
.mmafl-site .mm-ticks li::before{content:"";flex:0 0 20px;height:20px;margin-top:1px;background:#E31C25;clip-path:polygon(14% 52%,0 67%,40% 100%,100% 22%,85% 9%,38% 68%)}
.mmafl-site .mm-ticks-2 ul{grid-template-columns:1fr 1fr;column-gap:26px}
.mmafl-site .mm-redcol .mm-ticks li::before{background:#FFFFFF}

/* Small red tag */
.mmafl-site .mm-tag .elementor-heading-title{display:inline-block;background:#E31C25;color:#FFFFFF!important;font-size:12px!important;font-weight:800;letter-spacing:.16em;padding:9px 15px;text-transform:uppercase;line-height:1.3}

/* ---------- Home hero ---------- */
.mmafl-site .elementor-section.mm-hero{padding:110px 0 120px;min-height:calc(100vh - 130px);display:flex;align-items:center}
.mmafl-site .mm-hero > .elementor-container{width:100%}
.mmafl-site .mm-hero > .elementor-background-overlay{background:linear-gradient(100deg,rgba(0,0,0,.93) 0%,rgba(0,0,0,.8) 45%,rgba(0,0,0,.55) 100%)!important;opacity:1!important}
.mmafl-site .mm-hero-text > .elementor-widget-wrap{padding-right:50px!important;align-content:center}
.mmafl-site .mm-h1 .elementor-heading-title{font-size:clamp(38px,6vw,78px);font-weight:900;line-height:1.02;text-transform:uppercase;letter-spacing:-.02em}
.mmafl-site .mm-hero .mm-lead{color:#D8D8D8;font-size:19px;max-width:560px}
.mmafl-site .mm-stars{font-size:14px;color:#D8D8D8}
.mmafl-site .mm-stars b,.mmafl-site .mm-stars strong{color:#FFC107;font-size:20px;letter-spacing:2px;margin-right:8px}

/* Form card (holds a Contact Form 7 shortcode) */
.mmafl-site .mm-formcard > .elementor-widget-wrap{background:#FFFFFF;color:#111111;padding:40px 36px!important;border-top:6px solid #E31C25;box-shadow:0 30px 70px rgba(0,0,0,.55);align-content:flex-start}
.mmafl-site .mm-formcard .elementor-heading-title{color:#111111}

/* Inner page hero */
.mmafl-site .elementor-section.mm-pagehero{padding:150px 0 120px;text-align:center}
.mmafl-site .mm-pagehero > .elementor-background-overlay{background:linear-gradient(180deg,rgba(0,0,0,.85),rgba(0,0,0,.72))!important;opacity:1!important}
.mmafl-site .mm-pagehero .mm-h1 .elementor-heading-title{font-size:clamp(36px,5.6vw,72px)}
.mmafl-site .mm-pagehero .mm-lead{color:#D8D8D8}
.mmafl-site .mm-pagehero .mm-lead p{max-width:640px;margin:0 auto}
.mmafl-site .mm-pagehero .elementor-widget-wrap{justify-content:center}
.mmafl-site .mm-crumbs{font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#BDBDBD}
.mmafl-site .mm-crumbs a{color:#FFFFFF}
.mmafl-site .mm-crumbs a:hover{color:#E31C25}
.mmafl-site .mm-pagehero .elementor-button-wrapper{text-align:center}
.mmafl-site .mm-pagehero .mm-inline{margin:0 7px}

/* Trust strip */
.mmafl-site .elementor-section.mm-strip{padding:34px 0}
.mmafl-site .mm-stat .elementor-heading-title{text-align:center;font-size:34px;font-weight:900;line-height:1}
.mmafl-site .mm-stat-label{text-align:center;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.mmafl-site .mm-strip .elementor-widget:not(:last-child){margin-bottom:8px}

/* Class cards */
.mmafl-site .mm-cards > .elementor-container{gap:22px}
.mmafl-site .mm-card > .elementor-widget-wrap{background:#FFFFFF;border:1px solid #E4E4E4;display:flex;flex-direction:column;flex-wrap:nowrap;height:100%;transition:.3s;align-content:flex-start}
.mmafl-site .mm-card:hover > .elementor-widget-wrap{transform:translateY(-8px);box-shadow:0 24px 50px rgba(0,0,0,.16)}
.mmafl-site .mm-card .elementor-widget{width:100%;margin:0!important}
.mmafl-site .mm-card .mm-card-img{overflow:hidden;background:#222222}
.mmafl-site .mm-card .mm-card-img img{width:100%;height:260px;object-fit:cover;display:block;transition:.6s}
.mmafl-site .mm-card:hover .mm-card-img img{transform:scale(1.07)}
.mmafl-site .mm-card .mm-card-num .elementor-heading-title{font-size:12px;font-weight:800;color:#E31C25;letter-spacing:.16em;padding:24px 24px 0}
.mmafl-site .mm-card .mm-card-title .elementor-heading-title{font-size:24px;padding:4px 24px 0;color:#111111}
.mmafl-site .mm-card .mm-card-sub{padding:2px 24px 0;font-size:13px;font-weight:700;color:#777777}
.mmafl-site .mm-card .mm-ticks{padding:18px 24px 0}
.mmafl-site .mm-card .mm-ticks li{font-size:14px}
.mmafl-site .mm-card .mm-ticks li::before{flex-basis:16px;height:16px}
.mmafl-site .mm-card .mm-best{padding:16px 24px 0;font-size:13px;color:#777777}
.mmafl-site .mm-card .mm-best p{border-top:1px solid #EEEEEE;padding-top:14px;margin:0}
.mmafl-site .mm-card .mm-btn{margin-top:auto!important;padding:20px 24px 24px}
.mmafl-site .mm-card .mm-btn .elementor-button{width:100%;padding:15px 18px;font-size:13px}

/* 1:1 coaching split */
.mmafl-site .mm-redcol > .elementor-widget-wrap{background:#E31C25;color:#FFFFFF;padding:90px 70px!important;align-content:center}
.mmafl-site .mm-redcol .mm-eyebrow .elementor-heading-title{color:#FFFFFF!important;opacity:.85}
.mmafl-site .mm-redcol .mm-lead{color:#FFFFFF}
.mmafl-site .mm-imgcol > .elementor-widget-wrap{position:relative;min-height:540px;padding:0!important;background:#222222}
.mmafl-site .mm-imgcol .elementor-widget-image{position:absolute!important;inset:0;margin:0!important;width:100%;height:100%}
.mmafl-site .mm-imgcol .elementor-widget-image .elementor-widget-container,.mmafl-site .mm-imgcol .elementor-widget-image img{width:100%;height:100%;object-fit:cover;display:block}
.mmafl-site .elementor-widget.mm-badge{position:absolute!important;z-index:2;left:-40px;bottom:50px;width:auto;margin:0!important;background:#111111;color:#FFFFFF;padding:22px 28px;border-left:6px solid #FFFFFF;box-shadow:0 20px 40px rgba(0,0,0,.5)}
.mmafl-site .mm-badge p{margin:0;font-weight:900;text-transform:uppercase;line-height:1.1;font-size:26px}
.mmafl-site .mm-badge small{display:block;font-size:11px;letter-spacing:.16em;color:#E31C25;margin-bottom:6px;font-weight:800}

/* Image collage (kids) */
.mmafl-site .mm-collage > .elementor-widget-wrap{display:grid!important;grid-template-columns:1fr 1fr;gap:14px;position:relative}
.mmafl-site .mm-collage .elementor-widget{margin:0!important;width:100%}
.mmafl-site .mm-collage .elementor-widget-image img{width:100%;aspect-ratio:1;object-fit:cover;display:block}
.mmafl-site .mm-collage .elementor-widget-image:first-of-type{grid-column:span 2}
.mmafl-site .mm-collage .elementor-widget-image:first-of-type img{aspect-ratio:16/9}
.mmafl-site .elementor-widget.mm-collage-tag{position:absolute!important;top:18px;left:18px;z-index:2;width:auto}
.mmafl-site .mm-chips p{display:flex;gap:10px;flex-wrap:wrap;margin:0}
.mmafl-site .mm-chips span{border:2px solid currentColor;font-weight:800;font-size:13px;padding:9px 16px;text-transform:uppercase;letter-spacing:.06em}
.mmafl-site .mm-pad-left > .elementor-widget-wrap{padding-left:60px!important}
.mmafl-site .mm-pad-right > .elementor-widget-wrap{padding-right:60px!important}
.mmafl-site .mm-vcenter > .elementor-widget-wrap{align-content:center}

/* Feature cards (why us / highlights) */
.mmafl-site .mm-features > .elementor-container{gap:24px}
.mmafl-site .mm-feature > .elementor-widget-wrap{border:1px solid #2B2B2B;background:#1C1C1C;padding:40px 34px!important;transition:.3s;align-content:flex-start}
.mmafl-site .mm-light .mm-feature > .elementor-widget-wrap,.mmafl-site .mm-grey .mm-feature > .elementor-widget-wrap{background:#FFFFFF;border-color:#E4E4E4}
.mmafl-site .mm-feature:hover > .elementor-widget-wrap{border-color:#E31C25;transform:translateY(-6px)}
.mmafl-site .mm-num .elementor-heading-title{min-width:58px;width:auto;padding:0 10px;height:58px;border:2px solid #E31C25;display:inline-grid;place-items:center;color:#E31C25!important;font-size:18px!important;font-weight:900}
.mmafl-site .mm-feature-title .elementor-heading-title{font-size:19px;line-height:1.25}
.mmafl-site .mm-feature .elementor-widget-text-editor{font-size:15px;color:#9A9A9A}
.mmafl-site .mm-light .mm-feature .elementor-widget-text-editor,.mmafl-site .mm-grey .mm-feature .elementor-widget-text-editor{color:#777777}
.mmafl-site .mm-feature a{color:#E31C25;font-weight:800}

/* Steps */
.mmafl-site .mm-step .mm-bignum .elementor-heading-title{font-size:68px;font-weight:900;color:#E31C25!important;line-height:1}

/* Schedule image */
.mmafl-site .mm-schedimg img{width:100%;max-width:1000px;display:block;margin:0 auto;background:#FFFFFF;padding:14px;border:1px solid #E4E4E4;box-shadow:0 30px 70px rgba(0,0,0,.12)}
.mmafl-site .mm-btnrow > .elementor-widget-wrap{justify-content:center;gap:14px}
.mmafl-site .mm-btnrow .elementor-widget{width:auto!important;margin:0!important}

.mmafl-site .mm-btnrow-3 > .elementor-container{gap:16px}
.mmafl-site .mm-btnrow-3 .elementor-widget{margin:0!important}

/* Packages */
.mmafl-site .mm-packs > .elementor-container{gap:28px;align-items:stretch}
.mmafl-site .mm-pack > .elementor-widget-wrap{background:#FFFFFF;border:1px solid #E2E2E2;padding:46px 36px!important;display:flex;flex-direction:column;flex-wrap:nowrap;height:100%;position:relative;transition:.3s;align-content:flex-start}
.mmafl-site .mm-pack:hover > .elementor-widget-wrap{transform:translateY(-6px);box-shadow:0 24px 50px rgba(0,0,0,.14)}
.mmafl-site .mm-pack.mm-pop > .elementor-widget-wrap{background:#111111;color:#FFFFFF;border-color:#111111;box-shadow:0 30px 60px rgba(0,0,0,.3)}
.mmafl-site .mm-pack .elementor-widget{width:100%}
.mmafl-site .elementor-widget.mm-ribbon{position:absolute!important;top:0;right:0;width:auto!important;margin:0!important}
.mmafl-site .mm-ribbon .elementor-heading-title{background:#E31C25;color:#FFFFFF!important;font-size:11px!important;font-weight:800;letter-spacing:.14em;padding:9px 15px;text-transform:uppercase}
.mmafl-site .mm-ribbon-dark .elementor-heading-title{background:#111111}
.mmafl-site .mm-pack-name .elementor-heading-title{font-size:22px;padding-right:80px}
.mmafl-site .mm-pack-desc{font-size:14px;color:#777777}
.mmafl-site .mm-pop .mm-pack-desc{color:#9A9A9A}
.mmafl-site .mm-price .elementor-heading-title{font-size:58px;font-weight:900;line-height:1;letter-spacing:-.02em}
.mmafl-site .mm-price small{font-size:15px;font-weight:700;color:#777777;letter-spacing:0;text-transform:none}
.mmafl-site .mm-pop .mm-price small{color:#9A9A9A}
.mmafl-site .mm-pack-sub{font-size:14px;color:#777777;font-weight:600}
.mmafl-site .mm-pack-sub p{margin:0 0 4px}
.mmafl-site .mm-pop .mm-pack-sub{color:#9A9A9A}
.mmafl-site .mm-pack .mm-ticks{border-top:1px solid #E6E6E6;padding-top:24px}
.mmafl-site .mm-pop .mm-ticks{border-color:#2B2B2B}
.mmafl-site .mm-pack .mm-ticks li{font-size:15px}
.mmafl-site .mm-pack .mm-btn{margin-top:auto!important;padding-top:12px}
.mmafl-site .mm-pack .mm-btn .elementor-button{width:100%}
.mmafl-site .mm-note{text-align:center;font-size:14px;color:#777777}
.mmafl-site .mm-note a{color:#E31C25;font-weight:800}

/* Coaches */
.mmafl-site .mm-team > .elementor-container{gap:22px}
.mmafl-site .mm-coach > .elementor-widget-wrap{position:relative;overflow:hidden;background:#222222;padding:0!important}
.mmafl-site .mm-coach .elementor-widget-image{margin:0!important;width:100%}
.mmafl-site .mm-coach img{width:100%;aspect-ratio:3/4;object-fit:cover;object-position:top;display:block;filter:grayscale(1);transition:.5s}
.mmafl-site .mm-coach:hover img{filter:none;transform:scale(1.05)}
.mmafl-site .mm-coach .elementor-widget-image::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 45%,rgba(0,0,0,.95) 100%);pointer-events:none}
.mmafl-site .elementor-widget.mm-coach-info{position:absolute!important;left:24px;right:24px;bottom:22px;z-index:2;margin:0!important;color:#FFFFFF}
.mmafl-site .mm-coach-info h3{font-size:24px;margin:0 0 4px;color:#FFFFFF}
.mmafl-site .mm-coach-info p{margin:0;font-size:12px;font-weight:700;color:#E31C25;letter-spacing:.08em;text-transform:uppercase}

/* Reviews */
.mmafl-site .mm-reviews > .elementor-container{gap:24px}
.mmafl-site .mm-review > .elementor-widget-wrap{background:#FFFFFF;border:1px solid #E4E4E4;border-left:5px solid #E31C25;padding:36px 30px!important;box-shadow:0 20px 50px rgba(0,0,0,.06);align-content:flex-start;color:#111111}
.mmafl-site .mm-review .mm-stars-y{color:#FFB400;font-size:18px;letter-spacing:3px}
.mmafl-site .mm-review blockquote{margin:0;font-size:18px;font-weight:700;line-height:1.5;border:0;padding:0;font-style:normal}
.mmafl-site .mm-review cite{display:block;font-style:normal;font-weight:800;font-size:14px;text-transform:uppercase;letter-spacing:.06em;margin-top:18px}
.mmafl-site .mm-review cite span{display:block;font-weight:500;color:#777777;text-transform:none;letter-spacing:0;font-size:12px}

/* Gallery strip */
.mmafl-site .mm-gallery .elementor-column{min-width:0}
.mmafl-site .mm-gallery .elementor-widget-image{margin:0!important}
.mmafl-site .mm-gallery img{width:100%;aspect-ratio:1;object-fit:cover;display:block;filter:grayscale(.6);transition:.4s}
.mmafl-site .mm-gallery img:hover{filter:none}

/* FAQ (Elementor Toggle widget + class mm-faq) */
.mmafl-site .mm-faq{max-width:880px;margin-left:auto;margin-right:auto}
.mmafl-site .mm-faq .elementor-toggle-item{border:0;border-bottom:1px solid #CFCFCF;margin:0!important}
.mmafl-site .mm-dark .mm-faq .elementor-toggle-item{border-color:#2B2B2B}
.mmafl-site .mm-faq .elementor-tab-title{border:0!important;padding:26px 40px 26px 0!important;position:relative;font-weight:800;font-size:18px;line-height:1.4;cursor:pointer}
.mmafl-site .mm-faq .elementor-tab-title a,.mmafl-site .mm-faq .elementor-toggle-title{color:inherit!important;font-family:"Montserrat",sans-serif;font-weight:800;font-size:18px}
.mmafl-site .mm-faq .elementor-toggle-icon{display:none!important}
.mmafl-site .mm-faq .elementor-tab-title::after{content:"+";position:absolute;right:0;top:50%;transform:translateY(-50%);color:#E31C25;font-size:30px;font-weight:400;line-height:1;transition:.2s}
.mmafl-site .mm-faq .elementor-tab-title.elementor-active::after{transform:translateY(-50%) rotate(45deg)}
.mmafl-site .mm-faq .elementor-tab-content{border:0!important;padding:0 40px 26px 0!important;font-size:16px;line-height:1.7;color:#777777}
.mmafl-site .mm-dark .mm-faq .elementor-tab-content{color:#9A9A9A}

/* Final CTA */
.mmafl-site .elementor-section.mm-final{padding:120px 0}
.mmafl-site .mm-final > .elementor-background-overlay{background:linear-gradient(100deg,rgba(0,0,0,.95) 0%,rgba(0,0,0,.85) 50%,rgba(0,0,0,.7) 100%)!important;opacity:1!important}
.mmafl-site .mm-final .mm-title .elementor-heading-title{font-size:clamp(34px,5.4vw,64px)}
.mmafl-site .mm-info p{margin:0 0 14px;font-size:15px}
.mmafl-site .mm-info b,.mmafl-site .mm-info strong{display:block;color:#E31C25;font-size:12px;letter-spacing:.14em;text-transform:uppercase}

/* Contact cards */
.mmafl-site .mm-contact-card > .elementor-widget-wrap{border:1px solid #E4E4E4;background:#FFFFFF;padding:40px 34px!important;text-align:center;transition:.3s;align-content:flex-start}
.mmafl-site .mm-contact-card:hover > .elementor-widget-wrap{border-color:#E31C25;transform:translateY(-6px)}
.mmafl-site .mm-contact-card .mm-num .elementor-heading-title{margin:0 auto}
.mmafl-site .mm-contact-card a{color:#E31C25;font-weight:800}
.mmafl-site .mm-hours-box .mm-hours li{border-color:rgba(0,0,0,.12)}
.mmafl-site .mm-hours-box .mm-hours b{color:#111111}
.mmafl-site .mm-dark .mm-hours-box .mm-hours li{border-color:rgba(255,255,255,.12)}
.mmafl-site .mm-dark .mm-hours-box .mm-hours b{color:#FFFFFF}
.mmafl-site .mm-map iframe{width:100%;height:440px;border:0;filter:grayscale(.35);display:block}
.mmafl-site .mm-video video,.mmafl-site .mm-video iframe{width:100%;display:block}
.mmafl-site .mm-video .elementor-wrapper{box-shadow:0 30px 70px rgba(0,0,0,.4)}
.mmafl-site .mm-amenity img{width:64px;height:64px;margin:0 auto;display:block}

/* =========================================================================
   TIMETABLE  [mmafl_timetable]
   ========================================================================= */
.mm-timetable{font-family:"Montserrat",sans-serif}
.mm-tt-days{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-bottom:16px}
.mm-tt-days button{padding:20px 8px;background:#FFFFFF;border:1px solid #DADADA;font-family:inherit;font-weight:900;text-transform:uppercase;font-size:15px;letter-spacing:.08em;color:#111111;cursor:pointer;transition:.2s}
.mm-tt-days button.on{background:#111111;color:#FFFFFF;border-color:#111111}
.mm-dark .mm-tt-days button,.mm-black .mm-tt-days button{background:#1C1C1C;border-color:#2B2B2B;color:#BDBDBD}
.mm-dark .mm-tt-days button.on,.mm-black .mm-tt-days button.on{background:#E31C25;border-color:#E31C25;color:#FFFFFF}
.mm-tt-filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:36px}
.mm-tt-filters button{padding:10px 20px;border:1px solid #CFCFCF;background:transparent;font-family:inherit;font-weight:700;font-size:13px;color:inherit;cursor:pointer;transition:.2s}
.mm-tt-filters button.on{background:#E31C25;border-color:#E31C25;color:#FFFFFF}
.mm-tt-slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:14px;min-height:100px}
.mm-tt-slot{background:#FFFFFF;color:#111111;border-left:5px solid #E31C25;padding:22px 24px;display:flex;align-items:center;justify-content:space-between;gap:12px;animation:mmPop .4s both;box-shadow:0 8px 24px rgba(0,0,0,.05)}
.mm-tt-slot b{display:block;font-size:20px;font-weight:900;line-height:1.1;margin-bottom:4px}
.mm-tt-slot span{display:block;font-size:13px;font-weight:800;color:#111111;text-transform:uppercase;letter-spacing:.05em}
.mm-tt-slot em{display:block;font-style:normal;font-size:12px;color:#777777;margin-top:2px}
.mm-tt-slot a{flex:0 0 auto;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:#E31C25!important;border:2px solid #E31C25;padding:9px 13px;transition:.2s}
.mm-tt-slot a:hover{background:#E31C25;color:#FFFFFF!important}
.mm-tt-empty{grid-column:1/-1;text-align:center;padding:40px 0;font-weight:600;color:#777777}
.mm-tt-note{margin:26px 0 0;font-size:13px;color:#777777;text-align:center}
@keyframes mmPop{from{opacity:0;transform:translateY(12px)}}

/* =========================================================================
   CONTACT FORM 7 (any form on the site)
   ========================================================================= */
.mmafl-site .wpcf7{width:100%}
.mmafl-site .wpcf7 form{margin:0}
.mmafl-site .wpcf7 form p{margin:0 0 14px;font-size:14px;line-height:1.5}
.mmafl-site .wpcf7 form p:empty{display:none}
.mmafl-site .wpcf7 h3{font-size:26px;margin:0 0 6px;color:#111111}
.mmafl-site .wpcf7 .fsub{color:#777777;font-size:14px;margin:0 0 20px}
.mmafl-site .wpcf7 .f{margin-bottom:14px}
.mmafl-site .wpcf7 label{display:block;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#111111;margin:0 0 6px}
.mmafl-site .wpcf7 .wpcf7-form-control-wrap{display:block;margin-top:6px}
.mmafl-site .wpcf7 input[type=text],.mmafl-site .wpcf7 input[type=email],.mmafl-site .wpcf7 input[type=tel],.mmafl-site .wpcf7 input[type=number],.mmafl-site .wpcf7 input[type=url],.mmafl-site .wpcf7 input[type=date],.mmafl-site .wpcf7 select,.mmafl-site .wpcf7 textarea{display:block;width:100%;max-width:100%;height:auto;margin:0;font-family:"Montserrat",sans-serif;font-size:16px;font-weight:500;line-height:1.3;letter-spacing:0;text-transform:none;padding:14px;border:2px solid #DDDDDD;border-radius:0;background-color:#FAFAFA;color:#111111;box-shadow:none;outline:none;transition:border-color .2s,background-color .2s;-webkit-appearance:none;appearance:none}
.mmafl-site .wpcf7 select{padding-right:44px;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23111111' stroke-width='2'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;background-size:12px 8px}
.mmafl-site .wpcf7 textarea{min-height:120px;resize:vertical}
.mmafl-site .wpcf7 input::placeholder,.mmafl-site .wpcf7 textarea::placeholder{color:#999999;opacity:1}
.mmafl-site .wpcf7 input:focus,.mmafl-site .wpcf7 select:focus,.mmafl-site .wpcf7 textarea:focus{border-color:#E31C25;background-color:#FFFFFF}
.mmafl-site .wpcf7 .wpcf7-form-control.wpcf7-not-valid{border-color:#E31C25;background-color:#FFF5F5}
.mmafl-site .wpcf7 .wpcf7-not-valid-tip{display:block;margin-top:6px;font-size:12px;font-weight:700;color:#E31C25}
.mmafl-site .wpcf7 .wpcf7-list-item{margin:0}
.mmafl-site .wpcf7 .wpcf7-list-item label{display:flex;align-items:flex-start;gap:10px;font-size:12px;font-weight:500;letter-spacing:0;text-transform:none;color:#777777;line-height:1.5}
.mmafl-site .wpcf7 input[type=checkbox],.mmafl-site .wpcf7 input[type=radio]{width:16px;height:16px;margin:2px 0 0;flex:0 0 16px;accent-color:#E31C25}
.mmafl-site .wpcf7 input[type=submit],.mmafl-site .wpcf7 button[type=submit],.mmafl-site .wpcf7 .wpcf7-submit{display:block;width:100%;height:auto;margin:6px 0 0;padding:17px 30px;font-family:"Montserrat",sans-serif;font-size:15px;font-weight:800;line-height:1.2;letter-spacing:.06em;text-transform:uppercase;color:#FFFFFF;background:#E31C25;border:2px solid #E31C25;border-radius:0;box-shadow:none;cursor:pointer;transition:.25s;-webkit-appearance:none;appearance:none;clip-path:polygon(0 0,100% 0,100% 70%,calc(100% - 14px) 100%,0 100%)}
.mmafl-site .wpcf7 input[type=submit]:hover,.mmafl-site .wpcf7 .wpcf7-submit:hover{background:#B9141C;border-color:#B9141C;transform:translateY(-2px)}
.mmafl-site .wpcf7 .wpcf7-submit:disabled{opacity:.6;cursor:not-allowed;transform:none}
.mmafl-site .wpcf7 .wpcf7-spinner{display:block;margin:10px auto 0}
.mmafl-site .wpcf7 form .wpcf7-response-output{margin:16px 0 0;padding:12px 14px;font-size:14px;font-weight:600;line-height:1.5;color:#111111;border:2px solid #E31C25;background:#FFF5F5}
.mmafl-site .wpcf7 form.sent .wpcf7-response-output{border-color:#25D366;background:#F2FFF6}
.mmafl-site .wpcf7 form.invalid .wpcf7-response-output,.mmafl-site .wpcf7 form.unaccepted .wpcf7-response-output{border-color:#FFB400;background:#FFFBEF}
.mmafl-site .wpcf7 .booknow{display:block;text-align:center;margin-top:14px;font-size:14px;font-weight:800;color:#E31C25}
.mmafl-site .wpcf7 .booknow:hover{text-decoration:underline}
.mmafl-site .wpcf7 .fnote{font-size:12px;color:#777777;text-align:center;margin-top:12px}

/* =========================================================================
   RESPONSIVE
   ========================================================================= */
@media (max-width:1180px){
  .mmh-nav .menu > li > a{padding:31px 10px;font-size:12px}
  .mmh-bar{gap:18px}
}
@media (max-width:1024px){
  .mmh-cta{display:none}
  .mmh-toggle{display:flex}
  .mmh{backdrop-filter:none;background:#111111}
  .mmh-nav{position:fixed;top:0;right:0;bottom:0;width:min(360px,88vw);background:#111111;flex-direction:column;justify-content:flex-start;padding:90px 26px 30px;overflow-y:auto;transform:translateX(100%);visibility:hidden;transition:transform .35s,visibility .35s;z-index:200;box-shadow:-20px 0 50px rgba(0,0,0,.5)}
  .mmh-open .mmh-nav{transform:none;visibility:visible}
  .mmh-open::after{content:"";position:fixed;inset:0;background:rgba(0,0,0,.6);z-index:150}
  .mmh-open .mmh{z-index:250}
  .mmh-toggle{position:relative;z-index:260}
  .mmh-nav .menu{flex-direction:column;gap:0}
  .mmh-nav .menu > li > a{padding:16px 0;border-bottom:1px solid #2B2B2B;font-size:14px;justify-content:space-between}
  .mmh-nav .menu > li > a::after{display:none}
  .mmh-nav .sub-menu{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;border:0;background:transparent;padding:4px 0 10px 14px;display:none}
  .mmh-nav .mm-sub-open > .sub-menu{display:block}
  .mmh-nav .sub-menu a{padding:10px 0}
  .mmh-nav .sub-menu a:hover{padding-left:6px;background:transparent}
  .mmh-nav-extra{display:grid;gap:18px;margin-top:30px}
  .mmh-nav-call{color:#FFFFFF;font-weight:800}
  .mmf-grid{grid-template-columns:1fr 1fr;gap:44px}
  .mm-posts{grid-template-columns:1fr 1fr}
  .mmafl-site .mm-redcol > .elementor-widget-wrap{padding:70px 30px!important}
  .mmafl-site .elementor-widget.mm-badge{left:20px;bottom:20px}
  .mmafl-site .mm-hero-text > .elementor-widget-wrap{padding-right:0!important}
  .mmafl-site .mm-pad-left > .elementor-widget-wrap{padding-left:30px!important}
  .mmafl-site .mm-pad-right > .elementor-widget-wrap{padding-right:30px!important}
}
@media (max-width:782px){
  .admin-bar .mmh{top:46px}
}
@media (max-width:767px){
  .mmh-top{display:none}
  .mmh-bar{height:72px}
  .mmh-logo img{height:50px}
  .mm-sticky{display:grid}
  .mmf-grid{grid-template-columns:1fr;padding-top:64px}
  .mmf{padding-bottom:58px}
  .mm-posts{grid-template-columns:1fr}
  .mmafl-site .elementor-section.mm-sec{padding:72px 0}
  .mmafl-site .elementor-section.mm-hero{padding:60px 0 70px;min-height:0}
  .mmafl-site .elementor-section.mm-pagehero{padding:100px 0 80px}
  .mmafl-site .elementor-section.mm-final{padding:80px 0}
  .mmafl-site .mm-hero-text > .elementor-widget-wrap{padding-bottom:40px!important}
  .mmafl-site .mm-cards > .elementor-container,.mmafl-site .mm-features > .elementor-container,.mmafl-site .mm-packs > .elementor-container,.mmafl-site .mm-reviews > .elementor-container{gap:20px}
  .mmafl-site .mm-team > .elementor-container{display:grid;grid-template-columns:1fr 1fr;gap:12px}
  .mmafl-site .mm-team .elementor-column{width:100%!important}
  .mmafl-site .mm-coach-info h3{font-size:18px}
  .mmafl-site .elementor-widget.mm-coach-info{left:14px;right:14px;bottom:14px}
  .mmafl-site .mm-gallery > .elementor-container{display:grid;grid-template-columns:repeat(3,1fr)}
  .mmafl-site .mm-gallery .elementor-column{width:100%!important}
  .mmafl-site .mm-strip > .elementor-container{display:grid;grid-template-columns:1fr 1fr;gap:26px 10px}
  .mmafl-site .mm-strip .elementor-column{width:100%!important}
  .mmafl-site .mm-imgcol > .elementor-widget-wrap{min-height:380px}
  .mmafl-site .mm-ticks-2 ul{grid-template-columns:1fr}
  .mmafl-site .mm-pad-left > .elementor-widget-wrap,.mmafl-site .mm-pad-right > .elementor-widget-wrap{padding-left:0!important;padding-right:0!important}
  .mmafl-site .mm-media-first > .elementor-widget-wrap{margin-bottom:30px}
  .mmafl-site .mm-formcard > .elementor-widget-wrap{padding:30px 20px!important}
  .mmafl-site .mm-faq .elementor-tab-title,.mmafl-site .mm-faq .elementor-toggle-title{font-size:16px!important}
  .mm-tt-days{grid-template-columns:repeat(3,1fr);gap:8px}
  .mmafl-site .elementor-widget.mm-inline{display:block;margin:0 0 12px!important}
  .mmafl-site .mm-inline .elementor-button{width:100%}
}

/* =========================================================================
   v1.2 updates: header buttons + cart, logo backing, hero images
   ========================================================================= */
/* Logo on a white plate so it is clear on the dark header/footer */
.mmh-logo .custom-logo-link,.mmf-logo .custom-logo-link{display:inline-flex;align-items:center;justify-content:center;background:#FFFFFF;padding:6px;border-radius:10px;box-shadow:0 6px 18px rgba(0,0,0,.35)}
.mmh-logo img{height:58px}
.mmf-logo .custom-logo-link{padding:8px;border-radius:12px;margin-bottom:22px}
.mmf-logo img{height:80px;margin:0}

/* Header buttons + cart */
.mmh-btns{display:flex;gap:10px;flex:0 0 auto}
.mmh-btns .mm-btnlike{padding:13px 18px;font-size:12px}
.mmh-btns .mm-btnlike-outline{background:transparent;border-color:#FFFFFF;clip-path:none}
.mm-btnlike-outline:hover{background:#FFFFFF;border-color:#FFFFFF;color:#111111!important}
.mmh-nav .menu > li > a{padding-left:12px;padding-right:12px}
.mmh-nav-call{display:block;color:#FFFFFF;font-weight:700}

/* Hero / page hero / final CTA: show people's faces, lighter overlay */
.mmafl-site .elementor-section.mm-hero,.mmafl-site .elementor-section.mm-pagehero,.mmafl-site .elementor-section.mm-final{background-position:center 22%!important;background-size:cover!important}
.mmafl-site .mm-pagehero > .elementor-background-overlay{background:linear-gradient(180deg,rgba(0,0,0,.45) 0%,rgba(0,0,0,.55) 55%,rgba(0,0,0,.78) 100%)!important}
.mmafl-site .mm-hero > .elementor-background-overlay{background:linear-gradient(100deg,rgba(0,0,0,.88) 0%,rgba(0,0,0,.62) 45%,rgba(0,0,0,.25) 100%)!important}
.mmafl-site .mm-final > .elementor-background-overlay{background:linear-gradient(100deg,rgba(0,0,0,.92) 0%,rgba(0,0,0,.7) 50%,rgba(0,0,0,.45) 100%)!important}
.mmafl-site .mm-pagehero .mm-h1 .elementor-heading-title,.mmafl-site .mm-pagehero .mm-lead,.mmafl-site .mm-hero .mm-h1 .elementor-heading-title{text-shadow:0 3px 18px rgba(0,0,0,.55)}
.mmafl-site .mm-pagehero .elementor-heading-title,.mmafl-site .mm-hero .elementor-heading-title,.mmafl-site .mm-final .mm-title .elementor-heading-title{color:#FFFFFF}
.mmafl-site .mm-content h1,.mmafl-site .mm-content h2,.mmafl-site .mm-content h3{color:#111111}

/* Trustindex widget */
.mmafl-site .mm-trustindex{max-width:1200px;margin-left:auto;margin-right:auto}

@media (max-width:1180px){
  .mmh-btns .mm-btnlike{padding:12px 14px;font-size:11px}
  .mmh-nav .menu > li > a{padding-left:9px;padding-right:9px;font-size:12px}
}
@media (max-width:1024px){
  .mmh-bar{display:grid;grid-template-columns:auto 1fr auto auto;grid-template-areas:"logo . cart toggle" "btns btns btns btns";height:auto;row-gap:12px;column-gap:12px;padding-top:12px;padding-bottom:12px}
  .mmh-logo{grid-area:logo}
  .mmh-cart-wrap{grid-area:cart}
  .mmh-toggle{grid-area:toggle;margin:0}
  .mmh-btns{grid-area:btns;display:grid;grid-template-columns:1fr 1fr;gap:10px}
  .mmh-btns .mm-btnlike{width:100%;padding:13px 10px;font-size:12px}
  .mmh-logo img{height:50px}
}
@media (max-width:767px){
  .mmh-logo img{height:44px}
  .mmh-btns .mm-btnlike{font-size:11px;letter-spacing:.04em;padding:12px 8px}
  .mm-sticky{display:none!important}
  .mmf{padding-bottom:0}
}

/* Header cart (same markup as the site's cart drawer icon) */
.mmh-cart-wrap{position:relative;flex:0 0 auto}
.mmh-cart-wrap .mma-cart-trigger{position:relative;width:46px;height:46px;display:grid;place-items:center;border:1px solid #2B2B2B;color:#FFFFFF!important;transition:.25s}
.mmh-cart-wrap .mma-cart-trigger:hover{border-color:#E31C25;color:#E31C25!important}
.mmh-cart-wrap .mma-cart-trigger svg{width:22px;height:22px;fill:none;stroke:currentColor}
.mmh-cart-wrap .mma-cart-count{position:absolute;top:-7px;right:-7px;min-width:20px;height:20px;padding:0 5px;border-radius:10px;background:#E31C25;color:#FFFFFF;font-size:11px;font-weight:800;line-height:20px;text-align:center}

/* =========================================================================
   v1.3: hanging logo badge, smart header, compact mobile header, mobile sticky bar
   ========================================================================= */
/* Logo: bigger white badge that hangs below the bar, header height unchanged */
.mmh{transition:transform .35s ease,box-shadow .3s}
.mmh-bar{position:relative}
.mmh-logo{position:relative;align-self:stretch;width:118px;flex:0 0 118px}
.mmh-logo .custom-logo-link{position:absolute;top:0;left:0;width:118px;height:118px;padding:10px;background:#FFFFFF;border-radius:0 0 16px 16px;border-bottom:4px solid #E31C25;box-shadow:0 14px 30px rgba(0,0,0,.45);z-index:3;transition:width .3s,height .3s,padding .3s}
.mmh-logo .custom-logo-link::before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:#E31C25}
.mmh-logo .custom-logo-link img,.mmh-logo img{width:100%;height:100%;object-fit:contain;display:block}
.mmh.mmh-scrolled .mmh-logo .custom-logo-link{width:100px;height:100px;padding:8px}
/* Hide on scroll down, show on scroll up */
.mmh.mmh-hidden{transform:translateY(calc(-100% - 50px))}
.mmh-open .mmh.mmh-hidden{transform:none}

/* Mobile sticky bar: WhatsApp + Join Classes, normal-size buttons */
.mm-sticky{grid-template-columns:none;transform:none;display:none;gap:10px;justify-content:center;align-items:center;padding:10px 14px calc(10px + env(safe-area-inset-bottom));background:rgba(17,17,17,.96);border-top:1px solid #2B2B2B}
.mm-sticky a{display:inline-flex;align-items:center;justify-content:center;gap:8px;flex:1 1 0;max-width:190px;padding:11px 14px;font-size:12px;letter-spacing:.05em;line-height:1.2;border-radius:0}
.mm-sticky svg{width:17px;height:17px;fill:#FFFFFF;flex:0 0 auto}
.mm-sticky-trial{background:#E31C25;border:2px solid #E31C25}
.mm-sticky-join{background:transparent;border:2px solid #FFFFFF}

@media (max-width:1024px){
  .mmh-bar{display:flex;height:66px;padding-top:0;padding-bottom:0;gap:10px}
  .mmh-logo{width:84px;flex:0 0 84px;margin-right:auto}
  .mmh-logo .custom-logo-link,.mmh.mmh-scrolled .mmh-logo .custom-logo-link{width:84px;height:84px;padding:7px;border-radius:0 0 12px 12px}
  .mmh-logo img{height:100%}
  .mmh-btns{display:flex}
  .mmh-btns .mmh-join{display:none}
  .mmh-btns .mm-btnlike{width:auto;padding:11px 14px;font-size:11px;letter-spacing:.05em}
  .mmh-cart-wrap .mma-cart-trigger,.mmh-toggle{width:42px;height:42px}
  .mmh-cart-wrap .mma-cart-trigger svg{width:20px;height:20px}
}
@media (max-width:767px){
  .mmh-logo img{height:100%}
  .mm-sticky,.mm-sticky.mm-show{display:flex!important}
  body.mmafl-site{padding-bottom:64px}
  /* Lift floating widgets above the sticky bar */
  .grecaptcha-badge{bottom:74px!important}
  .chaty-widget,.chaty-i-trigger{bottom:74px!important}
}
@media (max-width:380px){
  .mmh-bar{gap:8px;padding-left:14px;padding-right:14px}
  .mmh-logo{width:74px;flex-basis:74px}
  .mmh-logo .custom-logo-link,.mmh.mmh-scrolled .mmh-logo .custom-logo-link{width:74px;height:74px}
  .mmh-btns .mm-btnlike{padding:10px 10px;font-size:10px}
}
/* Keep the sticky header working: "hidden" on html/body breaks position:sticky, "clip" does not */
html,body.mmafl-site{overflow-x:clip!important;overflow-y:visible!important}

/* =========================================================================
   v1.4: footer headings, gallery, timetable redesign
   ========================================================================= */
/* Footer headings always visible (Elementor kit heading colours can override them) */
.mmafl-site .mmf h4,.mmafl-site .mmf .mmf-hours-title{color:#FFFFFF!important;font-family:"Montserrat",sans-serif!important;font-weight:800!important;font-size:15px!important;letter-spacing:.14em!important;text-transform:uppercase!important;opacity:1!important}

/* Gallery: mosaic grid, hover zoom, lightbox */
.mmafl-site .mm-gal > .elementor-container{display:grid!important;grid-template-columns:repeat(4,1fr);grid-auto-rows:230px;gap:12px;max-width:none!important;padding:0!important;margin-top:44px}
.mmafl-site .mm-gal > .elementor-container > .elementor-column{width:auto!important;min-width:0;position:relative;overflow:hidden}
.mmafl-site .mm-gal .elementor-column:nth-child(1){grid-column:span 2;grid-row:span 2}
.mmafl-site .mm-gal .elementor-column:nth-child(6){grid-column:span 2}
.mmafl-site .mm-gal .elementor-widget-wrap{padding:0!important;height:100%}
.mmafl-site .mm-gal .elementor-widget-image,.mmafl-site .mm-gal .elementor-widget-image .elementor-widget-container,.mmafl-site .mm-gal .elementor-widget-image a{display:block;height:100%;width:100%;margin:0!important}
.mmafl-site .mm-gal .elementor-widget-image a{position:relative;overflow:hidden}
.mmafl-site .mm-gal img{width:100%!important;height:100%!important;max-width:none!important;object-fit:cover;display:block;transition:transform .6s ease,filter .4s}
.mmafl-site .mm-gal .elementor-widget-image a::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 40%,rgba(0,0,0,.65) 100%);opacity:0;transition:opacity .35s;z-index:1}
.mmafl-site .mm-gal .elementor-widget-image a::after{content:"+";position:absolute;right:16px;bottom:16px;width:42px;height:42px;display:grid;place-items:center;background:#E31C25;color:#FFFFFF;font-size:26px;font-weight:400;line-height:1;transform:translateY(12px);opacity:0;transition:.35s;z-index:2}
.mmafl-site .mm-gal .elementor-widget-image a:hover img{transform:scale(1.07)}
.mmafl-site .mm-gal .elementor-widget-image a:hover::before{opacity:1}
.mmafl-site .mm-gal .elementor-widget-image a:hover::after{opacity:1;transform:none}
.mmafl-site .mm-gal .elementor-column:nth-child(1)::after{content:"";position:absolute;left:0;top:0;width:6px;height:90px;background:#E31C25;z-index:3;pointer-events:none}
@media (max-width:1024px){
  .mmafl-site .mm-gal > .elementor-container{grid-auto-rows:180px}
}
@media (max-width:767px){
  .mmafl-site .mm-gal > .elementor-container{grid-template-columns:1fr 1fr;grid-auto-rows:150px;gap:8px;margin-top:32px}
  .mmafl-site .mm-gal .elementor-column:nth-child(6){grid-column:span 2}
  .mmafl-site .mm-gal .elementor-widget-image a::after{opacity:1;transform:none;width:32px;height:32px;font-size:20px;right:10px;bottom:10px}
}

/* Timetable: day tabs + class cards (strong selectors so kit button styles do not leak in) */
.mmafl-site .mm-timetable{max-width:1180px;margin:0 auto}
.mmafl-site .mm-tt-days{display:grid!important;grid-template-columns:repeat(6,1fr);gap:0!important;margin:0 0 28px!important;background:#111111;padding:6px;box-shadow:0 14px 34px rgba(0,0,0,.12)}
.mmafl-site .mm-timetable .mm-tt-days button{all:unset;box-sizing:border-box;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:16px 6px;min-height:70px;cursor:pointer;color:#FFFFFF!important;background:transparent!important;font-family:"Montserrat",sans-serif;text-align:center;position:relative;transition:background .25s;border-right:1px solid #2B2B2B}
.mmafl-site .mm-timetable .mm-tt-days button:last-child{border-right:0}
.mmafl-site .mm-timetable .mm-tt-days button b{font-size:16px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;line-height:1}
.mmafl-site .mm-timetable .mm-tt-days button small{font-size:11px;font-weight:600;color:#9A9A9A;letter-spacing:.04em;line-height:1}
.mmafl-site .mm-timetable .mm-tt-days button:hover{background:#1F1F1F!important}
.mmafl-site .mm-timetable .mm-tt-days button.on{background:#E31C25!important}
.mmafl-site .mm-timetable .mm-tt-days button.on small{color:#FFFFFF;opacity:.85}
.mmafl-site .mm-timetable .mm-tt-days button.on::after{content:"";position:absolute;left:50%;bottom:-12px;margin-left:-8px;border:8px solid transparent;border-top-color:#E31C25;border-bottom:0}
.mmafl-site .mm-timetable .mm-tt-filters{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin:0 0 30px}
.mmafl-site .mm-timetable .mm-tt-filters button{all:unset;box-sizing:border-box;cursor:pointer;padding:9px 18px;border:1px solid #D0D0D0;font-family:"Montserrat",sans-serif;font-weight:700;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:#111111!important;background:#FFFFFF!important;transition:.2s}
.mmafl-site .mm-timetable .mm-tt-filters button:hover{border-color:#111111}
.mmafl-site .mm-timetable .mm-tt-filters button.on{background:#111111!important;border-color:#111111;color:#FFFFFF!important}
.mmafl-site .mm-tt-slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:16px;min-height:100px}
.mmafl-site .mm-tt-slot{display:flex!important;align-items:stretch!important;gap:0!important;padding:0!important;background:#FFFFFF;border:1px solid #E6E6E6!important;border-left:0!important;box-shadow:0 10px 26px rgba(0,0,0,.06);transition:transform .25s,box-shadow .25s}
.mmafl-site .mm-tt-slot:hover{transform:translateY(-3px);box-shadow:0 18px 36px rgba(0,0,0,.1)}
.mmafl-site .mm-tt-time{flex:0 0 96px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#111111;color:#FFFFFF;padding:16px 6px;text-align:center}
.mmafl-site .mm-tt-time b{font-size:24px!important;font-weight:900;line-height:1;margin:0!important;color:#FFFFFF}
.mmafl-site .mm-tt-time i{font-style:normal;font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#E31C25;margin-top:6px}
.mmafl-site .mm-tt-info{flex:1;min-width:0;padding:18px 18px;display:flex;flex-direction:column;justify-content:center;gap:6px}
.mmafl-site .mm-tt-info strong{font-size:16px;font-weight:900;text-transform:uppercase;letter-spacing:.03em;color:#111111;line-height:1.2}
.mmafl-site .mm-tt-info em{font-style:normal;font-size:12px;font-weight:600;color:#777777;display:flex;align-items:center;gap:6px}
.mmafl-site .mm-tt-info em::before{content:"";width:8px;height:8px;border:2px solid #E31C25;border-radius:50%}
.mmafl-site .mm-tt-slot a.mm-tt-book{align-self:center;flex:0 0 auto;margin-right:18px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:#FFFFFF!important;background:#E31C25;border:0!important;padding:11px 14px!important;clip-path:polygon(0 0,100% 0,100% 70%,calc(100% - 8px) 100%,0 100%);transition:background .2s}
.mmafl-site .mm-tt-slot a.mm-tt-book:hover{background:#111111!important}
.mmafl-site .mm-dark .mm-tt-slot,.mmafl-site .mm-black .mm-tt-slot{background:#1C1C1C;border-color:#2B2B2B!important}
.mmafl-site .mm-dark .mm-tt-info strong,.mmafl-site .mm-black .mm-tt-info strong{color:#FFFFFF}
.mmafl-site .mm-dark .mm-tt-time,.mmafl-site .mm-black .mm-tt-time{background:#E31C25}
.mmafl-site .mm-dark .mm-tt-time i,.mmafl-site .mm-black .mm-tt-time i{color:#FFFFFF}
.mmafl-site .mm-tt-empty{grid-column:1/-1;text-align:center;padding:44px 20px;font-weight:700;color:#777777;border:2px dashed #DADADA}
@media (max-width:767px){
  .mmafl-site .mm-tt-days{grid-template-columns:repeat(3,1fr);padding:4px}
  .mmafl-site .mm-timetable .mm-tt-days button{min-height:58px;padding:12px 4px;border-bottom:1px solid #2B2B2B}
  .mmafl-site .mm-timetable .mm-tt-days button:nth-child(3n){border-right:0}
  .mmafl-site .mm-timetable .mm-tt-days button.on::after{display:none}
  .mmafl-site .mm-tt-slots{grid-template-columns:1fr}
  .mmafl-site .mm-tt-time{flex-basis:80px}
  .mmafl-site .mm-tt-time b{font-size:20px!important}
  .mmafl-site .mm-tt-info{padding:14px 12px}
  .mmafl-site .mm-tt-slot a.mm-tt-book{margin-right:12px;padding:10px 11px!important}
}

/* =========================================================================
   v1.4.1: banner images on mobile/tablet
   Tall stacked banners used to stretch the photo over the whole section
   (heavy zoom, heads cut). Now the full photo shows as a band at the top
   and fades into black behind the text.
   ========================================================================= */
@media (max-width:1024px){
  .mmafl-site .elementor-section.mm-hero,
  .mmafl-site .elementor-section.mm-final{background-size:100% auto!important;background-position:center top!important;background-repeat:no-repeat!important;background-color:#0B0B0B!important;padding-top:44vw!important}
  .mmafl-site .mm-hero > .elementor-background-overlay,
  .mmafl-site .mm-final > .elementor-background-overlay{opacity:1!important;background:linear-gradient(180deg,rgba(0,0,0,.08) 0,rgba(0,0,0,.25) 28vw,rgba(11,11,11,.85) 52vw,#0B0B0B 66vw,#0B0B0B 100%)!important}
}
@media (max-width:767px){
  .mmafl-site .elementor-section.mm-pagehero{background-size:100% auto!important;background-position:center top!important;background-repeat:no-repeat!important;background-color:#0B0B0B!important;padding:46vw 0 64px!important}
  .mmafl-site .mm-pagehero > .elementor-background-overlay{opacity:1!important;background:linear-gradient(180deg,rgba(0,0,0,.08) 0,rgba(0,0,0,.25) 28vw,rgba(11,11,11,.85) 54vw,#0B0B0B 68vw,#0B0B0B 100%)!important}
  .mmafl-site .mm-imgcol .elementor-widget-image img{object-position:center 30%}
  .mmafl-site .mm-imgcol > .elementor-widget-wrap{min-height:0!important;aspect-ratio:4/3}
}

/* v1.4.2: mobile/tablet banners. theme.js copies the section photo into a band at the top
   (.mm-mband) with the SAME 4:3 size on every page, cropped to keep faces in view;
   the text sits below it on black. Without JS the v1.4.1 layout is used. */
.mm-mband{display:none}
@media (max-width:1024px){
  .mmafl-site .elementor-section.mm-has-mband{display:block!important;min-height:0!important;background-image:none!important;background-color:#0B0B0B!important;padding-top:0!important}
  .mmafl-site .elementor-section.mm-has-mband > .elementor-background-overlay{display:none!important}
  .mmafl-site .mm-has-mband > .mm-mband{display:block;flex:none;position:relative;width:100%;aspect-ratio:4/3;max-height:620px;background-size:cover;background-position:center 30%;background-repeat:no-repeat}
  .mmafl-site .mm-has-mband > .mm-mband::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 0,rgba(0,0,0,0) 50%,rgba(11,11,11,.75) 82%,#0B0B0B 100%)}
  .mmafl-site .mm-has-mband > .elementor-container{position:relative;z-index:2;margin-top:-56px!important}
  .mmafl-site .elementor-section.mm-pagehero.mm-has-mband{padding-bottom:60px!important}
  .mmafl-site .elementor-section.mm-hero.mm-has-mband,.mmafl-site .elementor-section.mm-final.mm-has-mband{padding-bottom:60px!important}
}

/* v1.4.3: mobile sub-menu toggle */
.mmh-sub-toggle{display:none}
@media (max-width:1024px){
  .mmh-nav .menu-item-has-children{position:relative}
  .mmh-nav .menu-item-has-children > a{padding-right:56px!important}
  .mmh-nav .menu-item-has-children > a::before{display:none}
  .mmh-nav .mmh-sub-toggle{all:unset;box-sizing:border-box;display:grid;place-items:center;position:absolute;top:4px;right:0;width:46px;height:46px;cursor:pointer;border-left:1px solid #2B2B2B}
  .mmh-nav .mmh-sub-toggle::before{content:"";width:9px;height:9px;border-right:2px solid #E31C25;border-bottom:2px solid #E31C25;transform:translateY(-3px) rotate(45deg);transition:transform .25s}
  .mmh-nav .mm-sub-open > .mmh-sub-toggle::before{transform:translateY(2px) rotate(-135deg)}
  .mmh-nav .mm-sub-open > a{color:#E31C25!important}
}
@media (max-width:1024px){.mmafl-site .mmh-nav .mmh-nav-call{color:#FFFFFF!important;font-weight:700;font-size:15px}}

/* =========================================================================
   v1.6: Events page (mma-events.json), red section headings, schedule lightbox
   ========================================================================= */
.mmafl-site .mm-red .mm-eyebrow .elementor-heading-title{color:#FFFFFF!important;opacity:.85}
.mmafl-site .mm-red .mm-title em{color:#111111}
.mmafl-site .mm-red .mm-ghost .elementor-heading-title{color:rgba(0,0,0,.08)!important}
.mmafl-site .mm-red .mm-feature > .elementor-widget-wrap{background:#111111;border-color:#111111}
.mmafl-site .mm-red .mm-feature:hover > .elementor-widget-wrap{border-color:#FFFFFF}
.mmafl-site .mm-schedimg a{display:block;cursor:zoom-in}

/* Filter */
.mmafl-site .mm-ev-filterwrap{margin-bottom:34px!important}
.mm-ev-filter{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}
.mmafl-site .mm-ev-filter button{all:unset;box-sizing:border-box;cursor:pointer;padding:11px 22px;border:1px solid #3A3A3A;font-family:"Montserrat",sans-serif;font-weight:800;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:#FFFFFF!important;background:transparent!important;transition:.2s}
.mmafl-site .mm-ev-filter button:hover{border-color:#E31C25}
.mmafl-site .mm-ev-filter button.on{background:#E31C25!important;border-color:#E31C25}

/* Event cards */
.mmafl-site .elementor-section.mm-ev{background:#1C1C1C;border:1px solid #2B2B2B;transition:border-color .3s,transform .4s}
.mmafl-site .elementor-section.mm-ev:hover{border-color:#E31C25;transform:translateY(-4px)}
.mmafl-site .elementor-section.mm-ev + .elementor-section.mm-ev{margin-top:30px}
.mmafl-site .elementor-section.mm-ev.mm-ev-hide{display:none!important}
.mmafl-site .mm-ev > .elementor-container{align-items:stretch;max-width:none!important;padding:0!important}
.mmafl-site .mm-ev-rev > .elementor-container{flex-direction:row-reverse}
.mmafl-site .mm-ev-img > .elementor-widget-wrap{padding:0!important;height:100%;background:#000000;overflow:hidden}
.mmafl-site .mm-ev-poster,.mmafl-site .mm-ev-poster .elementor-widget-container,.mmafl-site .mm-ev-poster a{display:block;height:100%;width:100%;margin:0!important}
.mmafl-site .mm-ev-poster a{position:relative;cursor:zoom-in}
.mmafl-site .mm-ev-poster img{width:100%!important;height:100%!important;max-width:none!important;aspect-ratio:1131/1600;object-fit:cover;display:block;transition:transform .8s ease}
.mmafl-site .mm-ev:hover .mm-ev-poster img{transform:scale(1.04)}
.mmafl-site .mm-ev-poster a::after{content:"+";position:absolute;right:16px;bottom:16px;width:42px;height:42px;display:grid;place-items:center;background:#E31C25;color:#FFFFFF;font-size:26px;line-height:1}
.mmafl-site .mm-ev-body > .elementor-widget-wrap{padding:48px 50px!important;align-content:center}
.mmafl-site .mm-ev-body .elementor-widget:not(:last-child){margin-bottom:16px}
.mmafl-site .elementor-widget.mm-ev-pill,.mmafl-site .elementor-widget.mm-ev-status{width:auto!important;margin-right:10px}
.mmafl-site .mm-ev-pill .elementor-heading-title{display:inline-block;background:#FFFFFF;color:#111111!important;font-size:12px!important;font-weight:800;letter-spacing:.14em;text-transform:uppercase;padding:8px 14px;line-height:1.3}
.mmafl-site .mm-ev-status .elementor-heading-title{display:inline-flex;align-items:center;gap:8px;border:1px solid #3A3A3A;color:#FFFFFF!important;font-size:12px!important;font-weight:800;letter-spacing:.14em;text-transform:uppercase;padding:7px 13px;line-height:1.3}
.mmafl-site .mm-ev-status .elementor-heading-title::before{content:"";width:8px;height:8px;border-radius:50%;background:#25D366;box-shadow:0 0 0 4px rgba(37,211,102,.2);animation:mmBlink 1.6s infinite}
@keyframes mmBlink{50%{opacity:.35}}
.mmafl-site .elementor-widget.mm-ev-kick{width:100%}
.mmafl-site .mm-ev-title .elementor-heading-title{font-size:clamp(26px,3vw,40px);color:#FFFFFF}
.mmafl-site .mm-ev-sum{color:#BDBDBD;font-size:16px}
.mmafl-site .elementor-widget.mm-ev-box{width:calc(50% - 7px)!important}
.mmafl-site .elementor-widget.mm-ev-box + .elementor-widget.mm-ev-box{margin-left:14px}
.mmafl-site .mm-ev-box .elementor-heading-title{background:#111111;border-left:4px solid #E31C25;padding:16px 18px;font-size:24px!important;font-weight:900;line-height:1.1;text-transform:uppercase;color:#FFFFFF!important;height:100%}
.mmafl-site .mm-ev-box + .mm-ev-box .elementor-heading-title{color:#E31C25!important}
.mmafl-site .mm-ev-box small{display:block;font-size:11px;font-weight:800;letter-spacing:.14em;color:#9A9A9A;margin-bottom:6px}
.mmafl-site .mm-ev-box em{display:block;font-style:normal;font-size:12px;font-weight:600;letter-spacing:0;text-transform:none;color:#9A9A9A;margin-top:6px}
.mmafl-site .mm-ev-terms{font-size:13px;color:#9A9A9A}
.mmafl-site .mm-ev-terms p{position:relative;padding-left:26px}
.mmafl-site .mm-ev-terms p::before{content:"!";position:absolute;left:0;top:1px;width:17px;height:17px;border-radius:50%;background:#E31C25;color:#FFFFFF;font-size:11px;font-weight:900;display:grid;place-items:center}
.mmafl-site .mm-ev-body .elementor-widget.mm-inline{margin-top:6px}
@media (max-width:1024px){
  .mmafl-site .mm-ev-body > .elementor-widget-wrap{padding:36px 30px!important}
}
@media (max-width:767px){
  .mmafl-site .mm-ev > .elementor-container,.mmafl-site .mm-ev-rev > .elementor-container{flex-direction:column}
  .mmafl-site .mm-ev .elementor-column{width:100%!important}
  .mmafl-site .mm-ev-poster img{aspect-ratio:4/5;object-position:center 20%}
  .mmafl-site .mm-ev-body > .elementor-widget-wrap{padding:28px 20px 30px!important}
  .mmafl-site .mm-ev-filter{flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start;padding-bottom:4px}
  .mmafl-site .mm-ev-filter button{flex:none}
}
@media (max-width:480px){
  .mmafl-site .elementor-widget.mm-ev-box{width:100%!important}
  .mmafl-site .elementor-widget.mm-ev-box + .elementor-widget.mm-ev-box{margin-left:0}
}

/* =========================================================================
   v1.6: WooCommerce (shop, categories, product, cart, checkout, account)
   ========================================================================= */
.mm-woo .mm-main{background:#F4F4F4}
.mm-wc{padding:60px 0 100px}
.mm-wc-single{background:#FFFFFF;padding-top:50px}
.mmafl-site .mm-wc-crumbs{font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#9A9A9A;margin:0}
.mmafl-site .mm-wc-crumbs a{color:#FFFFFF}
.mmafl-site .mm-wc-crumbs a:hover{color:#E31C25}
.mm-bc-sep{margin:0 10px;color:#E31C25}
.mm-wc-bar{background:#111111;border-bottom:1px solid #2B2B2B;padding:18px 0}

/* Shop banner */
.mm-wc-hero{position:relative;background:#111111 center 30%/cover no-repeat;color:#FFFFFF;padding:120px 0 90px}
.mm-wc-hero::before{content:"";position:absolute;inset:0;background:linear-gradient(100deg,rgba(0,0,0,.92) 0%,rgba(0,0,0,.72) 55%,rgba(0,0,0,.45) 100%)}
.mm-wc-hero::after{content:"";position:absolute;left:0;bottom:0;width:180px;height:6px;background:#E31C25}
.mm-wc-hero .mmh-wrap{position:relative}
.mm-wc-eyebrow{display:block;margin:26px 0 12px;color:#E31C25;font-size:13px;font-weight:800;letter-spacing:.2em;text-transform:uppercase}
.mmafl-site .mm-wc-hero h1{font-size:clamp(38px,6vw,76px);margin:0 0 14px;color:#FFFFFF}
.mm-wc-hero-text{max-width:620px;color:#D8D8D8;font-size:18px}
.mm-wc-hero-text p{margin:0}

/* Category pills */
.mm-wc-cats{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 34px}
.mm-wc-cats a{display:inline-flex;align-items:center;gap:8px;padding:11px 18px;background:#FFFFFF;border:1px solid #DADADA;font-weight:800;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#111111;transition:.2s}
.mm-wc-cats a small{font-size:11px;color:#9A9A9A;font-weight:700}
.mm-wc-cats a:hover{border-color:#111111}
.mm-wc-cats a.on{background:#111111;border-color:#111111;color:#FFFFFF}
.mm-wc-cats a.on small{color:#E31C25}

/* Toolbar */
.mmafl-site .mm-wc .woocommerce-result-count{float:left;margin:0 0 26px;font-size:14px;font-weight:600;color:#777777;line-height:46px}
.mmafl-site .mm-wc .woocommerce-ordering{float:right;margin:0 0 26px}
.mmafl-site .mm-wc .woocommerce-ordering select,.mmafl-site.mm-woo select,.mmafl-site.mm-woo .select2-container .select2-selection{height:46px;padding:0 44px 0 16px;border:1px solid #DADADA;border-radius:0;background:#FFFFFF url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23111111' stroke-width='2'/%3E%3C/svg%3E") no-repeat right 16px center/12px 8px;font-family:"Montserrat",sans-serif;font-size:14px;font-weight:600;color:#111111;-webkit-appearance:none;appearance:none;cursor:pointer}

/* Product grid */
.mmafl-site .mm-wc ul.products,.mmafl-site.mm-woo ul.products{clear:both;display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin:0 0 40px!important;padding:0;list-style:none}
.mmafl-site.mm-woo ul.products::before,.mmafl-site.mm-woo ul.products::after{display:none!important}
.mmafl-site.mm-woo ul.products.columns-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.mmafl-site.mm-woo ul.products li.product{width:auto!important;float:none!important;margin:0!important;padding:0 0 22px!important;background:#FFFFFF;border:1px solid #E4E4E4;display:flex;flex-direction:column;position:relative;text-align:left;transition:transform .3s,box-shadow .3s,border-color .3s}
.mmafl-site.mm-woo ul.products li.product:hover{transform:translateY(-6px);box-shadow:0 24px 50px rgba(0,0,0,.12);border-color:#111111}
.mmafl-site.mm-woo ul.products li.product a.woocommerce-LoopProduct-link{display:flex;flex-direction:column;flex:1}
.mmafl-site.mm-woo ul.products li.product img{width:100%!important;aspect-ratio:1;object-fit:cover;margin:0 0 18px!important;display:block;background:#F4F4F4;transition:transform .6s}
.mmafl-site.mm-woo ul.products li.product:hover img{transform:scale(1.03)}
.mmafl-site.mm-woo ul.products li.product .woocommerce-loop-product__title,.mmafl-site.mm-woo ul.products li.product h2,.mmafl-site.mm-woo ul.products li.product h3{font-size:16px!important;font-weight:800;line-height:1.3;letter-spacing:.01em;text-transform:uppercase;color:#111111;padding:0 20px!important;margin:0 0 8px!important}
.mmafl-site.mm-woo ul.products li.product .star-rating{margin:0 20px 8px!important;font-size:12px}
.mmafl-site.mm-woo ul.products li.product .price{display:block;padding:0 20px;margin:0 0 16px!important;color:#E31C25!important;font-size:18px!important;font-weight:900}
.mmafl-site.mm-woo ul.products li.product .price del{color:#9A9A9A;font-weight:600;font-size:14px;margin-right:6px;opacity:1}
.mmafl-site.mm-woo ul.products li.product .price ins{text-decoration:none}
.mmafl-site.mm-woo ul.products li.product .button{margin:auto 20px 0!important;display:flex!important;justify-content:center;text-align:center}
.mmafl-site.mm-woo ul.products li.product .added_to_cart{display:block;margin:10px 20px 0;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#E31C25;text-align:center}
.mmafl-site.mm-woo span.onsale{position:absolute;top:14px;left:14px;right:auto;z-index:2;min-width:0;min-height:0;margin:0!important;padding:7px 12px;border-radius:0;background:#E31C25;color:#FFFFFF;font-size:11px;font-weight:800;letter-spacing:.12em;line-height:1.2;text-transform:uppercase}
.mmafl-site.mm-woo .woocommerce-info,.mmafl-site.mm-woo .woocommerce-message,.mmafl-site.mm-woo .woocommerce-error,.mmafl-site.mm-woo .woocommerce-noreviews,.mmafl-site.mm-woo p.no-comments{background:#FFFFFF;border:0;border-left:5px solid #E31C25;color:#111111;padding:18px 22px 18px 54px;margin:0 0 26px;font-weight:600;box-shadow:0 10px 26px rgba(0,0,0,.06);list-style:none}
.mmafl-site.mm-woo .woocommerce-message{border-left-color:#25D366}
.mmafl-site.mm-woo .woocommerce-info::before,.mmafl-site.mm-woo .woocommerce-message::before,.mmafl-site.mm-woo .woocommerce-error::before{color:#E31C25;top:18px;left:22px}
.mmafl-site.mm-woo .woocommerce-message::before{color:#25D366}
.mmafl-site.mm-woo .woocommerce-message .button,.mmafl-site.mm-woo .woocommerce-info .button{float:right;margin-left:14px}

/* Buttons (classic + block) */
.mmafl-site.mm-woo a.button,.mmafl-site.mm-woo button.button,.mmafl-site.mm-woo input.button,.mmafl-site.mm-woo #respond input#submit,.mmafl-site.mm-woo .button.alt,.mmafl-site.mm-woo button.single_add_to_cart_button,.mmafl-site.mm-woo .wc-block-components-button:not(.is-link),.mmafl-site.mm-woo .wp-element-button,.mmafl-site.mm-woo .checkout-button,.mmafl-site.mm-woo #place_order{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:"Montserrat",sans-serif!important;font-weight:800!important;font-size:13px!important;letter-spacing:.06em;text-transform:uppercase;line-height:1.2!important;padding:15px 24px!important;border:2px solid #E31C25!important;border-radius:0!important;background:#E31C25!important;color:#FFFFFF!important;box-shadow:none!important;text-decoration:none!important;cursor:pointer;transition:.25s;clip-path:polygon(0 0,100% 0,100% 70%,calc(100% - 10px) 100%,0 100%)}
.mmafl-site.mm-woo a.button:hover,.mmafl-site.mm-woo button.button:hover,.mmafl-site.mm-woo input.button:hover,.mmafl-site.mm-woo .button.alt:hover,.mmafl-site.mm-woo .wc-block-components-button:not(.is-link):hover,.mmafl-site.mm-woo .wp-element-button:hover,.mmafl-site.mm-woo #place_order:hover{background:#B9141C!important;border-color:#B9141C!important;color:#FFFFFF!important}
.mmafl-site.mm-woo a.button.loading,.mmafl-site.mm-woo button.button.loading{opacity:.7}
.mmafl-site.mm-woo .button:disabled,.mmafl-site.mm-woo .button.disabled{opacity:.5!important;cursor:not-allowed}
.mmafl-site.mm-woo a.button.added::after{margin-left:6px}

/* Pagination */
.mmafl-site.mm-woo nav.woocommerce-pagination{text-align:center;margin-top:10px}
.mmafl-site.mm-woo nav.woocommerce-pagination ul{border:0!important;display:inline-flex;gap:6px}
.mmafl-site.mm-woo nav.woocommerce-pagination ul li{border:0!important;float:none}
.mmafl-site.mm-woo nav.woocommerce-pagination ul li a,.mmafl-site.mm-woo nav.woocommerce-pagination ul li span{min-width:46px;height:46px;display:grid;place-items:center;padding:0 10px!important;background:#FFFFFF;border:1px solid #DADADA;font-weight:800;color:#111111}
.mmafl-site.mm-woo nav.woocommerce-pagination ul li span.current,.mmafl-site.mm-woo nav.woocommerce-pagination ul li a:hover{background:#E31C25;border-color:#E31C25;color:#FFFFFF}

/* Single product */
.mmafl-site.mm-woo div.product{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:30px 64px;position:relative;margin:0}
.mmafl-site.mm-woo div.product > *{grid-column:1 / -1}
.mmafl-site.mm-woo div.product > .woocommerce-product-gallery{grid-column:1;grid-row:1;width:auto!important;float:none!important;margin:0!important;position:relative}
.mmafl-site.mm-woo div.product > .summary{grid-column:2;grid-row:1;width:auto!important;float:none!important;margin:0!important}
.mmafl-site.mm-woo div.product > span.onsale{grid-row:1;grid-column:1;align-self:start;justify-self:start}
.mmafl-site.mm-woo div.product .woocommerce-product-gallery__wrapper{margin:0}
.mmafl-site.mm-woo div.product .woocommerce-product-gallery__image img{width:100%;background:#F4F4F4}
.mmafl-site.mm-woo div.product .flex-control-thumbs{display:grid!important;grid-template-columns:repeat(5,1fr);gap:10px;margin:10px 0 0!important}
.mmafl-site.mm-woo div.product .flex-control-thumbs li{width:auto!important;float:none!important;margin:0!important}
.mmafl-site.mm-woo div.product .flex-control-thumbs img{opacity:.55;border:2px solid transparent;transition:.2s}
.mmafl-site.mm-woo div.product .flex-control-thumbs img.flex-active,.mmafl-site.mm-woo div.product .flex-control-thumbs img:hover{opacity:1;border-color:#E31C25}
.mmafl-site.mm-woo .woocommerce-product-gallery__trigger{top:14px!important;right:14px!important;background:#111111!important;border-radius:0!important}
.mmafl-site.mm-woo div.product .product_title{font-size:clamp(30px,3.6vw,48px);margin:0 0 14px;color:#111111}
.mmafl-site.mm-woo div.product .woocommerce-product-rating{margin:0 0 16px}
.mmafl-site.mm-woo .star-rating span::before,.mmafl-site.mm-woo .star-rating::before,.mmafl-site.mm-woo p.stars a{color:#FFB400}
.mmafl-site.mm-woo div.product .summary .price{display:block;font-size:30px!important;font-weight:900;color:#E31C25!important;margin:0 0 22px;padding-bottom:22px;border-bottom:1px solid #E6E6E6}
.mmafl-site.mm-woo div.product .summary .price del{color:#9A9A9A;font-size:20px;font-weight:600;opacity:1}
.mmafl-site.mm-woo div.product .summary .price ins{text-decoration:none}
.mmafl-site.mm-woo div.product .woocommerce-product-details__short-description{color:#555555;font-size:16px;margin:0 0 26px}
.mmafl-site.mm-woo div.product .woocommerce-product-details__short-description ul{padding-left:0;list-style:none;display:grid;gap:10px}
.mmafl-site.mm-woo div.product .woocommerce-product-details__short-description li{display:flex;gap:12px;font-weight:600}
.mmafl-site.mm-woo div.product .woocommerce-product-details__short-description li::before{content:"";flex:0 0 18px;height:18px;margin-top:3px;background:#E31C25;clip-path:polygon(14% 52%,0 67%,40% 100%,100% 22%,85% 9%,38% 68%)}
.mmafl-site.mm-woo div.product form.cart{display:flex;flex-wrap:wrap;gap:12px;align-items:stretch;margin:0 0 26px!important}
.mmafl-site.mm-woo div.product form.cart::before,.mmafl-site.mm-woo div.product form.cart::after{display:none}
.mmafl-site.mm-woo div.product form.cart .single_add_to_cart_button{flex:1 1 200px;min-height:56px;font-size:15px!important}
.mmafl-site.mm-woo div.product form.variations_form{display:block}
.mmafl-site.mm-woo div.product form.variations_form .single_variation_wrap .woocommerce-variation-add-to-cart{display:flex;flex-wrap:wrap;gap:12px}
.mmafl-site.mm-woo table.variations{width:100%;margin:0 0 18px!important;border:0}
.mmafl-site.mm-woo table.variations th,.mmafl-site.mm-woo table.variations td{display:block;padding:0 0 8px!important;text-align:left;border:0;line-height:1.4}
.mmafl-site.mm-woo table.variations label{font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.mmafl-site.mm-woo table.variations select{width:100%;max-width:none}
.mmafl-site.mm-woo .reset_variations{font-size:12px;font-weight:700;color:#E31C25;margin-top:6px;display:inline-block}
.mmafl-site.mm-woo .woocommerce-variation-price .price{font-size:24px!important;border:0!important;padding:0!important}
.mmafl-site.mm-woo .quantity .qty,.mmafl-site.mm-woo .wc-block-components-quantity-selector{width:96px;height:56px;border:2px solid #DADADA;border-radius:0;text-align:center;font-family:"Montserrat",sans-serif;font-weight:800;font-size:16px;color:#111111;background:#FFFFFF}
.mmafl-site.mm-woo .quantity .qty:focus{border-color:#E31C25;outline:none}
.mmafl-site.mm-woo div.product .stock{font-weight:800;font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:#25A55A}
.mmafl-site.mm-woo div.product .stock.out-of-stock{color:#E31C25}
.mmafl-site.mm-woo div.product .product_meta{font-size:13px;color:#777777;display:grid;gap:6px;padding-top:20px;border-top:1px solid #E6E6E6}
.mmafl-site.mm-woo div.product .product_meta a{color:#111111;font-weight:700}
.mmafl-site.mm-woo div.product .product_meta a:hover{color:#E31C25}
.mm-wc-help{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0 0 24px}
.mm-wc-help a{display:block;padding:16px 18px;background:#111111;color:#BDBDBD!important;font-size:13px;line-height:1.45;border-left:4px solid #E31C25;transition:.2s}
.mm-wc-help a:hover{background:#000000;color:#FFFFFF!important}
.mm-wc-help b{display:block;color:#FFFFFF;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;margin-bottom:4px}

/* Tabs */
.mmafl-site.mm-woo div.product .woocommerce-tabs{margin-top:40px}
.mmafl-site.mm-woo div.product .woocommerce-tabs ul.tabs{display:flex;flex-wrap:wrap;gap:0;margin:0!important;padding:0!important;border-bottom:2px solid #111111;overflow:visible}
.mmafl-site.mm-woo div.product .woocommerce-tabs ul.tabs::before,.mmafl-site.mm-woo div.product .woocommerce-tabs ul.tabs::after,.mmafl-site.mm-woo div.product .woocommerce-tabs ul.tabs li::before,.mmafl-site.mm-woo div.product .woocommerce-tabs ul.tabs li::after{display:none!important}
.mmafl-site.mm-woo div.product .woocommerce-tabs ul.tabs li{margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important}
.mmafl-site.mm-woo div.product .woocommerce-tabs ul.tabs li a{display:block;padding:16px 24px!important;font-weight:800!important;font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:#777777!important}
.mmafl-site.mm-woo div.product .woocommerce-tabs ul.tabs li.active a{background:#111111;color:#FFFFFF!important}
.mmafl-site.mm-woo div.product .woocommerce-tabs .panel{padding:34px 0 0;margin:0;color:#555555;font-size:16px}
.mmafl-site.mm-woo div.product .woocommerce-tabs .panel > h2:first-child{font-size:22px;color:#111111}
.mmafl-site.mm-woo table.shop_attributes{border:0;border-collapse:collapse}
.mmafl-site.mm-woo table.shop_attributes th,.mmafl-site.mm-woo table.shop_attributes td{border:0;border-bottom:1px solid #E6E6E6;padding:14px 10px!important;font-style:normal}
.mmafl-site.mm-woo table.shop_attributes th{width:200px;text-transform:uppercase;font-size:12px;letter-spacing:.1em;color:#111111}
.mmafl-site.mm-woo #reviews #comments ol.commentlist li .comment-text{border:1px solid #E6E6E6;border-radius:0}
.mmafl-site.mm-woo #review_form #respond textarea,.mmafl-site.mm-woo #review_form #respond input[type=text],.mmafl-site.mm-woo #review_form #respond input[type=email]{border:2px solid #DADADA;padding:12px;width:100%;font-family:inherit}

/* Related / upsells / cross-sells */
.mmafl-site.mm-woo .related,.mmafl-site.mm-woo .upsells{margin-top:70px;padding-top:60px;border-top:1px solid #E6E6E6}
.mmafl-site.mm-woo .related > h2,.mmafl-site.mm-woo .upsells > h2,.mmafl-site.mm-woo .cross-sells > h2{font-size:clamp(26px,3vw,38px);margin:0 0 30px;color:#111111}
.mmafl-site.mm-woo .related > h2::before,.mmafl-site.mm-woo .upsells > h2::before{content:"";display:block;width:46px;height:4px;background:#E31C25;margin-bottom:16px}

/* Trial band */
.mm-wc-cta{background:#111111;color:#FFFFFF;padding:70px 0;border-top:4px solid #E31C25}
.mm-wc-cta .mmh-wrap{display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap}
.mm-wc-cta .mm-wc-eyebrow{margin:0 0 10px}
.mmafl-site .mm-wc-cta h2{font-size:clamp(28px,3.6vw,46px);margin:0 0 10px;color:#FFFFFF}
.mm-wc-cta p{margin:0;color:#BDBDBD;max-width:560px}
.mm-wc-cta-btns{display:flex;gap:12px;flex-wrap:wrap}

/* Cart, checkout, my account (classic shortcodes + blocks) */
.mmafl-site.mm-woo .mm-content{max-width:1240px}
.mmafl-site.mm-woo table.shop_table{border:0;border-collapse:collapse;background:#FFFFFF;box-shadow:0 10px 26px rgba(0,0,0,.05);border-radius:0;margin-bottom:30px}
.mmafl-site.mm-woo table.shop_table th{background:#111111;color:#FFFFFF;font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;padding:16px 14px;border:0}
.mmafl-site.mm-woo table.shop_table td{border-top:1px solid #EEEEEE;padding:18px 14px;vertical-align:middle}
.mmafl-site.mm-woo table.shop_table img{width:72px;background:#F4F4F4}
.mmafl-site.mm-woo table.shop_table .product-name a{font-weight:800;color:#111111;text-transform:uppercase;font-size:14px}
.mmafl-site.mm-woo table.cart td.actions .coupon .input-text{height:50px;min-width:200px;padding:0 14px;border:2px solid #DADADA;font-family:inherit;margin-right:8px}
.mmafl-site.mm-woo a.remove{color:#E31C25!important;font-weight:400}
.mmafl-site.mm-woo a.remove:hover{background:#E31C25;color:#FFFFFF!important}
.mmafl-site.mm-woo .cart-collaterals .cart_totals h2,.mmafl-site.mm-woo .woocommerce-checkout h3,.mmafl-site.mm-woo #order_review_heading{font-size:22px;color:#111111}
.mmafl-site.mm-woo .woocommerce form .form-row label{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#111111}
.mmafl-site.mm-woo .woocommerce form .form-row .input-text,.mmafl-site.mm-woo .woocommerce form .form-row select,.mmafl-site.mm-woo .woocommerce-account input.input-text{border:2px solid #DADADA;border-radius:0;padding:13px 14px;font-family:"Montserrat",sans-serif;font-size:15px;background:#FAFAFA;height:auto;line-height:1.3}
.mmafl-site.mm-woo .woocommerce form .form-row .input-text:focus{border-color:#E31C25;background:#FFFFFF;outline:none}
.mmafl-site.mm-woo #payment{background:#F4F4F4!important;border-radius:0!important}
.mmafl-site.mm-woo #payment div.payment_box{background:#FFFFFF!important;border-radius:0}
.mmafl-site.mm-woo #payment div.payment_box::before{border-bottom-color:#FFFFFF!important}
.mmafl-site.mm-woo .woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0;background:#111111}
.mmafl-site.mm-woo .woocommerce-MyAccount-navigation li a{display:block;padding:15px 20px;color:#BDBDBD;font-weight:800;font-size:13px;letter-spacing:.08em;text-transform:uppercase;border-bottom:1px solid #2B2B2B}
.mmafl-site.mm-woo .woocommerce-MyAccount-navigation li.is-active a,.mmafl-site.mm-woo .woocommerce-MyAccount-navigation li a:hover{background:#E31C25;color:#FFFFFF}
/* Block cart / checkout */
.mmafl-site.mm-woo .wc-block-components-text-input input,.mmafl-site.mm-woo .wc-block-components-combobox .wc-block-components-combobox-control input,.mmafl-site.mm-woo .wc-blocks-components-select__select{border-radius:0!important;border:2px solid #DADADA!important}
.mmafl-site.mm-woo .wc-block-components-text-input input:focus{border-color:#E31C25!important;box-shadow:none!important}
.mmafl-site.mm-woo .wc-block-components-title,.mmafl-site.mm-woo .wc-block-cart__totals-title{font-family:"Montserrat",sans-serif!important;font-weight:900!important;text-transform:uppercase}
.mmafl-site.mm-woo .wc-block-components-product-name{font-weight:800;color:#111111;text-transform:uppercase}
.mmafl-site.mm-woo .wc-block-components-product-price,.mmafl-site.mm-woo .wc-block-formatted-money-amount{font-weight:800}
.mmafl-site.mm-woo .wc-block-components-totals-footer-item .wc-block-components-totals-item__value{color:#E31C25}
.mmafl-site.mm-woo .wc-block-cart__submit-button,.mmafl-site.mm-woo .wc-block-components-checkout-place-order-button{width:100%}

@media (max-width:1024px){
  .mmafl-site .mm-wc ul.products,.mmafl-site.mm-woo ul.products{grid-template-columns:repeat(3,minmax(0,1fr))}
  .mmafl-site.mm-woo div.product{gap:30px 34px}
}
@media (max-width:767px){
  .mm-wc{padding:36px 0 70px}
  .mm-wc-hero{padding:70px 0 56px}
  .mm-wc-hero-text{font-size:16px}
  .mm-wc-cats{flex-wrap:nowrap;overflow-x:auto;margin:0 -20px 24px;padding:0 20px 4px}
  .mm-wc-cats a{flex:none}
  .mmafl-site .mm-wc .woocommerce-result-count{float:none;line-height:1.4;margin:0 0 12px}
  .mmafl-site .mm-wc .woocommerce-ordering{float:none;margin:0 0 22px}
  .mmafl-site .mm-wc .woocommerce-ordering select{width:100%}
  .mmafl-site .mm-wc ul.products,.mmafl-site.mm-woo ul.products,.mmafl-site.mm-woo ul.products.columns-3{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .mmafl-site.mm-woo ul.products li.product{padding-bottom:14px!important}
  .mmafl-site.mm-woo ul.products li.product img{margin-bottom:12px!important}
  .mmafl-site.mm-woo ul.products li.product .woocommerce-loop-product__title,.mmafl-site.mm-woo ul.products li.product h2{font-size:13px!important;padding:0 12px!important}
  .mmafl-site.mm-woo ul.products li.product .price{padding:0 12px;font-size:15px!important;margin-bottom:12px!important}
  .mmafl-site.mm-woo ul.products li.product .star-rating{margin:0 12px 8px!important}
  .mmafl-site.mm-woo ul.products li.product .button{margin:auto 12px 0!important;padding:12px 8px!important;font-size:11px!important}
  .mmafl-site.mm-woo div.product{grid-template-columns:1fr}
  .mmafl-site.mm-woo div.product > .woocommerce-product-gallery,.mmafl-site.mm-woo div.product > .summary{grid-column:1;grid-row:auto}
  .mmafl-site.mm-woo div.product > span.onsale{grid-row:1}
  .mm-wc-help{grid-template-columns:1fr}
  .mmafl-site.mm-woo div.product .woocommerce-tabs ul.tabs{flex-wrap:nowrap;overflow-x:auto}
  .mmafl-site.mm-woo div.product .woocommerce-tabs ul.tabs li a{padding:14px 16px!important;white-space:nowrap}
  .mmafl-site.mm-woo table.shop_attributes th{width:auto}
  .mm-wc-cta{padding:56px 0}
  .mm-wc-cta-btns,.mm-wc-cta-btns .mm-btnlike{width:100%}
  .mmafl-site.mm-woo table.cart td.actions .coupon .input-text{min-width:0;width:100%;margin:0 0 10px}
}
/* v1.6 shop fixes */
.mmafl-site.mm-woo ul.products,.mmafl-site.mm-woo .flex-control-thumbs,.mmafl-site.mm-woo nav.woocommerce-pagination ul,.mmafl-site.mm-woo .woocommerce-tabs ul.tabs,.mmafl-site.mm-woo .woocommerce-error{list-style:none!important;padding-left:0}
.mm-wc-bar{padding:40px 0 16px}
.mmafl-site.mm-woo div.product .product_title{overflow-wrap:anywhere}
@media (max-width:767px){
  .mm-wc-bar{padding:30px 0 14px}
  .mmafl-site.mm-woo div.product{grid-template-columns:minmax(0,1fr)}
  .mmafl-site.mm-woo .woocommerce-message .button,.mmafl-site.mm-woo .woocommerce-info .button{float:none;display:flex!important;margin:12px 0 0;width:100%}
  .mmafl-site.mm-woo .woocommerce-info,.mmafl-site.mm-woo .woocommerce-message,.mmafl-site.mm-woo .woocommerce-error{padding:16px 16px 16px 46px}
}

/* =========================================================================
   v1.6.1: Events page, lighter look (white hero with the posters, grey list, white cards)
   ========================================================================= */
.mmafl-site .elementor-section.mm-evhero{padding:90px 0 100px;overflow:hidden;background:radial-gradient(700px 420px at 88% 30%,rgba(227,28,37,.12),transparent 70%),linear-gradient(180deg,#FFFFFF,#F6F6F6)}
.mmafl-site .elementor-section.mm-evhero::before{content:"";position:absolute;right:-6%;top:-20%;width:44%;height:150%;background:#E31C25;transform:skewX(-14deg);opacity:.06;pointer-events:none}
.mmafl-site .elementor-section.mm-evhero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:6px;background:repeating-linear-gradient(-45deg,#E31C25 0 18px,#111111 18px 36px)}
.mmafl-site .mm-evhero .mm-crumbs{color:#9A9A9A}
.mmafl-site .mm-evhero .mm-crumbs a{color:#111111}
.mmafl-site .mm-evhero .mm-h1 .elementor-heading-title{font-size:clamp(40px,5.6vw,76px);color:#111111}
.mmafl-site .mm-evhero .mm-lead{color:#555555;max-width:540px}
.mmafl-site .mm-evhero-text > .elementor-widget-wrap{padding-right:30px!important}
.mmafl-site .mm-evhero .elementor-widget.mm-inline{margin-top:4px}
.mmafl-site .mm-evhero-note{font-size:13px;font-weight:600;color:#777777;letter-spacing:.02em}
.mmafl-site .mm-evhero-note b{color:#E31C25;font-weight:900}
.mmafl-site .mm-evhero-note span{margin:0 10px;color:#CFCFCF}
.mmafl-site .mm-evhero-note .elementor-heading-title{line-height:1.5}
/* poster fan */
.mmafl-site .mm-evfan > .elementor-widget-wrap{position:relative;min-height:clamp(420px,42vw,560px);padding:0!important}
.mmafl-site .elementor-widget.mm-evfan-i{position:absolute!important;top:50%;left:50%;width:min(52%,290px)!important;margin:0!important;transition:transform .5s ease}
.mmafl-site .mm-evfan-i img{width:100%;aspect-ratio:1131/1600;object-fit:cover;display:block;border:6px solid #FFFFFF;box-shadow:0 30px 60px rgba(0,0,0,.28)}
.mmafl-site .mm-evfan-1{transform:translate(-100%,-48%) rotate(-8deg);z-index:1}
.mmafl-site .mm-evfan-2{transform:translate(-50%,-53%);z-index:3}
.mmafl-site .mm-evfan-3{transform:translate(0,-48%) rotate(8deg);z-index:2}
.mmafl-site .elementor-widget.mm-evfan-i:hover{z-index:5;transform:translate(-50%,-58%) scale(1.04)}
.mmafl-site .elementor-widget.mm-evfan-badge{position:absolute!important;right:4%;top:2%;z-index:6;width:118px!important;height:118px;margin:0!important;border-radius:50%;background:#E31C25;display:grid;place-items:center;transform:rotate(10deg);box-shadow:0 14px 30px rgba(227,28,37,.4)}
.mmafl-site .mm-evfan-badge .elementor-heading-title{color:#FFFFFF!important;text-align:center;font-size:13px!important;font-weight:800;text-transform:uppercase;letter-spacing:.08em;line-height:1.1}
.mmafl-site .mm-evfan-badge b{display:block;font-size:28px;font-weight:900;letter-spacing:0}

/* list on grey with white cards */
.mmafl-site .mm-evlist .mm-ev-filter button{border-color:#D0D0D0;color:#111111!important;background:#FFFFFF!important}
.mmafl-site .mm-evlist .mm-ev-filter button:hover{border-color:#111111}
.mmafl-site .mm-evlist .mm-ev-filter button.on{background:#E31C25!important;border-color:#E31C25;color:#FFFFFF!important}
.mmafl-site .mm-evlist .elementor-section.mm-ev{background:#FFFFFF;border-color:#E4E4E4;box-shadow:0 18px 44px rgba(0,0,0,.07)}
.mmafl-site .mm-evlist .elementor-section.mm-ev:hover{border-color:#E31C25;box-shadow:0 28px 60px rgba(0,0,0,.12)}
.mmafl-site .mm-evlist .mm-ev-img > .elementor-widget-wrap{background:#111111}
.mmafl-site .mm-evlist .mm-ev-pill .elementor-heading-title{background:#111111;color:#FFFFFF!important}
.mmafl-site .mm-evlist .mm-ev-status .elementor-heading-title{border-color:#DADADA;color:#111111!important}
.mmafl-site .mm-evlist .mm-ev-title .elementor-heading-title{color:#111111}
.mmafl-site .mm-evlist .mm-ev-sum{color:#666666}
.mmafl-site .mm-evlist .mm-ev-box .elementor-heading-title{background:#F4F4F4;color:#111111!important}
.mmafl-site .mm-evlist .mm-ev-box + .mm-ev-box .elementor-heading-title{color:#E31C25!important}
.mmafl-site .mm-evlist .mm-ev-box small,.mmafl-site .mm-evlist .mm-ev-box em{color:#777777}
.mmafl-site .mm-evlist .mm-ev-terms{color:#777777}
.mmafl-site .mm-evlist .mm-btn-ghost .elementor-button{border-color:#111111;color:#111111}
.mmafl-site .mm-evlist .mm-btn-ghost .elementor-button:hover{background:#111111;color:#FFFFFF}

@media (max-width:1024px){
  .mmafl-site .mm-evhero > .elementor-container{flex-wrap:wrap}
  .mmafl-site .mm-evhero .elementor-column{width:100%!important}
  .mmafl-site .mm-evhero-text > .elementor-widget-wrap{padding-right:0!important;text-align:center;justify-content:center}
  .mmafl-site .mm-evhero .mm-lead{margin:0 auto}
  .mmafl-site .mm-evfan > .elementor-widget-wrap{min-height:440px;max-width:560px;margin:30px auto 0}
}
@media (max-width:767px){
  .mmafl-site .elementor-section.mm-evhero{padding:48px 0 60px}
  .mmafl-site .mm-evfan > .elementor-widget-wrap{min-height:330px;margin-top:20px}
  .mmafl-site .elementor-widget.mm-evfan-i{width:46%!important}
  .mmafl-site .mm-evfan-1{transform:translate(-92%,-48%) rotate(-8deg)}
  .mmafl-site .mm-evfan-3{transform:translate(-8%,-48%) rotate(8deg)}
  .mmafl-site .mm-evfan-i img{border-width:4px}
  .mmafl-site .elementor-widget.mm-evfan-badge{width:86px!important;height:86px;right:0;top:0}
  .mmafl-site .mm-evfan-badge .elementor-heading-title{font-size:10px!important}
  .mmafl-site .mm-evfan-badge b{font-size:20px}
  .mmafl-site .mm-evhero-note span{margin:0 6px}
}
