:root {
	--all-deep:#0F2822;
	--all-heritage:#143E33;
	--all-moss:#27533F;
	--all-antique:#BC8339;
	--all-warm:#D9B26F;
	--all-parchment:#F4E9CD;
	--all-ivory:#FFFAF0;
	--all-burgundy:#7D2628;
	--all-nav-height:84px;
}

*,*::before,*::after {
	box-sizing:border-box
}

html {
	scroll-behavior:smooth;
	scroll-padding-top:calc(var(--all-nav-height) + 38px)
}

body {
	margin:0;
	min-width:320px;
	font-family:Montserrat,sans-serif;
	font-weight:400;
	color:var(--all-deep);
	background:var(--all-ivory);
	overflow-x:clip
}

img {
	max-width:100%;
	height:auto
}

h1,h2,h3,.all-brand-title {
	font-family:'EB Garamond',Georgia,serif
}

h1,h2 {
	font-weight:700;
	line-height:1.05
}

h2 {
	font-size:clamp(2.3rem,4vw,3.7rem)
}

.py-lg-6 {
	padding-top:5rem!important;
	padding-bottom:5rem!important
}

.all-preview-ribbon {
	position:relative;
	z-index:1040;
	min-height:27px;
	padding:6px 12px;
	background:var(--all-antique);
	color:var(--all-deep);
	text-align:center;
	font-size:.58rem;
	letter-spacing:.11em;
	font-weight:700
}

.all-navbar {
	top:0;
	min-height:var(--all-nav-height);
	background:rgba(15,40,34,.97);
	border-bottom:2px solid var(--all-antique);
	box-shadow:0 6px 18px #0003;
	transition:box-shadow .2s,background .2s
}

.all-navbar-scrolled {
	background:var(--all-deep);
	box-shadow:0 12px 30px #0006
}

.all-navbar .navbar-brand {
	margin-right:1rem;
	max-width:68%
}

.all-navbar .navbar-brand img {
	object-fit:contain;
	width:45px;
	height:51px
}

.all-brand-title {
	color:var(--all-ivory);
	font-size:clamp(1.05rem,1.6vw,1.52rem);
	font-weight:700;
	line-height:.95;
	white-space:normal
}

.all-brand-title span {
	color:var(--all-warm)
}

.all-navbar .nav-link {
	color:var(--all-ivory);
	font-size:.8rem;
	font-weight:600
}

.all-navbar .nav-link:hover,.all-navbar .nav-link:focus {
	color:var(--all-warm)
}

.all-navbar .navbar-toggler {
	border-color:var(--all-warm)
}

.btn {
	border-radius:4px;
	padding:.72rem 1.2rem;
	font-size:.83rem;
	font-weight:700;
	transition:transform .2s,filter .2s
}

.btn:hover {
	transform:translateY(-2px);
	filter:brightness(1.06)
}

.btn-gold {
	background:var(--all-antique);
	color:var(--all-deep);
	border:1px solid var(--all-warm)
}

.btn-gold:hover,.btn-gold:focus {
	background:var(--all-warm);
	color:var(--all-deep)
}

.btn-outline-ivory {
	color:var(--all-ivory);
	border:1px solid var(--all-warm);
	background:rgba(15,40,34,.65)
}

.btn-outline-ivory:hover {
	background:var(--all-ivory);
	color:var(--all-deep)
}

.btn-burgundy {
	background:var(--all-burgundy);
	color:#fff;
	border:1px solid var(--all-burgundy)
}

.btn-burgundy:hover {
	background:#641c1f;
	color:#fff
}

.btn-forest {
	background:var(--all-heritage);
	color:#fff
}

.btn-forest:hover {
	background:var(--all-deep);
	color:#fff
}

.btn-outline-forest {
	border:1px solid var(--all-heritage);
	color:var(--all-heritage)
}

.btn-outline-forest:hover {
	background:var(--all-heritage);
	color:#fff
}

.all-hero {
	isolation:isolate;
	position:relative;
	min-height:720px;
	margin-top:var(--all-nav-height);
	padding:5rem 0;
	background:var(--all-deep) url('../images/mountains.svg') center center/cover no-repeat;
	color:var(--all-ivory)
}

.all-hero-overlay {
	position:absolute;
	inset:0;
	z-index:-1;
	background:linear-gradient(90deg,rgba(7,27,23,.83) 0%,rgba(7,27,23,.56) 52%,rgba(7,27,23,.28) 100%)
}

.all-hero-inner {
	position:relative;
	z-index:1
}

.all-hero-brand {
	max-width: 850px;
	margin: 0 auto 1.25rem auto; /* Added auto margins left and right */
	text-align: center;
	display: flex;                /* Ensures internal flex centering if needed */
	justify-content: center;
	align-items: center;
}

