.cl-home {
  --cl-paper: #edece5; --cl-ink: #171917; --cl-lime: #d9ed50;
  --cl-muted: #62655e; --cl-line: rgba(23,25,23,.16);
  background: var(--cl-paper); color: var(--cl-ink); border-top: 1px solid var(--cl-line);
}
body.compact-page .section.cl-home { padding: 0; scroll-margin-top: 5.5rem; }
.cl-home__inner { width: min(100% - 7vw, 88rem); margin: 0 auto; padding: clamp(3.75rem,6vw,6.5rem) 0 clamp(2.5rem,4vw,4rem); }
.cl-home__grid { display:grid; grid-template-columns:minmax(0,1.06fr) minmax(18rem,.94fr); gap:clamp(2rem,5vw,6rem); align-items:end; }
.cl-home__intro .eyebrow { margin:0 0 1.2rem; color:var(--cl-ink); font-size:.68rem; letter-spacing:.24em; }
.cl-home__intro h2 { max-width:12ch; margin:0; color:var(--cl-ink); font-size:clamp(3rem,5.4vw,5.75rem); font-weight:300; line-height:.98; letter-spacing:-.055em; }
.cl-home__pitch { padding-bottom:.15rem; }
.cl-home__intro-copy { max-width:32ch; margin:0; font-size:clamp(1.15rem,1.7vw,1.65rem); font-weight:350; line-height:1.35; letter-spacing:-.025em; }
.cl-home__note { margin:.6rem 0 1.4rem; color:var(--cl-muted); font-size:.77rem; letter-spacing:.1em; line-height:1.4; }
.cl-home__library-cta { display:inline-flex; min-height:3.25rem; align-items:center; padding:.85rem 1.25rem; background:var(--cl-lime); color:var(--cl-ink); font-size:1rem; font-weight:450; letter-spacing:-.015em; text-decoration:none; transition:background-color 160ms ease,color 160ms ease; }
.cl-home__library-cta:hover,.cl-home__library-cta:focus-visible { background:var(--cl-ink); color:var(--cl-paper); }
.cl-home__featured { grid-column:1 / -1; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(1rem,1.8vw,1.5rem); margin-top:0; }
.cl-home__card { min-width:0; }
.cl-home__media { position:relative; overflow:hidden; aspect-ratio:16 / 9; background:#b6b6b2; }
.cl-home__media video,.cl-home__media img { display:block; width:100%; height:100%; object-fit:cover; }
.cl-home__media video { background:#b6b6b2; }
.cl-home__review-badge,.cl-home__pending { position:absolute; top:.7rem; left:.7rem; padding:.3rem .5rem; color:var(--cl-ink); background:var(--cl-lime); font-size:.68rem; letter-spacing:.04em; }
.cl-home__pending { inset:0; display:grid; place-items:center; padding:0; background:#b6b6b2; color:var(--cl-muted); letter-spacing:.1em; text-transform:uppercase; }
.cl-home__card-body { padding-top:.8rem; }
.cl-home__card-heading { display:flex; align-items:baseline; gap:.45rem; }
.cl-home__card-heading h3,.cl-home__shot-number { margin:0; color:var(--cl-ink); }
.cl-home__card-heading h3 { font-size:clamp(1.1rem,1.5vw,1.38rem); font-weight:400; letter-spacing:-.025em; line-height:1.2; }
.cl-home__shot-number { font-size:.85rem; font-weight:400; white-space:nowrap; flex-shrink:0; }
.cl-home__description { max-width:32ch; margin:.6rem 0 0; color:var(--cl-muted); font-size:.86rem; line-height:1.4; }
.cl-home__meta { margin:.45rem 0 0; color:var(--cl-muted); font-size:.76rem; letter-spacing:.03em; }
.cl-home__downloads { display:flex; flex-wrap:wrap; gap:.65rem 1rem; margin-top:.8rem; padding-top:.7rem; border-top:1px solid var(--cl-line); }
.cl-home__download,.cl-home__detail { color:var(--cl-ink); font-size:.84rem; text-underline-offset:.25em; }
.cl-home__download { font-weight:600; }
.cl-home__download:hover,.cl-home__download:focus-visible,.cl-home__detail:hover,.cl-home__detail:focus-visible { color:#4e6100; }
.cl-home__unavailable { color:var(--cl-muted); font-size:.8rem; }
.cl-home__detail { display:inline-block; margin-top:.8rem; }
.cl-home__bridge { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:baseline; gap:1.5rem; margin-top:clamp(2.5rem,4vw,4rem); padding:1.5rem 0; border-top:1px solid var(--cl-line); border-bottom:1px solid var(--cl-line); }
.cl-home__bridge p { margin:0; font-size:clamp(1.2rem,1.9vw,1.8rem); font-weight:350; line-height:1.25; letter-spacing:-.035em; }
.cl-home__bridge a { color:var(--cl-ink); font-size:.95rem; font-weight:400; text-underline-offset:.35em; white-space:nowrap; }
.cl-home__fallback { display:none; grid-column:1 / -1; margin:0; color:var(--cl-muted); font-size:.95rem; }
.cl-home :where(a,button):focus-visible { outline:2px solid var(--cl-ink); outline-offset:4px; }
@media (max-width:700px) { .cl-home__inner { width:88%; padding:4rem 0 2.5rem; } .cl-home__grid { grid-template-columns:1fr; gap:1.65rem; } .cl-home__intro h2 { max-width:12ch; font-size:clamp(2.75rem,12.5vw,4rem); } .cl-home__featured { grid-template-columns:1fr; margin-top:0; } .cl-home__card + .cl-home__card { margin-top:1.5rem; } .cl-home__bridge { grid-template-columns:1fr; gap:1rem; margin-top:3rem; } .cl-home__bridge a { white-space:normal; } }
@media (prefers-reduced-motion:reduce) { .cl-home__library-cta { transition:none; } }
.no-js .cl-home__fallback { display:block; }
