/* ==========================================================================
   Utility Styles
   ========================================================================== */
.overflow-hidden {
	overflow: hidden;
}

body {
	overflow-x: hidden;
}

/* ==========================================================================
   Header Styles
   ========================================================================== */
.main-header {
	position: fixed;
	top: 1em;
	left: 0;
	right: 0;

	margin: 0 auto;
	padding: var(--spacing-sm) 0;
	width: 100%;
	max-width: var(--container-width);

	z-index: 1000;

	transition: background-color var(--transition-base), padding var(--transition-base);

	border-radius: 2222px;
	border: 1px solid rgba(255, 255, 255, 0.17);

	background: rgba(86, 94, 72, 0.11);

	backdrop-filter: blur(11px);
}

.main-header.blog-header {
	border: 1px solid #E5DECF;
	background: transparent;
}

.header-container {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: var(--spacing-md);
}

.btn-whatsapp-header {
	padding: 0.5em 0.8em;

	display: flex;
	justify-content: center;
	align-items: center;
	gap: 8px;
	flex-shrink: 0;

	border-radius: 8314.354px;
	border: 1px solid #AD8754;

	transition: transform var(--transition-base);
	transform: scale(1);

	background: linear-gradient(90deg, rgba(173, 135, 84, 0.25) 33.26%, rgba(230, 190, 136, 0.25) 73.8%, rgba(255, 242, 191, 0.25) 104.14%);
}

.btn-whatsapp-header:hover {
	transform: scale(1.02);
}

.btn-whatsapp-header.mobile {
	display: none;
}

.blog-header .btn-whatsapp-header {
	border: 1px solid #FFD296;

	background: linear-gradient(90deg, #AD8754 33.26%, #E6BE88 94.82%, #FFF2BF 140.88%);
}

.logo {
	display: flex;
	align-items: center;
	gap: var(--spacing-xs);
}

.logo img {
	height: 40px;
	width: auto;
}

.main-nav {
	flex: 1;
}

.main-nav ul {
	display: flex;
	justify-content: space-around;
	width: 100%;
	list-style: none;
}

.main-nav a {
	color: var(--clr-text-light);
	font-weight: var(--fw-medium);
	font-size: 0.95rem;
	position: relative;
	padding: 0.5rem 0;
}

.main-nav a::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 50%;
	width: 0;
	transform: translateX(-50%);
	height: 5px;
	background-color: var(--clr-secondary);
	border-radius: 100%;
}

.main-nav a:hover::after,
.main-nav a.active::after {
	width: 5px;
}

.blog-header .main-nav a:not(.mobile) {
	color: var(--clr-text-dark);
}

.mobile-menu-toggle {
	display: none;
	flex-direction: column;
	gap: 5px;
	background: transparent;
	border: none;
	cursor: pointer;
	padding: 0.5rem;
	z-index: 1001;
	position: absolute;
	top: 1.5em;
	right: 2em;
	/* transform: translateY(-50%); */
}

.mobile-menu-toggle span {
	width: 25px;
	height: 2px;
	background-color: var(--clr-light);
	transition: all var(--transition-base);
}

/* ==========================================================================
   Hero Styles
   ========================================================================== */
.hero-section {
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	min-height: 100vh;
	background-image: url('../images/home-hero.png');
	background-size: cover;
	background-position: center;
	padding-top: 100px;
}

.hero-content {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	position: relative;
	z-index: 2;
	max-width: 800px;
	text-align: center;
}

.hero-seal {
	margin-bottom: var(--spacing-sm);
}

.seal-icon {
	width: 3.5em;
	height: 3.5em;
	animation: rotate 20s linear infinite;
}

.hero-title {
	font-size: var(--fs-h1);
	font-family: var(--ff-secondary);
	font-weight: var(--fw-regular);
	margin-bottom: var(--spacing-sm);
	line-height: 1.1;
	text-shadow: 0 4px 6px rgba(0, 0, 0, 0.3);
}

.hero-title span {
	color: var(--clr-secondary);
	font-style: italic;
}

.hero-subtitle {
	font-size: clamp(1.125rem, 2vw, 1.25rem);
	color: rgba(255, 255, 255, 0.9);
	max-width: 600px;
	margin-bottom: var(--spacing-md);
	text-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}

.cta-button {
	border-radius: 22222px;
	border: 2px solid #FFD296;
	background: linear-gradient(90deg, #AD8754 33.26%, #E6BE88 73.8%, #FFF2BF 104.14%), linear-gradient(90deg, #A6814F 36.94%, #FFD296 104.16%);
	color: var(--clr-light);
	box-shadow: 0 0 0px 8px rgba(241, 204, 126, 0.25);
}

.arrow-icon {
	transform: rotate(-45deg);
	transition: transform var(--transition-fast);
}

.cta-button:hover .arrow-icon {
	transform: translate(0.4em, -0.4em) rotate(-45deg);
}

/* Base Sections */
section {
	padding: var(--spacing-xl) 0;
}

.section-header {
	text-align: center;
	margin-bottom: var(--spacing-lg);
}

.section-title {
	font-size: var(--fs-h2);
	color: var(--clr-light);
}

/* Services Grid */
.services-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
	gap: var(--spacing-md);
	margin-top: var(--spacing-lg);
}

.service-card {
	background: var(--clr-surface);
	border: 1px solid rgba(203, 168, 124, 0.1);
	border-radius: var(--br-lg);
	padding: var(--spacing-md);
	transition: transform var(--transition-base), box-shadow var(--transition-base), border-color var(--transition-base);
	position: relative;
	overflow: hidden;
	backdrop-filter: blur(8px);
}

.service-card:hover {
	transform: translateY(-10px);
	box-shadow: var(--shadow-md);
	border-color: rgba(203, 168, 124, 0.4);
}

/* Service Card Image Hover Effect Overlay */
.service-card::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: linear-gradient(135deg, rgba(203, 168, 124, 0.05) 0%, rgba(203, 168, 124, 0) 100%);
	opacity: 0;
	transition: opacity var(--transition-base);
	z-index: 0;
}

.service-card:hover::before {
	opacity: 1;
}

.service-number {
	position: absolute;
	top: var(--spacing-md);
	right: var(--spacing-md);
	font-size: var(--fs-h3);
	font-weight: var(--fw-bold);
	color: rgba(255, 255, 255, 0.05);
	/* very subtle */
	transition: color var(--transition-base);
	z-index: 1;
}

.service-card:hover .service-number {
	color: rgba(203, 168, 124, 0.2);
}

.service-content {
	position: relative;
	z-index: 1;
}

.service-title {
	font-size: 1.25rem;
	color: var(--clr-secondary);
	margin-bottom: var(--spacing-sm);
	border-bottom: 1px solid rgba(255, 255, 255, 0.1);
	padding-bottom: 0.5rem;
}

