@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@600&display=swap');
*{
font-family: 'Poppins', sans-serif;
}

.grid-container {
display: grid;
}

:root{
--bg: #ffffff;
--panel: #ffffff;
--muted: #5a6373;
--text: #0b0c10;
--brand: #3b63ff;
--brand-quiet: rgba(59,99,255,.10);
--chip-bg: #fff;
--chip-border: #e9eef5;
--chip-hover: #f3f6fb;
--chip-active: #e7efff;
--ring: rgba(59,99,255,.35);
--shadow: 0 8px 24px rgba(11,12,16,.08);
}

* { box-sizing: border-box; }
body {
  margin:0;
  padding:0;
  background: #ffffff;   /* ?? bianco pieno */
  color: var(--text);
  font: 500 16px/1.4 system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, "Helvetica Neue", Arial;
}

.grid-container div {
text-align: center;
}
.selezione {
padding:0 30px 0 5px !important;
-webkit-padding-end: 30px !important;
-webkit-padding-start: 10px !important;
width: 100%;
}
fieldset
{
  background-color:#ffffff;
  max-width:800px;
  padding:4px;
  border-radius: 10px;
  border: 1px solid #049AD9;
  margin-left: 12px;
  margin-right: 12px;
  margin-bottom: 12px;
}
.parent-container {
  width: 100%;
}
.faq {
  list-style: none;
  padding-left: 40px;
  padding-right: 20px;
}
.faq ul {
padding:-20px;
}
.faq li {
  padding:-20px;
}
.faq li.active .answer {
  max-height: 400px !important;
  padding-bottom: 0px;
  transition: max-height 0.5s ease, padding-bottom 0.5s ease;
}
.faq li.active .question {
  color: #808080;
  transition: color 0.5s ease;
}
.faq .answer {
  color: #090909;
  font-family: serif;
  font-size: 16px;
  line-height: 24px;
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.5s ease, padding-bottom 0.5s ease;
}
.faq .plus-minus-toggle {
  cursor: pointer;
  height: 21px;
  position: absolute;
  width: 21px;
  left: 20px;
  top: 50%;
  z-index: 2;
}
.faq .plus-minus-toggle:before, .faq .plus-minus-toggle:after {
  background: #000;
  content: '';
  height: 5px;
  left: 0;
  position: absolute;
  top: 0;
  width: 21px;
  transition: transform 500ms ease;
}
.faq .plus-minus-toggle:after {
  transform-origin: center;
}
.faq .plus-minus-toggle.collapsed:after {
  transform: rotate(90deg);
}
.faq .plus-minus-toggle.collapsed:before {
  transform: rotate(180deg);
}
.faq .question {
  font-family: sans-serif;
  font-weight: 800;
  position: relative;
  cursor: pointer;
  padding: 0px 0;
  transition: color 0.5s ease;
}
@media screen and (max-width: 1024px) {
  .faq .question {
font-size: 18px;
  }
}
.nero {color:#000000;font-family:Poppins, sans-serif;font-size:11px;}
a.nero {color:#000000;font-family:Poppins, sans-serif;font-size:11px;text-decoration:none;}
a:hover.nero {color:#FF0000;font-family:Poppins, sans-serif;text-decoration:none;font-size:11px;}
a:visited.nero {color:#000000;font-family:Poppins, sans-serif;text-decoration:underline;font-size:11px;}
a {sans-serif;text-decoration:underline;}
a:visited {sans-serif;text-decoration:underline;}

  .wrap{ max-width: 850px; margin: clamp(16px, 4vw, 2px) auto; padding: 0 20px; }
  .header{
    background: var(--panel);
    border: 1px solid var(--chip-border);
    border-radius: 18px;
    box-shadow: var(--shadow);
    overflow: clip;
    position: relative;
  }
.header::before{
  content:none;
}
  .header-inner{ padding: 22px clamp(16px, 3vw, 28px) 18px; display:grid; gap: 16px; }

.title-row{
  display:flex;
  align-items:center;
  justify-content:center; /* ?? centra orizzontalmente */
  gap:12px;
  flex-wrap:wrap;
}
  .title-row svg{ width: 28px; height: 28px; flex: 0 0 auto; }
  h1{ font-size: clamp(20px, 4vw, 28px); margin:0; letter-spacing:.2px; }
  .daterange{ color: var(--muted); margin: 0 0 2px 40px; font-size: 14px; }

.range-switch{
  display:flex;
  gap:8px;
  align-items:center;
  flex-wrap:wrap;
  justify-content:center;  /* centro i chip */
  padding-left:0;
  flex-basis:100%;         /* occupa tutta la riga dentro .title-row */
  margin-top:6px;          /* un filo di respiro dal titolo */
}


  .range-switch .label{ color: var(--muted); margin-right: 2px; font-size: 14px; }

  .chip{
    --pad-x: 14px;
    display:inline-flex; align-items:center; gap:8px;
    text-decoration:none; color:inherit;
    background: var(--chip-bg); border:1px solid var(--chip-border);
    padding: 10px var(--pad-x); border-radius: 999px;
    transition: transform .04s ease, background .15s ease, border-color .15s ease;
    position:relative;
  }
  .chip:hover{ background: var(--chip-hover); }
  .chip:active{ transform: translateY(1px); }
  .chip:focus{ outline: none; box-shadow: 0 0 0 3px var(--ring); border-color: transparent; }

  .chip .badge{ font-weight: 700; letter-spacing: .2px; }
  .chip.is-active{ background: var(--chip-active); border-color: #cddcff; }
  .chip.is-active .dot{ width:8px; height:8px; border-radius:50%; background: var(--brand); display:inline-block; }

  @media (max-width: 520px){
    .daterange{ margin-left: 0; }
    .range-switch{ padding-left: 0; }
  }