/**
 * Taqueria La Favorita Home CSS
 * Extracted from homepage-5-9-26-8-30pm.txt
 * Upload path: /wp-content/themes/gatsby-child/assets/css/lf-home.css
 */

#lf-home-experience {
      --lf-night: #0c0b18;
      --lf-navy: #14132f;
      --lf-purple: #211d4b;
      --lf-purple-2: #2b245e;
      --lf-magenta: #e02a83;
      --lf-cream: #ffe4b3;
      --lf-white: #f7f3ea;
      --lf-muted: rgba(247, 243, 234, 0.68);
      --lf-muted-dark: rgba(36, 24, 6, 0.72);
      --lf-teal: #00b592;
      --lf-green: #aacf3a;
      --lf-parchment: #e6c98f;
      --lf-parchment-soft: #f1dab0;
      --lf-ink: #241806;
      --lf-glass: rgba(255, 255, 255, 0.075);
      --lf-glass-strong: rgba(255, 255, 255, 0.12);
      --lf-line: rgba(255, 228, 179, 0.13);
      --lf-shadow: 0 34px 100px rgba(0, 0, 0, 0.34);
      --lf-ease: cubic-bezier(.18,.85,.25,1);
      --lf-top-space: clamp(92px, 8vw, 120px);

      position: relative;
      overflow: hidden;
      isolation: isolate;
      background: #0c0b18;
      color: var(--lf-white);
      font-family: "Josefin Sans", "Montserrat", "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
      padding-top: var(--lf-top-space);
    }

    #lf-home-experience * {
      box-sizing: border-box;
    }

    #lf-home-experience a {
      color: inherit;
      text-decoration: none;
    }

    #lf-home-experience img,
    #lf-home-experience svg,
    #lf-home-experience video {
      display: block;
      max-width: 100%;
    }

    #lf-home-experience .lf-wrap {
      width: min(1280px, calc(100% - 28px));
      margin: 0 auto;
      position: relative;
      z-index: 4;
    }

    #lf-home-experience .lf-section {
      position: relative;
      overflow: hidden;
      isolation: isolate;
      padding: clamp(82px, 11vw, 150px) 0;
    }

    #lf-home-experience .lf-section-overlap {
      margin-top: -54px;
    }

    #lf-home-experience .lf-night-section {
      color: var(--lf-white);
      background:
        radial-gradient(circle at calc(var(--lf-mx, 50%) * 1) calc(var(--lf-my, 40%) * 1), rgba(224, 42, 131, .13), transparent 26%),
        radial-gradient(circle at 82% 16%, rgba(0, 181, 146, .10), transparent 24%),
        radial-gradient(circle at 35% 92%, rgba(255, 228, 179, .08), transparent 26%),
        linear-gradient(135deg, #0c0b18 0%, #14132f 42%, #211d4b 100%);
    }

    #lf-home-experience .lf-parchment-section {
      color: var(--lf-ink);
      background:
        radial-gradient(circle at 14% 24%, rgba(255, 255, 255, .18), transparent 22%),
        radial-gradient(circle at 84% 80%, rgba(224, 42, 131, .08), transparent 28%),
        radial-gradient(circle at 70% 18%, rgba(0, 181, 146, .08), transparent 22%),
        linear-gradient(180deg, #f1dab0 0%, #e6c98f 58%, #ddb978 100%);
    }

    #lf-home-experience .lf-curved {
      border-radius: 0 0 8vw 8vw / 0 0 4vw 4vw;
    }

    #lf-home-experience .lf-curved-top {
      border-radius: 8vw 8vw 0 0 / 4vw 4vw 0 0;
    }

    #lf-home-experience .lf-curved-both {
      border-radius: 8vw 8vw 8vw 8vw / 4vw 4vw 4vw 4vw;
    }

    #lf-home-experience .lf-grain::after {
      content: "";
      position: absolute;
      inset: 0;
      z-index: 2;
      pointer-events: none;
      opacity: .22;
      mix-blend-mode: soft-light;
      background-image:
        url("data:image/svg+xml,%3Csvg viewBox='0 0 240 240' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='grain'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.82' numOctaves='4' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='240' height='240' filter='url(%23grain)' opacity='0.82'/%3E%3C/svg%3E");
      background-size: 180px 180px;
    }

    #lf-home-experience .lf-wave {
      position: absolute;
      inset: -25%;
      z-index: 0;
      pointer-events: none;
      background:
        conic-gradient(
          from 180deg at 50% 50%,
          transparent 0deg,
          rgba(224,42,131,.17) 72deg,
          transparent 138deg,
          rgba(0,181,146,.11) 230deg,
          transparent 320deg
        );
      filter: blur(76px);
      opacity: .7;
      animation: lfHomeWaveDrift 18s linear infinite;
    }

    @keyframes lfHomeWaveDrift {
      to {
        transform: rotate(360deg);
      }
    }

    #lf-home-experience .lf-orb {
      position: absolute;
      border-radius: 999px;
      filter: blur(48px);
      opacity: .72;
      pointer-events: none;
      z-index: 0;
      animation: lfHomeOrbFloat 10s ease-in-out infinite alternate;
    }

    #lf-home-experience .lf-orb-magenta {
      background: rgba(224, 42, 131, .26);
    }

    #lf-home-experience .lf-orb-teal {
      background: rgba(0, 181, 146, .18);
    }

    #lf-home-experience .lf-orb-cream {
      background: rgba(255, 228, 179, .18);
    }

    @keyframes lfHomeOrbFloat {
      0% {
        transform: translate3d(-10px, 8px, 0) scale(1);
      }
      100% {
        transform: translate3d(16px, -18px, 0) scale(1.07);
      }
    }

    #lf-home-experience .lf-kicker {
      margin: 0 0 14px;
      color: var(--lf-magenta);
      font-family: "Impact", "Anton", "Oswald", "Arial Black", sans-serif;
      font-size: clamp(24px, 2.45vw, 44px);
      line-height: .9;
      letter-spacing: .035em;
      text-transform: uppercase;
      text-shadow: 0 0 24px rgba(224, 42, 131, .16);
    }

    #lf-home-experience .lf-title {
      margin: 0;
      font-family: Georgia, "Times New Roman", serif;
      font-size: clamp(46px, 5.4vw, 112px);
      line-height: .86;
      letter-spacing: -.078em;
    }

    #lf-home-experience .lf-title-light {
      color: var(--lf-cream);
    }

    #lf-home-experience .lf-title-dark {
      color: var(--lf-navy);
    }

    #lf-home-experience .lf-copy {
      margin: 22px 0 0;
      max-width: 720px;
      font-size: clamp(16px, 1.36vw, 20px);
      line-height: 1.75;
      font-weight: 400;
    }

    #lf-home-experience .lf-copy-light {
      color: var(--lf-muted);
    }

    #lf-home-experience .lf-copy-dark {
      color: var(--lf-muted-dark);
    }

    #lf-home-experience .lf-btn-row {
      display: flex;
      flex-wrap: wrap;
      gap: 12px;
      margin-top: 30px;
    }

    #lf-home-experience .lf-btn {
      --mx: 0px;
      --my: 0px;
      min-height: 52px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      padding: 0 18px;
      border-radius: 999px;
      font-size: 11px;
      font-weight: 950;
      letter-spacing: .12em;
      text-transform: uppercase;
      white-space: nowrap;
      transform: translate(var(--mx), var(--my));
      transition:
        background 240ms var(--lf-ease),
        color 240ms var(--lf-ease),
        transform 240ms var(--lf-ease),
        box-shadow 240ms var(--lf-ease);
    }

    #lf-home-experience .lf-btn:hover {
      transform: translate(var(--mx), var(--my)) translateY(-2px);
    }

    #lf-home-experience .lf-btn-primary {
      background: var(--lf-magenta);
      color: var(--lf-white);
      box-shadow: 0 16px 38px rgba(224, 42, 131, .28);
    }

    #lf-home-experience .lf-btn-primary:hover {
      background: var(--lf-teal);
      color: #071017;
      box-shadow: 0 16px 38px rgba(0, 181, 146, .26);
    }

    #lf-home-experience .lf-btn-glass {
      color: var(--lf-cream);
      background: rgba(255, 255, 255, .075);
      box-shadow: inset 0 0 0 1px rgba(255, 228, 179, .12);
      backdrop-filter: blur(12px);
    }

    #lf-home-experience .lf-btn-glass:hover {
      color: var(--lf-white);
      background: rgba(255, 255, 255, .13);
    }

    #lf-home-experience .lf-btn-cream {
      background: var(--lf-cream);
      color: var(--lf-ink);
      box-shadow: 0 16px 32px rgba(36, 24, 6, .12);
    }

    #lf-home-experience .lf-btn-cream:hover {
      background: #fff0ca;
    }

    #lf-home-experience .lf-btn-light {
      color: var(--lf-ink);
      background: rgba(255, 255, 255, .44);
      box-shadow: inset 0 0 0 1px rgba(36, 24, 6, .08);
      backdrop-filter: blur(12px);
    }

    #lf-home-experience .lf-placeholder {
      position: relative;
      overflow: hidden;
      display: flex;
      align-items: center;
      justify-content: center;
      min-height: 240px;
      border-radius: 34px;
      background:
        radial-gradient(circle at 18% 24%, rgba(224, 42, 131, .22), transparent 24%),
        radial-gradient(circle at 78% 76%, rgba(0, 181, 146, .14), transparent 26%),
        linear-gradient(135deg, rgba(255,255,255,.08), rgba(255,255,255,.025)),
        linear-gradient(180deg, #211d4b 0%, #14132f 100%);
      color: rgba(255, 228, 179, .78);
      box-shadow:
        0 30px 90px rgba(0,0,0,.26),
        inset 0 1px 0 rgba(255,255,255,.10);
      border: 1px solid rgba(255, 228, 179, .12);
      text-align: center;
      padding: 24px;
      font-size: 10px;
      font-weight: 950;
      letter-spacing: .14em;
      text-transform: uppercase;
    }

    #lf-home-experience .lf-placeholder::before {
      content: "";
      position: absolute;
      inset: -55%;
      background:
        linear-gradient(
          112deg,
          transparent 0%,
          transparent 39%,
          rgba(255,255,255,.08) 45%,
          rgba(255,228,179,.16) 50%,
          transparent 60%,
          transparent 100%
        );
      transform: translateX(-120%) skewX(-10deg);
      animation: lfHomeGlassSweep 7s var(--lf-ease) infinite;
      filter: blur(8px);
    }


    #lf-home-experience .lf-media-slot {
      isolation: isolate;
    }

    #lf-home-experience .lf-media-slot > img,
    #lf-home-experience .lf-media-slot > video {
      position: absolute;
      inset: 0;
      z-index: 1;
      width: 100%;
      height: 100%;
      object-fit: cover;
      transform: scale(1.035);
      filter: saturate(1.08) contrast(1.04);
      transition:
        transform 700ms var(--lf-ease),
        filter 700ms var(--lf-ease);
    }

    #lf-home-experience .lf-media-slot:hover > img,
    #lf-home-experience .lf-media-slot:hover > video {
      transform: scale(1.09);
      filter: saturate(1.14) contrast(1.08);
    }

    #lf-home-experience .lf-media-slot > span {
      position: relative;
      z-index: 3;
      max-width: 280px;
      padding: 12px 14px;
      border-radius: 999px;
      background: rgba(12, 11, 24, .42);
      color: rgba(255, 228, 179, .84);
      box-shadow: inset 0 0 0 1px rgba(255,228,179,.10);
      backdrop-filter: blur(10px);
      transition:
        opacity 300ms var(--lf-ease),
        transform 300ms var(--lf-ease);
    }

    #lf-home-experience .lf-media-slot.is-loaded > span {
      opacity: 0;
      transform: translateY(10px);
    }

    #lf-home-experience .lf-media-slot.is-loaded:hover > span {
      opacity: 1;
      transform: translateY(0);
    }

    @keyframes lfHomeGlassSweep {
      0%, 54% {
        transform: translateX(-120%) skewX(-10deg);
        opacity: 0;
      }
      64% {
        opacity: .9;
      }
      100% {
        transform: translateX(120%) skewX(-10deg);
        opacity: 0;
      }
    }

    /* HERO */
    #lf-home-experience .lf-hero {
      min-height: calc(100vh - var(--lf-top-space));
      display: flex;
      align-items: center;
      padding-top: clamp(30px, 5vw, 60px);
      padding-bottom: clamp(110px, 13vw, 180px);
    }

    #lf-home-experience .lf-hero-grid {
      display: grid;
      grid-template-columns: 1.04fr .96fr;
      gap: clamp(30px, 5vw, 70px);
      align-items: center;
    }

    #lf-home-experience .lf-hero-title {
      font-size: clamp(58px, 8.7vw, 130px);
    }

    #lf-home-experience .lf-hero-meta {
      margin-top: 26px;
      display: flex;
      flex-wrap: wrap;
      gap: 12px;
      color: rgba(255, 228, 179, .76);
      font-size: 11px;
      font-weight: 950;
      letter-spacing: .12em;
      text-transform: uppercase;
    }

    #lf-home-experience .lf-hero-meta span {
      display: inline-flex;
      align-items: center;
      gap: 9px;
      min-height: 34px;
      padding: 0 12px;
      border-radius: 999px;
      background: rgba(255,255,255,.06);
      box-shadow: inset 0 0 0 1px rgba(255,228,179,.08);
      backdrop-filter: blur(10px);
    }

    #lf-home-experience .lf-hero-stage {
      position: relative;
      min-height: 640px;
    }

    #lf-home-experience .lf-hero-video {
      min-height: 640px;
      border-radius: 48px 62px 48px 68px / 48px 42px 64px 52px;
      background:
        radial-gradient(circle at 18% 22%, rgba(224,42,131,.23), transparent 24%),
        radial-gradient(circle at 78% 74%, rgba(0,181,146,.16), transparent 26%),
        linear-gradient(135deg, rgba(255,255,255,.10), rgba(255,255,255,.025)),
        linear-gradient(180deg, #211d4b 0%, #111027 100%);
    }

    #lf-home-experience .lf-hero-video::after {
      content: "PLACEHOLDER  CINEMATIC FOOD / BAR / RESTAURANT VIDEO";
      position: absolute;
      left: 24px;
      right: 24px;
      bottom: 22px;
      z-index: 2;
      display: flex;
      justify-content: center;
      min-height: 48px;
      align-items: center;
      padding: 0 18px;
      border-radius: 999px;
      background: rgba(12, 11, 24, .42);
      backdrop-filter: blur(14px);
      color: rgba(255, 228, 179, .82);
      font-size: 10px;
      font-weight: 950;
      letter-spacing: .13em;
      text-transform: uppercase;
    }

    #lf-home-experience .lf-floating-card {
      position: absolute;
      z-index: 5;
      width: 238px;
      border-radius: 30px;
      overflow: hidden;
      background:
        linear-gradient(145deg, rgba(255,255,255,.13), rgba(255,255,255,.045)),
        rgba(255,255,255,.045);
      border: 1px solid rgba(255,228,179,.13);
      box-shadow: 0 28px 80px rgba(0,0,0,.32);
      backdrop-filter: blur(14px);
      transition: transform 320ms var(--lf-ease);
    }

    #lf-home-experience .lf-floating-card:hover {
      transform: translateY(-8px) rotate(0deg) !important;
    }

    #lf-home-experience .lf-floating-card .lf-mini-media {
      min-height: 158px;
      border-radius: 0;
      box-shadow: none;
      border: 0;
    }

    #lf-home-experience .lf-floating-card-content {
      padding: 15px 16px 17px;
    }

    #lf-home-experience .lf-floating-card h3 {
      margin: 0;
      color: var(--lf-cream);
      font-family: Georgia, "Times New Roman", serif;
      font-size: 24px;
      line-height: .95;
      letter-spacing: -.045em;
    }

    #lf-home-experience .lf-floating-card p {
      margin: 8px 0 0;
      color: rgba(247,243,234,.66);
      font-size: 12px;
      line-height: 1.55;
      font-weight: 400;
    }

    #lf-home-experience .lf-float-a {
      left: -36px;
      bottom: 72px;
      transform: rotate(-6deg);
    }

    #lf-home-experience .lf-float-b {
      right: -26px;
      top: 90px;
      transform: rotate(5deg);
    }

    /* QUICK ACTION BAR */
    #lf-home-experience .lf-quick-wrap {
      position: relative;
      z-index: 8;
      margin-top: -84px;
      margin-bottom: -20px;
    }

    #lf-home-experience .lf-quick-bar {
      display: grid;
      grid-template-columns: repeat(5, minmax(0, 1fr));
      gap: 10px;
      padding: 12px;
      border-radius: 34px;
      background:
        linear-gradient(145deg, rgba(255,255,255,.11), rgba(255,255,255,.035)),
        rgba(15, 13, 34, .74);
      border: 1px solid rgba(255, 228, 179, .14);
      box-shadow:
        0 30px 90px rgba(0,0,0,.34),
        inset 0 1px 0 rgba(255,255,255,.10);
      backdrop-filter: blur(18px) saturate(140%);
    }

    #lf-home-experience .lf-quick-item {
      min-height: 92px;
      display: flex;
      flex-direction: column;
      justify-content: center;
      gap: 8px;
      padding: 16px;
      border-radius: 24px;
      color: var(--lf-cream);
      background: rgba(255,255,255,.055);
      box-shadow: inset 0 0 0 1px rgba(255,228,179,.07);
      transition:
        transform 240ms var(--lf-ease),
        background 240ms var(--lf-ease),
        color 240ms var(--lf-ease);
    }

    #lf-home-experience .lf-quick-item:hover {
      transform: translateY(-4px);
      background: rgba(255,255,255,.10);
      color: var(--lf-white);
    }

    #lf-home-experience .lf-quick-item b {
      color: var(--lf-magenta);
      font-size: 10px;
      line-height: 1;
      font-weight: 950;
      letter-spacing: .14em;
      text-transform: uppercase;
    }

    #lf-home-experience .lf-quick-item span {
      font-family: Georgia, "Times New Roman", serif;
      font-size: 22px;
      line-height: .96;
      letter-spacing: -.04em;
    }

    /* MENU WORLDS */
    #lf-home-experience .lf-section-head {
      display: grid;
      grid-template-columns: 1fr auto;
      gap: 24px;
      align-items: end;
      margin-bottom: 36px;
    }

    #lf-home-experience .lf-section-head .lf-copy {
      max-width: 600px;
    }

    #lf-home-experience .lf-world-grid {
      display: grid;
      grid-template-columns: 1.05fr .95fr .95fr;
      gap: 16px;
    }

    #lf-home-experience .lf-world-card {
      position: relative;
      min-height: 430px;
      padding: 20px;
      border-radius: 40px 52px 40px 54px / 40px 34px 52px 42px;
      overflow: hidden;
      background:
        linear-gradient(145deg, rgba(255,255,255,.105), rgba(255,255,255,.035)),
        rgba(255,255,255,.045);
      border: 1px solid rgba(255,228,179,.11);
      box-shadow: var(--lf-shadow);
      backdrop-filter: blur(14px);
      transition:
        transform 320ms var(--lf-ease),
        box-shadow 320ms var(--lf-ease);
    }

    #lf-home-experience .lf-world-card:hover {
      transform: translateY(-10px);
      box-shadow: 0 42px 110px rgba(0,0,0,.38);
    }

    #lf-home-experience .lf-world-card-wide {
      grid-row: span 2;
      min-height: 620px;
    }

    #lf-home-experience .lf-world-media {
      min-height: 245px;
      border-radius: 30px;
      margin-bottom: 20px;
    }

    #lf-home-experience .lf-world-card-wide .lf-world-media {
      min-height: 370px;
    }

    #lf-home-experience .lf-world-card h3 {
      margin: 0;
      color: var(--lf-cream);
      font-family: Georgia, "Times New Roman", serif;
      font-size: clamp(34px, 3.2vw, 56px);
      line-height: .92;
      letter-spacing: -.06em;
    }

    #lf-home-experience .lf-world-card p {
      margin: 14px 0 0;
      color: rgba(247,243,234,.68);
      font-size: 14px;
      line-height: 1.72;
      font-weight: 400;
    }

    #lf-home-experience .lf-chip-row {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
      margin-top: 16px;
    }

    #lf-home-experience .lf-chip {
      min-height: 32px;
      display: inline-flex;
      align-items: center;
      padding: 0 11px;
      border-radius: 999px;
      color: rgba(255,228,179,.82);
      background: rgba(255,255,255,.07);
      box-shadow: inset 0 0 0 1px rgba(255,228,179,.08);
      font-size: 10px;
      font-weight: 950;
      letter-spacing: .10em;
      text-transform: uppercase;
    }

    /* THE BAR */
    #lf-home-experience .lf-bar-grid {
      display: grid;
      grid-template-columns: .88fr 1.12fr;
      gap: clamp(28px, 5vw, 70px);
      align-items: center;
    }

    #lf-home-experience .lf-bar-stage {
      position: relative;
      min-height: 650px;
      border-radius: 54px 68px 54px 72px / 52px 44px 68px 56px;
      overflow: hidden;
      background:
        radial-gradient(circle at 18% 20%, rgba(224,42,131,.26), transparent 24%),
        radial-gradient(circle at 78% 72%, rgba(0,181,146,.18), transparent 26%),
        radial-gradient(circle at 50% 45%, rgba(255,228,179,.11), transparent 24%),
        linear-gradient(135deg, rgba(255,255,255,.12), rgba(255,255,255,.025)),
        linear-gradient(180deg, #211d4b 0%, #0c0b18 100%);
      border: 1px solid rgba(255,228,179,.14);
      box-shadow: 0 38px 120px rgba(0,0,0,.42);
    }

    #lf-home-experience .lf-bar-stage::before {
      content: "";
      position: absolute;
      inset: -45%;
      background:
        conic-gradient(from 180deg at 50% 50%, transparent, rgba(224,42,131,.18), transparent, rgba(0,181,146,.12), transparent);
      filter: blur(70px);
      animation: lfHomeWaveDrift 20s linear infinite;
      opacity: .8;
    }



    #lf-home-experience .lf-bar-stage > img,
    #lf-home-experience .lf-bar-stage > video {
      position: absolute;
      inset: 0;
      z-index: 1;
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center;
      transform: scale(1.035);
      filter: saturate(1.08) contrast(1.04) brightness(.78);
    }

    #lf-home-experience .lf-bar-stage.is-loaded::after {
      content: "";
      position: absolute;
      inset: 0;
      z-index: 3;
      pointer-events: none;
      background:
        linear-gradient(180deg, rgba(12,11,24,.10) 0%, rgba(12,11,24,.24) 50%, rgba(12,11,24,.72) 100%),
        radial-gradient(circle at 50% 42%, transparent 0%, rgba(12,11,24,.38) 100%);
    }

    #lf-home-experience .lf-bar-stage::before {
      z-index: 2;
      pointer-events: none;
    }

    #lf-home-experience .lf-bar-stage .lf-bar-label,
    #lf-home-experience .lf-bar-stage .lf-drink-card {
      position: absolute;
      z-index: 6;
    }

    #lf-home-experience .lf-bar-label {
      position: absolute;
      top: 22px;
      left: 22px;
      z-index: 3;
      min-height: 42px;
      display: inline-flex;
      align-items: center;
      padding: 0 14px;
      border-radius: 999px;
      color: var(--lf-cream);
      background: rgba(12,11,24,.40);
      box-shadow: inset 0 0 0 1px rgba(255,228,179,.10);
      backdrop-filter: blur(12px);
      font-size: 10px;
      font-weight: 950;
      letter-spacing: .13em;
      text-transform: uppercase;
    }

    #lf-home-experience .lf-drink-card {
      position: absolute;
      z-index: 4;
      width: 255px;
      border-radius: 32px;
      overflow: hidden;
      background:
        linear-gradient(145deg, rgba(255,255,255,.14), rgba(255,255,255,.04)),
        rgba(255,255,255,.05);
      border: 1px solid rgba(255,228,179,.13);
      box-shadow: 0 30px 90px rgba(0,0,0,.36);
      backdrop-filter: blur(16px);
      transition:
        transform 320ms var(--lf-ease),
        box-shadow 320ms var(--lf-ease);
    }

    #lf-home-experience .lf-drink-card:hover {
      transform: translateY(-8px) rotate(0deg) !important;
      box-shadow: 0 38px 104px rgba(0,0,0,.42);
    }

    #lf-home-experience .lf-drink-media {
      min-height: 190px;
      border-radius: 0;
      border: 0;
      box-shadow: none;
    }

    #lf-home-experience .lf-drink-content {
      padding: 16px 17px 18px;
    }

    #lf-home-experience .lf-drink-content h3 {
      margin: 0;
      color: var(--lf-cream);
      font-family: Georgia, "Times New Roman", serif;
      font-size: 28px;
      line-height: .92;
      letter-spacing: -.05em;
    }

    #lf-home-experience .lf-drink-content p {
      margin: 9px 0 0;
      color: rgba(247,243,234,.66);
      font-size: 13px;
      line-height: 1.6;
      font-weight: 700;
    }

    #lf-home-experience .lf-drink-1 {
      left: 38px;
      top: 108px;
      transform: rotate(-5deg);
    }

    #lf-home-experience .lf-drink-2 {
      right: 42px;
      top: 205px;
      transform: rotate(6deg);
    }

    #lf-home-experience .lf-drink-3 {
      left: 118px;
      bottom: 72px;
      transform: rotate(2deg);
    }

    #lf-home-experience .lf-bar-bullets {
      margin: 28px 0 0;
      padding: 0;
      list-style: none;
      display: grid;
      gap: 12px;
    }

    #lf-home-experience .lf-bar-bullets li {
      display: flex;
      align-items: flex-start;
      gap: 12px;
      color: rgba(247,243,234,.72);
      font-size: 15px;
      line-height: 1.7;
      font-weight: 700;
    }

    #lf-home-experience .lf-bar-bullets li::before {
      content: "";
      width: 10px;
      height: 10px;
      flex: 0 0 10px;
      margin-top: 8px;
      border-radius: 999px;
      background: var(--lf-magenta);
      box-shadow: 0 0 0 6px rgba(224,42,131,.10);
    }

    /* ORDER */
    #lf-home-experience .lf-order-grid {
      display: grid;
      grid-template-columns: .92fr 1.08fr;
      gap: clamp(26px, 4vw, 58px);
      align-items: center;
    }

    #lf-home-experience .lf-order-steps {
      display: grid;
      gap: 14px;
    }

    #lf-home-experience .lf-step {
      position: relative;
      display: grid;
      grid-template-columns: auto 1fr;
      gap: 18px;
      align-items: center;
      padding: 20px;
      border-radius: 30px;
      background:
        linear-gradient(145deg, rgba(255,255,255,.44), rgba(255,255,255,.18)),
        rgba(255,255,255,.20);
      box-shadow:
        0 24px 70px rgba(36,24,6,.12),
        inset 0 1px 0 rgba(255,255,255,.30);
      backdrop-filter: blur(14px);
      transition: transform 260ms var(--lf-ease);
    }

    #lf-home-experience .lf-step:hover {
      transform: translateY(-5px);
    }

    #lf-home-experience .lf-step-number {
      width: 54px;
      height: 54px;
      border-radius: 18px 22px 18px 22px / 18px 16px 22px 18px;
      display: flex;
      align-items: center;
      justify-content: center;
      color: var(--lf-white);
      background: var(--lf-magenta);
      font-size: 12px;
      font-weight: 950;
      letter-spacing: .12em;
    }

    #lf-home-experience .lf-step h3 {
      margin: 0;
      color: var(--lf-navy);
      font-family: Georgia, "Times New Roman", serif;
      font-size: 28px;
      line-height: .95;
      letter-spacing: -.045em;
    }

    #lf-home-experience .lf-step p {
      margin: 8px 0 0;
      color: rgba(36,24,6,.72);
      font-size: 14px;
      line-height: 1.65;
      font-weight: 700;
    }

    /* WEEKENDS */
    #lf-home-experience .lf-weekend-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 16px;
      margin-top: 36px;
    }

    #lf-home-experience .lf-weekend-card {
      position: relative;
      min-height: 470px;
      padding: 22px;
      border-radius: 40px 54px 40px 56px / 40px 34px 54px 42px;
      overflow: hidden;
      background:
        linear-gradient(145deg, rgba(255,255,255,.12), rgba(255,255,255,.04)),
        rgba(255,255,255,.045);
      border: 1px solid rgba(255,228,179,.12);
      box-shadow: var(--lf-shadow);
      backdrop-filter: blur(14px);
      transition:
        transform 320ms var(--lf-ease),
        box-shadow 320ms var(--lf-ease);
    }

    #lf-home-experience .lf-weekend-card:hover {
      transform: translateY(-10px);
      box-shadow: 0 42px 110px rgba(0,0,0,.38);
    }

    #lf-home-experience .lf-weekend-card .lf-placeholder {
      min-height: 250px;
      margin-bottom: 20px;
      border-radius: 28px;
    }

    #lf-home-experience .lf-weekend-card h3 {
      margin: 0;
      color: var(--lf-cream);
      font-family: Georgia, "Times New Roman", serif;
      font-size: clamp(34px, 3vw, 54px);
      line-height: .92;
      letter-spacing: -.06em;
    }

    #lf-home-experience .lf-weekend-card p {
      margin: 14px 0 0;
      color: rgba(247,243,234,.68);
      font-size: 14px;
      line-height: 1.72;
      font-weight: 400;
    }

    /* WALL OF FAVORITAS */
    #lf-home-experience .lf-love-grid {
      display: grid;
      grid-template-columns: 1fr 1.08fr;
      gap: clamp(26px, 4vw, 56px);
      align-items: start;
    }

    #lf-home-experience .lf-love-wall {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 14px;
    }

    #lf-home-experience .lf-love-card {
      position: relative;
      min-height: 260px;
      padding: 20px;
      border-radius: 34px 42px 34px 44px / 34px 28px 42px 36px;
      overflow: hidden;
      background:
        linear-gradient(145deg, rgba(255,255,255,.12), rgba(255,255,255,.04)),
        rgba(255,255,255,.045);
      border: 1px solid rgba(255,228,179,.12);
      box-shadow: 0 28px 84px rgba(0,0,0,.30);
      backdrop-filter: blur(14px);
    }

    #lf-home-experience .lf-love-card:nth-child(2),
    #lf-home-experience .lf-love-card:nth-child(4) {
      transform: translateY(34px);
    }

    #lf-home-experience .lf-love-card b {
      color: var(--lf-magenta);
      font-size: 11px;
      font-weight: 950;
      letter-spacing: .12em;
      text-transform: uppercase;
    }

    #lf-home-experience .lf-love-card blockquote {
      margin: 18px 0 0;
      color: var(--lf-cream);
      font-family: Georgia, "Times New Roman", serif;
      font-size: clamp(26px, 2.4vw, 38px);
      line-height: 1;
      letter-spacing: -.05em;
    }

    #lf-home-experience .lf-love-card p {
      margin: 16px 0 0;
      color: rgba(247,243,234,.66);
      font-size: 13px;
      line-height: 1.68;
      font-weight: 400;
    }



    #lf-home-experience .lf-love-card b {
      display: inline-flex;
      align-items: center;
      min-height: 32px;
      padding: 0 11px;
      border-radius: 14px 18px 14px 18px / 16px 13px 18px 14px;
      color: rgba(255, 228, 179, .92);
      background: rgba(12, 11, 24, .36);
      box-shadow: inset 0 0 0 1px rgba(255, 228, 179, .08);
      backdrop-filter: blur(10px);
    }

    #lf-home-experience .lf-love-card blockquote {
      text-wrap: balance;
    }

    /* LOCATION */
    #lf-home-experience .lf-location-grid {
      display: grid;
      grid-template-columns: .92fr 1.08fr;
      gap: clamp(26px, 4vw, 58px);
      align-items: stretch;
    }

    #lf-home-experience .lf-location-card {
      padding: clamp(28px, 4vw, 48px);
      border-radius: 42px 54px 42px 56px / 42px 34px 54px 44px;
      background:
        linear-gradient(145deg, rgba(255,255,255,.44), rgba(255,255,255,.16)),
        rgba(255,255,255,.18);
      box-shadow:
        0 30px 90px rgba(36,24,6,.13),
        inset 0 1px 0 rgba(255,255,255,.32);
      backdrop-filter: blur(14px);
    }

    #lf-home-experience .lf-location-list {
      margin: 28px 0 0;
      padding: 0;
      list-style: none;
      display: grid;
      gap: 14px;
    }

    #lf-home-experience .lf-location-list li {
      display: grid;
      gap: 5px;
      color: rgba(36,24,6,.72);
      font-size: 15px;
      line-height: 1.5;
      font-weight: 700;
    }

    #lf-home-experience .lf-location-list b {
      color: var(--lf-magenta);
      font-size: 11px;
      line-height: 1;
      font-weight: 950;
      letter-spacing: .13em;
      text-transform: uppercase;
    }

    #lf-home-experience .lf-map-placeholder {
      min-height: 560px;
      border-radius: 46px 60px 46px 64px / 46px 38px 60px 50px;
    }


    #lf-home-experience .lf-map-frame {
      position: relative;
      min-height: 560px;
      border-radius: 46px 60px 46px 64px / 46px 38px 60px 50px;
      overflow: hidden;
      background: #0c0b18;
      border: 1px solid rgba(36, 24, 6, .14);
      box-shadow:
        0 32px 92px rgba(36, 24, 6, .18),
        inset 0 1px 0 rgba(255, 255, 255, .22);
    }

    #lf-home-experience .lf-map-frame iframe {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
      border: 0;
      filter: saturate(1.05) contrast(1.02);
    }

    #lf-home-experience .lf-map-frame::after {
      content: "";
      position: absolute;
      inset: 0;
      pointer-events: none;
      border-radius: inherit;
      box-shadow:
        inset 0 0 0 1px rgba(255, 255, 255, .18),
        inset 0 -70px 90px rgba(36, 24, 6, .10);
    }

    /* CATERING */
    #lf-home-experience .lf-catering-grid {
      display: grid;
      grid-template-columns: 1.08fr .92fr;
      gap: clamp(26px, 4vw, 58px);
      align-items: center;
    }

    #lf-home-experience .lf-catering-card {
      position: relative;
      padding: clamp(30px, 5vw, 58px);
      border-radius: 48px 62px 48px 66px / 48px 40px 62px 52px;
      overflow: hidden;
      background:
        linear-gradient(145deg, rgba(255,255,255,.12), rgba(255,255,255,.04)),
        rgba(255,255,255,.045);
      border: 1px solid rgba(255,228,179,.12);
      box-shadow: 0 34px 110px rgba(0,0,0,.36);
      backdrop-filter: blur(14px);
    }

    #lf-home-experience .lf-catering-card::before {
      content: "";
      position: absolute;
      inset: -32%;
      background:
        radial-gradient(circle at 18% 28%, rgba(224,42,131,.22), transparent 26%),
        radial-gradient(circle at 78% 72%, rgba(0,181,146,.13), transparent 26%);
      filter: blur(42px);
      pointer-events: none;
    }

    #lf-home-experience .lf-catering-card > * {
      position: relative;
      z-index: 2;
    }

    /* REVEAL */
    #lf-home-experience .lf-reveal {
      opacity: 0;
      transform: translateY(34px) scale(.985);
      filter: blur(14px);
      transition:
        opacity 860ms var(--lf-ease),
        transform 860ms var(--lf-ease),
        filter 860ms var(--lf-ease);
      will-change: opacity, transform, filter;
    }

    #lf-home-experience .lf-reveal.is-visible {
      opacity: 1;
      transform: translateY(0) scale(1);
      filter: blur(0);
    }

    #lf-home-experience .lf-delay-1 {
      transition-delay: .08s;
    }

    #lf-home-experience .lf-delay-2 {
      transition-delay: .16s;
    }

    #lf-home-experience .lf-delay-3 {
      transition-delay: .24s;
    }

    #lf-home-experience .lf-delay-4 {
      transition-delay: .32s;
    }

    @media (max-width: 1120px) {
      #lf-home-experience .lf-hero-grid,
      #lf-home-experience .lf-bar-grid,
      #lf-home-experience .lf-order-grid,
      #lf-home-experience .lf-love-grid,
      #lf-home-experience .lf-location-grid,
      #lf-home-experience .lf-catering-grid {
        grid-template-columns: 1fr;
      }

      #lf-home-experience .lf-world-grid {
        grid-template-columns: 1fr 1fr;
      }

      #lf-home-experience .lf-world-card-wide {
        grid-row: auto;
        grid-column: span 2;
      }

      #lf-home-experience .lf-quick-bar {
        grid-template-columns: repeat(3, 1fr);
      }

      #lf-home-experience .lf-weekend-grid {
        grid-template-columns: 1fr;
      }

      #lf-home-experience .lf-hero-stage,
      #lf-home-experience .lf-hero-video,
      #lf-home-experience .lf-bar-stage,
      #lf-home-experience .lf-map-placeholder,
      #lf-home-experience .lf-map-frame {
        min-height: 560px;
      }
    }

    @media (max-width: 760px) {
      #lf-home-experience {
        --lf-top-space: 88px;
      }

      #lf-home-experience .lf-wrap {
        width: min(100% - 18px, 1280px);
      }

      #lf-home-experience .lf-section {
        padding: 72px 0 104px;
      }

      #lf-home-experience .lf-section-overlap {
        margin-top: -36px;
      }

      #lf-home-experience .lf-hero {
        min-height: auto;
        padding-bottom: 130px;
      }

      #lf-home-experience .lf-title,
      #lf-home-experience .lf-hero-title {
        font-size: clamp(48px, 16vw, 78px);
      }

      #lf-home-experience .lf-btn-row,
      #lf-home-experience .lf-order-line {
        display: grid;
        grid-template-columns: 1fr;
      }

      #lf-home-experience .lf-btn {
        width: 100%;
      }

      #lf-home-experience .lf-section-head {
        grid-template-columns: 1fr;
      }

      #lf-home-experience .lf-quick-bar,
      #lf-home-experience .lf-world-grid,
      #lf-home-experience .lf-love-wall {
        grid-template-columns: 1fr;
      }

      #lf-home-experience .lf-world-card-wide {
        grid-column: auto;
      }

      #lf-home-experience .lf-hero-stage,
      #lf-home-experience .lf-hero-video,
      #lf-home-experience .lf-bar-stage,
      #lf-home-experience .lf-map-placeholder,
      #lf-home-experience .lf-map-frame {
        min-height: 440px;
      }

      #lf-home-experience .lf-floating-card,
      #lf-home-experience .lf-drink-card {
        position: relative;
        left: auto !important;
        right: auto !important;
        top: auto !important;
        bottom: auto !important;
        width: 100%;
        margin-top: 14px;
        transform: none !important;
      }

      #lf-home-experience .lf-drink-card {
        z-index: 5;
      }

      #lf-home-experience .lf-love-card:nth-child(2),
      #lf-home-experience .lf-love-card:nth-child(4) {
        transform: none;
      }

      #lf-home-experience .lf-quick-wrap {
        margin-top: -88px;
      }

      #lf-home-experience .lf-curved,
      #lf-home-experience .lf-curved-top,
      #lf-home-experience .lf-curved-both {
        border-radius: 44px;
      }
    }

    @media (prefers-reduced-motion: reduce) {
      #lf-home-experience,
      #lf-home-experience *,
      #lf-home-experience *::before,
      #lf-home-experience *::after {
        animation: none !important;
        transition: none !important;
      }

      #lf-home-experience .lf-reveal {
        opacity: 1 !important;
        transform: none !important;
        filter: none !important;
      }
    }


    /* =========================================================
       MOBILE BAR FIX + GLASS FLOW SCROLL PATCH
       Fixes Bar + Grill cards on mobile and adds smoother glass motion.
    ========================================================= */
    #lf-home-experience {
      --lf-flow-ease: cubic-bezier(.18,.85,.25,1);
      --lf-glass-blur: 18px;
    }

    #lf-home-experience .lf-world-card,
    #lf-home-experience .lf-weekend-card,
    #lf-home-experience .lf-love-card,
    #lf-home-experience .lf-step,
    #lf-home-experience .lf-location-card,
    #lf-home-experience .lf-catering-card,
    #lf-home-experience .lf-quick-item,
    #lf-home-experience .lf-drink-card {
      --lf-flow-y: 0px;
      --lf-flow-scale: 1;
      --lf-flow-sat: 1;
      will-change: transform, filter, opacity;
      transition:
        transform 520ms var(--lf-flow-ease),
        filter 520ms var(--lf-flow-ease),
        box-shadow 520ms var(--lf-flow-ease),
        background 520ms var(--lf-flow-ease);
    }

    #lf-home-experience .lf-world-card,
    #lf-home-experience .lf-weekend-card,
    #lf-home-experience .lf-love-card,
    #lf-home-experience .lf-step,
    #lf-home-experience .lf-location-card,
    #lf-home-experience .lf-catering-card,
    #lf-home-experience .lf-quick-item {
      transform: translate3d(0, var(--lf-flow-y), 0) scale(var(--lf-flow-scale));
      filter: saturate(var(--lf-flow-sat));
    }

    #lf-home-experience .lf-world-card:hover,
    #lf-home-experience .lf-weekend-card:hover,
    #lf-home-experience .lf-love-card:hover,
    #lf-home-experience .lf-step:hover,
    #lf-home-experience .lf-location-card:hover,
    #lf-home-experience .lf-catering-card:hover,
    #lf-home-experience .lf-quick-item:hover {
      transform: translate3d(0, calc(var(--lf-flow-y) - 8px), 0) scale(calc(var(--lf-flow-scale) + .01));
    }

    #lf-home-experience .lf-drink-1 { --lf-drink-r: -5deg; }
    #lf-home-experience .lf-drink-2 { --lf-drink-r: 6deg; }
    #lf-home-experience .lf-drink-3 { --lf-drink-r: 2deg; }

    #lf-home-experience .lf-drink-card {
      transform: translate3d(0, var(--lf-flow-y), 0) rotate(var(--lf-drink-r, 0deg)) scale(var(--lf-flow-scale));
      filter: saturate(var(--lf-flow-sat));
    }

    #lf-home-experience .lf-drink-card:hover {
      transform: translate3d(0, calc(var(--lf-flow-y) - 8px), 0) rotate(0deg) scale(calc(var(--lf-flow-scale) + .012)) !important;
    }

    #lf-home-experience .lf-bar-stage {
      transform: translate3d(0, var(--lf-flow-y, 0px), 0);
      transition:
        transform 620ms var(--lf-flow-ease),
        box-shadow 620ms var(--lf-flow-ease),
        filter 620ms var(--lf-flow-ease);
      will-change: transform, filter;
    }

    #lf-home-experience .lf-bar-stage.is-loaded {
      box-shadow:
        0 42px 130px rgba(0,0,0,.46),
        inset 1px 1px 0 rgba(255,255,255,.12),
        inset -1px -1px 0 rgba(0,0,0,.22);
    }

    #lf-home-experience .lf-bar-stage > img,
    #lf-home-experience .lf-bar-stage > video {
      transition:
        transform 1100ms var(--lf-flow-ease),
        filter 1100ms var(--lf-flow-ease);
    }

    #lf-home-experience .lf-bar-stage:hover > img,
    #lf-home-experience .lf-bar-stage:hover > video {
      transform: scale(1.075);
      filter: saturate(1.12) contrast(1.06) brightness(.82);
    }

    @media (max-width: 980px) {
      #lf-home-experience .lf-bar-grid {
        gap: 30px;
      }

      #lf-home-experience .lf-bar-stage {
        min-height: auto !important;
        display: grid;
        gap: 14px;
        align-items: stretch;
        padding: 84px 16px 18px;
        border-radius: 40px !important;
      }

      #lf-home-experience .lf-bar-stage > img,
      #lf-home-experience .lf-bar-stage > video {
        height: 100%;
        min-height: 100%;
        object-fit: cover;
        object-position: center;
        filter: saturate(1.08) contrast(1.04) brightness(.58);
      }

      #lf-home-experience .lf-bar-stage.is-loaded::after {
        z-index: 3;
        background:
          linear-gradient(180deg, rgba(12,11,24,.40) 0%, rgba(12,11,24,.54) 42%, rgba(12,11,24,.86) 100%),
          radial-gradient(circle at 50% 16%, rgba(255,228,179,.10), transparent 34%);
      }

      #lf-home-experience .lf-bar-stage .lf-bar-label {
        position: relative !important;
        top: auto !important;
        left: auto !important;
        right: auto !important;
        bottom: auto !important;
        z-index: 7 !important;
        width: fit-content;
        max-width: 100%;
        margin: 0;
      }

      #lf-home-experience .lf-bar-stage .lf-drink-card {
        position: relative !important;
        left: auto !important;
        right: auto !important;
        top: auto !important;
        bottom: auto !important;
        z-index: 7 !important;
        width: 100% !important;
        margin: 0 !important;
        transform: translate3d(0, var(--lf-flow-y, 0px), 0) scale(var(--lf-flow-scale, 1)) !important;
      }

      #lf-home-experience .lf-bar-stage .lf-drink-card:hover {
        transform: translate3d(0, calc(var(--lf-flow-y, 0px) - 6px), 0) scale(calc(var(--lf-flow-scale, 1) + .01)) !important;
      }

      #lf-home-experience .lf-drink-media {
        min-height: 185px;
      }

      #lf-home-experience .lf-drink-content h3 {
        font-size: clamp(26px, 8vw, 36px);
      }

      #lf-home-experience .lf-drink-content p {
        font-size: 14px;
      }
    }

    @media (max-width: 520px) {
      #lf-home-experience .lf-bar-stage {
        padding: 76px 12px 14px;
        border-radius: 34px !important;
      }

      #lf-home-experience .lf-bar-label {
        font-size: 9px;
        letter-spacing: .105em;
      }

      #lf-home-experience .lf-drink-media {
        min-height: 172px;
      }
    }

