:root {
	 --black:#18110c;
	 --black2:#2d2017;
	 --paper:#fffdf8;
	 --paper2:#f5ecdf;
	 --gold:#b67c27;
	 --gold-hi:#d8ab57;
	 --muted:#6f655c;
	 --line:rgba(122,78,24,.22);
	 --serif:'Cinzel', Georgia, serif;
	 --sans:'Montserrat', Arial, sans-serif;
}
 body{
	font-family:var(--sans);
	background:var(--paper);
	color:#2c2118;
	letter-spacing:.005em
}
 .kicker{
	font-family:var(--sans);
	font-weight:600;
	letter-spacing:.28em
}
 .hero h1,.section h2,.purity h2,.contact h2,.service-card h3,.collection-card h3,.steps h3,.values h3,.quotes p,.toast strong{
	font-family:var(--serif);
	font-style:normal;
	letter-spacing:-.018em
}
 .hero h1 em,h2 em{
	font-style:normal;
	color:#e7bd67
}
 .header{
	background:linear-gradient(to right,rgba(255,255,255,.68),transparent)
}
 .header.scrolled{
	background:#fff;
	box-shadow:0 8px 35px rgba(25,15,8,.15)
}
 .header nav a{
	font-family:var(--sans);
	font-weight:600;
	letter-spacing:.13em
}
 .hero{
	background:#d9c2a3;
	min-height:100svh
}
 .hero:before{
	background:linear-gradient(90deg,rgba(31,20,13,.97) 0%,rgba(31,20,13,.91) 43%,rgba(31,20,13,.48) 62%,rgba(31,20,13,.06) 100%)
}
 .hero h1{
	font-size:clamp(52px,6.7vw,96px);
	font-weight:600;
	line-height:.98
}
 .lead{
	font-size:15px;
	line-height:1.9;
	max-width:590px
}
 .btn{
	border-radius:999px;
	padding:16px 26px;
	box-shadow:0 14px 36px rgba(141,83,17,.22);
	transition:transform .25s,box-shadow .25s
}
 .btn:hover{
	transform:translateY(-2px);
	box-shadow:0 18px 45px rgba(141,83,17,.3)
}
 .nav-button{
	border-radius:999px;
	padding:11px 19px!important
}
 .visual-frame{
	border-radius:28px;
	box-shadow:0 28px 70px rgba(36,20,9,.38)
}
 .visual-frame img{
	height:610px;
	object-fit:cover
}
 .badge{
	border-radius:18px;
	width:120px;
	height:90px;
	font-family:var(--serif)
}
 .ticker{
	background:#f7efe3
}
 .section{
	padding-top:105px;
	padding-bottom:105px
}
 .about{
	background:#fffdf8
}
 .about-image img{
	border-radius:28px;
	box-shadow:0 24px 70px rgba(60,37,17,.14)
}
 .image-caption{
	border-radius:14px;
	backdrop-filter:blur(10px)
}
 .values article{
	border-color:#ddd0bf
}
 .services{
	background:#703b31
}
 .service-grid{
	gap:16px;
	border:0
}
 .service-card{
	border:1px solid rgba(255,240,220,.16);
	border-radius:22px;
	background:rgba(255,255,255,.045);
	min-height:335px;
	box-shadow:0 15px 45px rgba(39,15,9,.08)
}
 .service-card:hover{
	background:rgba(255,255,255,.09);
	transform:translateY(-6px)
}
 .collections{
	background:#f2e7d8
}
 .collection-grid{
	gap:24px
}
 .collection-card{
	border-radius:24px;
	box-shadow:0 18px 55px rgba(73,44,18,.1);
	border:1px solid rgba(135,83,20,.1)
}
 .collection-card img{
	aspect-ratio:1.18/1;
	object-fit:cover
}
 .collection-card>div{
	padding:20px 24px 27px
}
 .filters button{
	border-radius:999px;
	padding:10px 17px;
	background:rgba(255,255,255,.5)
}
 .filters button.active,.filters button:hover{
	background:#8d5e22;
	color:#fff
}
 .process{
	background:#dce5da
}
 .steps article{
	border-color:rgba(51,78,59,.18);
	border-radius:14px;
	padding-inline:15px
}
 .purity{
	background:linear-gradient(135deg,#1f3d37,#31584f)
}
 .purity-cards{
	gap:18px
}
 .purity-cards article{
	border-radius:20px;
	background:rgba(255,255,255,.07);
	border-color:rgba(255,236,195,.18);
	box-shadow:0 17px 45px rgba(8,25,22,.2)
}
 .testimonials{
	background:#ead1b3
}
 .quote-slider{
	background:rgba(255,253,248,.48);
	border-radius:28px;
	padding:50px 30px
}
 .faq{
	background:#fffdf8
}
 .accordion article{
	border-color:#e1d4c3
}
 .accordion button{
	font-family:var(--serif);
	font-size:19px
}
 .contact{
	background:#743a31
}
 .contact-form{
	border-radius:28px;
	box-shadow:0 27px 75px rgba(48,19,12,.24)
}
 .contact-form input,.contact-form select,.contact-form textarea{
	font-family:var(--sans)
}
 .map img{
	filter:saturate(.55) contrast(1.02) sepia(.08)
}
 footer{
	background:#fff
}
 .back-top{
	border-radius:50%
}
 @media(max-width:1020px){
	.header nav{
		background:#21170f;
		a{
			color: #fff;
		}
	}
	.hero:before{
		background:linear-gradient(180deg,rgba(31,20,13,.97) 0%,rgba(31,20,13,.88) 52%,rgba(31,20,13,.20) 100%)
	}
	.visual-frame img{
		height:auto;
		min-height:500px
	}
	.service-grid{
		grid-template-columns:repeat(2,1fr)
	}
}
 @media(max-width:640px){
	.hero h1{
		font-size:48px
	}
	.section{
		padding-top:78px;
		padding-bottom:78px
	}
	.service-grid{
		grid-template-columns:1fr
	}
	.visual-frame{
		border-radius:22px
	}
	.visual-frame img{
		min-height:410px
	}
	.collection-card img{
		aspect-ratio:4/3
	}
	.quote-slider{
		padding:38px 20px
	}
	.contact-form{
		border-radius:20px
	}
}
/* Service cards with dedicated imagery */
 .service-grid{
	grid-template-columns:repeat(2,1fr);
	gap:24px;
	margin-top:60px
}
 .service-card{
	padding:0;
	min-height:0;
	overflow:hidden;
	display:grid;
	grid-template-columns:42% 58%;
	background:#fffaf3;
	color:#2b1d14;
	border:0;
	box-shadow:0 20px 55px rgba(43,18,11,.16)
}
 .service-card:hover{
	background:#fffaf3;
	transform:translateY(-6px);
	box-shadow:0 27px 72px rgba(43,18,11,.24)
}
 .service-image{
	min-height:330px;
	overflow:hidden;
	position:relative
}
 .service-image:after{
	content:'';
	position:absolute;
	inset:0;
	background:linear-gradient(90deg,transparent 72%,rgba(255,250,243,.55))
}
 .service-image img{
	width:100%;
	height:100%;
	object-fit:cover;
	transition:transform .65s ease
}
 .service-card:hover .service-image img{
	transform:scale(1.055)
}
 .service-content{
	padding:32px 30px;
	display:flex;
	flex-direction:column;
	min-width:0
}
 .service-content>span{
	font-family:var(--serif);
	font-size:14px;
	color:#a66d1e
}
 .service-content h3{
	font-size:27px;
	color:#2c1e15;
	margin:auto 0 10px;
	line-height:1.2
}
 .service-content p{
	color:#74675b;
	font-size:12px;
	line-height:1.8;
	margin:0 0 18px
}
 .service-content a{
	color:#9a641a;
	font-weight:700;
	margin-top:auto
}
 @media(max-width:1020px){
	.service-grid{
		grid-template-columns:1fr
	}
	.service-card{
		grid-template-columns:45% 55%
	}
}
 @media(max-width:640px){
	.service-card{
		grid-template-columns:1fr
	}
	.service-image{
		min-height:240px
	}
	.service-image:after{
		background:linear-gradient(180deg,transparent 72%,rgba(255,250,243,.65))
	}
	.service-content{
		min-height:245px;
		padding:25px
	}
	.service-content h3{
		margin:18px 0 8px
	}
}
 