.service-desc {
	font-size: 0.95rem;
	color: rgba(240, 240, 240, 0.8);
	line-height: 1.6;
}

/* About Section */
.about-section {
	position: relative;
	overflow: hidden;
	background-color: var(--clr-service-bg-dark);
	padding: 120px 0;
}

/* Decorative Background Elements */
.about-glow {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	pointer-events: none;
	z-index: 1;
}

.glow-circle {
	position: absolute;
	width: 796px;
	height: 796px;
	border-radius: 50%;
	mix-blend-mode: plus-lighter;
	opacity: 0.28;
}

.glow-left-1 {
	left: -574px;
	top: 400px;
	background: radial-gradient(circle, rgba(166, 129, 79, 0.3) 0%, transparent 70%);
}

.glow-left-2 {
	left: -400px;
	top: 600px;
	background: radial-gradient(circle, rgba(248, 197, 128, 0.2) 0%, transparent 70%);
}

.glow-left-3 {
	left: -300px;
	top: 800px;
	background: radial-gradient(circle, rgba(166, 129, 79, 0.15) 0%, transparent 70%);
}

.glow-right-1 {
	right: -574px;
	top: 300px;
	background: radial-gradient(circle, rgba(166, 129, 79, 0.3) 0%, transparent 70%);
}

.glow-right-2 {
	right: -400px;
	top: 500px;
	background: radial-gradient(circle, rgba(248, 197, 128, 0.2) 0%, transparent 70%);
}

.glow-right-3 {
	right: -300px;
	top: 700px;
	background: radial-gradient(circle, rgba(166, 129, 79, 0.15) 0%, transparent 70%);
}

/* Background Logo Watermark */
.about-logo-watermark {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 1941px;
	height: 2199px;
	opacity: 0.03;
	pointer-events: none;
	z-index: 1;
}

.about-logo-watermark img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

/* Backdrop Blur Background */
.about-backdrop {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 1280px;
	height: 1245px;
	background: rgba(19, 21, 12, 0.08);
	backdrop-filter: blur(4px);
	border-radius: 20px;
	z-index: 2;
}

/* Section Header */
.about-header {
	position: relative;
	z-index: 10;
	text-align: center;
	margin-bottom: 80px;
}

.about-title {
	font-family: var(--ff-secondary);
	font-size: 64px;
	font-weight: var(--fw-regular);
	color: var(--clr-service-beige);
	letter-spacing: -1.28px;
	margin: 30px 0 0 0;
}

