/* Ajuste final: todas las traducciones siguen la maquetación española. */
body.layout-sync {
  --content: min(1180px, calc(100% - 32px));
  --wide: min(1320px, calc(100% - 32px));
  background: var(--cream, #f4eadf);
  color: var(--ink, #2f2b2a);
}

body.layout-sync .topbar {
  display: block !important;
  width: 100% !important;
  min-height: 72px;
  padding: 0 !important;
  overflow: visible !important;
}
body.layout-sync .topbar > .wrap {
  position: relative !important;
  left: auto !important;
  right: auto !important;
  width: var(--wide) !important;
  max-width: 1320px !important;
  min-height: 72px;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  transform: none !important;
}

body.layout-sync main > :is(.hero,.page-hero,.route-hero,.cover) {
  padding: 68px max(16px, calc((100% - 1180px) / 2)) !important;
  border-bottom: 1px solid var(--line, #d8c5b6);
  background: linear-gradient(115deg,#efe1d4,#fffaf4) !important;
}
body.layout-sync main > :is(.hero,.page-hero,.route-hero,.cover) > .wrap { width: 100%; }
body.layout-sync main > :is(.hero,.page-hero,.route-hero,.cover) h1 {
  max-width: 1000px;
  margin: 12px 0 18px;
  font-family: var(--display, Georgia, serif);
  font-size: clamp(3.1rem,8vw,6.5rem) !important;
  line-height: .88 !important;
}

body.layout-sync main > section:not(.hero):not(.page-hero):not(.route-hero):not(.cover):not(.home-es-hero) {
  padding-top: 52px;
  padding-bottom: 52px;
}
body.layout-sync main > section:nth-of-type(odd):not(.hero):not(.page-hero):not(.route-hero):not(.cover) {
  background-color: #fff7ec;
}
body.layout-sync main > section:nth-of-type(even):not(.hero):not(.page-hero):not(.route-hero):not(.cover) {
  background-color: var(--cream, #f4eadf);
}
body.layout-sync main > section > :is(.wrap,.grid,.grid2,.cards,.split,.page,.profile-choice,.content-narrow,.producer-summary,.producer-two,.professional-grid,.professional-two,.press-grid,.press-two,.practical-grid,.archive-grid,.people-grid,.country-grid,.legal-grid,.partners-grid) {
  width: var(--content);
  max-width: 1180px;
  margin-left: auto;
  margin-right: auto;
}

body.layout-sync :is(.card,.route-card,.feature,.profile-choice article,.team-card,.person-card,.entity,.schedule-block,.notice) {
  border-radius: 0 !important;
}

/* Las vistas traducidas del programa usan otros nombres de clase,
   pero conservan la misma retícula de tarjetas que la página española. */
body.layout-sync.layout-program .summary-program {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  margin-top: 22px;
  margin-bottom: 22px;
}
body.layout-sync.layout-program .day-line {
  display: grid;
  align-content: start;
  gap: 8px;
  min-height: 150px;
  padding: 20px;
  border: 1px solid var(--line, #d8c5b6);
  border-left: 8px solid var(--gold, #c7a06d);
  background: var(--paper, #fffaf2);
}
body.layout-sync.layout-program .day-line.comp {
  border-left-color: var(--green, #5f6f53);
  background: #eef2e9;
}
body.layout-sync.layout-program .day-line strong {
  font-family: var(--display, Georgia, serif);
  font-size: 1.7rem;
  line-height: 1;
}
body.layout-sync.layout-program .day-line span { color: var(--muted, #655d57); }
body.layout-sync.layout-program .profile-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}
body.layout-sync.layout-program .profile-card {
  padding: 24px;
  border: 1px solid var(--line, #d8c5b6);
  border-top: 7px solid var(--gold, #c7a06d);
  background: var(--paper, #fffaf2);
}
body.layout-sync.layout-program .profile-card h3 {
  margin-top: 0;
  font-family: var(--display, Georgia, serif);
  font-size: 1.8rem;
}
body.layout-sync :is(.cta-band,.final-cta,.producer-flow-cta,.site-final-cta) {
  padding: 52px max(16px, calc((100% - 1180px) / 2)) !important;
  background: var(--dark, #292725) !important;
  color: #fff !important;
}
body.layout-sync :is(.cta-band,.final-cta,.producer-flow-cta,.site-final-cta) :is(h2,h3,p,a) { color: inherit; }

body.layout-sync :is(.sisga-logo-bar,.logo-strip) {
  margin: 0;
  border-top: 1px solid var(--line, #d8c5b6);
  background: #fffaf2;
}

body.layout-sync .footer { margin: 0; }

@media (max-width: 1100px) {
  body.layout-sync .topbar > .wrap { min-height: auto; }
}
@media (max-width: 760px) {
  body.layout-sync main > :is(.hero,.page-hero,.route-hero,.cover) { padding-top: 48px !important; padding-bottom: 48px !important; }
  body.layout-sync main > :is(.hero,.page-hero,.route-hero,.cover) h1 { font-size: clamp(2.8rem,15vw,4.8rem) !important; }
  body.layout-sync.layout-program .summary-program,
  body.layout-sync.layout-program .profile-grid { grid-template-columns: 1fr; }
  body.layout-sync.layout-program .day-line { min-height: 0; }
}
