*{margin:0;padding:0;box-sizing:border-box;font-family:'Segoe UI',sans-serif}

body{
  background: radial-gradient(circle at top,#1e293b,#020617);
  color:#e5e7eb;
  min-height:100vh;
  display: flex;
  flex-direction: column; /* disposizione verticale */
}

#wrapper{
	flex:1;
}

header{
  display:flex;justify-content:space-between;align-items:center;
  padding:16px 24px;
  background:rgba(2,6,23,.8);
  backdrop-filter:blur(10px);
  position:sticky;top:0;z-index:100
}

h1,h2{font-weight:300}

a,a:visited {color:#38bdf8; text-decoration:none;}

.space-after{
	margin-bottom: 1em;
}

.twemoji {
    width: 1em;
    height: 1em;
    vertical-align: -0.1em;
    display: inline-block;
}

.twemoji-h2 {
    width: 1.5em;
    height: 1.5em;
    vertical-align: -0.4em;
    display: inline-block;
}

.logo{
	font-size:1.4rem;
	padding-left: 2em;
    background: url('/svg/myGalaxy.svg') no-repeat left center;
    background-size: 1.6em;
	color:#7dd3fc;
}

nav ul{display:flex;gap:20px;list-style:none}
nav a{text-decoration:none;color:#e5e7eb;padding:5px 0px;/*font-weight:500*/}
nav a:hover{    color:white;  border-bottom:3px solid white; }
nav a:visited{  color:white;  border-bottom:3px solid white; }
nav a.active{ color:#38bdf8; border-bottom:3px solid #38bdf8;}

.hamburger{display:none;font-size:1.8rem;cursor:pointer}

.hero{
  padding:40px 20px;
  text-align:center;
  background:linear-gradient(135deg,#0ea5e9,#6366f1,#8b5cf6);
  color:white;
}
.hero h1{font-size:2.6rem;margin-bottom:12px;font-weight:300}
.hero p {font-size:0.94em;}

.content{
  padding:32px 16px;
  max-width:1000px;
  margin:auto;
}

.content-container{
  padding:32px 16px;
  max-width:1000px;
  margin:auto;
}

.glass{
  background:rgba(255,255,255,.08);
  border-radius:16px;
  box-shadow:0 10px 30px rgba(0,0,0,.3);
  backdrop-filter:blur(12px);
}

.glass-in-glass{
  padding:18px 24px;
  background: rgba(255, 255, 255, .08);
  border-radius: 16px;
}

.card{
  padding:20px;
  scroll-margin-top: 80px;
}
.card:hover{
  box-shadow:0 20px 40px rgba(0,0,0,.4)
}
.card h3{
  font-size:1.3rem;
  margin-bottom:10px;
  color:#7dd3fc;
  font-weight:400;
}

footer{
  text-align:center;
  padding:24px;
  background: linear-gradient(135deg, #191943, #090933);
  margin-top:32px;
  text-shadow: 0px 0px 2px rgba(255,255,255,.6);
}

footer p{
	margin:0;
}

@media(max-width:768px){
  nav{display:none;position:absolute;top:70px;right:0;width:100%;background:rgba(2,6,23,.95)}
  nav ul{flex-direction:column;padding:20px}

  nav a:hover {
    border:0px;
  }
  nav a:visited {
    border:0px;
  }
  nav.show{display:block}
  .hamburger{display:block}
}

@media(max-height:460px){
  .hero{
	  padding:10px 10px;
	  text-align:center;
	  background:linear-gradient(135deg,#0ea5e9,#6366f1,#8b5cf6);
	  color:white
  }
  .hero h1{
	font-size: 2.0rem;
    margin-bottom: 8px;
  }
  .hero p{
	font-size: 0.8em;
  }
  #sunmoon{
	  max-width:200px;
  }
}



.lds-ellipsis,
.lds-ellipsis div {
  box-sizing: border-box;
}
.lds-ellipsis {
  /*display: inline-block;*/
  margin: 100px auto;
  position: relative;
  width: 80px;
  height: 80px;
}
.lds-ellipsis div {
  position: absolute;
  top: 33.33333px;
  width: 13.33333px;
  height: 13.33333px;
  border-radius: 50%;
  background: #9266CC;
  border:2px solid white;
  animation-timing-function: cubic-bezier(0, 1, 1, 0);
}
.lds-ellipsis div:nth-child(1) {
  left: 8px;
  animation: lds-ellipsis1 0.6s infinite;
}
.lds-ellipsis div:nth-child(2) {
  left: 8px;
  animation: lds-ellipsis2 0.6s infinite;
}
.lds-ellipsis div:nth-child(3) {
  left: 32px;
  animation: lds-ellipsis2 0.6s infinite;
}
.lds-ellipsis div:nth-child(4) {
  left: 56px;
  animation: lds-ellipsis3 0.6s infinite;
}
@keyframes lds-ellipsis1 {
  0% {
    transform: scale(0);
  }
  100% {
    transform: scale(1);
  }
}
@keyframes lds-ellipsis3 {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(0);
  }
}
@keyframes lds-ellipsis2 {
  0% {
    transform: translate(0, 0);
  }
  100% {
    transform: translate(24px, 0);
  }
}