.gradient-text {
	font-family: var(--ff-secondary);
	font-style: italic;
	font-weight: 400;
	background: linear-gradient(90deg, #a6814f 4.9492%, #f8c580 72.716%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
}

/* Section Badge */
.section-badge {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 40px;
	height: 42px;
	padding: 0 20px;
	background: linear-gradient(90deg, rgba(218, 172, 110, 0.11) 0%, rgba(218, 172, 110, 0) 100%);
}

.section-badge::before,
.section-badge::after {
	content: '';
	position: absolute;
	width: 1px;
	height: 42px;
	background: linear-gradient(180deg, #a6814f 0%, #f8c580 100%);
}

.section-badge::before {
	left: 0;
}

.section-badge::after {
	right: 0;
}

.section-badge .badge-icon {
	display: flex;
	align-items: center;
	gap: 14px;
	color: var(--clr-service-beige);
	font-family: var(--ff-primary);
	font-size: 18px;
	font-weight: 500;
}

/* Content Blocks */
.about-content {
	position: relative;
	z-index: 10;
	display: flex;
	flex-direction: column;
	gap: 30px;
}

.about-block {
	display: grid;
	grid-template-columns: 686px 582px;
	gap: 1em;
	align-items: center;
	justify-content: center;
}

.about-block.reverse {
	direction: rtl;
}

.about-block.reverse>* {
	direction: ltr;
}

/* About Card */
.about-card {
	height: 395px;
	background: var(--clr-service-beige);
	border: 1px solid rgba(89, 80, 67, 0.35);
	border-radius: 13px;
	padding: 57px 42px;
	display: flex;
	flex-direction: column;
	gap: 18px;
}

.card-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
}

.card-title {
	font-family: var(--ff-primary);
	font-size: 42px;
	font-weight: 500;
	color: #3f311d;
	letter-spacing: -0.84px;
	margin: 0;
}

.service-card .card-title {
	color: var(--clr-light);
}

.card-icon {
	flex-shrink: 0;
	width: 48px;
	height: 48px;
}

.card-divider {
	width: 100%;
	height: 1px;
	min-height: 1px;
	background: var(--clr-service-gold);
	margin: 0;
}

.card-text {
	font-family: var(--ff-primary);
	font-size: 22px;
	font-weight: 400;
	color: #3f311d;
	line-height: 32px;
	margin: 0;
}

/* About Image */
.about-image {
	height: 395px;
	border: 1px solid var(--clr-service-border);
	border-radius: 13px;
	overflow: hidden;
	position: relative;
}

.about-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* Responsive Design */
@media (max-width: 1200px) {
	.about-block {
		grid-template-columns: 1fr 1fr;
		gap: 30px;
	}

	.about-card {
		height: auto;
		min-height: 300px;
	}
}

@media (max-width: 768px) {
	.about-section {
		padding: 60px 0;
	}

	.about-title {
		font-size: 34px;
		letter-spacing: -0.68px;
	}

	/* Section Badge Mobile */
	.section-badge {
		height: 22px;
		width: 83px;
		padding: 0;
		gap: 10.355px;
	}

	.section-badge::before,
	.section-badge::after {
		height: 21.745px;
		width: 1.035px;
	}

	.section-badge .badge-icon {
		gap: 7.248px;
		font-size: 9.319px;
		line-height: 13.634px;
	}

	.section-badge .badge-icon svg {
		width: 10px;
		height: 10px;
	}

	/* Content Blocks Mobile - Image First Layout */
	.about-content {
		gap: 10px;
	}

	.about-block {
		display: flex;
		flex-direction: column-reverse;
		gap: 6px;
		width: 100%;
		max-width: 368px;
		margin: 0 auto;
	}

	.about-block.reverse {
		direction: ltr;
	}

	/* Image Mobile */
	.about-image {
		height: 215px;
		width: 100%;
		border: 0.5px solid #f8c580;
		border-radius: 8.22px;
		order: 2;
	}

	/* Card Mobile */
	.about-card {
		padding: 28.46px 22.5px;
		border-radius: 6.974px;
		border: 0.536px solid rgba(89, 80, 67, 0.35);
		order: 1;
	}

	.card-header {
		gap: 0.536px;
	}

	.card-title {
		font-size: 28px;
		letter-spacing: -0.56px;
	}

	.card-icon {
		width: 25.749px;
		height: 25.749px;
	}

	.card-icon img {
		width: 100%;
		height: 100%;
		object-fit: contain;
	}

	.card-text {
		font-size: 18px;
		line-height: 26px;
	}

	/* Background Elements Mobile */
	.about-backdrop {
		width: 368px;
		height: 537px;
		backdrop-filter: blur(1.15px);
		left: 32px;
		top: 50%;
		transform: translate(0, -50%);
	}

	.about-logo-watermark {
		width: 521px;
		height: 590.252px;
	}

	.glow-circle {
		mix-blend-mode: plus-lighter;
	}

	.glow-left-1,
	.glow-left-2,
	.glow-left-3 {
		width: 212px;
		height: 212px;
		opacity: 0.28;
	}

	.glow-left-1 {
		left: -160px;
		top: 400px;
	}

	.glow-left-2 {
		left: -160px;
		top: 500px;
	}

	.glow-left-3 {
		left: -160px;
		top: 600px;
	}

	.glow-right-1,
	.glow-right-2,
	.glow-right-3 {
		width: 245px;
		height: 245px;
		opacity: 0.15;
		right: -30px;
	}

	.glow-right-1 {
		top: 300px;
	}

	.glow-right-2 {
		top: 400px;
	}

	.glow-right-3 {
		top: 500px;
	}
}

/* Process Section */
.process-section {
	background: url('./../images/process-bg.svg') left bottom no-repeat, #13150C;
	padding: var(--spacing-xl) 0 15em;
	position: relative;
}

.process-section .process-seal {
	background-color: #13150C;
	border-radius: 50%;
	border: 0.6em solid #13150C;
	width: 10em;
	height: 10em;
	position: absolute;
	top: -4em;
	left: 50%;
	transform: translateX(-50%);
}

.container-process {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: var(--spacing-lg);
	position: relative;
}

.container-process .services-header {
	position: sticky;
	top: 120px;
	align-self: start;
}

.process-cards {
	display: flex;
	flex-direction: column;
	gap: 1em;
}

.process-card {
	border-radius: 12px;
	background: url('./../images/process-card-bg.svg') no-repeat top right, var(--clr-service-beige);
	padding: 2em;
	color: #3F311D;
	display: flex;
	flex-direction: column;
	gap: 1em;
}

.process-card-title {
	color: #3F311D;
	font-size: 1.8em;
}

.process-card-text {
	font-size: 1.2em;
}

.process-badge {
	display: flex;
	width: fit-content;
	align-items: center;
	border-radius: 260px;
	border: 1.164px solid #F8C580;
	background: rgba(248, 197, 128, 0.40);
	backdrop-filter: blur(1em);
}

.process-badge .process-badge-icon img {
	padding: 0.7em;
	width: 3em;
	min-width: 3em;
	height: 3em;
	background-color: #F8C580;
	border-radius: 50%;
}

.process-badge .process-badge-text {
	margin: 0 1em;
	white-space: nowrap;
}

.process-glow .glow-circle {
	border-radius: 639px;
	background: #94B870;
	mix-blend-mode: plus-lighter;
	filter: blur(274.3941345214844px);
}

.process-glow .glow-1 {
	position: absolute;
	left: -10%;
}

.process-glow .glow-2 {
	position: absolute;
	right: -15%;
	top: -35%;
}

/* Dúvidas Section */
.duvidas-content {
	position: absolute;
	bottom: -20em;
	left: 50%;
	transform: translateX(-50%);
	border-radius: 2em;
	padding: 120px 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 40px;
	text-align: center;
	width: 100%;
	max-width: var(--container-width);
	margin: 0 auto;
	background: url('./../images/contact-bg.png') center center no-repeat, radial-gradient(ellipse at center, rgba(218, 172, 110, 0.08) 0%, transparent 70%);
	background-size: cover;
}

/* Badge Styles */
.duvidas-badge {
	background: linear-gradient(90deg, rgba(218, 172, 110, 0.11) 0%, rgba(218, 172, 110, 0) 100%);
	width: 176px;
	height: 42px;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 40px;
	position: relative;
}

.badge-content {
	display: flex;
	align-items: center;
	gap: 14px;
	color: var(--clr-footer-subtitle);
	font-family: var(--ff-primary);
	font-size: 18px;
	font-weight: var(--fw-medium);
	line-height: 26.333px;
}

.badge-icon {
	width: 15.458px;
	height: 20px;
}

/* Title Styles */
.duvidas-title {
	font-family: var(--ff-secondary);
	font-size: clamp(2.5rem, 5vw, 4rem);
	font-weight: 300;
	line-height: 1.1;
	letter-spacing: -1.28px;
	color: var(--clr-footer-subtitle);
	margin: 0;
}

.duvidas-title .gradient-text {
	background: linear-gradient(90deg, var(--clr-service-gold) 40.89%, var(--clr-service-gold-light) 50%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
	font-style: italic;
}

/* CTA Button */
.duvidas-cta-container {
	background: rgba(241, 204, 126, 0.25);
	border-radius: 100px;
	padding: 10px;
	width: fit-content;
	position: relative;
}

.duvidas-cta-button {
	display: flex;
	align-items: center;
	gap: 20px;
	padding: 10px 20px 10px 10px;
	border: 2px solid #ffd296;
	border-radius: 100px;
	background: linear-gradient(90.096deg, var(--clr-service-gold) 33.26%, var(--clr-service-gold-light) 73.804%, #fff2bf 104.14%),
		linear-gradient(90deg, var(--clr-service-gold) 22.922%, var(--clr-service-gold-light) 71.853%);
	background-size: 100% 100%, 0% 100%;
	background-position: center, center;
	background-origin: border-box;
	background-clip: padding-box, border-box;
	text-decoration: none;
	transition: all var(--transition-base);
	position: relative;
	overflow: hidden;
}

.duvidas-cta-button::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: linear-gradient(90.096deg, var(--clr-service-gold) 33.26%, var(--clr-service-gold-light) 73.804%, #fff2bf 104.14%);
	border-radius: 100px;
	opacity: 0;
	transition: opacity var(--transition-base);
	z-index: -1;
}

.duvidas-cta-button:hover::before {
	opacity: 1;
}

.duvidas-cta-button:hover {
	transform: translateY(-2px);
	box-shadow: 0 8px 25px rgba(166, 129, 79, 0.3);
}

.cta-icon {
	width: 22px;
	height: 22px;
	flex-shrink: 0;
}

.duvidas-cta-button span {
	font-family: var(--ff-primary);
	font-size: 22px;
	font-weight: 600;
	letter-spacing: -0.88px;
	color: white;
	white-space: nowrap;
}

/* Responsive Design */
@media (max-width: 1280px) {
	.duvidas-content {
		gap: 30px;
		max-width: 80vw;
	}
}

@media (max-width: 768px) {
	.duvidas-content {
		gap: 30px;
		max-width: 80vw;
	}

	.duvidas-title {
		font-size: clamp(2rem, 8vw, 3rem);
	}

	.duvidas-cta-button {
		padding: 8px 16px 8px 8px;
		gap: 15px;
	}

	.duvidas-cta-button span {
		font-size: 18px;
	}

	.cta-icon {
		width: 18px;
		height: 18px;
	}
}

@media (max-width: 480px) {
	.duvidas-badge {
		width: 150px;
		gap: 30px;
	}

	.badge-content {
		font-size: 16px;
		gap: 10px;
	}

	.badge-icon {
		width: 13px;
		height: 17px;
	}
}

/* Footer Section */
.main-footer {
	background-color: var(--clr-footer-bg);
	padding-top: 80px;
	border-top: 1px solid var(--clr-footer-border);
}

.footer-content {
	display: flex;
	gap: 60px;
	padding-bottom: 80px;
	position: relative;
}

/* Decorative line */
.footer-line {
	margin: auto 0 1em 0;
	width: 100%;
	height: 3px;
	background: linear-gradient(90deg, #a6814f 6.75%, #f8c580 125%);
}

/* Logo Section */
.footer-logo-section {
	flex: 0 0 auto;
	display: flex;
	flex-direction: column;
}

.footer-logo-wrapper {
	display: flex;
	align-items: center;
	gap: 6px;
	margin-bottom: 10px;
}

.footer-logo-img {
	width: 100%;
}

.footer-brand-text {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

/* Units Section */
.footer-units {
	flex: 0 0 286px;
}

.footer-contacts {
	flex: 0 0 194px;
}

.footer-section-title {
	font-size: 26px;
	line-height: 26.333px;
	font-weight: var(--fw-medium);
	color: var(--clr-footer-title);
	margin: 0 0 30px 0;
}

.unit-item {
	margin-bottom: 30px;
}

.unit-item:last-child {
	margin-bottom: 0;
}

.unit-title {
	font-size: 1.2em;
	line-height: 26.333px;
	font-weight: var(--fw-medium);
	color: var(--clr-footer-subtitle);
	margin: 0 0 10px 0;
}

.unit-address {
	font-size: 1em;
	line-height: 28px;
	font-weight: var(--fw-regular);
	color: var(--clr-footer-text);
	margin: 0;
}

/* Contact Section */
.contact-item {
	display: flex;
	flex-direction: column;
	gap: 0px;
	margin-bottom: 10px;
}

.contact-label {
	font-size: 1.2em;
	font-weight: var(--fw-medium);
	color: var(--clr-footer-subtitle);
	margin: 0 0 6px 0;
}

.contact-value {
	font-size: 1em;
	font-weight: var(--fw-regular);
	color: var(--clr-footer-text);
	margin: 0;
}

/* Footer Bottom */
.footer-bottom {
	position: relative;
	padding-top: 0;
}

.footer-bottom-content {
	display: flex;
	flex-direction: column;
	gap: 10px;
	padding-bottom: 20px;
}

.footer-content~.footer-bottom {
	display: none;
}

.footer-content~.footer-line {
	display: none;
}

.copyright {
	font-size: 0.8em;
	color: var(--clr-footer-copyright);
	margin: 0;
}

.designer-credit {
	font-size: 0.8em;
	color: var(--clr-footer-copyright);
	margin: 0;
}

.designer-credit a {
	text-decoration: underline;
}


/* Mobile Responsive */
@media (max-width: 992px) {
	.hero-title {
		font-size: 2.5rem;
	}

	.container-process {
		grid-template-columns: 1fr;
	}

	.container-process .services-header {
		position: static;
	}

	.process-cta {
		position: static;
		max-width: 100%;
		margin-bottom: var(--spacing-lg);
	}

	.main-header {
		transition: all var(--transition-base);
	}

	.main-header.menu-open {
		border-radius: var(--br-lg);
		backdrop-filter: blur(20px);
	}

	.header-container {
		flex-wrap: wrap;
		flex-direction: column;
		align-items: flex-start;
	}

	.main-nav {
		width: 100%;
		display: none;
		flex-direction: column;
		padding: var(--spacing-md) 0 var(--spacing-sm) 0;
	}

	.main-nav.active {
		display: flex;
	}

	.main-nav ul {
		flex-direction: column;
		align-items: flex-start;
		gap: 0;
	}

	.main-nav li {
		width: 100%;
		border-bottom: 1px solid rgba(255, 255, 255, 0.05);
	}

	.main-nav li:last-child {
		border-bottom: none;
	}

	.main-nav a {
		display: flex;
		align-items: center;
		width: 100%;
		padding: 1.25rem 0;
		font-size: 1.1rem;
		font-weight: var(--fw-medium);
	}

	.main-nav a::after {
		display: none;
	}

	/* Simple dot for active link */
	.main-nav a::before {
		content: '';
		display: inline-block;
		width: 6px;
		height: 6px;
		background-color: var(--clr-secondary);
		border-radius: 50%;
		margin-right: 12px;
		opacity: 0;
	}

	.main-nav a.active::before {
		opacity: 1;
	}

	.btn-whatsapp-header.mobile {
		display: flex;
		width: 100%;
		margin-top: var(--spacing-md);
		padding: 1rem;
		font-size: 1rem;
	}

	.btn-whatsapp-header.desktop {
		display: none;
	}

	.mobile-menu-toggle {
		display: flex;
	}

	/* Animate hamburger to X */
	.mobile-menu-toggle.active span:nth-child(1) {
		transform: translateY(7px) rotate(45deg);
	}

	.mobile-menu-toggle.active span:nth-child(2) {
		opacity: 0;
	}

	.mobile-menu-toggle.active span:nth-child(3) {
		transform: translateY(-7px) rotate(-45deg);
	}

	.blog-header .mobile-menu-toggle span {
		background-color: var(--clr-text-dark);
	}

	.hero-bg-overlay {
		background: linear-gradient(180deg, rgba(30, 58, 44, 0.9) 0%, rgba(30, 58, 44, 0.7) 100%);
	}

	.hero-content {
		text-align: center;
		margin: 0 auto;
	}

	.hero-seal {
		display: flex;
		justify-content: center;
	}

	.process-section .section-title-row {
		text-align: center;
	}

	.footer-content {
		flex-direction: column;
		gap: var(--spacing-lg);
		max-width: 100%;
		padding-bottom: 0;
	}

	.footer-logo-section>.footer-bottom {
		display: none;
	}

	.footer-logo-section>.footer-line {
		display: none;
	}

	.footer-content~.footer-bottom {
		display: block;
	}

	.footer-content~.footer-line {
		display: block;
	}

	.footer-bottom-content {
		flex-direction: column;
		max-width: 100%;
	}

	/* Footer responsive adjustments */
	.footer-logo-wrapper {
		justify-content: center;
		margin-bottom: 30px;
	}

	.brand-name {
		font-size: 36px;
		line-height: 60px;
	}

	.brand-slogan {
		font-size: 10px;
		line-height: 50px;
	}

	.footer-units,
	.footer-contacts {
		flex: 1;
		width: 100%;
	}
}

@media (max-width: 768px) {
	.container {
		padding: 0 var(--spacing-md);
	}

	.hero-content {
		padding: var(--spacing-xl) 0;
	}

	.hero-title {
		font-size: 2rem;
	}

	.hero-subtitle {
		font-size: 1rem;
	}

	.section-title {
		font-size: 2rem;
	}

	.container-contact {
		flex-direction: column;
	}

	.form-row {
		flex-direction: column;
		gap: 0;
	}
}


/* ==========================================================================
   Blog Page Styles
   ========================================================================== */

/* Blog Search Section */
.blog-search {
	padding: 0;
}

.search-container {
	display: flex;
	justify-content: center;
	margin-bottom: 20px;
}

.search-input-wrapper {
	position: relative;
	width: 100%;
	border-radius: 222px;
	background: #FFF;
	box-shadow: 0 2px 4px 0 rgba(49, 43, 34, 0.05);
}

.search-input-wrapper input {
	width: 100%;
	padding: 1.5em 2.5em 1.5em 2.8em;
	font-size: 1.125rem;
	font-family: var(--ff-primary);
	background: white;
	border: none;
	border-radius: 50px;
	color: #3f311d;
	outline: none;
	transition: border-color var(--transition-base), box-shadow var(--transition-base);
}

.search-input-wrapper input::placeholder {
	color: #9a8c7a;
}

.search-input-wrapper input:focus {
	border-color: #f8c580;
	box-shadow: 0 0 0 3px rgba(248, 197, 128, 0.1);
}

.search-icon {
	position: absolute;
	left: 20px;
	top: 50%;
	transform: translateY(-50%);
	pointer-events: none;
}

.search-clear-btn {
	position: absolute;
	right: 20px;
	top: 50%;
	transform: translateY(-50%);
	background: none;
	border: none;
	cursor: pointer;
	padding: 4px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: background-color var(--transition-fast);
}

.search-clear-btn:hover {
	background-color: #f0f0f0;
}

.search-loading {
	display: flex;
	justify-content: center;
	padding: 20px 0;
}

.spinner {
	width: 40px;
	height: 40px;
	border: 3px solid #f3f3f3;
	border-top: 3px solid #f8c580;
	border-radius: 50%;
	animation: spin 1s linear infinite;
}

@keyframes spin {
	0% {
		transform: rotate(0deg);
	}

	100% {
		transform: rotate(360deg);
	}
}

/* Blog Page Light Theme */
.blog-page {
	background-color: #fbf8f4;
	color: #3f311d;
	min-height: 100vh;
	padding-top: 106px;
	/* Offset for fixed header */
}

/* Override header styles for blog page */
.blog-page .main-header {
	background-color: #fbf8f4;
	border-bottom: 1px solid #e5decf;
}

.blog-page .main-nav a {
	color: #655744;
}

.blog-page .main-nav a::after {
	background-color: #a6814f;
}

.blog-page .cta-button.primary-btn {
	background: linear-gradient(89.9801deg, rgb(173, 135, 84) 33.256%, rgb(230, 190, 136) 94.818%, rgb(255, 242, 191) 140.88%);
	border: 1px solid #ffd296;
	color: white;
}

/* Blog Hero Section */
.blog-hero {
	padding: 120px 0 60px;
	text-align: center;
}

.blog-hero-title {
	font-family: var(--ff-primary);
	font-size: clamp(3.5rem, 8vw, 6.25rem);
	font-weight: 300;
	line-height: 1.2;
	letter-spacing: -0.02em;
	margin-bottom: 20px;
	color: #3f311d;
}

.blog-hero-title span:first-child {
	color: #3f311d;
}

.blog-hero-title span:last-child {
	background: linear-gradient(90deg, rgb(166, 129, 79) 58.38%, rgb(248, 197, 128) 81.62%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
}

.blog-hero-subtitle {
	font-size: clamp(1rem, 2vw, 1.375rem);
	line-height: 1.6;
	color: #43493f;
	max-width: 819px;
	margin: 0 auto;
}

.blog-hero-subtitle strong {
	font-weight: 600;
}

/* Year Filter */
.blog-filter {
	padding: 40px 0;
}

.year-filter-buttons {
	display: flex;
	gap: 6px;
	justify-content: flex-start;
	flex-wrap: nowrap;
}

.year-filter-btn {
	display: flex;
	align-items: center;
	border-radius: 260px;
	border: 1.164px solid #CCC2B5;
	background: rgba(195, 182, 165, 0.08);
}

.year-filter-btn .logo img {
	padding: 0.7em;
	width: 3em;
	height: 3em;
	background-color: #D6CEC4;
	border-radius: 50%;
}

.year-filter-btn span {
	margin: 0 2em;
}

.year-filter-btn:hover {
	border: 1.164px solid #F8C580;
	background: rgba(248, 197, 128, 0.40);
}

.year-filter-btn:hover img {
	background-color: #F8C580;
}

.year-filter-btn.active {
	border: 1.164px solid #F8C580;
	background: rgba(248, 197, 128, 0.40);
}

.year-filter-btn.active .logo img {
	background-color: #F8C580;
}

/* Blog Posts Grid */
.blog-posts {
	padding: 0 0 80px;
}

.blog-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 30px;
	margin-bottom: 60px;
}

.blog-card {
	background: white;
	border-radius: var(--radius);
	overflow: hidden;
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
	transition: all 0.3s ease;
}

.blog-card:hover {
	box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
}

.blog-card-link {
	text-decoration: none;
	color: inherit;
	display: block;
}

.blog-card-image {
	width: 100%;
	overflow: hidden;
}

.blog-card-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: var(--radius);
	aspect-ratio: 16/9;
}

.blog-card-content {
	padding: 25px;
}

.blog-card-meta {
	display: flex;
	align-items: center;
	gap: 0.5em;
	margin-bottom: 15px;
}

.blog-card-date {
	display: inline-block;
	background-color: #5a5d51;
	color: white;
	padding: 10px 20px;
	border-radius: 22px;
	font-size: 1rem;
	font-weight: 500;
}

.blog-card-title {
	font-size: 1.625rem;
	font-weight: 600;
	line-height: 1.4;
	color: #4a463f;
	margin-bottom: 15px;
}

.blog-card-excerpt {
	font-size: 1rem;
	line-height: 1.6;
	color: #655744;
}

/* Blog Empty State */
.blog-empty {
	grid-column: 1 / -1;
	text-align: center;
	padding: 60px 0;
	font-size: 1.2rem;
	color: #655744;
}

/* Blog Pagination */
.blog-pagination {
	display: flex;
	justify-content: center;
	margin-top: 40px;
}

.blog-pagination ul {
	display: flex;
	gap: 10px;
	list-style: none;
}

.blog-pagination a {
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 44px;
	height: 44px;
	padding: 10px;
	border: 1px solid #4a463f;
	border-radius: var(--radius);
	color: #4a463f;
	text-decoration: none;
	font-weight: 500;
	font-size: 1.1rem;
	transition: all 0.3s ease;
}

.blog-pagination a:hover {
	background-color: #4a463f;
	color: #fbf8f4;
}

.blog-pagination .active a {
	background-color: #4a463f;
	color: #fbf8f4;
}

/* Override footer for blog page */

/* Responsive Design */
@media (max-width: 768px) {
	.blog-hero {
		padding: 80px 0 40px;
	}

	.blog-grid {
		grid-template-columns: 1fr;
		gap: 20px;
	}

	.year-filter-buttons {
		overflow-x: auto;
	}

	.year-filter-btn {
		width: 100%;
		max-width: 300px;
	}

	/* Search responsive */
	.search-input-wrapper input {
		padding: 14px 45px 14px 45px;
		font-size: 1rem;
	}

	.search-icon {
		left: 15px;
	}

	.search-clear-btn {
		right: 15px;
	}
}

/* ==========================================================================
   Blog Post Page Styles
   ========================================================================== */

.blog-post-page {
	background: linear-gradient(180deg, #ffffff 0%, #ffffff 100%, #f2ece0 100%);
	min-height: 100vh;
	padding-top: 106px;
}

/* Back to Blog */
.blog-post-back {
	padding: 40px 0;
}

.back-link {
	display: inline-flex;
	align-items: center;
	gap: 13px;
	color: #8c816c;
	font-size: 1em;
	font-weight: var(--fw-medium);
	text-decoration: none;
	transition: all var(--transition-fast);
}

.back-link:hover {
	color: var(--clr-secondary);
	transform: translateX(-5px);
}

.back-link svg {
	flex-shrink: 0;
}

/* Featured Image */
.blog-post-hero {
	padding: 0 0 60px 0;
}

.blog-post-image {
	width: 100%;
	background-color: #d6cec4;
	border-radius: 26px;
	overflow: hidden;
}

.blog-post-image img {
	width: 100%;
	aspect-ratio: 16/9;
	object-fit: cover;
}

/* Post Content */
.blog-post-content {
	padding: 0 0 80px 0;
}

.post-content-wrapper {
	margin: 0 auto;
}

.post-meta {
	color: var(--clr-text-dark);
	margin-bottom: 20px;
}

.post-date {
	font-size: 1em;
	font-weight: var(--fw-medium);
}

.post-title {
	font-size: clamp(2.5rem, 5vw, 4rem);
	font-weight: var(--fw-bold);
	color: var(--clr-blog-content);
	line-height: 1;
	margin: 0 0 40px 0;
}

.post-body {
	font-size: clamp(1.125rem, 2vw, 1.5rem);
	line-height: 1.67;
	color: var(--clr-blog-content);
}

.post-body h2 {
	font-size: clamp(1.75rem, 3.5vw, 2.125rem);
	font-weight: var(--fw-semibold);
	color: var(--clr-blog-content);
	margin: 40px 0 20px 0;
}

.post-body h3 {
	font-size: clamp(1.5rem, 3vw, 1.75rem);
	font-weight: var(--fw-semibold);
	color: var(--clr-blog-content);
	margin: 30px 0 15px 0;
}

.post-body p {
	margin: 0 0 20px 0;
}

.post-body ul,
.post-body ol {
	margin: 0 0 20px 0;
	padding-left: 36px;
}

.post-body li {
	margin-bottom: 10px;
}

.post-body blockquote {
	border-left: 4px solid var(--clr-secondary);
	padding-left: 20px;
	margin: 30px 0;
	font-style: italic;
	color: #666;
}

.post-body img {
	max-width: 100%;
	height: auto;
	border-radius: var(--br-lg);
	margin: 30px 0;
}

/* Navigation */
.blog-post-navigation {
	padding: 0 0 80px 0;
}

.post-nav {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 52.879px;
	margin: 0 auto;
}

.nav-link {
	display: flex;
	align-items: center;
	gap: 1em;
	color: #4a463f;
	padding: 1.5em 2em;
	font-size: 1em;
	border-radius: 22px;
	font-weight: var(--fw-semibold);
	text-decoration: none;
	transition: all var(--transition-fast);
	background: #fbf8f4;
}

.nav-link:hover {
	color: var(--clr-secondary);
	transform: translateY(-2px);
}

.nav-link svg {
	flex-shrink: 0;
}

.nav-prev {
	flex-direction: row;
}

.nav-next {
	flex-direction: row-reverse;
}

/* Blog Post Responsive Design */
@media (max-width: 768px) {
	.blog-post-back {
		padding: 30px 0;
	}

	.blog-post-hero {
		padding: 0 0 40px 0;
	}

	.blog-post-content {
		padding: 0 0 60px 0;
	}

	.post-title {
		margin-bottom: 30px;
	}

	.post-body {
		font-size: 1.125rem;
	}

	.post-nav {
		gap: 30px;
		padding: 20px 10px;
		max-width: 300px;
	}

	.nav-link {
		font-size: 18px;
		gap: 10px;
	}

	.blog-post-navigation {
		padding: 0 0 60px 0;
	}
}

@media (max-width: 480px) {
	.back-link {
		font-size: 16px;
	}

	.post-date {
		font-size: 16px;
	}

	.post-body {
		font-size: 1rem;
	}

	.post-nav {
		gap: 20px;
		padding: 0.5em 1em
	}
}

/* ==========================================================================
   Services Section Styles
   ========================================================================== */
.services-section {
	position: relative;
	padding: 120px 0;
	background: linear-gradient(90deg, var(--clr-service-bg-dark) 0%, var(--clr-service-bg-dark) 100%);
	overflow: hidden;
}

/* Section Header */
.services-header {
	margin-bottom: 60px;
}

.section-badge {
	display: inline-flex;
	align-items: center;
	gap: 14px;
	padding: 10px 20px;
	background: linear-gradient(90deg, rgba(218, 172, 110, 0.11) 0%, rgba(218, 172, 110, 0) 100%);
	border-left: 2px solid var(--clr-secondary);
	margin-bottom: 14px;
	white-space: nowrap;
	width: fit-content;
}

.badge-icon {
	color: var(--clr-secondary);
}

.section-badge span {
	font-family: var(--ff-primary);
	font-size: 18px;
	font-weight: var(--fw-medium);
	color: var(--clr-service-beige);
}

.section-title-row {
	display: flex;
	align-items: center;
	gap: 12px;
	width: 100%;
}

.section-title {
	font-family: var(--ff-secondary);
	font-size: clamp(40px, 5vw, 64px);
	font-weight: 300;
	color: var(--clr-service-beige);
	margin: 0;
	letter-spacing: -1.28px;
}

.section-title span {
	font-style: italic;
	background: linear-gradient(90deg, var(--clr-service-gold) 4.9492%, var(--clr-service-gold-light) 72.716%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
}

.title-divider {
	flex: 1;
	height: 1px;
	background: var(--clr-service-divider);
	border-radius: 22px;
	max-width: 820px;
}

.title-logo {
	width: 42px;
	height: 42px;
	flex-shrink: 0;
}

.title-logo img {
	width: 100%;
	height: auto;
}

/* Carousel */
.services-carousel {
	position: relative;
	margin: 0 -30px;
	padding: 0 30px;
}

.services-carousel.carousel-1 {
	margin-bottom: 60px;
}

.services-carousel.carousel-2 {
	margin-bottom: 80px;
}

.carousel-nav {
	display: none;
}

.carousel-nav:hover {
	background: rgba(0, 0, 0, 0.8);
	transform: translateY(-50%) scale(1.1);
}

.carousel-nav.prev {
	left: 0;
}

.carousel-nav.next {
	right: 0;
}

.carousel-container {
	overflow: hidden;
	padding: 0;
}

.carousel-track {
	display: flex;
	gap: 25.465px;
	animation: scroll-left 30s linear infinite;
}

.carousel-2 .carousel-track {
	animation: scroll-right 30s linear infinite;
}

.services-carousel:hover .carousel-track {
	animation-play-state: paused;
}

@keyframes scroll-left {
	0% {
		transform: translateX(0);
	}

	100% {
		transform: translateX(-50%);
	}
}

@keyframes scroll-right {
	0% {
		transform: translateX(-50%);
	}

	100% {
		transform: translateX(0);
	}
}

/* Service Cards */
.service-card {
	flex-shrink: 0;
	width: 487.184px;
	height: 625.658px;
	background: var(--clr-dark);
	border: 5.093px solid var(--clr-service-border);
	border-radius: 13.691px;
	overflow: hidden;
	position: relative;
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.service-card:hover {
	transform: translateY(-5px);
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5);
}

.card-image {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.card-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.card-overlay {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	height: 100%;
	background: linear-gradient(to bottom, transparent 20.494%, rgba(19, 21, 12, 0) 52.381%, var(--clr-service-bg-dark) 94.627%);
}

.card-content {
	position: relative;
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

.card-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 17.826px;
}

.card-number {
	font-family: var(--ff-primary);
	font-size: 17.826px;
	font-weight: var(--fw-regular);
	color: var(--clr-service-beige);
	letter-spacing: -0.3565px;
}

.card-number-logo {
	width: 3em;
	height: 3em;
}

.card-body {
	display: flex;
	flex-direction: column;
	gap: 10.186px;
}

.card-title {
	font-family: var(--ff-primary);
	font-size: 38px;
	font-weight: var(--fw-medium);
	letter-spacing: -0.76px;
	margin: 0;
}

.card-title span {
	background: linear-gradient(90deg, var(--clr-service-gold) 28.184%, var(--clr-service-gold-light) 23.221%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
}

.card-description {
	font-family: var(--ff-primary);
	font-size: 24px;
	font-weight: var(--fw-medium);
	color: var(--clr-service-beige);
	line-height: 33.105px;
	margin: 0;
	width: 384.523px;
}

/* Carousel Dots */
.carousel-dots {
	display: none;
}

.dot {
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.3);
	cursor: pointer;
	transition: all 0.3s ease;
}

.dot.active {
	background: var(--clr-secondary);
	width: 24px;
	border-radius: 4px;
}

/* Decorative Elements */
.services-glow {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	pointer-events: none;
	overflow: hidden;
}

.glow-circle {
	position: absolute;
	border-radius: 50%;
	mix-blend-mode: plus-lighter;
}

.glow-1,
.glow-2,
.glow-3 {
	width: 639px;
	height: 639px;
	right: 17px;
	top: 28.48vh;
	opacity: 0.28;
	background: radial-gradient(circle, rgba(255, 255, 255, 0.1) 0%, transparent 70%);
}

.glow-2 {
	transform: scale(0.8);
}

.glow-3 {
	transform: scale(0.6);
}

.glow-4,
.glow-5,
.glow-6 {
	width: 765px;
	height: 765px;
	left: -662px;
	top: 32.13vh;
	opacity: 0.07;
	background: radial-gradient(circle, rgba(255, 255, 255, 0.05) 0%, transparent 70%);
}

.glow-5 {
	transform: scale(0.8);
}

.glow-6 {
	transform: scale(0.6);
}

/* Divider Bar */
.services-divider {
	position: absolute;
	bottom: 100px;
	left: 50%;
	transform: translateX(-50%);
	display: flex;
	align-items: center;
	gap: 12px;
	width: 100%;
	max-width: 1100px;
}

.divider-line {
	position: relative;
	height: 1px;
	flex: 1;
}

.divider-line.left {
	background: linear-gradient(90deg, rgb(166, 129, 79) 58.38%, rgb(248, 197, 128) 81.62%);
}

.divider-line.left::before {
	content: '';
	display: block;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 18px;
	height: 13px;
	background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="18" height="13" viewBox="0 0 18 13" fill="none"><path d="M9.60727 0.325076C8.97243 -0.108075 8.13705 -0.108076 7.50221 0.325076L0.815688 4.8873C-0.270914 5.62869 -0.270913 7.23114 0.815688 7.97253L7.50221 12.5348C8.13705 12.9679 8.97243 12.9679 9.60727 12.5348L16.2938 7.97253C17.3804 7.23114 17.3804 5.62869 16.2938 4.8873L9.60727 0.325076Z" fill="%23FAD39F"/></svg>');
	background-size: contain;
	background-repeat: no-repeat;
}

.divider-line.right {
	background: linear-gradient(-90deg, rgb(166, 129, 79) 58.38%, rgb(248, 197, 128) 81.62%);
}

.divider-line.right::after {
	content: '';
	display: block;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 18px;
	height: 13px;
	background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="18" height="13" viewBox="0 0 18 13" fill="none"><path d="M9.60727 0.325076C8.97243 -0.108075 8.13705 -0.108076 7.50221 0.325076L0.815688 4.8873C-0.270914 5.62869 -0.270913 7.23114 0.815688 7.97253L7.50221 12.5348C8.13705 12.9679 8.97243 12.9679 9.60727 12.5348L16.2938 7.97253C17.3804 7.23114 17.3804 5.62869 16.2938 4.8873L9.60727 0.325076Z" fill="%23FAD39F"/></svg>');
	background-size: contain;
	background-repeat: no-repeat;
}

.divider-logo {
	width: 42px;
	height: 42px;
	flex-shrink: 0;
}

.divider-logo img {
	width: 100%;
	height: auto;
}

/* Responsive Design */
@media (max-width: 1200px) {
	.service-card {
		width: 350px;
		height: 450px;
	}

	.card-description {
		font-size: 20px;
		width: 280px;
	}

	.card-title {
		font-size: 32px;
	}

	.services-carousel.carousel-1 {
		margin-bottom: 50px;
	}

	.services-carousel.carousel-2 {
		margin-bottom: 60px;
	}
}

@media (max-width: 768px) {
	.services-section {
		padding: 80px 0;
	}

	.services-carousel {
		margin: 0 -20px;
		padding: 0 20px;
	}

	.services-carousel.carousel-1 {
		margin-bottom: 40px;
	}

	.services-carousel.carousel-2 {
		margin-bottom: 50px;
	}

	.service-card {
		width: 280px;
		height: 380px;
	}

	.card-title {
		font-size: 28px;
	}

	.card-description {
		font-size: 18px;
		width: 100%;
	}

	.services-header {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}

	.section-title-row {
		flex-direction: column;
		align-items: center;
		gap: 20px;
	}

	.title-divider,
	.title-logo {
		display: none;
	}
}

@media (max-width: 480px) {
	.service-card {
		width: 240px;
		height: 320px;
	}

	.card-title {
		font-size: 24px;
	}

	.card-description {
		font-size: 16px;
	}

	.services-divider {
		bottom: 50px;
	}

	.services-carousel.carousel-1 {
		margin-bottom: 30px;
	}

	.services-carousel.carousel-2 {
		margin-bottom: 40px;
	}
}

/* ==========================================================================
   Gabriela Bertolini Section
   ========================================================================== */
.gabriela-section {
	position: relative;
	background:
		url('./../images/wood-pattern-2.svg') top left no-repeat,
		url('./../images/wood-pattern-1.svg') bottom right no-repeat,
		#F5EDE1;

	display: flex;
	justify-content: center;
	align-items: center;
	min-height: 100vh;
	padding: 10em 0;
}

.gabriela-top-arrow {
	position: absolute;
	top: -36px;
	left: 50%;
	transform: translateX(-50%);
}

/* Main Content Layout */
.gabriela-content {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 80px;
	align-items: center;
	position: relative;
	z-index: 10;
}

/* Left Column - Info */
.gabriela-info {
	display: flex;
	flex-direction: column;
	gap: 30px;
}

.gabriela-info .section-badge {
	color: #3f311d;
	width: fit-content;
}

.gabriela-info .section-badge::after {
	width: 0;
	height: 0;
	background: transparent;
}

.gabriela-title {
	font-family: var(--ff-secondary);
	font-size: clamp(2.5rem, 5vw, 4rem);
	font-weight: 300;
	line-height: 1.1;
	margin: 0;
	color: #3F311D;
}

.gabriela-title .gradient-text {
	background: linear-gradient(90deg, var(--clr-service-gold) 28.694%, var(--clr-service-gold-light) 95.447%);
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	font-weight: 400;
}

.gabriela-description {
	font-size: clamp(1.1rem, 2vw, 1.5rem);
	line-height: 1.5;
	color: var(--clr-text-dark);
	margin: 0;
}

.gabriela-description .highlight {
	color: var(--clr-service-gold);
	font-weight: var(--fw-medium);
}

.gabriela-info .cta-button {
	width: fit-content;
	padding: 1em 3em;
}

/* Right Column - Photo */
.gabriela-photo-container {
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
}

.gabriela-photo-border {
	width: 100%;
	max-width: 571px;
	height: 763px;
	border: 9px solid var(--clr-service-beige);
	border-radius: 4px;
	overflow: hidden;
	position: relative;
}

.gabriela-photo {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	overflow: visible;
}

.gabriela-photo-overlay {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: linear-gradient(106.903deg, rgba(13, 22, 9, 0) 48.019%, rgba(13, 22, 9, 0.55) 200.24%),
		linear-gradient(180deg, rgba(13, 22, 9, 0) 42.949%, rgba(13, 22, 9, 0.55) 107.28%);
	pointer-events: none;
}

/* OAB Badge */
.oab-badge {
	position: absolute;
	bottom: 30%;
	left: -4em;
	display: flex;
	align-items: center;
	border-radius: 260px;
	border: 1.164px solid #F8C580;
	background: rgba(248, 197, 128, 0.40);
	backdrop-filter: blur(1em);
	animation: float 3s ease-in-out infinite;
}

@keyframes float {
	0% {
		transform: translateY(0px);
	}

	50% {
		transform: translateY(-10px);
	}

	100% {
		transform: translateY(0px);
	}
}

.oab-badge .oab-icon img {
	padding: 0.7em;
	width: 3em;
	min-width: 3em;
	height: 3em;
	background-color: #F8C580;
	border-radius: 50%;
}

.oab-badge .oab-text {
	margin: 0 1em;
	white-space: nowrap;
}

/* Decorative Seal */
.gabriela-seal {
	position: absolute;
	top: 25%;
	right: -5%;
}

.gabriela-seal img {
	width: 5em;
	height: 5em;
}

/* Responsive Design */
@media (max-width: 1024px) {
	.gabriela-content {
		gap: 60px;
	}

	.gabriela-photo-border {
		height: 600px;
	}
}

@media (max-width: 768px) {
	.gabriela-section {
		padding: 80px 0;
	}

	.gabriela-content {
		grid-template-columns: 1fr;
		gap: 40px;
	}

	.gabriela-info {
		text-align: center;
		align-items: center;
	}

	.gabriela-photo-border {
		height: 500px;
		max-width: 400px;
	}

	.oab-badge {
		left: 0%;
		bottom: 10%;
	}

	.gabriela-seal {
		top: 10%;
		right: 20px;
	}

	.gabriela-seal img {
		width: 70px;
		height: 70px;
	}
}

@media (max-width: 480px) {
	.gabriela-section {
		padding: 5em 0;
	}

	.gabriela-photo-border {
		height: 400px;
		max-width: 300px;
	}

	.oab-icon img {
		width: 36px;
		height: 36px;
	}

	.oab-text {
		font-size: 14px;
	}

	.gabriela-seal {
		right: -10px;
	}

	.gabriela-seal img {
		width: 60px;
		height: 60px;
	}
}
