:root { --gold: #deb100; --gold-foreground: #1a1300; --ink: #0a0a0a; }
html { scroll-behavior: smooth; }
body { font-family: 'Inter', system-ui, sans-serif; color: #0a0a0a; background: #fff; -webkit-font-smoothing: antialiased; }
h1,h2,h3,h4 { font-family: 'Playfair Display', serif; letter-spacing: -0.01em; }
.container-app { max-width: 1200px; margin: 0 auto; padding: 0 1.25rem; }
.font-display { font-family: 'Playfair Display', serif; }
.text-gold { color: var(--gold) !important; }
.bg-gold { background-color: var(--gold) !important; }
.border-gold { border-color: var(--gold) !important; }
.bg-ink { background: #0a0a0a; }
.text-ink { color: #0a0a0a; }
.bg-gradient-gold { background-image: linear-gradient(135deg, #deb100, #f5cf3a); }
.bg-gradient-dark { background-image: linear-gradient(135deg, #0a0a0a, #1a1a1a); }
.text-gold-foreground { color: #1a1300; }
.shadow-gold { box-shadow: 0 10px 30px -10px rgba(222,177,0,.5); }
.shadow-elegant { box-shadow: 0 25px 60px -20px rgba(0,0,0,.25); }

.home-hero {
    background-size: cover;
	background-size: auto 100%; 
	background-position: center top;
    /* background-position: center; */
	background-repeat: no-repeat;
	background-color: white;
}

@media (min-width: 1024px) {
	.home-hero {
		background-position: 100% top;
		background-size: auto 100%;
	}
}

.home-hero::before {
	content: "";
	position: absolute;
	inset: 0;
	/* background: linear-gradient(90deg, rgba(0, 0, 0, 0.72) 0%, rgba(0, 0, 0, 0.5) 45%, rgba(0, 0, 0, 0.68) 100%); */
}

.home-hero > * {
	position: relative;
	z-index: 1;
}

/* Contact page */
.contact-page {
	background: linear-gradient(180deg, #ffffff 0%, #fafafa 100%);
}

.contact-page__grid {
	align-items: stretch;
}

.contact-form-shell {
	position: relative;
	overflow: hidden;
}

.contact-form-shell::before {
	content: "";
	position: absolute;
	inset: 0;
	background: radial-gradient(circle at top right, rgba(222, 177, 0, 0.14), transparent 40%);
	pointer-events: none;
}

.contact-form-card {
	position: relative;
	z-index: 1;
}

.contact-form label {
	display: block;
}

.contact-form input,
.contact-form textarea {
	transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.contact-form input:focus,
.contact-form textarea:focus {
	box-shadow: 0 0 0 3px rgba(222, 177, 0, 0.14);
}

.contact-form__honeypot {
	position: absolute;
	left: -9999px;
	opacity: 0;
	pointer-events: none;
}

.contact-notice {
	border-radius: 1.25rem;
	padding: 1rem 1.15rem;
	border: 1px solid transparent;
}

.contact-notice--success {
	background: rgba(34, 197, 94, 0.12);
	border-color: rgba(34, 197, 94, 0.45);
	color: #dcfce7;
}

.contact-notice--error {
	background: rgba(239, 68, 68, 0.12);
	border-color: rgba(239, 68, 68, 0.45);
	color: #fee2e2;
}

@media (max-width: 1023px) {
	.contact-page__grid {
		grid-template-columns: 1fr;
	}
}
