:root {
  --f-bg: #070707;
  --f-fg: #efede7;
  --f-muted: #8e8b84;
  --f-line: rgba(239, 237, 231, .18);
  --f-red: #df1d18;
  --f-pad: clamp(18px, 2.5vw, 42px);
  --f-ease: cubic-bezier(.16, 1, .3, 1);
}

* { box-sizing: border-box; }
html { background: var(--f-bg); }
body.falucho-experience { overflow: hidden; background: var(--f-bg); color: var(--f-fg); }
body.falucho-experience.admin-bar .falucho-app { height: calc(100dvh - 32px); }
body.falucho-experience.admin-bar .falucho-hud { top: 32px; }

.falucho-app { position: relative; width: 100%; height: 100dvh; overflow: hidden; isolation: isolate; background: #060606; color: var(--f-fg); }
.falucho-canvas { position: absolute; inset: 0; width: 100%; height: 100%; display: block; z-index: 0; touch-action: none; }
.falucho-grain { position: absolute; inset: -50%; z-index: 2; pointer-events: none; opacity: .12; background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.72' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.52'/%3E%3C/svg%3E"); animation: falucho-noise .22s steps(2) infinite; mix-blend-mode: soft-light; }
.falucho-vignette { position: absolute; inset: 0; z-index: 1; pointer-events: none; background: radial-gradient(circle at 50% 46%, transparent 25%, rgba(0,0,0,.32) 70%, rgba(0,0,0,.82) 112%); }
@keyframes falucho-noise { 0%{transform:translate3d(-2%,-3%,0)} 25%{transform:translate3d(3%,2%,0)} 50%{transform:translate3d(-4%,3%,0)} 75%{transform:translate3d(2%,-4%,0)} 100%{transform:translate3d(-2%,-3%,0)} }

.falucho-entry { position: absolute; inset: 0; z-index: 20; display: flex; flex-direction: column; justify-content: flex-end; padding: var(--f-pad); padding-bottom: clamp(34px, 6vw, 86px); background: radial-gradient(circle at 50% 50%, rgba(28,0,0,.14), rgba(7,7,7,.72) 64%, #070707 100%); transition: opacity .9s var(--f-ease), visibility .9s; }
.falucho-entry.is-leaving { opacity: 0; visibility: hidden; pointer-events: none; }
.falucho-entry__coordinates { position: absolute; top: var(--f-pad); right: var(--f-pad); font: 500 10px/1.2 ui-monospace, SFMono-Regular, Menlo, monospace; letter-spacing: .18em; color: var(--f-muted); }
.falucho-kicker { margin: 0 0 1rem; text-transform: uppercase; letter-spacing: .17em; font-size: 11px; color: var(--f-red); }
.falucho-entry__title { max-width: 1200px; margin: 0; font-size: clamp(3.6rem, 9.8vw, 10.2rem); line-height: .82; letter-spacing: -.075em; font-weight: 650; text-wrap: balance; }
.falucho-entry__copy { margin: clamp(1.5rem, 3vw, 2.5rem) 0 0; max-width: 560px; color: #aaa69e; font-size: clamp(.95rem, 1.4vw, 1.2rem); }
.falucho-enter { margin-top: clamp(1.4rem, 3vw, 2.8rem); width: min(360px, 100%); display: flex; justify-content: space-between; align-items: center; padding: 1rem 0; border: 0; border-top: 1px solid var(--f-line); border-bottom: 1px solid var(--f-line); background: transparent; color: var(--f-fg); text-transform: uppercase; letter-spacing: .12em; font: inherit; font-size: 12px; cursor: pointer; transition: color .3s ease, padding .3s var(--f-ease); }
.falucho-enter:hover, .falucho-enter:focus-visible { color: var(--f-red); padding-left: .65rem; padding-right: .65rem; }
.falucho-enter:focus-visible, .falucho-text-button:focus-visible, .falucho-open-story:focus-visible, .falucho-index button:focus-visible, .falucho-player button:focus-visible, .falucho-player a:focus-visible { outline: 2px solid var(--f-red); outline-offset: 5px; }
.falucho-slit { position: absolute; top: 50%; left: 50%; width: clamp(12px, 1.3vw, 24px); height: min(56vh, 620px); transform: translate(-50%, -54%) rotate(2deg); filter: drop-shadow(0 0 24px rgba(223,29,24,.28)); }
.falucho-slit span { position: absolute; inset: 0 auto 0 50%; width: 1px; background: linear-gradient(transparent, #6e0c0a 14%, #f22a22 48%, #81100c 80%, transparent); transform-origin: center; animation: slit-breathe 4s ease-in-out infinite; }
.falucho-slit span:nth-child(2){transform:translateX(-6px) rotate(-1.8deg);opacity:.52}.falucho-slit span:nth-child(3){transform:translateX(7px) rotate(2.5deg);opacity:.33}
@keyframes slit-breathe{50%{transform:scaleY(1.035) scaleX(2);filter:brightness(1.5)}}

.falucho-hud { position: absolute; inset: 0 0 auto 0; z-index: 12; display: grid; grid-template-columns: 1fr auto 1fr; align-items: start; gap: 2rem; padding: var(--f-pad); opacity: 0; visibility: hidden; pointer-events: none; transition: opacity .7s ease, visibility .7s; }
.falucho-hud.is-visible { opacity: 1; visibility: visible; pointer-events: auto; }
.falucho-brand { display: inline-flex; align-items: flex-start; gap: .7rem; width: fit-content; color: inherit; text-decoration: none; text-transform: uppercase; letter-spacing: .07em; font-size: 10px; line-height: 1.05; }
.falucho-brand__mark { width: 5px; height: 32px; background: var(--f-red); clip-path: polygon(48% 0,100% 35%,63% 54%,89% 100%,29% 70%,0 47%); }
.falucho-hud__status { display: flex; gap: 1.25rem; font: 500 10px/1.2 ui-monospace, SFMono-Regular, Menlo, monospace; text-transform: uppercase; letter-spacing: .12em; color: var(--f-muted); }
.falucho-hud__actions { justify-self: end; display: flex; gap: 1.2rem; }
.falucho-text-button { padding: 0; border: 0; background: none; color: var(--f-fg); font: inherit; font-size: 10px; letter-spacing: .09em; text-transform: uppercase; cursor: pointer; text-decoration: none; }
.falucho-text-button:hover { color: var(--f-red); }
.falucho-subscribe { color: var(--f-red); }

.falucho-story-info { position: absolute; left: var(--f-pad); bottom: var(--f-pad); z-index: 10; width: min(620px, calc(100vw - var(--f-pad) * 2)); opacity: 0; transform: translateY(20px); visibility: hidden; pointer-events: none; transition: opacity .45s ease, transform .7s var(--f-ease), visibility .45s; }
.falucho-story-info.is-visible { opacity: 1; transform: translateY(0); visibility: visible; pointer-events: auto; }
.falucho-story-info__meta { margin: 0 0 .85rem; color: var(--f-red); text-transform: uppercase; letter-spacing: .13em; font: 600 10px/1.2 ui-monospace, SFMono-Regular, Menlo, monospace; }
.falucho-story-info h2 { margin: 0; max-width: 850px; font-size: clamp(2.6rem, 6.6vw, 7.8rem); line-height: .82; letter-spacing: -.065em; font-weight: 620; text-wrap: balance; }
.falucho-story-info [data-story-origin] { margin: .85rem 0 0; color: #b2aea6; font-size: 12px; text-transform: uppercase; letter-spacing: .1em; }
.falucho-story-info [data-story-excerpt] { max-width: 520px; margin: .85rem 0 0; color: #9a968f; font-size: clamp(.88rem, 1.1vw, 1rem); line-height: 1.5; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.falucho-open-story { margin-top: 1.2rem; padding: .8rem 0; border: 0; border-bottom: 1px solid var(--f-line); background: transparent; color: var(--f-fg); font: inherit; font-size: 12px; letter-spacing: .08em; text-transform: uppercase; cursor: pointer; }
.falucho-open-story:hover { color: var(--f-red); }

.falucho-hint { position: absolute; z-index: 9; right: var(--f-pad); bottom: var(--f-pad); color: #77736d; font: 500 9px/1.2 ui-monospace, SFMono-Regular, Menlo, monospace; text-transform: uppercase; letter-spacing: .12em; opacity: 0; transition: opacity .5s ease; }
.falucho-hint.is-visible { opacity: 1; }
.falucho-hint__mobile { display: none; }

.falucho-index { position: absolute; z-index: 30; inset: 0; display: grid; grid-template-rows: auto auto 1fr auto; background: rgba(7,7,7,.97); backdrop-filter: blur(18px); padding: var(--f-pad); transform: translateY(-102%); visibility: hidden; transition: transform .75s var(--f-ease), visibility .75s; }
.falucho-index.is-open { transform: translateY(0); visibility: visible; }
.falucho-index__head { display: flex; align-items: center; justify-content: space-between; padding-bottom: 1rem; border-bottom: 1px solid var(--f-line); text-transform: uppercase; letter-spacing: .13em; font-size: 10px; }
.falucho-index__head p { margin: 0; }
.falucho-index__head button, .falucho-player__close { width: 38px; height: 38px; border: 1px solid var(--f-line); border-radius: 50%; background: transparent; color: var(--f-fg); font-size: 22px; cursor: pointer; }
.falucho-index__filters { display: flex; gap: 1.1rem; padding: 1.1rem 0; border-bottom: 1px solid var(--f-line); overflow-x: auto; }
.falucho-index__filters button { border: 0; background: none; color: var(--f-muted); padding: 0; font: inherit; font-size: 10px; text-transform: uppercase; letter-spacing: .1em; cursor: pointer; white-space: nowrap; }
.falucho-index__filters button.is-active { color: var(--f-red); }
.falucho-index__list { list-style: none; margin: 0; padding: 0; overflow-y: auto; overscroll-behavior: contain; scrollbar-width: thin; }
.falucho-index__list li { border-bottom: 1px solid var(--f-line); }
.falucho-index__list button { width: 100%; display: grid; grid-template-columns: 70px 1fr auto; align-items: center; gap: 1rem; padding: clamp(1rem, 2vw, 1.6rem) 0; border: 0; background: none; color: var(--f-fg); text-align: left; cursor: pointer; }
.falucho-index__list button:hover .index-title { padding-left: .6rem; color: var(--f-red); }
.index-number { color: var(--f-muted); font: 500 10px/1 ui-monospace, SFMono-Regular, Menlo, monospace; }
.index-title { font-size: clamp(1.45rem, 3vw, 3.5rem); line-height: .95; letter-spacing: -.04em; transition: padding .35s var(--f-ease), color .25s; }
.index-realm { color: var(--f-muted); font-size: 9px; text-transform: uppercase; letter-spacing: .12em; }
.falucho-index__footer { display: flex; justify-content: space-between; gap: 1rem; padding-top: 1rem; color: var(--f-muted); font-size: 10px; text-transform: uppercase; letter-spacing: .08em; }
.falucho-index__footer a { color: var(--f-fg); text-decoration: none; }

.falucho-player { position: absolute; z-index: 40; inset: 0; display: grid; grid-template-columns: minmax(0, 1.55fr) minmax(320px, .65fr); gap: clamp(1.5rem, 4vw, 5rem); align-items: center; padding: var(--f-pad); background: rgba(5,5,5,.985); opacity: 0; visibility: hidden; pointer-events: none; transform: scale(1.025); transition: opacity .6s ease, transform .8s var(--f-ease), visibility .6s; }
.falucho-player.is-open { opacity: 1; visibility: visible; pointer-events: auto; transform: scale(1); }
.falucho-player__close { position: absolute; top: var(--f-pad); right: var(--f-pad); z-index: 2; }
.falucho-player__frame { width: 100%; aspect-ratio: 16 / 9; background: #000; box-shadow: 0 0 90px rgba(0,0,0,.6); }
.falucho-player__frame iframe { width: 100%; height: 100%; border: 0; display: block; }
.falucho-player__meta > p:first-child { color: var(--f-red); font: 600 10px/1.2 ui-monospace, SFMono-Regular, Menlo, monospace; letter-spacing: .12em; }
.falucho-player__meta h2 { margin: .45rem 0 1.2rem; font-size: clamp(2.4rem, 5vw, 6.5rem); line-height: .84; letter-spacing: -.06em; font-weight: 620; }
.falucho-player__meta [data-player-excerpt] { color: #a39f98; line-height: 1.55; max-width: 520px; }
.falucho-player__actions { margin-top: 2rem; display: flex; flex-wrap: wrap; gap: 1.3rem; }
.falucho-player__actions button, .falucho-player__actions a { padding: .85rem 0; border: 0; border-bottom: 1px solid var(--f-line); background: transparent; color: var(--f-fg); text-decoration: none; font: inherit; font-size: 11px; text-transform: uppercase; letter-spacing: .09em; cursor: pointer; }

.falucho-loader {
  position: absolute;
  z-index: 100;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: clamp(18px, 3vw, 34px);
  padding: var(--f-pad);
  background: #050505;
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transition: opacity .78s var(--f-ease), visibility .78s;
}
.falucho-loader.is-hidden { opacity: 0; visibility: hidden; pointer-events: none; }
.falucho-loader__mark {
  width: clamp(54px, 6.2vw, 94px);
  height: clamp(210px, 39vh, 430px);
  display: grid;
  place-items: center;
  opacity: .9;
  filter: drop-shadow(0 0 24px rgba(223,29,24,.2));
  animation: falucho-loader-breathe 2.8s ease-in-out infinite;
}
.falucho-loader__mark img { width: 100%; height: 100%; display: block; object-fit: contain; }
.falucho-loader__meta {
  width: min(420px, calc(100vw - (var(--f-pad) * 2)));
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 1.25rem;
  color: var(--f-muted);
}
.falucho-loader__meta p {
  margin: 0;
  font: 600 9px/1.2 ui-monospace, SFMono-Regular, Menlo, monospace;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.falucho-loader__percent {
  flex: 0 0 auto;
  width: auto;
  height: auto;
  background: none;
  color: var(--f-fg);
  font: 600 10px/1 ui-monospace, SFMono-Regular, Menlo, monospace;
  letter-spacing: .08em;
  animation: none;
}
.falucho-loader__track {
  position: relative;
  width: min(420px, calc(100vw - (var(--f-pad) * 2)));
  height: 1px;
  overflow: hidden;
  background: rgba(239,237,231,.13);
}
.falucho-loader__track > span {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  background: var(--f-red);
  transform: scaleX(0);
  transform-origin: left center;
  animation: none;
  transition: transform .36s var(--f-ease);
}
@keyframes falucho-loader-breathe {
  0%,100% { transform: scale(.965); opacity: .66; filter: drop-shadow(0 0 12px rgba(223,29,24,.12)); }
  50% { transform: scale(1.025); opacity: 1; filter: drop-shadow(0 0 32px rgba(223,29,24,.34)); }
}
@media (max-width: 640px) {
  .falucho-loader__mark { width: clamp(48px, 15vw, 74px); height: min(42vh, 330px); }
  .falucho-loader__meta, .falucho-loader__track { width: min(330px, calc(100vw - 44px)); }
}
.falucho-noscript { max-width: 560px; margin-top: 1rem; color: var(--f-muted); font-size: .9rem; }

.falucho-fallback { position: absolute; z-index: 60; inset: 0; overflow: auto; padding: clamp(5rem, 9vw, 9rem) var(--f-pad) 4rem; background: var(--f-bg); }
.falucho-fallback h2 { margin: .2rem 0 2rem; font-size: clamp(3rem, 9vw, 8rem); line-height: .86; letter-spacing: -.06em; }
.falucho-fallback ol { list-style: none; padding: 0; margin: 3rem 0 0; }
.falucho-fallback li { border-top: 1px solid var(--f-line); }
.falucho-fallback a { display: grid; grid-template-columns: 70px 1fr; gap: 1rem; padding: 1.1rem 0; color: inherit; text-decoration: none; }

@media (max-width: 900px) {
  .falucho-hud { grid-template-columns: 1fr auto; }
  .falucho-hud__status { display: none; }
  .falucho-hud__actions { gap: .85rem; }
  .falucho-player { grid-template-columns: 1fr; align-content: center; overflow-y: auto; }
  .falucho-player__meta { padding-bottom: 2rem; }
  .falucho-hint__desktop { display: none; }
  .falucho-hint__mobile { display: inline; }
  .falucho-story-info { bottom: calc(var(--f-pad) + 26px); }
}

@media (max-width: 640px) {
  body.falucho-experience.admin-bar .falucho-app { height: 100dvh; }
  body.falucho-experience.admin-bar .falucho-hud { top: 0; }
  #wpadminbar { display: none; }
  .falucho-entry { justify-content: flex-end; }
  .falucho-entry__title { font-size: clamp(3.25rem, 15.8vw, 6rem); line-height: .84; }
  .falucho-entry__copy { max-width: 300px; font-size: .88rem; }
  .falucho-slit { top: 38%; height: 38vh; }
  .falucho-hud__actions [data-falucho-sound] { display: none; }
  .falucho-subscribe { display: none; }
  .falucho-story-info h2 { font-size: clamp(3rem, 13vw, 5.4rem); }
  .falucho-story-info [data-story-excerpt] { -webkit-line-clamp: 1; max-width: calc(100vw - 40px); }
  .falucho-index__list button { grid-template-columns: 44px 1fr; }
  .index-realm { display: none; }
  .falucho-index__footer { align-items: flex-end; }
  .falucho-index__footer span { max-width: 180px; text-align: right; }
  .falucho-player { padding-top: 72px; gap: 1.4rem; }
  .falucho-player__close { top: 18px; right: 18px; }
  .falucho-player__meta h2 { font-size: clamp(2.6rem, 12vw, 4.8rem); }
}

/* v1.1.0 — identidad, jerarquía editorial y preludio */
.falucho-entry-logo{position:absolute;top:50%;left:50%;z-index:0;width:clamp(78px,9.5vw,152px);height:min(60vh,650px);transform:translate(-50%,-53%) rotate(.5deg);pointer-events:none;filter:drop-shadow(0 0 24px rgba(224,9,20,.2));opacity:.78;animation:falucho-logo-breathe 5.8s ease-in-out infinite}.falucho-entry-logo img{width:100%;height:100%;display:block;object-fit:contain}.falucho-entry>*:not(.falucho-entry-logo){position:relative;z-index:1}@keyframes falucho-logo-breathe{0%,100%{transform:translate(-50%,-53%) scale(.985) rotate(.5deg);filter:drop-shadow(0 0 14px rgba(224,9,20,.14));opacity:.68}50%{transform:translate(-50%,-53%) scale(1.025) rotate(-.35deg);filter:drop-shadow(0 0 34px rgba(224,9,20,.33));opacity:.92}}
.falucho-brand__mark{width:18px;height:34px;background:none;clip-path:none;display:block}.falucho-brand__mark img{width:100%;height:100%;display:block;object-fit:contain}
.story-title__main,.player-title__main,.index-title-text__main,.fallback-title-text__main{display:block}.story-title__subtitle,.player-title__subtitle{display:block;margin-top:.24em;font-size:.38em;line-height:1.04;letter-spacing:-.018em;font-weight:460;color:#c3beb6;max-width:18em}.index-title-text__subtitle{display:block;margin-top:.22em;font-size:.42em;line-height:1.08;letter-spacing:-.01em;font-weight:450;color:#918d86}.fallback-title-text__subtitle{display:block;margin-top:.2em;font-size:.58em;color:var(--f-muted)}
.falucho-story-info [data-story-excerpt]{max-width:460px;margin-top:.72rem;color:#8f8b84;font-size:clamp(.72rem,.82vw,.84rem);line-height:1.42;-webkit-line-clamp:2}.falucho-player__meta [data-player-excerpt]{color:#918d86;font-size:clamp(.76rem,.86vw,.88rem);line-height:1.48;max-width:460px}.index-title{display:block}
.falucho-prelude{position:absolute;z-index:70;inset:0;background:#000;overflow:hidden;opacity:1;visibility:visible;transition:opacity .72s ease,visibility .72s}.falucho-prelude.is-leaving{opacity:0;visibility:hidden;pointer-events:none}.falucho-prelude__video{position:absolute;inset:0;width:100%;height:100%;display:block;object-fit:cover;background:#000}.falucho-prelude__veil{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(0,0,0,.12),transparent 48%,rgba(0,0,0,.38)),radial-gradient(circle at center,transparent 50%,rgba(0,0,0,.28) 100%)}.falucho-prelude__meta{position:absolute;z-index:2;left:var(--f-pad);right:var(--f-pad);bottom:var(--f-pad);display:flex;align-items:center;justify-content:space-between;color:#d7d2c9;font:600 9px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.13em;text-transform:uppercase}.falucho-prelude__meta button{padding:.75rem 0;border:0;border-bottom:1px solid rgba(255,255,255,.28);background:transparent;color:#fff;font:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer}.falucho-prelude__meta button:hover,.falucho-prelude__meta button:focus-visible{color:#e00914;border-color:#e00914;outline:none}.falucho-prelude.needs-play::after{content:'REPRODUCIR';position:absolute;z-index:3;inset:50% auto auto 50%;transform:translate(-50%,-50%);padding:1rem 1.4rem;border:1px solid rgba(255,255,255,.4);color:#fff;font:600 10px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.15em;pointer-events:none}
@media(max-width:640px){.falucho-entry-logo{top:39%;width:clamp(62px,22vw,104px);height:42vh;opacity:.68}.falucho-story-info [data-story-excerpt]{font-size:.7rem;line-height:1.35;-webkit-line-clamp:1}.story-title__subtitle{font-size:.34em;margin-top:.28em}.falucho-player__meta [data-player-excerpt]{font-size:.74rem}.falucho-prelude__meta{bottom:22px}.falucho-prelude__video{object-position:center}}

/* v1.2.0 — marca viva + estado editorial desacoplado del caché */
.falucho-entry-logo{
  --logo-x:0px;
  --logo-y:0px;
  --logo-r:0deg;
  --logo-bend:0;
  top:48%;
  left:52%;
  width:clamp(220px,25vw,420px);
  height:min(82vh,900px);
  transform:translate(calc(-50% + var(--logo-x)),calc(-50% + var(--logo-y))) rotate(var(--logo-r));
  opacity:1;
  filter:none;
  animation:none;
  will-change:transform;
  transition:width .9s var(--f-ease),height .9s var(--f-ease);
}
.falucho-entry-logo__layer{
  position:absolute;
  inset:0;
  display:block;
  transform-origin:50% 52%;
  pointer-events:none;
}
.falucho-entry-logo__layer img{
  width:100%;
  height:100%;
  display:block;
  object-fit:contain;
}
.falucho-entry-logo__layer--main{
  z-index:3;
  opacity:.88;
  filter:drop-shadow(0 0 18px rgba(224,9,20,.22));
  animation:falucho-iso-main 6.5s ease-in-out infinite;
}
.falucho-entry-logo__layer--echo{
  z-index:2;
  opacity:.2;
  filter:blur(1.2px) drop-shadow(0 0 28px rgba(224,9,20,.48));
  mix-blend-mode:screen;
  animation:falucho-iso-echo 4.2s ease-in-out infinite alternate;
}
.falucho-entry-logo__layer--ghost{
  z-index:1;
  opacity:.11;
  filter:blur(7px) saturate(1.2);
  mix-blend-mode:screen;
  animation:falucho-iso-ghost 8.6s ease-in-out infinite;
}
.falucho-entry-logo__flare{
  position:absolute;
  z-index:0;
  left:50%;
  top:50%;
  width:42%;
  height:82%;
  transform:translate(-50%,-50%) scaleX(calc(.9 + var(--logo-bend) * .22));
  background:radial-gradient(ellipse at center,rgba(224,9,20,.16),rgba(224,9,20,.045) 36%,transparent 72%);
  filter:blur(22px);
  opacity:.55;
  transition:opacity .45s ease,transform .45s var(--f-ease);
}
.falucho-entry-logo.is-armed .falucho-entry-logo__layer--main{
  filter:drop-shadow(0 0 32px rgba(224,9,20,.46));
  transform:scale(1.08,1.13);
}
.falucho-entry-logo.is-armed .falucho-entry-logo__layer--echo{
  opacity:.34;
  transform:translate3d(10px,-6px,0) scale(1.11,1.17) rotate(1.2deg);
}
.falucho-entry-logo.is-armed .falucho-entry-logo__flare{opacity:.9;transform:translate(-50%,-50%) scale(1.18,1.08)}
@keyframes falucho-iso-main{
  0%,100%{transform:scale(1,.985) rotate(-.25deg)}
  38%{transform:scale(1.018,1.035) rotate(.4deg)}
  64%{transform:scale(.992,1.014) rotate(-.5deg)}
}
@keyframes falucho-iso-echo{
  0%{transform:translate3d(-7px,4px,0) scale(.985,1.015) rotate(-1deg)}
  100%{transform:translate3d(9px,-5px,0) scale(1.035,.985) rotate(1.15deg)}
}
@keyframes falucho-iso-ghost{
  0%,100%{transform:translate3d(0,8px,0) scale(.94,1.08);opacity:.08}
  50%{transform:translate3d(0,-10px,0) scale(1.08,.96);opacity:.16}
}

.falucho-prelude[hidden]{display:none!important}

@media(max-width:900px){
  .falucho-entry-logo{left:55%;width:clamp(180px,32vw,300px);height:72vh}
}
@media(max-width:640px){
  .falucho-entry-logo{top:36%;left:58%;width:clamp(150px,42vw,220px);height:52vh;opacity:.88}
  .falucho-entry-logo__layer--ghost{filter:blur(5px)}
}


/* v1.3.0 — isotipo a escala de pantalla + preludio con audio por gesto */
.falucho-entry-logo{
  top:50%;
  left:56%;
  width:clamp(360px,42vw,680px);
  height:122vh;
  max-height:none;
  opacity:1;
  transform:translate(calc(-50% + var(--logo-x)),calc(-50% + var(--logo-y))) rotate(var(--logo-r));
}
.falucho-entry-logo__layer img{
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center;
}
.falucho-entry-logo__layer--main{
  opacity:.96;
  filter:drop-shadow(0 0 24px rgba(224,9,20,.34));
}
.falucho-entry-logo__layer--echo{opacity:.27}
.falucho-entry-logo__layer--ghost{opacity:.14}
.falucho-entry-logo__flare{
  width:68%;
  height:94%;
  opacity:.72;
}
.falucho-entry-logo.is-armed .falucho-entry-logo__layer--main{
  transform:scale(1.11,1.13);
}

.falucho-prelude__gate{
  position:absolute;
  z-index:4;
  inset:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:1rem;
  padding:var(--f-pad);
  text-align:center;
  background:radial-gradient(circle at 50% 50%,rgba(0,0,0,.08),rgba(0,0,0,.72) 72%);
  transition:opacity .55s ease,visibility .55s ease;
}
.falucho-prelude__gate p{
  margin:0;
  color:#e00914;
  font:650 9px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace;
  letter-spacing:.17em;
}
.falucho-prelude__gate button{
  border:0;
  border-bottom:1px solid rgba(255,255,255,.42);
  padding:.8rem .1rem 1rem;
  background:transparent;
  color:#f2efe8;
  font:520 clamp(1.3rem,2.4vw,2.4rem)/1.05 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  letter-spacing:-.035em;
  cursor:pointer;
  transition:color .25s ease,border-color .25s ease,transform .25s ease;
}
.falucho-prelude__gate button:hover,
.falucho-prelude__gate button:focus-visible{
  color:#e00914;
  border-color:#e00914;
  transform:translateY(-2px);
  outline:none;
}
.falucho-prelude__gate>span{
  max-width:34rem;
  color:#8d8982;
  font-size:.72rem;
  line-height:1.45;
}
.falucho-prelude:not(.is-playing) .falucho-prelude__video{
  opacity:.36;
  filter:brightness(.52) saturate(.78);
}
.falucho-prelude.is-playing .falucho-prelude__video{
  opacity:1;
  filter:none;
  transition:opacity .65s ease,filter .65s ease;
}
.falucho-prelude.is-playing .falucho-prelude__gate{
  opacity:0;
  visibility:hidden;
  pointer-events:none;
}
.falucho-prelude.play-error .falucho-prelude__gate>span{
  color:#d7d2c9;
}
.falucho-prelude.play-error .falucho-prelude__gate>span::after{
  content:" Volvé a tocar ‘Iniciar con sonido’.";
  color:#e00914;
}

@media(max-width:900px){
  .falucho-entry-logo{
    top:46%;
    left:60%;
    width:clamp(320px,58vw,520px);
    height:108vh;
  }
}
@media(max-width:640px){
  .falucho-entry-logo{
    top:42%;
    left:62%;
    width:74vw;
    height:88vh;
    opacity:.96;
  }
  .falucho-prelude__gate button{font-size:clamp(1.25rem,7vw,2rem)}
  .falucho-prelude__gate>span{font-size:.66rem;max-width:18rem}
}

/* v1.5.0 — sonido ambiente editorial */
.falucho-ambient-audio{display:none!important}
@media(max-width:640px){
  .falucho-hud__actions [data-falucho-sound]{display:inline-flex}
}
.falucho-hud__actions [data-falucho-sound][hidden]{display:none!important}
.falucho-transition-audio{display:none!important}


/* v1.6.1 — ambiente disponible desde la Home */
.falucho-entry__sound{
  position:absolute;
  top:var(--f-pad);
  left:var(--f-pad);
  z-index:4;
  padding:.55rem 0;
  color:#b8b4ad;
}
.falucho-entry__sound[aria-pressed="true"]{color:var(--f-red)}
.falucho-entry__sound[hidden]{display:none!important}
@media(max-width:640px){
  .falucho-entry__sound{top:calc(var(--f-pad) + 2px);font-size:9px;letter-spacing:.11em}
}


/* v1.6.2 — control de sonido presente desde Home */
.falucho-entry__sound{z-index:8;transition:color .35s ease,opacity .35s ease}
.falucho-entry__sound:not([hidden]){display:inline-flex;align-items:center;min-height:32px}


/* v1.6.4 — eje institucional centrado + coherencia editorial desktop */
.falucho-entry-logo{
  top:50%!important;
  left:50%!important;
  width:clamp(390px,42vw,700px);
  height:122vh;
  transform:translate(-50%,-50%) rotate(0deg)!important;
  transform-origin:50% 50%;
}
@media(max-width:900px){
  .falucho-entry-logo{
    top:50%!important;
    left:50%!important;
    width:clamp(340px,58vw,560px);
    height:112vh;
  }
}
@media(max-width:640px){
  .falucho-entry-logo{
    top:50%!important;
    left:50%!important;
    width:92vw;
    height:104vh;
  }
}


/* v1.6.5 — Home editorial: marca legible + audio independiente */
.falucho-entry__coordinates{display:none!important}
.falucho-kicker{
  margin:0 0 clamp(1rem,1.5vw,1.4rem);
  color:var(--f-red);
  font-size:clamp(14px,1.15vw,18px);
  line-height:1;
  font-weight:650;
  letter-spacing:.13em;
  text-transform:uppercase;
}
.falucho-entry__sound{
  top:var(--f-pad)!important;
  right:var(--f-pad)!important;
  left:auto!important;
  z-index:30!important;
  min-height:44px!important;
  padding:.55rem .15rem!important;
  pointer-events:auto!important;
  color:#d0ccc4;
  font-size:11px;
  font-weight:600;
  letter-spacing:.11em;
  border-bottom:1px solid rgba(239,237,231,.22);
  transition:color .35s ease,border-color .35s ease,opacity .35s ease;
}
.falucho-entry__sound:hover,
.falucho-entry__sound:focus-visible{color:var(--f-red);border-color:rgba(223,29,24,.72)}
.falucho-entry__sound[aria-pressed="true"]{color:var(--f-red);border-color:rgba(223,29,24,.55)}
.falucho-entry__sound.is-audio-error{color:#f0b6b2;border-color:rgba(240,182,178,.65)}
@media(max-width:640px){
  .falucho-kicker{font-size:12px;letter-spacing:.12em;margin-bottom:.9rem}
  .falucho-entry__sound{
    top:calc(var(--f-pad) - 2px)!important;
    right:var(--f-pad)!important;
    left:auto!important;
    min-height:42px!important;
    font-size:10px!important;
    letter-spacing:.09em!important;
  }
}


/* v1.6.6 — Home cerrada + apertura cinematográfica del archivo */
.falucho-canvas{
  opacity:0;
  transform:scale(1.025);
  transition:opacity .72s ease,transform 1.45s cubic-bezier(.16,1,.3,1);
}
.falucho-app.is-entering .falucho-canvas,
.falucho-app.is-entered .falucho-canvas{
  opacity:1;
  transform:scale(1);
}

.falucho-entry{
  background:transparent!important;
  overflow:hidden;
  isolation:isolate;
}
.falucho-entry > .falucho-entry__curtain{
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  overflow:hidden;
}
.falucho-entry__curtain-panel{
  position:absolute;
  top:0;
  bottom:0;
  width:50.2%;
  background:
    radial-gradient(circle at 100% 50%,rgba(45,0,0,.12),transparent 46%),
    #070707;
  will-change:transform;
  transition:transform 1.28s cubic-bezier(.76,0,.24,1);
}
.falucho-entry__curtain-panel--left{left:0;border-right:1px solid rgba(223,29,24,.09)}
.falucho-entry__curtain-panel--right{
  right:0;
  background:
    radial-gradient(circle at 0 50%,rgba(45,0,0,.12),transparent 46%),
    #070707;
  border-left:1px solid rgba(223,29,24,.09);
}
.falucho-entry.is-opening .falucho-entry__curtain-panel--left{transform:translate3d(-101%,0,0)}
.falucho-entry.is-opening .falucho-entry__curtain-panel--right{transform:translate3d(101%,0,0)}

.falucho-entry>*:not(.falucho-entry__curtain):not(.falucho-entry-logo){
  transition:opacity .52s ease,transform .7s cubic-bezier(.16,1,.3,1),color .35s ease,border-color .35s ease;
}
.falucho-entry.is-opening>*:not(.falucho-entry__curtain):not(.falucho-entry-logo){
  opacity:0;
  transform:translate3d(0,12px,0);
  pointer-events:none;
}
.falucho-entry.is-opening .falucho-entry-logo{
  opacity:1!important;
  filter:drop-shadow(0 0 46px rgba(223,29,24,.5));
  transition:opacity .95s ease,filter .9s ease;
}
.falucho-entry.is-leaving .falucho-entry-logo{opacity:0!important}

.falucho-entry__credit{
  position:absolute!important;
  right:var(--f-pad);
  bottom:calc(var(--f-pad) * .72);
  z-index:32!important;
  display:inline-block;
  color:rgba(239,237,231,.58);
  font:500 9px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace;
  letter-spacing:.08em;
  text-decoration:none;
  text-transform:lowercase;
  white-space:nowrap;
}
.falucho-entry__credit:hover,
.falucho-entry__credit:focus-visible{
  color:var(--f-fg);
  outline:none;
  text-decoration:underline;
  text-underline-offset:4px;
}

@media(max-width:640px){
  .falucho-entry__credit{
    right:var(--f-pad);
    bottom:18px;
    font-size:8px;
    letter-spacing:.07em;
  }
}

@media(prefers-reduced-motion:reduce){
  .falucho-entry__curtain-panel,
  .falucho-canvas,
  .falucho-entry>*{
    transition-duration:.01ms!important;
  }
}


/* v1.6.8 — Preloader narrativo + carga crítica */
/*
 * El selector histórico `.falucho-entry>*:not(.falucho-entry-logo)` tenía
 * mayor especificidad que el posicionamiento del control de audio. Eso hacía
 * que el botón volviera al flujo flex, se estirara a todo el ancho y su borde
 * inferior apareciera como una línea horizontal. Forzamos el control a ser
 * flotante, compacto y completamente independiente de la marca/título.
 */
.falucho-entry .falucho-entry__sound{
  position:absolute!important;
  top:var(--f-pad)!important;
  right:var(--f-pad)!important;
  bottom:auto!important;
  left:auto!important;
  z-index:48!important;
  width:max-content!important;
  max-width:calc(100% - (var(--f-pad) * 2));
  min-height:44px!important;
  margin:0!important;
  padding:.5rem 0!important;
  align-self:auto!important;
  flex:0 0 auto!important;
  border:0!important;
  background:transparent!important;
  color:#c8c3bb;
  white-space:nowrap;
  pointer-events:auto!important;
  touch-action:manipulation;
}
.falucho-entry .falucho-entry__sound::before,
.falucho-entry .falucho-entry__sound::after{content:none!important;display:none!important}
.falucho-entry .falucho-entry__sound:hover,
.falucho-entry .falucho-entry__sound:focus-visible{color:var(--f-red)}
.falucho-entry .falucho-entry__sound[aria-pressed="true"]{color:var(--f-red)}

/* El CTA de entrada siempre queda por encima de las capas escénicas. */
.falucho-entry .falucho-enter{
  position:relative!important;
  z-index:46!important;
  pointer-events:auto!important;
  touch-action:manipulation;
  isolation:isolate;
}
.falucho-entry .falucho-enter:disabled{cursor:wait;opacity:.58}

/* La cortina es estrictamente visual: nunca puede capturar el gesto de entrada. */
.falucho-entry .falucho-entry__curtain,
.falucho-entry .falucho-entry__curtain-panel{pointer-events:none!important}

@media(max-width:640px){
  .falucho-entry .falucho-entry__sound{
    top:18px!important;
    right:18px!important;
    min-height:40px!important;
    font-size:9px!important;
  }
}

/* v1.6.9 — Entrada resiliente: la Home nunca puede atrapar el archivo */
.falucho-app.is-entering .falucho-canvas,
.falucho-app.is-entered .falucho-canvas{
  opacity:1!important;
  visibility:visible!important;
}

/* El CTA da feedback textual, no cursor de espera ni bloqueo indefinido. */
.falucho-entry .falucho-enter[aria-busy="true"]{
  cursor:default!important;
  opacity:1!important;
  color:var(--f-red);
}

/* Una vez confirmado el gesto, ninguna capa de la Home vuelve a capturar input. */
.falucho-entry.is-committed{
  pointer-events:none!important;
}
.falucho-entry.is-committed .falucho-entry__curtain,
.falucho-entry.is-committed .falucho-entry__curtain-panel,
.falucho-entry.is-committed .falucho-entry-logo,
.falucho-entry.is-committed .falucho-enter{
  pointer-events:none!important;
}

/* Separamos el "commit" del primer frame de la apertura para garantizar que
   el navegador pinte el inicio de la transición antes de mover las cortinas. */
.falucho-entry.is-committed:not(.is-opening-live) .falucho-entry__curtain-panel{
  transform:translate3d(0,0,0)!important;
}
.falucho-entry.is-opening-live .falucho-entry__curtain-panel--left{
  transform:translate3d(-101%,0,0)!important;
}
.falucho-entry.is-opening-live .falucho-entry__curtain-panel--right{
  transform:translate3d(101%,0,0)!important;
}

/* El root de la portada se vuelve transparente durante la apertura; no puede
   quedar un fondo opaco tapando el canvas aunque falle una transición hija. */
.falucho-entry.is-committed{
  background:transparent!important;
}
.falucho-entry.is-leaving{
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
}


/* v1.7.1 — Descripción editorial de YouTube dentro del relato */
.falucho-player__description{
  margin:1rem 0 0;
  max-width:520px;
  max-height:min(24vh,220px);
  padding-right:.8rem;
  overflow-y:auto;
  overflow-x:hidden;
  color:#aaa59d;
  font-size:clamp(.74rem,.84vw,.88rem);
  line-height:1.55;
  white-space:pre-line;
  overflow-wrap:anywhere;
  scrollbar-width:thin;
  scrollbar-color:rgba(223,29,24,.55) rgba(255,255,255,.06);
}
.falucho-player__description[hidden]{display:none!important}
.falucho-player__description.is-loading{opacity:.56;font-style:italic}
.falucho-player__description::-webkit-scrollbar{width:5px}
.falucho-player__description::-webkit-scrollbar-track{background:rgba(255,255,255,.06)}
.falucho-player__description::-webkit-scrollbar-thumb{background:rgba(223,29,24,.55);border-radius:999px}
.falucho-player__description + .falucho-player__actions{margin-top:1.45rem}

@media(max-width:900px){
  .falucho-player__description{
    max-width:none;
    max-height:150px;
    font-size:.76rem;
    line-height:1.48;
  }
}
