/*
Theme Name:  Astra Child — Rassena & RDS
Description: Child theme di Astra per Rassena & RDS Immobiliare
Author:      Nik
Template:    astra
Version:     1.1.0
Text Domain: astra-child
*/

/* ══════════════════════════════════════════════════
   FIX BLOG ARCHIVE — pagina /blog/
   ══════════════════════════════════════════════════ */

/* 1. Colore sfondo corretto (panna invece di azzurro Astra) */
body.blog,
body.blog.ast-plain-container {
    background-color: #F6F3ED !important;
}

/* 2. Header: Astra HFB non popola #ast-desktop-header sul blog
      archive. Mostriamo #ast-mobile-header che contiene il
      primary header bar con logo e barra di navigazione. */
body.blog #ast-mobile-header {
    display: block !important;
}
body.blog #ast-desktop-header {
    display: none !important;
}

/* 3. Su desktop: nasconde hamburger, mostra nav orizzontale */
@media (min-width: 922px) {
    body.blog [data-section="section-header-mobile-trigger"] {
        display: none !important;
    }
    body.blog .ast-mobile-header-content {
        display: none !important;
    }
    body.blog #ast-mobile-header .ast-primary-header-bar {
        display: grid !important;
    }
    body.blog .ast-builder-menu-mobile {
        display: block !important;
    }
    body.blog .ast-builder-menu-mobile .main-navigation {
        display: block !important;
    }
    body.blog .ast-builder-menu-mobile .main-header-menu {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
    }
    body.blog .ast-builder-menu-mobile .menu-item {
        display: flex !important;
        flex-direction: column !important;
    }
}
/* ================================================================
   RASSENA & RDS — BLOG EDITORIALE
   Da aggiungere in fondo al file:
   /wp-content/themes/astra-child/style.css
   ================================================================ */

/* --- Variabili brand (già presenti nel tema, ridichiarate per sicurezza) --- */
:root {
  --rds-travertino : #F6F3ED;
  --rds-salvia     : #7A9E7E;
  --rds-oro        : #B8975A;
  --rds-tufo       : #2A3D2E;
  --rds-ink        : #1C2B1E;
  --rds-muted      : #5a6e5d;
  --rds-serif      : 'Fraunces', Georgia, serif;
  --rds-sans       : 'Manrope', system-ui, sans-serif;
}

/* ─── RESET BLOG MAIN ──────────────────────────────────────────── */
.rassena-blog {
  background: var(--rds-travertino);
  padding: 0;
  margin: 0;
}

/* ─── LABEL UTILITY ────────────────────────────────────────────── */
.rds-label {
  display: inline-block;
  font-family: var(--rds-sans);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--rds-salvia);
  margin-bottom: 18px;
}
.rds-label--light {
  color: var(--rds-salvia);
  opacity: .9;
}

/* ─── HERO ─────────────────────────────────────────────────────── */
.rds-blog-hero {
  background: var(--rds-travertino);
  padding: 88px 24px 72px;
  text-align: center;
}
.rds-blog-hero__inner {
  max-width: 660px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.rds-blog-hero__title {
  font-family: var(--rds-serif) !important;
  font-size: clamp(2.2rem, 5vw, 3.4rem) !important;
  font-weight: 300 !important;
  color: var(--rds-tufo) !important;
  line-height: 1.12 !important;
  margin: 0 0 20px !important;
  letter-spacing: -.01em;
}
.rds-blog-hero__sub {
  font-family: var(--rds-sans);
  font-size: 1rem;
  line-height: 1.75;
  color: var(--rds-muted);
  max-width: 540px;
  margin: 0;
}
.rds-blog-hero__line {
  width: 48px;
  height: 2px;
  background: var(--rds-oro);
  margin-top: 40px;
  opacity: .7;
}

/* ─── GRIGLIA ──────────────────────────────────────────────────── */
.rds-blog-grid-section {
  background: var(--rds-travertino);
  padding: 56px 24px 96px;
}
.rds-blog-grid-wrap {
  max-width: 1120px;
  margin: 0 auto;
}
.rds-blog-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 28px;
}
@media (max-width: 960px) {
  .rds-blog-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 580px) {
  .rds-blog-grid { grid-template-columns: 1fr; gap: 20px; }
}

/* ─── CARD ─────────────────────────────────────────────────────── */
.rds-card {
  background: #fff;
  border-radius: 3px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  box-shadow: 0 2px 8px rgba(42,61,46,.06);
  transition: box-shadow .3s ease, transform .3s ease;
}
.rds-card:hover {
  box-shadow: 0 10px 36px rgba(42,61,46,.13);
  transform: translateY(-2px);
}

