/**
 * RIIC Real Weddings – mockup: 3 cột, mỗi cột = 1 bài viết.
 */

.riic-page-real-weddings {
	--riic-rw-bg: #f5f0eb;
	--riic-rw-intro: #8a7b6e;
	--riic-rw-name: #a66b5b;
	--riic-rw-text: #5a5249;
	--riic-rw-rule: #c9a89a;
	--riic-rw-font: "1FTV VIP Dagine", Georgia, "Times New Roman", serif;
}

.riic-template-riic-real-weddings,
.riic-template-riic-real-weddings #wrapper,
.riic-template-riic-real-weddings #main,
.riic-template-riic-real-weddings #content,
.riic-wedding-single #wrapper,
.riic-wedding-single #main,
.riic-wedding-single #content,
.riic-page-real-weddings,
.riic-page-real-weddings .sections {
	background-color: var(--riic-rw-bg) !important;
}

.riic-page-real-weddings .page-title,
.riic-page-real-weddings .entry-header,
.riic-page-real-weddings .page-header {
	display: none !important;
}

.riic-page-real-weddings #content {
	padding: 0 !important;
	max-width: 100%;
	overflow: visible;
}

.riic-page-wedding-single #content {
	padding: 0 !important;
}

.riic-rw-ux-section>.section-content,
.riic-rw-ux-section .section-content {
	margin-left: auto;
	margin-right: auto;
	padding: 0;
}

@media (min-width: 850px) {

	.riic-rw-ux-section>.section-content,
	.riic-rw-ux-section .section-content {
		padding: 0 200px;
	}
}

.riic-rw-ux-section .riic-rw-intro-wrap .text {
	max-width: 576px;
	margin: 0 auto;
}

.riic-rw-col-grid>.col-inner {
	padding: 0 !important;
}

/* ── Section ── */
.riic-rw-section {
	padding: 88px 0 100px;
	background-color: var(--riic-rw-bg);
}

.riic-rw-inner {
	max-width: 1180px;
	margin: 0 auto;
	padding: 0 28px;
}

.riic-rw-header {
	text-align: center;
	margin-bottom: 56px;
}

.riic-rw-intro {
	color: var(--riic-rw-intro) !important;
	margin: 0 auto !important;
	text-align: center;
	color: var(--riic-svc-brown);
	margin: 0;
	letter-spacing: 1px;
	display: block;
	margin: 0 !important;
	padding: 0 !important;
	border: 0;
	font-family: var(--riic-font) !important;
	font-size: 28px !important;
	font-weight: 400 !important;
	font-style: normal !important;
	line-height: 1.5 !important;
	letter-spacing: 1px;
	text-transform: uppercase;
	-webkit-font-smoothing: antialiased;
}

/* 3 cột × N hàng */
.riic-rw-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 48px 40px;
	align-items: stretch;
	list-style: none;
	margin: 0;
	padding: 0;
}

/* ── Card = 1 blog post ── */
.riic-rw-card {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	margin: 0;
	padding: 0;
	list-style: none;
}

.riic-rw-card-hit {
	position: absolute;
	inset: 0;
	z-index: 5;
	display: block;
	text-indent: -9999px;
	overflow: hidden;
}

.riic-rw-card-media {
	position: relative;
	z-index: 1;
	width: 100%;
	margin: 0 0 24px;
	aspect-ratio: 3 / 4;
	overflow: hidden;
	background: #ebe4dc;
}

.riic-rw-card-img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
	display: block;
}

.riic-rw-card-img--placeholder {
	min-height: 100%;
}

.riic-rw-name {
	font-family: var(--riic-rw-font) !important;
	font-size: clamp(14px, 1.05vw, 16px) !important;
	font-weight: 400 !important;
	letter-spacing: 2px;
	text-transform: uppercase;
	color: var(--riic-rw-name) !important;
	margin: 0 0 14px !important;
	line-height: 1.45 !important;
	text-align: center;
	width: 100%;
}

