/*
 * Flexible-content section styles (template-parts/sections/*.php).
 * Loaded after main.css so it can use the same custom properties.
 */

.oans-section {
	max-width: var(--oans-container-width);
	margin: auto;
}
.oans-section__eyebrow {
	text-transform: uppercase;
	letter-spacing: 0.08em;
	font-size: 0.85rem;
	color: var(--oans-color-heading);
	font-weight: 600;
}

/* ---------------- Hero ---------------- */
.oans-hero {
	max-width: none;
	padding: 0;
	background-color: var(--oans-color-cream-bg);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	height: 804.52px;
	display: flex;
	align-content: center;
	align-items: center;
}
.oans-hero__inner {
	width: 100%;
	max-width: var(--oans-container-width);
	margin-inline: auto;
	padding: 3rem 1.5rem;
}
.oans-hero__content {
	max-width: 675px;
}
.oans-hero__eyebrow {
	color: #C67607;
	font-family: "Arial Rounded MT";
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: 20.089px; /* 125.555% */
	letter-spacing: 2px;
	text-transform: uppercase;
}
.oans-hero__heading {
	color: #82A8A4;
	font-family: "Minion 3 Caption";
	font-size: 85px;
	font-style: normal;
	font-weight: 500;
	line-height: 90px; /* 105.882% */
	margin-bottom: 0.5rem;
}
.oans-hero__heading em {
	color: #82A8A4;
	font-style: italic;
}
.oans-hero__description {
	color: #1A1A1A;
	text-align: justify;
	font-family: "Arial Rounded MT";
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: 28px;
	max-width: 597px;
}
/* ---------------- Reviews bar ---------------- */
.oans-reviews-bar {
	max-width: none;
	background: var(--oans-color-mustard);
}
.oans-reviews-bar__inner {
	max-width: 1441px;
	margin-inline: auto;
	display: grid;
	gap: 1.5rem;
	align-items: center;
}
.oans-reviews-bar__text {
	display: flex;
	flex-direction: column;
	align-items: center;
	max-width: 447px;
	margin: auto;
}
.oans-reviews-bar__text p {
	color: #C67607;
	text-align: center;
	font-family: "Minion 3 Caption";
	font-size: 25px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	text-transform: capitalize;
	margin: 0 0 1rem;
}
.oans-reviews-bar__text .oans-button--outline {
	background: #fff;
	color: #C67607;
	border: none;
}
.oans-reviews-bar__text .oans-button--outline:hover,
.oans-reviews-bar__text .oans-button--outline:focus {
	background: #fff;
	color: #C67607;
	opacity: 0.85;
}
.oans-reviews-bar__widgets {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 1rem;
}
.oans-reviews-bar__widget {
	border-radius: 6px;
	padding: 0;
	flex: unset;
	min-height: 90px;
}

@media (min-width: 900px) {
	.oans-reviews-bar__inner {
		grid-template-columns: 1fr 1fr;
	}
}

/* ---------------- Masonry split (left variant content width) ---------------- */
.oans-split--masonry-left .oans-split__content {
	max-width: 633px;
}

/* ---------------- Category grid ---------------- */
.oans-category-grid {
	text-align: center;
	background: var(--oans-color-cream-bg);
	max-width: none;
}
.oans-category-grid__header {
	max-width: 760px;
	margin-inline: auto;
}
.oans-category-grid__description {
	color: #1A1A1A;
	margin-bottom: 2rem;
	text-align: center;
}
.oans-category-grid__sub-heading {
	position: relative;
	color: #82A8A4;
	text-align: center;
	font-family: "Minion 3 Caption";
	font-size: 31.358px;
	font-style: normal;
	font-weight: 500;
	line-height: 46.41px; /* 148% */
	padding-bottom: 0.75rem;
	margin-bottom: 0.75rem;
}
.oans-category-grid__sub-heading::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 48px;
	height: 2px;
	background: #82A8A4;
}
.oans-category-grid__intro {
	color: #1A1A1A;
	text-align: center;
}
.oans-category-grid__items {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 2rem 2.5rem;
	text-align: left;
	margin-top: 2.5rem;
}
.oans-category-grid__item {
	display: flex;
	align-items: center;
	gap: 60px;
	background: #fff;
}
.oans-category-grid__image {
	width: clamp(150px, 32vw, 343px);
	height: auto;
	aspect-ratio: 343 / 276;
	flex-shrink: 0;
	border-radius: 4px 0 0 4px;
	object-fit: cover;
}
/*
 * Above 1024px the items grid goes back to 2 columns (see
 * .oans-category-grid__items), so each item only gets about half the
 * viewport width — the 32vw above is calibrated for the full-width
 * single-column layout below that breakpoint and would otherwise still
 * balloon toward its 343px cap here, squeezing the title into a few
 * characters per line.
 */
