/* MHR Pro — brand mark + premium motion (v2.5.0) */
:root{--fx-v:#6C3EF6;--fx-c:#00E5FF;--fx-l:#B69CFF;--fx-mint:#22E39A;--fx-ink:#F0F2FF;--fx-muted:#8B8FA8;--fx-line:rgba(255,255,255,.1);--fx-ease:cubic-bezier(.2,.75,.2,1)}
@property --fx-a{syntax:"<angle>";inherits:false;initial-value:0deg}
@keyframes fx-spin{to{--fx-a:360deg}}
@keyframes fx-rot{to{transform:rotate(360deg)}}

/* ---------- MH Orbit mark ---------- */
.mhr-mark{display:block;overflow:visible}
.mhr-mark__orbit{transform-origin:60px 60px;transform-box:view-box}
.mhr-mark.is-anim .mhr-mark__mh{stroke-dasharray:200;stroke-dashoffset:200;animation:fx-draw 1.5s var(--fx-ease) .15s forwards}
.mhr-mark.is-anim .mhr-mark__orbit{animation:fx-rot 2.6s cubic-bezier(.45,0,.2,1) .2s 1}
a:hover .mhr-mark.is-anim .mhr-mark__orbit{animation:fx-rot 2.2s linear infinite}
.mhr-mark.is-anim .mhr-mark__sheen{animation:fx-sheen 1.6s ease-in-out 1.4s 1}
a:hover .mhr-mark.is-anim .mhr-mark__sheen{animation:fx-sheen 1.6s ease-in-out infinite}
@keyframes fx-draw{to{stroke-dashoffset:0}}
@keyframes fx-sheen{0%,55%{transform:skewX(-18deg) translateX(0)}100%{transform:skewX(-18deg) translateX(170px)}}

.mhr-gnav-icon.has-mark{background:none!important;width:46px!important;height:46px!important;border-radius:0!important;box-shadow:none!important;padding:0!important;overflow:visible!important}
.mhr-gnav-icon.has-mark .mhr-mark{width:46px;height:46px;filter:drop-shadow(0 8px 18px rgba(108,62,246,.45))}
.mhr-ft-mark.has-mark{background:none!important;box-shadow:none!important;width:48px;height:48px}
.mhr-ft-mark.has-mark .mhr-mark{width:48px;height:48px}

/* ---------- header ---------- */
.mhr-gnav{background:rgba(10,11,15,.78)!important;-webkit-backdrop-filter:blur(16px) saturate(140%);backdrop-filter:blur(16px) saturate(140%)}
.mhr-gnav::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:linear-gradient(90deg,transparent,rgba(108,62,246,.75),rgba(0,229,255,.75),transparent);opacity:.55;pointer-events:none}
.mhr-gnav-name .fx-l{display:inline-block;transition:transform .45s var(--fx-ease),color .3s}
.mhr-gnav-logo:hover .mhr-gnav-name .fx-l{transform:translateY(-3px);color:#fff}
@media (min-width:901px){
	.mhr-gnav-links.fx-pilled{position:relative;padding:5px!important;border-radius:999px;border:1px solid var(--fx-line);background:rgba(255,255,255,.025)}
	.mhr-gnav-links.fx-pilled>li{position:relative;z-index:1}
	.mhr-gnav-links.fx-pilled>li>a:not(.mhr-gnav-cta){display:block;height:34px;padding:0 13px!important;border-radius:999px;overflow:hidden;line-height:34px;color:var(--fx-muted)}
	.mhr-gnav-links.fx-pilled>li>a.fx-on,.mhr-gnav-links.fx-pilled>li>a:not(.mhr-gnav-cta):hover{color:#fff!important}
	.fx-roll{display:flex;flex-direction:column;transition:transform .45s var(--fx-ease)}
	.fx-roll>span{display:block;height:34px;line-height:34px}
	.mhr-gnav-links a:hover .fx-roll,.mhr-gnav-links a:focus-visible .fx-roll{transform:translateY(-34px)}
	.fx-pill{position:absolute;z-index:0;top:5px;left:0;height:34px;border-radius:999px;background:linear-gradient(135deg,rgba(108,62,246,.55),rgba(0,229,255,.25));box-shadow:inset 0 0 0 1px rgba(255,255,255,.12),0 8px 24px -10px rgba(108,62,246,.9);transition:transform .5s var(--fx-ease),width .5s var(--fx-ease),opacity .3s;pointer-events:none;opacity:0}
	.fx-pill.is-on{opacity:1}
	.mhr-gnav-links.fx-pilled>li:has(.mhr-gnav-cta){margin-left:6px}
}
.mhr-gnav-cta{position:relative;isolation:isolate;overflow:visible!important;border-radius:999px!important;background:linear-gradient(135deg,var(--fx-v),var(--fx-c))!important;transition:transform .5s var(--fx-ease),box-shadow .3s!important}
.mhr-gnav-cta::before{content:"";position:absolute;inset:-2px;border-radius:inherit;padding:1.5px;background:conic-gradient(from var(--fx-a),var(--fx-v),var(--fx-c),var(--fx-l),var(--fx-v));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;z-index:-1}
.mhr-gnav-cta:hover::before,.mhr-gnav-cta:focus-visible::before{animation:fx-spin 2.4s linear infinite}
.mhr-gnav-cta:hover{box-shadow:0 14px 34px -12px rgba(0,229,255,.7)}

/* ---------- burger + full-screen mobile menu ---------- */
@media (max-width:900px){
	#mhr-ham.fx-burger{width:46px!important;height:46px!important;padding:0!important;border-radius:14px;border:1px solid rgba(255,255,255,.14)!important;background:rgba(255,255,255,.04)!important;display:grid!important;place-items:center;transition:background .35s,border-color .35s}
	#mhr-ham.fx-burger span{position:absolute;left:13px;right:13px;width:auto!important;height:2px;margin:0!important;background:var(--fx-ink)!important;transition:transform .45s var(--fx-ease),opacity .3s,top .45s var(--fx-ease),right .45s var(--fx-ease)!important}
	#mhr-ham.fx-burger span:nth-child(1){top:16px}#mhr-ham.fx-burger span:nth-child(2){top:22px;right:19px}#mhr-ham.fx-burger span:nth-child(3){top:28px;right:16px}
	body.fx-mm-open #mhr-ham.fx-burger{background:linear-gradient(135deg,var(--fx-v),var(--fx-c))!important;border-color:transparent!important}
	body.fx-mm-open #mhr-ham.fx-burger span:nth-child(1){top:22px;transform:rotate(45deg)}
	body.fx-mm-open #mhr-ham.fx-burger span:nth-child(2){opacity:0;transform:translateX(10px)}
	body.fx-mm-open #mhr-ham.fx-burger span:nth-child(3){top:22px;right:13px;transform:rotate(-45deg)}
	body.fx-mm-ready .mhr-gnav-links.mhr-open{display:none!important}
}
body.fx-mm-open{overflow:hidden}
.fx-mm{position:fixed;left:0;right:0;bottom:0;top:var(--fx-top,72px);z-index:9998;display:flex;flex-direction:column;gap:14px;overflow-y:auto;overscroll-behavior:contain;
	padding:22px max(20px,env(safe-area-inset-right,0px)) calc(22px + env(safe-area-inset-bottom,0px)) max(20px,env(safe-area-inset-left,0px));
	background:radial-gradient(120% 55% at 100% 0%,rgba(108,62,246,.32),transparent 60%),radial-gradient(90% 45% at 0% 100%,rgba(0,229,255,.16),transparent 60%),linear-gradient(180deg,#0E0F18,#07080D);
	clip-path:circle(0% at calc(100% - 40px) -36px);visibility:hidden;transition:clip-path .75s var(--fx-ease),visibility 0s .75s;font-family:Inter,system-ui,sans-serif}
body.fx-mm-open .fx-mm{clip-path:circle(160% at calc(100% - 40px) -36px);visibility:visible;transition:clip-path .75s var(--fx-ease),visibility 0s}
.fx-mm__rings{position:absolute;right:-160px;top:-80px;width:360px;height:360px;opacity:.55;pointer-events:none}
body.fx-mm-open .fx-mm__rings{animation:fx-rot 60s linear infinite}
.fx-mm__rings circle{fill:none;stroke:rgba(182,156,255,.35);stroke-width:.8}.fx-mm__rings .d{fill:var(--fx-c);stroke:none}
.fx-mm__status{position:relative;display:flex;align-items:center;gap:8px;font-size:11.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--fx-mint);opacity:0;transform:translateY(-6px);transition:all .5s var(--fx-ease) .15s}
.fx-mm__status i{width:7px;height:7px;border-radius:50%;background:var(--fx-mint)}
body.fx-mm-open .fx-mm__status i{animation:fx-ping 1.8s infinite}
@keyframes fx-ping{0%{box-shadow:0 0 0 0 rgba(34,227,154,.6)}70%,100%{box-shadow:0 0 0 8px rgba(34,227,154,0)}}
body.fx-mm-open .fx-mm__status{opacity:1;transform:none}
.fx-mm ul{position:relative;list-style:none;margin:0;padding:0}
.fx-mm li{margin:0;opacity:0;transform:translateX(26px);transition:opacity .45s,transform .6s var(--fx-ease)}
body.fx-mm-open .fx-mm li{opacity:1;transform:none}
.fx-mm li a{display:flex;align-items:center;gap:14px;padding:12px 0;font:600 22px/1.2 "Space Grotesk",Inter,sans-serif;letter-spacing:-.02em;color:var(--fx-ink)!important;text-decoration:none!important;border-bottom:1px solid;border-image:linear-gradient(90deg,rgba(108,62,246,.45),rgba(255,255,255,.05) 70%,transparent) 1}
.fx-mm li a svg{flex:none;width:21px;height:21px;fill:none;stroke:url(#fx-ig);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.fx-mm li a .go{margin-left:auto;width:32px;height:32px;border-radius:50%;border:1px solid rgba(255,255,255,.14);display:grid;place-items:center;font:500 15px Inter,sans-serif;color:var(--fx-muted);transition:all .3s}
.fx-mm li a:hover .go,.fx-mm li a.fx-on .go{background:linear-gradient(135deg,var(--fx-v),var(--fx-c));color:#fff;border-color:transparent;transform:translateX(3px)}
.fx-mm__quick{position:relative;margin-top:auto;padding-top:10px;display:grid;grid-template-columns:1fr 1fr;gap:8px;opacity:0;transform:translateY(12px);transition:all .6s var(--fx-ease) .45s}
body.fx-mm-open .fx-mm__quick{opacity:1;transform:none}
.fx-mm__quick a{display:flex;align-items:center;justify-content:center;min-height:48px;border-radius:14px;border:1px solid rgba(255,255,255,.14);font-size:14px;font-weight:600;color:var(--fx-ink)!important;background:rgba(255,255,255,.04);text-decoration:none!important}
.fx-mm__quick a.main{grid-column:1/-1;border:0;background:linear-gradient(135deg,var(--fx-v),var(--fx-c));color:#fff!important;box-shadow:0 14px 30px -14px rgba(108,62,246,.9)}
.fx-mm__quick a:only-child,.fx-mm__quick a.main+a:last-child{grid-column:1/-1}
@media (min-width:901px){.fx-mm{display:none}}

/* ---------- images ---------- */
.fx-rv{clip-path:inset(0 0 100% 0);transition:clip-path 1.1s var(--fx-ease)}
.fx-rv.is-in{clip-path:inset(0 0 0 0)}
.fx-tilt{transition:transform .5s var(--fx-ease),box-shadow .4s;transform-style:preserve-3d;will-change:transform}
.fx-tilt:hover{box-shadow:0 30px 60px -30px rgba(108,62,246,.65)}
.fx-spot{position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:3;background:radial-gradient(260px circle at var(--mx,50%) var(--my,50%),rgba(255,255,255,.14),transparent 60%);opacity:0;transition:opacity .3s;mix-blend-mode:overlay}
.fx-tilt:hover>.fx-spot{opacity:1}

/* ---------- icons ---------- */
.fx-ic{position:relative;isolation:isolate}
.fx-ic::after{content:"";position:absolute;inset:-3px;border-radius:inherit;padding:1.5px;background:conic-gradient(from var(--fx-a),transparent 0 60%,var(--fx-c) 78%,var(--fx-v) 90%,transparent);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity .3s;pointer-events:none}
.fx-ic-host:hover .fx-ic::after{opacity:1;animation:fx-spin 2.6s linear infinite}
.fx-ic>*{transition:transform .5s var(--fx-ease)}
.fx-ic-host:hover .fx-ic>*{transform:translateY(-2px) scale(1.08)}
.fx-ic-host:hover .fx-ic svg [stroke]:not([stroke="none"]),.fx-ic-host:hover .fx-ic svg path{stroke-dasharray:90;animation:fx-redraw .9s var(--fx-ease)}
@keyframes fx-redraw{from{stroke-dashoffset:90}to{stroke-dashoffset:0}}

/* ---------- signal cursor ---------- */
.mhr-cur{position:fixed;inset:0;pointer-events:none;z-index:2147483000;display:none}
html.fx-cur .mhr-cur{display:block}
html.fx-cur,html.fx-cur body,html.fx-cur a,html.fx-cur button,html.fx-cur [role=button],html.fx-cur summary,html.fx-cur label{cursor:none!important}
html.fx-cur input,html.fx-cur textarea,html.fx-cur select,html.fx-cur [contenteditable]{cursor:auto!important}
.mhr-cur__dot{position:absolute;left:0;top:0;width:6px;height:6px;margin:-3px 0 0 -3px;border-radius:50%;background:var(--fx-c);box-shadow:0 0 12px var(--fx-c);transition:opacity .25s}
.mhr-cur__ring{position:absolute;left:0;top:0;width:38px;height:38px;margin:-19px 0 0 -19px;transition:width .45s var(--fx-ease),height .45s var(--fx-ease),margin .45s var(--fx-ease),opacity .3s}
.mhr-cur__arc,.mhr-cur__fill{position:absolute;inset:0;border-radius:50%;transition:transform .3s var(--fx-ease),opacity .35s}
.mhr-cur__arc{animation-play-state:paused;padding:1.5px;background:conic-gradient(from var(--fx-a),var(--fx-v),var(--fx-c) 35%,transparent 55%,var(--fx-v) 85%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:fx-spin 2.4s linear infinite}
.mhr-cur__fill{background:radial-gradient(circle,rgba(0,229,255,.18),rgba(108,62,246,.12) 60%,transparent 72%);opacity:0}
.mhr-cur__tick{position:absolute;left:50%;top:-5px;width:1.5px;height:7px;margin-left:-.75px;background:var(--fx-c);border-radius:1px}
.mhr-cur__lbl{position:absolute;inset:0;display:grid;place-items:center;font:700 10.5px Inter,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#fff;opacity:0;transform:scale(.6);transition:all .35s var(--fx-ease)}
.mhr-cur.is-link .mhr-cur__ring{width:70px;height:70px;margin:-35px 0 0 -35px}
.mhr-cur.is-link .mhr-cur__fill,.mhr-cur.is-link .mhr-cur__lbl,.mhr-cur.is-img .mhr-cur__lbl{opacity:1;transform:none}
.mhr-cur.is-link .mhr-cur__dot,.mhr-cur.is-img .mhr-cur__dot{opacity:0}
.mhr-cur.is-img .mhr-cur__ring{width:104px;height:104px;margin:-52px 0 0 -52px}
.mhr-cur.is-img .mhr-cur__fill{opacity:1;background:radial-gradient(circle,rgba(10,11,15,.12),rgba(10,11,15,.5) 70%)}
.mhr-cur.is-text .mhr-cur__ring{opacity:0}
.mhr-cur.is-down .mhr-cur__arc,.mhr-cur.is-down .mhr-cur__fill{transform:scale(.82)}
.mhr-cur.is-out{opacity:0}
.mhr-cur__rip{position:absolute;width:12px;height:12px;margin:-6px 0 0 -6px;border-radius:50%;border:1.5px solid var(--fx-c);animation:fx-rip .7s var(--fx-ease) forwards}
@keyframes fx-rip{to{transform:scale(7);opacity:0}}
.mhr-cur__tr{position:absolute;width:4px;height:4px;margin:-2px 0 0 -2px;border-radius:50%;background:var(--fx-l);opacity:.7;animation:fx-tr .6s linear forwards}
@keyframes fx-tr{to{opacity:0;transform:scale(.2)}}

@media (prefers-reduced-motion:reduce){
	.mhr-mark.is-anim .mhr-mark__mh,.mhr-mark.is-anim .mhr-mark__orbit,.mhr-mark.is-anim .mhr-mark__sheen,.mhr-gnav-cta::before,.fx-mm__rings,.fx-ic::after{animation:none!important;stroke-dashoffset:0}
	.fx-rv{clip-path:none!important;transition:none}.fx-tilt{transform:none!important}
	.fx-mm,.fx-mm li,.fx-mm__quick,.fx-mm__status,.fx-roll,.fx-pill{transition:none!important}
	.mhr-cur{display:none!important}
}
@media print{.mhr-cur,.fx-mm{display:none!important}}
@media (max-width:900px){.fx-pill{display:none!important}}
.mhr-gnav-links.fx-pilled>li.fx-pill{position:absolute;margin:0;padding:0;list-style:none;animation:none!important;transform:none!important;transition:left .5s var(--fx-ease),width .5s var(--fx-ease),opacity .3s!important}
body.fx-mm-open .mhr-chat-launch,body.fx-mm-open #mhr-btt,body.fx-mm-open .lr2-stick{opacity:0!important;pointer-events:none!important;transition:opacity .2s}

html.fx-cur .mhr-cur__arc{animation-play-state:running}

/* ===== 2.5.1: site-wide image + icon design, phones, header, dock ===== */
/* images: gradient frame glows in, light sweeps across once in view and on hover */
.fx-media{isolation:isolate}
.fx-media::after{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;pointer-events:none;z-index:4;background:linear-gradient(135deg,rgba(108,62,246,.75),rgba(0,229,255,.55) 45%,rgba(255,255,255,.06) 70%,rgba(108,62,246,.5));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity .8s ease}
.fx-media.is-in::after{opacity:.55}
.fx-media:hover::after{opacity:1}
.fx-shine{position:absolute;inset:0;border-radius:inherit;overflow:hidden;pointer-events:none;z-index:3}
.fx-shine::before{content:"";position:absolute;top:-20%;bottom:-20%;left:-60%;width:45%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.22),transparent);transform:skewX(-18deg) translateX(0);opacity:0}
.fx-media.is-in .fx-shine::before{animation:fx-shine 1.4s var(--fx-ease) .2s 1}
.fx-media:hover .fx-shine::before{animation:fx-shine 1.2s var(--fx-ease) 1}
@keyframes fx-shine{0%{opacity:1;transform:skewX(-18deg) translateX(0)}100%{opacity:1;transform:skewX(-18deg) translateX(420%)}}
.fx-zoom{transition:transform 1.2s var(--fx-ease)!important}
.fx-media:hover .fx-zoom{transform:scale(1.06)}
.fx-media:active{transform:scale(.985);transition:transform .2s}

/* icons: one scan + redraw when they scroll into view (phones too); loops while hovered on desktop */
.fx-ic.is-in::after{opacity:1;animation:fx-spin 1.8s var(--fx-ease) 1 forwards,fx-fadeout 2.2s ease 1 forwards}
@keyframes fx-fadeout{0%,70%{opacity:1}100%{opacity:0}}
.fx-ic-host:hover .fx-ic::after{opacity:1!important;animation:fx-spin 2.6s linear infinite!important}
.fx-ic.is-in svg path,.fx-ic.is-in svg circle,.fx-ic.is-in svg rect,.fx-ic.is-in svg line,.fx-ic.is-in svg polyline{stroke-dasharray:90;animation:fx-redraw 1.1s var(--fx-ease) 1}
.fx-ic.is-in>*{animation:fx-pop .6s var(--fx-ease) 1}
@keyframes fx-pop{0%{transform:scale(.6);opacity:.2}100%{transform:none;opacity:1}}

/* tap ripple */
.fx-tap-host{overflow:hidden}
.fx-tap{position:absolute;border-radius:50%;pointer-events:none;z-index:5;background:radial-gradient(circle,rgba(0,229,255,.35),rgba(108,62,246,.18) 45%,transparent 70%);transform:scale(0);animation:fx-tapk .65s var(--fx-ease) forwards}
@keyframes fx-tapk{to{transform:scale(1);opacity:0}}

/* header: glassier when scrolled, slides away while reading down */
.mhr-gnav{transition:transform .45s var(--fx-ease),background .3s,box-shadow .3s}
.mhr-gnav.fx-compact{background:rgba(10,11,15,.9)!important;box-shadow:0 18px 40px -24px rgba(0,0,0,.9)}
.mhr-gnav.fx-hide{transform:translateY(-110%)}

/* phones: floating action dock */
.fx-dock{display:none}
@media (max-width:900px){
	.fx-dock{position:fixed;z-index:9990;left:50%;bottom:calc(14px + env(safe-area-inset-bottom,0px));display:flex;align-items:stretch;gap:4px;padding:6px;border-radius:22px;
		background:rgba(14,15,24,.82);-webkit-backdrop-filter:blur(18px) saturate(150%);backdrop-filter:blur(18px) saturate(150%);border:1px solid rgba(255,255,255,.12);
		box-shadow:0 24px 50px -20px rgba(0,0,0,.9),0 0 0 1px rgba(108,62,246,.18) inset;transform:translate(-50%,140%);opacity:0;transition:transform .55s var(--fx-ease),opacity .35s;font-family:Inter,system-ui,sans-serif}
	body.fx-dock-on .fx-dock{transform:translate(-50%,0);opacity:1}
	body.fx-mm-open .fx-dock{transform:translate(-50%,140%);opacity:0}
	.fx-dock a{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-width:78px;min-height:54px;padding:6px 10px;border-radius:16px;color:#D6D8EA!important;text-decoration:none!important;font-size:11.5px;font-weight:600}
	.fx-dock a svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
	.fx-dock a.main{color:#fff!important;background:linear-gradient(135deg,var(--fx-v),var(--fx-c));box-shadow:0 10px 24px -10px rgba(108,62,246,.9)}
	.fx-dock a:active{transform:scale(.95)}
	body.fx-dock-on .mhr-chat-launch{bottom:calc(92px + env(safe-area-inset-bottom,0px))!important;transition:bottom .4s var(--fx-ease)}
	body.fx-dock-on #mhr-btt{bottom:calc(160px + env(safe-area-inset-bottom,0px))!important;transition:bottom .4s var(--fx-ease)}
	/* premium touches on phones */
	.mhr-gnav-logo:active .mhr-mark{transform:scale(.94);transition:transform .2s}
}
@media (prefers-reduced-motion:reduce){.fx-shine,.fx-tap{display:none}.fx-ic.is-in::after,.fx-ic.is-in>*,.fx-ic.is-in svg *{animation:none!important}.mhr-gnav.fx-hide{transform:none}.fx-dock{transition:none}}
.fx-ic-host:active{transform:scale(.985);transition:transform .2s}
@media (max-width:900px){.fx-dock a{min-width:86px;text-align:center}.fx-dock a span{white-space:nowrap;line-height:1.1}}

/* ===== 2.5.2: footer ===== */
.fx-ft-rv{opacity:0;transform:translateY(26px);transition:opacity .8s var(--fx-ease),transform .9s var(--fx-ease);transition-delay:calc(var(--fi,0) * 90ms)}
.fx-ft-rv.is-in{opacity:1;transform:none}
.mhr-ft-col h3::before{transition:width .7s var(--fx-ease) .2s}
.mhr-ft-col.fx-ft-rv:not(.is-in) h3::before{width:0!important}
.mhr-ft-col:hover h3::before{width:30px}
.mhr-ft-col a:hover{background:linear-gradient(90deg,#fff,#8FE9FF);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.mhr-ft-col a:hover span{-webkit-text-fill-color:var(--fx-c)}
.fx-ft-v{position:relative;overflow:hidden;transition:transform .5s var(--fx-ease),border-color .3s,box-shadow .4s}
.fx-ft-v:hover{border-color:rgba(0,229,255,.35)!important;box-shadow:0 26px 50px -28px rgba(108,62,246,.7)}
.fx-ft-v::before{content:"";position:absolute;top:-30%;bottom:-30%;left:-60%;width:40%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.12),transparent);transform:skewX(-18deg);opacity:0;pointer-events:none}
.fx-ft-v.is-in::before,.fx-ft-v:hover::before{animation:fx-shine 1.4s var(--fx-ease) .15s 1}
.fx-ft-v:hover>.fx-spot{opacity:1}
.mhr-ft-vmark.fx-ic{border-radius:14px}
.mhr-ft-vmark.is-in{animation:fx-pop .6s var(--fx-ease) 1}
.fx-ft-v:hover .mhr-ft-vmark{transform:rotate(-6deg) scale(1.06);transition:transform .4s var(--fx-ease)}
.mhr-ft-stats span{transition:border-color .3s,background .3s,transform .3s}
.mhr-ft-stats span:hover{border-color:rgba(0,229,255,.4);background:rgba(0,229,255,.06);transform:translateY(-2px)}
.mhr-ft-social a{position:relative}
.mhr-ft-social.is-in a{animation:fx-pop .55s var(--fx-ease) both}
.mhr-ft-social.is-in a:nth-child(2){animation-delay:.07s}.mhr-ft-social.is-in a:nth-child(3){animation-delay:.14s}.mhr-ft-social.is-in a:nth-child(4){animation-delay:.21s}.mhr-ft-social.is-in a:nth-child(5){animation-delay:.28s}.mhr-ft-social.is-in a:nth-child(n+6){animation-delay:.35s}
.mhr-ft-social a::after{content:"";position:absolute;inset:-3px;border-radius:14px;padding:1.5px;background:conic-gradient(from var(--fx-a),var(--fx-v),var(--fx-c),transparent 60%,var(--fx-v));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity .3s;pointer-events:none}
.mhr-ft-social a:hover::after{opacity:1;animation:fx-spin 2s linear infinite}
.mhr-ft-logo .mhr-mark{transition:transform .4s var(--fx-ease)}
.mhr-ft-logo:hover .mhr-mark{transform:rotate(-6deg) scale(1.05)}
.mhr-ft-logo:hover .mhr-mark__orbit{animation:fx-rot 2.2s linear infinite}
.mhr-ft-word{transition:filter .4s}
.mhr-ft-word.is-in{animation:fx-word 1.6s var(--fx-ease) 1}
@keyframes fx-word{0%{letter-spacing:.02em;opacity:.3}100%{letter-spacing:-.05em;opacity:1}}
.mhr-ft-word.is-lit{background:radial-gradient(240px circle at var(--wx,50%) var(--wy,50%),rgba(0,229,255,.55),rgba(108,62,246,.35) 40%,transparent 70%),linear-gradient(180deg,rgba(139,102,255,.16),rgba(0,229,255,0) 85%)!important;-webkit-background-clip:text!important;background-clip:text!important}
.mhr-ft-top{position:relative;transition:transform .3s var(--fx-ease)!important}
.mhr-ft-top:hover{transform:translateY(-4px)}
@media (prefers-reduced-motion:reduce){.fx-ft-rv{opacity:1!important;transform:none!important;transition:none}.mhr-ft-word.is-in,.mhr-ft-social.is-in a,.mhr-ft-vmark.is-in{animation:none}}

/* ===== 2.5.3: phone header fit + chat safety ===== */
@media (max-width:900px){
	.mhr-gnav.fx-hide{transform:none}
}
@media (max-width:420px){.mhr-gnav-name{font-size:14.5px!important}.mhr-gnav-sub{font-size:11px!important}}
body:has(#mhr-chat-launch.is-open) .fx-dock,body:has(#mhr-chat-launch.is-open) #mhr-btt{opacity:0!important;pointer-events:none!important}
.mhr-chat-ib svg,.mhr-chat-send svg{color:inherit;stroke:currentColor;forced-color-adjust:none}
