/*
 * Theme Name:  Revision Child
 * Theme URI:   https://revision.codesupply.co/
 * Description: Revision Child Theme for Wefiliates
 * Author:      Wefiliates
 * Template:    revision
 * Version:     1.1.1
 */

.wf-page {
	width: 100%;
	padding-bottom: clamp(4rem, 8vw, 8rem);
}

.wf-eyebrow {
	margin: 0 0 .9rem;
	color: var(--cs-color-primary, #2457ff);
	font-size: .75rem;
	font-weight: 700;
	letter-spacing: .1em;
	text-transform: uppercase;
}

.wf-page-header {
	max-width: 860px;
	margin: clamp(2.5rem, 6vw, 6rem) 0 clamp(2.5rem, 5vw, 5rem);
}

.wf-page-header h1,
.wf-about-hero h1,
.wf-contact-header h1 {
	margin: 0;
	font-size: clamp(2.7rem, 6vw, 5.7rem);
	line-height: .98;
	letter-spacing: -.055em;
}

.wf-page-header > p:last-child,
.wf-contact-header > p,
.wf-about-intro {
	max-width: 690px;
	margin: 1.5rem 0 0;
	color: var(--cs-color-secondary, #666);
	font-size: clamp(1rem, 1.7vw, 1.3rem);
	line-height: 1.6;
}

.wf-page-header--split,
.wf-contact-header {
	display: grid;
	grid-template-columns: minmax(0, 1.45fr) minmax(280px, .65fr);
	gap: clamp(2rem, 7vw, 8rem);
	align-items: end;
	max-width: none;
}

.wf-category-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: clamp(1rem, 2.2vw, 2rem);
}

.wf-category-card {
	position: relative;
	display: block;
	overflow: hidden;
	border: 1px solid var(--cs-color-contrast-200, #e7e7e7);
	border-radius: 14px;
	color: inherit;
	text-decoration: none;
	transition: transform .25s ease, box-shadow .25s ease;
}

.wf-category-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 18px 45px rgba(0, 0, 0, .08);
}

.wf-category-card__media {
	display: grid;
	place-items: center;
	aspect-ratio: 16 / 10;
	overflow: hidden;
	background: linear-gradient(145deg, #eaf0ff, #d9e3ff);
}

.wf-category-card__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform .45s ease;
}

.wf-category-card:hover .wf-category-card__media img { transform: scale(1.035); }
.wf-category-card__letter { color: #2457ff; font-size: 5rem; font-weight: 750; letter-spacing: -.08em; }

.wf-category-card__body {
	display: grid;
	grid-template-columns: 1fr auto;
	gap: .35rem 1rem;
	align-items: center;
	padding: 1.35rem;
}

.wf-category-card__title { font-size: 1.25rem; font-weight: 700; letter-spacing: -.025em; }
.wf-category-card__count { color: var(--cs-color-secondary, #777); font-size: .875rem; }
.wf-category-card__arrow { grid-column: 2; grid-row: 1 / span 2; font-size: 1.45rem; }

.wf-about-hero {
	max-width: 1020px;
	margin: clamp(3rem, 7vw, 7rem) auto clamp(3rem, 6vw, 6rem);
	text-align: center;
}

.wf-about-hero h1 em { color: #2457ff; font-family: Georgia, serif; font-weight: 400; }
.wf-about-intro { margin-inline: auto; }

.wf-about-collage {
	display: grid;
	grid-template-columns: 1fr 1.3fr 1fr;
	gap: clamp(.7rem, 2vw, 1.5rem);
	align-items: center;
	margin-bottom: clamp(4rem, 8vw, 8rem);
}

.wf-about-collage__item { overflow: hidden; margin: 0; border-radius: 14px; }
.wf-about-collage__item--1,
.wf-about-collage__item--3 { aspect-ratio: 4 / 5; }
.wf-about-collage__item--2 { aspect-ratio: 4 / 5.4; }
.wf-about-collage img { width: 100%; height: 100%; object-fit: cover; }

.wf-about-story {
	display: grid;
	grid-template-columns: .8fr 1.2fr;
	gap: clamp(2rem, 8vw, 9rem);
	padding: clamp(3rem, 6vw, 6rem) 0;
	border-top: 1px solid var(--cs-color-contrast-200, #e7e7e7);
}

.wf-about-story h2,
.wf-page-cta h2 { margin: 0; font-size: clamp(2.15rem, 4vw, 4rem); line-height: 1.04; letter-spacing: -.045em; }
.wf-about-story__copy { font-size: 1.08rem; line-height: 1.75; }
.wf-about-lead { margin-top: 0; font-size: clamp(1.25rem, 2vw, 1.65rem); line-height: 1.55; }

.wf-values-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	border-top: 1px solid var(--cs-color-contrast-200, #e7e7e7);
	border-bottom: 1px solid var(--cs-color-contrast-200, #e7e7e7);
}

.wf-values-grid section { padding: clamp(2rem, 4vw, 3.5rem); border-right: 1px solid var(--cs-color-contrast-200, #e7e7e7); }
.wf-values-grid section:first-child { padding-left: 0; }
.wf-values-grid section:last-child { border: 0; }
.wf-values-grid span { color: #2457ff; font-size: .8rem; font-weight: 700; }
.wf-values-grid h3 { margin: 2rem 0 .75rem; font-size: 1.35rem; }
.wf-values-grid p { margin: 0; color: var(--cs-color-secondary, #6a6a6a); line-height: 1.65; }

.wf-page-cta {
	display: flex;
	justify-content: space-between;
	gap: 2rem;
	align-items: flex-end;
	margin-top: clamp(4rem, 8vw, 8rem);
	padding: clamp(2rem, 5vw, 4.5rem);
	border-radius: 14px;
	background: #f2f5ff;
}

.wf-contact-header { margin: clamp(3rem, 7vw, 7rem) 0 clamp(3rem, 6vw, 6rem); }
.wf-custom-page .cs-entry__header { display: none; }

.wf-empty-archive {
	max-width: 42rem;
	margin: 2rem 0 4rem;
	padding: clamp(1.5rem, 4vw, 3rem);
	border: 1px solid var(--cs-color-contrast-200, #e6e6e6);
	border-radius: 1rem;
	background: var(--cs-color-site-background, #fff);
}

.wf-empty-archive h2 { margin: 0 0 .75rem; }
.wf-empty-archive p { margin: 0 0 1.5rem; }
.wf-contact-header > p { margin: 0; }
.wf-contact-layout { display: grid; grid-template-columns: .72fr 1.28fr; gap: clamp(2rem, 7vw, 7rem); }
.wf-contact-details { padding-top: 1rem; }
.wf-contact-details h2 { margin: 0 0 2rem; font-size: clamp(1.8rem, 3vw, 2.7rem); }
.wf-contact-details ul { margin: 0 0 2rem; padding: 0; list-style: none; }
.wf-contact-details li { display: grid; gap: .35rem; padding: 1.25rem 0; border-top: 1px solid var(--cs-color-contrast-200, #e7e7e7); }
.wf-contact-details li span { color: var(--cs-color-secondary, #6b6b6b); line-height: 1.55; }
.wf-contact-details > a { color: #2457ff; font-weight: 700; }

.wf-contact-form-card {
	padding: clamp(1.5rem, 4vw, 3.5rem);
	border: 1px solid var(--cs-color-contrast-200, #e7e7e7);
	border-radius: 14px;
}

.wf-contact-form-card h2 { margin-top: 0; font-size: clamp(1.8rem, 3vw, 2.6rem); }
.wf-contact-form p { margin: 0 0 1.25rem; }
.wf-contact-form label { display: block; margin-bottom: .55rem; font-size: .82rem; font-weight: 700; }
.wf-contact-form input,
.wf-contact-form textarea { width: 100%; border: 1px solid var(--cs-color-contrast-300, #d8d8d8); border-radius: 6px; background: transparent; }
.wf-contact-form input { min-height: 48px; }
.wf-contact-form textarea { resize: vertical; }
.wf-field-row { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
.wf-honeypot { position: absolute !important; left: -9999px !important; }
.wf-form-status { padding: .9rem 1rem; border-radius: 6px; }
.wf-form-status--success { color: #12633e; background: #e8f8ef; }
.wf-form-status--error { color: #8c2828; background: #fff0f0; }

.wf-latest-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: clamp(2rem, 4vw, 4rem) clamp(1rem, 2.5vw, 2.4rem);
}

.wf-story-card__media { display: block; overflow: hidden; aspect-ratio: 16 / 10; margin-bottom: 1.35rem; border-radius: 10px; }
.wf-story-card__media img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s ease; }
.wf-story-card:hover .wf-story-card__media img { transform: scale(1.035); }
.wf-story-card__meta { display: flex; gap: .8rem; align-items: center; margin-bottom: .9rem; color: var(--cs-color-secondary, #7a7a7a); font-size: .76rem; text-transform: uppercase; }
.wf-story-card__meta a { color: #2457ff; font-weight: 700; }
.wf-story-card h2 { margin: 0; font-size: clamp(1.3rem, 2vw, 1.75rem); line-height: 1.18; letter-spacing: -.03em; }
.wf-story-card h2 a { color: inherit; text-decoration: none; }
.wf-story-card__body > p { margin: .85rem 0 0; color: var(--cs-color-secondary, #696969); line-height: 1.55; }
.wf-pagination { margin-top: 4rem; }
.wf-pagination .page-numbers { display: inline-grid; place-items: center; min-width: 42px; height: 42px; margin-right: .4rem; padding: 0 .7rem; border: 1px solid var(--cs-color-contrast-200, #e7e7e7); border-radius: 5px; }
.wf-pagination .current { color: #fff; border-color: #2457ff; background: #2457ff; }
.wf-empty-state { padding: 5rem 0; border-top: 1px solid var(--cs-color-contrast-200, #e7e7e7); }

.wf-article-summary,
.wf-article-sources {
	margin: clamp(2rem, 5vw, 3.5rem) 0;
	padding: clamp(1.35rem, 3vw, 2rem);
	border: 1px solid var(--cs-color-contrast-200, #e7e7e7);
	border-radius: 10px;
	background: var(--cs-color-contrast-50, #f7f8fb);
}

.wf-article-summary {
	border-left: 3px solid var(--cs-color-primary, #2457ff);
}

.wf-article-summary h2,
.wf-article-sources h2 {
	margin: 0 0 1rem;
	font-size: clamp(1.25rem, 2vw, 1.6rem);
	letter-spacing: -.025em;
}

.wf-article-summary ul,
.wf-article-sources ol {
	margin: 0;
	padding-left: 1.25rem;
}

.wf-article-summary li,
.wf-article-sources li {
	margin-top: .65rem;
	line-height: 1.6;
}

.wf-article-summary li:first-child,
.wf-article-sources li:first-child { margin-top: 0; }

.wf-article-sources a {
	font-weight: 600;
	text-underline-offset: .18em;
	overflow-wrap: anywhere;
}

@media (max-width: 991px) {
	.wf-category-grid,
	.wf-latest-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.wf-page-header--split,
	.wf-contact-header,
	.wf-contact-layout,
	.wf-about-story { grid-template-columns: 1fr; gap: 2rem; }
}

@media (max-width: 599px) {
	:root { --cs-offcanvas-width: 70vw; }

	.wf-page-header h1,
	.wf-about-hero h1,
	.wf-contact-header h1 { font-size: clamp(2.35rem, 13vw, 3.7rem); }
	.wf-category-grid,
	.wf-latest-grid,
	.wf-values-grid,
	.wf-field-row { grid-template-columns: 1fr; }
	.wf-values-grid section { padding: 2rem 0; border-right: 0; border-bottom: 1px solid var(--cs-color-contrast-200, #e7e7e7); }
	.wf-values-grid section:last-child { border-bottom: 0; }
	.wf-about-collage { grid-template-columns: 1fr 1fr; }
	.wf-about-collage__item--1 { display: none; }
	.wf-page-cta { align-items: flex-start; flex-direction: column; }
	.wf-article-summary,
	.wf-article-sources { padding: 1.25rem; }
}