.riic-rw-excerpt {
	font-family: "Roboto", sans-serif !important;
	font-size: clamp(12px, 0.88vw, 13px) !important;
	font-weight: 400 !important;
	line-height: 1.3 !important;
	color: var(--riic-rw-text) !important;
	margin: 0 auto 24px !important;
	padding: 0 4px;
	text-align: left;
}

.riic-rw-rule {
	display: block;
	width: 100%;
	height: 1px;
	background-color: var(--riic-rw-rule);
	margin-top: auto;
	flex-shrink: 0;
}

/* ── Pagination ── */
.riic-rw-pagination {
	margin-top: 56px;
	text-align: center;
}

.riic-rw-pagination ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.riic-rw-pagination li {
	display: inline-block;
	margin: 0 4px;
}

.riic-rw-pagination a,
.riic-rw-pagination span {
	font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-size: 14px;
	color: var(--riic-rw-text);
	padding: 6px 12px;
	text-decoration: none;
}

.riic-rw-pagination .current {
	color: var(--riic-rw-name);
	font-weight: 600;
}

.riic-rw-empty {
	text-align: center;
	font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
	color: var(--riic-rw-text);
	padding: 32px 0;
}

/* ── Single bài viết ── */
.riic-rw-single {
	padding: 0 0 clamp(72px, 8vw, 112px);
}

.riic-rw-single-hero {
	width: 100%;
	margin: 0;
	line-height: 0;
	overflow: hidden;
	background: #ebe4dc;
}

.riic-rw-single-img {
	width: 100%;
	height: clamp(260px, 42vw, 520px);
	object-fit: cover;
	object-position: center center;
	display: block;
}

.riic-rw-inner--single {
	max-width: 820px;
	margin: 0 auto;
	padding: clamp(48px, 6vw, 72px) clamp(24px, 4vw, 40px) 0;
	box-sizing: border-box;
}

.riic-rw-single-header {
	margin: 0 0 clamp(28px, 3.5vw, 40px);
}

.riic-rw-single-title {
	font-family: var(--riic-rw-font) !important;
	font-size: clamp(17px, 1.65vw, 20px) !important;
	font-weight: 400 !important;
	letter-spacing: 1px;
	color: var(--riic-rw-name) !important;
	margin: 0 !important;
	line-height: 1.45 !important;
	text-align: center;
}

.riic-rw-single-title--caps {
	text-transform: uppercase;
	letter-spacing: 2px;
}

.riic-rw-single-body {
	font-family: "Roboto", "Helvetica Neue", Helvetica, Arial, sans-serif !important;
	font-weight: 300 !important;
	font-size: clamp(14px, 1vw, 15px) !important;
	line-height: 1.78 !important;
	color: var(--riic-rw-text) !important;
	text-align: left;
}

.riic-rw-single-body p {
	margin: 0 0 22px;
	text-align: left;
}

.riic-rw-single-body p:empty,
.riic-rw-single-body p:has(> br:only-child) {
	display: none;
	margin: 0;
}

.riic-rw-single-body strong {
	font-weight: 500;
}

.riic-rw-single-body .riic-rw-content-img,
.riic-rw-single-body img {
	width: 100%;
	height: auto;
	display: block;
	margin: clamp(28px, 3.5vw, 40px) 0;
	border-radius: 0;
}

.riic-rw-single-body figure {
	margin: clamp(28px, 3.5vw, 40px) 0;
}

.riic-rw-single-body figure img {
	margin: 0;
}

.riic-rw-collage {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: 10px;
	margin: clamp(32px, 4vw, 48px) 0 0;
	align-items: stretch;
}

.riic-rw-collage__left,
.riic-rw-collage__right {
	min-height: 0;
}

.riic-rw-collage__left img {
	width: 100%;
	height: 100%;
	min-height: 100%;
	object-fit: cover;
	object-position: center center;
	margin: 0;
	display: block;
}

.riic-rw-collage__right {
	display: grid;
	grid-template-rows: 1fr 1fr;
	gap: 10px;
}

.riic-rw-collage__right img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
	margin: 0;
	display: block;
}

