/* Desktop corrections. Mobile rules and the published stylesheet are retained. */
@media screen and (min-width: 921px) {
  body { background: #000; }
  .block-layout { max-width: 1224px; }
  .block-layout, .layout-element, .text-box { min-width: 0; }
  .text-box, .text-box :is(p, h1, h2, h3, h4, h5, h6) { white-space: normal !important; overflow-wrap: break-word; }
  .text-box :is(p, h1, h2, h3, h4, h5, h6) :is(span, strong, em, a) { font-size: inherit !important; line-height: inherit !important; }
  .text-box p[data-mobile-empty] { display: none; }
  .text-box p { font-size: 18px !important; line-height: 1.65 !important; }
  .grid-button { min-width: 0 !important; min-height: 44px !important; padding: 10px 22px !important; font-size: 16px !important; line-height: 1.4 !important; white-space: normal !important; }
  .block-header-layout-desktop { max-width: 1224px !important; padding-inline: 24px !important; }

  /* Home hero: natural text rows, a complete service panel, visible social links. */
  #ai-aCOm2g > .block-layout {
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: minmax(24px, 1fr) auto 16px auto 32px auto auto minmax(48px, 1fr) auto;
    min-height: clamp(620px, calc(100svh - 82px), 820px);
    padding: 64px 24px 48px;
  }
  #ai-aCOm2g .layout-element { grid-column: 1; height: auto; left: auto; }
  #ai-aCOm2g [data-mobile-id="ai-yJNCFH"] { grid-row: 2; }
  #ai-aCOm2g [data-mobile-id="zMLMe5"] { grid-row: 4; }
  #ai-aCOm2g [data-mobile-id="zmiNXb"] { grid-row: 6; width: min(100%, 670px); }
  #ai-aCOm2g [data-mobile-id="zkgZyc"] { grid-row: 7; width: min(100%, 670px); }
  #ai-aCOm2g [data-mobile-id="zZhy7I"] { grid-row: 6 / 8; width: min(100%, 670px); height: 100%; }
  #ai-aCOm2g [data-mobile-id="zITVfa"] { grid-row: 9; width: 220px; justify-self: center; }
  #ai-yJNCFH p { font-size: clamp(32px, 4.3vw, 56px) !important; line-height: 1.15 !important; margin: 0 !important; }
  #zMLMe5 h1 { font-size: clamp(48px, 6vw, 80px) !important; line-height: 1.08 !important; margin: 0 !important; }
  #zmiNXb { padding: 18px 20px 8px; }
  #zkgZyc { padding: 0 20px 18px; }
  #zmiNXb h5, #zmiNXb h5 * { font-size: 22px !important; line-height: 1.45 !important; margin: 0 !important; }
  #zkgZyc h5, #zkgZyc h5 * { font-size: 20px !important; line-height: 1.45 !important; margin: 0 !important; }
  #zZhy7I { position: absolute; inset: 0; height: 100% !important; min-height: 0 !important; }
  #zITVfa a { min-width: 44px; min-height: 44px; display: inline-flex; align-items: center; justify-content: center; }
  #ai-aCOm2g .block-background__image, #ai-aCOm2g .block-background__overlay,
  #zPVJIU .block-background__image, #zPVJIU .block-background__overlay { position: absolute; height: 100%; object-position: center; }

  /* Home photo cards: equal widths, equal button baselines, content inside photos. */
  #ai-ENfUbm > .block-layout {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: 28px auto 18px auto 28px auto 28px;
    column-gap: 24px; min-height: 0; padding: 64px 24px;
  }
  #ai-ENfUbm .layout-element { height: auto; }
  #ai-ENfUbm [data-mobile-kind="image"] { grid-row: 1 / 8; height: 100%; min-height: 0; grid-template-rows: minmax(0, 1fr); }
  #ai-ENfUbm [data-mobile-kind="text"], #ai-ENfUbm [data-mobile-kind="button"] { width: calc(100% - 56px); justify-self: center; }
  #ai-ENfUbm [data-mobile-id="ai-M9gUGp"], #ai-ENfUbm [data-mobile-id="ai-wXcLeW"],
  #ai-ENfUbm [data-mobile-id="zop6_m"], #ai-ENfUbm [data-mobile-id="zqZxn3"] { grid-column: 1; }
  #ai-ENfUbm [data-mobile-id="ai-QX0tGH"], #ai-ENfUbm [data-mobile-id="zOwGt2"],
  #ai-ENfUbm [data-mobile-id="zdg6Bn"], #ai-ENfUbm [data-mobile-id="zp_MZu"] { grid-column: 2; }
  #ai-ENfUbm [data-mobile-id="ai-wXcLeW"], #ai-ENfUbm [data-mobile-id="zOwGt2"] { grid-row: 2; }
  #ai-ENfUbm [data-mobile-id="zop6_m"], #ai-ENfUbm [data-mobile-id="zdg6Bn"] { grid-row: 4; align-self: start; }
  #ai-ENfUbm [data-mobile-kind="button"] { grid-row: 6; }
  #ai-ENfUbm h6 { font-size: 22px !important; line-height: 1.45 !important; }
  #ai-ENfUbm :is(#ai-wXcLeW, #zOwGt2) :is(p, h1, h2, h3, h4, h5, h6) { font-size: 26px !important; line-height: 1.25 !important; margin: 0 !important; }
  #ai-ENfUbm h6 + h6 { margin-top: 16px; }
  #ai-ENfUbm .grid-button { justify-self: center !important; color: #fff !important; background: transparent !important; border: 1px solid #fff !important; }
  #ai-ENfUbm .image-wrapper { height: 100% !important; max-height: none !important; }
  #ai-ENfUbm .image--grid, #ai-ENfUbm .image__image { width: 100% !important; height: 100% !important; }

  /* Preserve the wide/narrow family collage, with even gaps and centered logos. */
  #ai-GOJBzc > .block-layout {
    grid-template-columns: repeat(12, minmax(0, 1fr));
    grid-template-rows: auto auto clamp(300px, 33vw, 420px) clamp(300px, 33vw, 420px);
    gap: 16px; min-height: 0; padding: 64px 24px;
  }
  #ai-GOJBzc .layout-element { height: auto; left: auto; }
  #ai-GOJBzc [data-mobile-id="ai-kKHhq_"] { grid-row: 1; grid-column: 1 / -1; }
  #ai-GOJBzc [data-mobile-id="ai-agLrmB"] { grid-row: 2; grid-column: 2 / 12; margin-bottom: 24px; }
  #ai-GOJBzc [data-mobile-id="ai-vy9_ZW"], #ai-GOJBzc [data-mobile-id="zCzy_V"] { grid-row: 3; grid-column: 1 / 9; }
  #ai-GOJBzc [data-mobile-id="ai--PIW-D"] { grid-row: 3; grid-column: 9 / 13; }
  #ai-GOJBzc [data-mobile-id="ai-ytOF8h"] { grid-row: 4; grid-column: 1 / 5; }
  #ai-GOJBzc [data-mobile-id="ai-FqOWeO"], #ai-GOJBzc [data-mobile-id="zf_ShS"] { grid-row: 4; grid-column: 5 / 13; }
  #ai-GOJBzc [data-mobile-kind="image"] { height: 100%; min-height: 0; grid-template-rows: minmax(0, 1fr); }
  #ai-GOJBzc .image-wrapper { height: 100% !important; max-height: none !important; }
  #ai-GOJBzc .image--grid { width: 100% !important; height: 100% !important; }
  #ai-GOJBzc .image-wrapper img { width: 100% !important; height: 100% !important; max-height: 100%; }
  #ai-GOJBzc [data-mobile-id="zCzy_V"], #ai-GOJBzc [data-mobile-id="zf_ShS"] { padding: 32px; }
  #zCzy_V img, #zf_ShS img { object-fit: contain !important; object-position: center !important; }
  #ai-kKHhq_ h2 { font-size: clamp(36px, 3.7vw, 48px) !important; line-height: 1.2 !important; }
  #ai-agLrmB h6 { font-size: 22px !important; line-height: 1.5 !important; }

  /* About: consistent content edges and complete, evenly aligned cards. */
  #zPVJIU > .block-layout { grid-template-columns: minmax(0, 1fr); grid-template-rows: 1fr; min-height: clamp(460px, 40vw, 620px); padding: 48px 24px; align-items: center; }
  #zPVJIU .layout-element { grid-row: 1; grid-column: 1; height: auto; }
  #z8o7gB h1 { font-size: clamp(44px, 5vw, 64px) !important; line-height: 1.2 !important; }
  #zNomtU > .block-layout { display: block; min-height: 0; padding: 64px 24px 32px; }
  #zNomtU .layout-element { height: auto; }
  #ai-C6vtQL h3 { font-size: clamp(32px, 3.5vw, 44px) !important; line-height: 1.25 !important; margin-bottom: 24px !important; }
  #ai-C6vtQL h6 { font-size: 22px !important; line-height: 1.5 !important; margin-bottom: 20px !important; }
  #ai-C6vtQL p { margin-top: 12px !important; }
  #zBvnlu > .block-layout { display: block; min-height: 0; padding: 0 24px 56px; }
  #zBvnlu [data-mobile-kind="image"] { height: clamp(340px, 36vw, 480px); min-height: 0; grid-template-rows: minmax(0, 1fr); }
  #zBvnlu .image-wrapper { height: 100% !important; max-height: none !important; }
  #zBvnlu .image--grid, #zBvnlu .image__image { width: 100% !important; height: 100% !important; }

  #quienes-somos { padding: 0 24px 56px; }
  #quienes-somos > .block-layout { position: relative; max-width: 1176px; min-height: 0; padding: 48px; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-rows: auto auto 48px auto auto auto; gap: 24px; }
  #quienes-somos .layout-element { height: auto; }
  #quienes-somos [data-mobile-id="zDL4nN"] { position: absolute; inset: 0; width: 100%; height: 100%; grid-row: auto; grid-column: auto; }
  #quienes-somos [data-mobile-id="zBYdPF"] { grid-row: 1; grid-column: 1 / -1; }
  #quienes-somos [data-mobile-id="zv3E47"] { grid-row: 2; grid-column: 1 / -1; }
  #quienes-somos [data-mobile-id="zwB1t5"] { grid-row: 3; grid-column: 1 / -1; width: 48px; height: 48px; justify-self: center; }
  #quienes-somos [data-mobile-id="zpQnWx"] { grid-row: 4 / 7; grid-column: 1; height: 100%; }
  #quienes-somos [data-mobile-id="z109ph"] { grid-row: 4 / 7; grid-column: 2; height: 100%; }
  #quienes-somos [data-mobile-id="zVuomB"] { grid-row: 4; grid-column: 1; padding: 24px 24px 0; }
  #quienes-somos [data-mobile-id="zm5g22"] { grid-row: 4; grid-column: 2; padding: 24px 24px 0; }
  #quienes-somos [data-mobile-id="z2Jif3"] { grid-row: 5; grid-column: 1; padding-inline: 24px; }
  #quienes-somos [data-mobile-id="zQ0QqI"] { grid-row: 5; grid-column: 2; padding-inline: 24px; }
  #quienes-somos [data-mobile-id="zABM6b"] { grid-row: 6; grid-column: 1; padding: 0 24px 24px; }
  #quienes-somos [data-mobile-id="z0Lh6C"] { grid-row: 6; grid-column: 2; padding: 0 24px 24px; }
  #quienes-somos h2 { font-size: clamp(32px, 3.5vw, 44px) !important; line-height: 1.25 !important; }
  #quienes-somos h4 { font-size: 26px !important; line-height: 1.3 !important; }
  #quienes-somos h6 { font-size: 18px !important; line-height: 1.55 !important; }
  #quienes-somos #zBYdPF h6 { font-size: 16px !important; }
  #quienes-somos .grid-button { justify-self: center !important; }
  #quienes-somos .image-wrapper { max-height: none !important; }
  #quienes-somos :is([data-mobile-id="zDL4nN"], [data-mobile-id="zpQnWx"], [data-mobile-id="z109ph"]) .image-wrapper { position: absolute; inset: 0; width: 100%; height: 100% !important; }
  #quienes-somos :is([data-mobile-id="zDL4nN"], [data-mobile-id="zpQnWx"], [data-mobile-id="z109ph"]) img { object-fit: fill !important; }
  #quienes-somos [data-mobile-id="zDL4nN"] { overflow: hidden; border-radius: 24px; background: #171717; }
  #quienes-somos :is([data-mobile-id="zpQnWx"], [data-mobile-id="z109ph"]) { overflow: hidden; border-radius: 8px; background: #1e1e1e; }
  #quienes-somos :is([data-mobile-id="zDL4nN"], [data-mobile-id="zpQnWx"], [data-mobile-id="z109ph"]) .image-wrapper { visibility: hidden; }

  #experiencia { padding: 0 24px 56px; }
  #experiencia > .block-layout { position: relative; display: flex; flex-direction: column; gap: 24px; max-width: 1176px; min-height: 0; padding: 48px; }
  #experiencia .layout-element { height: auto; }
  #experiencia [data-mobile-kind="image"] { display: none; }
  #experiencia [data-mobile-id="z_sApl"] { display: grid; position: absolute; inset: 0; width: 100%; height: 100%; z-index: 0; }
  #experiencia [data-mobile-kind="text"] { z-index: 1; }
  #experiencia .image-wrapper { position: absolute; inset: 0; width: 100%; height: 100% !important; max-height: none !important; }
  #experiencia [data-mobile-id="z_sApl"] { overflow: hidden; border-radius: 24px; background: #171717; }
  #experiencia .image-wrapper { visibility: hidden; }
  #experiencia img { object-fit: fill !important; }
  #experiencia h2 { font-size: clamp(32px, 3.5vw, 44px) !important; line-height: 1.25 !important; }
  #experiencia h6 { font-size: 20px !important; line-height: 1.5 !important; }
  #zzhL0c p { margin-bottom: 18px !important; }
  #zzhL0c p[data-desktop-subheading] { margin-top: 32px !important; margin-bottom: 14px !important; font-size: 24px !important; line-height: 1.3 !important; }
  #zzhL0c p[data-desktop-subheading]:first-child { margin-top: 0 !important; }
  #zzhL0c p:last-child { margin-bottom: 0 !important; }

  /* Beliefs: references flow in the same row and stay within each gray card. */
  body[data-page="creencias-y-valores-iglesia-ldn"] section:not(.block--footer) { padding: 0 24px 24px; }
  body[data-page="creencias-y-valores-iglesia-ldn"] section.block--desktop-first-visible { margin-top: 0; padding-top: 24px; }
  body[data-page="creencias-y-valores-iglesia-ldn"] section:not(.block--footer) > .block-layout { position: relative; display: flex; flex-wrap: wrap; gap: 12px; max-width: 1176px; min-height: 0; padding: 40px; background: #171717; border-radius: 20px; }
  body[data-page="creencias-y-valores-iglesia-ldn"] section:not(.block--footer) .layout-element { grid-row: auto; grid-column: auto; height: auto; width: auto; }
  body[data-page="creencias-y-valores-iglesia-ldn"] section:not(.block--footer) [data-mobile-kind="text"] { width: 100%; flex-basis: 100%; z-index: 1; margin-bottom: 16px; }
  body[data-page="creencias-y-valores-iglesia-ldn"] section:not(.block--footer) [data-mobile-kind="button"] { z-index: 1; max-width: 100%; }
  body[data-page="creencias-y-valores-iglesia-ldn"] section:not(.block--footer) [data-mobile-kind="image"] { position: absolute; inset: 0; width: 100%; height: 100%; z-index: 0; visibility: hidden; }
  body[data-page="creencias-y-valores-iglesia-ldn"] section:not(.block--footer) .image-wrapper { position: absolute; inset: 0; width: 100%; height: 100% !important; max-height: none !important; }
  body[data-page="creencias-y-valores-iglesia-ldn"] section:not(.block--footer) .text-box p { margin: 0 !important; }
  body[data-page="creencias-y-valores-iglesia-ldn"] section:not(.block--footer) .text-box p + p { margin-top: 16px !important; }
  body[data-page="creencias-y-valores-iglesia-ldn"] section:not(.block--footer) .text-box p:first-child { font-size: 26px !important; line-height: 1.3 !important; }
  #z18PEv > .block-layout { flex-direction: column; flex-wrap: nowrap !important; gap: 20px !important; }
  #z18PEv [data-mobile-kind="text"] { flex-basis: auto !important; margin-bottom: 0 !important; }
  #z18PEv h6 { font-size: 34px !important; line-height: 1.35 !important; }
  #z18PEv #z6h4pv p { font-size: 16px !important; }
  #z18PEv #z5ZvLM p { font-size: 20px !important; line-height: 1.5 !important; }
  body[data-page="creencias-y-valores-iglesia-ldn"] section:not(.block--footer) .grid-button { font-size: 15px !important; padding: 10px 18px !important; }

  /* Contact: line up the map with the details and let every paragraph size itself. */
  #zlMrnb { margin-top: 0; padding-top: 0; }
  #zlMrnb > .block-layout { grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr); grid-template-rows: auto auto auto auto; gap: 32px 48px; min-height: 0; padding: 48px 24px 64px; }
  #zlMrnb .layout-element { height: auto; }
  #zlMrnb [data-mobile-id="zaCbon"] { grid-row: 1; grid-column: 1 / -1; margin-bottom: 16px; }
  #zlMrnb [data-mobile-id="zDIJWZ"] { grid-row: 2; grid-column: 1; }
  #zlMrnb [data-mobile-id="z-UF0i"] { grid-row: 3; grid-column: 1; }
  #zlMrnb [data-mobile-id="zYj_9J"] { grid-row: 4; grid-column: 1; }
  #zlMrnb [data-mobile-id="zP0iW4"] { grid-row: 2 / 5; grid-column: 2; height: 100%; min-height: 460px; }
  #zP0iW4 { height: 100% !important; min-height: 460px; }
  #zlMrnb h1 { font-size: clamp(44px, 5vw, 64px) !important; line-height: 1.15 !important; }
  #zlMrnb p { margin: 0 0 16px !important; }
  #zlMrnb p:last-child { margin-bottom: 0 !important; }
  #zlMrnb p:has(strong:only-child) strong { font-size: 22px !important; }
  #zlMrnb a[href^="mailto:"] { overflow-wrap: anywhere; }

  /* Footer: three aligned columns, readable text and no fixed empty rows. */
  #zi07eb > .block-layout { grid-template-columns: 1fr .8fr 1.2fr; grid-template-rows: repeat(4, auto); gap: 12px 56px; min-height: 0; padding: 48px 24px 64px; }
  #zi07eb .layout-element { height: auto; align-self: start; }
  #zi07eb h6 { font-size: 18px !important; line-height: 1.5 !important; }
  #zi07eb p { font-size: 18px !important; line-height: 1.5 !important; }
  #zi07eb [data-mobile-id="zVVUOP"] { grid-column: 1; grid-row: 1; }
  #zi07eb [data-mobile-id="zPa5BD"] { grid-column: 1; grid-row: 2; }
  #zi07eb [data-mobile-id="zIgSqS"] { grid-column: 1; grid-row: 3; }
  #zi07eb [data-mobile-id="z75jKm"] { grid-column: 1; grid-row: 4; }
  #zi07eb [data-mobile-id="z_mEXf"] { grid-column: 1; grid-row: 5; }
  #zi07eb [data-mobile-id="z2c_U0"] { grid-column: 2; grid-row: 1; }
  #zi07eb [data-mobile-id="zBljVC"] { grid-column: 2; grid-row: 2; }
  #zi07eb [data-mobile-id="zr6YUr"] { grid-column: 2; grid-row: 3; }
  #zi07eb [data-mobile-id="zmkCKW"] { grid-column: 2; grid-row: 4; }
  #zi07eb [data-mobile-id="z0786f"] { grid-column: 3; grid-row: 1; }
  #zi07eb [data-mobile-id="zVTHBK"] { grid-column: 3; grid-row: 2 / 5; }
  #zi07eb :is(#zVVUOP, #z2c_U0, #z0786f) h6 { font-size: 16px !important; }
  #zVTHBK p > span { display: block; }
  #zVTHBK a { white-space: normal !important; }
}