/* Immagine */
.rds-card__img-link {
  display: block;
  overflow: hidden;
  aspect-ratio: 16 / 9;
}
.rds-card__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .5s ease;
}
.rds-card:hover .rds-card__img {
  transform: scale(1.04);
}
.rds-card__img-placeholder {
  width: 100%;
  height: 100%;
  background: linear-gradient(135deg, #e8e4dc 0%, #d4cfc6 100%);
}

/* Corpo card */
.rds-card__body {
  padding: 22px 24px 24px;
  display: flex;
  flex-direction: column;
  flex: 1;
}
.rds-card__meta {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 10px;
}
.rds-card__cat {
  font-family: var(--rds-sans);
  font-size: 9px;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--rds-salvia);
}
.rds-card__cat a {
  color: inherit;
  text-decoration: none;
}
.rds-card__sep {
  color: #b0bdb2;
  font-size: 10px;
}
.rds-card__date {
  font-family: var(--rds-sans);
  font-size: 10px;
  color: #8a9e8d;
}
.rds-card__title {
  font-family: var(--rds-serif) !important;
  font-size: 1.2rem !important;
  font-weight: 400 !important;
  line-height: 1.3 !important;
  color: var(--rds-tufo) !important;
  margin: 0 0 10px !important;
}
.rds-card__title a {
  color: inherit;
  text-decoration: none;
  transition: color .2s;
}
.rds-card__title a:hover {
  color: var(--rds-oro);
}
.rds-card__excerpt {
  font-family: var(--rds-sans);
  font-size: .88rem;
  line-height: 1.65;
  color: var(--rds-muted);
  margin: 0 0 20px;
  flex: 1;
}
.rds-card__cta {
  font-family: var(--rds-sans);
  font-size: .78rem;
  font-weight: 600;
  letter-spacing: .07em;
  text-transform: uppercase;
  color: var(--rds-oro);
  text-decoration: none;
  align-self: flex-start;
  padding-bottom: 2px;
  border-bottom: 1px solid transparent;
  transition: border-color .2s, color .2s;
}
.rds-card__cta:hover {
  border-color: var(--rds-oro);
}

/* Stato vuoto */
.rds-blog-empty {
  text-align: center;
  padding: 80px 0;
  font-family: var(--rds-sans);
  font-size: 1rem;
  color: var(--rds-muted);
}

/* ─── NEWSLETTER CTA ───────────────────────────────────────────── */
.rds-blog-newsletter {
  background: var(--rds-tufo);
  padding: 80px 24px;
  text-align: center;
}
.rds-blog-newsletter__inner {
  max-width: 580px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.rds-blog-newsletter__title {
  font-family: var(--rds-serif) !important;
  font-size: clamp(1.7rem, 4vw, 2.5rem) !important;
  font-weight: 300 !important;
  color: var(--rds-travertino) !important;
  margin: 0 0 14px !important;
  line-height: 1.2 !important;
}
.rds-blog-newsletter__sub {
  font-family: var(--rds-sans);
  font-size: .92rem;
  line-height: 1.7;
  color: rgba(246,243,237,.65);
  margin: 0 0 36px;
  max-width: 460px;
}
.rds-blog-newsletter__btn {
  display: inline-block;
  font-family: var(--rds-sans);
  font-size: .82rem;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--rds-tufo);
  background: var(--rds-oro);
  padding: 15px 36px;
  text-decoration: none;
  border-radius: 2px;
  transition: background .25s, transform .2s;
}
.rds-blog-newsletter__btn:hover {
  background: var(--rds-travertino);
  transform: translateY(-1px);
}

/* ================================================================
   SINGOLO POST — single.php di Astra
   ================================================================ */

body.single-post {
  background: var(--rds-travertino) !important;
}

/* Contenitore principale */
body.single-post .ast-container,
body.single-post #primary,
body.single-post .site-main {
  max-width: 100% !important;
  padding: 0 !important;
}
body.single-post article.post {
  max-width: 700px;
  margin: 0 auto;
  padding: 64px 24px 96px;
}

/* Titolo */
body.single-post .entry-title {
  font-family: var(--rds-serif) !important;
  font-size: clamp(1.9rem, 4.5vw, 3rem) !important;
  font-weight: 300 !important;
  color: var(--rds-tufo) !important;
  line-height: 1.18 !important;
  margin-bottom: 16px !important;
  letter-spacing: -.01em;
}

