/* v1.5.4 — mismo ancho visual para cabecera y cuerpo, sin ensanchar el contenido */
html,body{max-width:100%;overflow-x:hidden}

/* El cuerpo conserva el ancho de portal que ya funcionaba bien. */
.container,
.home-page > .container,
.home-page .home-shell,
.devotional-strip-section > .container,
.footer > .container{
  width:100%;
  max-width:1240px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

/* La cabecera deja de ocupar toda la ventana: ahora acompaña al cuerpo. */
.site-header{
  width:min(1240px,calc(100% - 28px));
  margin-left:auto;
  margin-right:auto;
  border-radius:0 0 16px 16px;
}
.site-header > .container{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
}

/* Búsqueda real de toda la web. */
.site-header__search{border:0;background:transparent;padding:0;cursor:pointer;font:inherit}
.site-search[hidden]{display:none!important}
.site-search{position:fixed;inset:0;z-index:10050;display:grid;place-items:start center;padding:clamp(80px,12vh,130px) 18px 24px}
.site-search__backdrop{position:absolute;inset:0;background:rgba(10,20,38,.48);backdrop-filter:blur(5px)}
.site-search__dialog{position:relative;z-index:1;width:min(100%,650px);background:#fff;border:1px solid rgba(23,55,109,.10);border-radius:20px;box-shadow:0 30px 80px rgba(10,26,54,.26);padding:24px}
.site-search__close{position:absolute;right:14px;top:12px;width:36px;height:36px;border:0;border-radius:50%;background:#eef3fb;color:#17376d;font-size:26px;line-height:1;cursor:pointer}
.site-search__eyebrow{font-size:10px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:#5d7494}
.site-search__dialog h2{margin:7px 42px 18px 0;font-size:27px;line-height:1.1;color:#17304f;letter-spacing:-.03em}
.site-search__form{display:grid;grid-template-columns:1fr auto;gap:10px}
.site-search__field,.search-page__field{height:46px;border:1px solid #ced9e8;border-radius:12px;background:#f8fbff;display:flex;align-items:center;gap:10px;padding:0 13px}
.site-search__field:focus-within,.search-page__field:focus-within{border-color:#2d5fa4;box-shadow:0 0 0 3px rgba(45,95,164,.09)}
.site-search__field svg,.search-page__field svg{width:18px;height:18px;stroke:#47658e;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}
.site-search__field input,.search-page__field input{min-width:0;width:100%;border:0;outline:0;background:transparent;font:inherit;color:#17304f}
body.site-search-open{overflow:hidden}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Multimedia: dos tarjetas compactas, iguales y homogéneas. */
.home-media--two{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:stretch}
.home-media--two .media-card--wide{height:218px;padding:11px 12px 12px;gap:7px;overflow:hidden}
.home-media--two .media-card__header{flex:0 0 auto}
.home-media--two .media-card__header h2{font-size:14px;line-height:1.05}
.home-media--two .media-card__eyebrow{font-size:9px}
.home-media--two .media-card__wideLayout{grid-template-columns:minmax(0,58%) minmax(0,42%);gap:11px;align-items:stretch;min-height:0;flex:1}
.home-media--two .media-card__videoFrame{min-width:0;min-height:0}
.home-media--two .media-card__wideLayout > .media-card__videoFrame.video,
.home-media--two .media-card__wideLayout--song .media-card__videoFrame .video{height:100%;aspect-ratio:auto;border-radius:10px;overflow:hidden;background:#0c1730}
.home-media--two .media-card__wideLayout > .media-card__videoFrame.video iframe,
.home-media--two .media-card__wideLayout--song .media-card__videoFrame .video iframe{width:100%;height:100%;aspect-ratio:auto;object-fit:cover}
.home-media--two .media-card__wideCopy{min-width:0;height:100%;gap:6px}
.home-media--two .media-card__wideCopy h3{font-size:14px;line-height:1.16;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.home-media--two .media-card__wideCopy p{font-size:11px;line-height:1.42;-webkit-line-clamp:4}
.home-media--two .media-card__wideCopy .btn{height:32px;padding:0 12px;font-size:11px;margin-top:auto;white-space:nowrap}
.home-media--two .song-fallback-thumb{height:100%;min-height:0}

/* Página de búsqueda */
.search-page{padding:26px 0 40px;background:#eef2f7;min-height:60vh}
.search-page__inner{display:grid;gap:20px}
.search-hero{background:#fff;border:1px solid #dbe4ef;border-radius:16px;box-shadow:0 10px 28px rgba(17,35,67,.07);padding:24px}
.search-hero__eyebrow{font-size:10px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:#5d7494}
.search-hero h1{margin:7px 0 18px;font-size:32px;letter-spacing:-.04em;color:#17304f}
.search-page__form{display:grid;grid-template-columns:1fr auto;gap:10px;max-width:760px}
.search-results{display:grid;gap:12px}
.search-results__head{display:flex;align-items:end;justify-content:space-between;gap:12px}
.search-results__head h2{margin:0;font-size:20px;color:#17304f}
.search-results__head span{color:#67778d;font-size:12px}
.search-results__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.search-result{display:flex;flex-direction:column;gap:7px;background:#fff;border:1px solid #dbe4ef;border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(17,35,67,.05)}
.search-result:hover{border-color:#b9c9df;transform:translateY(-1px)}
.search-result__type{width:max-content;padding:4px 8px;border-radius:999px;background:#edf3fb;color:#31578c;font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.search-result h3{margin:0;font-size:16px;line-height:1.2;color:#17376d}
.search-result p{margin:0;color:#68788e;font-size:12px;line-height:1.55;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.search-result__more{margin-top:auto;color:#23539a;font-size:12px;font-weight:700}
.search-empty{background:#fff;border:1px solid #dbe4ef;border-radius:14px;padding:20px;color:#17304f}
.search-empty p{margin:.3rem 0 0;color:#68788e}

@media(max-width:980px){
  .site-header{width:calc(100% - 20px);border-radius:0 0 14px 14px}
  .site-header > .container{padding-left:14px!important;padding-right:14px!important}
  .home-media--two{grid-template-columns:1fr}
  .home-media--two .media-card--wide{height:auto;min-height:210px}
  .site-search__form,.search-page__form{grid-template-columns:1fr}
  .search-results__grid{grid-template-columns:1fr}
}
@media(max-width:640px){
  .site-header{width:100%;border-radius:0}
  .home-media--two .media-card__wideLayout{grid-template-columns:1fr}
  .home-media--two .media-card--wide{height:auto}
  .home-media--two .media-card__wideLayout > .media-card__videoFrame.video,
  .home-media--two .media-card__wideLayout--song .media-card__videoFrame .video{height:auto;aspect-ratio:16/9}
  .site-search{padding-top:74px}
  .site-search__dialog{padding:20px 16px}
}