#lf-hero-intro {
      position: relative;
      width: 100vw;
      min-height: 100svh;
      margin-left: calc(50% - 50vw);
      margin-right: calc(50% - 50vw);
      padding: clamp(110px, 9vw, 140px) 0 clamp(56px, 6vw, 90px);
      overflow: hidden;
      isolation: isolate;
      background:
        radial-gradient(circle at 18% 18%, rgba(224,42,131,.24), transparent 28%),
        radial-gradient(circle at 82% 76%, rgba(0,181,146,.15), transparent 30%),
        linear-gradient(135deg, #0c0b18 0%, #14132f 44%, #211d4b 100%);
    }

    #lf-hero-intro .lf-hero-bg {
      position: absolute;
      inset: 0;
      z-index: 0;
      overflow: hidden;
    }

    #lf-hero-intro .lf-hero-desktop-img,
    #lf-hero-intro .lf-hero-mobile-video {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
      object-fit: cover;
    }

    #lf-hero-intro .lf-hero-desktop-img {
      display: block;
      opacity: 0;
      transform: scale(1.06);
      filter: saturate(1.08) contrast(1.05);
      transition: opacity 700ms cubic-bezier(.18,.85,.25,1);
      animation: lfHomeHeroDesktopDrift 18s ease-in-out infinite alternate;
    }

    #lf-hero-intro.has-desktop-image .lf-hero-desktop-img {
      opacity: .9;
    }

    @keyframes lfHomeHeroDesktopDrift {
      0% { transform: scale(1.06) translate3d(-.6%, 0, 0); }
      100% { transform: scale(1.12) translate3d(.7%, -.5%, 0); }
    }

    #lf-hero-intro .lf-hero-mobile-video {
      display: none;
      opacity: 1.0;
      filter: saturate(1.08) contrast(1.06) brightness(.86);
    }

    #lf-hero-intro .lf-hero-placeholder {
      position: absolute;
      inset: 0;
      z-index: 1;
      display: grid;
      place-items: center;
      padding: 24px;
      background:
        radial-gradient(circle at 22% 22%, rgba(224,42,131,.24), transparent 28%),
        radial-gradient(circle at 78% 72%, rgba(0,181,146,.16), transparent 28%),
        linear-gradient(135deg, rgba(255,255,255,.08), rgba(255,255,255,.02)),
        linear-gradient(135deg, #14132f 0%, #211d4b 100%);
      color: rgba(255,228,179,.76);
      font-size: 11px;
      font-weight: 950;
      letter-spacing: .14em;
      text-transform: uppercase;
      text-align: center;
    }

    #lf-hero-intro.has-desktop-image .lf-hero-placeholder {
      display: none;
    }

    #lf-hero-intro .lf-hero-vignette {
      position: absolute;
      inset: 0;
      z-index: 2;
      pointer-events: none;
      background:
        linear-gradient(90deg, rgba(12,11,24,.94) 0%, rgba(12,11,24,.70) 34%, rgba(12,11,24,.22) 70%, rgba(12,11,24,.56) 100%),
        linear-gradient(180deg, rgba(12,11,24,.48) 0%, rgba(12,11,24,.28) 44%, rgba(12,11,24,.96) 100%);
    }

    #lf-hero-intro .lf-wave {
      z-index: 1;
    }

    #lf-hero-intro .lf-hero-shell {
      position: relative;
      z-index: 5;
      width: min(1380px, calc(100% - 28px));
      min-height: calc(100svh - clamp(110px, 9vw, 140px) - clamp(56px, 6vw, 90px));
      margin: 0 auto;
      display: grid;
      grid-template-columns: minmax(0, .95fr) minmax(360px, .72fr);
      gap: clamp(28px, 5vw, 82px);
      align-items: center;
    }

    #lf-hero-intro .lf-hero-copy {
      max-width: 850px;
    }

    #lf-hero-intro .lf-hero-eyebrow {
      display: inline-flex;
      align-items: center;
      gap: 10px;
      min-height: 42px;
      margin: 0 0 20px;
      padding: 0 15px;
      border-radius: 999px;
      color: var(--lf-cream, #ffe4b3);
      background: rgba(255,255,255,.075);
      box-shadow: inset 0 0 0 1px rgba(255,228,179,.12);
      backdrop-filter: blur(12px);
      font-size: 10px;
      font-weight: 950;
      letter-spacing: .14em;
      text-transform: uppercase;
    }

    #lf-hero-intro .lf-hero-dot {
      width: 7px;
      height: 7px;
      border-radius: 999px;
      background: var(--lf-green, #aacf3a);
      box-shadow: 0 0 0 7px rgba(170,207,58,.14);
      animation: lfHomeHeroPulse 1.8s ease-in-out infinite;
    }

    @keyframes lfHomeHeroPulse {
      0%, 100% { transform: scale(1); opacity: 1; }
      50% { transform: scale(.72); opacity: .62; }
    }

    #lf-hero-intro .lf-hero-title {
      margin: 0;
      max-width: 960px;
      color: var(--lf-cream, #ffe4b3);
      font-family: Georgia, "Times New Roman", serif;
      font-size: clamp(58px, 9vw, 138px);
      line-height: .82;
      letter-spacing: -.082em;
      text-wrap: balance;
      text-shadow:
        0 30px 90px rgba(0,0,0,.46),
        0 0 42px rgba(224,42,131,.14);
    }

    #lf-hero-intro .lf-hero-title em {
      color: var(--lf-white, #f7f3ea);
      font-style: italic;
    }

    #lf-hero-intro .lf-hero-copy-text {
      margin: 24px 0 0;
      max-width: 680px;
      color: rgba(247,243,234,.74);
      font-size: clamp(16px, 1.35vw, 20px);
      line-height: 1.75;
      font-weight: 700;
    }

    #lf-hero-intro .lf-hero-actions {
      margin-top: 32px;
      display: flex;
      flex-wrap: wrap;
      gap: 12px;
    }

    #lf-hero-intro .lf-hero-btn {
      min-height: 54px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      padding: 0 19px;
      border-radius: 999px;
      color: var(--lf-cream, #ffe4b3);
      background: rgba(255,255,255,.08);
      box-shadow:
        inset 0 0 0 1px rgba(255,228,179,.12),
        0 14px 38px rgba(0,0,0,.18);
      backdrop-filter: blur(12px);
      font-size: 11px;
      font-weight: 950;
      letter-spacing: .12em;
      text-transform: uppercase;
      transition:
        background 240ms cubic-bezier(.18,.85,.25,1),
        color 240ms cubic-bezier(.18,.85,.25,1),
        transform 240ms cubic-bezier(.18,.85,.25,1),
        box-shadow 240ms cubic-bezier(.18,.85,.25,1);
    }

    #lf-hero-intro .lf-hero-btn:hover {
      color: var(--lf-white, #f7f3ea);
      background: rgba(255,255,255,.14);
      transform: translateY(-2px);
    }

    #lf-hero-intro .lf-hero-btn-primary {
      color: var(--lf-white, #f7f3ea);
      background: var(--lf-magenta, #e02a83);
      box-shadow: 0 18px 42px rgba(224,42,131,.30);
    }

    #lf-hero-intro .lf-hero-btn-primary:hover {
      color: #071017;
      background: var(--lf-teal, #00b592);
      box-shadow: 0 18px 42px rgba(0,181,146,.28);
    }

    #lf-hero-intro .lf-hero-meta {
      margin-top: 30px;
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
    }

    #lf-hero-intro .lf-hero-meta span {
      display: inline-flex;
      align-items: center;
      min-height: 36px;
      padding: 0 13px;
      border-radius: 999px;
      color: rgba(255,228,179,.78);
      background: rgba(255,255,255,.06);
      box-shadow: inset 0 0 0 1px rgba(255,228,179,.08);
      backdrop-filter: blur(10px);
      font-size: 10px;
      font-weight: 950;
      letter-spacing: .12em;
      text-transform: uppercase;
    }

    #lf-hero-intro .lf-hero-card-stage {
      position: relative;
      min-height: 620px;
    }

    #lf-hero-intro .lf-floating-card {
      position: absolute;
      z-index: 5;
      width: 280px;
      border-radius: 34px 44px 34px 48px / 34px 28px 44px 38px;
      overflow: hidden;
      background:
        linear-gradient(145deg, rgba(255,255,255,.14), rgba(255,255,255,.04)),
        rgba(255,255,255,.055);
      border: 1px solid rgba(255,228,179,.14);
      box-shadow:
        0 28px 90px rgba(0,0,0,.34),
        inset 0 1px 0 rgba(255,255,255,.10);
      backdrop-filter: blur(14px) saturate(135%);
      transition:
        transform 300ms cubic-bezier(.18,.85,.25,1),
        box-shadow 300ms cubic-bezier(.18,.85,.25,1);
    }

    #lf-hero-intro .lf-floating-card:hover {
      transform: translateY(-8px) rotate(0deg) !important;
      box-shadow:
        0 38px 110px rgba(0,0,0,.42),
        inset 0 1px 0 rgba(255,255,255,.12);
    }

    #lf-hero-intro .lf-card-media-slot {
      position: relative;
      min-height: 184px;
      display: flex;
      align-items: center;
      justify-content: center;
      overflow: hidden;
      color: rgba(255,228,179,.82);
      background:
        radial-gradient(circle at 20% 24%, rgba(224,42,131,.24), transparent 24%),
        radial-gradient(circle at 80% 76%, rgba(0,181,146,.14), transparent 28%),
        linear-gradient(180deg, #211d4b 0%, #14132f 100%);
      font-size: 10px;
      font-weight: 950;
      letter-spacing: .13em;
      text-transform: uppercase;
      text-align: center;
      padding: 22px;
    }

    #lf-hero-intro .lf-card-media-slot img,
    #lf-hero-intro .lf-card-media-slot video {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
      object-fit: cover;
      transform: scale(1.04);
      filter: saturate(1.08) contrast(1.04);
    }

    #lf-hero-intro .lf-card-media-slot.is-loaded span {
      opacity: 0;
    }

    #lf-hero-intro .lf-floating-card-content {
      padding: 16px 17px 18px;
    }

    #lf-hero-intro .lf-floating-card h3 {
      margin: 0;
      color: var(--lf-cream, #ffe4b3);
      font-family: Georgia, "Times New Roman", serif;
      font-size: 28px;
      line-height: .92;
      letter-spacing: -.05em;
    }

    #lf-hero-intro .lf-floating-card p {
      margin: 9px 0 0;
      color: rgba(247,243,234,.66);
      font-size: 13px;
      line-height: 1.6;
      font-weight: 700;
    }

    #lf-hero-intro .lf-float-a {
      left: 0;
      bottom: 140px;
      transform: rotate(-6deg);
    }

    #lf-hero-intro .lf-float-b {
      right: 0;
      top: 140px;
      transform: rotate(5deg);
    }

    #lf-hero-intro .lf-vertical-note {
      position: absolute;
      right: -16px;
      bottom: 30px;
      writing-mode: vertical-rl;
      transform: rotate(180deg);
      color: rgba(255,228,179,.56);
      font-size: 10px;
      font-weight: 950;
      letter-spacing: .16em;
      text-transform: uppercase;
    }

    #lf-hero-intro .lf-bottom-fade {
      position: absolute;
      left: 0;
      right: 0;
      bottom: -1px;
      z-index: 4;
      height: 160px;
      pointer-events: none;
      background: linear-gradient(180deg, transparent 0%, #0c0b18 100%);
    }

    #lf-hero-intro .lf-desktop-copy-panel {
      display: none;
    }

    /* =========================================================
       DESKTOP ONLY VISUAL BRIDGE FIX
       Left column removed. Mobile media queries below are kept intact.
    ========================================================= */
    @media (min-width: 981px) {
      #lf-home-experience {
        padding-top: 0;
      }

      #lf-hero-intro {
        --lf-card-a-x: 0px;
        --lf-card-a-y: 0px;
        --lf-card-a-r: -8deg;
        --lf-card-b-x: 0px;
        --lf-card-b-y: 0px;
        --lf-card-b-r: 7deg;
        --lf-stage-glow: .72;

        min-height: clamp(650px, 78vh, 880px);
        padding: clamp(78px, 6.5vw, 112px) 0 clamp(96px, 7.5vw, 132px);
        border-radius: 0 0 7vw 7vw / 0 0 3.5vw 3.5vw;
        background:
          radial-gradient(circle at 12% 18%, rgba(224,42,131,.18), transparent 28%),
          radial-gradient(circle at 88% 76%, rgba(0,181,146,.13), transparent 30%),
          linear-gradient(135deg, #0c0b18 0%, #14132f 42%, #211d4b 100%);
      }

      #lf-hero-intro::before {
        content: "South Houston, Texas";
        position: absolute;
        left: 50%;
        top: 7%;
        z-index: 1;
        width: max-content;
        transform: translateX(-50%);
        color: rgba(255,228,179,.052);
        font-family: Georgia, "Times New Roman", serif;
        font-size: clamp(64px, 8vw, 152px);
        line-height: .82;
        font-style: italic;
        font-weight: 900;
        letter-spacing: -.075em;
        text-align: center;
        white-space: nowrap;
        pointer-events: none;
      }

      #lf-hero-intro::after {
        content: "";
        position: absolute;
        left: 50%;
        top: 50%;
        z-index: 1;
        width: min(920px, 72vw);
        height: min(460px, 42vw);
        transform: translate(-50%, -50%);
        border-radius: 999px;
        background:
          radial-gradient(circle at 42% 44%, rgba(255,228,179,.10), transparent 34%),
          radial-gradient(circle at 58% 52%, rgba(224,42,131,.14), transparent 44%);
        filter: blur(52px);
        opacity: var(--lf-stage-glow);
        pointer-events: none;
      }

      #lf-hero-intro .lf-hero-bg {
        opacity: .62;
      }

      #lf-hero-intro .lf-hero-desktop-img {
        object-position: center center;
        opacity: 0;
        filter: saturate(1.04) contrast(1.04) brightness(.70);
        transform: scale(1.04);
        animation: lfHomeHeroDesktopDrift 26s ease-in-out infinite alternate;
      }

      #lf-hero-intro.has-desktop-image .lf-hero-desktop-img {
        opacity: .42;
      }

      #lf-hero-intro .lf-hero-vignette {
        background:
          linear-gradient(90deg, rgba(12,11,24,.96) 0%, rgba(12,11,24,.70) 30%, rgba(12,11,24,.48) 58%, rgba(12,11,24,.92) 100%),
          linear-gradient(180deg, rgba(12,11,24,.70) 0%, rgba(12,11,24,.28) 46%, rgba(12,11,24,.98) 100%);
      }

      #lf-hero-intro .lf-hero-shell {
        width: min(1440px, calc(100% - 72px));
        min-height: auto;
        display: block;
      }

      #lf-hero-intro .lf-hero-copy,
      #lf-hero-intro .lf-desktop-copy-panel {
        display: none !important;
      }

      #lf-hero-intro .lf-hero-card-stage {
        width: min(1120px, 100%);
        min-height: clamp(560px, 62vh, 720px);
        margin: 0 auto;
        display: block;
        perspective: 1200px;
      }

      #lf-hero-intro .lf-hero-card-stage::before {
        content: "";
        position: absolute;
        inset: 48px 90px 52px;
        z-index: 1;
        border-radius: 64px 96px 58px 104px / 86px 58px 92px 64px;
        background-image:
          linear-gradient(rgba(255, 255, 255, .07), rgba(255, 255, 255, .39)),
          var(--lf-hero-feature-image, url('https://api.taquerialafavorita.com/wp-content/uploads/2026/05/hero-2.jpg'));
        background-color: #000;
        background-size: cover;
        background-position: center;
        background-repeat: no-repeat;
        border: 1px solid rgba(255,228,179,.13);
        box-shadow:
          0 38px 115px rgba(0,0,0,.31),
          inset 0 1px 0 rgba(255,255,255,.10);
        backdrop-filter: blur(18px) saturate(135%);
      }

      #lf-hero-intro .lf-hero-card-stage::after {
        content: "";
        position: absolute;
        left: 50%;
        bottom: 42px;
        z-index: 4;
        width: 64px;
        height: 64px;
        transform: translateX(-50%);
        border-radius: 999px;
        background:
          radial-gradient(circle, rgba(255,228,179,.92) 0 2px, transparent 3px),
          rgba(255,255,255,.075);
        border: 1px solid rgba(255,228,179,.16);
        box-shadow:
          0 18px 46px rgba(0,0,0,.24),
          inset 0 1px 0 rgba(255,255,255,.13);
        backdrop-filter: blur(14px);
      }

      #lf-hero-intro .lf-floating-card {
        width: min(405px, 42vw);
        z-index: 5;
        border-radius: 42px 58px 40px 62px / 44px 36px 58px 44px;
        background:
          linear-gradient(145deg, rgba(255,255,255,.17), rgba(255,255,255,.048)),
          rgba(255,255,255,.055);
        border: 1px solid rgba(255,228,179,.18);
        box-shadow:
          0 34px 100px rgba(0,0,0,.40),
          inset 0 1px 0 rgba(255,255,255,.13);
        transform-style: preserve-3d;
        transition:
          transform 420ms cubic-bezier(.18,.85,.25,1),
          box-shadow 420ms cubic-bezier(.18,.85,.25,1),
          filter 420ms cubic-bezier(.18,.85,.25,1);
      }

      #lf-hero-intro .lf-floating-card:hover {
        transform: translate3d(var(--card-x), calc(var(--card-y) - 18px), 0) rotate(0deg) scale(1.035) !important;
        filter: saturate(1.08);
        box-shadow:
          0 50px 140px rgba(0,0,0,.48),
          0 0 62px rgba(224,42,131,.12),
          inset 0 1px 0 rgba(255,255,255,.16);
      }

      #lf-hero-intro .lf-card-media-slot {
        min-height: 305px;
        border-bottom: 1px solid rgba(255,228,179,.10);
      }

      #lf-hero-intro .lf-card-media-slot::after {
        content: "";
        position: absolute;
        inset: 0;
        z-index: 2;
        pointer-events: none;
        background:
          linear-gradient(180deg, rgba(12,11,24,.02) 0%, rgba(12,11,24,.34) 100%),
          radial-gradient(circle at 18% 20%, rgba(255,228,179,.14), transparent 24%);
      }

      #lf-hero-intro .lf-card-media-slot img,
      #lf-hero-intro .lf-card-media-slot video {
        transform: scale(1.055);
        transition: transform 760ms cubic-bezier(.18,.85,.25,1), filter 420ms cubic-bezier(.18,.85,.25,1);
      }

      #lf-hero-intro .lf-floating-card:hover .lf-card-media-slot img,
      #lf-hero-intro .lf-floating-card:hover .lf-card-media-slot video {
        transform: scale(1.13);
        filter: saturate(1.12) contrast(1.06) brightness(1.04);
      }

      #lf-hero-intro .lf-floating-card-content {
        padding: 18px 20px 20px;
      }

      #lf-hero-intro .lf-floating-card h3 {
        font-size: 34px;
        line-height: .88;
        letter-spacing: -.06em;
      }

      #lf-hero-intro .lf-floating-card p {
        margin-top: 9px;
        color: rgba(247,243,234,.68);
        font-size: 13px;
        line-height: 1.55;
      }

      #lf-hero-intro .lf-float-a {
        --card-x: var(--lf-card-a-x);
        --card-y: var(--lf-card-a-y);
        --card-r: var(--lf-card-a-r);
        left: 7%;
        top: 118px;
        transform: translate3d(var(--card-x), var(--card-y), 0) rotate(var(--card-r));
      }

      #lf-hero-intro .lf-float-b {
        --card-x: var(--lf-card-b-x);
        --card-y: var(--lf-card-b-y);
        --card-r: var(--lf-card-b-r);
        right: 7%;
        bottom: 116px;
        transform: translate3d(var(--card-x), var(--card-y), 0) rotate(var(--card-r));
      }

      #lf-hero-intro .lf-float-a::before,
      #lf-hero-intro .lf-float-b::before {
        position: absolute;
        top: 16px;
        left: 16px;
        z-index: 6;
        display: inline-flex;
        align-items: center;
        min-height: 30px;
        padding: 0 11px;
        border-radius: 999px;
        color: #071017;
        background: var(--lf-cream, #ffe4b3);
        box-shadow: 0 12px 28px rgba(0,0,0,.18);
        font-size: 9px;
        font-weight: 950;
        letter-spacing: .13em;
        text-transform: uppercase;
      }

      #lf-hero-intro .lf-float-a::before {
        content: "FOOD FAVORITES";
      }

      #lf-hero-intro .lf-float-b::before {
        content: "DRINKS + BAR";
        color: var(--lf-white, #f7f3ea);
        background: var(--lf-magenta, #e02a83);
      }

      #lf-hero-intro .lf-vertical-note {
        right: 8px;
        bottom: 118px;
        z-index: 6;
        color: rgb(255 228 179 / 25%);
      }

      #lf-hero-intro .lf-bottom-fade {
        height: 130px;
      }
    }

    @media (min-width: 1280px) {
      #lf-hero-intro .lf-hero-card-stage {
        width: min(1180px, 100%);
      }

      #lf-hero-intro .lf-floating-card {
        width: 420px;
      }

      #lf-hero-intro .lf-card-media-slot {
        min-height: 320px;
      }

      #lf-hero-intro .lf-float-a {
        left: 9%;
        top: 106px;
      }

      #lf-hero-intro .lf-float-b {
        right: 9%;
        bottom: 106px;
      }
    }

    @media (max-width: 980px) {
      #lf-hero-intro {
        min-height: 100svh;
        padding: 92px 0 48px;
      }

      #lf-hero-intro .lf-hero-desktop-img,
      #lf-hero-intro .lf-hero-placeholder {
        display: none;
      }

      #lf-hero-intro .lf-hero-mobile-video {
        display: block;
      }

      #lf-hero-intro .lf-hero-vignette {
        background:
          linear-gradient(
            180deg,
            rgba(12, 11, 24, .98) 0%,
            rgba(12, 11, 24, .92) 12%,
            rgb(12 11 24) 25%,
            rgb(12 11 24 / 0%) 45%,
            rgb(12 11 24 / 0%) 74%,
            rgb(12 11 24) 100%
          ),
          radial-gradient(circle at 50% 34%, rgba(12,11,24,.04) 0%, rgba(12,11,24,.28) 48%, rgba(12,11,24,.92) 100%);
      }

      #lf-hero-intro .lf-hero-bg::before {
        content: "";
        position: absolute;
        inset: 0 0 auto 0;
        height: 36%;
        z-index: 3;
        pointer-events: none;
        background:
          linear-gradient(
            180deg,
            rgba(12,11,24,.99) 0%,
            rgba(20,19,47,.88) 42%,
            rgba(20,19,47,0) 100%
          );
      }

      #lf-hero-intro .lf-hero-shell {
        width: min(100% - 20px, 1380px);
        min-height: calc(100svh - 140px);
        grid-template-columns: 1fr;
        align-items: end;
      }

      #lf-hero-intro .lf-hero-card-stage {
        display: none;
      }

      #lf-hero-intro .lf-hero-title {
        font-size: clamp(50px, 16vw, 88px);
        line-height: .84;
      }

      #lf-hero-intro .lf-hero-copy-text {
        font-size: 15px;
      }

      #lf-hero-intro .lf-hero-actions {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 10px;
      }

      #lf-hero-intro .lf-hero-btn {
        width: 100%;
        min-height: 50px;
        padding: 0 12px;
        font-size: 10px;
      }
    }

    @media (max-width: 520px) {
      #lf-hero-intro .lf-hero-actions {
        grid-template-columns: 1fr;
      }

      #lf-hero-intro .lf-hero-title {
        font-size: clamp(48px, 17vw, 74px);
      }
    }


