/**
 * CHF Theme — Layout
 * Container, sections, section headers, grids
 */

/* ==========================================================================
   CONTAINER
   ========================================================================== */

.inner {
	max-width: 1280px;
	margin: 0 auto;
	padding: 0 2rem;
}

/* ==========================================================================
   SECTIONS
   ========================================================================== */

.sec {
	padding: 5rem 0;
}

.sdark {
	background: var(--dark);
	padding: 5rem 0;
}

/* ==========================================================================
   SECTION HEADERS
   ========================================================================== */

.sh {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	margin-bottom: 2.8rem;
}

.sl {
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 3px;
	text-transform: uppercase;
	color: var(--gm);
	margin-bottom: 8px;
}

.sh h2 {
	font-family: var(--serif);
	font-size: clamp(1.7rem, 2.8vw, 2.4rem);
	color: var(--g);
	font-weight: 700;
	line-height: 1.15;
}

.slink {
	font-size: 12px;
	color: var(--g);
	font-weight: 600;
	border-bottom: 1.5px solid var(--gold);
	padding-bottom: 2px;
	white-space: nowrap;
	cursor: pointer;
}

.slink:hover {
	color: var(--gold2);
}

/* ==========================================================================
   GRID UTILITIES
   ========================================================================== */

.two-col {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 4rem;
	align-items: start;
}

/* ==========================================================================
   PAGE HERO
   ========================================================================== */

.ph {
	background: var(--g);
	padding: 4rem 0 3.5rem;
	position: relative;
	overflow: hidden;
}

.ph::after {
	content: '';
	position: absolute;
	right: -80px;
	top: -80px;
	width: 360px;
	height: 360px;
	background: rgba(249, 168, 37, 0.07);
	border-radius: 50%;
}

.ph h1 {
	font-family: var(--serif);
	font-size: clamp(1.8rem, 3.5vw, 2.9rem);
	color: var(--white);
	font-weight: 700;
	max-width: 700px;
	line-height: 1.18;
	margin-bottom: 12px;
}

.ph p {
	color: rgba(255, 255, 255, 0.78);
	font-size: 1rem;
	max-width: 560px;
	line-height: 1.65;
}

.ph-lead p {
	color: rgba(255, 255, 255, 0.78);
	font-size: 1.05rem;
	line-height: 1.7;
	max-width: 720px;
	margin-bottom: 1rem;
}

.ph-lead p:last-child {
	margin-bottom: 0;
}

/* ==========================================================================
   BREADCRUMB
   ========================================================================== */

.breadcrumb {
	display: flex;
	align-items: center;
	gap: 6px;
	margin-bottom: 1.2rem;
	font-size: 12px;
	color: rgba(255, 255, 255, 0.5);
}

.breadcrumb a {
	color: var(--gold);
}

.breadcrumb a:hover {
	text-decoration: underline;
}

/* ==========================================================================
   DIVIDERS
   ========================================================================== */

.sdv {
	border: none;
	border-top: 1px solid var(--border);
	margin: 3rem 0;
}

/* SPA .page routing removed — WordPress uses separate URLs per page. */
