/* A brief entrance on the home page. All lower sections keep their existing styles. */
html.entry-pending::after {
  content:""; position:fixed; inset:0; z-index:9998; background:#101e1b; pointer-events:none;
}
html.entry-active { overflow:hidden; scroll-behavior:auto; }
html.entry-active body { overflow:hidden; }
.site-entry {
  position:fixed; inset:0; z-index:9999; display:grid; place-items:center;
  background:#101e1b; color:#fffaf2; opacity:1; isolation:isolate;
}
.site-entry[hidden] { display:none; }
.site-entry:focus { outline:none; }
.site-entry-art {
  position:absolute; left:50%; top:50%; width:min(72vw,62svh,490px); aspect-ratio:1;
  transform:translate(-50%,-50%); opacity:var(--entry-art-opacity,1);
}
.site-entry-enso {
  display:block; width:100%; height:100%; object-fit:contain;
  transform:scale(var(--entry-art-scale,.96)) rotate(var(--entry-art-turn,-2deg));
  -webkit-mask-image:conic-gradient(from 65deg at 50% 50%,transparent 0deg,transparent calc(var(--entry-clear,360deg) - 7deg),#000 var(--entry-clear,360deg),#000 360deg);
  mask-image:conic-gradient(from 65deg at 50% 50%,transparent 0deg,transparent calc(var(--entry-clear,360deg) - 7deg),#000 var(--entry-clear,360deg),#000 360deg);
}
.site-entry-brand {
  position:absolute; left:50%; top:50%; display:block; width:min(76vw,600px); height:auto;
  filter:brightness(0) invert(1); opacity:var(--entry-brand-opacity,0);
  transform:translate(-50%,-50%) translateY(var(--entry-brand-offset,8px));
}
.site-entry-skip {
  position:absolute; right:max(28px,env(safe-area-inset-right)); bottom:max(28px,env(safe-area-inset-bottom));
  min-height:44px; border:0; border-bottom:1px solid #d0a38366; border-radius:0;
  padding:8px 0; background:transparent; color:#d9c3ad;
  font-family:var(--sans-font,sans-serif); font-size:.72rem; letter-spacing:.03em; cursor:pointer;
}
.site-entry-skip span { margin-left:18px; }
.site-entry-skip:hover { color:#fffaf2; border-color:#d0a383; }
.site-entry-skip:focus-visible { outline:2px solid #d0a383; outline-offset:6px; }
@media(max-width:760px) {
  .site-entry-art { width:min(90vw,58svh,420px); }
  .site-entry-brand { width:84vw; max-width:440px; }
  .site-entry-skip { right:24px; bottom:max(24px,env(safe-area-inset-bottom)); }
  /* The ensō becomes a quiet, static texture; it takes no vertical space. */
  .home-v15 .coherence-hero { position:relative; isolation:isolate; }
  .home-v15 .coherence-hero::before {
    content:""; position:absolute; z-index:-1; pointer-events:none;
    width:min(125vw,560px); aspect-ratio:1; right:-22%; top:110px;
    background:url('assets/coherencia-sculpture.webp') center / contain no-repeat;
    opacity:.13;
    -webkit-mask-image:linear-gradient(90deg,transparent,#000 48%,#000);
    mask-image:linear-gradient(90deg,transparent,#000 48%,#000);
  }
  .home-v15 .coherence-sculpture { display:none; }
  .home-v15 .coherence-hero-foot { position:relative; }
}
@media(prefers-reduced-motion:reduce) {
  html.entry-pending::after,.site-entry { display:none!important; }
}
/* The noninteractive heading receives reading focus after the entrance. */
.home-v15 #hero-title[tabindex="-1"]:focus { outline:none; }