/* ==========================================================================
   TAQUERIA LA FAVORITA | CINEMATIC HERO CSS
   ========================================================================== */

#lf-cinematic-hero {
  --lf-night: #0c0b18;
  --lf-navy: #14132f;
  --lf-purple: #211d4b;
  --lf-magenta: #e02a83;
  --lf-cream: #ffe4b3;
  --lf-white: #f7f3ea;
  --lf-muted: rgba(247, 243, 234, 0.72);
  --lf-teal: #00b592;
  --lf-ease: cubic-bezier(.18,.85,.25,1);

  position: relative;
  min-height: 100svh;
  overflow: hidden;
  isolation: isolate;
  color: var(--lf-white);
  background:
    radial-gradient(circle at 18% 18%, rgba(224, 42, 131, .24), transparent 28%),
    radial-gradient(circle at 82% 76%, rgba(0, 181, 146, .16), transparent 30%),
    linear-gradient(135deg, #0c0b18 0%, #14132f 42%, #211d4b 100%);
  font-family: "Josefin Sans", "Montserrat", "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  padding-top: clamp(104px, 9vw, 134px);
  padding-bottom: clamp(42px, 5vw, 76px);
}

#lf-cinematic-hero * { box-sizing: border-box; }
#lf-cinematic-hero a { color: inherit; text-decoration: none; }

