/* Homepage only: one canonical layout, with explicit tablet/mobile overrides. */
.cailev-home { max-width:none; margin-inline:auto; padding:var(--cailev-page-entry-space,1.25rem) var(--page-gutter,24px) 2rem; }
.cailev-home .cailev-home-intro { display:block; padding-block:0 2rem; scroll-margin-top:6rem; }
.cailev-home-intro h1 { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.cailev-home-intro p { max-width:85ch; margin:0 auto; text-align:center; color:#d1c6bd; font-size:clamp(1rem,1.35vw,1.18rem); line-height:1.75; }
.cailev-home-updates { display:grid; grid-template-columns:minmax(0,1.65fr) minmax(280px,1fr); gap:clamp(1.5rem,3vw,3rem); align-items:stretch; color:#eee4dc; }
.cailev-home-updates > :only-child { grid-column:1 / -1; }
.cailev-home-music { display:flex; min-width:0; padding:0; border:0; background:none; }
.cailev-home-updates h2 { font:600 .72rem/1.4 var(--font-body,sans-serif); letter-spacing:.12em; text-transform:uppercase; color:#c3b2a6; margin:0 0 1rem; }
.cailev-home-releases { width:100%; display:grid; grid-template-columns:minmax(0,1fr); gap:1.25rem; }
.cailev-home-release { position:relative; isolation:isolate; min-width:0; min-height:clamp(420px,50vw,960px); }
.cailev-home-cover { position:absolute; inset:0; display:block; background:#0d0d0d; overflow:hidden; }
.cailev-home-cover img { display:block; width:100%; height:100%; object-fit:cover; object-position:center; }
.cailev-home-updates h3 { font:400 clamp(1.4rem,2.4vw,2.1rem)/1.2 var(--font-display,Georgia,serif); margin:.8rem 0 .5rem; overflow-wrap:anywhere; }
.cailev-home-release h3 { font-size:clamp(1.8rem,3vw,2.7rem); }
.cailev-home-updates p { font-size:.95rem; line-height:1.6; margin:.4rem 0 0; color:#d1c6bd; overflow-wrap:anywhere; }
.cailev-home-music-invitation a { position:relative; display:block; overflow:hidden; border-radius:3px; background:#141115; }
.cailev-home-music-invitation img { display:block; width:100%; aspect-ratio:16/11; height:auto; object-fit:cover; object-position:70% center; }
.cailev-home-music-invitation a > span { position:absolute; inset:auto 0 0; padding:3rem 1.5rem 1.5rem; background:linear-gradient(transparent,#100d13ee); color:#f0e5d8; font:400 clamp(1.5rem,2.8vw,2.4rem)/1.2 var(--font-display,Georgia,serif); }
.cailev-home-editorial { min-width:0; display:grid; grid-template-columns:1fr; align-content:start; gap:1rem; }
.cailev-home-editorial h2 { margin-bottom:.4rem; }
.cailev-home-editorial .cailev-home-story { padding:0; margin:0; border:0; background:none; }
.cailev-home-story h3, .cailev-home-word h3 { font-size:clamp(1.35rem,2vw,1.8rem); }
.cailev-home-updates .cailev-home-date { color:#b7a7b1; font-size:.8rem; }
.cailev-home-tile { display:grid; position:relative; isolation:isolate; min-height:220px; height:100%; background:#19151e; }
.cailev-home-tile-image { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:-2; }
.cailev-home-tile::before { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(110deg,rgba(10,9,14,.92),rgba(10,9,14,.65)); }
.cailev-home-tile-copy { align-self:end; padding:clamp(1.2rem,2vw,2rem); }
.cailev-home-editorial .cailev-home-word { padding:0; margin:0; background:none; border:0; }
.cailev-home-updates a { color:inherit; text-decoration:none; text-underline-offset:.2em; }
.cailev-home-updates a:hover { color:#f0bcbc; text-decoration:underline; }
.cailev-home-updates .cailev-home-tile:hover { text-decoration:none; color:#fff; }
.cailev-home-tile:hover h3 { text-decoration:underline; text-underline-offset:.15em; }
.cailev-home a:focus-visible,.cailev-home-updates a:focus-visible { outline:2px solid #e1bd91; outline-offset:5px; }
/* Compatibility for saved pages: never show the retired duplicate menu. */
.cailev-home-links { display:none; }
@media(min-width:701px) and (max-width:1000px) { .cailev-home-updates { grid-template-columns:minmax(0,1.25fr) minmax(260px,1fr); gap:1.5rem; } }
@media(max-width:700px) { .cailev-home-updates { grid-template-columns:1fr; gap:0; } .cailev-home-editorial { margin-top:1.5rem; } }

.cailev-about-story { padding-block:clamp(2.5rem,5vw,5rem) 1rem; border-top:1px solid #57444d; margin-top:3rem; }
.cailev-about-story h2 { font:400 clamp(2rem,4vw,4rem)/1.15 var(--font-display,Georgia,serif); margin:0 0 2rem; max-width:22ch; }
.cailev-about-columns { display:grid; grid-template-columns:1fr 1fr; gap:clamp(1.5rem,5vw,6rem); }
.cailev-about-story h3 { font:400 clamp(1.4rem,2vw,2rem)/1.3 var(--font-display,Georgia,serif); }
.cailev-about-story p { max-width:62ch; line-height:1.8; color:#d1c6bd; }
.cailev-about-story .cailev-about-coda { margin-top:2rem; }
.cailev-about-backdrop { position:relative; margin-block:2rem; overflow:hidden; background:#141115; }
.cailev-about-backdrop .wp-block-cover__inner-container { max-width:65ch; padding:2rem; }
.cailev-about-backdrop .wp-block-cover__inner-container h2 { font:400 clamp(2rem,4vw,4rem)/1.15 var(--font-display,Georgia,serif); }
.cailev-about-video-toggle { position:absolute; right:1rem; bottom:1rem; z-index:3; background:#111; color:#fff; border:1px solid #c3b2a6; border-radius:3px; padding:.7rem 1rem; cursor:pointer; }
.cailev-about-video-toggle:focus-visible { outline:2px solid #e1bd91; outline-offset:4px; }
@media(max-width:700px) { .cailev-about-columns { grid-template-columns:1fr; gap:1rem; } }

.cailev-about-video-toggle[hidden] { display:none; }

.cailev-home-date { display:flex; align-items:center; flex-wrap:wrap; gap:.65rem; }
.cailev-home-date .cailev-post-language { display:inline-flex; }
.cailev-home-date svg { width:24px; height:16px; }


.cailev-home-release > header h3 { margin: 0; }
.cailev-home-release-date { margin: .4rem 0 0; color: var(--muted); font-size: .85rem; }
.cailev-home-release > header {
  position:relative; z-index:1; text-align:center; padding:clamp(1.5rem,3vw,3rem) 1.5rem 4rem;
  color:#fff3e6; background:linear-gradient(#08060aee, #08060acc 58%, transparent);
  pointer-events:none; text-shadow:0 2px 8px #000;
}
.cailev-home-release > header a { pointer-events:auto; }
.cailev-home-release > header .cailev-home-release-date { color:#f1e8df; }
@media(max-width:700px) {
 .cailev-home-release { min-height:0; aspect-ratio:1; }
 .cailev-home-release > header { padding:1.25rem 1rem 3rem; }
}
.cailev-home-release > header h3 {
  font-family: var(--font-display); font-size: clamp(2rem, 3.2vw, 3.4rem);
  font-weight: 400; line-height: 1.12; text-wrap: balance;
}