/* Michael Films · tema comune nero (stile home corporate) */
html,body{background:#f8f8f8!important}
body{color:#121212}
::selection{background:#121212;color:#f8f8f8}

/* contenitore */
.mfx-w{max-width:1440px;margin:0 auto;padding:0 clamp(16px,4vw,56px)}

/* pulsante */
.mfx-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:56px;padding:0 34px;border-radius:999px;font:700 13px Montserrat,sans-serif;letter-spacing:.12em;text-transform:uppercase;text-decoration:none!important;background:#121212;color:#f8f8f8!important;border:1px solid #121212;transition:transform .25s,background .25s;cursor:pointer}
.mfx-btn:hover{transform:translateY(-2px);background:#121212}
.mfx-btn-s{min-height:40px;padding:0 22px;font-size:11px}

/* NAV */
.mfx-nav{position:sticky;top:0;left:0;right:0;z-index:900;background:#f8f8f8b3;backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);border-bottom:1px solid #12121214;font-family:Montserrat,sans-serif}
.mfx-nav-in{height:64px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.mfx-logo{display:block;flex:none}
.mfx-logo img{height:24px;width:auto;display:block}
.mfx-links{display:flex;gap:32px;align-items:center;margin:0;padding:0;position:static;background:none;transform:none;opacity:1;visibility:visible}
.mfx-links a{text-decoration:none;font:600 13px Montserrat,sans-serif;letter-spacing:.04em;color:#262626!important;transition:color .2s;padding:0;border:0}
.mfx-links a:hover{color:#121212!important}
.mfx-nav-r{display:flex;align-items:center;gap:10px}
.mfx-mm{display:none;position:relative}
.mfx-mm>summary{list-style:none;cursor:pointer;width:44px;height:44px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:6px;border-radius:50%;border:1px solid #12121233;padding:0;margin:0;background:none}
.mfx-mm>summary::-webkit-details-marker{display:none}
.mfx-mm>summary::before,.mfx-mm>summary::after{content:none!important}
.mfx-mm>summary span{display:block;width:18px;height:1.5px;background:#121212;transition:transform .3s}
.mfx-mm[open]>summary span:first-child{transform:translateY(3.75px) rotate(45deg)}
.mfx-mm[open]>summary span:last-child{transform:translateY(-3.75px) rotate(-45deg)}
.mfx-mm-p{position:fixed;left:0;right:0;top:64px;bottom:0;background:#f8f8f8;padding:28px clamp(16px,6vw,40px);display:flex;flex-direction:column;overflow-y:auto}
.mfx-mm-p a{font:800 30px/1.1 Montserrat,sans-serif;letter-spacing:-.03em;color:#121212!important;text-decoration:none;padding:16px 0;border-bottom:1px solid #b1b1b1}
@media(max-width:1000px){.mfx-links{display:none}.mfx-mm{display:block}}
@media(max-width:420px){.mfx-nav-r .mfx-btn-s{padding:0 16px;font-size:10px}}

/* FOOTER */
.mfx-ft{background:#f6f6f6;border-top:1px solid #12121210;padding:60px 0 34px;font:400 13px/1.5 Inter,system-ui,sans-serif;color:#5c5c5c;margin:0}
.mfx-ft a{color:#5c5c5c;text-decoration:none}
.mfx-ft a:hover{color:#121212}
.mfx-ft-top{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-bottom:36px;border-bottom:1px solid #b1b1b1}
.mfx-ft-top img{height:26px;width:auto}
.mfx-ft-top p{margin:0;max-width:600px;color:#5c5c5c}
.mfx-ft-c,.mfx-ft-x{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;padding:36px 0;border-bottom:1px solid #b1b1b1}
.mfx-ft-x{grid-template-columns:repeat(2,1fr)}
.mfx-ft h4{margin:0 0 14px;font:700 12px Montserrat,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#121212}
.mfx-ft-c a,.mfx-ft-x a{display:block;padding:5px 0}
.mfx-ft-z{margin:0;padding:24px 0;border-bottom:1px solid #b1b1b1;color:#8e8e8e;font-size:12px;line-height:1.9}
.mfx-ft-l{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;padding-top:24px;color:#8e8e8e;font-size:12px}
@media(max-width:1000px){.mfx-ft-c{grid-template-columns:1fr 1fr}.mfx-ft-top{flex-direction:column;align-items:flex-start}}
@media(max-width:560px){.mfx-ft-x{grid-template-columns:1fr}}

/* titoli come la home: niente maiuscolo forzato */
main h1,main h2,main h3,.hero h1{text-transform:none!important;letter-spacing:-.035em}

/* pulsanti con colore inline: sempre bianchi come in home */
.btn[style*="background"],.lnav-b,.lnav-b[style*="background"]{background:#121212!important;color:#f8f8f8!important}

/* menu mobile a tutto schermo + sottomenu sotto la barra */
.mfx-mm{position:static}
.mfx-mm-p{position:absolute;top:64px;left:0;right:0;bottom:auto;height:calc(100dvh - 64px)}
.lnav{top:64px!important;z-index:800}

.btn,.mfx-btn{background:#ff9a3d!important;border-color:#ff9a3d!important;color:#f8f8f8!important}
.btn:hover,.mfx-btn:hover{background:#ffb057!important}
.btn-o{background:transparent!important;color:#121212!important;border-color:#12121266!important}
.btn-o:hover{background:#ff9a3d!important;color:#f8f8f8!important;border-color:#ff9a3d!important}
.k{color:#ff9a3d}
::selection{background:#ff9a3d;color:#f8f8f8}

/* ===== footer RIFLEXHO ===== */
html{scroll-behavior:smooth}
.rx-ft{position:relative;overflow:hidden;isolation:isolate;padding-top:0!important;background:radial-gradient(120% 80% at 85% 10%,#efefef 0%,#f6f6f6 55%,#f8f8f8 100%)!important;border-top:0!important}
.rx-ft::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,#ff9a3d00,#ff9a3d 30%,#ffd59a 50%,#ff9a3d 70%,#ff9a3d00);z-index:2}
.rx-ft>.mfx-w{position:relative;z-index:2}
.rx-ft-deco{position:absolute;right:-9vw;top:-6vw;width:min(62vw,760px);aspect-ratio:1;z-index:0;pointer-events:none}
.rx-ft-glow{position:absolute;inset:18%;border-radius:50%;background:radial-gradient(circle,#ff9a3d 0%,#ff9a3d99 35%,#ff9a3d00 70%);filter:blur(60px);opacity:.55;animation:rxpulse 9s ease-in-out infinite}
.rx-ft-rays{position:absolute;inset:-10%;border-radius:50%;background:repeating-conic-gradient(from 0deg,#1212120d 0deg 2deg,#12121200 2deg 12deg);-webkit-mask:radial-gradient(circle,#ffffff 20%,#ffffff00 68%);mask:radial-gradient(circle,#ffffff 20%,#ffffff00 68%);animation:rxspin 120s linear infinite}
.rx-ft-ob,.rx-ft-o{position:absolute;inset:12%;width:76%;height:76%}
.rx-ft-ob{filter:blur(28px);opacity:.5;transform:scale(1.04)}
.rx-ft-o{opacity:.16;animation:rxfloat 14s ease-in-out infinite}
@keyframes rxpulse{0%,100%{opacity:.45;transform:scale(1)}50%{opacity:.7;transform:scale(1.08)}}
@keyframes rxspin{to{transform:rotate(360deg)}}
@keyframes rxfloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-14px)}}
.rx-ft-cta{padding:clamp(80px,11vw,150px) 0 clamp(56px,7vw,90px);text-align:center;border-bottom:1px solid #12121214;margin-bottom:44px}
.rx-ft-k{margin:0 0 18px;font:700 12px Montserrat,sans-serif;letter-spacing:.28em;text-transform:uppercase;color:#ff9a3d}
.rx-ft-h{margin:0;font:800 clamp(40px,6.4vw,92px)/1.02 Montserrat,sans-serif;letter-spacing:-.04em;color:#121212}
.rx-ft-h span{background:linear-gradient(90deg,#ffd59a,#ff9a3d 45%,#ff7a1a);-webkit-background-clip:text;background-clip:text;color:transparent}
.rx-ft-acts{display:flex;flex-direction:column;align-items:center;gap:18px;margin-top:40px}
.rx-ft .rx-ft-btn{min-height:58px;padding:0 38px!important;font-size:13px!important;letter-spacing:.14em;box-shadow:0 0 0 0 #ff9a3d66;animation:rxring 3.2s ease-out infinite}
@keyframes rxring{0%{box-shadow:0 0 0 0 #ff9a3d59}70%,100%{box-shadow:0 0 0 18px #ff9a3d00}}
.rx-ft a.rx-ft-tel{font:700 20px Montserrat,sans-serif;letter-spacing:.02em;color:#121212}
.rx-ft .mfx-ft-top,.rx-ft .mfx-ft-c,.rx-ft .mfx-ft-l{border-color:#12121214}
.rx-ft .mfx-ft-c a{position:relative;width:max-content;max-width:100%;transition:color .25s,transform .25s}
.rx-ft .mfx-ft-c a::after{content:"";position:absolute;left:0;bottom:3px;height:1px;width:100%;background:#ff9a3d;transform:scaleX(0);transform-origin:left;transition:transform .35s cubic-bezier(.2,.7,.2,1)}
.rx-ft .mfx-ft-c a:hover{color:#121212;transform:translateX(3px)}
.rx-ft .mfx-ft-c a:hover::after{transform:scaleX(1)}
.rx-ft h4{color:#ff9a3d!important}
.rx-ft-word{position:relative;z-index:1;text-align:center;font:800 clamp(90px,21vw,330px)/.78 Montserrat,sans-serif;letter-spacing:-.06em;margin:46px 0 -2.2vw;background:linear-gradient(180deg,#1212122e 0%,#12121200 88%);-webkit-background-clip:text;background-clip:text;color:transparent;user-select:none;white-space:nowrap}
.rx-ft-up{position:absolute;right:max(16px,3vw);bottom:28px;z-index:3;width:48px;height:48px;border-radius:50%;display:grid;place-items:center;font:700 18px Montserrat,sans-serif;color:#121212!important;background:#12121212;border:1px solid #12121226;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:background .25s,transform .25s}
.rx-ft-up:hover{background:#ff9a3d;color:#f8f8f8!important;transform:translateY(-3px)}
@media(max-width:900px){.rx-ft-deco{width:110vw;right:-45vw;top:-10vw}.rx-ft-up{bottom:18px}.rx-ft-word{margin-top:30px}}
@media(prefers-reduced-motion:reduce){.rx-ft-glow,.rx-ft-rays,.rx-ft-o,.rx-ft .rx-ft-btn{animation:none!important}html{scroll-behavior:auto}}

/* ===== tema chiaro RIFLEXHO ===== */
html,body{background:#ffffff!important}
body{color:#1d1d1f}
.g,.h1t .g,h1 .g,h2 .g{background:linear-gradient(90deg,#ff9a3d,#f07a14);-webkit-background-clip:text;background-clip:text;color:transparent!important}
.pp-gl button,.ct-f button,.pp-nd button,.seg button{background:#f2f2f4!important;border-color:#e3e3e8!important;color:#1d1d1f!important}
.pp-gl button.on,.ct-f button.on,.pp-nd button.on,.seg button[aria-pressed="true"]{background:#1d1d1f!important;border-color:#1d1d1f!important;color:#fff!important}
.pp-cb i,.pp-m,.sx-mt,.gw-b{background:#ececf0!important}
.pp-cb i.t em,.pp-leg i.t,.pp-m i,.sx-mt i{background:#ff9a3d!important}
.pp-cb i.l em,.pp-leg i.l{background:#1d1d1f!important}
.gw-b i{background:linear-gradient(90deg,#ff9a3d,#f07a14)!important}
.rx-ft-o{opacity:.1!important}.rx-ft-ob{opacity:.18!important}
.cp-y,.cp-w,.cp-n{display:inline-flex!important;align-items:center;justify-content:center;width:26px!important;height:26px!important;line-height:1!important;padding:0!important}
.cp-y{background:#30d15822!important;color:#1f9d47!important}.cp-w{background:#ff9a3d2b!important;color:#e07a10!important}.cp-n{background:#ff453a1f!important;color:#d92d20!important}
.rx-ft-ob circle[stroke]{stroke:#ff9a3d}.rx-ft-ob{opacity:.35!important}.rx-ft-o{opacity:.14!important}
.bhero .hero-shade{background:linear-gradient(90deg,#fffffff2 0%,#ffffffd9 42%,#ffffff33 78%)!important}
@media(max-width:760px){.bhero .hero-shade{background:linear-gradient(180deg,#ffffff4d 0%,#ffffffd9 40%,#fffffff7 100%)!important}}
