/* =====================================================================
   giacomocurigliano.com — PLUS (17/10/2026)
   Strato aggiuntivo sopra style.css (che resta intatto):
   1) menu a tendina senza "fantasma"   2) motore di ricerca
   3) Fondazione Curigliano             4) Ecosistema   5) rifiniture
   ===================================================================== */

/* ---------- 1. MEGA-MENU: chiuso = invisibile e non cliccabile ---------- */
.mega{
  pointer-events:none;
  transition:opacity .16s ease, transform .16s ease, visibility 0s linear .16s !important;
}
.nav-item:not(.open) > .mega{ opacity:0 !important; visibility:hidden !important; }
.nav-item.open > .mega{
  pointer-events:auto;
  transition:opacity .22s ease, transform .22s ease, visibility 0s !important;
}
/* ponte invisibile tra voce e pannello: il mouse non "cade" nel vuoto */
.nav-item.has-mega.open::after{ content:''; position:absolute; left:-10px; right:-10px; top:100%; height:18px; }
.mega-item.mega-feat{ grid-column:1/-1; background:linear-gradient(120deg,rgba(201,169,97,.16),rgba(201,169,97,.04)); border:1px solid rgba(201,169,97,.28); }
.mega-item.mega-feat .mega-txt strong{ color:var(--gold-soft); }
.mega-sep{ grid-column:1/-1; height:1px; background:rgba(201,169,97,.16); margin:.25rem .4rem; }

/* ---------- Header: rifinitura ---------- */
.site-header.scrolled{ box-shadow:0 10px 30px -18px rgba(0,0,0,.6); }
.nav-menu{ gap:1.45rem; }
a:focus-visible, button:focus-visible, input:focus-visible{ outline:2px solid var(--gold); outline-offset:3px; border-radius:6px; }

/* ---------- 2. RICERCA: pulsante in testata ---------- */
.search-btn{
  display:inline-flex; align-items:center; gap:.5rem; height:40px; padding:0 .8rem 0 .75rem;
  border-radius:100px; border:1px solid rgba(201,169,97,.32); background:rgba(255,255,255,.04);
  color:rgba(246,243,236,.86); cursor:pointer; font-family:var(--f-display); font-size:.82rem;
  transition:background var(--t), border-color var(--t), color var(--t);
}
.search-btn:hover{ background:rgba(201,169,97,.14); border-color:var(--gold); color:var(--gold-soft); }
.search-btn svg{ width:17px; height:17px; flex:none; }
.search-btn .kbd{ font-size:.66rem; letter-spacing:.04em; padding:.12rem .38rem; border-radius:6px; border:1px solid rgba(246,243,236,.18); color:rgba(246,243,236,.55); }
@media (max-width:1560px){ .search-btn .kbd{ display:none; } .search-btn{ width:40px; padding:0; justify-content:center; } .search-btn .lbl{ display:none; } }
/* il menu mobile ora ha più voci nell'ecosistema: niente tagli */
.drawer-group.open .drawer-sub{ max-height:1400px !important; }

