/*
Theme Name: Sara Fiorito
Theme URI: https://www.sarafiorito.it
Author: Global Web Agency
Author URI: https://www.global-web.it
Description: Tema custom dedicato a Sara Fiorito — landing "Lasciati guidare, ti farò sognare" e base per le pagine future del sito. Responsive desktop/mobile. Testi editabili da Aspetto → Personalizza. Non dipende da altri temi.
Version: 1.0.7
Requires at least: 6.0
Tested up to: 6.7
Requires PHP: 7.3
License: Proprietario — Global Web Agency
Text Domain: sarafiorito
*/

:root{
  --cream:#f5e7de;
  --cream-worlds:#f6e7e0;
  --ink:#403f3d;
  --burgundy:#8f4a5a;
  --rose:#b05a6a;
  --nav:#4a4644;
  --c-eventi:#b45f6f;
  --c-teatro:#6d2f35;
  --c-ia:#256b62;
  --c-mamma:#c8482b;
  --c-gioielleria:#a8425e;
  --serif:"EB Garamond",Georgia,serif;
  --display:"Cormorant Garamond",Georgia,serif;
  --script:"Dancing Script",cursive;
  --maxw:1120px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--cream);color:var(--ink);font-family:var(--serif);
  -webkit-font-smoothing:antialiased;font-size:18px;line-height:1.5}
img{display:block;max-width:100%}
a{color:inherit}
.container{max-width:var(--maxw);margin:0 auto;padding-left:26px;padding-right:26px}

/* ============ HEADER ============ */
.site-header{background:var(--cream);position:sticky;top:0;z-index:60}
.header-inner{max-width:var(--maxw);margin:0 auto;display:flex;align-items:center;
  gap:20px;padding:12px 26px}
