/* =====================================================
   migration.css — Fase 2 → REVISIONE #195 (TASK-1793483213796-92YB8)
   Aggiunte di integrazione per i template migrati nel design pes-renewal
   (DESIGN-SYSTEM.md v1.1). Lo style.css GLOBALE del tema pasta-esfizi
   NON è più caricato: restano solo componenti scoped — switcher lingua,
   header sticky, nav mobile, griglia segreti, quiz — ricolorati con i
   token del design approvato #182 (--nero, --oro, --crema …).
   ===================================================== */

/* ---- Header / nav (design #182: sticky, velo a 80px via main.js) ---- */
.site-header { position: sticky; top: 0; z-index: 100; background: var(--nero, #141311); color: var(--testo-scuro, #F5EBDD); }
.site-header .site-nav a.nav-cta { border: 1px solid var(--oro, #C8A460); padding: 8px 18px; color: var(--oro, #C8A460); }
.site-header .site-nav a.nav-cta:hover { background: var(--oro, #C8A460); color: var(--nero, #141311); }

/* ---- Switcher lingua ---- */
.lang-switcher { display: inline-flex; gap: 8px; align-items: center; margin: 0 12px; }
.lang-switcher .lang-link { text-transform: uppercase; font-size: 12px; letter-spacing: .08em; opacity: .75; color: inherit; }
.lang-switcher .lang-link[aria-current="true"] { opacity: 1; font-weight: 700; text-decoration: underline; text-underline-offset: 4px; }
.lc-menu-buttons { display: inline-flex; margin: 0 10px; }
.lc-menu-btn { font-size: 13px; text-decoration: underline; text-underline-offset: 3px; }

/* ---- Nav mobile ---- */
@media (max-width: 768px) {
  .site-header .site-nav { display: none; }
  .site-header .site-nav.open { display: flex; flex-direction: column; position: absolute; top: 100%; left: 0; right: 0; background: var(--nero, #141311); padding: 18px; gap: 12px; }
  .site-header .nav-toggle { display: block; }
}
@media (min-width: 769px) { .site-header .nav-toggle { display: none; } }

/* ---- Booking RMN ---- */
.booking-iframe { width: 100%; min-height: 720px; border: 0; }
.booking-iframe.iframe-loaded { min-height: 640px; }

/* ---- Galleria ---- */
.gallery-photo { width: 100%; display: block; border-radius: 6px; }
.gallery-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 20px; }
.gallery-float-logo { position: absolute; top: 12px; right: 12px; width: 48px; opacity: .85; }
.video-wrap { position: relative; }
.footer-social a { color: inherit; }

/* ---- Segreti (template-segreti.php, design #182) ---- */
.segreti-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 2rem; padding-block: 1rem; }
.segreto-card { border-top: 1px solid var(--oro, #C8A460); padding-top: 1.25rem; display: flex; flex-direction: column; gap: .6rem; }
.segreto-card .segreto-meta { display: flex; gap: .75rem; align-items: baseline; font-size: .8rem; letter-spacing: .12em; text-transform: uppercase; color: var(--oro-ink, #8C6F3F); }
.segreto-card .segreto-icona { font-size: 1.1rem; }
.segreto-card .segreto-categoria { border: 1px solid var(--oro-scuro, #B08D4E); border-radius: 999px; padding: 2px 10px; font-size: .68rem; letter-spacing: .1em; }
.segreto-card .segreto-titolo { font-family: var(--font-display, Georgia, serif); font-size: 1.45rem; line-height: 1.2; margin: 0; }
.segreto-card .segreto-titolo a { color: var(--testo-chiaro, #1A1A1A); text-decoration: none; }
.segreto-card .segreto-titolo a:hover { color: var(--oro-ink, #8C6F3F); }
.segreto-card .segreto-estratto { color: var(--testo-sec-chiaro, #5C554B); line-height: 1.6; margin: 0; flex-grow: 1; }
.segreto-card .segreto-link a { color: var(--oro-ink, #8C6F3F); font-size: .85rem; letter-spacing: .08em; text-transform: uppercase; }
section.dark .segreto-card { border-top-color: var(--oro, #C8A460); }
section.dark .segreto-card .segreto-titolo a { color: var(--crema, #F5EBDD); }
section.dark .segreto-card .segreto-titolo a:hover { color: var(--oro-lume, #E3C88A); }
section.dark .segreto-card .segreto-estratto { color: var(--testo-sec-scuro, #B8B0A4); }

/* ---- Quiz (ricolorato dai token #182; classi scoped .quiz-* 1:1 dal live) ---- */
.quiz-section { background: var(--crema-carta, #FBF7EF); color: var(--testo-chiaro, #1A1A1A); padding: clamp(3rem, 8vw, 5rem) 0; }
.quiz-container { max-width: 560px; margin: 0 auto; padding: 0 1.25rem; }
.quiz-card { background: #fff; border: 1px solid var(--oro, #C8A460); border-radius: 10px; padding: 2.25rem 1.75rem; text-align: center; box-shadow: 0 10px 30px rgba(20, 19, 17, .06); }
.quiz-intro-icon { font-size: 2.2rem; display: block; margin-bottom: .5rem; }
.quiz-title { font-family: var(--font-display, Georgia, serif); font-size: 1.7rem; margin: 0 0 .5rem; color: var(--nero, #141311); }
.quiz-subtitle { color: var(--testo-sec-chiaro, #5C554B); margin: 0 0 1.5rem; line-height: 1.6; }
.quiz-card input[type="email"] { width: 100%; padding: 12px 14px; border: 1px solid var(--oro-scuro, #B08D4E); border-radius: 6px; font-size: 1rem; margin-bottom: .75rem; background: var(--crema-carta, #FBF7EF); color: var(--testo-chiaro, #1A1A1A); }
.quiz-card label { display: block; font-size: .85rem; color: var(--testo-sec-chiaro, #5C554B); margin-bottom: 1.25rem; line-height: 1.5; }
.quiz-btn-start, .quiz-btn-next, .quiz-btn-retry, .quiz-btn-submit { display: inline-block; background: var(--nero, #141311); color: var(--crema, #F5EBDD); border: 1px solid var(--nero, #141311); padding: 12px 28px; border-radius: 999px; font-size: .9rem; letter-spacing: .08em; text-transform: uppercase; cursor: pointer; text-decoration: none; }
.quiz-btn-start:hover, .quiz-btn-next:hover, .quiz-btn-retry:hover, .quiz-btn-submit:hover { background: var(--oro, #C8A460); border-color: var(--oro, #C8A460); color: var(--nero, #141311); }
.quiz-btn-start:disabled { opacity: .5; cursor: not-allowed; }
.quiz-progress-bar { background: var(--crema, #F5EBDD); border-radius: 999px; height: 6px; margin: 1.25rem 0; overflow: hidden; }
.quiz-progress-fill { background: var(--oro, #C8A460); height: 100%; transition: width .3s ease; }
.quiz-question-text { font-family: var(--font-display, Georgia, serif); font-size: 1.25rem; margin: 0 0 1rem; }
.quiz-answer-list { list-style: none; padding: 0; margin: 0 0 1rem; text-align: left; }
.quiz-answer-list button { display: block; width: 100%; background: var(--crema-carta, #FBF7EF); color: var(--testo-chiaro, #1A1A1A); border: 1px solid var(--oro-scuro, #B08D4E); border-radius: 8px; padding: 12px 16px; margin-bottom: .6rem; cursor: pointer; font-size: 1rem; }
.quiz-answer-list button:hover { border-color: var(--oro, #C8A460); }
.quiz-answer-correct { border-color: var(--oro, #C8A460) !important; background: var(--crema, #F5EBDD) !important; }
.quiz-answer-wrong { opacity: .5; }
.quiz-feedback { font-weight: 700; margin: .5rem 0; }
.quiz-feedback.quiz-correct { color: var(--oro-ink, #8C6F3F); }
.quiz-feedback.quiz-wrong { color: #a33; }
.quiz-result-icon { font-size: 2.2rem; display: block; margin-bottom: .5rem; }
.quiz-error { color: #a33; font-size: .85rem; margin-top: .5rem; }