/* A decorative layer behind the existing portfolio, never a pointer target. */
.ambient-assets {
    position: fixed;
    inset: 0;
    z-index: 0;
    pointer-events: none;
    overflow: hidden;
    opacity: 0;
    transition: opacity 1.2s ease;
    contain: strict;
}
.ambient-assets.is-ready[data-enabled="true"] { opacity: 1; }
.ambient-assets[data-enabled="false"] { visibility: hidden; }
.ambient-assets__canvas {
    display: block;
    width: 100%;
    height: 100%;
    opacity: .23;
    pointer-events: none;
    transition: opacity .6s ease;
    /* The artwork dissolves gently into the original warm page background. */
    -webkit-mask-image: linear-gradient(to bottom, transparent 0%, #000 14%, #000 84%, transparent 100%);
    mask-image: linear-gradient(to bottom, transparent 0%, #000 14%, #000 84%, transparent 100%);
}
.ambient-assets[data-engaged="true"] .ambient-assets__canvas { opacity: .29; }
.ambient-assets[data-morphing="true"] .ambient-assets__canvas { opacity: .34; }
.ambient-assets__veil {
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, #faf9f755 0%, #faf9f722 36%, #faf9f700 78%);
}
.ambient-assets__media { display: none; }
.has-ambient-assets [data-logo-morph], .tl-entry.pub [data-logo-morph] { cursor: pointer; }
[data-logo-morph]:focus-visible { outline: 2px solid #8b4049; outline-offset: 4px; }
.ambient-motion-toggle {
    margin-top: 12px;
    border: 0;
    border-bottom: 1px solid #d8d4ce;
    padding: 2px 0;
    background: none;
    color: var(--text-sub);
    font: inherit;
    font-size: .8rem;
    cursor: pointer;
}
.ambient-motion-toggle:focus-visible { outline: 2px solid #8b4049; outline-offset: 4px; }
.ambient-motion-toggle[hidden] { display: none; }
@media (max-width: 700px) {
    .ambient-assets__canvas { opacity: .21; }
    .ambient-assets[data-engaged="true"] .ambient-assets__canvas { opacity: .25; }
    .ambient-assets[data-morphing="true"] .ambient-assets__canvas { opacity: .42; }
    .ambient-assets__veil { background: linear-gradient(90deg, #faf9f744, #faf9f700); }
}
@media (prefers-reduced-motion: reduce) {
    .ambient-assets, .ambient-assets__canvas { transition: none; }
}