/* Parallax Container */
#lf-cinematic-hero .lfh-bg {
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 115%;
  z-index: 1;
  pointer-events: none;
  will-change: transform;
}

/* Background Image (Now visible on Desktop AND Mobile) */
#lf-cinematic-hero .lfh-desktop-image {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(12, 11, 24, .92) 0%, rgba(12, 11, 24, .74) 38%, rgb(12 11 24 / 0%) 72%, rgb(12 11 24 / 0%) 100%), 
    linear-gradient(180deg, rgb(12 11 24 / 0%) 0%, rgb(12 11 24 / 0%) 100%),
    url("https://api.taquerialafavorita.com/wp-content/uploads/2026/05/hero.jpg");
  background-size: cover;
  background-position: center;
  transform: scale(1.06);
  opacity: .88;
  filter: saturate(1.05) contrast(1.04);
  animation: lfHeroImageDrift 18s ease-in-out infinite alternate;
}

@keyframes lfHeroImageDrift {
  0% { transform: scale(1.06) translate3d(-.7%, 0, 0); }
  100% { transform: scale(1.12) translate3d(.8%, -.6%, 0); }
}

/* Vignette Shadow Overlay */
#lf-cinematic-hero .lfh-vignette {
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;
  background:
    radial-gradient(circle at 72% 42%, transparent 0%, rgba(12,11,24,.18) 36%, rgba(12,11,24,.78) 100%),
    linear-gradient(180deg, rgba(12,11,24,.16) 0%, rgba(12,11,24,.58) 72%, rgba(12,11,24,.92) 100%);
}

