/* New homepage draft — scoped to /new-homepage. */
#new-homepage-draft {
	background: #fff;
	color: #1d201d;
}

#new-homepage-draft { margin-top: 0; }

.slh-draft-shell { overflow: hidden; background: #f2f0eb; }

.slh-hero { position: relative; min-height: min(780px, calc(100vh - 145px)); margin-top: 0; display: flex; align-items: flex-end; color: #fff; overflow: hidden; }
.slh-hero__slides, .slh-hero__slide, .slh-hero__slide img, .slh-film > img, .slh-tile > img { display: block; width: 100%; height: 100%; }
.slh-hero__slides { position: absolute; inset: 0; z-index: 0; overflow: hidden; }
.slh-hero__slide { position: absolute; inset: 0; opacity: 0; object-fit: cover; transition: opacity 1.2s ease; }
.slh-hero__slide.is-active { opacity: 1; }
.slh-hero__slide img, .slh-film > img, .slh-tile > img { object-fit: cover; }
.slh-hero__veil, .slh-film__veil, .slh-tile__shade { position: absolute; inset: 0; z-index: 1; background: linear-gradient(90deg, rgba(9,14,12,.76), rgba(9,14,12,.12) 65%, rgba(9,14,12,.18)); }
.slh-hero__content { position: relative; z-index: 2; width: min(980px, calc(100vw - 80px)); padding: 100px 0 105px max(35px, calc((100vw - 1320px) / 2)); }
.slh-eyebrow, .slh-section-label { margin: 0 0 22px; color: #a58248; font: 11px/1.4 "Roboto", sans-serif; font-weight: 500; letter-spacing: .19em; text-transform: uppercase; }
.slh-eyebrow--light { color: #e3c88e; }
.slh-hero h1, .slh-film h2, .slh-cta h2, .slh-intro h2, .slh-work h2, .slh-process h2 { color: inherit; font-family: "Prata", serif; font-weight: 400; letter-spacing: -.045em; }
.slh-hero h1 { max-width: 900px; margin: 0 0 30px; font-size: clamp(52px, 6vw, 92px); line-height: 1.12; }
.slh-hero h1 em, .slh-film h2 em, .slh-cta h2 em, .slh-intro h2 em, .slh-work h2 em, .slh-process h2 em { color: #cba96a; font-style: italic; }
.slh-hero__lede { max-width: 590px; margin-bottom: 33px; color: rgba(255,255,255,.88); font-size: 18px; line-height: 1.7; }
.slh-hero__actions { display: flex; align-items: center; flex-wrap: nowrap; gap: 20px; }
.slh-hero__actions > a { white-space: nowrap; }
.slh-button { display: inline-flex; align-items: center; gap: 30px; padding: 15px 20px; background: #a58248; color: #fff; font-size: 12px; font-weight: 500; letter-spacing: .12em; text-transform: uppercase; transition: background .25s, color .25s; }
.slh-button:hover, .slh-button:focus { background: #1d201d; color: #fff; text-decoration: none; }
.slh-button--light { background: #fff; color: #1d201d; }
.slh-button--light:hover, .slh-button--light:focus { background: #cba96a; color: #1d201d; }
.slh-text-link { display: inline-flex; align-items: center; gap: 22px; color: #1d201d; font-size: 12px; font-weight: 500; letter-spacing: .12em; text-transform: uppercase; }
.slh-text-link:hover, .slh-text-link:focus { color: #a58248; text-decoration: none; }
.slh-text-link--light { color: #fff; }
.slh-hero__meta { position: absolute; right: 35px; bottom: 35px; z-index: 2; display: flex; align-items: center; gap: 14px; color: rgba(255,255,255,.72); font-size: 10px; letter-spacing: .15em; text-transform: uppercase; transform: rotate(-90deg) translateX(100%); transform-origin: right bottom; }
.slh-hero__line { display: inline-block; width: 55px; height: 1px; background: #cba96a; }

.slh-section { max-width: 1320px; margin: 0 auto; padding: 130px 35px; }
.slh-intro { display: grid; grid-template-columns: 1fr minmax(300px, 2fr) minmax(220px, 1fr); gap: 65px; }
.slh-intro__copy h2, .slh-work h2, .slh-process h2 { margin: 0 0 25px; color: #1d201d; font-size: clamp(40px, 5vw, 68px); line-height: 1.08; }
.slh-intro__title-line { white-space: nowrap; }
.slh-intro__copy p { max-width: 590px; margin-bottom: 28px; color: #5d625c; font-size: 18px; line-height: 1.75; }
.slh-intro__aside { align-self: end; color: #5d625c; font-size: 15px; line-height: 1.7; }
.slh-rule { width: 65px; height: 2px; margin-bottom: 22px; background: #a58248; }

.slh-work { padding-top: 40px; }
.slh-work__heading { display: grid; grid-template-columns: 1fr minmax(300px, 1.5fr) 1fr; gap: 65px; align-items: end; margin-bottom: 58px; }
.slh-work__heading h2 { margin-bottom: 0; }
.slh-work__heading p { max-width: 290px; margin: 0 0 5px; color: #5d625c; line-height: 1.7; }
.slh-tile-grid { display: grid; grid-template-columns: repeat(3, 1fr); grid-auto-rows: 280px; gap: 18px; }
.slh-tile { position: relative; min-height: 280px; overflow: hidden; color: #fff; background: #353b36; }
.slh-tile img { position: absolute; inset: 0; transition: transform .5s ease; }
.slh-tile:hover img { transform: scale(1.045); }
.slh-tile__shade { background: linear-gradient(0deg, rgba(8,12,10,.95) 0%, rgba(8,12,10,.78) 43%, rgba(8,12,10,.28) 76%, rgba(8,12,10,0) 100%); }
.slh-tile__copy { position: absolute; right: 28px; bottom: 24px; left: 28px; display: flex; flex-direction: column; align-items: flex-start; }
.slh-tile__copy small { margin-bottom: 8px; color: #e3c88e; font-size: 10px; letter-spacing: .14em; text-transform: uppercase; }
.slh-tile__copy strong { max-width: 300px; color: #fff; font: 25px/1.2 "Prata", serif; font-weight: 400; text-shadow: 0 2px 12px rgba(0,0,0,.58); }
.slh-tile__copy b { margin-top: 14px; color: #fff; font-size: 10px; font-weight: 500; letter-spacing: .13em; text-shadow: 0 2px 10px rgba(0,0,0,.58); text-transform: uppercase; }
.slh-tile--wide { grid-column: span 2; }
.slh-tile--tall { grid-row: span 2; }
.slh-tile--dark { background: #27302b; }
.slh-tile--dark:before { position: absolute; top: 30px; right: 30px; width: 70px; height: 70px; border: 1px solid rgba(203,169,106,.65); border-radius: 50%; content: ""; }
.slh-tile--dark .slh-tile__number { position: absolute; top: 51px; right: 55px; color: #cba96a; font: 18px "Prata", serif; }
.slh-tile--dark .slh-tile__copy { bottom: 28px; }
.slh-tile--sunset { min-height: 320px; }

.slh-film { position: relative; min-height: 650px; display: flex; align-items: center; overflow: hidden; color: #fff; }
.slh-film > img { position: absolute; inset: 0; }
.slh-film__veil { background: linear-gradient(90deg, rgba(10,13,12,.91), rgba(10,13,12,.48) 60%, rgba(10,13,12,.25)); }
.slh-film__content { position: relative; z-index: 1; width: min(520px, 90%); margin-left: max(35px, calc((100vw - 1320px) / 2)); }
.slh-film h2 { margin: 0 0 25px; font-size: clamp(50px, 7vw, 92px); line-height: 1.03; }
.slh-film__content > p:not(.slh-eyebrow) { max-width: 440px; color: rgba(255,255,255,.8); font-size: 17px; line-height: 1.7; }
.slh-film__note { display: flex; align-items: center; gap: 17px; margin-top: 35px; color: #e3c88e; font-size: 10px; letter-spacing: .1em; line-height: 1.5; text-transform: uppercase; }
.slh-play { display: inline-flex; align-items: center; justify-content: center; width: 42px; height: 42px; border: 1px solid #cba96a; border-radius: 50%; font-size: 11px; }

.slh-process { display: grid; grid-template-columns: 1fr 2fr; gap: 90px; }
.slh-process__steps { display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px; padding-top: 18px; }
.slh-step { border-top: 1px solid #cfcac0; padding-top: 18px; }
.slh-step > span { color: #a58248; font-size: 11px; letter-spacing: .12em; }
.slh-step h3 { margin: 28px 0 13px; color: #1d201d; font-size: 23px; line-height: 1.3; }
.slh-step p { color: #5d625c; font-size: 14px; line-height: 1.7; }

.slh-cta { padding: 135px 35px; background: #cba96a; color: #1d201d; text-align: center; }
.slh-cta__inner { max-width: 700px; margin: 0 auto; }
.slh-cta .slh-eyebrow { color: #594b32; }
.slh-cta h2 { margin: 0 0 35px; color: #1d201d; font-size: clamp(48px, 7vw, 88px); line-height: 1.04; }
.slh-cta h2 em { color: #fff; }
.slh-cta .slh-button { background: #1d201d; }
.slh-cta .slh-button:hover, .slh-cta .slh-button:focus { background: #fff; color: #1d201d; }

@media (max-width: 991px) {
	.slh-intro, .slh-work__heading, .slh-process { grid-template-columns: 1fr; gap: 28px; }
	.slh-intro__aside { max-width: 520px; }
	.slh-work__heading p { max-width: 520px; }
	.slh-process__steps { padding-top: 0; }
}

@media (min-width: 768px) {
	.slh-hero h1 em { white-space: nowrap; }
}

@media (max-width: 767px) {
	.slh-intro__title-line { white-space: normal; }
	.slh-hero { min-height: 620px; }
	.slh-hero__content { padding: 80px 25px 75px; }
	.slh-hero__meta { right: 18px; bottom: 20px; }
	.slh-hero__actions { flex-wrap: wrap; }
	.slh-section { padding: 80px 25px; }
	.slh-tile-grid { display: grid; grid-template-columns: 1fr; grid-auto-rows: 300px; }
	.slh-tile--wide, .slh-tile--tall { grid-column: auto; grid-row: auto; }
	.slh-film { min-height: 590px; }
	.slh-film__content { margin-left: 25px; }
	.slh-process__steps { grid-template-columns: 1fr; gap: 35px; }
	.slh-cta { padding: 90px 25px; }
}
