.mod-page { padding-top: 34px; padding-bottom: 54px; }
.mod-hero {
  position:relative; overflow:hidden; margin-bottom:18px; padding:clamp(24px,4vw,46px);
  border:1px solid rgba(234,255,66,.18); border-radius:26px;
  background:
    radial-gradient(circle at 83% 18%, rgba(234,255,66,.12), transparent 32%),
    linear-gradient(135deg,#101720 0%,#0b1119 58%,#11120e 100%);
}
.mod-hero:after { content:""; position:absolute; width:280px; height:280px; right:-100px; bottom:-150px; border:1px solid rgba(234,255,66,.12); border-radius:50%; box-shadow:0 0 0 35px rgba(234,255,66,.025),0 0 0 70px rgba(234,255,66,.015); }
.mod-kicker { display:inline-flex; align-items:center; gap:7px; color:var(--lime); font-size:10px; font-weight:950; letter-spacing:.13em; text-transform:uppercase; }
.mod-kicker i { width:7px; height:7px; border-radius:50%; background:var(--lime); box-shadow:0 0 14px var(--lime); }
.mod-hero h1 { position:relative; z-index:1; max-width:850px; margin:12px 0 12px; font-size:clamp(40px,7vw,78px); line-height:.92; letter-spacing:-.065em; }
.mod-hero > p { position:relative; z-index:1; max-width:760px; margin:0; color:#9aa8b9; font-size:clamp(14px,1.8vw,18px); line-height:1.65; }
.mod-principles { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin-top:22px; position:relative; z-index:1; }
.mod-principle { padding:14px; border:1px solid rgba(255,255,255,.075); border-radius:15px; background:rgba(5,10,16,.58); }
.mod-principle strong { display:block; margin-bottom:5px; color:#fff; font-size:13px; }
.mod-principle span { color:#8391a4; font-size:11px; line-height:1.45; }
.mod-layout { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr); gap:16px; align-items:start; }
.mod-form-card,.mod-side-card { border:1px solid #223044; border-radius:22px; background:#0d141d; }
.mod-form-card { padding:clamp(18px,3vw,30px); }
.mod-form-head { margin-bottom:20px; }
.mod-form-head span { color:var(--lime); font-size:9px; font-weight:950; letter-spacing:.12em; text-transform:uppercase; }
.mod-form-head h2 { margin:5px 0 6px; font-size:27px; }
.mod-form-head p { margin:0; color:#8290a2; font-size:12px; line-height:1.55; }
.mod-form { display:grid; gap:15px; }
.mod-row-2 { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.mod-field label { display:block; margin-bottom:6px; color:#c6d0dc; font-size:11px; font-weight:850; }
.mod-field small { display:block; margin-top:5px; color:#718095; font-size:9px; line-height:1.4; }
.mod-field input,.mod-field textarea {
  width:100%; box-sizing:border-box; border:1px solid #27364a; border-radius:12px; outline:0;
  background:#080e15; color:#f4f7fb; padding:12px 13px; font:inherit; transition:border-color .15s ease,box-shadow .15s ease;
}
.mod-field textarea { min-height:112px; resize:vertical; line-height:1.5; }
.mod-field input:focus,.mod-field textarea:focus { border-color:rgba(234,255,66,.52); box-shadow:0 0 0 3px rgba(234,255,66,.055); }
.platform-title { margin:2px 0 8px; color:#c6d0dc; font-size:11px; font-weight:850; }
.platform-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:9px; }
.platform-choice { position:relative; display:block; cursor:pointer; }
.platform-choice input { position:absolute; opacity:0; pointer-events:none; }
.platform-card { min-height:86px; display:flex; flex-direction:column; justify-content:center; gap:4px; padding:13px; border:1px solid #263448; border-radius:14px; background:#09111a; transition:.16s ease; }
.platform-card b { color:#f3f6fa; font-size:14px; }
.platform-card span { color:#7e8da0; font-size:9px; }
.platform-choice input:checked + .platform-card { border-color:var(--lime); background:linear-gradient(145deg,rgba(234,255,66,.10),#09111a 58%); box-shadow:inset 0 0 0 1px rgba(234,255,66,.09); }
.mod-checks { display:grid; gap:9px; }
.mod-check { display:flex; gap:10px; align-items:flex-start; padding:12px; border:1px solid #202d3e; border-radius:13px; background:#091019; color:#aab6c5; font-size:10px; line-height:1.5; }
.mod-check input { flex:0 0 auto; margin-top:2px; accent-color:#eaff42; }
.mod-check strong { color:#f0f4f8; }
.mod-submit { display:flex; align-items:center; justify-content:center; gap:8px; min-height:48px; border:0; border-radius:13px; background:var(--lime); color:#090d0b; font-weight:950; cursor:pointer; }
.mod-submit:disabled { opacity:.5; cursor:wait; }
.mod-status { display:none; padding:13px; border-radius:12px; font-size:11px; line-height:1.5; }
.mod-status.show { display:block; }
.mod-status.ok { border:1px solid rgba(103,233,157,.25); background:rgba(103,233,157,.07); color:#a9efc5; }
.mod-status.err { border:1px solid rgba(255,123,120,.26); background:rgba(255,123,120,.07); color:#ffaaa8; }
.mod-hp { position:absolute!important; left:-99999px!important; width:1px!important; height:1px!important; opacity:0!important; pointer-events:none!important; }
.mod-side { display:grid; gap:12px; position:sticky; top:112px; }
.mod-side-card { padding:18px; }
.mod-side-card h3 { margin:0 0 9px; font-size:17px; }
.mod-side-card p { margin:0; color:#8795a7; font-size:11px; line-height:1.6; }
.mod-side-list { display:grid; gap:10px; margin-top:12px; }
.mod-side-item { display:grid; grid-template-columns:34px 1fr; gap:10px; align-items:start; }
.mod-side-icon { width:34px; height:34px; display:grid; place-items:center; border:1px solid #26364a; border-radius:10px; background:#09111a; }
.mod-side-item b { display:block; margin-bottom:2px; color:#eaf0f7; font-size:11px; }
.mod-side-item span { color:#79889b; font-size:9px; line-height:1.45; }
.mod-important { border-color:rgba(234,255,66,.21); background:linear-gradient(145deg,rgba(234,255,66,.055),#0d141d 55%); }
.mod-important strong { color:var(--lime); }
.recruit-banner { display:flex; align-items:center; justify-content:space-between; gap:18px; margin:0 0 15px; padding:14px 16px; border:1px solid rgba(234,255,66,.20); border-radius:16px; background:linear-gradient(100deg,rgba(234,255,66,.07),rgba(14,21,30,.92) 55%); }
.recruit-banner-copy { min-width:0; }
.recruit-banner-copy span { display:block; margin-bottom:3px; color:var(--lime); font-size:8px; font-weight:950; letter-spacing:.12em; }
.recruit-banner-copy strong { display:block; color:#f4f7fb; font-size:14px; }
.recruit-banner-copy small { display:block; margin-top:3px; color:#7f8da0; font-size:9px; }
.recruit-banner a { flex:0 0 auto; padding:10px 12px; border-radius:11px; background:var(--lime); color:#091009; text-decoration:none; font-size:9px; font-weight:950; }
/* quarto link nel menu alto */
.site-nav a.nav-mod { color:#0a0d12; border-color:var(--lime); background:var(--lime); }
.site-nav a.nav-mod:hover { color:#0a0d12; background:#f0ff68; }
.site-nav a.nav-mod ~ a { color:#aeb9c8; background:rgba(16,23,32,.55); border-color:rgba(255,255,255,.08); }
@media(max-width:980px){ .site-nav{grid-template-columns:repeat(4,minmax(0,1fr));} .mod-layout{grid-template-columns:1fr;} .mod-side{position:static;grid-template-columns:1fr 1fr;} }
@media(max-width:680px){ .site-nav{grid-template-columns:1fr 1fr;} .mod-principles,.platform-grid,.mod-side{grid-template-columns:1fr;} .mod-row-2{grid-template-columns:1fr;} .recruit-banner{align-items:flex-start;flex-direction:column;} .recruit-banner a{width:100%;box-sizing:border-box;text-align:center;} }