/* Layout Grid */
#lf-cinematic-hero .lfh-shell {
  width: min(1320px, calc(100% - 28px));
  margin: 75px 50px auto;
  position: relative;
  z-index: 5;
  min-height: calc(100svh - clamp(104px, 9vw, 134px) - clamp(42px, 5vw, 76px));
  display: grid;
  grid-template-columns: 1.06fr .94fr;
  gap: clamp(28px, 4vw, 70px);
  align-items: center;
}

/* Typography & Animations */
#lf-cinematic-hero .lfh-copy {
  position: relative;
  z-index: 4;
  max-width: 820px;
  opacity: 0;
  transform: translateY(34px) scale(.985);
  filter: blur(14px);
  will-change: transform, opacity;
  transition: opacity 980ms var(--lf-ease) 180ms, transform 980ms var(--lf-ease) 180ms, filter 980ms var(--lf-ease) 180ms;
}

#lf-cinematic-hero.lfh-ready .lfh-copy {
  opacity: 1; transform: translateY(0) scale(1); filter: blur(0);
}

#lf-cinematic-hero .lfh-copy.is-scrolling { transition: none; }

#lf-cinematic-hero .lfh-title {
  margin: 0; 
  max-width: 920px; 
  color: var(--lf-cream); 
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(58px, 5.4vw, 144px); 
  line-height: .82; 
  letter-spacing: -.082em; 
  text-shadow: 0 28px 80px rgba(0,0,0,.38), 0 0 42px rgba(224,42,131,.12);
}

