/* =========================================================
   Max Fitness — Company Profile  ·  v2.0 Premium Full-Page
   ========================================================= */
.mfcp-root {
    --ink:#0C0C0C; --ink-2:#141414; --ink-3:#1B1B1B; --ink-card:#161616;
    --cream:#F6F2E9; --cream-2:#FBF8F1; --paper:#FFFFFF;
    --line:rgba(15,15,15,.09); --line-d:rgba(255,255,255,.10);
    --muted:#6E665A; --muted-2:#8A8275; --muted-d:#A49C8E;
    --gold:#C9971C; --gold-2:#E7B53D; --gold-3:#F0C75A;
    --gold-grad:linear-gradient(180deg,#F2CB5E 0%,#E0AC30 48%,#B8860B 100%);
    --gold-soft:rgba(201,151,28,.12);
    --f-display:'Archivo',system-ui,-apple-system,sans-serif;
    --f-hero:'Saira Condensed','Archivo',sans-serif;
    --f-body:'Inter',system-ui,sans-serif;
    font-family:var(--f-body);
    color:#15110B; line-height:1.6;
    -webkit-font-smoothing:antialiased;
    overflow-x:hidden;
}
.mfcp-root *,.mfcp-root *::before,.mfcp-root *::after{box-sizing:border-box;margin:0;padding:0;}
.mfcp-container{width:100%;max-width:1240px;margin:0 auto;padding:0 40px;}

/* ---------- shared headings / eyebrow ---------- */
.mfcp-eyebrow{display:flex;align-items:center;gap:14px;margin-bottom:18px;font-family:var(--f-body);font-weight:700;font-size:12px;letter-spacing:3.5px;color:var(--gold);text-transform:uppercase;}
.mfcp-eyebrow-bar{width:38px;height:2px;background:var(--gold);display:inline-block;flex:none;}
.mfcp-eyebrow--center{justify-content:center;}
.mfcp-eyebrow--center::after{content:"";width:38px;height:2px;background:var(--gold);display:inline-block;flex:none;}
.mfcp-h2{font-family:var(--f-display);font-weight:800;font-size:clamp(30px,4.2vw,52px);line-height:1.03;letter-spacing:-1px;color:var(--ink);text-transform:uppercase;}
.mfcp-h2--center{text-align:center;}
.mfcp-h2--light{color:#F7F3EA;}
.mfcp-gold{background:var(--gold-grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}
.mfcp-h2-rule{display:block;width:66px;height:3px;background:var(--gold);margin:16px 0 26px;border-radius:2px;}
.mfcp-sub{font-size:15.5px;color:var(--muted);max-width:540px;margin:14px 0 0;line-height:1.7;}

/* =========================================================
   HERO  (dark, gym image right)
   ========================================================= */
.mfcp-hero{position:relative;background:radial-gradient(115% 125% at 82% 26%, #1e1810 0%, #100e0b 52%, #060606 100%);overflow:hidden;margin-top:calc(-1 * var(--mfcp-bleed,0px));padding:calc(8px + var(--mfcp-top,0px) + var(--mfcp-bleed,0px)) 0 78px;}
.mfcp-hero-bg{position:absolute;top:-6%;right:-5%;width:80%;height:112%;background-size:cover;background-position:center;z-index:0;opacity:1;
    -webkit-mask-image:radial-gradient(118% 132% at 70% 45%, #000 0%, #000 36%, rgba(0,0,0,.55) 64%, rgba(0,0,0,.14) 85%, transparent 100%),linear-gradient(180deg, transparent 0%, #000 16%, #000 84%, transparent 100%);
    mask-image:radial-gradient(118% 132% at 70% 45%, #000 0%, #000 36%, rgba(0,0,0,.55) 64%, rgba(0,0,0,.14) 85%, transparent 100%),linear-gradient(180deg, transparent 0%, #000 16%, #000 84%, transparent 100%);
    -webkit-mask-composite:source-in;mask-composite:intersect;
    -webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;}
.mfcp-hero-overlay{position:absolute;inset:0;z-index:1;
    background:linear-gradient(90deg,#070707 0%,rgba(8,8,8,.84) 28%,rgba(8,8,8,.40) 48%,rgba(8,8,8,.10) 70%,rgba(8,8,8,.24) 100%);}
/* top + bottom black blends — dissolve the hard cut where the image meets the black header/footer edges */
.mfcp-hero::before{content:"";position:absolute;left:0;right:0;top:0;height:50%;z-index:1;pointer-events:none;
    background:linear-gradient(180deg,#050505 0%,#050505 14%,rgba(5,5,5,.82) 30%,rgba(5,5,5,.42) 52%,rgba(5,5,5,.12) 74%,transparent 100%);}
.mfcp-hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:34%;z-index:1;pointer-events:none;
    background:linear-gradient(0deg,#060606 0%,rgba(6,6,6,.66) 20%,rgba(6,6,6,.22) 46%,transparent 78%);}
.mfcp-hero .mfcp-container{position:relative;z-index:2;}
.mfcp-hero-layout{display:grid;grid-template-columns:1.04fr .96fr;gap:36px;align-items:center;min-height:560px;}

.mfcp-hero .mfcp-eyebrow{color:var(--gold-2);}
.mfcp-hero .mfcp-eyebrow-bar{background:var(--gold-2);}
.mfcp-hero-headline{font-family:var(--f-hero);font-style:italic;font-weight:800;text-transform:uppercase;line-height:.98;letter-spacing:-.5px;display:flex;flex-direction:column;gap:3px;margin-bottom:24px;}
.mfcp-hero-headline span{font-size:clamp(34px,4.3vw,58px);white-space:nowrap;}
.mfcp-hl-light{color:#FBF8F1;}
.mfcp-hl-gold{background:var(--gold-grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}
.mfcp-hl-banner span{color:#FBF8F1;}
.mfcp-hero-desc{font-size:16px;color:#C9C2B5;max-width:480px;line-height:1.7;margin-bottom:34px;}

.mfcp-hero-stats{display:flex;flex-wrap:nowrap;gap:0;max-width:620px;}
.mfcp-hstat{flex:1 1 0;min-width:0;position:relative;padding:0 20px;text-align:left;}
.mfcp-hstat:first-child{padding-left:0;}
.mfcp-hstat:last-child{padding-right:0;}
.mfcp-hstat:not(:last-child)::after{content:"";position:absolute;right:0;top:4px;bottom:4px;width:1px;background:rgba(255,255,255,.16);}
.mfcp-hstat-icon{color:var(--gold-2);margin-bottom:12px;}
.mfcp-hstat-icon svg{width:24px;height:24px;}
.mfcp-hstat-num{font-family:var(--f-hero);font-style:italic;font-weight:800;font-size:clamp(24px,2.4vw,32px);line-height:1;color:#fff;}
.mfcp-hstat-lbl{font-size:9.5px;font-weight:700;letter-spacing:1.2px;color:var(--gold-2);margin-top:7px;text-transform:uppercase;line-height:1.35;}

/* ---------- hero right : loc pill + badge + tags + tagline ---------- */
.mfcp-hero-right{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;}
.mfcp-loc-pill{display:inline-flex;align-items:center;gap:9px;font-size:12px;font-weight:800;letter-spacing:2.8px;color:#1A1306;text-transform:uppercase;
    padding:10px 24px;border:1px solid rgba(120,86,12,.55);border-radius:11px;background:linear-gradient(180deg,#F4D06A 0%,#E2AE32 50%,#B8860B 100%);box-shadow:0 10px 24px -12px rgba(201,151,28,.6),inset 0 1px 0 rgba(255,255,255,.4);}
.mfcp-loc-pill svg{width:15px;height:15px;color:#1A1306;}

.mfcp-badge{position:relative;width:min(360px,92%);aspect-ratio:1/1;flex:none;display:flex;align-items:center;justify-content:center;}
.mfcp-badge-svg{position:absolute;inset:0;width:100%;height:100%;}
.mfcp-blabel{font-family:var(--f-body);font-size:13.5px;font-weight:800;letter-spacing:3.4px;fill:#F5EFE1;text-transform:uppercase;}
.mfcp-blabel--bottom{letter-spacing:3.4px;}
.mfcp-badge-core{position:absolute;inset:22%;border-radius:50%;background:transparent;
    display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:2%;}
.mfcp-badge-est{display:inline-flex;align-items:center;justify-content:center;gap:9px;font-family:var(--f-body);font-weight:700;font-size:10.5px;letter-spacing:2.8px;color:var(--gold-2);margin-bottom:5px;text-indent:2.8px;}
.mfcp-badge-est::before,.mfcp-badge-est::after{content:"";width:8px;height:1px;background:var(--gold-2);opacity:.8;}
.mfcp-badge-year{font-family:var(--f-hero);font-style:italic;font-weight:900;font-size:clamp(56px,6.4vw,82px);line-height:1;letter-spacing:0;padding:2px 10px;white-space:nowrap;overflow:visible;
    background:linear-gradient(180deg,#FCE7A0 0%,#EBBB48 44%,#B8860B 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;filter:drop-shadow(0 2px 6px rgba(0,0,0,.4));}
.mfcp-badge-divider{width:54%;height:1px;background:linear-gradient(90deg,transparent,var(--gold-2),transparent);margin:9px 0;position:relative;}
.mfcp-badge-divider::after{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:4px;height:4px;border-radius:50%;background:var(--gold-2);}
.mfcp-badge-mid{font-family:var(--f-display);font-weight:800;font-size:clamp(14px,1.6vw,17px);letter-spacing:.4px;color:#FBF6EC;line-height:1.14;}
.mfcp-badge-sub{font-family:var(--f-body);font-size:9px;font-weight:700;letter-spacing:1.4px;color:var(--gold-3);margin-top:8px;line-height:1.5;}

/* bottom 4-icon row */
.mfcp-badge-tags{display:flex;align-items:flex-start;justify-content:center;gap:0;width:min(420px,100%);margin-top:4px;}
.mfcp-btag{flex:1 1 0;display:flex;flex-direction:column;align-items:center;gap:8px;padding:0 6px;position:relative;}
.mfcp-btag:not(:last-child)::after{content:"";position:absolute;right:0;top:4px;bottom:4px;width:1px;background:linear-gradient(180deg,transparent,rgba(201,151,28,.5),transparent);}
.mfcp-btag-ic{color:var(--gold-2);display:flex;}
.mfcp-btag-ic svg{width:24px;height:24px;}
.mfcp-btag span:last-child{font-family:var(--f-body);font-size:10px;font-weight:800;letter-spacing:1.4px;color:#EDE6D6;text-transform:uppercase;}
.mfcp-badge-trust{display:flex;align-items:center;justify-content:center;gap:12px;width:min(420px,100%);margin-top:6px;}
.mfcp-badge-trust::before,.mfcp-badge-trust::after{content:"";height:1px;width:26px;background:linear-gradient(90deg,transparent,var(--gold-2));}
.mfcp-badge-trust::after{background:linear-gradient(90deg,var(--gold-2),transparent);}
.mfcp-badge-trust span{font-family:var(--f-body);font-size:9.5px;font-weight:800;letter-spacing:1.6px;color:var(--gold-2);text-transform:uppercase;text-align:center;}

/* =========================================================
   CLIENTELE STRIP (top, light) — STABLE static row
   ========================================================= */
.mfcp-logostrip{background:var(--cream);border-top:1px solid rgba(15,15,15,.06);border-bottom:1px solid rgba(15,15,15,.06);padding:30px 0;position:relative;}
/* premium light-grey divider lines (request 8) */
.mfcp-logostrip::before,.mfcp-logostrip::after{content:"";position:absolute;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(201,151,28,.45),rgba(15,15,15,.12),rgba(201,151,28,.45),transparent);}
.mfcp-logostrip::before{top:0;}
.mfcp-logostrip::after{bottom:0;}
.mfcp-logostrip-wrap{display:flex;align-items:center;gap:30px;}
.mfcp-logostrip-head{flex:0 0 auto;position:relative;max-width:none;font-family:var(--f-hero);font-style:italic;font-weight:800;font-size:26px;line-height:1.05;letter-spacing:.3px;color:#15110A;text-transform:uppercase;padding-right:40px;margin-right:8px;overflow:visible;white-space:normal;}
.mfcp-logostrip-head::after{content:"";position:absolute;right:0;top:2px;bottom:2px;width:1px;background:linear-gradient(180deg,transparent,rgba(201,151,28,.75),transparent);}
.mfcp-logostrip-head .mfcp-gold{background:var(--gold-grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}
.mfcp-logostrip-row{flex:1 1 auto;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px 0;}
.mfcp-logostrip-item{flex:0 0 auto;display:flex;align-items:center;justify-content:center;height:40px;padding:0 22px;position:relative;}
.mfcp-logostrip-item:not(:last-child)::after{content:"";position:absolute;right:0;top:50%;transform:translateY(-50%);width:1px;height:22px;background:linear-gradient(180deg,transparent,rgba(15,15,15,.16),transparent);}
.mfcp-logostrip-item img{max-height:40px;max-width:140px;object-fit:contain;filter:grayscale(1);opacity:.66;transition:.3s;}
.mfcp-logostrip-item:hover img{filter:grayscale(0);opacity:1;}
.mfcp-logostrip-item span{font-family:var(--f-display);font-weight:800;font-size:15px;letter-spacing:.4px;color:#3A3024;opacity:.82;text-transform:uppercase;white-space:nowrap;transition:.3s;}
.mfcp-logostrip-item:hover span{opacity:1;color:#1d1810;}
/* top "Brands We Represent" strip — full-colour logos, single row */
.mfcp-logostrip--brands{padding:38px 0;}
.mfcp-logostrip--brands .mfcp-logostrip-head{flex:0 0 max-content;width:max-content;max-width:none;font-size:31px;line-height:1.02;white-space:nowrap;padding-right:34px;margin-right:14px;overflow:visible;}
.mfcp-logostrip--brands .mfcp-logostrip-row{flex-wrap:nowrap;gap:0;}
.mfcp-logostrip--brands .mfcp-logostrip-item{flex:1 1 0;min-width:0;height:84px;padding:0 14px;}
.mfcp-logostrip--brands .mfcp-logostrip-item:not(:last-child)::after{content:"";position:absolute;right:0;top:50%;width:1.6px;height:52px;
    background:linear-gradient(180deg,transparent,rgba(201,151,28,.8),transparent);transform:translateY(-50%) rotate(16deg);transform-origin:center;}
.mfcp-logostrip--brands .mfcp-logostrip-item img{max-height:62px;max-width:100%;width:auto;object-fit:contain;filter:none;opacity:1;}
.mfcp-logostrip--brands .mfcp-logostrip-item span{font-family:var(--f-hero);font-style:italic;font-size:20px;color:#1d1810;opacity:1;}

/* shared marquee engine (still used by the bottom "Trusted by the Best" pills) */
.mfcp-marquee{position:relative;overflow:hidden;width:100%;
    -webkit-mask-image:linear-gradient(90deg,transparent,#000 9%,#000 91%,transparent);
    mask-image:linear-gradient(90deg,transparent,#000 9%,#000 91%,transparent);}
.mfcp-marquee-track{display:flex;align-items:center;gap:18px;width:max-content;animation:mfcp-scroll 46s linear infinite;}
.mfcp-marquee-track--rev{animation-direction:reverse;animation-duration:52s;}
.mfcp-marquee:hover .mfcp-marquee-track{animation-play-state:paused;}
@keyframes mfcp-scroll{to{transform:translateX(-50%);}}

/* reusable premium divider (request 8) */
.mfcp-divider{height:1px;width:100%;border:0;background:linear-gradient(90deg,transparent,rgba(15,15,15,.12),transparent);margin:0;}

/* =========================================================
   WHO WE ARE (light)
   ========================================================= */
.mfcp-who{padding:88px 0;background:var(--cream);}
.mfcp-who-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:56px;align-items:stretch;}
.mfcp-who-media{position:relative;display:flex;}
.mfcp-who-frame{position:relative;width:100%;border:1px solid var(--gold-2);border-radius:22px;overflow:hidden;min-height:100%;background:linear-gradient(150deg,#F3EEE2,#EAE3D3);box-shadow:0 30px 60px -34px rgba(0,0,0,.35);}
.mfcp-who-frame img{width:100%;height:100%;object-fit:cover;display:block;}
.mfcp-who-badge{position:absolute;top:22px;right:22px;z-index:3;background:var(--gold-grad);border-radius:14px;padding:14px 20px;text-align:center;color:#1A1306;box-shadow:0 14px 28px -12px rgba(201,151,28,.6);}
.mfcp-who-badge strong{font-family:var(--f-hero);font-style:italic;font-weight:800;font-size:26px;display:block;line-height:1;}
.mfcp-who-badge span{font-size:10px;font-weight:700;letter-spacing:2px;}
.mfcp-who-loc{position:absolute;left:24px;bottom:20px;z-index:3;font-size:11px;font-weight:700;letter-spacing:2.5px;color:var(--muted-2);}
.mfcp-image-ph{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;color:#C3BBAB;}
.mfcp-image-ph span{font-size:12px;font-weight:700;letter-spacing:3px;}
.mfcp-who-content .mfcp-h2{font-size:clamp(22px,2.5vw,37px);white-space:nowrap;}
.mfcp-points{margin-top:8px;display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.mfcp-point{display:flex;flex-direction:column;gap:12px;background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:22px;transition:transform .3s,border-color .3s,box-shadow .3s;}
.mfcp-point:hover{transform:translateY(-3px);border-color:var(--gold-2);box-shadow:0 16px 36px -22px rgba(201,151,28,.45);}
.mfcp-point-icon{width:48px;height:48px;padding:12px;background:var(--gold-soft);border:1px solid var(--line);border-radius:12px;color:var(--gold);display:flex;align-items:center;justify-content:center;}
.mfcp-point-text h4{font-family:var(--f-display);font-weight:700;font-size:16.5px;color:var(--ink);margin-bottom:5px;letter-spacing:-.3px;line-height:1.2;}
.mfcp-point-text p{font-size:13px;color:var(--muted);line-height:1.55;}

/* =========================================================
   VISION & MISSION (dark) — visible premium panels
   ========================================================= */
.mfcp-vm{padding:88px 0;background:#090806;position:relative;overflow:hidden;}
.mfcp-vm::before{content:"";position:absolute;top:-10%;left:50%;transform:translateX(-50%);width:760px;height:520px;
    background:radial-gradient(closest-side,rgba(201,151,28,.16),rgba(201,151,28,.05) 55%,transparent 72%);pointer-events:none;z-index:0;}
.mfcp-vm::after{content:"";position:absolute;inset:0;pointer-events:none;z-index:0;
    background:linear-gradient(180deg,transparent,rgba(255,255,255,.015) 50%,transparent),radial-gradient(120% 90% at 50% 0,rgba(255,255,255,.04),transparent 60%);}
.mfcp-vm .mfcp-container{position:relative;z-index:1;}
.mfcp-vm .mfcp-h2{margin-bottom:44px;}
.mfcp-vm-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px;}
.mfcp-vm-card{position:relative;border-radius:22px;padding:42px 38px;overflow:hidden;
    background:#FBF8F1 !important;
    border:1px solid rgba(201,151,28,.55);
    box-shadow:0 30px 60px -34px rgba(0,0,0,.7),inset 0 1px 0 rgba(255,255,255,.6);}
.mfcp-vm-card::before{content:"";position:absolute;right:-40px;bottom:-50px;width:210px;height:210px;border-radius:50%;
    background:radial-gradient(closest-side,rgba(201,151,28,.10),transparent 70%);pointer-events:none;}
.mfcp-vm-card--gold{background:#FBF8F1 !important;border-color:rgba(201,151,28,.55);}
.mfcp-vm-card--gold::before{background:radial-gradient(closest-side,rgba(201,151,28,.10),transparent 70%);}
.mfcp-vm-icon{position:relative;z-index:1;width:62px;height:62px;border-radius:50%;background:linear-gradient(150deg,#E7B53D,#C8941C);display:flex;align-items:center;justify-content:center;color:#15100A;margin-bottom:22px;box-shadow:0 12px 26px -12px rgba(0,0,0,.35);}
.mfcp-vm-card--gold .mfcp-vm-icon{color:#15100A;}
.mfcp-vm-icon svg{width:28px;height:28px;}
.mfcp-vm-tag{position:relative;z-index:1;font-size:11px;font-weight:800;letter-spacing:3px;color:#A9781A !important;margin-bottom:8px;text-transform:uppercase;}
.mfcp-vm-card--gold .mfcp-vm-tag{color:#A9781A !important;}
.mfcp-vm-h{position:relative;z-index:1;font-family:var(--f-display);font-weight:800;font-size:25px;color:#15110A !important;margin-bottom:14px;letter-spacing:-.4px;}
.mfcp-vm-card--gold .mfcp-vm-h{color:#15110A !important;}
.mfcp-vm-text{position:relative;z-index:1;font-size:15px;line-height:1.7;color:#3A342A !important;}
.mfcp-vm-card--gold .mfcp-vm-text{color:#3A342A !important;}
.mfcp-vm-text b{font-weight:800;color:#9A6F12 !important;}
.mfcp-vm-card--gold .mfcp-vm-text b{color:#9A6F12 !important;}

/* =========================================================
   SCALE & PRESENCE (dark, map)
   ========================================================= */
.mfcp-scale{padding:88px 0;background:var(--cream-2);}
.mfcp-scale .mfcp-eyebrow{margin-bottom:12px;}
.mfcp-scale .mfcp-sub{margin-top:8px;margin-bottom:0;}
.mfcp-scale-layout{display:grid;grid-template-columns:1.05fr .95fr;gap:32px;align-items:start;margin-top:0;position:relative;}
.mfcp-scale-left{display:flex;flex-direction:column;}
/* smaller gap between the heading/subtitle and the first stat row */
.mfcp-scale-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:26px;}
.mfcp-scale-card{display:flex;align-items:center;gap:16px;background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:20px;transition:border-color .3s,transform .3s,box-shadow .3s;}
.mfcp-scale-card:hover{border-color:var(--gold-2);transform:translateY(-2px);box-shadow:0 14px 30px -20px rgba(201,151,28,.4);}
.mfcp-scale-icon{flex:none;width:46px;height:46px;border-radius:11px;background:var(--gold-soft);border:1px solid rgba(231,181,61,.25);color:var(--gold-2);display:flex;align-items:center;justify-content:center;}
.mfcp-scale-icon svg{width:22px;height:22px;}
.mfcp-scale-num{font-family:var(--f-hero);font-style:italic;font-weight:800;font-size:30px;line-height:1;color:var(--ink);}
.mfcp-scale-title{font-size:13px;font-weight:700;color:var(--ink);margin-top:3px;white-space:nowrap;}
/* stats without a number (e.g. Corporate HQ) — promote the title to the bold number style */
.mfcp-scale-num:empty + .mfcp-scale-title{font-family:var(--f-hero);font-style:italic;font-weight:800;font-size:26px;letter-spacing:-.3px;margin-top:0;color:var(--ink);}
.mfcp-scale-sub{font-size:11.5px;color:var(--muted);margin-top:1px;}
/* map fills its column; map + legend position/size are set in the admin (Scale tab) and applied on desktop */
.mfcp-scale-map{position:relative;align-self:start;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:0;min-height:360px;}
.mfcp-scale-map img{max-width:100%;height:auto;filter:drop-shadow(0 18px 40px rgba(0,0,0,.25));}
.mfcp-map-svg{width:100%;max-width:500px;margin:0 auto;}
.mfcp-map-svg svg{width:100%;height:auto;display:block;filter:drop-shadow(0 18px 36px rgba(0,0,0,.16));}
.mfcp-map-pin circle:first-child{animation:mfcp-pulse 2s ease-out infinite;transform-box:fill-box;transform-origin:center;}
.mfcp-map-pin circle:last-child{animation:mfcp-dotblink 2s ease-in-out infinite;transform-box:fill-box;transform-origin:center;}
@keyframes mfcp-pulse{0%{opacity:.6;transform:scale(.6);}70%{opacity:0;transform:scale(2.2);}100%{opacity:0;transform:scale(2.2);}}
@keyframes mfcp-dotblink{0%,100%{opacity:1;}50%{opacity:.45;}}
/* map stage — transform (move + size) comes from the admin settings, applied inline */
.mfcp-stage{position:relative;display:inline-block;width:100%;transform-origin:center center;}
/* location legend — position from CSS, fine nudge + size from the admin settings (applied inline) */
.mfcp-loc-legend{list-style:none;position:absolute;right:-4%;bottom:8%;display:flex;flex-direction:column;align-items:flex-start;gap:14px;
    z-index:6;transform-origin:center center;}
.mfcp-loc-legend li{display:inline-flex;align-items:center;gap:12px;font-size:13.5px;font-weight:700;letter-spacing:.5px;color:#5C4710;text-transform:uppercase;white-space:nowrap;}
.mfcp-loc-pin{width:11px;height:11px;border-radius:50%;background:var(--gold-2);flex:none;animation:mfcp-blink 1.5s ease-in-out infinite;}
@keyframes mfcp-blink{0%,100%{opacity:1;box-shadow:0 0 0 3px rgba(231,181,61,.25),0 0 6px 1px rgba(231,181,61,.6);}50%{opacity:.4;box-shadow:0 0 0 5px rgba(231,181,61,.08),0 0 2px 0 rgba(231,181,61,.2);}}

/* =========================================================
   CERTIFICATIONS (light) — 6 framed certificates in one row
   ========================================================= */
.mfcp-cert{padding:88px 0;background:var(--cream);}
.mfcp-cert .mfcp-h2{margin-bottom:44px;}
.mfcp-cert-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:16px;}
.mfcp-cert-card{background:transparent;border:0;padding:0;text-align:center;transition:transform .3s;}
.mfcp-cert-card:hover{transform:translateY(-5px);}
/* the gold certificate frame (no black border) */
.mfcp-cert-frame{position:relative;border-radius:7px;padding:3px;margin:0 auto 14px;
    background:linear-gradient(150deg,#F2CB5E 0%,#C8941C 45%,#8a6a14 100%);
    box-shadow:0 16px 34px -22px rgba(0,0,0,.5);transition:box-shadow .3s;}
.mfcp-cert-card:hover .mfcp-cert-frame{box-shadow:0 22px 44px -22px rgba(201,151,28,.55);}
.mfcp-cert-logo{aspect-ratio:1/1.18;border-radius:4px;background:#fff;display:flex;align-items:center;justify-content:center;overflow:hidden;}
.mfcp-cert-logo img{width:100%;height:100%;object-fit:cover;border-radius:4px;}
.mfcp-cert-ph{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;width:100%;height:100%;background:linear-gradient(160deg,#FBF6EA,#F2E9D4);border-radius:4px;}
.mfcp-cert-badge{font-family:var(--f-display);font-weight:800;font-size:26px;color:#A9781A;letter-spacing:-.5px;}
.mfcp-cert-ph-hint{font-size:8.5px;font-weight:700;letter-spacing:2px;color:#A99873;}
.mfcp-cert-title{font-weight:700;font-size:13px;color:var(--ink);margin-bottom:2px;line-height:1.25;}
.mfcp-cert-desc{font-size:11px;color:var(--muted);line-height:1.3;}

/* =========================================================
   BRANDS WE REPRESENT (light) — two tiers: Our Brands + Distribution Partners
   ========================================================= */
.mfcp-brands{padding:88px 0;background:var(--cream);}
.mfcp-brands .mfcp-h2{margin-bottom:0;}
/* gold dot divider under the heading */
.mfcp-brands-dot{width:120px;height:1px;margin:18px auto 12px;position:relative;background:linear-gradient(90deg,transparent,var(--gold-2),transparent);}
.mfcp-brands-dot::after{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:5px;height:5px;border-radius:50%;background:var(--gold-2);}
.mfcp-brands-sub{text-align:center;font-size:15px;color:var(--muted);margin:0 auto;}
/* tier separator (label + flanking lines + icon badge) */
.mfcp-bsep{display:flex;align-items:center;justify-content:center;gap:18px;max-width:940px;margin:40px auto 26px;}
.mfcp-bsep-line{flex:1 1 auto;height:1px;background:linear-gradient(90deg,transparent,rgba(201,151,28,.5),transparent);}
.mfcp-bsep-tag{position:relative;display:inline-flex;align-items:center;gap:11px;padding:13px 34px;margin-top:14px;z-index:0;flex:none;}
.mfcp-bsep-tag::before{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(180deg,#E7B53D,#C8941C);clip-path:polygon(7% 0,93% 0,100% 50%,93% 100%,7% 100%,0 50%);}
.mfcp-bsep-tag::after{content:"";position:absolute;inset:1.6px;z-index:-1;background:#FBF8F1;clip-path:polygon(7% 0,93% 0,100% 50%,93% 100%,7% 100%,0 50%);}
.mfcp-bsep-tag--dark::after{background:#111;}
.mfcp-bsep-label{font-family:var(--f-body);font-weight:800;font-size:13px;letter-spacing:3.4px;color:#15110A;text-transform:uppercase;}
.mfcp-bsep-label--dark{color:#F3ECDC;}
.mfcp-bsep-badge{position:absolute;top:-15px;left:50%;transform:translateX(-50%);width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 18px -8px rgba(0,0,0,.5);}
.mfcp-bsep-badge svg{width:16px;height:16px;}
.mfcp-bsep-badge--gold{background:linear-gradient(150deg,#F2CB5E,#C8941C);color:#15100A;border:2px solid #FBF8F1;}
.mfcp-bsep-badge--dark{background:#111;color:var(--gold-2);border:2px solid var(--gold-2);}
/* card rows */
.mfcp-brands-row{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;max-width:1080px;margin:0 auto;}
.mfcp-bcard{position:relative;background:#fff;border-radius:16px;padding:34px 26px 26px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;box-shadow:0 18px 42px -28px rgba(0,0,0,.3);transition:transform .3s,box-shadow .3s;}
.mfcp-bcard:hover{transform:translateY(-5px);box-shadow:0 28px 54px -26px rgba(201,151,28,.4);}
.mfcp-bcard-logo{width:100%;height:96px;display:flex;align-items:center;justify-content:center;}
.mfcp-bcard-logo img{max-height:82px;max-width:80%;width:auto;object-fit:contain;}
.mfcp-bcard-name{font-family:var(--f-hero);font-style:italic;font-weight:800;font-size:clamp(18px,1.8vw,24px);letter-spacing:-.4px;color:var(--ink);text-transform:uppercase;text-align:center;}
.mfcp-bcard-rule{width:42px;height:2px;border-radius:2px;background:var(--gold-2);opacity:.85;}
.mfcp-bcard-cap{font-size:12px;font-weight:700;letter-spacing:2px;color:#6E665A;text-transform:uppercase;text-align:center;line-height:1.35;}
/* gold corner brackets on the primary (Our Brands) cards */
.mfcp-bcard--corner::before,.mfcp-bcard--corner::after{content:"";position:absolute;width:42px;height:42px;pointer-events:none;}
.mfcp-bcard--corner::before{top:0;left:0;border-top:3px solid var(--gold-2);border-left:3px solid var(--gold-2);border-top-left-radius:16px;}
.mfcp-bcard--corner::after{bottom:0;right:0;border-bottom:3px solid var(--gold-2);border-right:3px solid var(--gold-2);border-bottom-right-radius:16px;}
/* dotted vertical separators between distribution-partner cards */
.mfcp-brands-row--partners{margin-top:26px;}
.mfcp-bcard--plain:not(:first-child)::before{content:"";position:absolute;left:-13px;top:26%;bottom:26%;width:2px;
    background-image:radial-gradient(rgba(201,151,28,.75) 1px,transparent 1.4px);background-size:2px 8px;background-repeat:repeat-y;}

/* =========================================================
   FEATURED INSTALLATIONS (light)
   ========================================================= */
.mfcp-inst{padding:100px 0;background:var(--cream-2);}
.mfcp-inst .mfcp-h2{margin-bottom:46px;}
.mfcp-inst-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;}
.mfcp-inst-card{border-radius:16px;overflow:hidden;}
.mfcp-inst-img{position:relative;aspect-ratio:3/4;background:linear-gradient(150deg,#EDE7D9,#E2DAC8);overflow:hidden;}
.mfcp-inst-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s;}
.mfcp-inst-card:hover .mfcp-inst-img img{transform:scale(1.06);}
.mfcp-inst-overlay{position:absolute;left:0;right:0;bottom:0;padding:40px 18px 16px;background:linear-gradient(180deg,transparent,rgba(8,8,8,.88));}
.mfcp-inst-title{font-family:var(--f-display);font-weight:700;font-size:14.5px;color:#fff;}
.mfcp-inst-loc{font-size:11.5px;font-weight:600;letter-spacing:.5px;color:var(--gold-2);margin-top:2px;}
.mfcp-image-ph--sm{position:absolute;inset:0;background:none;color:#B7AF9E;}
.mfcp-image-ph--sm span{font-size:10px;letter-spacing:2px;}

/* =========================================================
   AWARDS (dark)
   ========================================================= */
.mfcp-awards{padding:88px 0 46px;background:var(--cream);}
.mfcp-awards .mfcp-h2{margin-bottom:46px;}
.mfcp-awards-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;}
.mfcp-award-card{display:flex;flex-direction:column;align-items:center;text-align:center;gap:16px;background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:26px 20px;transition:border-color .3s,transform .3s,box-shadow .3s;}
.mfcp-award-card:hover{border-color:var(--gold-2);transform:translateY(-4px);box-shadow:0 18px 40px -24px rgba(201,151,28,.4);}
.mfcp-award-img{flex:none;width:96px;height:96px;border-radius:16px;background:var(--gold-soft);display:flex;align-items:center;justify-content:center;overflow:hidden;}
.mfcp-award-img--img{background:transparent;width:auto;min-width:96px;max-width:130px;height:165px;border-radius:10px;}
.mfcp-award-img img{width:100%;height:100%;object-fit:contain;}
.mfcp-award-ph{color:var(--gold-2);}
.mfcp-award-ph svg{width:48px;height:48px;}
.mfcp-award-text{display:flex;flex-direction:column;align-items:center;width:100%;border-top:1px solid #E4DECF;padding-top:16px;margin-top:2px;}
.mfcp-award-title{font-weight:700;font-size:15px;color:var(--ink);line-height:1.3;}
.mfcp-award-sub{font-size:12px;color:var(--muted);margin-top:6px;}

/* =========================================================
   TRUSTED BY THE BEST (light pills)
   ========================================================= */
.mfcp-clients{padding:46px 0 88px;background:var(--cream);}
.mfcp-clients .mfcp-h2{margin-bottom:46px;}
.mfcp-marquee--pills .mfcp-marquee-track{gap:22px;}
.mfcp-client-pill{flex:none;display:flex;align-items:center;justify-content:center;height:64px;min-width:190px;padding:0 36px;background:var(--paper);border:1px solid var(--line);border-radius:60px;box-shadow:0 10px 26px -18px rgba(0,0,0,.3);}
.mfcp-client-pill img{max-height:40px;max-width:150px;object-fit:contain;}
.mfcp-client-pill span{font-weight:700;font-size:16px;color:#2C261D;white-space:nowrap;}

/* =========================================================
   CTA BANNER (gold)
   ========================================================= */
.mfcp-cta{background:var(--gold-grad);padding:34px 0;}
.mfcp-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:28px;flex-wrap:wrap;}
.mfcp-cta-text{display:flex;align-items:center;gap:20px;}
.mfcp-cta-icon{flex:none;width:54px;height:54px;border-radius:50%;background:rgba(10,10,10,.12);display:flex;align-items:center;justify-content:center;color:#1A1306;}
.mfcp-cta-icon svg{width:24px;height:24px;}
.mfcp-cta-title{font-family:var(--f-display);font-weight:800;font-size:clamp(20px,2.4vw,28px);color:#15100A;letter-spacing:-.5px;text-transform:uppercase;}
.mfcp-cta-sub{font-size:14px;color:#4A360C;margin-top:2px;}
.mfcp-cta-btn{display:inline-flex;align-items:center;gap:10px;background:#0D0D0D;color:#fff;font-weight:700;font-size:14px;letter-spacing:.4px;padding:16px 30px;border-radius:60px;text-decoration:none;text-transform:uppercase;transition:transform .25s,background .25s;}
.mfcp-cta-btn svg{width:18px;height:18px;}
.mfcp-cta-btn:hover{transform:translateY(-2px);background:#000;}

/* =========================================================
   FOOTER (dark)
   ========================================================= */
.mfcp-footer{background:#080808;color:#B7B0A2;padding:64px 0 0;}
.mfcp-footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1.2fr;gap:48px;padding-bottom:48px;}
.mfcp-footer-brand{font-family:var(--f-hero);font-style:italic;font-weight:800;font-size:26px;color:#fff;letter-spacing:-.4px;margin-bottom:16px;text-transform:uppercase;}
.mfcp-footer-desc{font-size:14px;line-height:1.7;color:#8E877A;max-width:340px;margin-bottom:22px;}
.mfcp-footer-socials{display:flex;gap:10px;}
.mfcp-footer-socials a{width:38px;height:38px;border-radius:50%;border:1px solid var(--line-d);display:flex;align-items:center;justify-content:center;color:#C9C2B4;font-weight:700;font-size:14px;text-decoration:none;transition:.25s;}
.mfcp-footer-socials a:hover{background:var(--gold-grad);color:#1A1306;border-color:transparent;}
.mfcp-footer-col h4{font-family:var(--f-display);font-weight:700;font-size:15px;color:#fff;margin-bottom:18px;letter-spacing:.3px;}
.mfcp-footer-col ul{list-style:none;display:flex;flex-direction:column;gap:11px;}
.mfcp-footer-col a{color:#9A9386;text-decoration:none;font-size:13.5px;transition:color .2s;}
.mfcp-footer-col a:hover{color:var(--gold-2);}
.mfcp-footer-contact li{display:flex;align-items:flex-start;gap:11px;font-size:13.5px;color:#9A9386;line-height:1.5;}
.mfcp-footer-contact svg{width:17px;height:17px;color:var(--gold-2);flex:none;margin-top:2px;}
.mfcp-footer-bar{border-top:1px solid var(--line-d);padding:22px 0;font-size:12.5px;color:#736D61;}

/* =========================================================
   RESPONSIVE
   ========================================================= */
@media (max-width:1080px){
    .mfcp-hero-layout{grid-template-columns:1fr;gap:40px;min-height:0;}
    .mfcp-hero-bg{width:100%;opacity:.5;}
    .mfcp-hero-overlay{background:linear-gradient(180deg,rgba(11,11,11,.86),rgba(11,11,11,.78));}
    /* text block first, badge element after it */
    .mfcp-hero-left{order:0;}
    .mfcp-hero-right{order:1;}
    .mfcp-badge{width:min(320px,80%);}
    .mfcp-who-grid{grid-template-columns:1fr;gap:46px;}
    .mfcp-who-content .mfcp-h2{white-space:normal;}
    .mfcp-vm-grid{grid-template-columns:1fr;}
    .mfcp-scale-layout{grid-template-columns:1fr;gap:40px;}
    .mfcp-scale-map{min-height:0;}
    .mfcp-stage{transform:none !important;width:100%;}
    /* legend: left-aligned on tablet/mobile (was centred) */
    .mfcp-loc-legend{position:static;transform:none !important;margin:20px 0 0;align-self:flex-start;align-items:flex-start;text-align:left;padding-left:6px;}
    .mfcp-logostrip--brands .mfcp-logostrip-row{flex-wrap:wrap;gap:14px 0;}
    .mfcp-cert-grid{grid-template-columns:repeat(3,1fr);}
    .mfcp-inst-grid{grid-template-columns:repeat(3,1fr);}
    .mfcp-awards-grid{grid-template-columns:repeat(2,1fr);}
    .mfcp-footer-grid{grid-template-columns:1fr 1fr;gap:36px;}
    .mfcp-logostrip-wrap{flex-direction:column;gap:18px;}
    .mfcp-logostrip-head{max-width:none;padding-right:0;border-right:0;text-align:center;padding-bottom:14px;border-bottom:1px solid rgba(15,15,15,.12);width:100%;}
    .mfcp-logostrip-head::after{display:none;}
}
@media (max-width:640px){
    .mfcp-container{padding:0 22px;}
    /* hero: no negative pull + smaller top gap + LEFT-aligned content (fixes clipped letters) */
    .mfcp-hero{margin-top:0;padding:calc(40px + var(--mfcp-top,0px)) 0 52px;}
    .mfcp-hero-left{text-align:left;align-items:flex-start;}
    .mfcp-hero .mfcp-eyebrow{justify-content:flex-start;}
    .mfcp-hero-headline{align-items:flex-start;}
    .mfcp-hero-headline span{font-size:clamp(28px,9.5vw,48px);white-space:normal;}
    .mfcp-hero-desc{max-width:100%;margin:0 0 30px;}
    /* stats: 2×2 grid, left-aligned, no vertical dividers */
    .mfcp-hero-stats{display:grid;grid-template-columns:1fr 1fr;gap:26px 18px;max-width:none;margin:6px 0 0;justify-items:start;}
    .mfcp-hstat{padding:0;text-align:left;}
    .mfcp-hstat::after{display:none !important;}
    .mfcp-hstat-icon{display:flex;justify-content:flex-start;}
    /* hide the top brands strip on mobile (the full Brands section below covers it) */
    .mfcp-logostrip--brands{display:none !important;}
    .mfcp-who,.mfcp-vm,.mfcp-scale,.mfcp-cert,.mfcp-brands,.mfcp-inst,.mfcp-awards,.mfcp-clients{padding:64px 0;}
    .mfcp-awards{padding:64px 0 30px;}
    .mfcp-clients{padding:30px 0 60px;}
    .mfcp-who-content .mfcp-h2{white-space:normal;}
    .mfcp-points,.mfcp-scale-grid{grid-template-columns:1fr;}
    .mfcp-inst-grid{grid-template-columns:1fr 1fr;}
    /* BRANDS WE REPRESENT: stack into one column, keep the same premium cards */
    .mfcp-brands-row,.mfcp-brands-row--primary,.mfcp-brands-row--partners{grid-template-columns:1fr;gap:18px;max-width:440px;}
    .mfcp-bcard{padding:26px 22px 22px;}
    .mfcp-bcard-logo{height:78px;}
    .mfcp-bcard-logo img{max-height:66px;max-width:72%;}
    .mfcp-bcard--plain:not(:first-child)::before{display:none;}
    .mfcp-bsep{gap:12px;margin:34px auto 22px;}
    .mfcp-bsep-tag{padding:11px 26px;}
    .mfcp-bsep-label{font-size:11px;letter-spacing:2.6px;}
    /* AWARDS + CERTIFICATIONS become swipeable carousels on mobile */
    .mfcp-cert-grid,.mfcp-awards-grid{display:flex;grid-template-columns:none;overflow-x:auto;-webkit-overflow-scrolling:touch;
        scroll-snap-type:x mandatory;gap:14px;padding:2px 22px 16px;margin:0 -22px;scrollbar-width:none;}
    .mfcp-cert-grid::-webkit-scrollbar,.mfcp-awards-grid::-webkit-scrollbar{display:none;}
    .mfcp-cert-card{flex:0 0 44%;scroll-snap-align:center;}
    .mfcp-award-card{flex:0 0 72%;scroll-snap-align:center;}
    .mfcp-footer-grid{grid-template-columns:1fr;gap:32px;}
    .mfcp-cta-inner{flex-direction:column;align-items:flex-start;}
}
@media (max-width:430px){
    .mfcp-inst-grid{grid-template-columns:1fr;}
    .mfcp-cert-card{flex:0 0 62%;}
    .mfcp-award-card{flex:0 0 82%;}
    .mfcp-hstat-num{font-size:28px;}
}
