/* Behind the Crest — full-width imagery and a restrained brand story. */
.crest-page { --crest-ink:#123428; --crest-muted:#58665c; --crest-paper:#f7f4ec; --crest-gold:#ac8744; --crest-line:#12342829; background:var(--crest-paper); }
.crest-page .crest-wrap { width:min(1200px,calc(100% - 96px)); margin-inline:auto; }
.crest-page main { overflow:clip; }
.crest-page main [id] { scroll-margin-top:calc(var(--nav-h) + 30px); }
.crest-page .crest-section { padding:clamp(64px,7.5vw,112px) 0; }
.crest-page .crest-eyebrow { display:block; font:500 .8125rem/1.6 var(--body); letter-spacing:.15em; text-transform:uppercase; color:#80602c; margin:0 0 24px; }
body.crest-page main h2 { color:var(--crest-ink); font-weight:500; font-size:clamp(2.5rem,4.7vw,4.25rem); letter-spacing:-.035em; line-height:1.08; margin:0 0 28px; text-wrap:balance; }
body.crest-page main h3 { color:inherit; font-weight:500; font-size:1.35rem; line-height:1.25; letter-spacing:-.015em; margin:0 0 12px; }

.crest-page main a:focus-visible { outline:2px solid #ad8035; outline-offset:5px; }
.crest-page .crest-next-links svg, .crest-page .crest-next-foot svg, .crest-page .crest-discover svg { width:18px; height:18px; flex:none; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.crest-page .crest-editorial-wrap { width:min(1200px,84%); margin-inline:auto; }

/* A compact crest sits below the title, with the story continuing beneath it. */
.crest-page .crest-cinema { position:relative; isolation:isolate; background:#111d16; color:var(--crest-paper); }
.crest-page .crest-cinema-heading { position:relative; box-sizing:border-box; min-height:650px; min-height:max(580px,calc(100svh - var(--nav-h))); padding:clamp(76px,10vh,128px) 24px 112px; text-align:center; }
.crest-page .crest-cinema-mark { display:block; width:clamp(180px,23vw,300px); max-width:65%; height:auto; margin:32px auto 0; object-fit:contain; }
.crest-page .crest-cinema-kicker { font:500 1rem/1.5 var(--body); letter-spacing:.12em; text-transform:uppercase; margin:0 0 12px; color:var(--crest-paper); }
body.crest-page .crest-cinema-heading h1 { margin:0 auto; font:600 clamp(3.5rem,6vw,6rem)/1.03 var(--heading); letter-spacing:-.035em; color:var(--crest-paper); text-wrap:balance; }
.crest-page .crest-discover { position:absolute; bottom:32px; left:50%; transform:translateX(-50%); display:flex; flex-direction:column; align-items:center; justify-content:center; gap:8px; min-height:52px; padding:6px 12px; color:var(--crest-paper); font-size:.8125rem; line-height:1.5; text-decoration:none; white-space:nowrap; }
.crest-page .crest-discover svg { width:22px; height:22px; transition:transform .2s; }
.crest-page .crest-discover:hover svg { transform:translateY(4px); }
.crest-page .crest-discover:focus-visible { outline-color:#efd39b; }
.crest-page .crest-cinema-story { padding:72px 0 112px; }
.crest-page .crest-story-columns { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:clamp(48px,9vw,132px); align-items:start; }
body.crest-page .crest-story-columns h2 { font:500 clamp(2rem,3.2vw,3rem)/1.16 var(--heading); letter-spacing:-.025em; color:var(--crest-paper); max-width:17ch; margin:0; text-wrap:balance; }
.crest-page .crest-story-copy p { font-size:clamp(1.0625rem,1.45vw,1.25rem); line-height:1.7; font-weight:400; color:#eeeee5; margin:0 0 24px; }
.crest-page .crest-story-copy p:last-child { margin-bottom:0; }

/* Simple, replaceable image spaces. Art direction lives in the review menu. */
.crest-page .crest-editorial-media { padding:clamp(64px,7.5vw,112px) 0 0; }
.crest-page .crest-image-space { position:relative; display:grid; place-items:center; box-sizing:border-box; margin:0; overflow:hidden; background:#d8d8ce; color:#4b5c50; }
.crest-page .crest-image-space-inset { aspect-ratio:16/9; }
.crest-page .crest-space-label { padding:40px 28px 80px; text-align:center; }
.crest-page .crest-space-label > span { display:block; font-size:.8125rem; line-height:1.5; text-transform:uppercase; letter-spacing:.15em; margin-bottom:16px; }
.crest-page .crest-space-label strong { display:block; font:400 clamp(1.5rem,2.4vw,2.25rem)/1.2 var(--heading); letter-spacing:-.02em; }
.crest-page .crest-image-space figcaption { position:absolute; inset:auto 32px 24px; display:flex; justify-content:space-between; gap:24px; font-size:.8125rem; line-height:1.5; }
.crest-page .crest-image-space-full { aspect-ratio:21/9; min-height:400px; max-height:860px; background:#253d32; color:#d8dfd3; }
.crest-page .crest-image-space-full figcaption { inset:auto 8% 32px; }
.crest-page .crest-belief { padding:clamp(80px,10vw,144px) 24px; }
.crest-page .crest-belief-inner { width:min(680px,100%); margin-inline:auto; text-align:center; }
.crest-page .crest-belief-label { margin:0 0 26px; color:#80602c; font-size:.8125rem; line-height:1.5; letter-spacing:.15em; text-transform:uppercase; }
body.crest-page .crest-belief h2 { font:400 clamp(2.25rem,4.2vw,4rem)/1.15 var(--heading); letter-spacing:-.025em; color:var(--crest-ink); text-wrap:balance; margin:0; }
.crest-page .crest-belief-signature { margin:32px 0 0; font-size:.9375rem; line-height:1.5; color:var(--crest-muted); }

/* This closing section is preserved from the owner's selected design. */
.crest-page .crest-next-heading { display:flex; justify-content:space-between; align-items:baseline; gap:32px; margin-bottom:24px; }
.crest-page .crest-next-heading .crest-eyebrow { margin:0; }
body.crest-page .crest-next-heading h2 { font-size:clamp(2rem,3.6vw,3.1rem); margin:0; }
.crest-page .crest-next-links { display:grid; grid-template-columns:1fr 1fr; gap:48px; }
.crest-page .crest-next-links > a { color:var(--crest-ink); padding:32px 0; border-top:1px solid var(--crest-line); border-bottom:1px solid var(--crest-line); text-decoration:none; transition:border-color .2s; }
.crest-page .crest-next-links > a:hover { border-color:#9b7b3c; }
.crest-page .crest-next-links .crest-eyebrow { font-size:.75rem; margin-bottom:18px; }
.crest-page .crest-next-title { display:flex; justify-content:space-between; align-items:center; gap:24px; font:500 clamp(1.6rem,2.5vw,2.2rem)/1.2 var(--heading); letter-spacing:-.02em; }
.crest-page .crest-next-title svg { width:24px; height:24px; transition:transform .2s; }
.crest-page .crest-next-links a:hover svg { transform:translateX(4px); }
.crest-page .crest-next-description { display:block; max-width:40ch; color:var(--crest-muted); font-size:1rem; line-height:1.65; margin-top:20px; }
.crest-page .crest-next-foot { display:flex; justify-content:space-between; flex-wrap:wrap; gap:24px; margin-top:36px; }
.crest-page .crest-next-foot a { display:inline-flex; align-items:center; gap:12px; min-height:44px; color:var(--crest-muted); font-size:.875rem; text-decoration:none; }
.crest-page .crest-next-foot a:hover { color:var(--crest-ink); text-decoration:underline; text-underline-offset:4px; }


@media (max-width:1050px) {
  .crest-page .crest-wrap { width:calc(100% - 64px); }
}
@media (max-width:780px) {
  .crest-page .crest-wrap { width:calc(100% - 40px); }
  .crest-page .crest-section { padding:64px 0; }
  .crest-page .crest-next-links { gap:28px; }
  .crest-page .crest-next-heading { flex-direction:column; gap:16px; }
  .crest-page .crest-editorial-wrap { width:calc(100% - 48px); }
  .crest-page .crest-cinema-heading { min-height:max(520px,calc(90svh - var(--nav-h))); padding-top:72px; }
  .crest-page .crest-cinema-story { padding:48px 0 72px; }
  .crest-page .crest-story-columns { grid-template-columns:1fr; gap:32px; }
  body.crest-page .crest-story-columns h2 { max-width:21ch; font-size:2.125rem; }
  .crest-page .crest-story-copy p { font-size:1.0625rem; line-height:1.7; }
  .crest-page .crest-image-space-inset { aspect-ratio:4/3; min-height:300px; }
  .crest-page .crest-image-space-full { aspect-ratio:4/3; min-height:340px; }
  .crest-page .crest-image-space figcaption { inset:auto 20px 20px; font-size:.75rem; gap:12px; }
  .crest-page .crest-image-space-full figcaption { inset:auto 24px 24px; }
}
@media (max-width:520px) {
  .crest-page .crest-next-links { grid-template-columns:1fr; gap:0; }
  .crest-page .crest-next-links > a + a { border-top:0; }
  .crest-page .crest-next-foot { gap:12px; flex-direction:column; }
  .crest-page .crest-cinema-kicker { font-size:.875rem; }
  body.crest-page .crest-cinema-heading h1 { font-size:clamp(3.25rem,13vw,4rem); }
  .crest-page .crest-space-label strong { max-width:18ch; margin-inline:auto; }
}
@media (prefers-reduced-motion:reduce) {
  .crest-page .crest-discover svg, .crest-page .crest-next-links a, .crest-page .crest-next-title svg { transition:none; }
  .crest-page .crest-discover:hover svg, .crest-page .crest-next-links a:hover svg { transform:none; }
}