#lf-cinematic-hero .lfh-title .lfh-accent { color: var(--lf-white); font-style: italic; }

#lf-cinematic-hero .lfh-subtitle {
  margin: 24px 0 0; max-width: 670px; color: var(--lf-muted);
  font-size: clamp(16px, 1.35vw, 20px); line-height: 1.75; font-weight: 400;
}

/* Buttons */
#lf-cinematic-hero .lfh-actions { margin-top: 32px; display: flex; flex-wrap: wrap; gap: 12px; }

#lf-cinematic-hero .lfh-btn {
  --mx: 0px; --my: 0px;
  min-height: 54px; display: inline-flex; align-items: center; justify-content: center;
  padding: 0 19px; border-radius: 999px; color: var(--lf-cream);
  background: rgba(255,255,255,.08); box-shadow: inset 0 0 0 1px rgba(255,228,179,.12), 0 14px 38px rgba(0,0,0,.18);
  backdrop-filter: blur(12px); font-size: 11px; line-height: 1; font-weight: 950; letter-spacing: .12em; text-transform: uppercase;
  transform: translate(var(--mx), var(--my));
  transition: background 240ms var(--lf-ease), color 240ms var(--lf-ease), transform 240ms var(--lf-ease), box-shadow 240ms var(--lf-ease);
}