.brand{display:flex;align-items:center;gap:14px;flex:0 0 auto;text-decoration:none}
.brand-logo{width:96px;height:96px;border-radius:0;object-fit:contain;flex:0 0 auto}
.brand-txt{display:flex;flex-direction:column;line-height:1}
.brand-name{font-family:var(--display);font-weight:500;font-size:23px;
  letter-spacing:.24em;color:#2f2c2b;padding-left:.24em}
.brand-tag{font-family:var(--display);font-style:italic;font-size:14.5px;
  color:#6a5f5c;margin-top:7px}
.main-nav{display:flex;align-items:center;gap:15px;margin-left:auto;flex-wrap:nowrap}
.main-nav a{font-family:var(--display);text-decoration:none;color:var(--nav);
  font-size:13px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;
  white-space:nowrap;padding-bottom:3px;transition:color .2s}
.main-nav a:hover{color:var(--rose)}
.main-nav a.active,.main-nav li.current-menu-item>a,.main-nav .current_page_item>a{
  color:var(--rose);border-bottom:1.5px solid var(--rose)}
.main-nav ul{list-style:none;display:flex;align-items:center;gap:15px;margin:0;padding:0}
.btn-cta{font-family:var(--display);font-size:13px;font-weight:600;
  letter-spacing:.1em;text-transform:uppercase;color:#fff;text-decoration:none;
  padding:11px 20px;border-radius:2px;white-space:nowrap;flex:0 0 auto;
  background:linear-gradient(100deg,#8a4657 0%,#a25e6d 55%,#7b3a49 100%);
  box-shadow:0 2px 10px rgba(120,55,72,.28)}
.nav-toggle{display:none;flex:0 0 auto;margin-left:auto;background:none;border:0;
  cursor:pointer;width:44px;height:44px;padding:9px}
.nav-toggle span{display:block;height:2px;background:#5a4a48;margin:5px 0;border-radius:2px;transition:.25s}

/* ============ HERO ============ */
.hero{position:relative;max-width:var(--maxw);margin:0 auto;min-height:900px}
.hero-img{position:absolute;top:0;right:0;width:54%;height:auto;z-index:1}
.hero-copy{position:relative;z-index:2;width:56%;padding:30px 0 30px 26px;
  color:var(--ink);font-size:16.5px;line-height:1.46}
.hero-copy p{margin-bottom:1.12em}
.hero-copy p:last-child{margin-bottom:0}

/* ============ I MIEI MONDI ============ */
.worlds{background:var(--cream-worlds);padding:6px 0 60px}
.worlds-inner{max-width:var(--maxw);margin:0 auto;padding:0 26px;position:relative}
.script-sub{font-family:var(--script);color:var(--rose);font-size:30px;
  font-weight:600;line-height:1;padding:16px 0 4px}
.worlds-title{font-family:var(--display);text-align:center;font-size:38px;
  font-weight:500;color:#4a4644;letter-spacing:.02em;margin:2px 0 40px}
.worlds-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:0}
.world{position:relative;padding:0 14px;text-align:center;display:flex;
  flex-direction:column;align-items:center}
.world + .world::before{content:"";position:absolute;left:0;top:96px;bottom:14px;
  width:1px;background:linear-gradient(to bottom,transparent,rgba(150,110,90,.32) 18%,rgba(150,110,90,.32) 82%,transparent)}
.world-brush{width:100%;max-width:172px;height:auto;margin-bottom:10px}
.world-name{font-family:var(--display);font-size:22px;font-weight:600;
  letter-spacing:.1em;text-transform:uppercase;margin-bottom:15px;line-height:1.15}
.world-desc{font-family:var(--serif);font-size:15.5px;line-height:1.42;
  color:#4a4644;margin-bottom:18px}
.world-link{font-family:var(--display);font-size:13px;font-weight:600;
  letter-spacing:.16em;text-transform:uppercase;text-decoration:none}
.w-eventi .world-name,.w-eventi .world-link{color:var(--c-eventi)}
.w-teatro .world-name,.w-teatro .world-link{color:var(--c-teatro)}
.w-ia .world-name,.w-ia .world-link{color:var(--c-ia)}
.w-mamma .world-name,.w-mamma .world-link{color:var(--c-mamma)}
.w-gioielleria .world-name,.w-gioielleria .world-link{color:var(--c-gioielleria)}

/* ============ FOOTER ============ */
.footer-banner{max-width:var(--maxw);margin:0 auto}
.footer-banner img{width:100%;height:auto}
.footer-social{background:var(--cream);text-align:center;padding:34px 26px 70px}
.footer-social p{font-family:var(--display);font-size:20px;color:#7a5a52;
  letter-spacing:.02em;margin-bottom:16px}
.social-links{display:flex;justify-content:center;gap:22px}
.social-links a{display:inline-flex;align-items:center;justify-content:center;
  width:50px;height:50px;border-radius:50%;color:#fff;transition:transform .2s,box-shadow .2s;
  background:linear-gradient(135deg,#a25e6d,#7b3a49);box-shadow:0 3px 12px rgba(120,55,72,.28)}
.social-links a:hover{transform:translateY(-3px);box-shadow:0 6px 18px rgba(120,55,72,.36)}
.social-links svg{width:24px;height:24px;fill:#fff}
.footer-contact{margin-top:20px;font-family:var(--display);font-size:17.5px;
  color:#7a5a52;letter-spacing:.01em}
.footer-contact a{color:#8f4a5a;text-decoration:none;transition:color .2s}
.footer-contact a:hover{color:var(--rose)}
.footer-contact .sep{margin:0 12px;color:#b79a91}
.site-bottom{background:var(--cream);height:40px}
@media(max-width:520px){
  .footer-contact{line-height:1.8}
  .footer-contact .sep{display:none}
  .footer-contact a{display:block}
}

/* ============ RESPONSIVE ============ */
@media(max-width:1150px){
  .nav-toggle{display:block}
  .main-nav{position:absolute;top:100%;right:0;left:0;flex-direction:column;
    align-items:stretch;gap:0;background:var(--cream);box-shadow:0 12px 24px rgba(80,50,45,.14);
    padding:8px 0;display:none}
  .main-nav.open{display:flex}
  .main-nav ul{flex-direction:column;align-items:stretch;gap:0;width:100%}
  .main-nav a{padding:13px 28px;border-bottom:0}
  .main-nav a.active,.main-nav li.current-menu-item>a{border-bottom:0;background:rgba(176,90,106,.08)}
  .header-inner{flex-wrap:wrap;position:relative}
  .btn-cta{order:3}
}
@media(max-width:900px){
  .hero{min-height:0}
  .hero-img{position:relative;width:100%;max-width:520px;margin:14px auto 0}
  .hero-copy{width:100%;padding:24px 22px 6px}
  .worlds-grid{grid-template-columns:repeat(3,1fr);gap:34px 0}
  .world + .world::before{display:none}
  .world:nth-child(3n+2)::before,.world:nth-child(3n+3)::before{content:"";position:absolute;left:0;top:96px;bottom:14px;width:1px;background:linear-gradient(to bottom,transparent,rgba(150,110,90,.3) 18%,rgba(150,110,90,.3) 82%,transparent)}
  .worlds-title{font-size:32px}
}
@media(max-width:680px){
  body{font-size:17px}
  .worlds-grid{grid-template-columns:repeat(2,1fr);gap:32px 0}
  .world::before,.world:nth-child(n)::before{display:none!important}
  .btn-cta{padding:11px 20px;font-size:13px}
  .brand-name{font-size:20px;letter-spacing:.3em}
  .brand-logo{width:76px;height:76px}
  .footer-social{padding:28px 20px 56px}
}
@media(max-width:460px){
  .worlds-grid{grid-template-columns:1fr;gap:30px 0}
  .worlds-title{font-size:28px}
  .script-sub{font-size:26px}
  .brand-tag{font-size:13px}
}
