/* requestinfo.php (versione visitatori) — nuova grafica 30 sett 2026.
   Confinata sotto #flexri: non tocca flex.css né la versione per utenti loggati. */
html{scroll-behavior:smooth}
html,body{overflow-x:clip!important}
#flexri p{margin-bottom:1em}
#flexri{--navy:#14243e;--navy2:#1c3559;--blue:#2655ad;--red:#ae2f43;--yellow:#ffd35b;--ink:#182946;--muted:#5b6b80;--line:#dce4ec;--pale:#f3f6fa;scroll-behavior:smooth}
#flexri *{box-sizing:border-box}
#flexri{margin:0;background:#fff;color:var(--ink);font:16px/1.6 Arial,Helvetica,sans-serif}
#flexri a{color:inherit;text-decoration:none}
#flexri h1,#flexri h2,#flexri h3,#flexri p{margin-top:0}
#flexri h1,#flexri h2,#flexri h3{line-height:1.13;letter-spacing:-.035em}
#flexri h1{font-size:clamp(42px,5vw,70px)}
#flexri h2{font-size:clamp(31px,3.6vw,46px)}
#flexri h3{font-size:clamp(23px,2.2vw,29px)}
#flexri .wrap{max-width:1190px;margin:auto;padding:0 28px}
#flexri .eyebrow{font-size:13px;letter-spacing:.17em;font-weight:900;text-transform:uppercase;color:var(--red);margin:0 0 17px}
#flexri .eyebrow.gold{color:var(--yellow)}
#flexri .site-header{background:var(--navy);border-bottom:3px solid #e6a452;color:#fff;position:sticky;top:0;z-index:30}
#flexri .nav{min-height:80px;display:flex;align-items:center;gap:24px}
#flexri .brand{display:flex;align-items:center;gap:18px;line-height:1}
#flexri .brand-flex{font-size:33px;letter-spacing:-.09em;font-weight:900;white-space:nowrap}
#flexri .brand-flex small{font-size:7px;letter-spacing:.42em;color:var(--yellow);display:block;text-align:center;margin-top:3px}
#flexri .brand-divider{height:39px;width:1px;background:#687890}
#flexri .brand-bsg{font-size:10px;letter-spacing:.14em;color:#dce4f0;font-weight:700;line-height:1.45}
#flexri .nav-links{display:flex;gap:26px;margin-left:auto;font-size:14px;font-weight:700;color:#d5dfea;white-space:nowrap}
#flexri .nav-links .current{color:var(--yellow)}
#flexri .nav-links a:hover,#flexri .account-link:hover{color:var(--yellow)}
#flexri .btn{display:inline-flex;justify-content:center;align-items:center;min-height:51px;border-radius:9px;padding:12px 22px;font-size:14px;font-weight:800;line-height:1.2;transition:transform .2s,background .2s;cursor:pointer;text-align:center}
#flexri .btn:hover{transform:translateY(-2px)}
#flexri .btn-red{background:var(--red);color:#fff}
#flexri .btn-red:hover{background:#94273a}
#flexri .btn-yellow{background:var(--yellow);color:var(--navy)}
#flexri .btn-outline{border:1px solid #8fa4c2;color:#fff}
#flexri .account-link{font-size:13px;font-weight:800;white-space:nowrap;color:#fff;border-bottom:1px solid #dce4f0;padding:5px 0}
#flexri .account-short{display:none}
#flexri :focus-visible{outline:3px solid var(--yellow);outline-offset:3px}
#flexri .footer{background:#0f1c30;color:#bcc9d8;padding:35px 0;font-size:13px}
#flexri .footer-row{display:flex;justify-content:space-between;gap:20px}
@media(max-width:1000px){#flexri .nav-links{display:none}#flexri .nav .btn{margin-left:auto}}
@media(max-width:800px){#flexri .account-long{display:none}#flexri .account-short{display:inline}}
@media(max-width:600px){#flexri .wrap{padding:0 21px}#flexri .nav{min-height:70px;gap:10px}#flexri .brand{gap:10px}#flexri .brand-flex{font-size:25px}#flexri .brand-divider{height:30px}#flexri .brand-bsg{font-size:8px}#flexri .nav .btn{font-size:12px;min-height:42px;padding:9px 10px;max-width:132px}#flexri .account-link{font-size:12px}#flexri .footer-row{display:block}}
#flexri .footer{background:#0f1c30;color:#bcc9d8;padding:35px 0;font-size:13px}
#flexri .footer-row{display:flex;justify-content:space-between;gap:20px}
#flexri .footer-company{padding:38px 0;text-align:center}
#flexri .footer-company .footer-brand{font-size:16px;font-weight:800;color:#fff;margin-bottom:18px}
#flexri .footer-company .footer-details{font-size:14px;line-height:1.7;margin:7px 0}
#flexri .footer-company span{display:inline-block;margin:0 9px;color:#7c8da6}
#flexri .footer-company a{text-decoration:underline;text-underline-offset:3px}
#flexri .footer-company .footer-legal{font-size:14px;margin:22px 0 0;color:#dce4f0}
#flexri .footer-company{padding:28px 0}
#flexri .footer-company .footer-brand{margin-bottom:10px}
#flexri .footer-company .footer-details{font-size:13px;margin:6px 0}
#flexri .footer-company span{margin:0 5px}
@media(max-width:600px){#flexri .footer-company .footer-details{line-height:1.9}#flexri .footer-company .footer-brand{font-size:15px}}

/* ── Pagina requestinfo (visitatori): hero + modulo ── */
#flexri{background:#fff}
#flexri .ri-hero{background:linear-gradient(120deg,var(--navy),#203c64);color:#fff;text-align:center;padding:66px 0 118px}
#flexri .ri-hero h1{font-size:clamp(38px,4.6vw,58px);margin:0 0 20px}
#flexri .ri-hero h1 span{color:var(--yellow)}
#flexri .ri-hero .lead{font-size:19px;line-height:1.6;color:#e2eaf5;max-width:640px;margin:0 auto}
#flexri .ri-wrap,#flexri .ri-wrap--pub{max-width:none;margin:0;padding:0 28px 96px}
#flexri .ri-form-section{max-width:660px;margin:-72px auto 0}
#flexri .ri-card,#flexri .ri-card--pub{background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:0 24px 60px #14243e26;padding:38px 40px}
#flexri .ri-form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
#flexri .ri-form-group{display:flex;flex-direction:column}
#flexri .ri-label{display:block;font-size:14px;font-weight:800;color:var(--navy);text-transform:none;letter-spacing:0;margin-bottom:7px}
#flexri .ri-field{width:100%;padding:12px 14px;border:1px solid #b7c4d4;border-radius:8px;background:#fff;color:var(--ink);font:inherit;font-size:15px;outline:none;transition:border-color .2s,box-shadow .2s}
#flexri .ri-field:focus{border-color:var(--blue);box-shadow:0 0 0 3px #2655ad26}
#flexri .ri-textarea{min-height:140px;resize:vertical}
#flexri .ri-btn{display:flex;justify-content:center;align-items:center;width:100%;min-height:51px;margin-top:26px;background:var(--red);color:#fff;border:0;border-radius:9px;padding:12px 22px;font:inherit;font-size:15px;font-weight:800;cursor:pointer;transition:background .2s}
#flexri .ri-btn:hover{background:#932338}
#flexri .ri-btn:disabled{opacity:.7;cursor:default}
#flexri .ri-error{background:#fdecef;border:1px solid #ecb3bd;color:#86263a;border-radius:9px;padding:13px 15px;font-size:14px;margin-bottom:20px;line-height:1.5}
@media(max-width:800px){#flexri .ri-card,#flexri .ri-card--pub{padding:28px 24px}#flexri .ri-hero{padding:52px 0 104px}#flexri .ri-hero .lead{font-size:17px}}
@media(max-width:560px){#flexri .ri-form-row{grid-template-columns:1fr}}
#flexri .ri-hero p{margin-bottom:0}#flexri .ri-hero .eyebrow{margin-bottom:17px}
.flex-legal-bar{display:none!important}
/* Campo trappola anti-bot: deve restare invisibile e non raggiungibile da tastiera */
#flexri .ri-hp{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}

/* ── Conferma invio (requestinfo_send.php, visitatori) ── */
#flexri .ri-done{background:#fff;padding:96px 28px 120px;text-align:center}
#flexri .ri-done-box{max-width:620px;margin:0 auto}
#flexri .ri-done-icon{width:78px;height:78px;border-radius:50%;display:grid;place-items:center;margin:0 auto 28px;font-size:38px;font-weight:900;line-height:1}
#flexri .ri-done-icon.ok{background:#e4f3ea;color:#1f7a43}
#flexri .ri-done-icon.ko{background:#fdecef;color:var(--red)}
#flexri .ri-done h1{font-size:clamp(36px,4.4vw,54px);margin:0 0 22px;color:var(--navy)}
#flexri .ri-done h1 span{color:var(--red)}
#flexri .ri-done p{font-size:18px;color:var(--muted);margin-bottom:14px}
#flexri .ri-done p strong{color:var(--ink)}
#flexri .ri-done .btn{margin-top:20px}