#lf-cinematic-hero .lfh-btn:hover {
  color: var(--lf-white); background: rgba(255,255,255,.14);
  transform: translate(var(--mx), var(--my)) translateY(-2px);
}

#lf-cinematic-hero .lfh-btn-primary {
  color: var(--lf-white); background: var(--lf-magenta); box-shadow: 0 18px 42px rgba(224,42,131,.30);
}

#lf-cinematic-hero .lfh-btn-primary:hover {
  color: #071017; background: var(--lf-teal); box-shadow: 0 18px 42px rgba(0,181,146,.28);
}

/* Accents & Scroll Cues */
#lf-cinematic-hero .lfh-vertical-note {
  position: absolute; right: -16px; bottom: 28px; writing-mode: vertical-rl; transform: rotate(180deg);
  color: rgba(255,228,179,.56); font-size: 10px; font-weight: 950; letter-spacing: .16em; text-transform: uppercase;
}

#lf-cinematic-hero .lfh-scroll-cue {
  position: absolute; left: 50%; bottom: 22px; z-index: 6; transform: translateX(-50%); display: grid; place-items: center; gap: 8px;
  color: rgba(255,228,179,.62); font-size: 9px; font-weight: 950; letter-spacing: .16em; text-transform: uppercase; opacity: 0;
  transition: opacity 700ms var(--lf-ease) 1000ms;
}