@media (min-width: 1025px) {
	.oans-category-grid__image {
		width: clamp(150px, 16vw, 343px);
	}
}
.oans-category-grid__title {
	flex: 1;
	min-width: 0;
	margin: 0;
	text-align: left;
	color: #1A1A1A;
	font-family: "Minion 3 Caption";
	font-size: 25px;
	font-style: normal;
	font-weight: 400;
	line-height: 31.358px;
	padding-right: 60px;
}
.oans-category-grid__footer {
	max-width: 1307px;
	margin-inline: auto;
	margin-top: 77px;
	margin-bottom: 0;
}

/* ---------------- Split sections (jewelry / high-end / about / why-choose) ---------------- */
.oans-split__inner {
	display: grid;
	gap: 130px;
	align-items: center;
}
@media (max-width: 900px) {
	.oans-split__inner.oans-container {
		padding-left: 1.5rem;
		padding-right: 1.5rem;
	}
}
.oans-split--media-left .oans-split__media { order: 1; }
.oans-split--media-left .oans-split__content { order: 2; }
.oans-split--media-right .oans-split__media { order: 2; }
.oans-split--media-right .oans-split__content { order: 1; }

.oans-split__body p {
	color: #1A1A1A;
	text-align: justify;
	font-family: "Arial Rounded MT";
	font-size: 22.578px;
	font-style: normal;
	font-weight: 400;
	line-height: 31.358px;
}
.oans-split__collage {
	columns: 2;
	column-gap: 21.69px;
}
.oans-split__photo {
	display: block;
	width: 100%;
	height: auto;
	margin: 0 0 39.04px;
	border-radius: 12px;
	break-inside: avoid;
}
.oans-split__photo:nth-child(1) {
	margin-top: 2rem;
}
.masonry-image-right img.oans-img.oans-split__photo {
	margin: 0px;
	margin-bottom: 39.04px;
}
img.oans-img.oans-split__photo.oans-split__photo-3 {
	margin-top: 54.65px !important;
	display: unset;
}
.oans-split__single-image {
	border-radius: 6px;
	width: 100%;
}
.oans-split--left {
	max-width: none;
}
.oans-split--left .oans-split__inner {
	max-width: none;
	padding-inline: 0;
}
.oans-split--left.oans-split--media-left .oans-split__content {
	padding-right: max(1.5rem, calc((100vw - var(--oans-container-width)) / 2 + 1.5rem));
}
.oans-split--left.oans-split--media-left .oans-split__media {
	padding-left: 0;
}
.oans-split--left .oans-split__single-image {
	border-radius: 0;
	display: block;
}
.oans-split--left .oans-split__media {
	position: relative;
}
.oans-split--left .oans-split__media::before {
	content: "";
	position: absolute;
	top: 43%;
	left: 70%;
	transform: translate(-50%, -50%);
	width: 51%;
	aspect-ratio: 1 / 1;
	border-radius: 50%;
	background: rgba(130, 168, 164, 0.1);
	z-index: 0;
}
.oans-split--left .oans-split__media > * {
	position: relative;
	z-index: 1;
}
.oans-split--right {
	max-width: none;
	background-color: #FFFCF3;
}
.oans-split--right .oans-split__inner {
	max-width: none;
	padding-inline: 0;
}
.oans-split--right.oans-split--media-right .oans-split__content {
	padding-left: max(1.5rem, calc((100vw - var(--oans-container-width)) / 2 + 1.5rem));
}
.oans-split--right.oans-split--media-right .oans-split__media {
	padding-right: 0;
}
.oans-split--right .oans-split__single-image {
	border-radius: 0;
	display: block;
}
.oans-split--right .oans-split__media {
	position: relative;
}
.oans-split--right .oans-split__media::before {
	content: "";
	position: absolute;
	top: 43%;
	left: 30%;
	transform: translate(-50%, -50%);
	width: 51%;
	aspect-ratio: 1 / 1;
	border-radius: 50%;
	background: rgba(130, 168, 164, 0.1);
	z-index: 0;
}
.oans-split--right .oans-split__media > * {
	position: relative;
	z-index: 1;
}
.oans-split__content h2 {
	position: relative;
}
.oans-split__content h2::after {
	content: "";
	position: absolute;
	bottom: -10px;
	left: 0;
	width: 97.74px;
	height: 2px;
	background: #FEE5A5;
}

