
/* =========================================================
   URANIA IN VIAGGIO — SHELL COMUNE
   Header e footer condivisi da tutte le pagine pubbliche.
   Le pagine possono mantenere il proprio stile editoriale.
   ========================================================= */

:root{
  --urania-paper:#fbf8f2;
  --urania-navy:#0d3157;
  --urania-terracotta:#cb765f;
  --urania-muted:#68727e;
  --urania-line:rgba(13,49,87,.14);
}

/* Header comune */
.urania-site-header{
  position:sticky;
  top:0;
  z-index:1000;
  width:100%;
  background:rgba(251,248,242,.96);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  border-bottom:1px solid var(--urania-line);
  font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;
}
.urania-site-header *{box-sizing:border-box}
.urania-site-header .urania-shell{
  width:min(1180px,calc(100% - 38px));
  min-height:86px;
  margin:0 auto;
  display:flex;
  align-items:center;
  gap:28px;
}
.urania-brand{
  margin-right:auto;
  display:flex;
  align-items:center;
  gap:13px;
  color:var(--urania-navy)!important;
  text-decoration:none!important;
  white-space:nowrap;
}
.urania-brand img{
  width:48px;
  height:48px;
  object-fit:cover;
  border-radius:14px;
  display:block;
}
.urania-brand span{
  font-family:Georgia,"Times New Roman",serif;
  font-size:1.45rem;
  font-weight:700;
  line-height:1;
}
.urania-main-nav{
  display:flex;
  align-items:center;
  gap:26px;
}
.urania-main-nav a{
  color:var(--urania-navy)!important;
  text-decoration:none!important;
  font-size:.78rem;
  font-weight:900;
  letter-spacing:.065em;
  text-transform:uppercase;
}
.urania-main-nav a:hover{color:var(--urania-terracotta)!important}
.urania-header-cta{
  color:var(--urania-terracotta)!important;
  text-decoration:none!important;
  border:1px solid var(--urania-terracotta);
  border-radius:999px;
  padding:13px 19px;
  font-weight:850;
  white-space:nowrap;
}

/* Footer comune */
.urania-site-footer{
  width:100%;
  margin:0!important;
  padding:0!important;
  background:var(--urania-paper)!important;
  color:var(--urania-navy)!important;
  border-top:1px solid var(--urania-line)!important;
  font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;
}
.urania-site-footer *{box-sizing:border-box}
.urania-site-footer .urania-footer-inner{
  width:min(1180px,calc(100% - 38px));
  min-height:150px;
  margin:0 auto;
  padding:36px 0;
  display:grid;
  grid-template-columns:1fr auto;
  gap:30px;
  align-items:center;
}
.urania-footer-brand{
  font-family:Georgia,"Times New Roman",serif;
  font-size:1.08rem;
  font-weight:700;
  margin-bottom:5px;
}
.urania-footer-tagline{
  color:var(--urania-muted);
  font-size:.84rem;
}
.urania-footer-links{
  display:flex;
  gap:20px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.urania-footer-links a{
  color:var(--urania-navy)!important;
  text-decoration:none!important;
  font-size:.82rem;
  font-weight:750;
}
.urania-footer-links a:hover{color:var(--urania-terracotta)!important}
.urania-footer-copy{
  grid-column:1/-1;
  padding-top:18px;
  border-top:1px solid var(--urania-line);
  color:var(--urania-muted);
  font-size:.72rem;
}

/* Neutralizza vecchi stili footer/header locali */
body > .footer,
body > footer.footer,
footer.footer{margin:0}
.urania-site-footer p,
.urania-site-footer small{margin:0}

@media(max-width:940px){
  .urania-site-header .urania-shell{flex-wrap:wrap;padding:13px 0}
  .urania-main-nav{order:3;width:100%;overflow-x:auto;padding-bottom:4px}
  .urania-main-nav a{flex:0 0 auto}
}
@media(max-width:650px){
  .urania-site-header .urania-shell,
  .urania-site-footer .urania-footer-inner{
    width:min(100% - 24px,1180px);
  }
  .urania-header-cta{display:none}
  .urania-brand span{font-size:1.2rem}
  .urania-site-footer .urania-footer-inner{
    grid-template-columns:1fr;
    min-height:auto;
    padding:30px 0;
  }
  .urania-footer-links{justify-content:flex-start}
}


/* Marchio Urania scelto — variante 2 */
.urania-brand img{background:#fff;border:1px solid rgba(13,49,87,.08);object-fit:cover!important;object-position:center 12%!important;padding:2px}
