/**
 * MRMC Elements — Footer widget.
 *
 * Deep navy, the same navy as the statement bands on the Home widget, with the
 * logo's gold-to-flame gradient for accents. Scoped under `.mf`, so it sits
 * beside the Home widget without either one reaching into the other.
 *
 * @package MRMC\Elements
 * @since   1.1.0
 */

.mf{
  --navy:#16203d; --navy-2:#22305a; --paper:#ffffff;
  --text:rgba(255,255,255,.92); --muted:rgba(255,255,255,.62); --line:rgba(255,255,255,.12);
  --flame:#fb512b; --gold:#fcbc3e;
  --grad:linear-gradient(120deg,var(--gold) 0%,var(--flame) 100%);
  --serif:"Cormorant Garamond","Times New Roman",serif;
  --sans:"Jost",-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;
  --ease:cubic-bezier(.22,.61,.36,1);
  position:relative; overflow:hidden; isolation:isolate;
  background:linear-gradient(180deg,var(--navy) 0%,#111935 100%); color:var(--text);
  font-family:var(--sans); font-size:16px; line-height:1.7; font-weight:300;
  -webkit-font-smoothing:antialiased;
}
.mf *,.mf *::before,.mf *::after{box-sizing:border-box}
.mf :where(h2,h3,p,address){margin:0;padding:0;font-style:normal;letter-spacing:normal;text-transform:none}
.mf :where(ul){list-style:none;margin:0;padding:0}
.mf :where(li){margin:0;padding:0}
.mf li::before,.mf li::marker{content:none}
.mf a{color:inherit;text-decoration:none;transition:color .3s var(--ease)}
.mf a:hover{color:var(--gold)}
.mf a:focus-visible{outline:2px solid var(--gold);outline-offset:4px;border-radius:8px}
.mf :where(img){display:block;max-width:100%;height:auto;border:0}
.mf svg{display:block;flex-shrink:0}
.mf::before{content:"";position:absolute;width:760px;height:560px;right:-260px;top:-320px;border-radius:50%;background:rgba(251,81,43,.26);filter:blur(130px);z-index:-1}
.mf::after{content:"";position:absolute;width:560px;height:460px;left:-240px;bottom:-260px;border-radius:50%;background:rgba(109,181,170,.16);filter:blur(120px);z-index:-1}
.mf-wrap{max-width:1260px;margin:0 auto;padding:0 clamp(20px,4vw,48px);position:relative}

/* ---------- full bleed ----------
 * Theme header/footer layouts sit the widget inside an Elementor column whose
 * gap adds padding on every side, so the footer stopped short of the window edges.
 * Strip that padding from the column holding this widget only — nothing else
 * on the page is touched. Browsers without :has() get matching negative
 * margins per gap size instead.
 */
.elementor-widget-wrap:has(>.elementor-widget-mrmc-footer),
.e-con:has(>.elementor-widget-mrmc-footer),
.e-con-inner:has(>.elementor-widget-mrmc-footer){padding:0!important;--padding-top:0px;--padding-right:0px;--padding-bottom:0px;--padding-left:0px}
.elementor-widget-mrmc-footer{width:100%;max-width:none}
@supports not selector(:has(*)){
  .elementor-column-gap-narrow .elementor-widget-mrmc-footer{margin:-5px -5px}
  .elementor-column-gap-default .elementor-widget-mrmc-footer{margin:-10px -10px}
  .elementor-column-gap-extended .elementor-widget-mrmc-footer{margin:-15px -15px}
  .elementor-column-gap-wide .elementor-widget-mrmc-footer{margin:-20px -20px}
  .elementor-column-gap-wider .elementor-widget-mrmc-footer{margin:-30px -30px}
}

/* top */
.mf-top{display:flex;justify-content:space-between;align-items:center;gap:32px;padding:clamp(64px,8vw,104px) 0 clamp(44px,5vw,64px);border-bottom:1px solid var(--line)}
.mf-logo{display:inline-flex;padding:14px 20px;border-radius:20px;background:var(--paper);box-shadow:0 24px 50px -26px rgba(0,0,0,.6)}
.mf-logo img{width:190px}
.mf-top__cta{display:flex;align-items:center;gap:26px;flex-wrap:wrap;justify-content:flex-end}
.mf-top__line{font-family:var(--serif);font-style:italic;font-size:clamp(24px,2.4vw,34px);line-height:1.2;color:var(--paper)}
.mf-top__line span,.mf-top__line em{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.mf-btn{display:inline-flex;align-items:center;gap:14px;padding:8px 8px 8px 26px;border-radius:999px;background:var(--paper);color:var(--navy)!important;font-weight:500;font-size:15px;letter-spacing:.02em;line-height:1;white-space:nowrap;transition:transform .4s var(--ease),box-shadow .4s var(--ease)}
.mf-btn i{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--grad);transition:transform .45s var(--ease)}
.mf-btn svg{width:17px;height:17px}
.mf-btn:hover{transform:translateY(-2px);box-shadow:0 22px 40px -18px rgba(251,81,43,.7)}
.mf-btn:hover i{transform:rotate(-45deg)}

/* columns */
.mf-cols{display:grid;grid-template-columns:1fr 1.25fr 1.15fr 1.35fr;gap:clamp(28px,4vw,56px);padding:clamp(48px,6vw,80px) 0}
.mf h3{font-family:var(--sans);font-size:12px;font-weight:500;letter-spacing:.24em;text-transform:uppercase;color:var(--gold);margin-bottom:22px;display:flex;align-items:center;gap:12px}
.mf h3::before{content:"";width:22px;height:1px;background:var(--grad)}
.mf-list li+li{margin-top:10px}
.mf-list a{display:inline-flex;align-items:center;gap:10px;font-size:16px;color:var(--text)}
.mf-list a::after{content:"";width:0;height:1px;background:var(--gold);transition:width .35s var(--ease)}
.mf-list a:hover::after{width:16px}
.mf address{font-family:var(--serif);font-size:24px;line-height:1.35;color:var(--paper)}
.mf-map{display:inline-flex;align-items:center;gap:8px;margin-top:16px;font-size:14px;letter-spacing:.06em;color:var(--muted)}
.mf-map svg{width:16px;height:16px;color:var(--gold)}
.mf-contact a{display:flex;align-items:center;gap:14px;padding:12px 0;border-bottom:1px solid var(--line);font-size:16px;color:var(--text);word-break:break-word}
.mf-contact a:first-child{padding-top:0}
.mf-contact svg{width:18px;height:18px;color:var(--gold)}
.mf-social{display:flex;gap:10px;margin-top:24px}
.mf-social a{width:46px;height:46px;border-radius:50%;border:1px solid var(--line);background:rgba(255,255,255,.04);display:grid;place-items:center;color:var(--paper);transition:background .35s var(--ease),border-color .35s var(--ease),color .35s var(--ease),transform .35s var(--ease)}
.mf-social a:hover{background:var(--grad);border-color:transparent;color:var(--navy);transform:translateY(-3px)}
.mf-social svg{width:18px;height:18px}

/* wordmark */
.mf-mark{font-family:var(--serif);font-weight:500;font-size:clamp(90px,19vw,300px);line-height:.78;letter-spacing:-.03em;text-align:center;white-space:nowrap;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.14);user-select:none;margin-bottom:-.12em;pointer-events:none}
.mf-mark span{background:var(--grad);-webkit-background-clip:text;background-clip:text;-webkit-text-stroke:0;opacity:.9}

/* bottom */
.mf-bottom{position:relative;display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;padding:26px 0 30px;border-top:1px solid var(--line);font-size:13px;letter-spacing:.05em;color:var(--muted)}
.mf-bottom a{color:var(--paper)}
.mf-top-btn{display:inline-flex;align-items:center;gap:10px;color:var(--paper)}
.mf-top-btn i{width:36px;height:36px;border-radius:50%;border:1px solid var(--line);display:grid;place-items:center;transition:background .35s var(--ease),border-color .35s var(--ease),color .35s var(--ease)}
.mf-top-btn svg{width:15px;height:15px;transform:rotate(-90deg)}
.mf-top-btn:hover i{background:var(--grad);border-color:transparent;color:var(--navy)}

@media (max-width:1000px){
  .mf-cols{grid-template-columns:1fr 1fr}
  .mf-top{flex-direction:column;align-items:flex-start}
  .mf-top__cta{justify-content:flex-start}
}
@media (max-width:560px){
  .mf-cols{grid-template-columns:1fr}
  .mf-btn{white-space:normal}
  .mf-bottom{flex-direction:column;align-items:flex-start}
}
@media (prefers-reduced-motion:reduce){
  .mf *{transition:none!important}
}