@media (min-width: 900px) {
	.oans-split__inner {
		grid-template-columns: 1fr 1fr;
	}
}

/* ---------------- Checklist (Why Choose) ---------------- */
.oans-checklist {
	list-style: none;
	margin: 0 0 1rem;
	padding: 0;
	display: grid;
	gap: 0.6rem;
}
.oans-checklist li {
	position: relative;
	padding-left: 1.75rem;
	color: var(--oans-color-text);
}
.oans-checklist li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.15em;
	width: 1.1rem;
	height: 1.1rem;
	background: url("/wp-content/uploads/2026/09/check.png") no-repeat center / contain;
}

/* ---------------- Icon feature row (furniture) ---------------- */
.oans-features {
	text-align: center;
	background-color: #FFFCF3;
	max-width: none;
}
.oans-features__header {
	max-width: 1159px;
	margin-inline: auto;
}
.oans-features__header p {
	color: #1A1A1A;
}
.oans-features__heading {
	position: relative;
	padding-bottom: 0.75rem;
	margin-bottom: 1.5rem;
}
.oans-features__heading::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 48px;
	height: 2px;
	background: #82A8A4;
}
.oans-features__sub-heading {
	color: #82A8A4;
	margin-top: 54px;
	margin-bottom: 23px;
}
.oans-features__row {
	display: grid;
	grid-template-columns: 1fr;
	gap: 15px;
	margin: 2rem 0 54.67px;
	text-align: left;
}
.oans-features__item {
	text-align: center;
	background: #fff;
	border: 1px solid #ece5d4;
	border-radius: 6px;
	padding: 47px 34px;
}
.oans-features__icon {
	width: 56px;
	height: 56px;
	margin-inline: auto;
	object-fit: contain;
	margin-bottom: 11.81px;
}
.oans-features__icon.oans-img--placeholder {
	border-radius: 50%;
	aspect-ratio: 1 / 1;
	width: 56px;
	height: 56px;
}
.oans-features__title {
	color: #1A1A1A;
	text-align: center;
	font-family: "Minion 3 Caption";
	font-size: 22.706px;
	font-style: normal;
	font-weight: 400;
	line-height: 21.286px;
	text-decoration-line: underline;
	text-decoration-style: solid;
	text-decoration-skip-ink: auto;
	text-decoration-thickness: auto;
	text-underline-offset: auto;
	text-underline-position: from-font;
}
.oans-features__item p {
	color: #1A1A1A;
	text-align: justify;
	font-family: "Arial Rounded MT";
	font-size: 16.348px;
	font-style: normal;
	font-weight: 400;
	line-height: 24.523px;
}
.oans-features__footer {
	max-width: 1204px;
	margin: auto;
}

@media (min-width: 700px) {
	.oans-features__row {
		grid-template-columns: repeat(4, 1fr);
		text-align: center;
	}
}

/* ---------------- CTA band ---------------- */
.oans-cta-band {
	max-width: none;
	padding: 0;
	background-color: var(--oans-color-footer-bg);
	background-size: cover;
	background-position: center;
	position: relative;
}
.oans-cta-band__overlay {
	background: unset;
	padding-block: 4rem;
}
.oans-cta-band__content {
	max-width: 1406px;
	margin-inline: auto;
	text-align: center;
	color: #fff;
}
.oans-cta-band__content h2 {
	color: #fff;
}
.oans-cta-band__content p {
	opacity: 0.9;
	margin-bottom: 1.5rem;
}
section.oans-section.oans-cta-band p {
	color: #FFF;
	text-align: center;
	font-family: "Arial Rounded MT";
	font-size: 27.319px;
	font-style: normal;
	font-weight: 400;
	line-height: 37.943px;
}