/* Meta (data, autore) */
body.single-post .entry-meta {
  font-family: var(--rds-sans) !important;
  font-size: .82rem !important;
  color: #8a9e8d !important;
  margin-bottom: 40px !important;
  padding-bottom: 32px !important;
  border-bottom: 1px solid rgba(42,61,46,.12) !important;
}
body.single-post .entry-meta a {
  color: var(--rds-salvia) !important;
  text-decoration: none;
}

/* Featured image */
body.single-post .post-thumb {
  margin-bottom: 40px;
  border-radius: 3px;
  overflow: hidden;
}
body.single-post .post-thumb img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 3px;
}

/* Corpo testo */
body.single-post .entry-content {
  font-family: var(--rds-sans) !important;
  font-size: 1.05rem !important;
  line-height: 1.82 !important;
  color: var(--rds-ink) !important;
}
body.single-post .entry-content p {
  margin-bottom: 1.5em;
}
body.single-post .entry-content h2 {
  font-family: var(--rds-serif) !important;
  font-size: 1.6rem !important;
  font-weight: 400 !important;
  color: var(--rds-tufo) !important;
  margin-top: 2.5rem !important;
  margin-bottom: .8rem !important;
}
body.single-post .entry-content h3 {
  font-family: var(--rds-serif) !important;
  font-size: 1.25rem !important;
  font-weight: 400 !important;
  color: var(--rds-tufo) !important;
  margin-top: 2rem !important;
}
body.single-post .entry-content a {
  color: var(--rds-oro) !important;
  text-decoration: underline;
  text-underline-offset: 3px;
}
body.single-post .entry-content img {
  border-radius: 3px;
  max-width: 100%;
  height: auto;
  margin: 1.5rem 0;
}
body.single-post .entry-content blockquote {
  border-left: 3px solid var(--rds-salvia);
  padding: 12px 24px;
  margin: 2rem 0;
  background: rgba(122,158,126,.06);
  font-style: italic;
  color: var(--rds-tufo);
}

/* Footer post */
body.single-post .entry-footer {
  margin-top: 48px;
  padding-top: 28px;
  border-top: 1px solid rgba(42,61,46,.12);
  font-family: var(--rds-sans);
  font-size: .82rem;
  color: #8a9e8d;
}
body.single-post .entry-footer a {
  color: var(--rds-salvia);
  text-decoration: none;
}

/* Navigazione post precedente/successivo */
body.single-post .post-navigation {
  max-width: 700px;
  margin: 0 auto;
  padding: 40px 24px 64px;
  display: flex;
  justify-content: space-between;
  gap: 16px;
  font-family: var(--rds-sans);
  font-size: .85rem;
}
body.single-post .post-navigation a {
  color: var(--rds-oro);
  text-decoration: none;
  font-weight: 600;
}
body.single-post .post-navigation a:hover {
  color: var(--rds-tufo);
}

/* Sezione commenti (nascosta se non serve) */
body.single-post #comments {
  max-width: 700px;
  margin: 0 auto;
  padding: 0 24px 64px;
}
/* ================================================================
   RASSENA & RDS — BLOG EDITORIALE
   Da aggiungere in fondo al file:
   /wp-content/themes/astra-child/style.css
   ================================================================ */

/* --- Variabili brand (già presenti nel tema, ridichiarate per sicurezza) --- */
:root {
  --rds-travertino : #F6F3ED;
  --rds-salvia     : #7A9E7E;
  --rds-oro        : #B8975A;
  --rds-tufo       : #2A3D2E;
  --rds-ink        : #1C2B1E;
  --rds-muted      : #5a6e5d;
  --rds-serif      : 'Fraunces', Georgia, serif;
  --rds-sans       : 'Manrope', system-ui, sans-serif;
}

/* ─── RESET BLOG MAIN ──────────────────────────────────────────── */
.rassena-blog {
  background: var(--rds-travertino);
  padding: 0;
  margin: 0;
}

/* ─── LABEL UTILITY ────────────────────────────────────────────── */
.rds-label {
  display: inline-block;
  font-family: var(--rds-sans);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--rds-salvia);
  margin-bottom: 18px;
}
.rds-label--light {
  color: var(--rds-salvia);
  opacity: .9;
}

