@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;0,700;1,300;1,400&family=Inter:wght@300;400;500;600;700&display=swap');

/* Tema condiviso header/footer per tutte le pagine */
:root{
  --gold:#E8E0D0;
  --gold-dark:#C4B89A;
  --white:#FFFFFF;
  --text:#2A2A2A;
  --text-light:#6B6B6B;
  --bg:#F7F5F0;
  --font-serif:'Cormorant Garamond','Georgia',serif;
  --font-sans:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
}

body{cursor:none;position:relative}
.cursor-dot{position:fixed;top:0;left:0;width:4px;height:4px;background:var(--text);border-radius:50%;pointer-events:none;z-index:100000;transform:translate(-50%,-50%);transition:width .2s,height .2s,background .3s}
.cursor-ring{position:fixed;top:0;left:0;width:32px;height:32px;border:1px solid var(--gold-dark);border-radius:50%;pointer-events:none;z-index:99999;transform:translate(-50%,-50%);transition:width .4s ease,height .4s ease,border-color .3s,opacity .3s;animation:cursorBreath 3s ease-in-out infinite}
.cursor-ring.hover{width:48px;height:48px;border-color:var(--gold);background:rgba(196,184,154,.12)}
@keyframes cursorBreath{0%,100%{box-shadow:0 0 0 0 rgba(196,184,154,.1)}50%{box-shadow:0 0 0 8px rgba(196,184,154,0)}}
@media(max-width:768px){.cursor-dot,.cursor-ring{display:none!important}body,a,button,input,textarea{cursor:auto!important}}

/* Layout nav: common.css (#mainNav.site-nav + hamburger) */
#mainNav.site-nav{
  background:var(--bg);
}

.nav-logo{
  font-family:var(--font-serif);
  font-size:1.25rem;
  font-weight:400;
  letter-spacing:2px;
  color:var(--text);
  text-decoration:none;
}

.nav-logo span{color:var(--gold-dark)}

.nav-links{
  display:flex;
  align-items:center;
  gap:14px;
  flex-wrap:wrap;
}

.nav-links a{
  font-size:.72rem;
  letter-spacing:1.6px;
  text-transform:uppercase;
  color:var(--text-light);
  text-decoration:none;
}

.nav-links a:hover{color:var(--text)}

.lang-toggle{
  border:1px solid var(--gold-dark);
  color:var(--text-light);
  background:transparent;
  padding:5px 10px;
  font-size:.68rem;
  letter-spacing:1.3px;
  text-transform:uppercase;
  font-family:var(--font-sans);
}

.lang-toggle:hover{
  background:var(--gold-dark);
  color:var(--white);
}

footer{
  background:var(--text);
  color:var(--gold);
  padding:40px 24px 24px;
  text-align:center;
  border-top:1px solid rgba(196,184,154,.35);
}

footer .footer-logo{
  font-family:var(--font-serif);
  font-size:1.45rem;
  letter-spacing:3px;
  margin-bottom:10px;
}

footer p{
  margin:6px 0;
  font-size:.78rem;
  color:rgba(232,224,208,.7);
}

footer a{
  color:rgba(232,224,208,.9);
  text-decoration:none;
}

footer a:hover{color:var(--gold)}

#adminNav{
  position:relative;
  z-index:100;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:14px 20px;
  border-bottom:1px solid rgba(196,184,154,.45);
  background:var(--bg);
}

.admin-nav-logo{
  font-family:var(--font-serif);
  font-size:1.1rem;
  letter-spacing:1.4px;
  color:var(--text);
  text-decoration:none;
}

.admin-nav-links{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}

.admin-nav-links a{
  font-size:.68rem;
  letter-spacing:1.3px;
  text-transform:uppercase;
  color:var(--text-light);
  text-decoration:none;
  border:1px solid var(--gold-dark);
  padding:6px 10px;
  border-radius:3px;
}

.admin-nav-links a:hover{
  background:var(--gold-dark);
  color:var(--white);
}
