/* CASA ROCÍO / 13 · Recorrido móvil, superficies champán y movimiento reversible. */
.journey-mobile { display:none; }

/* Luz satinada: marfil → champán → arena, sin un bloque marrón oscuro. */
.closing {
  position:relative;isolation:isolate;overflow:hidden;color:var(--coffee);
  background:radial-gradient(ellipse at 12% 8%,#fffdf6d9,transparent 58%),radial-gradient(ellipse at 88% 95%,#bc98615c,transparent 62%),linear-gradient(125deg,#f4ebdb 4%,#dfc9a3 34%,#f5ecd9 55%,#e6d3b1 77%,#d5bc92);
  border-top:1px solid #fff9;box-shadow:inset 0 1px #fff8;
}
.closing:before { content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(112deg,transparent 25%,#fff6 43%,transparent 61%); }
.closing .eyebrow,.closing em { color:#745a38; }
.closing>p:not(.eyebrow),.closing small { color:#5d5141; }
.closing .pill { background:#493d2e;color:#fff8eb;border-color:#493d2e;box-shadow:0 8px 24px #6f54261c,inset 0 1px #fff2; }
footer { background:linear-gradient(125deg,#eee1cb,#e2cfad 46%,#f0e5d2 72%,#dcc6a2);color:#554735;border-top:1px solid #ffffff80; }
footer .brand { color:#493d2e; }
.footer-legal { border-color:#80663f30; }
.hero-bottom { padding:22px 24px;border:1px solid #f2dfba40;border-radius:14px;background:linear-gradient(112deg,#e8d7b828,#fff4db12 45%,#c09a592c);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:inset 0 1px #ffffff22; }

/* Nunca ocultar contenido sin JS. El observador añade esta clase al montar. */
.scroll-reveal { opacity:0;transform:translate3d(0,30px,0);filter:blur(4px);transition:opacity .4s ease,transform .55s cubic-bezier(.2,.65,.3,1),filter .4s ease; }
.scroll-reveal.reveal-above { transform:translate3d(0,-20px,0); }
.scroll-reveal.is-revealed { opacity:1;transform:none;filter:none;transition-duration:.65s,.85s,.65s;transition-delay:var(--reveal-delay,0ms); }
.editorial-image.scroll-reveal,.home-gallery>a.scroll-reveal,.mobile-chapter figure.scroll-reveal { clip-path:inset(3% 0 3% 0 round 4px);transition:opacity .55s,transform .8s cubic-bezier(.2,.65,.3,1),filter .55s,clip-path .8s cubic-bezier(.2,.65,.3,1); }
.editorial-image.is-revealed,.home-gallery>a.is-revealed,.mobile-chapter figure.is-revealed { clip-path:inset(0 round 4px); }
.scroll-reveal:focus-within,.visual-editing .scroll-reveal { opacity:1;transform:none;filter:none;clip-path:none; }

@media(max-width:700px) {
  /* Cinco fichas naturales: la imagen nunca queda detrás del texto. */
  .journey { height:auto;background:linear-gradient(180deg,#f8f5ef,#eee5d6 55%,#f8f5ef);color:var(--coffee); }
  .journey-sticky { display:none; }
  .journey-mobile { display:block;padding:54px 0 12px; }
  .mobile-journey-intro { padding:0 7% 36px; }
  .mobile-journey-intro .eyebrow { margin-bottom:16px;font-size:9px;letter-spacing:2px; }
  .mobile-journey-intro h2 { font-size:42px;margin-bottom:18px; }
  .mobile-journey-intro>p:not(.eyebrow) { font-size:14px;color:var(--muted); }
  .mobile-journey-intro .text-link { font-size:13px; }
  .mobile-chapter { margin:0 0 50px; }
  .mobile-chapter figure { position:relative;margin:0 4%; }
  .mobile-chapter figure img { display:block;width:100%;height:auto;border-radius:4px; }
  .mobile-chapter figure>span { position:absolute;left:14px;bottom:14px;padding:6px 12px;border:1px solid #fff7;border-radius:24px;background:#f8f2e5d9;backdrop-filter:blur(8px);color:#493d2e;font-size:10px;letter-spacing:2px; }
  .mobile-chapter-copy { padding:23px 7% 0; }
  .mobile-chapter-copy .eyebrow { font-size:9px;letter-spacing:2px;margin-bottom:12px; }
  .mobile-chapter-copy h3 { font:400 33px/1.13 var(--serif);margin:0 0 16px;letter-spacing:-.6px; }
  .mobile-chapter-copy>p:not(.eyebrow) { font-size:14px;line-height:1.75;color:var(--muted);margin:0 0 20px; }
  .mobile-chapter-detail { display:flex;flex-wrap:wrap;gap:6px 18px;justify-content:space-between;padding-top:14px;border-top:1px solid #79624930;color:#756249;font-size:10px; }
  .mobile-chapter-detail>span:first-child { font-size:9px;letter-spacing:1px; }
  .mobile-chapter-copy .pill { margin-top:24px;min-height:44px;font-size:13px; }
  .hero-bottom { padding:15px 16px;left:5%;right:5%;bottom:22px; }
  .hero-bottom .stats b { font-size:28px; }
  .hero-bottom .location { display:none; }
  .closing { padding:72px 7%; }
}
@media(prefers-reduced-motion:reduce) {
  .scroll-reveal,.scroll-reveal.reveal-above { opacity:1;transform:none;filter:none;transition:none;clip-path:none!important; }
}
.rocio-motion-reduced .scroll-reveal,.rocio-motion-reduced .scroll-reveal.reveal-above { opacity:1;transform:none;filter:none;transition:none;clip-path:none!important; }

/* Ambiente opcional. Componente fijo fuera del contenedor de navegación. */
.ambience { position:fixed;bottom:max(16px,env(safe-area-inset-bottom));left:18px;z-index:80;color:#493d2e; }
.ambience-toggle { display:flex;gap:9px;align-items:center;min-height:44px;padding:10px 16px;border:1px solid #fff9;border-radius:30px;background:#f6efdfec;backdrop-filter:blur(16px);box-shadow:0 5px 25px #443c3320;font-size:12px; }
.ambience-toggle svg { width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.4; }
.ambience-toggle[aria-pressed=true] { background:#493d2ef2;color:#f9efdc; }
.ambience-panel { position:absolute;bottom:54px;left:0;width:252px;padding:20px;border:1px solid #fff9;border-radius:18px;background:#f8f3e9f5;backdrop-filter:blur(20px);box-shadow:0 14px 42px #443c3326; }
.ambience-panel[hidden] { display:none; }
.ambience-panel strong { font:22px var(--serif); }
.ambience-panel p { font-size:12px;line-height:1.65;color:#6e6458;margin:8px 0 16px; }
.ambience-panel label { font-size:12px;display:flex;justify-content:space-between; }
.ambience-panel input { width:100%;min-height:36px;accent-color:#796249; }
.ambience-panel button { font-size:12px;text-decoration:underline;min-height:44px;padding:8px 0;margin-right:18px; }
.ambience-status { font-size:11px;max-width:250px;background:#f8f3e9; }
.ambience-status:empty { display:none; }
body:has(.privacy-banner:not([hidden])) .ambience,body:has(dialog[open]) .ambience,body:has(.welcome-intro:not(.welcome-leaving)) .ambience,.visual-editing .ambience { visibility:hidden; }
@media(max-width:700px) { .ambience { left:12px;bottom:max(12px,env(safe-area-inset-bottom)); }.ambience-toggle { padding:9px 13px; }.footer-legal { padding-bottom:46px; } }
