/* CSC Megamenu di ricerca */
.csc-site-header .main-nav { position: relative; }
.csc-search-megamenu {
  position:absolute; top:100%; left:0; right:0; z-index:350;
  background:#000; color:#fff; padding:34px 0 48px;
  opacity:0; visibility:hidden; pointer-events:none; transform:translateY(-12px);
  transition:opacity .28s ease, transform .28s cubic-bezier(.22,1,.36,1), visibility 0s linear .28s;
  box-shadow:0 14px 28px rgba(0,0,0,.2);
}
.csc-search-megamenu[hidden] { display:none!important; }
.csc-search-megamenu.csc-search-megamenu--open {
  opacity:1; visibility:visible; pointer-events:auto; transform:translateY(0);
  transition:opacity .28s ease, transform .28s cubic-bezier(.22,1,.36,1), visibility 0s;
}
.csc-search-megamenu__inner {
  display:grid; grid-template-columns:minmax(200px, 1fr) minmax(400px, 2fr);
  column-gap:45px; align-items:start;
}
.csc-search-megamenu__identity { display:flex; gap:15px; align-items:flex-start; }
.csc-search-megamenu__logo { display:block; width:clamp(90px,11vw,180px); max-height:110px; object-fit:contain; object-position:top left; }
.csc-search-megamenu__title { font-size:16px; line-height:1.12; font-weight:700; max-width:170px; }
.csc-search-megamenu__controls { max-width:700px; width:100%; }
.csc-search-megamenu label { display:block; color:#fff; font-size:12px; font-weight:700; margin:0 0 12px; }
.csc-search-megamenu__form-row { display:flex; width:100%; }
.csc-search-megamenu__form-row input {
  min-width:0; flex:1; height:48px; border:1px solid #ddd;
  background:#fff; color:#222; padding:0 18px;
  border-radius:4px 0 0 4px; font-size:13px;
}
.csc-search-megamenu__form-row button {
  flex-shrink:0; border:0; border-radius:0 4px 4px 0;
  background:var(--csc-primary, #961047); color:#fff;
  padding:0 27px; font-size:12px; font-weight:700;
}
.csc-search-megamenu__form-row button:hover { filter:brightness(1.1); }
.csc-search-megamenu__topics { margin-top:28px; }
.csc-search-megamenu__topics select {
  display:block; width:100%; height:48px; border:1px solid #ddd;
  border-radius:4px; background:#fff; color:#222; padding:0 18px;
  font-size:13px;
}
@media (max-width:991.98px) {
  .csc-search-megamenu { padding:24px 0 30px; }
  .csc-search-megamenu__inner { grid-template-columns:1fr; gap:24px; }
  .csc-search-megamenu__controls { max-width:none; }
}
@media (max-width:575.98px) {
  .csc-search-megamenu__form-row { flex-direction:column; gap:8px; }
  .csc-search-megamenu__form-row input,
  .csc-search-megamenu__form-row button { border-radius:4px; min-height:48px; }
}
@media (prefers-reduced-motion:reduce) { .csc-search-megamenu { transition:none!important; } }
