/**
 * UP Assicurazioni | 2026 menu desktop + richiesta prodotto specifico
 * Draft-only. WordPress menu preserved in DOM; mobile navigation untouched.
 */
.up29-mega {display:none}
@media(min-width:1051px){
  body.up-approved .up-site-header{position:relative;z-index:1000}
  body.up-approved .up-header-inner{position:relative!important}
  body.up-approved .up-desktop-nav,
  body.up-approved .up-desktop-nav>.up-nav-menu,
  body.up-approved .up-desktop-nav>.up-nav-menu>li{position:static!important}
  body.up-approved .up-desktop-nav>.up-nav-menu>li.up29-mega-parent>.sub-menu,
  body.up-approved .up-desktop-nav>.up-nav-menu>li.up29-mega-parent:hover>.sub-menu,
  body.up-approved .up-desktop-nav>.up-nav-menu>li.up29-mega-parent:focus-within>.sub-menu{
    display:none!important;
    visibility:hidden!important;
    opacity:0!important;
  }
  body.up-approved .up-desktop-nav>.up-nav-menu>li.up29-mega-parent>a{
    border-bottom:2px solid transparent!important;
  }
  body.up-approved .up-desktop-nav>.up-nav-menu>li.up29-mega-parent:is(:hover,:focus-within)>a{
    color:#015599!important;
    border-bottom-color:#0181c1!important;
  }
  body.up-approved .up-desktop-nav>.up-nav-menu>li.up29-mega-parent:is(:hover,:focus-within)>.up29-mega{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
  }
  .up29-mega{
    box-sizing:border-box!important;
    position:absolute!important;
    z-index:3000!important;
    top:calc(100% - 2px)!important;
    left:50%!important;
    right:auto!important;
    transform:translateX(-50%)!important;
    width:min(1180px,calc(100vw - 46px))!important;
    max-height:min(74vh,690px);
    overflow-x:hidden!important;
    overflow-y:auto!important;
    padding:0 22px 25px!important;
    margin:0!important;
    background:#fff!important;
    border:1px solid #d9e6ef!important;
    border-top:3px solid #0181c1!important;
    border-radius:0 0 6px 6px!important;
    box-shadow:0 21px 51px rgba(8,47,87,.16)!important;
    scrollbar-color:#afd0e1 #f6fbff;
    overscroll-behavior:contain;
    color:#113d64!important;
  }
  .up29-mega-top{
    min-height:49px;
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:20px;
    border-bottom:1px solid #e1ebf2;
    padding:9px 4px;
    margin-bottom:17px;
  }
  .up29-mega-top>span{
    font:700 10px/1.5 var(--up-body);
    letter-spacing:.09em;
    color:#44718e;
    text-transform:uppercase;
  }
  body.up-approved .up29-mega .up29-mega-all{
    color:#015599!important;
    text-decoration:none!important;
    font:700 10px/1.5 var(--up-body)!important;
    border-bottom:1px solid #b0cfdf!important;
    padding:4px 0!important;
    white-space:nowrap;
  }
  .up29-mega-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:0!important;
  }
  .up29-mega-col{
    min-width:0;
    padding:0 22px!important;
    border-left:1px solid #e2ebf1!important;
  }
  .up29-mega-col:first-child{border-left:0!important;padding-left:5px!important}
  .up29-mega-col:last-child{padding-right:5px!important}
  .up29-mega-col-label{
    color:#0179b8;
    height:29px;
    display:flex;
    align-items:flex-start;
    margin-bottom:8px;
  }
  .up29-mega-col-label svg{display:block;width:25px;height:25px;stroke:#0179b8}
  .up29-mega-group{padding:0 0 14px!important;margin:0 0 14px!important;border-bottom:1px solid #e2ebf1!important;min-width:0}
  .up29-mega-group:last-child{margin-bottom:0!important}
  body.up-approved .up29-mega .up29-mega-group h3{
    margin:0 0 11px!important;
    padding:0!important;
    color:#082f71!important;
    font:700 12px/1.45 var(--up-body)!important;
    letter-spacing:0!important;
  }
  body.up-approved .up29-mega .up29-mega-group h3 a{
    display:block!important;
    padding:0!important;
    color:#082f71!important;
    font:inherit!important;
    border:0!important;
    background:none!important;
    text-decoration:none!important;
    white-space:normal!important;
  }
  body.up-approved .up29-mega .up29-mega-group h3 a:hover{
    color:#016cae!important;
    text-decoration:underline!important;
    text-underline-offset:3px;
  }
  .up29-mega-links{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:0!important;
    padding:0!important;
    margin:0!important;
    list-style:none!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
  }
  .up29-mega-links>li{
    display:block!important;
    padding:0!important;
    margin:0!important;
    list-style:none!important;
    border:0!important;
    background:transparent!important;
    height:auto!important;
    min-height:0!important;
  }
  body.up-approved .up29-mega .up29-mega-links a{
    display:block!important;
    padding:6px 7px!important;
    margin:0 -7px!important;
    color:#476a82!important;
    font:500 11px/1.53 var(--up-body)!important;
    background:transparent!important;
    border:0!important;
    text-decoration:none!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
    border-radius:3px!important;
    transition:background .14s,color .14s;
  }
  body.up-approved .up29-mega .up29-mega-links a:hover,
  body.up-approved .up29-mega .up29-mega-links a:focus-visible{
    color:#015599!important;
    background:#edf6fc!important;
  }
  .up29-mega-more{margin-top:8px}
  .up29-mega-more summary{
    list-style:none;
    position:relative;
    display:inline-flex;
    align-items:center;
    gap:8px;
    cursor:pointer;
    border:0;
    background:transparent;
    color:#015599;
    padding:6px 0;
    font:700 10px/1.4 var(--up-body);
  }
  .up29-mega-more summary::-webkit-details-marker{display:none}
  .up29-mega-more summary:after{content:"+";font-size:17px;line-height:10px}
  .up29-mega-more[open] summary:after{content:"−"}
  .up29-mega-more>.up29-mega-links{padding-top:4px!important}
  .up29-mega :is(a,summary):focus-visible{outline:2px solid #0181c1!important;outline-offset:3px}
  .up29-grid-guides{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .up29-grid-guides .up29-mega-col:nth-child(2){border-left:1px solid #e2ebf1!important}
  .up29-grid-guides .up29-mega-col:nth-child(n+3){display:none}
  body.up-approved .up-desktop-nav>.up-nav-menu>li.up29-mega-parent:has(.up29-grid-guides)>.up29-mega{
    width:min(690px,calc(100vw - 50px))!important;
  }
}
@media(min-width:1051px){
  .up29-other-categories{
    margin-top:14px;
    border-top:1px solid #e2ebf2;
  }
  .up29-other-categories>summary{
    position:relative;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    padding:16px 8px 7px;
    color:#015599;
    font:700 11px/1.5 var(--up-body);
    cursor:pointer;
    list-style:none;
  }
  .up29-other-categories>summary::-webkit-details-marker{display:none}
  .up29-other-categories>summary:after{content:"+";font:500 19px/1 var(--up-body)}
  .up29-other-categories[open]>summary:after{content:"−"}
  .up29-other-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:20px 35px;
    padding:24px 8px 9px;
    border-top:1px solid #e2ebf2;
    margin-top:9px;
  }
  .up29-other-grid>.up29-mega-group{margin:0!important}
  .up29-other-categories:focus-visible,
  .up29-other-categories>summary:focus-visible{
    outline:2px solid #0181c1!important;outline-offset:2px;
  }
}
@media(min-width:1051px) and (max-width:1190px){
  .up29-mega{width:calc(100vw - 32px)!important;padding:0 16px 18px!important}
  .up29-mega-col{padding:0 15px!important}
  body.up-approved .up29-mega .up29-mega-links a{font-size:10.5px!important}
}
@media(max-width:1050px){
  .up29-mega{display:none!important}
}

/* Dynamic product detail in the quote form: keep original WPForms input,
   validations, product code and automatic product selection unchanged. */
body.up-approved .up26-experience .up29-form-selected .up29-request-product{
  display:block;
  color:#082f71!important;
  text-wrap:balance;
  overflow-wrap:break-word;
}
body.up-approved .up26-experience .up29-form-selected .up26-sp-request-intro h2{
  font-size:clamp(37px,3.6vw,54px)!important;
  line-height:1.07!important;
}
body.up-approved .up26-experience .up29-form-selected .up26-sp-form-header{
  padding-bottom:6px!important;
}
body.up-approved .up26-experience .up29-selected-product{
  position:relative;
  background:#edf5fc;
  border-left:3px solid #0181c1;
  margin:22px 0 2px;
  padding:14px 18px;
  border-radius:0 3px 3px 0;
  max-width:100%;
}
body.up-approved .up26-experience .up29-selected-product>span{
  display:block;
  font:600 10px/1.4 var(--up-body);
  color:#53748b;
  margin-bottom:4px;
}
body.up-approved .up26-experience .up29-selected-product>strong{
  display:block;
  font:700 13px/1.48 var(--up-body);
  color:#082f71;
  overflow-wrap:break-word;
}
body.up-approved .up26-experience .up29-form-selected .up-fu-summary{
  display:none!important;
}
@media(max-width:900px){
  body.up-approved .up26-experience .up29-form-selected .up26-sp-request-intro h2{
    font-size:clamp(37px,5.3vw,49px)!important;
  }
}
@media(max-width:650px){
  body.up-approved .up26-experience .up29-form-selected .up26-sp-request-intro h2{
    font-size:clamp(34px,9.3vw,44px)!important;
    line-height:1.1!important;
  }
  body.up-approved .up26-experience .up29-selected-product{
    margin:16px 0 0;
    padding:12px 13px;
  }
  body.up-approved .up26-experience .up29-selected-product>strong{font-size:12px}
}

/* Fiducia: l'ultima sezione specialistica è editoriale, non un altro banner. */
body.up-approved .up26-experience .up29-trust-footer{
  background:#fff!important;
  color:#082f71!important;
  border-top:1px solid #dce7ee!important;
  padding:34px 0 37px!important;
}
body.up-approved .up26-experience .up29-trust-footer>.up-wrap{
  display:grid!important;
  grid-template-columns:minmax(0,1.15fr) minmax(0,1.6fr) auto!important;
  gap:24px!important;
  align-items:center!important;
}
body.up-approved .up26-experience .up29-trust-title>span{
  color:#016cae!important;
  font:700 9px/1.5 var(--up-body)!important;
  letter-spacing:.1em!important;
}
body.up-approved .up26-experience .up29-trust-title h2{
  color:#082f71!important;
  margin:8px 0 0!important;
  font:500 clamp(27px,2.45vw,37px)/1.1 var(--up-display)!important;
}
body.up-approved .up26-experience .up29-trust-items{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:0;
}
body.up-approved .up26-experience .up29-trust-items span{
  display:flex;
  align-items:center;
  min-height:48px;
  padding:0 11px;
  border-left:1px solid #d7e5ed;
  color:#184e76;
  font:600 10px/1.55 var(--up-body);
}
body.up-approved .up26-experience .up29-trust-footer a{
  width:auto!important;
  max-width:170px!important;
  padding:7px 0!important;
  margin:0!important;
  display:inline-block!important;
  background:transparent!important;
  border:0!important;
  border-bottom:1px solid #b3d1e0!important;
  box-shadow:none!important;
  color:#015599!important;
  font:700 10px/1.5 var(--up-body)!important;
}
@media(max-width:950px){
  body.up-approved .up26-experience .up29-trust-footer>.up-wrap{
    grid-template-columns:1fr!important;gap:18px!important;
  }
}
@media(max-width:650px){
  body.up-approved .up26-experience .up29-trust-items{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:12px}
  body.up-approved .up26-experience .up29-trust-items span{min-height:32px}
}
/* Sezione richiesta: percorso di assistenza, senza numeri decorativi. */
body.up-approved .up26-experience .up29-request-guide{
  display:grid;
  gap:18px;
  margin:32px 0 27px;
  max-width:455px;
}
body.up-approved .up26-experience .up29-request-guide>div{
  display:flex;
  align-items:center;
  gap:15px;
  min-width:0;
}
body.up-approved .up26-experience .up29-guide-icon{
  display:grid;
  place-items:center;
  flex:0 0 45px;
  height:45px;
  background:#ddecfa;
  border-radius:50%;
  color:#016cae;
}
body.up-approved .up26-experience .up29-guide-icon svg{
  display:block;width:22px;height:22px;stroke:currentColor;
}
body.up-approved .up26-experience .up29-request-guide strong{
  display:block;
  color:#082f71;
  font:700 12px/1.4 var(--up-body);
}
body.up-approved .up26-experience .up29-request-guide p{
  margin:4px 0 0!important;
  color:#58768e!important;
  font:400 11px/1.55 var(--up-body)!important;
}
body.up-approved .up29-mega .up29-mega-links a.up29-current{
  background:#eaf4fd!important;
  color:#005599!important;
  font-weight:700!important;
  border-left:2px solid #0181c1!important;
  padding-left:8px!important;
}
@media(max-width:650px){
  body.up-approved .up26-experience .up29-request-guide{
    gap:15px;margin:24px 0;
  }
  body.up-approved .up26-experience .up29-guide-icon{
    flex-basis:40px;height:40px;
  }
}
@media(prefers-reduced-motion:reduce){
  .up29-mega-links a{transition:none!important}
}

