/* Portada 3610: portada visual, información de entrega y enlaces sociales. */
body.home .lge-home-hero,
body.home .lge-home-delivery,
body.home .lge-home-social { box-sizing: border-box; width: 100vw; max-width: none; margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw); }
body.home .lge-home-hero *,
body.home .lge-home-delivery *,
body.home .lge-home-social * { box-sizing: border-box; }

body.home .lge-home-hero { position: relative; isolation: isolate; display: flex; align-items: center; min-height: clamp(530px, 65svh, 680px); padding: 76px 0 70px; overflow: hidden; color: #fff; background: #292a25; }
body.home .lge-home-hero-media,
body.home .lge-home-hero-media > .lge-home-hero-first-frame,
body.home .lge-home-hero-media > .lge-home-hero-video { position: absolute; inset: 0; width: 100%; height: 100%; }
body.home .lge-home-hero-media { z-index: -1; }
body.home .lge-home-hero-media > .lge-home-hero-first-frame,
body.home .lge-home-hero-media > .lge-home-hero-video { display: block; object-fit: cover; object-position: center; }
body.home .lge-home-hero-media > .lge-home-hero-video { opacity: 0; transition: opacity .45s ease; }
body.home .lge-home-hero-media > .lge-home-hero-video.is-playing { opacity: 1; }
body.home .lge-home-hero-inner,
body.home .lge-home-delivery-inner,
body.home .lge-home-social-inner { width: min(80vw, 1440px); max-width: calc(100vw - 40px); margin-inline: auto; }
body.home .lge-home-hero-inner { position: relative; z-index: 1; }
body.home .lge-home-hero-copy { max-width: 790px; }
body.home .lge-home-hero .lge-home-hero-kicker { margin: 0 0 18px; color: #fff; font-size: 28px; font-weight: 700; line-height: 1.2; letter-spacing: .015em; text-shadow: 0 1px 2px #111, 0 2px 8px rgba(0,0,0,.85); }
body.home .lge-home-hero h1 { margin: 0 0 24px; color: #fff; font-size: clamp(56px, 4.5vw, 64px); font-weight: 750; line-height: 1.06; letter-spacing: -.025em; text-transform: none; text-shadow: 0 1px 2px #111, 0 2px 8px rgba(0,0,0,.85); }
body.home .lge-home-hero h1 span { display: block; }
body.home .lge-home-hero .lge-home-hero-description { max-width: 58ch; margin: 0 0 30px; color: #fff; font-size: clamp(18px, 1.4vw, 20px); line-height: 1.55; text-shadow: 0 1px 2px #111, 0 2px 8px rgba(0,0,0,.85); }
body.home .lge-home-hero-actions { display: flex; flex-wrap: wrap; gap: 12px; }
body.home .lge-home-hero-actions a { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 12px 20px; border: 2px solid #fff; border-radius: 5px; color: #fff; background: transparent; font-size: 16px; font-weight: 700; line-height: 1.2; text-decoration: none; transition: background-color .15s ease, border-color .15s ease, color .15s ease; }
body.home .lge-home-hero-actions .lge-home-hero-primary { border-color: #111; background: #111; }
body.home .lge-home-hero-actions .lge-home-hero-secondary { text-shadow: 0 1px 2px #111, 0 1px 5px rgba(0,0,0,.95); box-shadow: 0 0 0 1px rgba(0,0,0,.5); }
body.home .lge-home-hero-actions a:hover { border-color: #a98225; background: #a98225; color: #fff; }
body.home .lge-home-hero-actions a:focus-visible,
body.home .lge-home-hero-motion:focus-visible,
body.home .lge-home-delivery a:focus-visible,
body.home .lge-home-social a:focus-visible { outline: 3px solid #a98225; outline-offset: 4px; }
body.home .lge-home-hero-motion { position: absolute; z-index: 2; right: max(20px, calc((100vw - min(80vw, 1440px)) / 2)); bottom: 20px; display: inline-flex; align-items: center; gap: 8px; min-height: 40px; padding: 7px 11px; border: 1px solid rgba(255,255,255,.9); border-radius: 4px; background: rgba(17,17,17,.75); color: #fff; font-size: 14px; cursor: pointer; }
body.home .lge-home-hero-motion[hidden] { display: none !important; }
body.home .lge-home-hero-motion:hover { background: #111; }

body.home .lge-home-delivery { background: #faf7f0; padding: 22px 0; color: #111; }
body.home .lge-home-delivery-inner { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
body.home .lge-home-delivery-item { display: flex; align-items: flex-start; gap: 16px; min-width: 0; padding: 18px 20px; background: #fff; border: 1px solid #dfd5c4; border-radius: 4px; }
body.home .lge-home-delivery-item svg { flex: 0 0 48px; color: #a98225; }
body.home .lge-home-delivery-item h2 { margin: 0 0 5px; color: #111; font-size: 18px; font-weight: 700; line-height: 1.25; text-transform: none; }
body.home .lge-home-delivery-item p { margin: 0; color: #292929; font-size: 15px; line-height: 1.45; }
body.home .lge-home-delivery-item a { color: #6e5111; font-weight: 700; text-decoration: underline; text-underline-offset: 2px; white-space: nowrap; }

body.home .lge-home-social { background: #faf7f0; padding: 20px 0; }
body.home .lge-home-social-inner { display: flex; justify-content: center; flex-wrap: wrap; gap: 14px 28px; }
body.home .lge-home-social a { display: inline-flex; align-items: center; gap: 9px; min-height: 44px; color: #111; font-size: 16px; font-weight: 650; text-decoration: none; }
body.home .lge-home-social a:hover { color: #a98225; text-decoration: underline; }
body.home .lge-home-social svg { width: 26px; height: 26px; color: #a98225; }

@media (max-width: 700px) {
 body.home .lge-home-hero { min-height: 0; padding: 96px 0 72px; }
 body.home .lge-home-hero-inner,
 body.home .lge-home-delivery-inner,
 body.home .lge-home-social-inner { width: calc(100vw - 40px); max-width: none; }
 body.home .lge-home-hero h1 { font-size: clamp(34px, 9vw, 38px); line-height: 1.1; margin-bottom: 18px; }
 body.home .lge-home-hero .lge-home-hero-kicker { font-size: 23px; margin-bottom: 12px; }
 body.home .lge-home-hero .lge-home-hero-description { font-size: 18px; line-height: 1.5; margin-bottom: 24px; }
 body.home .lge-home-hero-actions { flex-direction: column; align-items: flex-start; }
 body.home .lge-home-hero-actions a { width: auto; max-width: 100%; }
 body.home .lge-home-hero-motion { right: 20px; bottom: 14px; }
 body.home .lge-home-delivery { padding: 16px 0; }
 body.home .lge-home-delivery-inner { grid-template-columns: 1fr; gap: 12px; }
 body.home .lge-home-delivery-item { padding: 16px; gap: 12px; }
 body.home .lge-home-delivery-item svg { width: 42px; height: 42px; flex-basis: 42px; }
 body.home .lge-home-social-inner { justify-content: flex-start; }
}
@media (prefers-reduced-motion: reduce) {
 body.home .lge-home-hero-media > .lge-home-hero-video,
 body.home .lge-home-hero-actions a { transition: none; }
}