.all-hero-brand img {
	display: block;
	width: 300px;
	margin: 0 auto;               /* Centers the image element inside its block */
	filter: drop-shadow(0 10px 14px #0008);
}
.all-kicker {
	font-size:.73rem;
	font-weight:700;
	letter-spacing:.2em;
	color:var(--all-antique);
	text-transform:uppercase
}

.all-hero h1 {
	font-size:clamp(2.8rem,4.7vw,5.3rem);
	max-width:850px;
	text-shadow:0 4px 18px #0007
}

.all-hero h1 em {
	font-weight:500;
	color:var(--all-warm)
}

.all-hero-lead {
	max-width:650px;
	font-size:clamp(1rem,1.4vw,1.27rem);
	line-height:1.8;
	margin:1.5rem 0 2rem
}

.all-event {
	color:var(--all-deep);
	background:linear-gradient(145deg,#fff9e9,#ecd7ae);
	border:7px solid #8f6236;
	padding:1.7rem;
	box-shadow:0 18px 40px #0007;
	outline:1px solid #f4e9cd;
	outline-offset:-13px
}

.all-event h2 {
	font-size:clamp(2rem,3vw,3.1rem);
	color:var(--all-burgundy)
}

.all-event p:not(.all-kicker) {
	font-size:.87rem;
	font-weight:600;
	margin:1.4rem 0;
	line-height:1.5
}

.all-event p i {
	color:var(--all-heritage);
	margin-right:.45rem
}

.all-event p span {
	margin-left:1.3rem;
	font-weight:400
}

.all-event small {
	display:block;
	margin-top:1rem;
	font-size:.71rem;
	text-align:center;
	color:#5c5148
}

.all-ornament {
	text-align:center;
	letter-spacing:.8em;
	color:var(--all-antique);
	margin:1.15rem 0
}

.all-story {
	background:var(--all-parchment)
}

.all-story .lead {
	font-size:1.11rem;
	font-weight:500;
	line-height:1.8
}

.all-story p:not(.all-kicker) {
	line-height:1.9
}

.all-experience {
	background:var(--all-deep);
	color:var(--all-ivory)
}

.all-experience h2 {
	color:var(--all-warm)
}

.all-experience .all-kicker {
	color:var(--all-warm)
}

.all-experience-item {
	text-align:center;
	height:100%
}

.all-experience-icon {
	width:75px;
	height:75px;
	display:grid;
	place-items:center;
	margin:0 auto 1rem;
	background:var(--all-parchment);
	border:3px double var(--all-antique);
	border-radius:50%;
	color:var(--all-deep);
	font-size:2rem
}

.all-experience-item h3 {
	font-size:1.4rem
}

.all-experience-item p {
	color:#dcd9c9;
	font-size:.76rem;
	line-height:1.7
}

.all-feature {
	background:var(--all-ivory)
}

.all-feature-panel {
	box-shadow:0 16px 35px #0f282221;
	border:1px solid #ddc9a7
}

.all-wagon-image {
	display:block;
	width:100%;
	height:100%;
	min-height:380px;
	object-fit:cover
}

.all-feature-copy {
	padding:clamp(1.8rem,4vw,4rem);
	background:var(--all-parchment)
}

.all-feature-copy p:not(.all-kicker) {
	line-height:1.9
}

.all-makers {
	background:#f8f1df
}

.all-makers p {
	font-size:.85rem;
	color:#485f54
}

.all-makers img {
	width:100%;
	height:250px;
	object-fit:cover;
	border:5px solid #fff;
	box-shadow:0 8px 22px #0f28221b
}

.all-cta {
	color:var(--all-ivory);
	background:linear-gradient(#102e26e8,#102e26ef),url('../images/mountains.svg') center/cover
}

.all-cta .col-md-4 {
	padding:1.8rem;
	border-right:1px solid #d9b26f50
}

.all-cta .col-md-4:last-child {
	border-right:0
}

.all-cta i {
	font-size:2.3rem;
	color:var(--all-warm)
}

.all-cta h2 {
	font-size:2.3rem;
	margin-top:.6rem
}

.all-cta p {
	min-height:3rem;
	font-size:.84rem
}

.all-cta .btn i {
	font-size:1rem;
	color:inherit
}

.all-footer {
	color:#eee1cd;
	background:#0b211c;
	border-top:4px solid var(--all-antique)
}

.all-footer h2 {
	color:var(--all-warm)
}

.all-footer h3 {
	color:var(--all-warm)
}

.all-footer a {
	display:block;
	color:#eee1cd;
	font-size:.84rem;
	margin:.65rem 0;
	text-decoration:none;
	overflow-wrap:anywhere
}

.all-footer a:hover {
	color:var(--all-warm);
	text-decoration:underline
}

.all-footer p {
	font-size:.84rem;
	line-height:1.8
}

.all-footer-bottom {
	border-top:1px solid #ffffff36;
	display:flex;
	justify-content:space-between;
	gap:1rem;
	flex-wrap:wrap;
	font-size:.72rem;
	color:#ccbfa8
}

.all-fallback {
	position:fixed;
	top:27px;
	z-index:1050;
	background:var(--all-deep);
	padding:1rem;
	width:100%
}

.all-fallback a {
	color:white
}

@media(max-width:991.98px) {
	:root {
		--all-nav-height:75px
	}
	.all-navbar .navbar-collapse {
		background:var(--all-deep);
		padding:1rem;
		border-top:1px solid var(--all-antique)
	}
	.all-hero {
		min-height:auto;
		padding:3rem 0 4rem
	}
	.all-hero .all-hero-brand img {
		width:125px
	}
	.all-event {
		max-width:580px;
		margin:2rem auto 0
	}
	.all-cta .col-md-4 {
		border-right:0;
		border-bottom:1px solid #d9b26f40
	}
}

@media(max-width:575.98px) {
	:root {
		--all-nav-height:68px
	}
	.all-preview-ribbon {
		font-size:.47rem;
		letter-spacing:0
	}
	.all-brand-title {
		font-size:.98rem
	}
	.all-navbar .navbar-brand img {
		width:38px;
		height:43px
	}
	.all-hero h1 {
		font-size:2.75rem
	}
	.all-hero {
		padding:2rem 0 3rem
	}
	.all-event {
		padding:1.15rem
	}
	.all-makers img {
		height:210px
	}
	.all-footer-bottom {
		display:block
	}
}

@media(prefers-reduced-motion:reduce) {
	html {
		scroll-behavior:auto
	}
	*,*::before,*::after {
		animation-duration:.01ms!important;
		transition-duration:.01ms!important
	}
}

/* =========================================================
   CONTACT PAGE
   ========================================================= */
		.all-contact-card {
			background:var(--all-ivory);
			border:1px solid var(--all-warm);
			box-shadow:0 12px 32px #0f28221c;
			border-radius:4px;
		}
		.all-contact-card .form-control {
			border-color:#a89b86;
			border-radius:4px;
			padding:.7rem .9rem;
		}
		.all-contact-card .form-control:focus,
		.all-contact-card .form-check-input:focus {
			border-color:var(--all-antique);
			box-shadow:0 0 0 .2rem #bc833933;
		}
		.all-contact-card .form-check-input:checked {
			background-color:var(--all-heritage);
			border-color:var(--all-heritage);
		}
		.all-contact-card fieldset {
			border:0;
			min-width:0;
		}
		.all-contact-help {
			background:var(--all-parchment);
			border-left:3px solid var(--all-antique);
			padding:.85rem 1rem;
			min-height:4rem;
		}
		.all-contact-intro {
			background:var(--all-deep);
			color:var(--all-ivory);
			border-bottom:3px solid var(--all-antique);
		}
		.all-contact-intro h2 {
			color:var(--all-warm);
		}
		@media (min-width:992px) {
			.all-contact-details {
				border-right:1px solid #d9b26f80;
				padding-right:2rem;
			}
			.all-contact-interests {
				padding-left:1rem;
			}
		}

.all-contact-status {
	border-left:3px solid var(--all-antique);
	background:var(--all-parchment);
	padding:.85rem 1rem;
}

.all-contact-status.is-error {
	border-left-color:var(--all-burgundy);
}
/* Mobile navbar width correction */
@media (max-width:575.98px) {
	.all-navbar .navbar-brand {
		min-width:0;
		margin-right:.5rem;
	}

	.all-navbar .all-brand-title {
		min-width:0;
		overflow-wrap:break-word;
	}

	.all-navbar .navbar-toggler {
		flex-shrink:0;
		margin-left:auto;
	}
}/* =========================================================
   VENDOR CONTRACT - FORM CONTROLS
   ========================================================= */

#vendorContractForm .form-check-input {
	border:2px solid var(--all-heritage);
	background-color:#fff;
	width:1.15rem;
	height:1.15rem;
	cursor:pointer;
}

#vendorContractForm .form-check-input:checked {
	background-color:var(--all-heritage);
	border-color:var(--all-heritage);
}

#vendorContractForm .form-check-input:focus {
	border-color:var(--all-antique);
	box-shadow:0 0 0 .2rem #bc833933;
}