/* MACA Home – optimisations mobile */
img { max-width: 100%; height: auto; }
body.page .wp-block-comments,
body.page .wp-block-post-comments-form,
body.home .wp-block-comments,
body.home .wp-block-post-comments-form { display: none !important; }

/* Barre d'appel fixe (visible uniquement sur téléphone) */
.maca-sticky-cta { display: none; }

@media (max-width: 781px) {
  body { padding-bottom: calc(68px + env(safe-area-inset-bottom, 0px)); }
  .maca-sticky-cta {
    display: flex;
    position: fixed;
    left: 0; right: 0; bottom: 0;
    z-index: 999;
    gap: 8px;
    padding: 10px 12px calc(10px + env(safe-area-inset-bottom, 0px));
    background: #1B2A4A;
    box-shadow: 0 -2px 12px rgba(0,0,0,.25);
  }
  .maca-sticky-cta a {
    flex: 1;
    text-align: center;
    padding: 14px 8px;
    border-radius: 2px;
    font-weight: 600;
    font-size: 1rem;
    text-decoration: none;
    line-height: 1.1;
  }
  .maca-sticky-cta .maca-call { background: #C9A84C; color: #1B2A4A; }
  .maca-sticky-cta .maca-quote { border: 2px solid #C9A84C; color: #C9A84C; }
}

@media (max-width: 600px) {
  .wp-block-buttons { width: 100%; }
  .wp-block-buttons > .wp-block-button { width: 100%; }
  .wp-block-button__link { display: block; width: 100%; text-align: center; padding: 14px 16px; box-sizing: border-box; }
  .wp-block-cover { min-height: 0 !important; }
  .wp-block-table, .wp-block-html { overflow-x: auto; }
}


.maca-sticky-cta a { font-family: var(--wp--preset--font-family--jost, sans-serif); }


/* === Aération : corrige les marges forcées à 0 par le thème === */
.wp-site-blocks .alignfull.wp-block-group:not(header):not(footer),
.wp-site-blocks .alignfull.wp-block-cover {
  padding-top: clamp(3.5rem, 8vw, 6rem) !important;
  padding-bottom: clamp(3.5rem, 8vw, 6rem) !important;
  padding-left: clamp(1.25rem, 5vw, 3.5rem) !important;
  padding-right: clamp(1.25rem, 5vw, 3.5rem) !important;
  box-sizing: border-box;
}
/* bandeau de confiance sous le haut de page : plus compact */
.wp-site-blocks main > .wp-block-cover + .wp-block-group.alignfull {
  padding-top: 1.5rem !important;
  padding-bottom: 1.5rem !important;
}
/* cartes et blocs colorés dans les colonnes */
.wp-site-blocks .wp-block-column > .wp-block-group.has-background:not(.alignfull),
.wp-site-blocks .wp-block-column > .wp-block-group.has-border-color:not(.alignfull) {
  padding: clamp(1.5rem, 4vw, 2.5rem) !important;
  box-sizing: border-box;
}
.wp-site-blocks .wp-block-column .wp-block-group.is-layout-constrained:not(.has-background):not(.alignfull) {
  padding-top: 1.25rem !important;
}
.wp-site-blocks .wp-block-columns { gap: clamp(1.75rem, 4vw, 3rem) !important; }
main p, .wp-block-post-content p { line-height: 1.7; }

/* === En-tête : barre de menu fixe === */
header.wp-block-template-part { position: sticky; top: 0; z-index: 200; }
.wp-site-blocks header.wp-block-group.alignfull.maca-header {
  padding: 1rem clamp(1rem, 4vw, 2.5rem) !important;
  box-shadow: 0 2px 10px rgba(0,0,0,.18);
}
.maca-header-cta { margin: 0 !important; }
@media (max-width: 781px) { .maca-header-cta { display: none !important; } }

/* === Pied de page === */
.wp-site-blocks footer.wp-block-group.alignfull {
  padding: clamp(3rem, 6vw, 4.5rem) clamp(1.25rem, 5vw, 3.5rem) 2rem !important;
}


/* === FAQ accordéon de l'accueil === */
.wp-block-details.maca-faq { border-bottom: 1px solid rgba(27,42,74,.18); padding: 1.1rem 0; }
.wp-block-details.maca-faq summary {
  cursor: pointer; font-family: var(--wp--preset--font-family--cormorant, serif);
  font-size: 1.35rem; font-weight: 600; color: #1B2A4A; line-height: 1.3;
}
.wp-block-details.maca-faq p { margin-top: .75rem; line-height: 1.7; font-family: var(--wp--preset--font-family--jost, sans-serif); }
.wp-block-details.maca-faq a { color: #1B2A4A; text-decoration: underline; text-decoration-color: #C9A84C; }


/* === En-tête clair avec logo === */
.wp-site-blocks header.wp-block-group.alignfull.maca-header {
  padding: 0.6rem clamp(1rem, 4vw, 2.5rem) !important;
  border-bottom: 2px solid #C9A84C;
}
.maca-header .wp-block-site-logo img { border-radius: 50%; width: 68px; height: auto; display: block; }
@media (max-width: 781px) { .maca-header .wp-block-site-logo img { width: 56px; } }
.wp-site-blocks .maca-header .wp-block-navigation__responsive-container:not(.is-menu-open) .wp-block-navigation-item__content {
  color: #1B2A4A !important;
}
.wp-site-blocks .maca-header .wp-block-navigation__responsive-container:not(.is-menu-open) .wp-block-navigation-item__content:hover {
  color: #C9A84C !important; opacity: 1;
}
.wp-site-blocks .maca-header .wp-block-navigation__responsive-container:not(.is-menu-open) .current-menu-item > .wp-block-navigation-item__content {
  color: #1B2A4A !important; border-bottom: 2px solid #C9A84C; padding-bottom: 2px;
}
.maca-header .wp-block-navigation__responsive-container-open,
.maca-header .wp-block-navigation__responsive-container-open svg { color: #1B2A4A; fill: #1B2A4A; }
.maca-header .is-menu-open .wp-block-navigation__responsive-container-close svg { fill: #C9A84C; }
/* logo rond dans le pied de page */
.wpcom-ai-footer-logo img { border-radius: 50%; }


/* === Typographie : serif classique (titres) + Manrope (textes) === */
@font-face { font-family: "MACA Serif"; font-style: normal; font-weight: 400; font-display: swap;
  src: url("/wp-content/themes/urbem/assets/fonts/libre-caslon-text/libre-caslon-text_normal_400.woff2") format("woff2"); }
@font-face { font-family: "MACA Serif"; font-style: normal; font-weight: 700; font-display: swap;
  src: url("/wp-content/themes/urbem/assets/fonts/libre-caslon-text/libre-caslon-text_normal_700.woff2") format("woff2"); }
@font-face { font-family: "MACA Serif"; font-style: italic; font-weight: 400; font-display: swap;
  src: url("/wp-content/themes/urbem/assets/fonts/libre-caslon-text/libre-caslon-text_italic_400.woff2") format("woff2"); }
:root {
  --maca-serif: "MACA Serif", "Libre Caslon Text", Georgia, "Times New Roman", serif;
  --maca-sans: Manrope, "Helvetica Neue", Arial, sans-serif;
}
.has-cormorant-font-family, .has-libre-caslon-text-font-family { font-family: var(--maca-serif) !important; }
.has-jost-font-family, .has-manrope-font-family { font-family: var(--maca-sans) !important; }
.wp-site-blocks h1, .wp-site-blocks h2, .wp-site-blocks h3 { font-family: var(--maca-serif); font-weight: 400 !important; }
.wp-site-blocks .wp-block-cover h1 { font-weight: 700 !important; }
.wp-site-blocks main h2.wp-block-heading { margin-bottom: 0.9rem; }
.maca-sticky-cta a, .wp-block-details.maca-faq p { font-family: var(--maca-sans) !important; }
.wp-block-details.maca-faq summary { font-family: var(--maca-serif) !important; font-weight: 400; }

/* === Couleurs : or plus foncé pour les textes sur fonds clairs (lisibilité) === */
.has-white-background-color .has-theme-3-color,
.has-theme-2-background-color .has-theme-3-color { color: #8C6F1E !important; }

/* trait doré sous les titres : un peu d'air */
div[style*="width:60px"][style*="height:2px"] { margin-top: 0.75rem !important; margin-bottom: 1.75rem !important; }

/* === Cartes de même hauteur === */
.wp-block-columns { align-items: stretch; }
.wp-block-column.is-vertically-aligned-stretch { display: flex; flex-direction: column; }
.wp-block-column.is-vertically-aligned-stretch > .wp-block-group { flex: 1 1 auto; height: 100%; box-sizing: border-box; }


/* === Défilé de photos des villes === */
.maca-defile { width: 100%; overflow-x: auto; scroll-snap-type: x mandatory; -webkit-overflow-scrolling: touch; padding-bottom: 0.75rem; }
.maca-defile-track { display: flex; width: max-content; }
.maca-defile-item { position: relative; flex: 0 0 auto; margin: 0 1rem 0 0; width: min(78vw, 340px); height: clamp(300px, 60vw, 420px); overflow: hidden; border-radius: 2px; scroll-snap-align: start; }
.maca-defile-item img { width: 100%; height: 100%; object-fit: cover; display: block; }
.maca-defile-item figcaption { position: absolute; left: 0; right: 0; bottom: 0; padding: 3rem 1rem 0.9rem; color: #fff; font-family: var(--maca-serif); font-size: 1.4rem; letter-spacing: .02em; background: linear-gradient(to top, rgba(27,42,74,.88), rgba(27,42,74,0)); }
.maca-defile-item.is-dup { display: none; }
@media (min-width: 900px) and (prefers-reduced-motion: no-preference) {
  .maca-defile { overflow: hidden; }
  .maca-defile-item.is-dup { display: block; }
  .maca-defile-track { animation: maca-defile 42s linear infinite; }
  .maca-defile:hover .maca-defile-track { animation-play-state: paused; }
}
@keyframes maca-defile { from { transform: translateX(0); } to { transform: translateX(-25%); } }


.maca-defile-item figcaption small { display: block; font-family: var(--maca-sans); font-size: 0.7rem; letter-spacing: 0; opacity: .85; margin-top: 0.2rem; }