/* ---------------- FAQ ---------------- */
.oans-faq {
	max-width: 1295px;
}
.oans-faq h2 {
	text-align: center;
	color: #000;
}
.oans-faq__list {
	display: grid;
}
.oans-faq__item {
	border: none;
	border-radius: 0;
	border-bottom: 1px solid #ece5d4;
	padding: 1.15rem 0;
}
.oans-faq__question {
	cursor: pointer;
	list-style: none;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	color: #1A1A1A;
	font-family: "Minion 3 Caption";
	font-size: 22.58px;
	font-style: normal;
	font-weight: 500;
	line-height: 23.437px; /* 103.795% */
}
.oans-faq__question::-webkit-details-marker {
	display: none;
}
.oans-faq__question::after {
	content: "";
	flex-shrink: 0;
	width: 9px;
	height: 9px;
	border-right: 2px solid #1A1A1A;
	border-bottom: 2px solid #1A1A1A;
	transform: rotate(45deg);
	transition: transform 0.15s ease;
}
.oans-faq__item[open] .oans-faq__question::after {
	transform: rotate(-135deg);
}
.oans-faq__answer {
	margin-top: 0.75rem;
	color: var(--oans-color-muted-text);
}
.oans-faq__answer p {
	color: #1A1A1A;
	font-family: "Minion 3 Caption";
	font-size: 22.58px;
	font-style: normal;
	font-weight: 500;
	line-height: 23.437px;
}

/* ---------------- Mobile ---------------- */
@media (max-width: 900px) {
	.oans-split--left .oans-split__inner,
	.oans-split--right .oans-split__inner {
		padding-left: 1.5rem;
		padding-right: 1.5rem;
	}
	.oans-split--right.oans-split--media-right .oans-split__content {
		padding-left: 0;
	}
	.oans-split--left.oans-split--media-left .oans-split__content {
		padding-right: 0;
	}
	.oans-hero {
		position: relative;
		height: auto;
		min-height: 420px;
		padding-block: 3rem;
		background-position: left center;
	}
	.oans-hero::before {
		content: "";
		position: absolute;
		inset: 0;
		background: rgba(250, 246, 236, 0.6);
		z-index: 0;
	}
	.oans-hero__inner {
		position: relative;
		z-index: 1;
		padding: 0 1.5rem;
	}
	.oans-hero__heading {
		font-size: 42px;
		line-height: 1.15;
	}
	.oans-split__inner {
		gap: 2.5rem;
	}
	.oans-split--left .oans-split__media::before,
	.oans-split--right .oans-split__media::before {
		width: 70%;
	}
}

@media (max-width: 1024px) {
	.oans-category-grid__items {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 700px) {
	.oans-category-grid__item {
		flex-direction: column;
		align-items: stretch;
		gap: 1rem;
	}
	.oans-category-grid__image {
		width: 100%;
		max-width: none;
		height: auto;
		aspect-ratio: 4 / 3;
		border-radius: 4px;
	}
	.oans-category-grid__title {
		padding: 0 1.25rem 1.25rem;
	}
}

@media (max-width: 600px) {
	.oans-hero__heading {
		font-size: 34px;
	}
	.oans-hero__description {
		font-size: 15px;
		line-height: 1.6;
	}
	.oans-category-grid__sub-heading {
		font-size: 24px;
		line-height: 1.3;
	}
	.oans-features__title {
		font-size: 19px;
	}
	.oans-faq__question,
	.oans-faq__answer p {
		font-size: 17px;
		line-height: 1.5;
	}
	section.oans-section.oans-cta-band p {
		font-size: 18px;
		line-height: 1.5;
	}
}

/* Tablet */
@media (min-width: 601px) and (max-width: 900px) {
	.oans-features__item p {
		text-align: center;
	}
}