/* ---------- Ricerca: finestra istantanea ---------- */
.sx-overlay{ position:fixed; inset:0; z-index:3000; display:none; background:rgba(8,9,12,.72); backdrop-filter:blur(8px); }
.sx-overlay.open{ display:block; animation:sxFade .18s ease; }
@keyframes sxFade{ from{opacity:0} to{opacity:1} }
.sx-panel{
  position:relative; width:min(760px,94vw); margin:9vh auto 0; max-height:80vh; display:flex; flex-direction:column;
  background:#101217; border:1px solid rgba(201,169,97,.3); border-radius:20px; overflow:hidden;
  box-shadow:0 50px 120px -30px rgba(0,0,0,.85);
}
.sx-bar{ display:flex; align-items:center; gap:.8rem; padding:1rem 1.2rem; border-bottom:1px solid rgba(201,169,97,.16); }
.sx-bar svg{ width:22px; height:22px; color:var(--gold); flex:none; }
.sx-input{ flex:1; background:none; border:none; outline:none !important; color:var(--ivory); font-family:var(--f-display); font-size:1.18rem; min-width:0; }
.sx-input::placeholder{ color:rgba(246,243,236,.38); }
.sx-close{ background:rgba(255,255,255,.06); border:none; color:rgba(246,243,236,.7); border-radius:8px; padding:.35rem .6rem; font-size:.72rem; cursor:pointer; font-family:var(--f-display); }
.sx-body{ overflow-y:auto; padding:.6rem .6rem 1rem; }
.sx-chips{ display:flex; flex-wrap:wrap; gap:.45rem; padding:.6rem .6rem .2rem; }
.sx-chip{ background:rgba(201,169,97,.1); border:1px solid rgba(201,169,97,.25); color:var(--gold-soft); border-radius:100px; padding:.38rem .85rem; font-size:.8rem; cursor:pointer; font-family:var(--f-display); }
.sx-chip:hover{ background:rgba(201,169,97,.22); }
.sx-hint{ color:rgba(246,243,236,.45); font-size:.78rem; padding:.7rem .9rem 0; letter-spacing:.04em; }
.sx-group{ font-family:var(--f-display); font-size:.68rem; letter-spacing:.18em; text-transform:uppercase; color:var(--gold); padding:.9rem .9rem .35rem; }
.sx-item{ display:flex; gap:.9rem; padding:.75rem .9rem; border-radius:12px; color:var(--ivory); align-items:flex-start; }
.sx-item:hover, .sx-item.act{ background:rgba(201,169,97,.12); }
.sx-ico{ flex:none; width:38px; height:38px; border-radius:10px; background:rgba(201,169,97,.14); color:var(--gold); display:grid; place-items:center; overflow:hidden; }
.sx-ico img{ width:100%; height:100%; object-fit:cover; }
.sx-ico svg{ width:18px; height:18px; }
.sx-t{ font-family:var(--f-display); font-weight:600; font-size:.98rem; line-height:1.3; }
.sx-s{ font-size:.82rem; color:rgba(230,225,214,.66); line-height:1.45; margin-top:.15rem; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.sx-item mark, .cx-res mark{ background:rgba(201,169,97,.32); color:inherit; border-radius:3px; padding:0 .1em; }
.sx-empty{ color:rgba(246,243,236,.6); padding:1.4rem .9rem; font-size:.95rem; }
.sx-empty a{ color:var(--gold-soft); text-decoration:underline; }
.sx-all{ display:block; margin:.6rem .6rem 0; text-align:center; padding:.8rem; border-radius:12px; border:1px dashed rgba(201,169,97,.35); color:var(--gold-soft); font-family:var(--f-display); font-size:.9rem; }
.sx-all:hover{ background:rgba(201,169,97,.1); }
.sx-foot{ display:flex; gap:1.2rem; padding:.65rem 1.2rem; border-top:1px solid rgba(201,169,97,.12); color:rgba(246,243,236,.4); font-size:.72rem; }
@media (max-width:640px){ .sx-panel{ margin:0; width:100vw; max-height:100vh; height:100vh; border-radius:0; } .sx-foot{ display:none; } }

/* ---------- Ricerca: pagina dei risultati ---------- */
.cx-form{ display:flex; gap:.6rem; max-width:760px; margin-top:1.6rem; }
.cx-form input{ flex:1; min-width:0; height:56px; border-radius:100px; border:1px solid rgba(201,169,97,.45); background:rgba(255,255,255,.06); color:var(--ivory); padding:0 1.4rem; font-family:var(--f-display); font-size:1.08rem; }
.cx-form button{ height:56px; }
.cx-tabs{ display:flex; flex-wrap:wrap; gap:.5rem; margin-bottom:2rem; }
.cx-tab{ padding:.5rem 1rem; border-radius:100px; border:1px solid var(--line-soft); background:#fff; font-family:var(--f-display); font-size:.86rem; color:#3a4150; }
.cx-tab.on, .cx-tab:hover{ background:var(--ink); color:var(--ivory); border-color:var(--ink); }
.cx-tab b{ color:var(--gold-deep); margin-left:.25rem; }
.cx-tab.on b{ color:var(--gold); }
.cx-res{ display:flex; gap:1.3rem; padding:1.4rem 0; border-bottom:1px solid var(--line-soft); }
.cx-res .cx-img{ flex:none; width:120px; aspect-ratio:16/10; border-radius:12px; overflow:hidden; background:linear-gradient(135deg,var(--ink),var(--ink-3)); display:grid; place-items:center; color:var(--gold); font-family:var(--f-display); font-weight:700; }
.cx-res .cx-img img{ width:100%; height:100%; object-fit:cover; }
.cx-res .cx-cat{ font-size:.7rem; letter-spacing:.15em; text-transform:uppercase; color:var(--gold-deep); font-weight:600; }
.cx-res h3{ font-size:1.22rem; margin:.25rem 0 .4rem; }
.cx-res h3 a:hover{ color:var(--gold-deep); }
.cx-res p{ color:var(--gray); font-size:.96rem; }
.cx-res .cx-url{ font-size:.78rem; color:#8a8f9b; margin-top:.35rem; }
.cx-sugg{ background:var(--ivory); border:1px solid var(--line); padding:1rem 1.3rem; border-radius:14px; margin-bottom:1.6rem; }
.cx-sugg a{ color:var(--gold-deep); font-weight:600; text-decoration:underline; }
@media (max-width:640px){ .cx-res .cx-img{ width:84px; } .cx-form{ flex-direction:column; } }

/* ---------- 3. FONDAZIONE ---------- */
.fx-hero{ background:
    radial-gradient(ellipse 70% 60% at 80% 10%, rgba(201,169,97,.18), transparent 60%),
    radial-gradient(ellipse 50% 50% at 10% 90%, rgba(201,169,97,.08), transparent 60%),
    linear-gradient(160deg,#0b0c0f 0%,#15171d 60%,#0a0b0e 100%); }
.fx-badge{ display:inline-flex; align-items:center; gap:.5rem; padding:.42rem .95rem; border-radius:100px; border:1px solid rgba(201,169,97,.4); color:var(--gold-soft); font-family:var(--f-display); font-size:.74rem; letter-spacing:.14em; text-transform:uppercase; margin-bottom:1.4rem; }
.fx-badge i{ width:7px; height:7px; border-radius:50%; background:var(--gold); box-shadow:0 0 0 4px rgba(201,169,97,.2); }
.fx-quote{ font-family:var(--f-display); font-size:clamp(1.35rem,2.4vw,1.9rem); line-height:1.4; color:var(--ink); font-weight:500; border-left:3px solid var(--gold); padding-left:1.6rem; }
.fx-grid3{ display:grid; grid-template-columns:repeat(3,1fr); gap:1.6rem; }
.fx-card{ background:#fff; border:1px solid var(--line-soft); border-radius:var(--radius-lg); padding:2.2rem 1.9rem; position:relative; overflow:hidden; transition:all var(--t); }
.fx-card:hover{ transform:translateY(-5px); box-shadow:var(--shadow); border-color:var(--line); }
.fx-card .fx-n{ font-family:var(--f-display); font-size:.78rem; letter-spacing:.2em; color:var(--gold-deep); font-weight:700; }
.fx-card h3{ font-size:1.3rem; margin:.7rem 0 .8rem; }
.fx-card p{ color:var(--gray); font-size:.97rem; }
.fx-card ul{ margin:.9rem 0 0 1.1rem; color:#3a4150; font-size:.93rem; }
.fx-card li{ margin:.3rem 0; }
.fx-principi{ display:grid; grid-template-columns:repeat(2,1fr); gap:1.2rem 2.4rem; }
.fx-pr{ display:flex; gap:1rem; padding:1.2rem 0; border-bottom:1px solid rgba(201,169,97,.16); }
.fx-pr .k{ flex:none; width:44px; height:44px; border-radius:12px; display:grid; place-items:center; background:rgba(201,169,97,.14); color:var(--gold); font-family:var(--f-display); font-weight:700; }
.fx-pr h4{ font-size:1.05rem; color:var(--ivory); margin-bottom:.3rem; }
.fx-pr p{ color:rgba(246,243,236,.72); font-size:.93rem; }
.fx-gov{ display:grid; grid-template-columns:repeat(4,1fr); gap:1.2rem; }
.fx-gov div{ background:var(--ivory); border:1px solid var(--line); border-radius:16px; padding:1.4rem 1.3rem; }
.fx-gov strong{ display:block; font-family:var(--f-display); font-size:1rem; margin-bottom:.4rem; }
.fx-gov span{ font-size:.9rem; color:var(--gray); }
.fx-road{ position:relative; display:grid; grid-template-columns:repeat(4,1fr); gap:1.4rem; }
.fx-road::before{ content:''; position:absolute; left:0; right:0; top:22px; height:2px; background:linear-gradient(90deg,var(--gold),rgba(201,169,97,.15)); }
.fx-step{ position:relative; padding-top:3.2rem; }
.fx-step::before{ content:''; position:absolute; top:12px; left:0; width:22px; height:22px; border-radius:50%; background:var(--paper); border:3px solid var(--gold); }
.fx-step.on::before{ background:var(--gold); box-shadow:0 0 0 6px rgba(201,169,97,.2); }
.fx-step .y{ font-family:var(--f-display); font-weight:700; color:var(--gold-deep); font-size:.9rem; letter-spacing:.06em; }
.fx-step h4{ font-size:1.1rem; margin:.35rem 0 .45rem; }
.fx-step p{ font-size:.92rem; color:var(--gray); }
.fx-mentori{ display:grid; grid-template-columns:repeat(3,1fr); gap:1.4rem; }
.fx-m{ background:#fff; border:1px solid var(--line-soft); border-radius:18px; padding:1.6rem; }
.fx-m .nm{ font-family:var(--f-display); font-weight:700; font-size:1.02rem; }
.fx-m .rl{ font-size:.74rem; letter-spacing:.12em; text-transform:uppercase; color:var(--gold-deep); margin:.15rem 0 .7rem; }
.fx-m p{ font-size:.93rem; color:#3a4150; }
.fx-no{ display:grid; grid-template-columns:repeat(3,1fr); gap:1.2rem; }
.fx-no div{ border:1px solid rgba(201,169,97,.28); border-radius:16px; padding:1.4rem; color:rgba(246,243,236,.8); font-size:.94rem; }
.fx-no strong{ display:block; color:var(--gold-soft); font-family:var(--f-display); margin-bottom:.35rem; }
.fx-faq details{ border-bottom:1px solid var(--line-soft); padding:1.1rem 0; }
.fx-faq summary{ cursor:pointer; font-family:var(--f-display); font-weight:600; font-size:1.06rem; list-style:none; display:flex; justify-content:space-between; gap:1rem; }
.fx-faq summary::-webkit-details-marker{ display:none; }
.fx-faq summary::after{ content:'+'; color:var(--gold-deep); font-size:1.4rem; line-height:1; }
.fx-faq details[open] summary::after{ content:'–'; }
.fx-faq p{ margin-top:.7rem; color:var(--gray); }
@media (max-width:980px){
  .fx-grid3,.fx-mentori,.fx-no{ grid-template-columns:1fr; }
  .fx-principi{ grid-template-columns:1fr; }
  .fx-gov,.fx-road{ grid-template-columns:1fr 1fr; }
  .fx-road::before{ display:none; }
}
@media (max-width:560px){ .fx-gov,.fx-road{ grid-template-columns:1fr; } }

/* ---------- 4. ECOSISTEMA ---------- */
.ex-sector{ margin-bottom:3.2rem; }
.ex-sector h2{ font-size:clamp(1.4rem,2.4vw,1.9rem); margin:.6rem 0 1.4rem; }
.ex-grid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(300px,1fr)); gap:1.4rem; }
.ex-card{ display:flex; flex-direction:column; background:#fff; border:1px solid var(--line-soft); border-radius:20px; padding:1.7rem; transition:all var(--t); position:relative; }
.ex-card:hover{ transform:translateY(-5px); box-shadow:var(--shadow); border-color:var(--line); }
.ex-card .ex-top{ display:flex; align-items:center; gap:.9rem; margin-bottom:1rem; }
.ex-card .ex-mono{ width:48px; height:48px; border-radius:14px; background:linear-gradient(135deg,var(--ink),var(--ink-3)); color:var(--gold); display:grid; place-items:center; font-family:var(--f-display); font-weight:700; overflow:hidden; flex:none; }
.ex-card .ex-mono img{ width:100%; height:100%; object-fit:cover; }
.ex-card h3{ font-size:1.18rem; }
.ex-card .ex-cat{ font-size:.7rem; letter-spacing:.14em; text-transform:uppercase; color:var(--gold-deep); font-weight:600; }
.ex-card p{ color:var(--gray); font-size:.95rem; flex:1; }
.ex-card .ex-go{ margin-top:1.1rem; font-family:var(--f-display); font-weight:600; font-size:.88rem; color:var(--ink); display:flex; justify-content:space-between; }
.ex-card .ex-go span{ color:var(--gold-deep); }
.ex-card.ex-fond{ background:linear-gradient(140deg,#0e1014,#1b1e26); border-color:rgba(201,169,97,.35); }
.ex-card.ex-fond h3, .ex-card.ex-fond .ex-go{ color:var(--ivory); }
.ex-card.ex-fond p{ color:rgba(246,243,236,.72); }

/* ---------- 5. Rifiniture ---------- */
.read-progress{ position:fixed; top:0; left:0; height:3px; width:0; z-index:1100; background:linear-gradient(90deg,var(--gold-deep),var(--gold),var(--gold-soft)); }
.to-top{ position:fixed; right:22px; bottom:22px; z-index:900; width:46px; height:46px; border-radius:50%; border:1px solid rgba(201,169,97,.45); background:rgba(12,13,16,.88); color:var(--gold); display:grid; place-items:center; cursor:pointer; opacity:0; visibility:hidden; transform:translateY(10px); transition:all var(--t); }
.to-top.show{ opacity:1; visibility:visible; transform:none; }
.to-top svg{ width:20px; height:20px; }
.foot-fond{ display:inline-flex; align-items:center; gap:.45rem; color:var(--gold-soft) !important; }
/* =====================================================================
   6. TESTATA v2 (17/10/2026) — una riga a ogni larghezza, pannelli a tutta testata
   Punti di passaggio: >1440 tutto con etichette · 1241–1440 compatta · ≤1240 menu a scomparsa
   ===================================================================== */
.hv2.site-header{ padding:.85rem 0; background:linear-gradient(180deg,rgba(10,11,14,.94) 0%,rgba(10,11,14,.78) 70%,rgba(10,11,14,.55) 100%); backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px); border-bottom:1px solid rgba(201,169,97,.10); }
.hv2.site-header.scrolled{ padding:.55rem 0; background:rgba(10,11,14,.96); border-bottom-color:rgba(201,169,97,.2); }
.hv2.site-header::after{ content:''; position:absolute; left:0; right:0; bottom:-1px; height:1px; background:linear-gradient(90deg,transparent,rgba(201,169,97,.55),transparent); opacity:.6; pointer-events:none; }
.hv2 .nav-inner{ width:min(94vw,1360px); gap:1.6rem; }

/* marchio */
.hv2 .brand{ flex-direction:row; align-items:center; gap:.8rem; flex:none; white-space:nowrap; }
.hv2 .brand-mono{ width:42px; height:42px; border-radius:50%; flex:none; display:grid; place-items:center;
  font-family:var(--f-display); font-weight:700; font-size:.92rem; letter-spacing:.04em; color:#1a1406;
  background:linear-gradient(140deg,#ecd9a8 0%,var(--gold) 45%,var(--gold-deep) 100%);
  box-shadow:0 0 0 1px rgba(201,169,97,.5), 0 0 0 4px rgba(201,169,97,.10), 0 8px 22px -8px rgba(201,169,97,.6); transition:transform var(--t); }
.hv2 .brand:hover .brand-mono{ transform:rotate(-8deg) scale(1.04); }
.hv2 .brand-txt{ display:flex; flex-direction:column; line-height:1; }
.hv2 .brand .name{ font-size:1.18rem; white-space:nowrap; }
.hv2 .brand .role{ font-size:.6rem; letter-spacing:.24em; white-space:nowrap; margin-top:5px; }

/* voci */
.hv2 .primary-nav{ flex:1; display:flex; justify-content:center; min-width:0; }
.hv2 .nav-menu{ gap:2.1rem; }
.hv2 .nav-menu > li{ position:static; }
.hv2 .nav-menu > li > a, .hv2 .nav-trigger{ font-size:.93rem; font-weight:500; color:rgba(246,243,236,.84); padding:.55rem 0; position:relative; }
.hv2 .nav-menu > li > a::after{ bottom:-2px; }
.hv2 .nav-trigger::before{ content:''; position:absolute; left:0; bottom:-2px; height:1.5px; width:0; background:var(--gold); transition:width var(--t); }
.hv2 .nav-item.open > .nav-trigger::before, .hv2 .nav-item:hover > .nav-trigger::before{ width:100%; }
.hv2 .is-cur > a, .hv2 .is-cur > .nav-trigger{ color:var(--gold-soft) !important; }
.hv2 .is-cur > a::after, .hv2 .is-cur > .nav-trigger::before{ width:100% !important; }
.hv2 .nav-fond{ display:inline-flex !important; align-items:center; gap:.45rem; }
.hv2 .nav-fond::before{ content:''; width:6px; height:6px; border-radius:50%; background:var(--gold); box-shadow:0 0 0 3px rgba(201,169,97,.22); }

/* destra */
.hv2 .nav-cta{ gap:.7rem; flex:none; }
.hv2 .search-btn{ height:42px; padding:0 1rem 0 .85rem; }
.hv2 .search-btn .kbd{ display:none !important; }
.hv2 .nav-cta-btn{ padding:.72rem 1.35rem !important; font-size:.86rem !important; }

/* ---- pannelli (mega) a tutta testata ---- */
.hv2 .mega{
  position:absolute; top:100%; left:50% !important; right:auto !important; width:min(1180px,94vw) !important; max-width:none !important;
  transform:translate(-50%,10px); margin-top:0; padding:1.6rem; gap:1.6rem; border-radius:22px;
  background:linear-gradient(180deg,#121318,#0c0d11) !important; backdrop-filter:none !important; border:1px solid rgba(201,169,97,.24);
  box-shadow:0 50px 100px -30px rgba(0,0,0,.85), inset 0 1px 0 rgba(255,255,255,.04);
}
.hv2 .nav-item.open > .mega{ transform:translate(-50%,6px); }
.hv2 .nav-item.has-mega.open::after{ display:none !important; }
.hv2 .mega, .hv2 .mega *{ white-space:normal !important; }
.hv2 .mega::before{ content:'' !important; position:absolute !important; left:0 !important; right:0 !important; top:-30px !important; height:30px !important; width:auto !important; background:transparent !important; border:0 !important; transform:none !important; }
.hv2 .mg-profilo{ grid-template-columns:1.15fr 1fr 1fr !important; }
.hv2 .mg-eco{ grid-template-columns:repeat(4,1fr) !important; }
.hv2 .mg-insight{ grid-template-columns:2fr 1fr !important; }
.hv2 .mg-h{ display:block; font-family:var(--f-display); font-size:.66rem; font-weight:600; letter-spacing:.2em; text-transform:uppercase; color:var(--gold); margin:0 0 .7rem .75rem; }
.hv2 .mg-link{ display:block; padding:.62rem .75rem; border-radius:12px; transition:background .25s, transform .25s; }
.hv2 .mg-link b{ display:block; font-family:var(--f-display); font-weight:600; font-size:.92rem; color:#fff; line-height:1.25; }
.hv2 .mg-link span{ display:block; font-size:.76rem; color:rgba(230,225,214,.6); margin-top:2px; line-height:1.35; }
.hv2 .mg-link:hover{ background:rgba(201,169,97,.11); transform:translateX(3px); }
.hv2 .mg-link:hover b{ color:var(--gold-soft); }
.hv2 .mg-link::after{ display:none !important; }

.hv2 .mg-feat{ display:flex; flex-direction:column; border-radius:18px; overflow:hidden; background:linear-gradient(160deg,#1d2028,#121318); border:1px solid rgba(201,169,97,.2); transition:border-color .3s; }
.hv2 .mg-feat:hover{ border-color:rgba(201,169,97,.55); }
.hv2 .mg-photo{ display:block; height:170px; overflow:hidden; background:#0c0d10; }
.hv2 .mg-photo img{ width:100%; height:100%; object-fit:cover; object-position:center 22%; transition:transform .8s ease; }
.hv2 .mg-feat:hover .mg-photo img{ transform:scale(1.05); }
.hv2 .mg-feat-txt{ display:flex; flex-direction:column; gap:.35rem; padding:1.1rem 1.2rem 1.2rem; }
.hv2 .mg-feat-txt strong{ font-family:var(--f-display); font-size:1.12rem; color:#fff; }
.hv2 .mg-feat-txt span{ font-size:.8rem; color:rgba(230,225,214,.68); line-height:1.5; }
.hv2 .mg-kicker{ font-family:var(--f-display); font-size:.64rem !important; letter-spacing:.18em; text-transform:uppercase; color:var(--gold) !important; }
.hv2 .mg-go{ color:var(--gold-soft) !important; font-family:var(--f-display); font-weight:600; font-size:.82rem !important; margin-top:.3rem; }

.hv2 .mg-bar{ grid-column:1/-1; display:flex; justify-content:space-between; align-items:center; gap:1rem; flex-wrap:wrap; margin:-.2rem -1.6rem -1.6rem; padding:1rem 1.6rem; border-top:1px solid rgba(201,169,97,.16); background:rgba(201,169,97,.05); border-radius:0 0 22px 22px; }
.hv2 .mg-bar a{ font-family:var(--f-display); font-weight:600; font-size:.88rem; }
.hv2 .mg-bar-l{ color:#fff; } .hv2 .mg-bar-l span{ color:var(--gold); }
.hv2 .mg-bar-l:hover{ color:var(--gold-soft); }
.hv2 .mg-bar-f{ display:inline-flex; align-items:center; gap:.55rem; color:var(--gold-soft); padding:.5rem 1rem; border-radius:100px; border:1px solid rgba(201,169,97,.4); }
.hv2 .mg-bar-f i{ width:7px; height:7px; border-radius:50%; background:var(--gold); box-shadow:0 0 0 4px rgba(201,169,97,.2); }
.hv2 .mg-bar-f:hover{ background:rgba(201,169,97,.14); }

.hv2 .mg-news-grid{ display:grid; grid-template-columns:1fr 1fr; gap:1rem; }
.hv2 .mg-card{ display:flex; flex-direction:column; gap:.45rem; padding:.6rem; border-radius:16px; transition:background .25s; }
.hv2 .mg-card:hover{ background:rgba(201,169,97,.08); }
.hv2 .mg-thumb{ display:block; aspect-ratio:16/9; border-radius:12px; overflow:hidden; background:linear-gradient(135deg,#1c1f27,#0c0d10); }
.hv2 .mg-thumb img{ width:100%; height:100%; object-fit:cover; transition:transform .7s ease; }
.hv2 .mg-card:hover .mg-thumb img{ transform:scale(1.05); }
.hv2 .mg-card b{ font-family:var(--f-display); font-weight:600; font-size:.95rem; color:#fff; line-height:1.3; }
.hv2 .mg-card:hover b{ color:var(--gold-soft); }

/* drawer: ricerca in cima e Fondazione in evidenza */
.drawer-search{ display:flex; align-items:center; gap:.6rem; height:48px; padding:0 1rem; margin-bottom:.8rem; border-radius:14px; border:1px solid rgba(201,169,97,.32); background:rgba(255,255,255,.04); }
.drawer-search svg{ width:18px; height:18px; color:var(--gold); flex:none; }
.drawer-search input{ flex:1; min-width:0; background:none; border:none; outline:none; color:var(--ivory); font-family:var(--f-display); font-size:1rem; }
.drawer-nav .d-fond{ color:var(--gold-soft) !important; }

/* ---- larghezze ---- */
@media (max-width:1440px){
  .hv2 .nav-menu{ gap:1.55rem; }
  .hv2 .search-btn{ width:42px; padding:0; justify-content:center; }
  .hv2 .search-btn .lbl{ display:none; }
}
@media (max-width:1320px){
  .hv2 .nav-inner{ gap:1.1rem; }
  .hv2 .nav-menu{ gap:1.25rem; }
  .hv2 .brand .role{ letter-spacing:.18em; }
  .hv2 .lang-current{ display:none; }
}
@media (max-width:1240px){
  .hv2 .primary-nav{ display:none !important; }
  .hv2 .burger{ display:flex !important; }
  .hv2 .nav-inner{ justify-content:space-between; }
}
@media (max-width:980px){ .hv2 .search-btn{ display:inline-flex !important; } }
@media (max-width:480px){
  .hv2 .brand-mono{ width:36px; height:36px; font-size:.8rem; }
  .hv2 .brand .name{ font-size:1.02rem; }
  .hv2 .brand .role{ font-size:.54rem; letter-spacing:.14em; }
  .hv2 .nav-inner{ gap:.6rem; width:calc(100vw - 32px); }
}

@media (prefers-reduced-motion:reduce){ *{ animation:none !important; transition:none !important; } }