@media (max-width: 849px) {

	body.riic-template-riic-real-weddings,
	body.riic-page-real-weddings,
	.riic-page-real-weddings {
		overflow-x: clip;
	}

	.riic-page-real-weddings #content {
		overflow-x: clip;
	}

	.riic-rw-section,
	.riic-rw-ux-section {
		padding: 56px 20px 64px !important;
	}

	.riic-rw-ux-section>.section-content,
	.riic-rw-ux-section .section-content {
		padding: 0 !important;
	}

	.riic-rw-row-intro .col-inner {
		padding: 0 !important;
	}

	.riic-rw-intro {
		font-size: clamp(18px, 4.8vw, 22px) !important;
		line-height: 1.45 !important;
		letter-spacing: 0.5px;
	}

	.riic-rw-ux-section .riic-rw-intro-wrap .text {
		max-width: 100%;
		padding: 0 4px;
	}

	.riic-page-real-weddings .gap-element {
		height: 28px !important;
		min-height: 0 !important;
	}

	.riic-rw-inner {
		padding: 0 16px;
	}

	.riic-rw-header {
		margin-bottom: 36px;
	}

	.riic-rw-grid {
		grid-template-columns: 1fr;
		gap: 40px;
		max-width: min(100%, 340px);
		margin-left: auto;
		margin-right: auto;
	}

	.riic-rw-card-media {
		margin-bottom: 18px;
		aspect-ratio: 3 / 4;
	}

	.riic-rw-name {
		font-size: 13px !important;
		letter-spacing: 1.5px;
		margin-bottom: 12px !important;
	}

	.riic-rw-excerpt {
		max-width: none;
		font-size: 13px !important;
		line-height: 1.55 !important;
		margin-bottom: 18px !important;
		padding: 0;
		text-align: left;
	}

	.riic-rw-pagination {
		margin-top: 40px;
	}

	.riic-rw-single-img {
		height: clamp(220px, 56vw, 360px);
	}

	.riic-rw-inner--single {
		padding: 40px 20px 0;
	}

	.riic-rw-single-body {
		font-size: 14px !important;
		line-height: 1.72 !important;
	}

	.riic-rw-collage {
		grid-template-columns: 1fr;
		gap: 8px;
	}

	.riic-rw-collage__right {
		grid-template-rows: auto auto;
	}

	.riic-rw-collage__left img,
	.riic-rw-collage__right img {
		height: auto;
		min-height: 0;
		aspect-ratio: 4 / 3;
	}
}

/* ── Tablet (550–849px) ── */
@media (min-width: 550px) and (max-width: 849px) {
	.riic-page-real-weddings {
		--riic-pad-x: 32px;
		--riic-section-y: 68px;
	}

	.riic-rw-section,
	.riic-rw-ux-section {
		padding: var(--riic-section-y) var(--riic-pad-x) !important;
	}

	.riic-rw-intro {
		font-size: clamp(22px, 3vw, 26px) !important;
	}

	.riic-rw-ux-section .riic-rw-intro-wrap .text {
		padding: 0;
		max-width: min(100%, 640px);
		margin-left: auto;
		margin-right: auto;
	}

	.riic-rw-inner {
		padding: 0;
		max-width: min(100%, 720px);
		margin-left: auto;
		margin-right: auto;
	}

	.riic-rw-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: var(--riic-m-block-gap, 28px) var(--riic-m-stack-gap, 20px);
		max-width: 100%;
	}

	.riic-rw-card-media {
		aspect-ratio: 3 / 4;
	}

	.riic-rw-inner--single {
		padding: var(--riic-section-y) var(--riic-pad-x) 0;
		max-width: min(100%, 680px);
		margin-left: auto;
		margin-right: auto;
	}

	.riic-rw-single-img {
		height: clamp(360px, 48vw, 480px);
	}

	.riic-rw-collage {
		grid-template-columns: 1.1fr 0.9fr;
		gap: 12px;
	}

	.riic-rw-collage__left img {
		aspect-ratio: 3 / 4;
	}

	.riic-rw-collage__right img {
		aspect-ratio: 4 / 3;
	}
}