/* Vino Nuevo 2.7 – portada editorial real. Dinámica y adaptable.
   Mantiene tarjetas de publicaciones del servidor sin capturas incrustadas. */
:root {--vn27-eggplant:#340f2c;--vn27-berry:#7a1648;--vn27-amber:#d8a866;--vn27-cream:#fffaf5}
body.home {background:#fffaf5}
body.home .vn-site-header {
  background:linear-gradient(90deg,rgba(28,11,27,.89),rgba(24,9,22,.78))!important;
  position:absolute!important;top:0;left:0;right:0;z-index:80;
  box-shadow:0 1px 2px rgba(0,0,0,.16);
}
body.home .vn-header-inner {max-width:1300px;min-height:68px!important;padding:10px 20px!important;justify-content:flex-end!important}
body.home .vn-menu-wrap {gap:clamp(2px,.8vw,16px);justify-content:flex-end!important;width:auto!important;flex-wrap:nowrap}
body.home .vn-menu-link {font-size:.72rem;white-space:nowrap;letter-spacing:.015em;padding:11px 6px}
body.home .vn-menu-link--accent {background:linear-gradient(120deg,#701044,#4e0a35)!important;border:1px solid #e789bc!important;border-radius:45px!important;padding:10px 24px!important;box-shadow:inset 0 1px 1px #fff4,0 4px 14px #180a1ab3;color:#fff!important}
body.home .vn-menu-search {display:inline-flex;align-items:center;padding:6px 13px;color:white;text-decoration:none;font-size:1.9rem;line-height:1}
body.home .vn-menu-search:hover {color:#ffd5a3}
body.home .vn-topline {display:none}
.vn27-home {background:#fffaf5;margin:0!important;max-width:none!important;width:100%;font-family:'Manrope',sans-serif;color:#2e2024}
.vn27-home * {box-sizing:border-box}
.vn27-hero {height:clamp(490px,31vw,630px);position:relative;isolation:isolate;background:#29101b url('../images/vn-portada-editorial.webp') center/cover no-repeat;overflow:hidden}
.vn27-hero::before {content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(15,5,15,.24),rgba(21,6,17,.53) 23%,rgba(22,6,20,.20) 62%,rgba(0,0,0,.03) 100%);z-index:-1}
.vn27-hero-inner {max-width:1320px;margin:auto;height:100%;display:flex;align-items:flex-end;padding:104px 30px 29px}
.vn27-hero-copy {width:min(715px,65%);padding-left:clamp(70px,13vw,210px);color:#fff;text-shadow:0 2px 8px #140712a9;animation:vn27-enter .9s .06s backwards}
.vn27-hero-kicker {font-weight:700;letter-spacing:.3em;font-size:clamp(.54rem,.85vw,.8rem);color:#faf1e0;display:block;margin:0 0 -4px}
.vn27-hero-logo {width:min(615px,53vw);max-height:230px;object-fit:contain;filter:drop-shadow(0 3px 8px #0a030a99);display:block;margin:0 0 -2px -17px}
.vn27-hero-accent {width:128px;height:3px;background:#cc1771;margin:7px 0 14px}
.vn27-hero-tagline {font:italic 700 clamp(1.1rem,1.65vw,1.6rem)/1.2 Georgia,serif;color:#fff;margin:0 0 7px}
.vn27-hero-desc {font:400 clamp(.89rem,1.2vw,1.04rem)/1.35 Georgia,serif;color:#fefaf5;max-width:465px;margin:0 0 17px}
.vn27-hero-button {display:inline-flex;align-items:center;gap:20px;padding:10px 13px 10px 25px;border:1px solid #ffebfa;border-radius:40px;background:linear-gradient(155deg,#850f4d,#530635);font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:white!important;text-decoration:none!important;box-shadow:0 4px 14px #12071188;transition:transform .2s}
.vn27-hero-button span {background:#3e092c;width:28px;height:28px;border-radius:50%;display:grid;place-items:center}
.vn27-hero-button:hover {transform:translateY(-3px)}
.vn27-about {display:grid;grid-template-columns: minmax(340px, 39%) minmax(0,61%);background:#fffaf6;min-height:320px;max-width:1600px;margin:0 auto;gap:5px;padding:12px clamp(15px,3.5vw,58px) 10px;align-items:center}
.vn27-about-copy {padding:8px 18px 4px 7px;max-width:560px}
.vn27-eyebrow {font-size:.66rem;font-weight:800;letter-spacing:.31em;display:flex;gap:15px;align-items:center;margin-bottom:3px;color:#381721}
.vn27-eyebrow span {width:36px;height:3px;background:#af1c60}
.vn27-about h2 {font:600 clamp(3.3rem,4.8vw,5.2rem)/.9 'Cormorant Garamond',Georgia,serif;letter-spacing:-.05em;color:#2e0d23;margin:0 0 15px}
.vn27-about h2 em {color:#851448;font-weight:600}
.vn27-about p {font:400 clamp(.85rem,1.08vw,1.05rem)/1.4 Georgia,serif;color:#34242a;margin:0 0 8px;max-width:550px}
.vn27-outline-button {display:inline-flex;gap:16px;align-items:center;justify-content:space-between;color:#651038!important;border:1px solid #6d173f;border-radius:30px;text-decoration:none!important;font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.02em;margin-top:7px;padding:10px 21px}
.vn27-outline-button:hover {background:#f5e7ed}
.vn27-outline-button span {font-size:1.3em}
.vn27-about-media {position:relative;min-width:0;align-self:stretch;min-height:300px;overflow:hidden;clip-path:polygon(3% 0,100% 0,100% 100%,0 100%,1% 9%)}
.vn27-about-media>img {position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 52%;display:block}
.vn27-about-media:after {content:"";position:absolute;inset:0;pointer-events:none;box-shadow:inset 16px 0 22px #fffaf6aa}
.vn27-scripture {position:absolute;right:0;bottom:0;z-index:1;display:flex;align-items:center;gap:22px;max-width:420px;padding:20px 25px;background:linear-gradient(110deg,#4b1239e8,#69143acc);color:#fff}
.vn27-book {font-size:2.4rem;color:white;font-family:Georgia,serif}
.vn27-scripture i {font:italic 400 clamp(1.05rem,1.3vw,1.4rem)/1.2 Georgia,serif}
.vn27-scripture small {display:block;font:700 .59rem/1.7 'Manrope',sans-serif;letter-spacing:.15em;margin-top:6px}
.vn27-feature-grid {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;padding:4px 12px 13px;max-width:1600px;margin:0 auto;background:#fffaf6}
.vn27-feature {position:relative;isolation:isolate;min-height:216px;overflow:hidden;border-radius:7px;display:flex;align-items:flex-end;justify-content:center;background-size:cover;background-position:center;color:white!important;text-decoration:none!important;transition:transform .26s,box-shadow .26s;box-shadow:inset 0 0 0 1px #ffffff18}
.vn27-feature::before {content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(12,3,9,.86),rgba(12,4,11,.28) 64%,rgba(14,6,10,.09));z-index:-1}
.vn27-feature:hover {transform:translateY(-4px);box-shadow:0 9px 22px #320e2788}
.vn27-feature--sermons {background-image:url('../images/vn-preaching-card.webp')}
.vn27-feature--devotions {background-image:url('../images/vn-devotional-card.webp')}
.vn27-feature--humor {background-image:url('../images/vn-humor-card.webp')}
.vn27-feature--events {background-image:url('../images/vn-events-card.webp')}
.vn27-feature-content {display:flex;align-items:center;gap:20px;width:100%;justify-content:center;padding:12px 10px 16px;color:white;text-align:center}
.vn27-feature-content--center {display:flex;flex-direction:column;gap:4px}
.vn27-feature-content strong {font:600 clamp(1.5rem,2.1vw,2.35rem)/.95 'Cormorant Garamond',Georgia,serif;display:block;color:white}
.vn27-feature-content small {display:block;font:400 clamp(.74rem,.9vw,1rem)/1.25 Georgia,serif;color:#fff1eb;margin:3px 0 10px}
.vn27-feature-icon {font-size:1.25rem;border:2px solid #fff;border-radius:50%;width:57px;height:57px;display:grid;place-items:center;flex:none;color:white}
.vn27-feature-cta {display:inline-flex;align-items:center;justify-content:center;gap:18px;border:1px solid #ffedec;border-radius:30px;font-size:.65rem;font-weight:800;letter-spacing:.03em;padding:9px 18px;color:white;text-transform:uppercase;background:#17081333}
.vn27-audience-links {display:flex;align-items:center;gap:5px;justify-content:center;flex-wrap:wrap;margin-top:0}
.vn27-audience-links a {font:700 .68rem/1.2 'Manrope',sans-serif;background:#fffdf9;color:#4a1931;text-decoration:none;padding:11px 9px;border-radius:30px;transition:background .2s}
.vn27-audience-links a:hover {background:#e9b8cd}
.vn27-latest {padding:85px 24px 100px;background:linear-gradient(135deg,#fff9f4,#f5eae5)}
.vn27-section-header {max-width:1250px;margin:0 auto 34px;text-align:center}
.vn27-section-header>span {font-size:.69rem;letter-spacing:.22em;font-weight:800;color:#851b4d}
.vn27-section-header h2 {font:600 clamp(2.8rem,5vw,5rem)/.97 'Cormorant Garamond',Georgia,serif;color:#36152a;margin:9px auto}
.vn27-section-header h2 em {color:#851b4d}
.vn27-section-header p {color:#726069}
.vn27-latest-layout {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-width:1270px;margin:auto;gap:24px}
.vn27-latest-group {padding:25px;background:white;border:1px solid #e9d9dd;border-radius:16px;min-width:0;box-shadow:0 12px 30px #47172f0c}
.vn27-latest-group header {display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:18px;border-bottom:1px solid #f0e6e9;padding-bottom:14px}
.vn27-latest-group h3 {font:600 clamp(1.65rem,2.4vw,2.35rem)/1 'Cormorant Garamond',Georgia,serif;color:#4a1938;margin:0}
.vn27-latest-group header>a,.vn27-latest-read {color:#83174c;text-decoration:none;font-size:.68rem;text-transform:uppercase;font-weight:800;white-space:nowrap}
.vn27-latest-posts {display:grid;gap:18px}
.vn27-latest-item {display:grid;grid-template-columns:150px minmax(0,1fr);gap:15px;align-items:start;min-width:0}
.vn27-latest-image {display:block;aspect-ratio:5/4;border-radius:10px;overflow:hidden;background:#ebd4d9}
.vn27-latest-image img {width:100%;height:100%;object-fit:cover}
.vn27-latest-no-photo {height:100%;width:100%;display:grid;place-items:center;background:linear-gradient(120deg,#5b153f,#96627b);color:#fff;font-size:4rem}
.vn27-latest-details time {font-size:.66rem;letter-spacing:.04em;color:#866b77}
.vn27-latest-details h4 {font:600 clamp(1.35rem,2vw,1.8rem)/1.05 'Cormorant Garamond',Georgia,serif;margin:5px 0;color:#361327}
.vn27-latest-details h4 a {color:inherit;text-decoration:none}
.vn27-latest-details p {font-size:.77rem;line-height:1.55;margin:6px 0;color:#765e6d}
.vn27-empty-latest {color:#765e6d;font-size:.91rem;padding:10px 0}
@keyframes vn27-enter {from {opacity:0;transform:translateX(-20px)}to {opacity:1;transform:translateX(0)}}
@media(max-width:1180px){body.home .vn-header-inner {max-width:1100px}body.home .vn-menu-link {font-size:.66rem}body.home .vn-menu-wrap {gap:4px}.vn27-hero-copy {padding-left:clamp(75px,11vw,135px)}.vn27-about {grid-template-columns:45% 55%}.vn27-feature-content strong {font-size:1.7rem}}
@media(max-width:940px){body.home .vn-site-header {position:absolute!important}body.home .vn-header-inner{justify-content:flex-end!important}body.home .vn-menu-wrap {width:auto!important;position:absolute;top:100%;left:0;right:0;background:#2a0d22;padding:18px;align-items:stretch;flex-wrap:wrap}body.home .vn-menu-wrap:not(.is-open){display:none!important}body.home .vn-menu-wrap.is-open{display:flex!important;flex-direction:column}body.home .vn-menu-toggle {display:inline-flex!important} .vn27-hero {height:550px}.vn27-hero-copy{width:80%;padding-left:clamp(20px,9vw,100px)}.vn27-about{grid-template-columns:1fr 1fr}.vn27-about h2{font-size:3.8rem}.vn27-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.vn27-feature{min-height:205px}}
@media(max-width:660px){.vn27-hero{height:520px;background-position:46% center}.vn27-hero-inner{padding:105px 25px 30px;align-items:center}.vn27-hero-copy{padding-left:0;width:96%;max-width:420px}.vn27-hero-logo{width:min(370px,85vw);max-height:150px}.vn27-hero-desc{max-width:355px}.vn27-about{grid-template-columns:1fr;padding:30px 19px 12px;gap:15px}.vn27-about-copy{padding:0}.vn27-about h2{font-size:3.65rem}.vn27-about-media{min-height:285px;clip-path:none;border-radius:14px}.vn27-scripture{max-width:290px;padding:14px 18px}.vn27-scripture i{font-size:1rem}.vn27-feature-grid{gap:9px;padding:8px 10px 15px}.vn27-feature{min-height:185px}.vn27-feature-content{padding:12px 8px}.vn27-feature-icon{display:none}.vn27-feature-content strong{font-size:1.7rem}.vn27-feature-content small{font-size:.74rem}.vn27-audience-links{gap:5px}.vn27-audience-links a{font-size:.59rem;padding:8px}.vn27-latest{padding:65px 15px}.vn27-latest-layout{grid-template-columns:1fr}.vn27-latest-group{padding:20px 16px}.vn27-latest-item{grid-template-columns:105px minmax(0,1fr);gap:12px}.vn27-latest-details p{font-size:.72rem}}
@media(max-width:420px){.vn27-feature-grid{grid-template-columns:1fr}.vn27-feature{min-height:180px}.vn27-about h2{font-size:3.3rem}}
@media(prefers-reduced-motion:reduce){.vn27-hero-copy,.vn27-feature,.vn27-hero-button{animation:none!important;transition:none!important}}
/* WordPress Full Site Editing constrains shortcode blocks to content width.
   Let this one component break out so the approved hero always fills viewport. */
body.home .vn27-home {
  width:100vw!important;
  max-width:none!important;
  margin-left:calc(50% - 50vw)!important;
  margin-right:0!important;
  padding:0!important;
}
body.home .wp-block-shortcode:has(> .vn27-home) {
  max-width:none!important;
  margin:0!important;
  padding:0!important;
}
