/* Portada editorial 2026: replica la maqueta aprobada sin alterar el hero. */
.public-page--inicio #contenido { background: #fff; }
.home-premium { padding-block: 1.4rem 4.5rem; }

.home-premium-grid {
  display: grid;
  grid-template-columns: minmax(12rem, .72fr) minmax(0, 2.65fr) minmax(16rem, 1.05fr);
  align-items: stretch;
  border: 1px solid #dbe2e8;
  background: #fff;
}
.home-latest,
.home-side-rail { min-width: 0; padding: 1.25rem 1rem; }
.home-latest { border-right: 1px solid #dbe2e8; }
.home-side-rail { border-left: 1px solid #dbe2e8; }
.home-lead-column { min-width: 0; padding: 1.25rem; }

.home-rail-heading,
.home-side-heading,
.home-section-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .75rem;
  border-bottom: 1px solid #aebac6;
}
.home-rail-heading,
.home-side-heading { padding-bottom: .55rem; }
.home-rail-heading h2,
.home-side-heading h2,
.home-section-heading h2 {
  position: relative;
  margin: 0;
  color: #071a37;
  font-family: var(--nc-font-editorial);
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.15;
}
.home-rail-heading h2,
.home-side-heading h2 { font-size: 1.05rem; }
.home-rail-heading h2::after,
.home-side-heading h2::after,
.home-section-heading h2::after {
  position: absolute;
  bottom: -.6rem;
  left: 0;
  width: 2rem;
  height: 2px;
  background: #0767df;
  content: "";
}
.home-live { display: inline-flex; align-items: center; gap: .35rem; color: #bd1f36; font-size: .63rem; font-weight: 850; letter-spacing: .04em; text-transform: uppercase; }
.home-live i { width: 7px; height: 7px; border-radius: 50%; background: #e11938; box-shadow: 0 0 0 3px rgb(225 25 56 / 10%); }

.home-latest-list { margin-top: .55rem; }
.home-latest-item { display: block; padding: .72rem 0; border-bottom: 1px solid #e3e8ed; text-decoration: none; }
.home-latest-item time { display: inline-block; margin-right: .4rem; color: #14273d; font-size: .68rem; font-weight: 800; font-variant-numeric: tabular-nums; }
.home-latest-item > span { color: #0756ba; font-size: .58rem; font-weight: 850; letter-spacing: .06em; text-transform: uppercase; }
.home-latest-item h3 { margin: .2rem 0 0; color: #142132; font-size: .82rem; font-weight: 620; letter-spacing: 0; line-height: 1.3; }
.home-latest-item:hover h3 { color: #0756ba; }
.home-text-link,
.home-advertise-link { display: inline-flex; align-items: center; gap: .4rem; color: #0756ba; font-size: .72rem; font-weight: 750; text-decoration: none; }
.home-latest > .home-text-link { margin-top: .9rem; }
.home-text-link span,
.home-advertise-link span { transition: transform 160ms ease; }
.home-text-link:hover span,
.home-advertise-link:hover span { transform: translateX(3px); }
.home-empty-copy { margin: .8rem 0 0; color: #617183; font-size: .78rem; }

.home-lead-story > a { display: block; color: inherit; text-decoration: none; }
.home-lead-media { position: relative; aspect-ratio: 16 / 9; margin: 0; overflow: hidden; border-radius: 4px; background: #fff; }
.home-lead-media > img { width: 100%; height: 100%; display: block; background: #fff; object-fit: contain; object-position: center; transition: opacity 420ms ease; }
.home-lead-story:hover .home-lead-media > img { transform: none; }
.home-image-fallback { width: 100%; height: 100%; display: grid; place-items: center; background: #f4f7fa; }
.home-image-fallback img { width: min(52%, 22rem); height: auto; }
.home-lead-copy { padding-top: .9rem; }
.home-story-meta { display: flex; flex-wrap: wrap; gap: .6rem; margin: 0 0 .35rem; color: #7a8795; font-size: .66rem; text-transform: uppercase; }
.home-story-meta strong { color: #0756ba; }
.home-story-meta span + span::before { margin-right: .6rem; color: #b5bec8; content: "·"; }
.home-lead-copy h1 { max-width: 19ch; margin: 0; color: #071a37; font-family: var(--nc-font-editorial); font-size: clamp(2rem, 3.35vw, 3.25rem); font-weight: 700; letter-spacing: 0; line-height: 1.02; }
.home-lead-summary { max-width: 64ch; margin: .7rem 0 .75rem; color: #526172; font-size: .92rem; line-height: 1.5; }
.home-lead-empty { min-height: 32rem; display: grid; place-content: center; padding: 2rem; text-align: center; }
.home-lead-empty h1 { margin: .3rem 0; font: 700 3rem/1 var(--nc-font-editorial); }

.home-side-section + .home-side-section { margin-top: 1.55rem; }
.home-side-feature { display: block; margin-top: .8rem; text-decoration: none; }
.home-side-feature img { width: 100%; aspect-ratio: 16 / 9; display: block; border-radius: 3px; object-fit: cover; }
.home-side-feature h3 { margin: .55rem 0 .4rem; color: #071a37; font-family: var(--nc-font-editorial); font-size: 1rem; letter-spacing: 0; line-height: 1.18; }
.home-community-list > a { display: block; padding: .7rem 0; border-bottom: 1px solid #e3e8ed; text-decoration: none; }
.home-community-list span { color: #0756ba; font-size: .58rem; font-weight: 850; letter-spacing: .06em; text-transform: uppercase; }
.home-community-list h3 { margin: .15rem 0 0; color: #15263a; font-size: .76rem; letter-spacing: 0; line-height: 1.3; }
.home-community-stats { display: grid; grid-template-columns: 1fr 1fr; gap: .5rem; margin-top: .75rem; }
.home-community-stats span { color: #7a8795; font-size: .58rem; text-align: center; text-transform: uppercase; }
.home-community-stats strong { display: block; color: #14273d; font-size: .95rem; font-variant-numeric: tabular-nums; }
.home-community-stats a { grid-column: 1 / -1; color: #0756ba; font-size: .7rem; font-weight: 750; text-align: right; text-decoration: none; }
.home-sponsor-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: .75rem; border: 1px solid #e1e6eb; }
.home-sponsor-list a { min-height: 4.1rem; display: grid; place-items: center; padding: .45rem; border-right: 1px solid #e1e6eb; border-bottom: 1px solid #e1e6eb; color: #15263a; font-size: .64rem; font-weight: 800; text-align: center; text-decoration: none; }
.home-sponsor-list a:nth-child(2n) { border-right: 0; }
.home-sponsor-list a:nth-last-child(-n + 2) { border-bottom: 0; }
.home-sponsor-list img { width: 100%; height: 2.8rem; object-fit: contain; }
.home-advertise-link { margin-top: .8rem; }

.home-story-section,
.home-data-section { margin-top: 2.35rem; }
.home-section-heading { padding-bottom: .65rem; }
.home-section-heading h2 { font-size: clamp(1.35rem, 2.3vw, 1.85rem); }
.home-section-heading > a { color: #0756ba; font-size: .74rem; font-weight: 750; text-decoration: none; }
.home-story-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; margin-top: 1rem; }
.home-story-card { min-width: 0; }
.home-story-card > a { display: block; text-decoration: none; }
.home-story-card .home-story-media { position: relative; aspect-ratio: 16 / 10; overflow: hidden; padding-top: 0; border-radius: 3px; background: #fff; }
.home-story-card .home-story-media img { width: 100%; height: 100%; aspect-ratio: auto; display: block; border-radius: 3px; background: #fff; object-fit: contain; object-position: center; }
.home-story-card div { padding-top: .6rem; }
.home-story-card span,
.home-compact-news span { color: #0756ba; font-size: .6rem; font-weight: 850; letter-spacing: .06em; text-transform: uppercase; }
.home-story-card h3 { margin: .22rem 0 .45rem; color: #0d2038; font-family: var(--nc-font-editorial); font-size: 1rem; letter-spacing: 0; line-height: 1.2; }
.home-story-card time,
.home-compact-news time { color: #7a8795; font-size: .64rem; }

.home-data-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border-block: 1px solid #dce3e9; margin-top: 1rem; }
.home-data-card { min-width: 0; padding: 1rem; border-right: 1px solid #dce3e9; color: inherit; text-decoration: none; }
.home-data-card:first-child { padding-left: 0; }
.home-data-card:last-child { padding-right: 0; border-right: 0; }
.home-data-card header { display: flex; align-items: center; gap: .65rem; }
.home-data-card header > :is(img, span) { width: 2.5rem; height: 2.5rem; flex: 0 0 2.5rem; display: grid; place-items: center; border: 1px solid #d6dee6; border-radius: 4px; background: #f1f5f8; color: #0756ba; object-fit: contain; font-size: .7rem; font-weight: 850; }
.home-data-card header > .is-round { border-radius: 50%; object-fit: cover; }
.home-data-card header strong,
.home-data-card header small { display: block; }
.home-data-card header strong { color: #0d2038; font-size: .78rem; }
.home-data-card header small { color: #718093; font-size: .62rem; }
.home-data-card h3 { margin: .75rem 0 .4rem; color: #071a37; font-family: var(--nc-font-editorial); font-size: 1rem; letter-spacing: 0; line-height: 1.25; }
.home-data-card p { margin: 0; color: #617183; font-size: .76rem; line-height: 1.45; }
.home-compact-news { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin-top: 1rem; border-top: 1px solid #dce3e9; }
.home-compact-news a { padding: 1rem; border-right: 1px solid #dce3e9; border-bottom: 1px solid #dce3e9; text-decoration: none; }
.home-compact-news a:nth-child(3n) { border-right: 0; }
.home-compact-news h3 { margin: .25rem 0 .45rem; color: #071a37; font-family: var(--nc-font-editorial); font-size: 1rem; letter-spacing: 0; line-height: 1.2; }

.public-page .home-newsletter {
  position: relative;
  margin-top: 0;
  overflow: hidden;
  background: radial-gradient(circle at 12% 18%, rgb(20 112 225 / 35%), transparent 30rem), radial-gradient(circle at 90% 85%, rgb(220 164 60 / 18%), transparent 26rem), linear-gradient(138deg, #031329 0%, #071f43 52%, #0b2d58 100%);
}
.public-page .home-newsletter::before { content: ""; position: absolute; inset: 0; pointer-events: none; opacity: .16; background-image: linear-gradient(rgb(255 255 255 / 15%) 1px, transparent 1px), linear-gradient(90deg, rgb(255 255 255 / 15%) 1px, transparent 1px); background-size: 42px 42px; mask-image: linear-gradient(to bottom, #000, transparent 80%); }
.public-page .home-newsletter h2 { margin: .55rem 0 0; font-size: clamp(1.65rem, 2.7vw, 2.55rem); letter-spacing: -.035em; line-height: 1.03; }
.home-newsletter-inner { position: relative; z-index: 1; width: min(1360px, calc(100% - 40px)); margin-inline: auto; display: grid; grid-template-columns: minmax(16rem, .62fr) minmax(0, 1.7fr); align-items: start; gap: clamp(2rem, 5vw, 5rem); }
.home-newsletter-heading { position: sticky; top: 7.5rem; padding-top: 1rem; }
.public-page .home-newsletter-heading p { max-width: 29rem; margin: .85rem 0; color: #c7d8eb; font-size: .82rem; line-height: 1.58; }
.home-newsletter-edition { display: inline-flex; align-items: center; gap: .42rem; padding: .34rem .58rem; border: 1px solid rgb(222 234 248 / 22%); border-radius: 999px; background: rgb(4 30 61 / 34%); color: #dceafa; font-size: .59rem; font-weight: 800; letter-spacing: .075em; text-transform: uppercase; }
.home-newsletter-edition span { color: #efc66f; font-size: .7rem; }
.home-newsletter-trust { display: flex; flex-wrap: wrap; gap: .45rem .8rem; color: #e4edf7; font-size: .7rem; font-weight: 750; }
.home-newsletter-trust span { color: #efc66f; }
.home-subscription-options { display: grid; grid-template-columns: 1fr; align-items: stretch; gap: 1rem; width: 100%; }
.home-subscription-card { position: relative; display: flex; min-width: 0; width: 100%; height: auto; flex-direction: column; padding: clamp(1.25rem, 3vw, 2.2rem); border: 1px solid rgb(255 255 255 / 22%); border-radius: 18px; background: linear-gradient(145deg, rgb(255 255 255 / 99%), rgb(244 248 252 / 97%)); color: #14253b; box-shadow: 0 28px 70px rgb(0 7 20 / 30%), inset 0 1px 0 rgb(255 255 255 / 90%); box-sizing: border-box; }
.home-subscription-card.is-family { border-top: 4px solid #e5b957; }
.home-subscription-badge { display: inline-flex; min-height: 28px; align-items: center; padding: .35rem .75rem; border-radius: 999px; background: #fff5db; color: #72500b; font-size: .66rem; font-weight: 850; letter-spacing: .035em; text-transform: uppercase; }
.public-page .home-subscription-card h3 { margin: .75rem 0 .4rem; color: #071a37; font-family: var(--nc-font-editorial); font-size: clamp(1.6rem, 2.8vw, 2.3rem); line-height: 1.05; }
.public-page .home-subscription-card .home-subscription-lead { min-height: 0; margin: 0 0 1.15rem; color: #53667c; font-size: .82rem; line-height: 1.55; }
.public-page .home-subscription-card form { display: grid; gap: 1rem; }
.home-featured-raffle { display: grid; grid-template-columns: 5.25rem minmax(0, 1fr); min-width: 0; gap: .7rem; margin: -.2rem 0 1.2rem; padding: .48rem; border: 1px solid #ecd18a; border-radius: 11px; background: linear-gradient(135deg, #fffaf0, #fff1cc); box-shadow: inset 0 1px 0 #fff, 0 9px 22px rgb(100 70 8 / 8%); }
.home-featured-raffle-media { display: grid; min-width: 0; min-height: 5.25rem; place-items: center; overflow: hidden; border-radius: 8px; background: linear-gradient(145deg, #5d4104, #c48a1e); color: #fff4d3; }
.home-featured-raffle-media img { width: 100%; height: 100%; object-fit: cover; }
.home-featured-raffle-media span { font-size: 1.55rem; }
.home-featured-raffle-copy { display: grid; min-width: 0; align-content: start; gap: .17rem; }
.home-featured-raffle-topline { display: flex; min-width: 0; align-items: center; justify-content: space-between; gap: .55rem; color: #816116; font-size: .52rem; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.home-featured-raffle-topline img { width: 3.6rem; height: 1.25rem; object-fit: contain; object-position: right center; mix-blend-mode: multiply; }
.home-featured-raffle-topline small { overflow: hidden; color: #745613; font-size: .53rem; font-weight: 750; letter-spacing: 0; text-align: right; text-overflow: ellipsis; text-transform: none; white-space: nowrap; }
.home-featured-raffle-copy > strong { display: -webkit-box; overflow: hidden; color: #382500; font-family: var(--nc-font-editorial); font-size: .94rem; line-height: 1.12; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.home-featured-raffle-title,.home-featured-raffle-copy > small { overflow: hidden; color: #80652d; font-size: .57rem; font-weight: 650; line-height: 1.2; text-overflow: ellipsis; white-space: nowrap; }
.home-featured-raffle dl { display: flex; flex-wrap: wrap; gap: .32rem .8rem; margin: .22rem 0 0; }
.home-featured-raffle dl div { display: grid; gap: .02rem; }
.home-featured-raffle dt { color: #8a6b2c; font-size: .46rem; font-weight: 850; letter-spacing: .07em; text-transform: uppercase; }
.home-featured-raffle dd { margin: 0; color: #392909; font-size: .57rem; font-weight: 800; }
.home-featured-raffle.is-empty { border-color: #e3d8bd; background: linear-gradient(135deg, #faf8f1, #f2eee4); }
.home-featured-raffle.is-empty .home-featured-raffle-media { background: linear-gradient(145deg, #40556c, #71859a); }
.home-featured-raffle.is-empty .home-featured-raffle-copy > span { color: #61748a; font-size: .52rem; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.home-featured-raffle.is-empty .home-featured-raffle-copy > strong { color: #1d354f; }
.home-community-disclosure { min-width: 0; width: 100%; margin-top: auto; }
.home-community-disclosure > summary { display: flex; align-items: center; justify-content: space-between; gap: .8rem; min-height: 48px; padding: .75rem 1rem; border: 1px solid #d7b15d; border-radius: 10px; background: linear-gradient(135deg, #fff8e8, #f8e3af); color: #5d4104; box-shadow: 0 9px 20px rgb(119 84 10 / 12%); font-size: .76rem; font-weight: 850; cursor: pointer; list-style: none; }
.home-community-disclosure > summary::-webkit-details-marker { display: none; }
.home-community-disclosure > summary small { display: flex; align-items: center; gap: .4rem; color: #765715; font-size: .62rem; font-weight: 750; }
.home-community-disclosure > summary b { font-size: .85rem; transition: transform 180ms ease; }
.home-community-disclosure[open] > summary { margin-bottom: 1.1rem; }
.home-community-disclosure[open] > summary b { transform: rotate(180deg); }
.home-community-disclosure[open] .home-community-form { padding: clamp(1rem, 2.5vw, 1.4rem); border: 1px solid #d7e1eb; border-radius: 14px; background: linear-gradient(145deg, #ffffff, #f4f8fc); box-shadow: inset 0 1px 0 #fff, 0 14px 32px rgb(15 46 80 / 8%); }
.home-community-disclosure[open] .home-community-form legend { padding: 0; margin-bottom: .85rem; color: #102f50; font-size: .74rem; font-weight: 850; letter-spacing: .01em; }
.public-page .home-newsletter .home-community-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .85rem 1rem; width: 100%; align-items: start; }
.public-page .home-newsletter .home-community-fields .is-wide { grid-column: 1 / -1; width: 100%; }
.public-page .home-subscription-card label.field-item,
.public-page .home-subscription-card label { display: flex; flex-direction: column; justify-content: flex-end; gap: .35rem; min-width: 0; width: 100%; margin: 0; color: #183b60; font-size: .72rem; font-weight: 800; line-height: 1.3; }
.public-page .home-subscription-card .field-label { display: flex; align-items: baseline; justify-content: space-between; gap: .4rem; font-size: .72rem; font-weight: 800; color: #183b60; min-height: 1.15rem; }
.public-page .home-subscription-card .field-hint { font-size: .62rem; font-weight: 500; color: #64748b; }
.public-page .home-subscription-card :is(input[type="text"], input[type="email"], input[type="tel"]) { display: block; width: 100%; height: 48px; min-height: 48px; max-height: 48px; padding: 0 .9rem; border: 1.5px solid #bfcede; border-radius: 8px; background: #fff; color: #102b48; outline: 0; font-size: .88rem; font-weight: 500; line-height: 48px; box-sizing: border-box; box-shadow: 0 1px 2px rgb(10 41 70 / 4%); transition: border-color 150ms ease, box-shadow 150ms ease; }
.public-page .home-subscription-card :is(input[type="text"], input[type="email"], input[type="tel"])::placeholder { color: #7990a7; }
.public-page .home-subscription-card :is(input[type="text"], input[type="email"], input[type="tel"]):focus { border-color: #0b73d5; background: #fff; box-shadow: 0 0 0 3px rgb(11 115 213 / 15%); }
.public-page .home-subscription-card :is(input[type="text"], input[type="email"], input[type="tel"]):user-invalid { border-color: #dc2626; box-shadow: 0 0 0 3px rgb(220 38 38 / 15%); }
.public-page .home-newsletter .home-community-consents { display: grid; grid-template-columns: 1fr; gap: .6rem; padding: .9rem 1rem; border: 1px solid #dde5ed; border-radius: 10px; background: #f6f9fc; margin-top: .4rem; }
.public-page .home-newsletter .newsletter-consent-check { display: grid; grid-template-columns: 18px 1fr; align-items: start; gap: .6rem; margin: 0; color: #3a5068; font-size: .68rem; font-weight: 550; line-height: 1.45; cursor: pointer; }
.public-page .home-newsletter .newsletter-consent-check input { width: 17px; height: 17px; margin: .12rem 0 0; accent-color: #075fc7; }
.public-page .home-newsletter .home-subscription-action { width: 100%; min-height: 50px; border-radius: 10px; background: linear-gradient(135deg, #075fc7, #0b75dd); color: #fff; box-shadow: 0 10px 24px rgb(7 95 199 / 22%); font-size: .84rem; font-weight: 800; letter-spacing: .01em; cursor: pointer; transition: all 180ms ease; border: none; }
.public-page .home-newsletter .home-subscription-action:hover { transform: translateY(-1px); box-shadow: 0 14px 28px rgb(7 95 199 / 30%); background: linear-gradient(135deg, #0652ad, #0867df); }
.public-page .home-newsletter .newsletter-form-status { min-height: 1.2rem; margin: 0; color: #31506e; font-size: .74rem; font-weight: 600; text-align: center; }
.public-page .home-newsletter .newsletter-form-status.is-error { color: #a32222; }
.public-page .home-newsletter .newsletter-form-status.is-success { color: #13703b; }

.forum-promo-overlay { position: fixed; z-index: 9999; inset: 0; display: grid; place-items: center; padding: clamp(1rem,4vw,2.5rem); background: rgb(3 16 32 / 78%); backdrop-filter: blur(5px); opacity: 0; visibility: hidden; pointer-events: none; transition: opacity 220ms ease, visibility 220ms ease; }
.forum-promo-overlay[hidden] { display: none; }
.forum-promo-overlay.is-open { opacity: 1; visibility: visible; pointer-events: auto; }
.forum-promo-dialog { position: relative; display: grid; grid-template-columns: minmax(260px,.95fr) minmax(300px,1.05fr); width: min(100%, 58rem); max-height: min(680px,calc(100dvh - 2rem)); overflow: auto; border: 1px solid rgb(255 255 255 / 25%); border-radius: 1.35rem; background: #fff; color: #071a37; box-shadow: 0 30px 90px rgb(0 12 28 / 40%); transform: translateY(14px) scale(.98); transition: transform 220ms cubic-bezier(.2,.7,.2,1); }
.forum-promo-overlay.is-open .forum-promo-dialog { transform: none; }
.forum-promo-media { position: relative; min-height: 390px; overflow: hidden; background: #061a32; }
.forum-promo-media img { width: 100%; height: 100%; object-fit: cover; object-position: 64% center; }
.forum-promo-media::after { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg,transparent 46%,rgb(3 16 32 / 65%)); pointer-events: none; }
.forum-promo-media-label { position: absolute; z-index: 1; left: 1.4rem; bottom: 1.2rem; color: #fff; font-size: .68rem; font-weight: 850; letter-spacing: .12em; text-transform: uppercase; }
.forum-promo-copy { display: flex; flex-direction: column; justify-content: center; padding: clamp(2rem,5vw,4rem); }
.forum-promo-kicker { color: #0b7a45; font-size: .7rem; font-weight: 850; letter-spacing: .12em; text-transform: uppercase; }
.forum-promo-copy h2 { max-width: 13ch; margin: .6rem 0 .9rem; color: #071a37; font: 800 clamp(2rem,4vw,3.35rem)/1.02 var(--nc-font-editorial); letter-spacing: -.045em; }
.forum-promo-copy p { max-width: 42ch; margin: 0; color: #526477; font-size: 1rem; line-height: 1.65; }
.forum-promo-actions { display: flex; flex-wrap: wrap; gap: .65rem; margin-top: 1.6rem; }
.forum-promo-actions .button { min-height: 46px; }
.forum-promo-actions .button-muted { color: #071a37; }
.forum-promo-note { display: block; margin-top: 1.35rem; color: #647487; font-size: .73rem; line-height: 1.55; }
.forum-promo-note span { color: #0b7a45; font-weight: 900; }
.forum-promo-note a { color: #0756ba; font-weight: 750; }
.forum-promo-close { position: absolute; z-index: 3; top: .75rem; right: .75rem; display: grid; place-items: center; width: 2.4rem; height: 2.4rem; border: 1px solid rgb(255 255 255 / 35%); border-radius: 50%; background: rgb(3 16 32 / 65%); color: #fff; font-size: 1.5rem; line-height: 1; cursor: pointer; }
.forum-promo-fab { position: fixed; z-index: 801; right: 1rem; bottom: 4.85rem; display: grid; place-items: center; width: 3rem; height: 3rem; border: 2px solid #fff; border-radius: 50%; background: #0756ba; color: #fff; box-shadow: 0 10px 28px rgb(6 26 50 / 25%); font-size: 1.1rem; cursor: pointer; transition: transform 160ms ease, background 160ms ease; }
.forum-promo-fab:hover { background: #0b7a45; transform: translateY(-2px); }
.forum-promo-fab[hidden] { display: none; }
body.forum-promo-open { overflow: hidden; }
@media (max-width: 700px) { .forum-promo-dialog { display: flex; flex-direction: column; max-height: calc(100dvh - 1.5rem); border-radius: 1rem; } .forum-promo-media { min-height: 190px; max-height: 34dvh; } .forum-promo-copy { padding: 1.65rem 1.35rem 1.5rem; } .forum-promo-copy h2 { max-width: 18ch; font-size: 2.1rem; } .forum-promo-copy p { font-size: .92rem; } .forum-promo-actions { flex-direction: column; } .forum-promo-actions .button { width: 100%; } .forum-promo-fab { right: .8rem; bottom: 4.6rem; } }
@media (prefers-reduced-motion: reduce) { .forum-promo-overlay,.forum-promo-dialog,.forum-promo-fab { transition: none; } }

@media (max-width: 68rem) {
  .home-premium-grid { grid-template-columns: minmax(12rem, .72fr) minmax(0, 2fr); }
  .home-side-rail { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; border-top: 1px solid #dbe2e8; border-left: 0; }
  .home-side-section + .home-side-section { margin-top: 0; }
  .home-story-grid,
  .home-data-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .home-data-card:nth-child(2) { border-right: 0; }
  .home-data-card:nth-child(n + 3) { border-top: 1px solid #dce3e9; }
  .home-data-card:nth-child(3) { padding-left: 0; }
  .home-newsletter-inner { grid-template-columns: 1fr; }
  .home-newsletter-heading { position: static; padding-top: 0; }
}

@media (max-width: 44rem) {
  .home-premium { width: min(calc(100% - 1.2rem), var(--nc-content)); padding-top: .7rem; }
  .home-premium-grid { grid-template-columns: 1fr; }
  .home-latest { order: 2; border-top: 1px solid #dbe2e8; border-right: 0; }
  .home-lead-column { order: 1; padding: .7rem; }
  .home-side-rail { order: 3; grid-template-columns: 1fr; }
  .home-lead-copy h1 { font-size: clamp(1.8rem, 9vw, 2.7rem); }
  .home-latest-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 1rem; }
  .home-side-section + .home-side-section { margin-top: 1.3rem; }
  .home-story-grid,
  .home-data-grid,
  .home-compact-news { grid-template-columns: 1fr; }
  .home-data-card { padding-inline: 0; border-right: 0; border-top: 1px solid #dce3e9; }
  .home-data-card:first-child { border-top: 0; }
  .home-compact-news a { padding-inline: 0; border-right: 0; }
  .home-section-heading { align-items: flex-end; }
  .home-subscription-options { grid-template-columns: 1fr; }
  .public-page .home-subscription-card .home-subscription-lead { min-height: 0; }
}

@media (max-width: 30rem) {
  .home-latest-list { grid-template-columns: 1fr; }
  .home-story-meta { gap: .35rem; }
  .home-newsletter-inner { width: min(calc(100% - 1.2rem), 1360px); }
  .public-page .home-newsletter .home-community-fields { grid-template-columns: 1fr; }
  .public-page .home-newsletter .home-community-fields .is-wide { grid-column: auto; }
  .home-subscription-card { padding: 1rem; border-radius: 12px; }
  .home-featured-raffle { grid-template-columns: 4.4rem minmax(0, 1fr); }
  .home-featured-raffle-media { min-height: 4.4rem; }
}

/* Portada premium 2026-08: el hero conserva su diseño y adopta la altura del directorio profesional. */
.public-page--inicio .header-panorama { height: clamp(245px, 24vw, 280px); }
.public-page--inicio .commercial-logo-strip { display: none; }
.public-page--inicio #contenido {
  background:
    radial-gradient(circle at 8% 8%, rgb(7 103 223 / 5%), transparent 24rem),
    linear-gradient(180deg, #f6f8fb 0, #fff 34rem);
}

.home-premium {
  width: min(1360px, calc(100% - 40px));
  padding-block: 1.35rem 5.5rem;
}

.home-edition-header {
  display: grid;
  grid-template-columns: minmax(27rem, .9fr) minmax(0, 1.75fr);
  align-items: stretch;
  min-height: 330px;
  height: auto;
  overflow: hidden;
  border: 1px solid #cbd9e6;
  border-radius: 26px;
  background: #fff;
  box-shadow: 0 32px 80px rgb(7 26 55 / 15%), 0 1px 0 rgb(255 255 255 / 90%) inset;
}

.home-edition-identity {
  position: relative;
  display: flex;
  min-width: 0;
  min-height: 330px;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  padding: 1.75rem clamp(1.6rem, 2.8vw, 2.5rem);
  overflow: hidden;
  background:
    radial-gradient(circle at 100% -12%, rgb(72 190 255 / 34%), transparent 40%),
    radial-gradient(circle at -8% 110%, rgb(31 126 229 / 30%), transparent 46%),
    linear-gradient(140deg, #020f22 0%, #062747 56%, #0a4a7c 100%);
  color: #fff;
}

.home-edition-identity::after {
  position: absolute;
  right: -3rem;
  bottom: -5rem;
  width: 14rem;
  height: 14rem;
  border: 1px solid rgb(255 255 255 / 12%);
  border-radius: 50%;
  box-shadow: 0 0 0 2.5rem rgb(255 255 255 / 3%), 0 0 0 5rem rgb(255 255 255 / 2%);
  content: "";
}

.home-edition-identity::before {
  position: absolute;
  inset: 0 auto 0 0;
  width: 4px;
  background: linear-gradient(180deg, #65d5ff, #20b982 58%, #e6bc5b);
  content: "";
}

.home-edition-identity > span,
.home-edition-purpose > span,
.home-partner-ribbon > header span {
  position: relative;
  z-index: 1;
  color: #8bd8ff;
  font-size: .66rem;
  font-weight: 900;
  letter-spacing: .14em;
  text-transform: uppercase;
  overflow-wrap: anywhere;
}

.home-edition-identity > p {
  position: relative;
  z-index: 1;
  max-width: 17ch;
  margin: .45rem 0 .4rem;
  font: 800 clamp(1.8rem, 2.25vw, 2.35rem)/1.02 var(--nc-font-editorial);
  letter-spacing: -.045em;
  text-wrap: balance;
  overflow-wrap: anywhere;
}

.home-edition-identity > small {
  position: relative;
  z-index: 1;
  max-width: 46ch;
  color: #cbdbea;
  font-size: .73rem;
  font-weight: 600;
  line-height: 1.45;
}

.home-edition-newsletter {
  position: relative;
  z-index: 1;
  display: grid;
  gap: .58rem;
  width: min(100%, 28rem);
  margin: .9rem 0 0;
  padding: .82rem;
  border: 1px solid rgb(194 225 246 / 24%);
  border-radius: 16px;
  background: linear-gradient(145deg, rgb(255 255 255 / 11%), rgb(255 255 255 / 5%));
  box-shadow: inset 0 1px 0 rgb(255 255 255 / 12%), 0 16px 36px rgb(0 11 30 / 18%);
  backdrop-filter: blur(9px);
  -webkit-backdrop-filter: blur(9px);
}

.home-edition-newsletter__meta { display: flex; min-width: 0; align-items: center; justify-content: space-between; gap: .5rem; color: #e7f3fc; font-size: .61rem; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }
.home-edition-newsletter__meta b { display: inline-flex; align-items: center; gap: .32rem; padding: .22rem .48rem; border: 1px solid rgb(120 235 190 / 25%); border-radius: 999px; background: rgb(41 183 126 / 10%); color: #a5f0d0; font-size: .55rem; letter-spacing: .07em; }
.home-edition-newsletter__meta b::before { width: 5px; height: 5px; border-radius: 50%; background: #6ee7b7; box-shadow: 0 0 0 3px rgb(110 231 183 / 12%); content: ""; }

.home-edition-newsletter__row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 9rem;
  gap: .3rem;
  padding: 4px;
  border: 1px solid rgb(202 225 244 / 42%);
  border-radius: 13px;
  background: #fff;
  box-shadow: 0 14px 30px rgb(0 12 32 / 27%);
  transition: border-color 160ms ease, box-shadow 160ms ease;
}
.home-edition-newsletter__row:focus-within { border-color: #86d5ff; box-shadow: 0 0 0 3px rgb(121 205 250 / 15%), 0 12px 26px rgb(0 14 39 / 22%); }

.home-edition-newsletter__row input[type="email"],
.home-edition-newsletter__row button {
  display: block;
  align-self: stretch;
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
  height: 46px;
  min-height: 46px;
  max-height: 46px;
  margin: 0;
  border-radius: 9px;
  font: 750 .73rem/1 var(--nc-font-sans);
}

.home-edition-newsletter__row input[type="email"] {
  padding: 0 .8rem;
  border: 0;
  background: transparent;
  color: #102b48;
  outline: 0;
}

.home-edition-newsletter__row input[type="email"]::placeholder { color: #70869b; }
.home-edition-newsletter__row input[type="email"]:focus { box-shadow: none; }
.home-edition-newsletter__row button { border: 0; background: linear-gradient(135deg, #0875ce, #0798dd); box-shadow: 0 7px 16px rgb(5 75 132 / 30%); color: #fff; cursor: pointer; transition: transform 160ms ease, box-shadow 160ms ease, background 160ms ease; }
.home-edition-newsletter__row button:hover { background: linear-gradient(135deg, #0667b7, #06a4eb); box-shadow: 0 9px 20px rgb(5 75 132 / 35%); transform: translateY(-1px); }
.home-edition-newsletter__row button:disabled { cursor: wait; opacity: .72; }

.home-edition-newsletter__assurance { display: flex; min-width: 0; flex-wrap: wrap; align-items: center; gap: .35rem .85rem; color: #d8e7f2; font-size: .57rem; font-weight: 700; line-height: 1.25; overflow-wrap: anywhere; }
.home-edition-newsletter__assurance span { display: inline-flex; align-items: center; gap: .34rem; }
.home-edition-newsletter__assurance b { display: grid; place-items: center; width: .9rem; height: .9rem; border-radius: 50%; background: rgb(110 231 183 / 14%); color: #89eac0; font-size: .52rem; font-weight: 900; }

.home-edition-newsletter .newsletter-consent-check {
  display: flex !important;
  align-items: flex-start;
  gap: .48rem;
  margin: 0 !important;
  color: #d0deea !important;
  font-size: .57rem !important;
  font-weight: 600;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.home-edition-newsletter .newsletter-consent-check input {
  flex: 0 0 auto;
  width: 15px;
  height: 15px;
  margin: .02rem 0 0;
  accent-color: #27b47e;
}

.home-edition-newsletter .newsletter-form-status {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
}

.home-edition-purpose {
  display: grid;
  align-content: center;
  padding: 1.65rem clamp(1.5rem, 3.5vw, 3.35rem);
  border-left: 4px solid #159667;
  background: linear-gradient(135deg, #fbfdfc, #f0f8f5);
}

.home-edition-purpose > span { color: #08784f; }
.home-edition-purpose h2 {
  max-width: 24ch;
  margin: .55rem 0 .65rem;
  color: #09223e;
  font: 800 clamp(1.45rem, 2.2vw, 2.2rem)/1.08 var(--nc-font-editorial);
  letter-spacing: -.025em;
  text-wrap: balance;
}
.home-edition-purpose p { max-width: 66ch; margin: 0; color: #506459; font-size: .82rem; line-height: 1.65; }
.home-edition-purpose a {
  display: inline-flex;
  align-items: center;
  gap: .65rem;
  width: max-content;
  margin-top: 1rem;
  color: #08784f;
  font-size: .72rem;
  font-weight: 900;
  text-decoration: none;
}
.home-edition-purpose a span { transition: transform 160ms ease; }
.home-edition-purpose a:hover span { transform: translateX(4px); }

.home-partner-ribbon {
  padding: 1.35rem clamp(1.2rem, 2.4vw, 2rem) 1rem;
  border-radius: 0 0 18px 18px;
  background: linear-gradient(120deg, #071a37, #0a294b 66%, #07543c);
  color: #fff;
  box-shadow: 0 20px 55px rgb(7 26 55 / 12%);
}
.home-partner-ribbon > header { display: grid; grid-template-columns: 1fr minmax(18rem, .7fr); align-items: end; gap: 2rem; margin-bottom: 1rem; }
.home-partner-ribbon > header span { color: #83d8b7; }
.home-partner-ribbon > header h2 { margin: .25rem 0 0; font: 800 clamp(1.25rem, 2vw, 1.7rem)/1.08 var(--nc-font-editorial); letter-spacing: -.02em; }
.home-partner-ribbon > header p { justify-self: end; max-width: 42ch; margin: 0; color: #b9cbdc; font-size: .73rem; line-height: 1.5; text-align: right; }
.home-partner-list { display: grid; grid-template-columns: repeat(8, minmax(0, 1fr)); gap: .55rem; }
.home-partner-list a {
  display: grid;
  grid-template-rows: auto 1fr;
  place-items: center;
  min-width: 0;
  min-height: 86px;
  padding: .5rem .6rem .7rem;
  border: 1px solid rgb(255 255 255 / 13%);
  border-radius: 10px;
  background: #fff;
  color: #0d2946;
  text-decoration: none;
  transition: transform 180ms ease, box-shadow 180ms ease;
}
.home-partner-list a:hover { transform: translateY(-3px); box-shadow: 0 12px 28px rgb(0 0 0 / 22%); }
.home-partner-list small { justify-self: start; color: #758394; font-size: .48rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.home-partner-list img { width: 100%; height: 48px; object-fit: contain; }
.home-partner-list strong { align-self: center; font-size: .68rem; text-align: center; }
.home-partner-invitation { display: flex; align-items: center; justify-content: space-between; gap: 1rem; min-height: 78px; padding: 1rem 1.25rem; border: 1px dashed rgb(131 216 183 / 45%); border-radius: 12px; background: rgb(255 255 255 / 5%); }
.home-partner-invitation strong { max-width: 48ch; font: 700 1rem/1.4 var(--nc-font-editorial); }
.home-partner-invitation a { color: #93e5c5; font-size: .72rem; font-weight: 900; text-decoration: none; white-space: nowrap; }
.home-partner-ribbon > footer { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-top: .85rem; color: #9fb4c8; font-size: .62rem; }
.home-partner-ribbon > footer a { color: #fff; font-weight: 800; text-decoration: underline; text-decoration-color: rgb(131 216 183 / 50%); text-underline-offset: 3px; }

/* Bloque unificado: propósito comunitario, auspiciantes y llamado comercial. */
.home-sponsor-hub {
  display: grid;
  grid-template-columns: minmax(10rem, .72fr) minmax(0, 1.7fr) minmax(8.6rem, .58fr);
  grid-template-rows: 1fr;
  align-items: center;
  gap: .7rem;
  min-width: 0;
  min-height: 165px;
  height: 100%;
  padding: .68rem clamp(.75rem, 1.35vw, 1.15rem);
  border-left: 4px solid #159667;
  background:
    radial-gradient(circle at 100% 0, rgb(21 150 103 / 12%), transparent 19rem),
    linear-gradient(135deg, #fff, #f3f9f6);
}
.home-sponsor-intro > span { color: #08784f; font-size: .62rem; font-weight: 900; letter-spacing: .14em; text-transform: uppercase; }
.home-sponsor-intro h2 { margin: .24rem 0 .3rem; color: #09223e; font: 800 clamp(1.08rem, 1.35vw, 1.35rem)/1.05 var(--nc-font-editorial); letter-spacing: -.025em; }
.home-sponsor-intro p { display: -webkit-box; max-width: 31ch; margin: 0; overflow: hidden; color: #506459; font-size: .6rem; line-height: 1.4; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.home-sponsor-hub .home-partner-list { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .35rem; }
.home-sponsor-hub .home-partner-list a {
  min-height: 54px;
  padding: .28rem .35rem .4rem;
  border-color: #d8e5df;
  border-radius: 11px;
  background: rgb(255 255 255 / 92%);
  box-shadow: 0 7px 20px rgb(9 58 38 / 6%);
}
.home-sponsor-hub .home-partner-list a:hover { box-shadow: 0 13px 30px rgb(9 58 38 / 13%); }
.home-sponsor-hub .home-partner-list small { color: #71867c; font-size: .4rem; }
.home-sponsor-hub .home-partner-list img { height: 26px; }
.home-sponsor-hub .home-partner-invitation { border-color: rgb(21 150 103 / 38%); background: rgb(255 255 255 / 72%); color: #123529; }
.home-sponsor-hub .home-partner-invitation a { color: #08784f; }
.home-sponsor-action { display: flex; align-items: stretch; flex-direction: column; justify-content: center; gap: .45rem; padding: 0 0 0 .7rem; border-top: 0; border-left: 1px solid #d9e7e0; color: #52685d; font-size: .6rem; }
.home-sponsor-action > span { display: block; line-height: 1.45; }
.home-sponsor-action span { font-weight: 650; }

.home-premium-grid {
  grid-template-columns: minmax(13rem, .72fr) minmax(0, 2.5fr) minmax(17rem, 1fr);
  margin-top: 1.5rem;
  overflow: hidden;
  border: 1px solid #d8e1ea;
  border-radius: 16px;
  box-shadow: 0 18px 55px rgb(7 26 55 / 7%);
}
.home-latest,
.home-side-rail { background: #fbfcfd; }
.home-lead-column { padding: 1.35rem; }
.home-lead-media { border-radius: 11px; }
.home-lead-copy h1 { font-size: clamp(2.15rem, 3.45vw, 3.5rem); letter-spacing: -.035em; }
.home-side-section:last-child { padding: 1rem; border: 1px solid #cde7db; border-radius: 12px; background: #f0f8f4; }
.home-side-section:last-child .home-side-heading { border-color: #afd4c1; }
.home-side-section:last-child .home-side-heading h2::after { background: #159667; }
.home-community-stats a { color: #08784f; }
.home-story-card img { border-radius: 10px; }
.home-story-card > a:hover h3,
.home-data-card:hover h3,
.home-compact-news a:hover h3 { color: #0767df; }

@media (max-width: 72rem) {
  .home-edition-header { grid-template-columns: minmax(24rem, .78fr) minmax(0, 1.35fr); }
  .home-sponsor-hub { grid-template-columns: minmax(9rem, .68fr) minmax(0, 1.5fr) minmax(8rem, .62fr); }
  .home-partner-list { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .home-premium-grid { grid-template-columns: minmax(12rem, .72fr) minmax(0, 2fr); }
  .home-side-rail { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 52rem) {
  .home-edition-header { grid-template-columns: 1fr; height: auto; }
  .home-edition-identity { min-height: 0; align-items: center; text-align: center; }
  .home-edition-identity > small { max-width: 50ch; }
  .home-edition-newsletter { width: min(100%, 34rem); text-align: left; }
  .home-sponsor-hub { grid-template-columns: 1fr; grid-template-rows: auto; height: auto; padding: 1rem; border-top: 4px solid #159667; border-left: 0; }
  .home-sponsor-intro p { max-width: 68ch; -webkit-line-clamp: 3; }
  .home-sponsor-action { align-items: center; flex-direction: row; justify-content: space-between; padding: .65rem 0 0; border-top: 1px solid #d9e7e0; border-left: 0; }
  .home-sponsor-action > span { display: block; }
  .home-edition-purpose { border-top: 4px solid #159667; border-left: 0; }
  .home-partner-ribbon > header { grid-template-columns: 1fr; gap: .55rem; }
  .home-partner-ribbon > header p { justify-self: start; text-align: left; }
}

@media (max-width: 44rem) {
  .home-premium { width: min(calc(100% - 1.2rem), var(--nc-content)); padding-top: .7rem; }
  .home-edition-header { min-height: 0; border-radius: 17px; }
  .home-edition-identity { min-height: 0; padding: 1.55rem 1.15rem; }
  .home-edition-identity > p { font-size: clamp(1.75rem, 8vw, 2.2rem); }
  .home-edition-newsletter { margin-top: 1rem; padding: .75rem; border-radius: 14px; }
  .home-edition-purpose { padding: 1.35rem; }
  .home-partner-ribbon { border-radius: 0 0 13px 13px; }
  .home-partner-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .home-sponsor-hub { padding: 1.2rem; }
  .home-sponsor-action { align-items: flex-start; flex-direction: column; }
  .home-partner-invitation,
  .home-partner-ribbon > footer { align-items: flex-start; flex-direction: column; }
  .home-partner-invitation a { white-space: normal; }
  .home-premium-grid { margin-top: 1rem; border-radius: 13px; }
  .home-side-rail { grid-template-columns: 1fr; }
}

@media (max-width: 34rem) {
  .home-edition-newsletter__row { grid-template-columns: 1fr; }
  .home-edition-newsletter__row button { height: 44px; min-height: 44px; max-height: 44px; }
  .home-edition-newsletter__assurance { align-items: flex-start; flex-direction: column; }
}

@media (prefers-reduced-motion: reduce) {
  .home-partner-list a,
  .home-edition-purpose a span,
  .home-edition-newsletter__row button { transition: none; }
}
/* Police stories explicitly selected for the front page. */
.home-police-featured{margin:26px 0 34px;padding:24px;border:1px solid #d9e5f2;border-radius:22px;background:linear-gradient(145deg,#f8fbff 0%,#eef5fb 100%);box-shadow:0 18px 44px rgba(11,49,93,.09)}
.home-police-featured__heading{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:18px}.home-police-featured__heading span{color:#b42335;font-size:.72rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.home-police-featured__heading h2{margin:4px 0 0;color:#0b315d;font-family:Georgia,serif;font-size:2rem}.home-police-featured__heading>a{color:#0b5eb4;font-weight:750;text-decoration:none}
.home-police-featured__grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(260px,.85fr);gap:20px}.home-police-featured__lead{display:grid;grid-template-columns:minmax(280px,1.15fr) minmax(220px,.85fr);overflow:hidden;border-radius:17px;background:#fff;color:inherit;text-decoration:none;box-shadow:0 10px 28px rgba(11,49,93,.1)}.home-police-featured__lead figure{position:relative;margin:0;min-height:330px;background:#0b315d}.home-police-featured__lead figure img{width:100%;height:100%;object-fit:cover}.home-police-featured__lead figure span{position:absolute;left:16px;bottom:16px;padding:7px 10px;border-radius:999px;background:#b42335;color:#fff;font-size:.68rem;font-weight:850;letter-spacing:.12em}.home-police-featured__lead>div{display:flex;flex-direction:column;justify-content:center;padding:26px}.home-police-featured__lead>div>p:first-child{margin:0 0 10px;color:#64748b;font-size:.78rem;font-weight:700}.home-police-featured__lead h3{margin:0 0 13px;color:#102b4c;font:700 clamp(1.35rem,2.4vw,2.1rem)/1.08 Georgia,serif}.home-police-featured__lead>div>p:last-child{margin:0;color:#52657b;line-height:1.55}
.home-police-featured__rail{display:grid;gap:10px}.home-police-featured__rail a{display:grid;grid-template-columns:112px 1fr;gap:13px;align-items:center;padding:10px;border-radius:14px;background:#fff;color:inherit;text-decoration:none;border:1px solid #e4edf6}.home-police-featured__rail img{width:112px;height:82px;object-fit:cover;border-radius:10px}.home-police-featured__rail span{color:#b42335;font-size:.67rem;font-weight:800;text-transform:uppercase}.home-police-featured__rail h3{margin:5px 0 0;color:#153353;font:700 1rem/1.2 Georgia,serif}
@media(max-width:900px){.home-police-featured__grid{grid-template-columns:1fr}.home-police-featured__lead{grid-template-columns:1fr}.home-police-featured__lead figure{min-height:300px}}
@media(max-width:560px){.home-police-featured{padding:15px;border-radius:16px}.home-police-featured__heading{align-items:flex-start;flex-direction:column}.home-police-featured__lead figure{min-height:230px}.home-police-featured__lead>div{padding:20px}.home-police-featured__rail a{grid-template-columns:88px 1fr}.home-police-featured__rail img{width:88px;height:72px}}

/* Premium editorial band placed after the main front-page selection. */
.home-police-editorial-band {
  position: relative;
  margin-top: 2.35rem;
  overflow: hidden;
  padding: clamp(18px, 2.4vw, 28px);
  border: 1px solid #173a60;
  border-radius: 24px;
  background:
    radial-gradient(circle at 92% 4%, rgb(180 35 53 / 18%), transparent 25rem),
    radial-gradient(circle at 8% 100%, rgb(247 200 107 / 8%), transparent 20rem),
    linear-gradient(145deg, #06162d 0%, #092846 58%, #071d35 100%);
  box-shadow: 0 24px 68px rgb(7 26 55 / 18%), inset 0 1px 0 rgb(255 255 255 / 8%);
}
.home-police-editorial-band::before {
  position: absolute;
  inset: 0 auto 0 0;
  width: 4px;
  background: linear-gradient(180deg, #d9aa4b 0%, #b42335 48%, #327fbd 100%);
  content: "";
}
.home-police-editorial-band__intro {
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  margin-bottom: 20px;
  padding: 0 2px 18px;
  border-bottom: 1px solid rgb(255 255 255 / 12%);
}
.home-police-editorial-band__intro span {
  color: #f7c86b;
  font-size: .66rem;
  font-weight: 850;
  letter-spacing: .13em;
  text-transform: uppercase;
}
.home-police-editorial-band__intro h2 {
  margin: 4px 0 0;
  color: #fff;
  font: 750 clamp(1.65rem, 2.4vw, 2.25rem)/1 var(--nc-font-editorial);
  letter-spacing: -.025em;
}
.home-police-editorial-band__intro strong {
  color: #c5d8e9;
  font-size: .72rem;
  font-weight: 750;
  letter-spacing: .03em;
}
.home-police-featured-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 16px;
  align-items: stretch;
  margin: 0;
}
.home-police-featured-row .home-police-featured { margin: 0; }
.home-police-editorial-band .home-police-featured {
  border-color: rgb(255 255 255 / 13%);
  background: linear-gradient(145deg, #f9fbfd 0%, #edf4fa 100%);
  box-shadow: 0 16px 42px rgb(0 8 20 / 22%);
}
.home-police-editorial-band .home-police-featured__heading {
  padding-bottom: 14px;
  border-bottom: 1px solid #d7e3ee;
}
.home-police-editorial-band .home-police-featured__lead {
  border: 1px solid #dbe6ef;
  box-shadow: 0 12px 34px rgb(11 49 93 / 10%);
  transition: transform 180ms ease, box-shadow 180ms ease;
}
.home-police-editorial-band .home-police-featured__lead:hover,
.home-police-editorial-band .home-police-featured__lead:focus-visible {
  transform: translateY(-2px);
  box-shadow: 0 18px 42px rgb(11 49 93 / 16%);
}
.home-police-editorial-band .home-police-featured__lead figure::after {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 58%, rgb(3 14 29 / 36%));
  content: "";
  pointer-events: none;
}
.home-police-editorial-band .home-police-featured__lead figure > span { z-index: 1; }
.home-police-featured {
  display: grid;
  grid-template-rows: auto 1fr auto;
}
.home-police-featured__heading > a { display: none; }
.home-police-featured__grid {
  align-items: stretch;
  grid-template-columns: minmax(0, 1.65fr) minmax(240px, .72fr);
}
.home-police-featured__grid.is-unified { grid-template-columns: minmax(0, 1fr); }
.home-police-featured__grid.is-unified .home-police-featured__lead { min-height: 100%; }
.home-police-featured__placeholder {
  width: 100%;
  min-height: 330px;
  display: grid;
  place-content: center;
  gap: 8px;
  background: radial-gradient(circle at 35% 20%, #285a88, #0b315d 55%, #071d35);
  color: #fff;
  text-align: center;
}
.home-police-featured__placeholder b { font: 800 3.4rem/1 Georgia,serif; letter-spacing: -.06em; }
.home-police-featured__placeholder small { color: #cfe2f5; font-size: .72rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.home-police-featured__meta { display: flex; flex-wrap: wrap; gap: 7px 12px; align-items: center; }
.home-police-featured__meta em { color: #b42335; font-style: normal; font-weight: 850; text-transform: uppercase; }
.home-police-featured__excerpt { display: -webkit-box; margin: 0; overflow: hidden; color: #52657b; line-height: 1.55; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }
.home-police-featured__read { display: inline-flex; align-items: center; gap: 8px; margin-top: 19px; color: #0b5eb4; font-size: .78rem; font-weight: 850; letter-spacing: .02em; text-transform: uppercase; }
.home-police-featured__footer {
  display: flex;
  justify-content: flex-end;
  margin-top: 16px;
  padding-top: 14px;
  border-top: 1px solid #d9e5f2;
}
.home-police-featured__footer a {
  display: inline-flex;
  min-height: 38px;
  align-items: center;
  gap: 8px;
  padding: 0 15px;
  border: 1px solid #c9dcec;
  border-radius: 999px;
  background: #fff;
  color: #0b5eb4;
  font-size: .78rem;
  font-weight: 850;
  letter-spacing: .02em;
  text-decoration: none;
  box-shadow: 0 8px 18px rgb(11 49 93 / 8%);
  transition: transform 160ms ease, border-color 160ms ease, box-shadow 160ms ease;
}
.home-police-featured__footer a:hover,
.home-police-featured__footer a:focus-visible {
  transform: translateY(-1px);
  border-color: #0b5eb4;
  box-shadow: 0 12px 24px rgb(11 49 93 / 13%);
}
.home-police-featured__lead,
.home-police-featured__rail,
.home-police-featured__community { min-height: 100%; }
.home-police-featured__rail { align-content: stretch; }
.home-police-featured__rail a { min-height: 0; }
.home-police-featured__community {
  position: relative;
  display: grid;
  grid-template-columns: 1fr;
  align-items: stretch;
  align-content: space-between;
  gap: 16px;
  overflow: hidden;
  padding: 20px;
  border: 1px solid rgb(255 255 255 / 14%);
  border-radius: 17px;
  background:
    linear-gradient(145deg, rgb(3 13 28 / 78%), rgb(7 32 61 / 68%)),
    url("/assets/images/community/forum-community-hero-2026.png") center / cover no-repeat;
  box-shadow: inset 0 1px 0 rgb(255 255 255 / 14%), 0 14px 34px rgb(11 49 93 / 18%);
  color: #fff;
}
.home-police-featured__community::before {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(135deg, rgb(180 35 53 / 18%), transparent 38%),
    rgb(2 12 27 / 34%);
  backdrop-filter: blur(5px) saturate(112%);
  content: "";
  pointer-events: none;
}
.home-police-featured__community::after {
  position: absolute;
  inset: auto -18% -36% 30%;
  height: 62%;
  border-radius: 50%;
  background: radial-gradient(circle, rgb(255 255 255 / 13%), transparent 64%);
  content: "";
  pointer-events: none;
}
.home-police-featured__community > header {
  position: relative;
  z-index: 1;
}
.home-police-featured__community > header span {
  color: #f7c86b;
  font-size: .68rem;
  font-weight: 850;
  letter-spacing: .13em;
  text-transform: uppercase;
}
.home-police-featured__community > header h3 {
  max-width: none;
  margin: 7px 0 0;
  color: #fff;
  font: 700 clamp(1.35rem, 1.8vw, 1.75rem)/1.08 Georgia, serif;
  letter-spacing: 0;
}
.home-police-premium-tags {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
}
.home-police-premium-tag {
  min-width: 0;
  min-height: 86px;
  display: grid;
  grid-template-columns: 46px minmax(0, 1fr);
  grid-template-areas:
    "icon title"
    "icon subtitle";
  align-items: center;
  gap: 14px;
  padding: 14px 16px;
  border: 1px solid rgb(255 255 255 / 18%);
  border-radius: 14px;
  background: rgb(4 18 36 / 42%);
  color: #fff;
  text-decoration: none;
  backdrop-filter: blur(12px) saturate(118%);
  box-shadow: inset 0 1px 0 rgb(255 255 255 / 16%);
  transition: transform 160ms ease, background 160ms ease, border-color 160ms ease;
}
.home-police-premium-tag.is-newsletter {
  grid-template-areas:
    "icon title"
    "icon subtitle"
    "icon control"
    "icon consent"
    "icon status";
}
.home-police-premium-tag:hover,
.home-police-premium-tag:focus-within,
.home-police-premium-tag:focus-visible {
  transform: translateX(3px);
  border-color: rgb(247 200 107 / 62%);
  background: rgb(8 31 58 / 54%);
}
.home-police-premium-tag strong {
  grid-area: title;
  color: #fff;
  font-family: var(--nc-font-editorial);
  font-size: clamp(1rem, 1.2vw, 1.18rem);
  font-weight: 760;
  letter-spacing: .01em;
  line-height: 1;
  white-space: nowrap;
}
.home-police-premium-tag small {
  grid-area: subtitle;
  margin: 0;
  color: #cfe2f5;
  font-size: clamp(.78rem, .95vw, .9rem);
  font-weight: 700;
  letter-spacing: .01em;
  line-height: 1.18;
  white-space: nowrap;
}
.home-police-tag-icon {
  grid-area: icon;
  width: 40px;
  height: 40px;
  display: grid;
  place-items: center;
  border-radius: 10px;
  background: rgb(247 200 107 / 16%);
  color: #f7c86b;
}
.home-police-tag-icon svg,
.home-police-newsletter-control button svg {
  width: 20px;
  height: 20px;
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.9;
}
.home-police-newsletter-control {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 38px;
  gap: 8px;
}
.home-police-premium-tag.is-newsletter .home-police-newsletter-control {
  grid-area: control;
  width: min(100%, 300px);
  justify-self: center;
}
.home-police-newsletter-control input {
  width: 100%;
  min-width: 0;
  min-height: 38px;
  padding: 0 12px;
  border: 1px solid rgb(255 255 255 / 20%);
  border-radius: 9px;
  background: rgb(255 255 255 / 92%);
  color: #09213d;
  font-size: .82rem;
  font-weight: 700;
  outline: 0;
}
.home-police-newsletter-control input:focus {
  border-color: #f7c86b;
  box-shadow: 0 0 0 3px rgb(247 200 107 / 18%);
}
.home-police-newsletter-control button {
  display: grid;
  place-items: center;
  min-height: 38px;
  border: 0;
  border-radius: 9px;
  background: #f7c86b;
  color: #08203b;
  cursor: pointer;
}
.home-police-consent {
  grid-area: consent;
  justify-self: center;
  display: grid;
  grid-template-columns: 14px 1fr;
  align-items: start;
  gap: 5px;
  color: #dbeafa;
  font-size: .68rem;
  font-weight: 700;
  line-height: 1.25;
}
.home-police-consent input {
  width: 13px;
  height: 13px;
  margin: 1px 0 0;
  accent-color: #f7c86b;
}
.home-police-featured__community .newsletter-form-status {
  grid-area: status;
  justify-self: center;
  min-height: 1em;
  margin: 0;
  color: #cfe2f5;
  font-size: .58rem;
}

@media(max-width:1180px){
  .home-police-featured-row{grid-template-columns:1fr}
  .home-police-featured__community > header h3{max-width:none}
}
@media(min-width:72rem){
  .home-police-featured-row{
    grid-template-columns:minmax(0,1fr) minmax(400px,.46fr);
    gap:20px;
  }
}
@media(max-width:620px){
  .home-police-editorial-band{margin-top:1.6rem;padding:14px;border-radius:18px}
  .home-police-editorial-band__intro{align-items:flex-start;flex-direction:column;gap:6px;margin-bottom:14px;padding:2px 2px 12px}
  .home-police-featured__community{grid-template-columns:1fr}
  .home-police-premium-tag{grid-template-columns:38px 1fr;min-height:0}
}

/* Latest official police reports paired with the front-page selection. */
.home-police-featured__latest {
  position: relative;
  display: grid;
  grid-template-rows: auto 1fr auto;
  gap: 16px;
  min-height: 100%;
  overflow: hidden;
  padding: 22px;
  border: 1px solid rgb(255 255 255 / 15%);
  border-radius: 17px;
  background:
    linear-gradient(145deg, rgb(3 13 28 / 90%), rgb(7 32 61 / 84%)),
    url("/assets/images/police/policiales-hero-2026.jpg") center / cover no-repeat;
  box-shadow: inset 0 1px 0 rgb(255 255 255 / 14%), 0 14px 34px rgb(11 49 93 / 18%);
  color: #fff;
}
.home-police-featured__latest > header span {
  color: #f7c86b;
  font-size: .68rem;
  font-weight: 850;
  letter-spacing: .13em;
  text-transform: uppercase;
}
.home-police-featured__latest > header h3 {
  margin: 7px 0 0;
  color: #fff;
  font: 700 clamp(1.35rem, 1.8vw, 1.72rem)/1.08 Georgia, serif;
}
.home-police-latest-list {
  display: grid;
  gap: 10px;
}
.home-police-latest-item {
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr) 18px;
  gap: 12px;
  align-items: center;
  min-width: 0;
  padding: 10px;
  border: 1px solid rgb(255 255 255 / 16%);
  border-radius: 13px;
  background: rgb(4 18 36 / 62%);
  color: #fff;
  text-decoration: none;
  backdrop-filter: blur(10px) saturate(112%);
  transition: transform 160ms ease, background 160ms ease, border-color 160ms ease;
}
.home-police-latest-item:hover,
.home-police-latest-item:focus-visible {
  transform: translateX(3px);
  border-color: rgb(247 200 107 / 62%);
  background: rgb(8 31 58 / 82%);
}
.home-police-latest-thumb {
  position: relative;
  width: 72px;
  height: 62px;
  display: grid;
  place-items: center;
  overflow: hidden;
  border-radius: 10px;
  background: linear-gradient(145deg, #b42335, #721827);
  color: #fff;
  font-size: .8rem;
  font-weight: 900;
  letter-spacing: .12em;
}
.home-police-latest-thumb i {
  position: absolute;
  top: 4px;
  left: 4px;
  min-width: 19px;
  height: 19px;
  display: grid;
  place-items: center;
  border: 1px solid rgb(255 255 255 / 34%);
  border-radius: 999px;
  background: rgb(4 18 36 / 88%);
  color: #f7c86b;
  font-size: .58rem;
  font-style: normal;
  font-weight: 900;
}
.home-police-latest-thumb img { width: 100%; height: 100%; object-fit: cover; }
.home-police-latest-copy { min-width: 0; }
.home-police-latest-copy > span {
  display: flex;
  flex-wrap: wrap;
  gap: 5px 9px;
  align-items: center;
  margin-bottom: 5px;
  color: #bad2e9;
  font-size: .65rem;
  font-weight: 800;
  letter-spacing: .03em;
  text-transform: uppercase;
}
.home-police-latest-copy em {
  overflow: hidden;
  color: #f7c86b;
  font-style: normal;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.home-police-latest-copy strong {
  display: -webkit-box;
  overflow: hidden;
  color: #fff;
  font: 700 .92rem/1.2 Georgia, serif;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.home-police-latest-arrow { color: #f7c86b; font-size: 1.05rem; font-weight: 900; }
.home-police-featured__latest > footer {
  display: flex;
  justify-content: flex-end;
  padding-top: 2px;
}
.home-police-featured__latest > footer a {
  color: #f7c86b;
  font-size: .76rem;
  font-weight: 850;
  text-decoration: none;
}
.home-police-latest-empty { margin: 0; color: #dbeafa; line-height: 1.5; }
@media(max-width:620px){
  .home-police-featured__latest{padding:16px}
  .home-police-latest-item{grid-template-columns:58px minmax(0,1fr) 14px}
  .home-police-latest-thumb{width:58px;height:56px}
}

/* ==========================================================================
   ROTADOR AUTOMÁTICO DE FOTOS EN PORTADA
   ========================================================================== */
.is-rotator {
  position: relative !important;
  overflow: hidden !important;
}

.is-rotator .home-rotator-img {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center !important;
  background: #fff !important;
  opacity: 0 !important;
  transition: opacity 0.75s cubic-bezier(0.16, 1, 0.3, 1), transform 0.75s cubic-bezier(0.16, 1, 0.3, 1) !important;
  pointer-events: none !important;
  margin: 0 !important;
  z-index: 0 !important;
}

.is-rotator .home-rotator-img.is-active {
  position: absolute !important;
  inset: 0 !important;
  opacity: 1 !important;
  transform: scale(1) !important;
  pointer-events: auto !important;
  z-index: 1 !important;
}

.home-story-media.is-rotator {
  position: relative;
  overflow: hidden;
  border-radius: 8px;
  background: #fff;
  min-height: 140px;
}

.home-side-media.is-rotator {
  position: relative;
  overflow: hidden;
  border-radius: 8px;
  background: #071a37;
  min-height: 160px;
}

.home-rotator-badge {
  position: absolute;
  bottom: 12px;
  right: 14px;
  background: rgba(3, 14, 31, 0.82);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  color: #ffffff;
  font-size: 11.5px;
  font-weight: 800;
  padding: 4px 11px;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.22);
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.35);
  display: flex;
  align-items: center;
  gap: 7px;
  z-index: 4;
  pointer-events: none;
  letter-spacing: 0.02em;
}

.home-rotator-badge.is-mini {
  padding: 4px 7px;
  bottom: 8px;
  right: 8px;
}

.home-rotator-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #10b981;
  box-shadow: 0 0 8px #10b981;
  animation: ncRotatorDotPulse 1.6s infinite ease-in-out;
}

@keyframes ncRotatorDotPulse {
  0%, 100% { opacity: 1; transform: scale(1); }
  50% { opacity: 0.35; transform: scale(0.8); }
}

/* Portada premium editorial: newsletter, destacados y auspiciantes. */
.home-premium { padding-block: 1rem 4.25rem; }
.home-premium-grid { margin-top: 0; box-shadow: 0 16px 48px rgb(7 26 55 / 6%); }

/* Banner premium principal: independiente de la grilla editorial. */
.home-main-premium-banner {
  position: relative;
  width: 100%;
  margin: clamp(1.25rem, 3vw, 2rem) auto;
  overflow: hidden;
  border: 1px solid #173d60;
  border-radius: 15px;
  background: #03182c;
  box-shadow: 0 18px 46px rgb(4 25 49 / 18%);
}
.home-main-premium-banner__heading {
  position: absolute;
  z-index: 1;
  inset: .45rem .45rem auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  min-height: 1.65rem;
  padding: .3rem .58rem;
  border: 1px solid rgb(38 187 255 / 28%);
  border-radius: 8px;
  background: rgb(3 24 44 / 84%);
  backdrop-filter: blur(7px);
  color: #d5e7f4;
  font-size: .52rem;
  letter-spacing: .11em;
  text-transform: uppercase;
}
.home-main-premium-banner__heading span { display: inline-flex; align-items: center; gap: .48rem; color: #46c8ff; font-weight: 900; }
.home-main-premium-banner__heading i { width: 6px; height: 6px; border-radius: 50%; background: #25c4ff; box-shadow: 0 0 0 4px rgb(37 196 255 / 13%); }
.home-main-premium-banner__heading small { overflow: hidden; color: #b9d2e5; font-size: inherit; font-weight: 750; text-overflow: ellipsis; white-space: nowrap; }
.home-main-premium-banner__media,
.home-main-premium-banner__media > a { display: block; }
.home-main-premium-banner.is-gold-edition {
  border: 1px solid #d4af37;
  box-shadow: 0 18px 48px rgb(212 175 55 / 20%), 0 0 0 1px rgb(247 208 112 / 30%);
}
.home-main-premium-banner.is-gold-edition .home-main-premium-banner__heading {
  border-color: rgb(247 208 112 / 50%);
  background: linear-gradient(90deg, rgb(4 22 41 / 92%), rgb(28 20 4 / 92%));
}
.home-main-premium-banner__footer {
  position: absolute;
  z-index: 2;
  inset: auto .45rem .45rem;
  display: flex;
  align-items: center;
  justify-content: center;
  pointer-events: none;
}
.home-main-premium-banner__investment-tag {
  pointer-events: auto;
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  padding: .32rem .95rem;
  border: 1px solid rgb(247 208 112 / 70%);
  border-radius: 50px;
  background: linear-gradient(135deg, rgb(4 18 33 / 92%), rgb(28 20 4 / 94%));
  color: #f7d070;
  font-size: .54rem;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
  box-shadow: 0 8px 24px rgb(0 0 0 / 60%), 0 0 18px rgb(212 175 55 / 40%);
  backdrop-filter: blur(8px);
}
.home-main-premium-banner__credentials {
  position: absolute;
  z-index: 2;
  inset: .45rem .45rem auto;
  display: flex;
  flex-direction: column;
  gap: .35rem;
  pointer-events: none;
}
.home-main-premium-banner__badge-strip {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .35rem;
}
.home-credential-badge {
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  padding: .22rem .55rem;
  border-radius: 6px;
  font-size: .46rem;
  font-weight: 850;
  letter-spacing: .04em;
  text-transform: uppercase;
  backdrop-filter: blur(8px);
  box-shadow: 0 4px 14px rgb(0 0 0 / 40%);
}
.home-credential-badge.is-gold {
  border: 1px solid #f7d070;
  background: linear-gradient(135deg, rgb(38 28 4 / 92%), rgb(75 56 8 / 92%));
  color: #ffe699;
}
.home-credential-badge.is-navy {
  border: 1px solid rgb(37 196 255 / 45%);
  background: linear-gradient(135deg, rgb(3 24 44 / 92%), rgb(8 45 77 / 92%));
  color: #d6f2ff;
}
.home-main-premium-banner__clients {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .5rem;
  padding: .25rem .55rem;
  border: 1px solid rgb(255 255 255 / 15%);
  border-radius: 6px;
  background: rgb(3 20 36 / 88%);
  backdrop-filter: blur(8px);
  color: #d5e6f5;
  font-size: .44rem;
}
.home-client-group {
  display: inline-flex;
  align-items: center;
  gap: .3rem;
  flex-wrap: wrap;
}
.home-client-group small {
  color: #8bb3d6;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .05em;
}
.home-client-group span {
  display: inline-block;
  padding: .08rem .35rem;
  border: 1px solid rgb(255 255 255 / 15%);
  border-radius: 4px;
  background: rgb(255 255 255 / 8%);
  color: #fff;
  font-weight: 750;
}
.home-more-clients {
  color: #e0b84c !important;
  font-style: italic;
}
.home-main-premium-banner img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: contain;
  background: #000;
  image-rendering: -webkit-optimize-contrast;
  image-rendering: crisp-edges;
  backface-visibility: hidden;
  transform: translateZ(0);
}

/* Pieza premium fija sobre la noticia principal. */
.home-premium-lead-ad {
  margin: 0 0 clamp(1rem, 2vw, 1.4rem);
  overflow: hidden;
  border: 1px solid #cbd8e4;
  border-radius: 12px;
  background: #061a27;
  box-shadow: 0 13px 32px rgb(7 26 55 / 12%);
}
.home-premium-lead-ad__heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: .42rem .68rem;
  border-bottom: 1px solid rgb(230 189 107 / 35%);
  background: linear-gradient(90deg, #071e2c, #0b2936);
  color: #fff;
  font-size: .52rem;
  letter-spacing: .11em;
  text-transform: uppercase;
}
.home-premium-lead-ad__heading span { color: #e6bd6b; font-weight: 900; }
.home-premium-lead-ad__heading small { color: #c5d1d8; font-size: inherit; font-weight: 700; }
.home-premium-lead-ad__media {
  aspect-ratio: 2170 / 407;
  overflow: hidden;
  background: #061a27;
}
.home-premium-lead-ad__media > a { display: block; height: 100%; }
.home-premium-lead-ad img {
  width: 100%;
  height: auto;
  display: block;
  transform: translateY(-21.93%);
}

@media (max-width: 40rem) {
  .home-main-premium-banner { width: 100%; border-radius: 10px; }
  .home-main-premium-banner__credentials { inset: .3rem .3rem auto; gap: .25rem; }
  .home-credential-badge { font-size: .38rem; padding: .18rem .4rem; }
  .home-main-premium-banner__clients { font-size: .38rem; padding: .2rem .4rem; gap: .35rem; }
  .home-client-group span { padding: .05rem .25rem; }
  .home-main-premium-banner__footer { inset: auto .3rem .3rem; }
  .home-main-premium-banner__investment-tag { font-size: .38rem; padding: .2rem .5rem; }
  .home-premium-lead-ad { border-radius: 9px; }
  .home-premium-lead-ad__heading { padding: .36rem .52rem; font-size: .46rem; }
}
.home-side-rail { padding: 1.25rem 1.1rem; }
.home-monthly-section,
.home-side-section:last-child { padding: 0; border: 0; border-radius: 0; background: transparent; }
.home-monthly-heading > div { width: 100%; }
.home-monthly-heading span { display: block; margin-bottom: .2rem; color: #68798a; font-size: .56rem; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }
.home-monthly-highlights { display: grid; gap: 0; }
.home-highlight-card { display: grid; grid-template-columns: 5.5rem minmax(0, 1fr); gap: .7rem; align-items: center; padding: .8rem 0; border-bottom: 1px solid #e1e7ec; color: inherit; text-decoration: none; }
.home-highlight-card:last-child { border-bottom: 0; }
.home-highlight-card figure { aspect-ratio: 4 / 3; margin: 0; overflow: hidden; border-radius: 6px; background: #fff; }
.home-highlight-card figure img { width: 100%; height: 100%; display: block; background: #fff; object-fit: contain; object-position: center; transition: opacity 260ms ease; }
.home-highlight-card:hover figure img { transform: none; }
.home-highlight-card > div { min-width: 0; }
.home-highlight-card p { display: flex; flex-wrap: wrap; justify-content: space-between; gap: .3rem; margin: 0 0 .22rem; color: #7b8998; font-size: .56rem; letter-spacing: .035em; text-transform: uppercase; }
.home-highlight-card p strong { color: #075fc7; font-weight: 850; }
.home-highlight-card h3 { margin: 0; color: #10243d; font-family: var(--nc-font-editorial); font-size: .88rem; line-height: 1.22; transition: color 160ms ease; }
.home-highlight-card:hover h3 { color: #075fc7; }
.home-highlight-card.is-lead { display: block; padding-top: .85rem; }
.home-highlight-card.is-lead figure { aspect-ratio: 16 / 9; border-radius: 9px; }
.home-highlight-card.is-lead > div { padding-top: .55rem; }
.home-highlight-card.is-lead h3 { font-size: 1.08rem; line-height: 1.18; }
.home-highlight-card.is-lead .home-text-link { margin-top: .4rem; font-size: .66rem; }

.home-newsletter-strip { display: grid; grid-template-columns: minmax(18rem, .9fr) minmax(26rem, 1.1fr); gap: clamp(1.5rem, 4vw, 4rem); align-items: center; margin-top: 1.75rem; padding: clamp(1.35rem, 2.8vw, 2rem); border: 1px solid #d5e0ea; border-top: 3px solid #0873d1; border-radius: 14px; background: #f5f8fb; box-shadow: 0 12px 34px rgb(7 26 55 / 5%); }
.home-newsletter-strip__copy { display: flex; gap: 1rem; align-items: center; min-width: 0; }
.home-newsletter-strip__mark { width: 3.2rem; height: 3.2rem; flex: 0 0 3.2rem; display: grid; place-items: center; border-radius: 50%; background: #071f43; color: #fff; font: 800 .8rem/1 var(--nc-font-editorial); letter-spacing: .04em; }
.home-newsletter-strip__kicker { color: #0873d1; font-size: .6rem; font-weight: 900; letter-spacing: .11em; text-transform: uppercase; }
.home-newsletter-strip h2 { margin: .18rem 0 .25rem; color: #071a37; font: 750 clamp(1.3rem, 2.1vw, 1.85rem)/1.08 var(--nc-font-editorial); letter-spacing: -.025em; }
.home-newsletter-strip__copy p { margin: 0; color: #566779; font-size: .78rem; line-height: 1.5; }
.home-newsletter-strip__form { min-width: 0; }
.home-newsletter-strip__fields { display: grid; grid-template-columns: minmax(0, 1fr) auto; overflow: hidden; border: 1px solid #b8c8d7; border-radius: 9px; background: #fff; transition: border-color 160ms ease, box-shadow 160ms ease; }
.home-newsletter-strip__fields:focus-within { border-color: #0873d1; box-shadow: 0 0 0 3px rgb(8 115 209 / 13%); }
.home-newsletter-strip__fields input,
.home-newsletter-strip__fields button { min-height: 46px; box-sizing: border-box; border: 0; border-radius: 0; font: inherit; }
.home-newsletter-strip__fields input { width: 100%; padding: .7rem .9rem; background: #fff; color: #14273d; font-size: .82rem; }
.home-newsletter-strip__fields input:focus { outline: 0; box-shadow: none; }
.home-newsletter-strip__fields button { display: inline-flex; align-items: center; gap: .5rem; justify-content: center; padding: .7rem 1rem; background: #0873d1; color: #fff; cursor: pointer; font-size: .73rem; font-weight: 850; transition: background 160ms ease; white-space: nowrap; }
.home-newsletter-strip__fields button:hover { background: #065fae; }
.home-newsletter-strip__fields button:disabled { cursor: wait; opacity: .7; }
.home-newsletter-strip .newsletter-consent-check { display: grid; grid-template-columns: 16px 1fr; gap: .45rem; align-items: start; margin: .55rem 0 0; color: #596b7e; cursor: pointer; font-size: .62rem; line-height: 1.4; }
.home-newsletter-strip .newsletter-consent-check input { width: 15px; height: 15px; margin: .08rem 0 0; accent-color: #0873d1; }
.home-newsletter-strip__privacy { margin: .38rem 0 0; color: #748496; font-size: .58rem; letter-spacing: .02em; }
.home-newsletter-strip .newsletter-form-status { min-height: 1rem; margin: .35rem 0 0; color: #31506e; font-size: .68rem; }
.home-newsletter-strip .newsletter-form-status.is-error { color: #a32222; }
.home-newsletter-strip .newsletter-form-status.is-success { color: #13703b; }

.home-sponsors-section { margin-top: clamp(2.8rem, 6vw, 5rem); padding: clamp(1.25rem, 2.7vw, 2rem); border-block: 1px solid #dbe3ea; background: #f8fafb; }
.home-sponsors-heading { display: flex; justify-content: space-between; gap: 2rem; align-items: end; margin-bottom: 1.1rem; }
.home-sponsors-heading > div > span { color: #08784f; font-size: .6rem; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.home-sponsors-heading h2 { margin: .22rem 0 .25rem; color: #09213c; font: 750 clamp(1.4rem, 2.25vw, 2rem)/1.08 var(--nc-font-editorial); letter-spacing: -.025em; }
.home-sponsors-heading p { margin: 0; color: #637487; font-size: .75rem; line-height: 1.45; }
.home-sponsor-controls { display: flex; gap: .45rem; }
.home-sponsor-controls button { width: 2.4rem; height: 2.4rem; display: grid; place-items: center; border: 1px solid #c8d4de; border-radius: 50%; background: #fff; color: #0d355e; cursor: pointer; font-size: 1rem; transition: border-color 160ms ease, color 160ms ease, transform 160ms ease; }
.home-sponsor-controls button:hover { border-color: #0873d1; color: #0873d1; transform: translateY(-1px); }
.home-sponsor-viewport { min-width: 0; overflow: hidden; }
.home-sponsor-track { display: grid; grid-auto-flow: column; grid-auto-columns: clamp(11.5rem, 18vw, 14.5rem); gap: .7rem; overflow-x: auto; padding: .2rem .15rem .7rem; scroll-behavior: smooth; scroll-snap-type: x proximity; scrollbar-color: #b7c6d4 transparent; scrollbar-width: thin; }
.home-sponsor-track.is-static { grid-template-columns: repeat(auto-fit, minmax(11.5rem, 1fr)); grid-auto-flow: row; }
.home-sponsor-card { min-width: 0; min-height: 8.7rem; display: grid; grid-template-rows: auto 1fr auto; gap: .45rem; padding: .7rem .8rem; border: 1px solid #dce4eb; border-radius: 9px; background: #fff; color: #26394c; scroll-snap-align: start; text-align: center; text-decoration: none; transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease; }
.home-sponsor-card:hover { border-color: #b6c9d9; box-shadow: 0 9px 22px rgb(7 26 55 / 8%); transform: translateY(-2px); }
.home-sponsor-card > span { justify-self: start; color: #778797; font-size: .48rem; font-weight: 900; letter-spacing: .11em; text-transform: uppercase; }
.home-sponsor-card figure { min-height: 4rem; display: grid; place-items: center; margin: 0; }
.home-sponsor-card img { width: 100%; height: 3.8rem; display: block; object-fit: contain; }
.home-sponsor-card figure b { width: 3rem; height: 3rem; display: grid; place-items: center; border-radius: 50%; background: #e8f0f7; color: #0b5eb4; font-size: .75rem; }
.home-sponsor-card strong { overflow: hidden; font-size: .68rem; font-weight: 750; text-overflow: ellipsis; white-space: nowrap; }
.home-sponsors-section > footer { display: flex; justify-content: space-between; gap: 1rem; align-items: center; margin-top: .75rem; color: #788797; font-size: .58rem; }
.home-sponsors-section > footer a { color: #0b5eb4; font-weight: 800; text-decoration: none; }

.public-page .home-community-membership { margin-top: 0; padding: clamp(2rem, 4vw, 3.2rem) 0; overflow: visible; border-top: 1px solid #dbe3ea; background: #f3f6f8; color: #183049; }
.public-page .home-community-membership::before { display: none; }
.home-community-membership .home-newsletter-inner { grid-template-columns: minmax(15rem, .55fr) minmax(0, 1.45fr); gap: clamp(1.5rem, 4vw, 3.5rem); }
.home-community-membership .home-newsletter-heading { position: static; padding-top: .5rem; }
.public-page .home-community-membership h2 { color: #071a37; font-size: clamp(1.55rem, 2.5vw, 2.3rem); }
.public-page .home-community-membership .home-newsletter-heading p { color: #5d7084; }
.home-community-membership .home-newsletter-edition { border-color: #cad6e0; background: #fff; color: #304a63; }
.home-community-membership .home-newsletter-trust { color: #496176; }
.home-community-membership .home-subscription-card { padding: clamp(1rem, 2.4vw, 1.6rem); border-color: #d8e1e8; border-radius: 12px; box-shadow: 0 12px 34px rgb(7 26 55 / 7%); }
.public-page .home-community-membership .home-subscription-card h3 { font-size: clamp(1.35rem, 2vw, 1.8rem); }

@media (max-width: 72rem) {
  .home-monthly-highlights { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; padding-top: .25rem; }
  .home-highlight-card,
  .home-highlight-card.is-lead { display: block; padding: .8rem 0 0; border-bottom: 0; }
  .home-highlight-card figure,
  .home-highlight-card.is-lead figure { aspect-ratio: 16 / 9; }
  .home-highlight-card > div,
  .home-highlight-card.is-lead > div { padding-top: .55rem; }
  .home-highlight-card h3,
  .home-highlight-card.is-lead h3 { font-size: .95rem; }
  .home-highlight-card.is-lead .home-text-link { display: none; }
}
@media (max-width: 60rem) {
  .home-newsletter-strip { grid-template-columns: 1fr; gap: 1rem; }
  .home-community-membership .home-newsletter-inner { grid-template-columns: 1fr; }
}
@media (max-width: 44rem) {
  .home-premium { padding-bottom: 3rem; }
  .home-monthly-highlights { grid-template-columns: 1fr; gap: 0; }
  .home-highlight-card { display: grid; padding: .75rem 0; border-bottom: 1px solid #e1e7ec; }
  .home-highlight-card.is-lead { display: block; }
  .home-highlight-card:not(.is-lead) figure { aspect-ratio: 4 / 3; }
  .home-newsletter-strip { margin-top: 1rem; padding: 1.15rem; border-radius: 11px; }
  .home-newsletter-strip__copy { align-items: flex-start; }
  .home-newsletter-strip__mark { width: 2.7rem; height: 2.7rem; flex-basis: 2.7rem; }
  .home-newsletter-strip__fields { grid-template-columns: 1fr; overflow: visible; border: 0; background: transparent; gap: .55rem; }
  .home-newsletter-strip__fields input,
  .home-newsletter-strip__fields button { width: 100%; min-height: 46px; border-radius: 8px; }
  .home-newsletter-strip__fields input { border: 1px solid #b8c8d7; }
  .home-sponsors-section { margin-inline: -.6rem; padding-inline: 1rem; }
  .home-sponsors-heading { align-items: flex-start; }
  .home-sponsor-track,
  .home-sponsor-track.is-static { display: grid; grid-auto-flow: column; grid-template-columns: none; grid-auto-columns: minmax(11rem, 76%); justify-content: start; overflow-x: auto; }
  .home-sponsors-section > footer { align-items: flex-start; flex-direction: column; }
  .home-community-membership .home-newsletter-inner { width: min(calc(100% - 1.2rem), 1360px); }
}
@media (prefers-reduced-motion: reduce) {
  .home-highlight-card figure img,
  .home-sponsor-card,
  .home-sponsor-controls button,
  .home-newsletter-strip__fields,
  .home-newsletter-strip__fields button { transition: none; }
  .home-sponsor-track { scroll-behavior: auto; }
}

/* ========================================================================== 
   PORTADA 2026 · POLICIALES EDITORIAL PREMIUM
   Rediseño aislado de la portada. No afecta /policiales ni paneles admin.
   ========================================================================== */
.home-police-premium {
  position: relative;
  margin-top: clamp(1.6rem, 3vw, 2.35rem);
  overflow: hidden;
  padding: clamp(18px, 2vw, 26px);
  border: 1px solid rgb(19 54 91 / 85%);
  border-radius: 22px;
  background:
    radial-gradient(circle at 96% 0%, rgb(180 35 53 / 17%), transparent 30rem),
    linear-gradient(135deg, #06162d 0%, #092846 58%, #071d35 100%);
  box-shadow: 0 22px 58px rgb(7 26 55 / 16%);
  color: #fff;
}
.home-police-premium::before {
  position: absolute;
  inset: 0 auto 0 0;
  width: 4px;
  background: linear-gradient(180deg, #f0c56d 0%, #b42335 52%, #4a91ca 100%);
  content: "";
}
.home-police-premium__header {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 16px;
  padding: 0 2px 14px;
  border-bottom: 1px solid rgb(255 255 255 / 13%);
}
.home-police-premium__eyebrow,
.home-police-more__header span {
  display: block;
  color: #f3c76f;
  font-size: .66rem;
  font-weight: 850;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.home-police-premium__header h2,
.home-police-more__header h2 {
  margin: 4px 0 0;
  font: 760 clamp(1.55rem, 2.15vw, 2.05rem)/1 var(--nc-font-editorial, Georgia, serif);
  letter-spacing: -.025em;
}
.home-police-premium__header h2 { color: #fff; }
.home-police-premium__header > a,
.home-police-more__header > a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: .76rem;
  font-weight: 850;
  text-decoration: none;
  transition: transform 180ms ease, color 180ms ease;
}
.home-police-premium__header > a { color: #f3c76f; }
.home-police-premium__header > a:hover,
.home-police-premium__header > a:focus-visible,
.home-police-more__header > a:hover,
.home-police-more__header > a:focus-visible { transform: translateX(3px); }

/* Altura editorial estable en escritorio: aprox. 70% de la composición anterior. */
.home-police-premium__stage {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1.58fr) minmax(300px, .78fr);
  gap: clamp(18px, 2vw, 26px);
  height: 390px;
  min-height: 390px;
  overflow: hidden;
}
.home-police-premium__lead {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(260px, .96fr) minmax(250px, 1.04fr);
  overflow: hidden;
  border: 0;
  border-radius: 15px;
  background: #f8fbfe;
  color: inherit;
  text-decoration: none;
  box-shadow: 0 14px 34px rgb(0 9 22 / 22%);
  transition: transform 200ms ease, box-shadow 200ms ease;
}
.home-police-premium__lead:hover,
.home-police-premium__lead:focus-visible {
  transform: translateY(-2px);
  box-shadow: 0 18px 40px rgb(0 9 22 / 30%);
}
.home-police-premium__lead figure {
  position: relative;
  min-width: 0;
  height: 100%;
  margin: 0;
  overflow: hidden;
  background: #fff;
}
.home-police-premium__lead figure::after {
  position: absolute;
  inset: 0;
  display: none;
  background: none;
  content: "";
  pointer-events: none;
}
.home-police-premium__lead figure img { width: 100%; height: 100%; background: #fff; object-fit: contain; object-position: center; }
.home-police-premium__placeholder {
  width: 100%;
  height: 100%;
  display: grid;
  place-content: center;
  gap: 5px;
  background: radial-gradient(circle at 35% 22%, #285a88, #0b315d 55%, #071d35);
  text-align: center;
}
.home-police-premium__placeholder b { font: 800 3rem/1 Georgia, serif; }
.home-police-premium__placeholder small { color: #d7e8f8; font-size: .64rem; font-weight: 850; letter-spacing: .13em; text-transform: uppercase; }
.home-police-premium__badge {
  position: absolute;
  z-index: 2;
  left: 14px;
  bottom: 14px;
  padding: 6px 10px;
  border-radius: 999px;
  background: #b42335;
  color: #fff;
  font-size: .64rem;
  font-weight: 900;
  letter-spacing: .1em;
  text-transform: uppercase;
}
.home-police-premium__lead-copy {
  min-width: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  overflow: hidden;
  padding: clamp(20px, 2.15vw, 30px);
}
.home-police-premium__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 11px;
  margin: 0 0 9px;
  color: #6a7c8f;
  font-size: .68rem;
  font-weight: 800;
  letter-spacing: .02em;
  text-transform: uppercase;
}
.home-police-premium__meta span { color: #b42335; }
.home-police-premium__lead-copy h3 {
  display: -webkit-box;
  margin: 0;
  overflow: hidden;
  color: #102b4c;
  font: 760 clamp(1.24rem, 1.75vw, 1.82rem)/1.08 var(--nc-font-editorial, Georgia, serif);
  letter-spacing: -.018em;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
}
.home-police-premium__lead-copy > p:not(.home-police-premium__meta) {
  display: -webkit-box;
  margin: 12px 0 0;
  overflow: hidden;
  color: #53677c;
  font-size: clamp(.76rem, .87vw, .88rem);
  line-height: 1.42;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}
.home-police-premium__lead-copy > strong {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  margin-top: 16px;
  color: #0b5eb4;
  font-size: .7rem;
  font-weight: 900;
  letter-spacing: .04em;
  text-transform: uppercase;
}

/* Rail integrado: divisores editoriales en vez de cards anidadas. */
.home-police-premium__rail {
  min-width: 0;
  height: 100%;
  display: grid;
  grid-template-rows: repeat(4, minmax(0, 1fr));
  overflow: hidden;
  border-top: 1px solid rgb(255 255 255 / 16%);
  border-bottom: 1px solid rgb(255 255 255 / 16%);
}
.home-police-premium__item {
  min-width: 0;
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) 16px;
  gap: 11px;
  align-items: center;
  overflow: hidden;
  padding: 9px 2px;
  border-bottom: 1px solid rgb(255 255 255 / 13%);
  color: #fff;
  text-decoration: none;
  transition: padding-left 180ms ease, background 180ms ease;
}
.home-police-premium__item:last-child { border-bottom: 0; }
.home-police-premium__item:hover,
.home-police-premium__item:focus-visible {
  padding-left: 7px;
  background: linear-gradient(90deg, rgb(255 255 255 / 6%), transparent);
}
.home-police-premium__number {
  width: 30px;
  height: 30px;
  display: grid;
  place-items: center;
  border: 1px solid rgb(243 199 111 / 45%);
  border-radius: 50%;
  color: #f3c76f;
  font-size: .7rem;
  font-weight: 900;
}
.home-police-premium__item-copy { min-width: 0; }
.home-police-premium__item-copy small {
  display: block;
  margin-bottom: 4px;
  color: #a9c4de;
  font-size: .61rem;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.home-police-premium__item-copy strong {
  display: -webkit-box;
  overflow: hidden;
  color: #fff;
  font: 720 clamp(.82rem, .96vw, .98rem)/1.16 var(--nc-font-editorial, Georgia, serif);
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.home-police-premium__item > span:last-child { color: #f3c76f; font-weight: 900; }

/* Noticias policiales 6+; bloque liviano, sin imágenes ni cajas pesadas. */
.home-police-more {
  margin-top: 14px;
  padding: clamp(18px, 2vw, 24px) clamp(4px, .8vw, 10px) 4px;
  border-top: 1px solid #d8e3ed;
}
.home-police-more__header {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 8px;
}
.home-police-more__header span { color: #a12638; }
.home-police-more__header h2 { color: #102b4c; font-size: clamp(1.35rem, 1.9vw, 1.78rem); }
.home-police-more__header > a { color: #0b5eb4; }
.home-police-more__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: clamp(24px, 4vw, 52px);
}
.home-police-more__item {
  position: relative;
  min-width: 0;
  padding: 16px 22px 16px 0;
  border-bottom: 1px solid #dfe7ef;
  color: inherit;
  text-decoration: none;
}
.home-police-more__item::after {
  position: absolute;
  top: 50%;
  right: 2px;
  color: #9bb0c3;
  content: "→";
  transform: translateY(-50%);
  transition: transform 180ms ease, color 180ms ease;
}
.home-police-more__item:hover::after,
.home-police-more__item:focus-visible::after { color: #0b5eb4; transform: translate(3px, -50%); }
.home-police-more__item h3 {
  display: -webkit-box;
  margin: 0;
  overflow: hidden;
  color: #173653;
  font: 730 clamp(.96rem, 1.12vw, 1.08rem)/1.22 var(--nc-font-editorial, Georgia, serif);
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.home-police-more__item p {
  display: -webkit-box;
  margin: 6px 0 0;
  overflow: hidden;
  color: #657789;
  font-size: .78rem;
  line-height: 1.35;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

@media (max-width: 71.99rem) {
  .home-police-premium__stage {
    grid-template-columns: minmax(0, 1.35fr) minmax(270px, .8fr);
    height: 370px;
    min-height: 370px;
  }
  .home-police-premium__lead { grid-template-columns: minmax(220px, .88fr) minmax(230px, 1.12fr); }
}
@media (max-width: 56rem) {
  .home-police-premium__stage {
    height: auto;
    min-height: 0;
    overflow: visible;
    grid-template-columns: 1fr;
  }
  .home-police-premium__lead { min-height: 340px; }
  .home-police-premium__rail { height: auto; grid-template-rows: repeat(4, auto); }
  .home-police-premium__item { min-height: 72px; }
}
@media (max-width: 42rem) {
  .home-police-premium { padding: 15px; border-radius: 17px; }
  .home-police-premium__header,
  .home-police-more__header { align-items: flex-start; flex-direction: column; gap: 8px; }
  .home-police-premium__lead { min-height: 0; grid-template-columns: 1fr; }
  .home-police-premium__lead figure { min-height: 220px; aspect-ratio: 16 / 9; }
  .home-police-premium__lead-copy { padding: 20px; }
  .home-police-premium__lead-copy h3 { font-size: clamp(1.3rem, 6.1vw, 1.7rem); -webkit-line-clamp: 3; }
  .home-police-premium__lead-copy > p:not(.home-police-premium__meta) { -webkit-line-clamp: 2; }
  .home-police-more { padding-inline: 0; }
  .home-police-more__grid { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) {
  .home-police-premium__lead,
  .home-police-premium__item,
  .home-police-premium__header > a,
  .home-police-more__header > a,
  .home-police-more__item::after { transition: none; }
}
