/* Clumber Hero Slider — crossfade slider with object artwork and Ken Burns. */
.cl-hero { position: relative; width: 100%; overflow: hidden; background: var(--cl-green-950, #06190e); min-height: clamp(460px, 52vw, 720px); isolation: isolate; color: #fff; }
.cl-hero__stage { position: relative; width: 100%; min-height: clamp(460px, 52vw, 720px); display: grid; }
.cl-hero__stage > .cl-hero__slide { grid-area: 1 / 1; }
.cl-hero__slide { position: absolute; inset: 0; opacity: 0; visibility: hidden; transition: opacity 1100ms ease; display: flex; align-items: center; }
.cl-hero__slide.is-active { position: relative; opacity: 1; visibility: visible; z-index: 1; min-height: inherit; }
.cl-hero__bg { position: absolute; inset: 0; background-size: cover; background-position: center right; transform-origin: 60% 50%; }
.cl-hero__slide.is-blur .cl-hero__bg { filter: blur(28px) brightness(0.45) saturate(1.1); transform: scale(1.15); }
.cl-hero--kenburns .cl-hero__slide:not(.is-blur).is-active .cl-hero__bg { animation: cl-kenburns 14s ease-out forwards; }
@keyframes cl-kenburns { from { transform: scale(1); } to { transform: scale(1.08); } }
.cl-hero__scrim { position: absolute; inset: 0; pointer-events: none; background:
	linear-gradient(90deg, rgba(6,25,14,.92) 0%, rgba(6,25,14,.78) 32%, rgba(6,25,14,.35) 60%, rgba(6,25,14,.15) 100%),
	linear-gradient(180deg, rgba(6,25,14,.35) 0%, rgba(6,25,14,0) 40%, rgba(6,25,14,.55) 100%); }
.cl-hero__inner { position: relative; z-index: 2; width: 100%; max-width: var(--cl-wrap, 1440px); margin: 0 auto; padding: clamp(2rem, 5vw, 4.5rem) var(--cl-gut, clamp(1.25rem, 3.5vw, 3.5rem)); display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr); align-items: center; gap: 2rem; min-height: inherit; }
.cl-hero__slide:not(.has-art) .cl-hero__inner { grid-template-columns: minmax(0, 1fr); }
.cl-hero__copy { max-width: 40rem; }
.cl-hero__eyebrow { margin: 0 0 1rem; font-family: var(--cl-sans, "Jost", system-ui, sans-serif); font-size: .6875rem; letter-spacing: .26em; text-transform: uppercase; color: var(--cl-gold, #c9a45c); display: inline-flex; align-items: center; gap: .8rem; }
.cl-hero__eyebrow::before { content: ""; width: 2.4rem; height: 1px; background: var(--cl-gold, #c9a45c); }
.cl-hero__title { margin: 0 0 1rem; max-width: 18ch; font-family: var(--cl-heading, "Cormorant Garamond", Georgia, serif); font-weight: 500; font-size: clamp(2.3rem, 5.2vw, 4.4rem); line-height: 1.04; color: #fff; text-wrap: balance; }
.cl-hero__meta { margin: 0 0 1.2rem; font-family: var(--cl-serif, "EB Garamond", Georgia, serif); font-size: clamp(1.05rem, 1.4vw, 1.25rem); color: rgba(255,255,255,.92); max-width: 34rem; }
.cl-hero__count { margin: 0 0 1.4rem; font-family: var(--cl-sans, "Jost", system-ui, sans-serif); font-size: .6875rem; letter-spacing: .2em; text-transform: uppercase; color: var(--cl-gold-300, #e0c68a); }
.cl-hero__count:empty { display: none; }
.cl-hero__actions { display: flex; flex-wrap: wrap; gap: .75rem; }
.cl-hero__btn { display: inline-block; padding: 1rem 2.2rem; border: 1px solid rgba(255,255,255,.55); font-family: var(--cl-sans, "Jost", system-ui, sans-serif); font-size: .6875rem; font-weight: 500; letter-spacing: .2em; text-transform: uppercase; color: #fff; background: transparent; transition: background-color 220ms ease, color 220ms ease, border-color 220ms ease; }
.cl-hero__btn:hover { background: #fff; border-color: #fff; color: var(--cl-green-950, #06190e); }
.cl-hero__btn--gold { background: var(--cl-gold, #c9a45c); border-color: var(--cl-gold, #c9a45c); color: var(--cl-green-950, #06190e); }
.cl-hero__btn--gold:hover { background: var(--cl-gold-300, #e0c68a); border-color: var(--cl-gold-300, #e0c68a); }
.cl-hero__note { margin: 1.2rem 0 0; font-size: .95rem; color: rgba(255,255,255,.62); font-style: italic; }
.cl-hero__art { margin: 0; display: flex; align-items: center; justify-content: center; height: 100%; max-height: clamp(320px, 42vw, 560px); }
.cl-hero__art img { max-width: 100%; max-height: 100%; width: auto; height: auto; object-fit: contain; filter: drop-shadow(0 30px 50px rgba(0,0,0,.55)); transform: translateY(12px); opacity: 0; transition: transform 1200ms cubic-bezier(.2,.7,.2,1) 200ms, opacity 900ms ease 200ms; }
.cl-hero__slide.is-active .cl-hero__art img { transform: translateY(0); opacity: 1; }
.cl-hero__side { position: absolute; top: 50%; right: clamp(1.25rem, 3vw, 3rem); transform: translateY(-50%); z-index: 3; display: flex; flex-direction: column; gap: .55em; padding-left: 1.75rem; border-left: 1px solid rgba(201,164,92,.5); font-family: var(--cl-sans, "Jost", system-ui, sans-serif); font-size: .625rem; letter-spacing: .24em; text-transform: uppercase; color: rgba(255,255,255,.6); }
.cl-hero__nav { position: absolute; left: var(--cl-gut, clamp(1.25rem, 3.5vw, 3.5rem)); bottom: clamp(1.25rem, 3vw, 2.5rem); z-index: 3; display: flex; gap: .75rem; }
.cl-hero__dot { display: inline-flex; align-items: center; gap: .75rem; padding: .4rem 0; border: 0; background: none; cursor: pointer; font-family: var(--cl-sans, "Jost", system-ui, sans-serif); font-size: .6875rem; letter-spacing: .14em; color: rgba(255,255,255,.5); }
.cl-hero__dot.is-active { color: var(--cl-gold, #c9a45c); }
.cl-hero__rule { display: block; width: 0; height: 1px; background: currentColor; transition: width 350ms ease; }
.cl-hero__dot.is-active .cl-hero__rule { width: clamp(28px, 4vw, 56px); }
.cl-hero__arrow { position: absolute; right: clamp(1.25rem, 3vw, 3rem); bottom: clamp(1.25rem, 3vw, 2.5rem); z-index: 3; width: 44px; height: 44px; border: 1px solid rgba(255,255,255,.35); background: rgba(6,25,14,.35); color: #fff; font-size: 1.1rem; cursor: pointer; transition: background-color 200ms ease, border-color 200ms ease; }
.cl-hero__arrow--prev { right: calc(clamp(1.25rem, 3vw, 3rem) + 52px); }
.cl-hero__arrow:hover { background: var(--cl-gold, #c9a45c); border-color: var(--cl-gold, #c9a45c); color: var(--cl-green-950, #06190e); }
.cl-hero__side + .cl-hero__arrow, .cl-hero__side ~ .cl-hero__arrow { bottom: clamp(1.25rem, 3vw, 2.5rem); }
@media (max-width: 1040px) { .cl-hero__side { display: none; } }
@media (max-width: 860px) {
	.cl-hero, .cl-hero__stage, .cl-hero__slide.is-active { min-height: 520px; }
	.cl-hero__inner { grid-template-columns: 1fr; align-content: end; padding-bottom: 6.5rem; gap: 1rem; }
	.cl-hero__actions { flex-direction: column; align-items: stretch; }
	.cl-hero__btn { text-align: center; }
	.cl-hero__nav { left: 50%; transform: translateX(-50%); bottom: 1.25rem; }
	.cl-hero__art { max-height: 200px; justify-content: flex-start; order: -1; }
	.cl-hero__title { max-width: 100%; font-size: clamp(2rem, 8vw, 2.8rem); }
	.cl-hero__scrim { background: linear-gradient(180deg, rgba(6,25,14,.45) 0%, rgba(6,25,14,.55) 40%, rgba(6,25,14,.9) 100%); }
	.cl-hero__arrow { display: none; }
	.cl-hero__note { display: none; }
}
@media (prefers-reduced-motion: reduce) { .cl-hero__slide, .cl-hero__rule, .cl-hero__art img { transition: none; } .cl-hero--kenburns .cl-hero__slide.is-active .cl-hero__bg { animation: none; } }
