.hero{min-height:clamp(650px,86vh,900px)}
.hero,.hero-slides{background-color:var(--brown-deep)}
.hero-slide{backface-visibility:hidden;transform:translateZ(0)}
.hero{isolation:isolate}
.trustbar{position:relative;z-index:2;margin-top:-1px}
.hero h1{font-size:clamp(2.45rem,5.4vw,4.8rem);max-width:900px}
section{padding:112px 0}
.section-head h2{font-size:clamp(1.9rem,3.5vw,2.8rem);line-height:1.14}
.content-block .cb-inner{gap:clamp(56px,8vw,120px)}
.content-block .cb-image img{border-radius:6px}
.gallery-grid a{border-radius:6px;overflow:hidden}
body{transform:none!important}
body{animation:pageEnterClean .55s ease forwards!important}
body.is-leaving{transform:none!important;animation:pageLeaveClean .28s ease forwards!important}
@keyframes pageEnterClean{from{opacity:0}to{opacity:1}}
@keyframes pageLeaveClean{from{opacity:1}to{opacity:0}}
.cookie-banner{bottom:0;max-height:90vh;overflow-y:auto;padding-bottom:calc(18px + env(safe-area-inset-bottom))}
.cookie-inner{width:100%}
#map-enable{max-width:100%;white-space:normal;line-height:1.35;overflow-wrap:anywhere}
.section-head::after{content:"";display:block;width:48px;height:2px;background:var(--gold);margin-top:22px}
.section-head.reveal::after{transform:scaleX(0);transform-origin:left;transition:transform .7s ease .25s}
.section-head.reveal.in-view::after{transform:scaleX(1)}
@media(max-width:1100px){section{padding:64px 0}}
@media(max-width:820px){section{padding:52px 0}}
@media(max-width:700px){
	html{width:100%;overflow-x:hidden}
	body{width:100%;min-width:0}
	.wrap,.hero-inner,.pagehero-inner,.content-block .cb-inner{width:100%;padding-left:18px;padding-right:18px}
	.content-block .cb-inner{gap:34px}
	.content-block .cb-image{width:100%}
	.hero{height:clamp(500px,64vh,540px);min-height:0;padding-top:88px;padding-bottom:28px}
	.hero-slide{
		background-size:cover!important;
		background-position:center!important;
		transition:opacity .9s ease!important;
		animation:heroKenBurns 8s ease-out forwards!important;
	}
	.hero-inner{padding-left:18px;padding-right:18px}
	.hero h1{font-size:clamp(1.65rem,7vw,2.15rem);line-height:1.12}
	.hero p.lede{margin-top:12px;font-size:.91rem;line-height:1.5}
	.hero-actions{margin-top:22px}
	.hero-price{margin-top:22px}
	.cookie-banner{padding:14px 16px calc(14px + env(safe-area-inset-bottom));max-height:82vh}
	.cookie-inner{gap:12px}
	.cookie-inner p{font-size:.82rem;line-height:1.45}
	#map-enable{width:100%;padding-left:14px;padding-right:14px}
	.cards{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:480px){
	section{padding:42px 0}
	.content-block .cb-image img{box-shadow:none}
	.cookie-banner{max-height:88vh}
	.gallery-grid{
		grid-auto-rows:auto;
		align-items:start;
	}
	.gallery-grid a{height:auto;display:block;align-self:start}
	.gallery-grid a:nth-child(1){grid-column:span 1;grid-row:span 1}
	.gallery-grid img{height:auto;object-fit:contain}
	.gallery-masonry{column-count:2}
	.gallery-masonry a:first-child{column-span:none}
}

@media(max-width:560px){
	.pricing-grid{
		display:flex;
		gap:14px;
		overflow-x:auto;
		overflow-y:hidden;
		padding:0 18px 16px 0;
		margin-right:-18px;
		scroll-snap-type:x mandatory;
		scroll-padding-inline:18px;
		-webkit-overflow-scrolling:touch;
		scrollbar-width:none;
		touch-action:pan-x;
	}
	.pricing-grid::-webkit-scrollbar{display:none}
	.pricing-grid .plan{
		flex:0 0 84%;
		min-width:0;
		scroll-snap-align:center;
		scroll-snap-stop:always;
		transform:none !important;
		opacity:1 !important;
	}
	.pricing-grid .plan:hover,
	.pricing-grid .plan.reveal{transform:none !important}
}

@media(max-width:820px){
	.cards{grid-template-columns:repeat(2,minmax(0,1fr))!important}
	.cards > .card:nth-child(odd):last-child{grid-column:1 / -1}
}

@media(max-width:860px){
	.career-side-by-side .cb-inner{display:block !important}
	.career-desktop-image{display:none !important}
	.career-side-by-side .cb-text{width:100%;min-width:0}
	.career-heading-with-image{display:flex;align-items:flex-start;gap:14px;margin-bottom:22px}
	.career-heading-copy{flex:1 1 68%;min-width:0}
	.career-heading-image{flex:0 0 28%;padding-top:4px}
	.career-heading-image img{width:100%;height:auto;max-height:150px;object-fit:contain}
}

@media(min-width:861px){
	.career-heading-image{display:none}
}