/* ─── HERO ─────────────────────────────────────────────────────── */
.rds-blog-hero {
  background: var(--rds-travertino);
  padding: 88px 24px 72px;
  text-align: center;
}
.rds-blog-hero__inner {
  max-width: 660px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.rds-blog-hero__title {
  font-family: var(--rds-serif) !important;
  font-size: clamp(2.2rem, 5vw, 3.4rem) !important;
  font-weight: 300 !important;
  color: var(--rds-tufo) !important;
  line-height: 1.12 !important;
  margin: 0 0 20px !important;
  letter-spacing: -.01em;
}
.rds-blog-hero__sub {
  font-family: var(--rds-sans);
  font-size: 1rem;
  line-height: 1.75;
  color: var(--rds-muted);
  max-width: 540px;
  margin: 0;
}
.rds-blog-hero__line {
  width: 48px;
  height: 2px;
  background: var(--rds-oro);
  margin-top: 40px;
  opacity: .7;
}

/* ─── GRIGLIA ──────────────────────────────────────────────────── */
.rds-blog-grid-section {
  background: var(--rds-travertino);
  padding: 56px 24px 96px;
}
.rds-blog-grid-wrap {
  max-width: 1120px;
  margin: 0 auto;
}
.rds-blog-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 28px;
}
@media (max-width: 960px) {
  .rds-blog-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 580px) {
  .rds-blog-grid { grid-template-columns: 1fr; gap: 20px; }
}

/* ─── CARD ─────────────────────────────────────────────────────── */
.rds-card {
  background: #fff;
  border-radius: 3px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  box-shadow: 0 2px 8px rgba(42,61,46,.06);
  transition: box-shadow .3s ease, transform .3s ease;
}
.rds-card:hover {
  box-shadow: 0 10px 36px rgba(42,61,46,.13);
  transform: translateY(-2px);
}

/* Immagine */
.rds-card__img-link {
  display: block;
  overflow: hidden;
  aspect-ratio: 16 / 9;
}
.rds-card__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .5s ease;
}
.rds-card:hover .rds-card__img {
  transform: scale(1.04);
}
.rds-card__img-placeholder {
  width: 100%;
  height: 100%;
  background: linear-gradient(135deg, #e8e4dc 0%, #d4cfc6 100%);
}

/* Corpo card */
.rds-card__body {
  padding: 22px 24px 24px;
  display: flex;
  flex-direction: column;
  flex: 1;
}
.rds-card__meta {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 10px;
}
.rds-card__cat {
  font-family: var(--rds-sans);
  font-size: 9px;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--rds-salvia);
}
.rds-card__cat a {
  color: inherit;
  text-decoration: none;
}
.rds-card__sep {
  color: #b0bdb2;
  font-size: 10px;
}
.rds-card__date {
  font-family: var(--rds-sans);
  font-size: 10px;
  color: #8a9e8d;
}
.rds-card__title {
  font-family: var(--rds-serif) !important;
  font-size: 1.2rem !important;
  font-weight: 400 !important;
  line-height: 1.3 !important;
  color: var(--rds-tufo) !important;
  margin: 0 0 10px !important;
}
.rds-card__title a {
  color: inherit;
  text-decoration: none;
  transition: color .2s;
}
.rds-card__title a:hover {
  color: var(--rds-oro);
}
.rds-card__excerpt {
  font-family: var(--rds-sans);
  font-size: .88rem;
  line-height: 1.65;
  color: var(--rds-muted);
  margin: 0 0 20px;
  flex: 1;
}
.rds-card__cta {
  font-family: var(--rds-sans);
  font-size: .78rem;
  font-weight: 600;
  letter-spacing: .07em;
  text-transform: uppercase;
  color: var(--rds-oro);
  text-decoration: none;
  align-self: flex-start;
  padding-bottom: 2px;
  border-bottom: 1px solid transparent;
  transition: border-color .2s, color .2s;
}
.rds-card__cta:hover {
  border-color: var(--rds-oro);
}

/* Stato vuoto */
.rds-blog-empty {
  text-align: center;
  padding: 80px 0;
  font-family: var(--rds-sans);
  font-size: 1rem;
  color: var(--rds-muted);
}