#lf-cinematic-hero.lfh-ready .lfh-scroll-cue { opacity: 1; }
#lf-cinematic-hero .lfh-scroll-cue.is-scrolling { transition: none; }

#lf-cinematic-hero .lfh-scroll-line { width: 1px; height: 44px; overflow: hidden; background: rgba(255,228,179,.18); }
#lf-cinematic-hero .lfh-scroll-line::before {
  content: ""; display: block; width: 1px; height: 18px; background: var(--lf-magenta); animation: lfHeroScroll 1.8s ease-in-out infinite;
}

@keyframes lfHeroScroll {
  0% { transform: translateY(-20px); opacity: 0; }
  35% { opacity: 1; }
  100% { transform: translateY(48px); opacity: 0; }
}

#lf-cinematic-hero .lfh-bottom-fade {
  position: absolute; left: 0; right: 0; bottom: -1px; z-index: 4; height: 140px; pointer-events: none;
  background: linear-gradient(180deg, transparent 0%, #0c0b18 100%);
}

/* ==========================================================================
   MOBILE & RESPONSIVE ADJUSTMENTS
   ========================================================================== */

@media (max-width: 980px) {
  /* Replaces the desktop hero image with the specific mobile image */
  #lf-cinematic-hero .lfh-desktop-image {
    background:
      linear-gradient(180deg, rgba(12,11,24,.40) 0%, rgba(12,11,24,.62) 42%, rgba(12,11,24,.96) 100%),
      url("https://api.taquerialafavorita.com/wp-content/uploads/2026/05/Design-Use-Corrected-2026-menu-A4-8.5-x-14-in-.jpg");
    background-size: cover;
    background-position: center;
  }

  #lf-cinematic-hero { min-height: 100svh; padding-top: 94px; padding-bottom: 46px; }

  #lf-cinematic-hero .lfh-vignette {
    background:
      linear-gradient(180deg, rgba(12,11,24,.40) 0%, rgba(12,11,24,.62) 42%, rgba(12,11,24,.96) 100%),
      radial-gradient(circle at 50% 35%, transparent 0%, rgba(12,11,24,.22) 46%, rgba(12,11,24,.88) 100%);
  }

  #lf-cinematic-hero .lfh-shell {
    width: min(100% - 20px, 1320px); min-height: calc(100svh - 140px); grid-template-columns: 1fr; align-items: end; margin: 15px 0 auto;
  }

  #lf-cinematic-hero .lfh-title { font-size: clamp(54px, 14vw, 92px); line-height: .84; }
  #lf-cinematic-hero .lfh-subtitle { max-width: 620px; font-size: 15px; }
  #lf-cinematic-hero .lfh-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
  #lf-cinematic-hero .lfh-btn { min-height: 50px; width: 100%; padding: 0 12px; font-size: 10px; }
}

@media (max-width: 520px) {
  #lf-cinematic-hero { padding-top: 88px; }
  #lf-cinematic-hero .lfh-actions { grid-template-columns: 1fr; }
  #lf-cinematic-hero .lfh-title { font-size: clamp(50px, 16.29vw, 76px); }
  #lf-cinematic-hero .lfh-scroll-cue { display: none; }
}

@media (prefers-reduced-motion: reduce) {
  #lf-cinematic-hero, #lf-cinematic-hero *, #lf-cinematic-hero *::before, #lf-cinematic-hero *::after {
    animation: none !important; transition: none !important;
  }
  #lf-cinematic-hero .lfh-copy, #lf-cinematic-hero .lfh-scroll-cue {
    opacity: 1 !important; transform: none !important; filter: none !important;
  }
}