@font-face{font-family:"Nunito Sans";font-style:normal;font-weight:400;font-display:swap;src:url("./assets/nunito-sans-400.ttf") format("truetype")}
@font-face{font-family:"Nunito Sans";font-style:normal;font-weight:600;font-display:swap;src:url("./assets/nunito-sans-600.ttf") format("truetype")}
@font-face{font-family:"Nunito Sans";font-style:normal;font-weight:700;font-display:swap;src:url("./assets/nunito-sans-700.ttf") format("truetype")}
@font-face{font-family:"Nunito Sans";font-style:normal;font-weight:800;font-display:swap;src:url("./assets/nunito-sans-800.ttf") format("truetype")}

body{margin:0;background:#F3F6F7;font-family:"Nunito Sans",system-ui,sans-serif;color:#1F2A2C;overflow-x:hidden}
a{color:#1E7F87;text-decoration:none;transition:color .3s}
a:hover{color:#145E64}
*{box-sizing:border-box}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid #1E7F87;outline-offset:3px;border-radius:6px}
.mf-wrap{max-width:1120px;margin:0 auto;padding:0 24px;width:100%}
.mf-btn{display:inline-flex;align-items:center;justify-content:center;min-height:56px;padding:0 28px;border-radius:28px;font-weight:700;font-size:17px;cursor:pointer;border:none;white-space:nowrap;transition:transform .5s cubic-bezier(.2,.8,.2,1),box-shadow .5s,background .4s,border-color .4s}
.mf-btn:hover{transform:translateY(-2px)}
.mf-btn:active{transform:scale(.97)}
summary::-webkit-details-marker{display:none}
summary{list-style:none;cursor:pointer}
@keyframes mfUp{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes mfSoft{from{opacity:0;transform:translateY(22px) scale(.99);filter:blur(6px)}to{opacity:1;transform:none;filter:blur(0)}}
@keyframes mfBreath{0%,100%{transform:scale(1);opacity:.5}50%{transform:scale(1.16);opacity:.85}}
@keyframes mfRing{0%{transform:scale(.72);opacity:0}25%{opacity:.5}60%{opacity:.16}100%{transform:scale(1.5);opacity:0}}
@keyframes mfFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
@keyframes mfWashA{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(50px,-34px) scale(1.1)}}
@keyframes mfWashB{0%,100%{transform:translate(0,0) scale(1.06)}50%{transform:translate(-46px,32px) scale(.96)}}
@keyframes mfDots{0%,80%,100%{opacity:.25}40%{opacity:1}}
@media (max-width:900px){.mf-cols{grid-template-columns:1fr !important}.mf-nav-links,.mf-nav-cta{display:none !important}.mf-burger{display:inline-flex !important}.mf-pad{padding:36px 20px !important}.mf-hero-grid{padding-top:20px !important;gap:36px !important}}
@media (prefers-reduced-motion:reduce){*{animation:none !important;transition-duration:.01ms !important}}

html{scroll-padding-top:110px;color-scheme:light}
.mf-cols>*{min-width:0}
.mf-btn{white-space:normal;text-align:center;line-height:1.3;padding-top:12px;padding-bottom:12px;max-width:100%}
.skip-link{position:fixed;top:8px;left:8px;z-index:100;background:#fff;padding:12px 20px;transform:translateY(-160%)}
.skip-link:focus{transform:none}
@media(max-width:900px){.mf-burger{display:none !important}.mf-nav-links{display:flex !important;flex-wrap:wrap;gap:12px !important;font-size:14px !important}header.mf-wrap{flex-wrap:wrap}.js .mf-burger{display:inline-flex !important}.js .mf-nav-links{display:none !important}}
@media(prefers-reduced-motion:reduce){*{animation:none !important;transition:none !important;scroll-behavior:auto !important}[data-mf-parallax]{transform:none !important}}

/* Decorative intro: no layout changes, no input capture, hidden without JS. */
.mf-intro[hidden]{display:none !important}
.mf-intro{position:fixed;inset:0;z-index:90;display:flex;align-items:center;justify-content:center;pointer-events:none;animation:mfIntroSafety 2600ms step-end forwards}
.mf-intro::before{content:"";position:absolute;inset:0;background:#F3F6F7;animation:mfIntroVeil 1900ms ease-out forwards}
.mf-intro-lockup{position:relative;display:flex;align-items:center;gap:clamp(12px,3vw,22px);transform-origin:left top}
.mf-intro-mark{position:relative;display:flex;align-items:center;gap:clamp(7px,1.5vw,12px)}
.mf-intro-dot{display:block;width:clamp(13px,3vw,22px);height:clamp(13px,3vw,22px);border-radius:50%;background:#1F2A2C}
.mf-intro-accent{width:clamp(19px,4.2vw,32px);height:clamp(19px,4.2vw,32px);background:#4ACAD5}
.mf-intro-ring{position:absolute;left:50%;top:50%;width:190px;height:190px;margin:-95px;border:1px solid rgba(74,202,213,.5);border-radius:50%}
.mf-intro-ring:nth-child(2){width:260px;height:260px;margin:-130px;border-color:rgba(74,202,213,.28)}
.mf-intro-word{display:flex;font:800 clamp(34px,7vw,76px)/1 "Nunito Sans",sans-serif;letter-spacing:-.03em}
@keyframes mfIntroVeil{0%,55%{opacity:.94}100%{opacity:0}}
@keyframes mfIntroSafety{to{visibility:hidden;opacity:0}}
@media(prefers-reduced-motion:reduce){.mf-intro{display:none !important}}