/* ─── NEWSLETTER CTA ───────────────────────────────────────────── */
.rds-blog-newsletter {
  background: var(--rds-tufo);
  padding: 80px 24px;
  text-align: center;
}
.rds-blog-newsletter__inner {
  max-width: 580px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.rds-blog-newsletter__title {
  font-family: var(--rds-serif) !important;
  font-size: clamp(1.7rem, 4vw, 2.5rem) !important;
  font-weight: 300 !important;
  color: var(--rds-travertino) !important;
  margin: 0 0 14px !important;
  line-height: 1.2 !important;
}
.rds-blog-newsletter__sub {
  font-family: var(--rds-sans);
  font-size: .92rem;
  line-height: 1.7;
  color: rgba(246,243,237,.65);
  margin: 0 0 36px;
  max-width: 460px;
}
.rds-blog-newsletter__btn {
  display: inline-block;
  font-family: var(--rds-sans);
  font-size: .82rem;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--rds-tufo);
  background: var(--rds-oro);
  padding: 15px 36px;
  text-decoration: none;
  border-radius: 2px;
  transition: background .25s, transform .2s;
}
.rds-blog-newsletter__btn:hover {
  background: var(--rds-travertino);
  transform: translateY(-1px);
}

/* ================================================================
   SINGOLO POST — single.php di Astra
   ================================================================ */

body.single-post {
  background: var(--rds-travertino) !important;
}

/* Contenitore principale */
body.single-post .ast-container,
body.single-post #primary,
body.single-post .site-main {
  max-width: 100% !important;
  padding: 0 !important;
}
body.single-post article.post {
  max-width: 700px;
  margin: 0 auto;
  padding: 64px 24px 96px;
}

/* Titolo */
body.single-post .entry-title {
  font-family: var(--rds-serif) !important;
  font-size: clamp(1.9rem, 4.5vw, 3rem) !important;
  font-weight: 300 !important;
  color: var(--rds-tufo) !important;
  line-height: 1.18 !important;
  margin-bottom: 16px !important;
  letter-spacing: -.01em;
}

/* Meta (data, autore) */
body.single-post .entry-meta {
  font-family: var(--rds-sans) !important;
  font-size: .82rem !important;
  color: #8a9e8d !important;
  margin-bottom: 40px !important;
  padding-bottom: 32px !important;
  border-bottom: 1px solid rgba(42,61,46,.12) !important;
}
body.single-post .entry-meta a {
  color: var(--rds-salvia) !important;
  text-decoration: none;
}

/* Featured image */
body.single-post .post-thumb {
  margin-bottom: 40px;
  border-radius: 3px;
  overflow: hidden;
}
body.single-post .post-thumb img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 3px;
}

/* Corpo testo */
body.single-post .entry-content {
  font-family: var(--rds-sans) !important;
  font-size: 1.05rem !important;
  line-height: 1.82 !important;
  color: var(--rds-ink) !important;
}
body.single-post .entry-content p {
  margin-bottom: 1.5em;
}
body.single-post .entry-content h2 {
  font-family: var(--rds-serif) !important;
  font-size: 1.6rem !important;
  font-weight: 400 !important;
  color: var(--rds-tufo) !important;
  margin-top: 2.5rem !important;
  margin-bottom: .8rem !important;
}
body.single-post .entry-content h3 {
  font-family: var(--rds-serif) !important;
  font-size: 1.25rem !important;
  font-weight: 400 !important;
  color: var(--rds-tufo) !important;
  margin-top: 2rem !important;
}
body.single-post .entry-content a {
  color: var(--rds-oro) !important;
  text-decoration: underline;
  text-underline-offset: 3px;
}
body.single-post .entry-content img {
  border-radius: 3px;
  max-width: 100%;
  height: auto;
  margin: 1.5rem 0;
}
body.single-post .entry-content blockquote {
  border-left: 3px solid var(--rds-salvia);
  padding: 12px 24px;
  margin: 2rem 0;
  background: rgba(122,158,126,.06);
  font-style: italic;
  color: var(--rds-tufo);
}

/* Footer post */
body.single-post .entry-footer {
  margin-top: 48px;
  padding-top: 28px;
  border-top: 1px solid rgba(42,61,46,.12);
  font-family: var(--rds-sans);
  font-size: .82rem;
  color: #8a9e8d;
}
body.single-post .entry-footer a {
  color: var(--rds-salvia);
  text-decoration: none;
}

/* Navigazione post precedente/successivo */
body.single-post .post-navigation {
  max-width: 700px;
  margin: 0 auto;
  padding: 40px 24px 64px;
  display: flex;
  justify-content: space-between;
  gap: 16px;
  font-family: var(--rds-sans);
  font-size: .85rem;
}
body.single-post .post-navigation a {
  color: var(--rds-oro);
  text-decoration: none;
  font-weight: 600;
}
body.single-post .post-navigation a:hover {
  color: var(--rds-tufo);
}

/* Sezione commenti (nascosta se non serve) */
body.single-post #comments {
  max-width: 700px;
  margin: 0 auto;
  padding: 0 24px 64px;
}