/* ============================================================
 *  Eddie's Haircut & Shave — Global Stylesheet
 *  Strategy: zero reliance on Kadence Blocks dynamic CSS — every layout
 *  primitive here is driven by semantic class names so the page renders
 *  identically whether or not Kadence Blocks parses the markup.
 * ============================================================ */

/* ---------- 1. Base ---------- */
body {
	background-color: #F5EFE5;
	color: #1A1714;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility;
}
::selection { background: #EBBA4D; color: #1A1714; }

:focus-visible {
	outline: 2px solid #EBBA4D;
	outline-offset: 3px;
	border-radius: 2px;
}

/* ---------- 2. Sections (the page rhythm) ---------- */
.eddies-section {
	padding-top: clamp(72px, 9vw, 128px);
	padding-bottom: clamp(72px, 9vw, 128px);
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}
.eddies-section.eddies-trust {
	padding-top: 24px;
	padding-bottom: 24px;
}
.eddies-section.eddies-hero {
	padding: 0; /* hero owns its own height */
}
/* Kill WordPress 5.9+ default block-gap between top-level sections on any page that uses
   our editorial layout (.eddies-section). :has() supported in all modern browsers. */
body:has(.eddies-section) .entry-content,
body:has(.eddies-section) .entry-content > .wp-block-group {
	--wp--style--block-gap: 0;
}
body:has(.eddies-section) .entry-content > * {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}

/* Container widths */
.eddies-container {
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
	padding-left: clamp(20px, 4vw, 48px);
	padding-right: clamp(20px, 4vw, 48px);
	width: 100%;
}
.eddies-container--narrow {
	max-width: 760px;
}

/* ---------- 3. Typographic primitives ---------- */
.eddies-eyebrow {
	font-family: Inter, -apple-system, sans-serif;
	font-size: 13px;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: #5A544D;
	margin: 0 0 12px 0;
	font-weight: 600;
	line-height: 1.3;
}
.eddies-eyebrow--gold { color: #EBBA4D; }
.eddies-eyebrow--light { color: rgba(245, 239, 229, 0.85); }
/* Tighten gap between eyebrow and the immediate next heading */
.eddies-eyebrow + h1,
.eddies-eyebrow + h2,
.eddies-eyebrow + h3,
.eddies-eyebrow + .wp-block-heading {
	margin-top: 0 !important;
}
.eddies-section-head__main .eddies-eyebrow {
	margin-bottom: 10px;
}
.eddies-section-head__main h2,
.eddies-section-head__main .wp-block-heading {
	margin-top: 0 !important;
}

.eddies-lead {
	font-family: Inter, -apple-system, sans-serif;
	font-size: 1.25rem;
	line-height: 1.6;
	color: #2A2520;
	margin: 0 0 24px 0;
}
.eddies-lead::first-letter {
	font-family: 'DM Serif Display', serif;
	font-size: 1.1em;
	color: #1A1714;
}
.eddies-body {
	font-family: Inter, -apple-system, sans-serif;
	font-size: 1.0625rem;
	line-height: 1.65;
	color: #2A2520;
	margin: 0 0 20px 0;
}
.eddies-body a {
	color: #1A1714;
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
	transition: color 180ms ease-out;
}
.eddies-body a:hover { color: #C99830; }

.eddies-link-more {
	font-family: Inter, sans-serif;
	font-size: 14px;
	font-weight: 600;
	color: #1A1714;
	text-decoration: none;
	border-bottom: 1px solid #1A1714;
	padding-bottom: 2px;
	letter-spacing: 0.04em;
	display: inline-block;
	margin-top: 8px;
	transition: color 180ms ease-out, border-color 180ms ease-out;
}
.eddies-link-more:hover { color: #C99830; border-color: #C99830; }

/* ---------- 4a. Page hero (non-home) — 2-column dark with image ---------- */
.eddies-page-hero {
	padding-top: clamp(80px, 10vw, 140px) !important;
	padding-bottom: clamp(80px, 10vw, 140px) !important;
}
.eddies-page-hero__columns { gap: clamp(40px, 6vw, 96px) !important; align-items: center !important; }
.eddies-page-hero__h1 {
	font-family: 'DM Serif Display', serif;
	font-weight: 400;
	font-size: clamp(2.25rem, 4.5vw, 3.75rem);
	line-height: 1.05;
	letter-spacing: -0.01em;
	color: #F5EFE5;
	margin: 0 0 24px 0;
	max-width: 18ch;
	text-wrap: balance;
}
.eddies-page-hero__sub {
	font-family: Inter, sans-serif;
	font-size: clamp(1rem, 1.3vw, 1.1875rem);
	line-height: 1.6;
	color: rgba(245, 239, 229, 0.86);
	margin: 0;
	max-width: 56ch;
}
.eddies-page-hero__photo {
	margin: 0;
	aspect-ratio: 4/5;
	overflow: hidden;
	background: #2A2520;
}
.eddies-page-hero__photo img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	filter: saturate(0.95) contrast(1.02);
}
@media (max-width: 781px) {
	.eddies-page-hero__columns .wp-block-column { width: 100% !important; flex-basis: 100% !important; }
	.eddies-page-hero__photo { aspect-ratio: 16/10; max-height: 380px; }
}

/* ---------- 4b. Service detail page hero (lighter, content-driven) ---------- */
.eddies-service-hero {
	padding-top: clamp(80px, 10vw, 140px) !important;
	padding-bottom: clamp(56px, 7vw, 96px) !important;
}
.eddies-service-hero__breadcrumb {
	font-family: Inter, sans-serif;
	font-size: 12px;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: #8A8377;
	font-weight: 600;
	margin: 0 0 24px 0;
}
.eddies-service-hero__breadcrumb a {
	color: #8A8377;
	text-decoration: none;
	border-bottom: 1px solid transparent;
	transition: color 180ms, border-color 180ms;
}
.eddies-service-hero__breadcrumb a:hover { color: #C99830; border-bottom-color: #C99830; }
.eddies-service-hero__breadcrumb .sep { color: #C9C2B4; margin: 0 8px; }
.eddies-service-hero__h1 {
	font-family: 'DM Serif Display', serif;
	font-weight: 400;
	font-size: clamp(2.25rem, 4.5vw, 3.75rem);
	line-height: 1.05;
	letter-spacing: -0.01em;
	color: #1A1714;
	margin: 0 0 24px 0;
	max-width: 20ch;
	text-wrap: balance;
}
.eddies-service-hero__sub {
	font-family: Inter, sans-serif;
	font-size: clamp(1.0625rem, 1.4vw, 1.25rem);
	line-height: 1.55;
	color: #2A2520;
	margin: 0 0 32px 0;
	max-width: 56ch;
}
.eddies-service-hero__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 16px 36px;
	margin: 0 0 36px 0;
	font-family: Inter, sans-serif;
	font-size: 13px;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: #5A544D;
	font-weight: 600;
}
.eddies-service-hero__meta-item {
	display: flex;
	gap: 8px;
	align-items: baseline;
}
.eddies-service-hero__meta-label { color: #8A8377; }
.eddies-service-hero__meta-value { color: #1A1714; }
.eddies-service-hero__buttons {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
}

/* Service hero 2-col layout */
.eddies-service-hero__columns { gap: clamp(40px, 6vw, 80px) !important; align-items: center !important; }
.eddies-service-hero__photo {
	margin: 0;
	aspect-ratio: 4/5;
	overflow: hidden;
	background: #1A1714;
}
.eddies-service-hero__photo img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
@media (max-width: 781px) {
	.eddies-service-hero__columns .wp-block-column { width: 100% !important; flex-basis: 100% !important; }
	.eddies-service-hero__photo { aspect-ratio: 16/10; max-height: 360px; }
}

/* ---------- 4c. Services hub — grid of service tiles ---------- */
.eddies-services-hub__grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: clamp(40px, 5vw, 64px);
}
@media (max-width: 720px) {
	.eddies-services-hub__grid { grid-template-columns: 1fr; }
}
.eddies-services-hub__card {
	display: grid;
	grid-template-columns: 200px 1fr;
	gap: 28px;
	color: #1A1714;
	text-decoration: none;
	align-items: start;
}
@media (max-width: 560px) {
	.eddies-services-hub__card { grid-template-columns: 1fr; gap: 20px; }
}
.eddies-services-hub__card-photo {
	margin: 0;
	aspect-ratio: 4/5;
	overflow: hidden;
	background: #1A1714;
}
.eddies-services-hub__card-photo img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 600ms ease-out;
}
.eddies-services-hub__card:hover .eddies-services-hub__card-photo img {
	transform: scale(1.04);
}
.eddies-services-hub__card-eyebrow {
	font-family: Inter, sans-serif;
	font-size: 11px;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: #8A8377;
	margin: 0 0 8px 0;
	font-weight: 600;
}
.eddies-services-hub__card-name {
	font-family: 'DM Serif Display', serif;
	font-weight: 400;
	font-size: 1.625rem;
	line-height: 1.2;
	color: #1A1714;
	margin: 0 0 14px 0;
}
.eddies-services-hub__card-body {
	font-family: Inter, sans-serif;
	font-size: 0.9375rem;
	line-height: 1.6;
	color: #5A544D;
	margin: 0 0 16px 0;
}
.eddies-services-hub__card-meta {
	display: flex;
	gap: 20px;
	font-family: Inter, sans-serif;
	font-size: 12px;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: #1A1714;
	font-weight: 600;
}
.eddies-services-hub__card-meta .sep { color: #C9C2B4; }
.eddies-services-hub__card:hover .eddies-services-hub__card-name { color: #C99830; }

/* ---------- 4d. Service detail — content rhythm ---------- */
.eddies-service-content {
	max-width: 720px;
}
.eddies-service-content h2 {
	font-family: 'DM Serif Display', serif;
	font-weight: 400;
	font-size: clamp(1.625rem, 2.4vw, 2.125rem);
	line-height: 1.2;
	color: #1A1714;
	margin: 0 0 20px 0;
}
.eddies-service-content h3 {
	font-family: 'DM Serif Display', serif;
	font-weight: 400;
	font-size: 1.375rem;
	line-height: 1.25;
	color: #1A1714;
	margin: 0 0 14px 0;
}
.eddies-service-content p {
	font-family: Inter, sans-serif;
	font-size: 1.0625rem;
	line-height: 1.65;
	color: #2A2520;
	margin: 0 0 20px 0;
}
.eddies-service-steps {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: 24px;
}
.eddies-service-step {
	display: grid;
	grid-template-columns: 56px 1fr;
	gap: 20px;
	align-items: start;
}
.eddies-service-step__num {
	font-family: 'DM Serif Display', serif;
	font-weight: 400;
	font-size: 1.875rem;
	line-height: 1;
	color: #EBBA4D;
	letter-spacing: -0.02em;
}
.eddies-service-step__copy h4 {
	font-family: 'DM Serif Display', serif;
	font-weight: 400;
	font-size: 1.25rem;
	line-height: 1.25;
	color: #1A1714;
	margin: 0 0 10px 0;
}
.eddies-service-step__copy p {
	margin: 0;
	font-family: Inter, sans-serif;
	font-size: 1rem;
	line-height: 1.6;
	color: #2A2520;
}

/* ---------- 4. Hero — image background ---------- */
.eddies-hero--image,
.eddies-hero--video {
	position: relative;
	overflow: hidden;
	min-height: clamp(560px, 88vh, 820px);
	display: flex;
	align-items: center;
	justify-content: center;
	background: #1A1714;
	margin-bottom: 0 !important; /* kill block-gap below hero */
}
.eddies-hero__media-wrap,
.eddies-hero__video-wrap {
	position: absolute;
	top: 0; left: 0; right: 0; bottom: 0;
	overflow: hidden;
	pointer-events: none;
}
.eddies-hero__image {
	position: absolute;
	top: 50%;
	left: 50%;
	min-width: 100%;
	min-height: 100%;
	width: auto;
	height: auto;
	max-width: none;
	transform: translate(-50%, -50%);
	object-fit: cover;
	object-position: center 35%;
	display: block;
	filter: contrast(1.04) saturate(0.92);
}
.eddies-hero__video {
	position: absolute;
	top: 50%;
	left: 50%;
	min-width: 100%;
	min-height: 100%;
	width: auto;
	height: auto;
	transform: translate(-50%, -50%);
	object-fit: cover;
	display: block;
	filter: contrast(1.05) saturate(0.85);
}
.eddies-hero__overlay {
	position: absolute;
	top: 0; left: 0; right: 0; bottom: 0;
	background:
		linear-gradient(180deg, rgba(26,23,20,0.55) 0%, rgba(26,23,20,0.32) 30%, rgba(26,23,20,0.50) 65%, rgba(26,23,20,0.92) 100%),
		linear-gradient(90deg, rgba(26,23,20,0.40) 0%, rgba(26,23,20,0) 35%, rgba(26,23,20,0) 65%, rgba(26,23,20,0.40) 100%);
	pointer-events: none;
	z-index: 1;
}
.eddies-hero__inner {
	text-align: center;
	padding-top: clamp(96px, 14vh, 160px);
	padding-bottom: clamp(96px, 14vh, 160px);
	position: relative;
	z-index: 2;
}
.eddies-hero__inner .eddies-eyebrow { margin-left: auto; margin-right: auto; }

.eddies-hero__h1 {
	font-family: 'DM Serif Display', serif;
	font-weight: 400;
	font-size: clamp(2.5rem, 6vw, 5rem);
	line-height: 1.05;
	letter-spacing: -0.015em;
	color: #F5EFE5;
	margin: 0 auto 28px auto;
	max-width: 18ch;
	text-wrap: balance;
	text-shadow: 0 2px 24px rgba(0,0,0,0.45);
}
.eddies-hero__sub {
	font-family: Inter, sans-serif;
	font-size: clamp(1rem, 1.4vw, 1.25rem);
	line-height: 1.55;
	color: rgba(245, 239, 229, 0.94);
	margin: 0 auto 40px auto;
	max-width: 600px;
	text-shadow: 0 1px 12px rgba(0,0,0,0.4);
}
.eddies-hero__sub strong { color: #EBBA4D; font-weight: 600; }
.eddies-hero__buttons {
	gap: 14px !important;
	justify-content: center !important;
}
@media (max-width: 600px) {
	.eddies-hero--video { min-height: 88vh; }
	.eddies-hero__h1 { max-width: 14ch; }
}

/* ---------- 5. Buttons ---------- */
.wp-block-button.is-style-eddies-primary .wp-block-button__link,
.eddies-button.eddies-button--primary {
	display: inline-block;
	background: #1A1714 !important;
	color: #F5EFE5 !important;
	font-family: Inter, sans-serif;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	text-decoration: none;
	padding: 16px 28px;
	border: 1px solid #1A1714;
	border-radius: 2px;
	transition: background 200ms ease-out, color 200ms ease-out, border-color 200ms ease-out;
	line-height: 1.4;
}
.wp-block-button.is-style-eddies-primary .wp-block-button__link:hover,
.eddies-button.eddies-button--primary:hover {
	background: #EBBA4D !important;
	color: #1A1714 !important;
	border-color: #EBBA4D !important;
}

.wp-block-button.is-style-eddies-outline .wp-block-button__link,
.eddies-button.eddies-button--outline {
	display: inline-block;
	background: transparent !important;
	color: #1A1714 !important;
	font-family: Inter, sans-serif;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	text-decoration: none;
	padding: 16px 28px;
	border: 1px solid #1A1714;
	border-radius: 2px;
	transition: background 200ms ease-out, color 200ms ease-out;
	line-height: 1.4;
}
.wp-block-button.is-style-eddies-outline .wp-block-button__link:hover,
.eddies-button.eddies-button--outline:hover {
	background: #1A1714 !important;
	color: #F5EFE5 !important;
}

.wp-block-button.is-style-eddies-gold .wp-block-button__link,
.eddies-button.eddies-button--gold {
	display: inline-block;
	background: #EBBA4D !important;
	color: #1A1714 !important;
	font-family: Inter, sans-serif;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	text-decoration: none;
	padding: 18px 36px;
	border: 1px solid #EBBA4D !important;
	border-radius: 2px;
	transition: background 200ms ease-out, color 200ms ease-out;
	line-height: 1.4;
}
.wp-block-button.is-style-eddies-gold .wp-block-button__link:hover,
.eddies-button.eddies-button--gold:hover {
	background: #C99830 !important;
	color: #1A1714 !important;
	border-color: #C99830 !important;
}

.wp-block-button.is-style-eddies-ghost-light .wp-block-button__link,
.eddies-button.eddies-button--ghost {
	display: inline-block;
	background: transparent !important;
	color: #F5EFE5 !important;
	font-family: Inter, sans-serif;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	text-decoration: none;
	padding: 18px 36px;
	border: 1px solid rgba(245, 239, 229, 0.75) !important;
	border-radius: 2px;
	transition: background 200ms ease-out, color 200ms ease-out, border-color 200ms ease-out;
	line-height: 1.4;
}
.wp-block-button.is-style-eddies-ghost-light .wp-block-button__link:hover,
.eddies-button.eddies-button--ghost:hover {
	background: #F5EFE5 !important;
	color: #1A1714 !important;
	border-color: #F5EFE5 !important;
}

/* ---------- 6. Trust ribbon ---------- */
.eddies-trust__list {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 12px 36px;
	font-family: Inter, sans-serif;
	font-size: 13px;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: #EFE6D6;
	font-weight: 500;
}
.eddies-trust__list li[aria-hidden] { color: #EBBA4D; }
@media (max-width: 720px) {
	.eddies-trust__list { gap: 6px 18px; font-size: 11px; letter-spacing: 0.12em; }
	.eddies-trust__list li[aria-hidden] { display: none; }
}

/* ---------- 7. Intro ---------- */
.eddies-intro__columns { gap: clamp(40px, 6vw, 96px) !important; align-items: center !important; }
.eddies-intro__photo {
	margin: 0;
	aspect-ratio: 4/5;
	overflow: hidden;
	background: #1A1714;
}
.eddies-intro__photo img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	filter: saturate(0.95);
}
.eddies-intro__h2 {
	font-family: 'DM Serif Display', serif;
	font-weight: 400;
	font-size: clamp(2rem, 3.6vw, 2.875rem);
	line-height: 1.15;
	letter-spacing: -0.005em;
	color: #1A1714;
	margin: 0 0 24px 0;
	text-wrap: balance;
}
@media (max-width: 781px) {
	.eddies-intro__columns .wp-block-column { width: 100% !important; flex-basis: 100% !important; }
	.eddies-intro__photo { aspect-ratio: 16/10; max-height: 420px; }
}

/* ---------- 8. Section heading ---------- */
.eddies-section-head {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	gap: 24px;
	flex-wrap: wrap;
	margin-bottom: 56px;
	border-bottom: 1px solid #1A1714;
	padding-bottom: 32px;
}
.eddies-section-head--dark { border-bottom-color: #EBBA4D; }
.eddies-section-head--single { justify-content: flex-start; }
.eddies-section-head__main { flex: 1 1 320px; }
.eddies-section-head__h2 {
	font-family: 'DM Serif Display', serif;
	font-weight: 400;
	font-size: clamp(1.875rem, 3.4vw, 2.625rem);
	line-height: 1.15;
	color: #1A1714;
	margin: 0;
	max-width: 640px;
	text-wrap: balance;
}
.eddies-section-head__h2--light { color: #F5EFE5; }
.eddies-section-head__more {
	font-family: Inter, sans-serif;
	font-size: 14px;
	font-weight: 600;
	color: #1A1714;
	border-bottom: 1px solid #1A1714;
	padding-bottom: 2px;
	text-decoration: none;
	letter-spacing: 0.04em;
	flex-shrink: 0;
	transition: color 180ms, border-color 180ms;
}
.eddies-section-head__more:hover { color: #C99830; border-color: #C99830; }
.eddies-section-head__more--light {
	color: #F5EFE5;
	border-bottom-color: #EBBA4D;
}
.eddies-section-head__more--light:hover { color: #EBBA4D; }
@media (max-width: 640px) {
	.eddies-section-head { flex-direction: column; align-items: flex-start; }
}

/* ---------- 9. Services grid ---------- */
.eddies-services__grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 32px;
}
@media (max-width: 1024px) {
	.eddies-services__grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 560px) {
	.eddies-services__grid { grid-template-columns: 1fr; gap: 40px; }
}

.eddies-service-card {
	display: block;
	color: #1A1714;
	text-decoration: none;
	transition: transform 250ms ease-out;
}
.eddies-service-card__photo {
	margin: 0 0 20px 0;
	aspect-ratio: 4/5;
	overflow: hidden;
	background: #1A1714;
}
.eddies-service-card__photo img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 600ms ease-out;
}
.eddies-service-card:hover .eddies-service-card__photo img {
	transform: scale(1.04);
}
.eddies-service-card__eyebrow {
	font-family: Inter, sans-serif;
	font-size: 11px;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: #8A8377;
	margin: 0 0 8px 0;
	font-weight: 600;
}
.eddies-service-card__h3 {
	font-family: 'DM Serif Display', serif;
	font-weight: 400;
	font-size: 1.5rem;
	line-height: 1.2;
	color: #1A1714;
	margin: 0 0 10px 0;
}
.eddies-service-card__body {
	font-family: Inter, sans-serif;
	font-size: 0.9375rem;
	line-height: 1.55;
	color: #5A544D;
	margin: 0 0 14px 0;
}
.eddies-service-card__more {
	font-family: Inter, sans-serif;
	font-size: 13px;
	font-weight: 600;
	color: #1A1714;
	border-bottom: 1px solid #1A1714;
	padding-bottom: 1px;
	letter-spacing: 0.04em;
	transition: color 180ms, border-color 180ms;
}
.eddies-service-card:hover .eddies-service-card__more {
	color: #C99830;
	border-color: #C99830;
}

/* ---------- 10. Why Eddie's grid ---------- */
.eddies-why__grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 48px 64px;
}
@media (max-width: 720px) {
	.eddies-why__grid { grid-template-columns: 1fr; gap: 40px; }
}
.eddies-why__item { margin: 0; }
.eddies-why__eyebrow {
	font-family: 'DM Serif Display', serif;
	font-weight: 400;
	font-size: 3rem;
	line-height: 1;
	color: #EBBA4D;
	margin: 0 0 16px 0;
	letter-spacing: -0.02em;
}
.eddies-why__h3 {
	font-family: 'DM Serif Display', serif;
	font-weight: 400;
	font-size: 1.625rem;
	line-height: 1.25;
	color: #1A1714;
	margin: 0 0 14px 0;
	max-width: 22ch;
	text-wrap: balance;
}
.eddies-why__body {
	font-family: Inter, sans-serif;
	font-size: 1rem;
	line-height: 1.65;
	color: #2A2520;
	margin: 0;
	max-width: 56ch;
}

/* ---------- 11. Story section ---------- */
.eddies-story__columns { gap: clamp(40px, 6vw, 96px) !important; }
.eddies-story__photo {
	margin: 0;
	aspect-ratio: 4/5;
	overflow: hidden;
	background: #1A1714;
}
.eddies-story__photo img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.eddies-story__h2 {
	font-family: 'DM Serif Display', serif;
	font-weight: 400;
	font-size: clamp(1.875rem, 3.4vw, 2.625rem);
	line-height: 1.15;
	color: #1A1714;
	margin: 0 0 32px 0;
	text-wrap: balance;
}
.eddies-story__quote {
	border-left: 2px solid #EBBA4D;
	padding: 6px 0 6px 24px;
	margin: 0 0 32px 0;
}
.eddies-story__quote p {
	font-family: 'DM Serif Display', serif;
	font-size: 1.375rem;
	line-height: 1.45;
	color: #2A2520;
	font-style: italic;
	margin: 0;
}
.eddies-story__quote cite {
	display: block;
	margin-top: 12px;
	font-family: Inter, sans-serif;
	font-style: normal;
	font-size: 12px;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: #5A544D;
	font-weight: 600;
}

/* ---------- 12. Barbers row ---------- */
.eddies-barbers__row {
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	gap: 24px;
}
@media (max-width: 1024px) {
	.eddies-barbers__row { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 600px) {
	.eddies-barbers__row { grid-template-columns: repeat(2, 1fr); gap: 20px; }
}
.eddies-barber {
	display: block;
	color: #1A1714;
	text-decoration: none;
}
.eddies-barber__photo {
	margin: 0 0 14px 0;
	aspect-ratio: 1/1;
	overflow: hidden;
	background: #1A1714;
}
.eddies-barber__photo img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	filter: saturate(0.9);
	transition: filter 250ms ease-out, transform 600ms ease-out;
}
/* hover removed — barber cards are non-clickable until bio pages exist */
.eddies-barber__name {
	font-family: 'DM Serif Display', serif;
	font-weight: 400;
	font-size: 1.25rem;
	line-height: 1.2;
	color: #1A1714;
	margin: 0 0 4px 0;
}
.eddies-barber__role {
	font-family: Inter, sans-serif;
	font-size: 11px;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: #8A8377;
	margin: 0;
	font-weight: 600;
}

/* ---------- 13. "What to expect" timeline ---------- */
.eddies-expect__list {
	list-style: none;
	padding: 0;
	margin: 0;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 48px 64px;
	counter-reset: expect;
}
@media (max-width: 720px) {
	.eddies-expect__list { grid-template-columns: 1fr; gap: 36px; }
}
.eddies-expect__step {
	display: flex;
	gap: 24px;
	align-items: flex-start;
}
.eddies-expect__num {
	font-family: 'DM Serif Display', serif;
	font-weight: 400;
	font-size: 2.5rem;
	line-height: 1;
	color: #EBBA4D;
	letter-spacing: -0.02em;
	flex-shrink: 0;
	padding-top: 4px;
	min-width: 56px;
}
.eddies-expect__copy { flex: 1; }
.eddies-expect__h3 {
	font-family: 'DM Serif Display', serif;
	font-weight: 400;
	font-size: 1.375rem;
	line-height: 1.25;
	color: #1A1714;
	margin: 0 0 12px 0;
}
.eddies-expect__copy p {
	font-family: Inter, sans-serif;
	font-size: 1rem;
	line-height: 1.65;
	color: #2A2520;
	margin: 0;
}

/* ---------- 14. Reviews ---------- */
.eddies-reviews__row {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 48px;
}
@media (max-width: 900px) {
	.eddies-reviews__row { grid-template-columns: 1fr; gap: 40px; }
}
.eddies-review {
	margin: 0;
	padding: 0;
	border: 0;
}
.eddies-review p {
	font-family: 'DM Serif Display', serif;
	font-size: 1.5rem;
	line-height: 1.4;
	color: #F5EFE5;
	margin: 0 0 24px 0;
	font-style: italic;
}
.eddies-review cite {
	font-family: Inter, sans-serif;
	font-style: normal;
	font-size: 12px;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: #EBBA4D;
	font-weight: 600;
}

/* ---------- 14b. TrustIndex container on home reviews section ----------
 * No style overrides — let the TrustIndex shortcode render natively. The widget already
 * works well on a light background out of the box. (Earlier sessions had dark-mode overrides
 * here when the section had a dark bg; removed when the section was moved to light.) */

/* ---------- 15. FAQ — native disclosure widget ---------- */
.eddies-faq__list { display: block; }
.eddies-faq__item {
	border-top: 1px solid rgba(26,23,20,0.18);
}
.eddies-faq__item:last-child {
	border-bottom: 1px solid rgba(26,23,20,0.18);
}
.eddies-faq__item summary {
	cursor: pointer;
	padding: 28px 56px 28px 0;
	position: relative;
	list-style: none;
	transition: color 180ms ease-out;
}
.eddies-faq__item summary::-webkit-details-marker { display: none; }
.eddies-faq__item summary h3 {
	font-family: 'DM Serif Display', serif;
	font-weight: 400;
	font-size: 1.25rem;
	line-height: 1.35;
	color: #1A1714;
	margin: 0;
	transition: color 180ms ease-out;
}
.eddies-faq__chevron {
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	font-family: Inter, sans-serif;
	font-size: 32px;
	font-weight: 300;
	color: #1A1714;
	line-height: 1;
	width: 32px;
	height: 32px;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: transform 250ms ease-out;
}
.eddies-faq__item[open] .eddies-faq__chevron {
	transform: translateY(-50%) rotate(45deg);
	color: #EBBA4D;
}
.eddies-faq__item[open] summary h3 { color: #1A1714; }
.eddies-faq__item summary:hover h3 { color: #C99830; }
.eddies-faq__answer {
	padding: 0 56px 28px 0;
	font-family: Inter, sans-serif;
	font-size: 1.0625rem;
	line-height: 1.65;
	color: #2A2520;
	max-width: 64ch;
}
.eddies-faq__answer p { margin: 0 0 14px 0; }
.eddies-faq__answer p:last-child { margin-bottom: 0; }
.eddies-faq__answer a {
	color: #1A1714;
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
	transition: color 180ms;
}
.eddies-faq__answer a:hover { color: #C99830; }

/* ---------- 16. Pricing on home — minor overrides ---------- */
.eddies-pricing-home .eddies-pricing { margin-top: 24px; }
.eddies-pricing-home .eddies-pricing__group + .eddies-pricing__group { margin-top: 48px; }

/* ---------- 17. Visit ---------- */
.eddies-visit__columns { gap: clamp(32px, 5vw, 80px) !important; }
.eddies-visit__h2 {
	font-family: 'DM Serif Display', serif;
	font-weight: 400;
	font-size: clamp(1.75rem, 3vw, 2.375rem);
	line-height: 1.15;
	color: #1A1714;
	margin: 0 0 40px 0;
	text-wrap: balance;
}
.eddies-nap {
	margin: 0 0 36px 0;
	font-family: Inter, sans-serif;
	display: grid;
	grid-template-columns: 110px 1fr;
	gap: 18px 24px;
	align-items: start;
}
.eddies-nap dt {
	font-size: 11px;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: #8A8377;
	font-weight: 600;
	padding-top: 3px;
}
.eddies-nap dd {
	margin: 0;
	font-size: 1.0625rem;
	line-height: 1.55;
	color: #1A1714;
}
.eddies-nap dd .eddies-nap__sub { color: #5A544D; font-size: 0.9375rem; }
.eddies-nap dd a {
	color: #1A1714;
	text-decoration: none;
	border-bottom: 1px solid #1A1714;
}
.eddies-nap dd a:hover { color: #C99830; border-color: #C99830; }
@media (max-width: 560px) {
	.eddies-nap { grid-template-columns: 1fr; gap: 6px 0; }
	.eddies-nap dt { padding-top: 16px; }
	.eddies-nap dt:first-of-type { padding-top: 0; }
}
.eddies-visit__buttons {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
}
.eddies-visit__map {
	aspect-ratio: 4/5;
	overflow: hidden;
	background: #1A1714;
	border: 1px solid #1A1714;
}
.eddies-visit__map iframe {
	width: 100%;
	height: 100%;
	border: 0;
	display: block;
	filter: grayscale(0.3) contrast(1.05);
}

/* ---------- 18. Final CTA ---------- */
.eddies-cta__inner { text-align: center; }
.eddies-cta__h2 {
	font-family: 'DM Serif Display', serif;
	font-weight: 400;
	font-size: clamp(2.25rem, 4.5vw, 3.25rem);
	line-height: 1.1;
	color: #F5EFE5;
	margin: 0 0 24px 0;
	text-wrap: balance;
}
.eddies-cta__body {
	font-family: Inter, sans-serif;
	font-size: 1.0625rem;
	line-height: 1.6;
	color: #EFE6D6;
	margin: 0 auto 40px;
	max-width: 540px;
}
.eddies-cta__buttons {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 14px;
}

/* ---------- 19. KILL all theme-injected padding/margin on editorial pages ---------- */
/* Apply to any page whose content includes an .eddies-section so dark sections
 * butt directly against the header and footer with no paper bleed-through. */
body:has(.eddies-section) .content-area,
body:has(.eddies-section) .site-content,
body:has(.eddies-section) .content-container,
body:has(.eddies-section) .site-main,
body:has(.eddies-section) .content-wrap,
body:has(.eddies-section) .entry-content-wrap {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}
body:has(.eddies-section) article.entry {
	background: transparent !important;
	box-shadow: none !important;
	border: 0 !important;
	padding: 0 !important;
	margin: 0 !important;
}
body:has(.eddies-section) .entry-content > *:last-child {
	margin-bottom: 0 !important;
}
body:has(.eddies-section) .content-container {
	max-width: 100% !important;
}

/* ---------- 20. WP page title / theme tweaks ---------- */
body:has(.eddies-page-hero) .entry-header,
body:has(.eddies-page-hero) .page-title-wrap,
body.home .entry-header,
body.home .page-title-wrap { display: none; }
body:has(.eddies-section) .content-area > article > .entry-content {
	margin-top: 0;
	padding-top: 0;
}
/* Wide-align fix — let our full-width sections actually go full-width */
.entry-content > .alignfull {
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	max-width: 100vw;
	width: auto;
}
h1, h2, h3 { text-wrap: balance; }
.site-main-header-wrap .site-header-row-container-inner {
	border-bottom: 1px solid rgba(26,23,20,0.08);
}
.header-navigation .header-menu-container ul ul li.menu-item > a {
	transition: padding-left 200ms ease-out, background-color 200ms ease-out;
	border-left: 2px solid transparent;
}
.header-navigation .header-menu-container ul ul li.menu-item > a:hover {
	border-left-color: #EBBA4D;
}
.wp-block-button__link {
	transition: background-color 180ms ease-out, color 180ms ease-out, border-color 180ms ease-out !important;
}

/* ---------- 21. Footer rebuild ---------- */
.site-footer,
.site-footer-wrap,
.site-bottom-footer-wrap,
.site-top-footer-wrap,
.site-middle-footer-wrap {
	background: #1A1714 !important;
	color: #EFE6D6;
}

/* Top section grid */
.site-top-footer-wrap .site-footer-row-container-inner {
	background: #1A1714 !important;
}
.site-top-footer-inner-wrap {
	padding-top: clamp(64px, 7vw, 96px) !important;
	padding-bottom: clamp(48px, 6vw, 72px) !important;
	gap: clamp(32px, 4vw, 56px) !important;
}
.site-bottom-footer-wrap .site-footer-row-container-inner {
	background: #1A1714 !important;
	border-top: 1px solid rgba(245, 239, 229, 0.12);
}
.site-bottom-footer-inner-wrap {
	padding-top: 24px !important;
	padding-bottom: 24px !important;
}

/* Footer column heading + content (custom HTML widgets) */
.eddies-foot-col h4,
.site-footer .widget h4 {
	font-family: Inter, sans-serif;
	font-size: 11px;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: #EBBA4D;
	font-weight: 700;
	margin: 0 0 20px 0;
	padding-bottom: 14px;
	border-bottom: 1px solid rgba(235, 186, 77, 0.25);
}
.eddies-foot-col p,
.eddies-foot-col ul,
.eddies-foot-col dl {
	font-family: Inter, sans-serif;
	font-size: 0.9375rem;
	line-height: 1.6;
	color: #C9C2B4;
	margin: 0 0 12px 0;
}
.eddies-foot-col ul {
	list-style: none;
	padding: 0;
}
.eddies-foot-col li {
	margin: 0 0 10px 0;
}
.eddies-foot-col a {
	color: #EFE6D6 !important;
	text-decoration: none !important;
	border-bottom: 1px solid transparent !important;
	transition: color 180ms ease-out, border-color 180ms ease-out !important;
}
.eddies-foot-col a:hover {
	color: #EBBA4D !important;
	border-bottom-color: #EBBA4D !important;
}

/* Brand column logo */
.eddies-foot-brand img.eddies-foot-logo {
	display: block;
	width: 120px;
	height: auto;
	margin: 0 0 18px 0;
}
.eddies-foot-brand p.eddies-foot-tag {
	font-family: 'DM Serif Display', serif;
	font-size: 1.125rem;
	line-height: 1.4;
	color: #F5EFE5;
	margin: 0 0 18px 0;
	max-width: 22ch;
}
.eddies-foot-brand .eddies-foot-nap {
	font-style: normal;
	color: #C9C2B4;
	font-size: 0.9375rem;
	line-height: 1.6;
}
.eddies-foot-brand .eddies-foot-nap a {
	color: #EFE6D6 !important;
}

/* Hours block */
.eddies-foot-hours { display: grid; grid-template-columns: 64px 1fr; gap: 4px 12px; }
.eddies-foot-hours dt {
	font-size: 0.875rem;
	color: #EFE6D6;
	font-weight: 600;
}
.eddies-foot-hours dd {
	margin: 0;
	font-size: 0.875rem;
	color: #C9C2B4;
}
.eddies-foot-hours .eddies-foot-closed { color: #8A8377; }

/* Bottom bar */
.site-footer .footer-html {
	font-family: Inter, sans-serif;
	font-size: 12px;
	letter-spacing: 0.04em;
	color: #8A8377;
}
.site-footer .footer-html a {
	color: #C9C2B4 !important;
	border-bottom: 1px solid transparent !important;
}
.site-footer .footer-html a:hover {
	color: #EBBA4D !important;
	border-bottom-color: #EBBA4D !important;
}

/* Mobile footer collapse — stack columns */
@media (max-width: 900px) {
	.site-top-footer-inner-wrap { grid-template-columns: 1fr 1fr !important; }
}
@media (max-width: 560px) {
	.site-top-footer-inner-wrap { grid-template-columns: 1fr !important; gap: 36px !important; }
}

/* ---------- 22. Pricing & Reviews page additions (session 8) ---------- */

/* Pricing menu fine-print under the [eddies_pricing] shortcode */
.eddies-pricing-note {
	font-family: Inter, sans-serif;
	font-size: 13px;
	line-height: 1.55;
	color: #5A544D;
	margin: 40px 0 0 0;
	padding: 24px 0 0 0;
	border-top: 1px solid rgba(26,23,20,0.10);
	max-width: 56ch;
	font-style: italic;
}

/* Breadcrumb appearing inside the dark .eddies-page-hero — recolor to paper-on-ink */
.eddies-page-hero .eddies-service-hero__breadcrumb {
	color: rgba(245,239,229,0.5);
	margin-bottom: 24px;
}
.eddies-page-hero .eddies-service-hero__breadcrumb a {
	color: rgba(245,239,229,0.7);
	border-bottom-color: transparent;
}
.eddies-page-hero .eddies-service-hero__breadcrumb a:hover {
	color: #EBBA4D;
	border-bottom-color: #EBBA4D;
}
.eddies-page-hero .eddies-service-hero__breadcrumb .sep { color: rgba(245,239,229,0.3); }

/* Buttons row inside .eddies-page-hero (gold/ghost on dark) */
.eddies-page-hero .eddies-service-hero__buttons {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 32px;
}

/* TrustIndex live-feed wrapper on light bg — give the widget breathing room */
.eddies-trustindex-feed .eddies-section-head {
	margin-bottom: 48px;
}
.eddies-trustindex-feed .ti-widget,
.eddies-trustindex-feed [class*="ti-widget"],
.eddies-trustindex-feed .trustindex-widget {
	margin: 0;
}
.eddies-trustindex-feed .ti-widget-container,
.eddies-trustindex-feed .ti-reviews-container {
	background: transparent !important;
}

/* Pricing menu section — extra breathing room around the shortcode */
.eddies-pricing-menu .eddies-section-head { margin-bottom: 40px; }
.eddies-pricing-menu .eddies-pricing { margin-top: 0; }

/* ---------- 23. Centered design — symmetric content, no left shift (session 9, iteration 3) ----------
 *
 * User feedback over 3 iterations:
 *   - First: text positions inconsistent ("staircase")
 *   - Second: content shifted left with empty right
 *   - Third: still shifted, "make it even — maybe center everything since it became wider"
 *
 * This section is the authoritative layout source. Strategy: wide container + everything centered
 * within it with symmetric gutters. No more left rail. Body text caps at readable line length and
 * sits centered. Section-heads, FAQ, pricing menu, all centered as blocks. Why-grid items have
 * their content centered within each cell.
 *
 * Wide container intentionally absorbs all responsive scaling: from min(95vw, 1700px). On 1920px
 * viewport ≈ 1700px content area; on 1366px ≈ 1297px; clamps at 1700 on wider displays.
 */

/* === Container width === */
.eddies-container,
.eddies-container--narrow {
	max-width: min(95vw, 1700px);
}

/* === Reset WP per-instance contentSize caps on ALL non-hero, non-CTA sections === */
.eddies-section:not(.eddies-page-hero):not(.eddies-cta) .eddies-container .wp-block-group__inner-container > * {
	max-width: none !important;
}

/* === Intro section: eyebrow + H2 fill width; body paragraphs cap and center as blocks === */
/* Eyebrow + H2 inside intro stay full width (they auto-center via WP rule, but width is 100%). */
.eddies-intro .eddies-container .wp-block-group__inner-container > .eddies-lead,
.eddies-intro .eddies-container .wp-block-group__inner-container > .eddies-body {
	max-width: 72ch !important;
	margin-left: auto !important;
	margin-right: auto !important;
}

/* === Section-head: block layout, centered text, optional __more link below === */
.eddies-section-head {
	display: block;
	text-align: center;
	border-bottom: 1px solid #1A1714;
	padding-bottom: 32px;
	margin-bottom: 56px;
	max-width: none;
}
.eddies-section-head--dark { border-bottom-color: #EBBA4D; }
.eddies-section-head__main {
	flex: none;
	text-align: center;
}
.eddies-section-head__h2 {
	max-width: none;
	margin-left: auto;
	margin-right: auto;
	text-align: center;
	text-wrap: balance;
}
.eddies-section-head__main .eddies-eyebrow {
	margin-left: auto;
	margin-right: auto;
	text-align: center;
}
.eddies-section-head__more {
	display: inline-block;
	margin-top: 24px;
	text-align: center;
}

/* === FAQ section: section-head + accordion centered === */
.eddies-faq .eddies-faq__list {
	max-width: 1100px;
	margin-left: auto !important;
	margin-right: auto !important;
}

/* === Why grid (4-quadrant) ===
 * Items use natural left alignment. Headings often have manual <br> line breaks
 * ("Thirty years on<br>the same block.") and a previous attempt to text-align: center
 * caused each line to center independently — making the second line look stair-stepped
 * from the first. Left-align fixes that. The grid itself centers the four items as a unit. */
.eddies-why__h3 {
	max-width: 22ch;
}
.eddies-why__body {
	max-width: 56ch;
}

/* === Pricing menu shortcode: centered within wide container === */
.eddies-pricing-menu .eddies-pricing {
	max-width: 1100px;
	margin-left: auto;
	margin-right: auto;
}
.eddies-pricing-menu .eddies-pricing-note {
	max-width: 1100px;
	margin-left: auto;
	margin-right: auto;
	text-align: center;
}

/* === Page-hero: centered (entry) === */
.eddies-page-hero .eddies-container--narrow {
	max-width: min(85vw, 1280px);
}
.eddies-page-hero .wp-block-group__inner-container > * {
	max-width: 1180px;
}

/* === CTA: centered (closer) === */
.eddies-cta .eddies-container--narrow {
	max-width: min(80vw, 1000px);
}
.eddies-cta .wp-block-group__inner-container > * {
	max-width: 900px;
}

/* === Service hero: 2-col stays as photo+text === */
/* (no override needed beyond uncapping above — flex columns fill the width) */


/* ---------- 24. Our Barbers — editorial cards (session 9, page Our Barbers) ----------
 *
 * Vertical list of barber cards on a single page. Each card is a 2-column grid (photo / content)
 * with alternating direction for visual rhythm. David (founder) goes first. Person microdata is
 * embedded inline on each card. */

.eddies-barbers-list {
	/* container in this section uses the same wide rail as the rest of the site */
}

.eddies-barber-card {
	display: grid;
	grid-template-columns: 1fr 1.15fr;
	gap: clamp(40px, 6vw, 96px);
	align-items: center;
	padding: clamp(72px, 9vw, 128px) 0;
	max-width: 1280px;
	margin: 0 auto;
}
.eddies-barber-card + .eddies-barber-card {
	border-top: 1px solid rgba(26,23,20,0.12);
}
.eddies-barber-card--reverse {
	grid-template-columns: 1.15fr 1fr;
}
.eddies-barber-card--reverse .eddies-barber-card__photo {
	grid-column: 2;
	grid-row: 1;
}
.eddies-barber-card--reverse .eddies-barber-card__content {
	grid-column: 1;
	grid-row: 1;
}

.eddies-barber-card__photo {
	margin: 0;
	aspect-ratio: 4/5;
	background: #1A1714;
	overflow: hidden;
}
.eddies-barber-card__photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	filter: saturate(0.95) contrast(1.02);
}

.eddies-barber-card__content {
	max-width: 56ch;
}
.eddies-barber-card__eyebrow {
	font-family: Inter, -apple-system, sans-serif;
	font-size: 12px;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: #8A8377;
	font-weight: 600;
	margin: 0 0 18px 0;
}
.eddies-barber-card--founder .eddies-barber-card__eyebrow {
	color: #C99830;
}
.eddies-barber-card__name {
	font-family: 'DM Serif Display', serif;
	font-weight: 400;
	font-size: clamp(2.25rem, 4vw, 3.25rem);
	line-height: 1.05;
	letter-spacing: -0.01em;
	color: #1A1714;
	margin: 0 0 24px 0;
	text-wrap: balance;
}
.eddies-barber-card__bio {
	font-family: Inter, sans-serif;
	font-size: 1.0625rem;
	line-height: 1.65;
	color: #2A2520;
	margin: 0 0 20px 0;
}
.eddies-barber-card__bio:last-child { margin-bottom: 0; }

.eddies-barber-card__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 16px 28px;
	margin: 0 0 24px 0;
	padding: 14px 0;
	border-top: 1px solid rgba(26,23,20,0.18);
	border-bottom: 1px solid rgba(26,23,20,0.18);
}
.eddies-barber-card__meta-item {
	display: flex;
	flex-direction: column;
	gap: 4px;
}
.eddies-barber-card__meta-label {
	font-family: Inter, sans-serif;
	font-size: 10px;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: #8A8377;
	font-weight: 600;
}
.eddies-barber-card__meta-value {
	font-family: Inter, sans-serif;
	font-size: 14px;
	font-weight: 600;
	color: #1A1714;
}

@media (max-width: 900px) {
	.eddies-barber-card,
	.eddies-barber-card--reverse {
		grid-template-columns: 1fr;
		gap: 32px;
		padding: 56px 0;
	}
	.eddies-barber-card--reverse .eddies-barber-card__photo,
	.eddies-barber-card--reverse .eddies-barber-card__content {
		grid-column: 1;
	}
	.eddies-barber-card--reverse .eddies-barber-card__photo {
		grid-row: 1;
	}
	.eddies-barber-card--reverse .eddies-barber-card__content {
		grid-row: 2;
	}
	.eddies-barber-card__photo {
		aspect-ratio: 16/10;
		max-height: 480px;
	}
}


/* ---------- 25. Contact page ---------- */

.eddies-contact-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: clamp(48px, 6vw, 96px);
	max-width: 1280px;
	margin: 0 auto;
	align-items: start;
}
@media (max-width: 900px) {
	.eddies-contact-grid {
		grid-template-columns: 1fr;
		gap: 48px;
	}
}

/* === Left column: contact info === */
.eddies-contact-info__block + .eddies-contact-info__block {
	margin-top: 40px;
	padding-top: 40px;
	border-top: 1px solid rgba(26,23,20,0.12);
}
.eddies-contact-info__label {
	font-family: Inter, sans-serif;
	font-size: 12px;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: #8A8377;
	font-weight: 600;
	margin: 0 0 14px 0;
}
.eddies-contact-info__h3 {
	font-family: 'DM Serif Display', serif;
	font-weight: 400;
	font-size: clamp(1.5rem, 2.2vw, 1.875rem);
	line-height: 1.2;
	color: #1A1714;
	margin: 0 0 14px 0;
}
.eddies-contact-info__body {
	font-family: Inter, sans-serif;
	font-size: 1rem;
	line-height: 1.65;
	color: #2A2520;
	margin: 0;
}
.eddies-contact-info__body + .eddies-contact-info__body { margin-top: 12px; }
.eddies-contact-info__link {
	display: block;
	font-family: 'DM Serif Display', serif;
	font-weight: 400;
	font-size: clamp(1.5rem, 2vw, 1.75rem);
	color: #1A1714;
	text-decoration: none;
	border-bottom: 1px solid transparent;
	transition: color 180ms, border-color 180ms;
	margin: 0 0 6px 0;
}
.eddies-contact-info__link:hover {
	color: #C99830;
	border-bottom-color: #C99830;
}
.eddies-contact-info__sub {
	font-family: Inter, sans-serif;
	font-size: 13px;
	letter-spacing: 0.06em;
	color: #5A544D;
	margin: 0 0 18px 0;
}

/* Hours dl */
.eddies-contact-info__hours {
	margin: 0;
	display: grid;
	grid-template-columns: max-content auto;
	gap: 8px 32px;
	font-family: Inter, sans-serif;
	font-size: 15px;
}
.eddies-contact-info__hours dt {
	color: #2A2520;
	font-weight: 600;
}
.eddies-contact-info__hours dd {
	color: #2A2520;
	margin: 0;
}
.eddies-contact-info__hours .closed {
	color: #8A8377;
	font-style: italic;
}

/* === Right column: form === */
.eddies-contact-form {
	background: #FAF5EC;
	padding: clamp(28px, 4vw, 48px);
	border: 1px solid rgba(26,23,20,0.10);
}
.eddies-contact-form__label-text {
	display: block;
	font-family: Inter, sans-serif;
	font-size: 11px;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: #5A544D;
	font-weight: 600;
	margin-bottom: 6px;
}
.eddies-contact-form__field {
	margin: 0 0 22px 0;
}
.eddies-contact-form__field--row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 18px;
}
@media (max-width: 560px) {
	.eddies-contact-form__field--row { grid-template-columns: 1fr; gap: 0; }
	.eddies-contact-form__field--row .eddies-contact-form__field { margin-bottom: 22px; }
}

.eddies-contact-form__input,
.eddies-contact-form__textarea,
.eddies-contact-form__select {
	width: 100%;
	box-sizing: border-box;
	border: 1px solid rgba(26,23,20,0.20);
	background: #FFFFFF;
	padding: 12px 14px;
	font-family: Inter, sans-serif;
	font-size: 15px;
	color: #1A1714;
	border-radius: 0;
	transition: border-color 180ms, box-shadow 180ms;
}
.eddies-contact-form__input:focus,
.eddies-contact-form__textarea:focus,
.eddies-contact-form__select:focus {
	outline: 0;
	border-color: #EBBA4D;
	box-shadow: 0 0 0 3px rgba(235, 186, 77, 0.18);
}
.eddies-contact-form__textarea {
	min-height: 140px;
	resize: vertical;
}

/* Honeypot — visually hidden but not display:none (bots skip display:none) */
.eddies-contact-form__honeypot {
	position: absolute !important;
	left: -9999px;
	width: 1px;
	height: 1px;
	overflow: hidden;
}

.eddies-contact-form__submit {
	display: inline-block;
	border: 1px solid #1A1714;
	background: #1A1714;
	color: #F5EFE5;
	padding: 14px 32px;
	font-family: Inter, sans-serif;
	font-size: 13px;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	font-weight: 700;
	cursor: pointer;
	transition: background 180ms, color 180ms;
	border-radius: 0;
}
.eddies-contact-form__submit:hover {
	background: #EBBA4D;
	border-color: #EBBA4D;
	color: #1A1714;
}

.eddies-contact-form__fineprint {
	font-family: Inter, sans-serif;
	font-size: 12px;
	line-height: 1.5;
	color: #5A544D;
	margin: 18px 0 0 0;
}

.eddies-contact-form__notice {
	padding: 14px 16px;
	margin: 0 0 24px 0;
	font-family: Inter, sans-serif;
	font-size: 14px;
	line-height: 1.5;
	border-left: 3px solid #EBBA4D;
	background: rgba(235, 186, 77, 0.12);
	color: #2A2520;
}
.eddies-contact-form__notice--fail {
	border-left-color: #B85040;
	background: rgba(184, 80, 64, 0.10);
}

/* === Map section (full-width below the grid) === */
.eddies-contact-map {
	width: 100%;
	max-width: 1700px;
	margin: 0 auto;
	aspect-ratio: 16/7;
	background: #1A1714;
	overflow: hidden;
}
.eddies-contact-map iframe {
	width: 100%;
	height: 100%;
	border: 0;
	display: block;
}
@media (max-width: 720px) {
	.eddies-contact-map { aspect-ratio: 4/3; }
}


/* ---------- 26. Journal — editorial blog post layout ---------- */

/* Smooth scroll for TOC anchor jumps + give headings a buffer so they don't sit flush
 * against the sticky site header when scrolled into view. */
html { scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
}
.eddies-journal-prose h2,
.eddies-journal-prose h3 {
	scroll-margin-top: 120px;
}

/* Single CPT page: hide WP/Kadence's default title + breadcrumb header — we render our own dark hero
 * via the_content filter, so the default one would be a duplicate.
 * Also kill the default content padding so our full-bleed sections actually go edge-to-edge. */
body.single-eddies_journal .entry-header,
body.single-eddies_journal .page-title-wrap,
body.single-eddies_journal .single-related-wrap,
body.single-eddies_journal .author-box-area,
body.single-eddies_journal .content-area > article > .entry-meta,
body.single-eddies_area .entry-header,
body.single-eddies_area .page-title-wrap,
body.single-eddies_area .single-related-wrap,
body.single-eddies_area .author-box-area,
body.single-eddies_area .content-area > article > .entry-meta { display: none !important; }
body.single-eddies_journal .content-area,
body.single-eddies_journal .site-content,
body.single-eddies_journal .content-container,
body.single-eddies_journal .site-main,
body.single-eddies_journal .content-wrap,
body.single-eddies_journal .entry-content-wrap,
body.single-eddies_area .content-area,
body.single-eddies_area .site-content,
body.single-eddies_area .content-container,
body.single-eddies_area .site-main,
body.single-eddies_area .content-wrap,
body.single-eddies_area .entry-content-wrap { padding: 0 !important; margin: 0 !important; max-width: none !important; }
body.single-eddies_journal article.entry,
body.single-eddies_area article.entry { background: transparent !important; }
body.single-eddies_journal .entry-content > *,
body.single-eddies_area .entry-content > * { margin-top: 0 !important; margin-bottom: 0 !important; }


/* Dek / standfirst — large subtitle directly under the H1 in the post hero */
.eddies-journal-dek {
	font-family: 'DM Serif Display', serif;
	font-weight: 400;
	font-style: italic;
	font-size: clamp(1.25rem, 1.8vw, 1.625rem);
	line-height: 1.4;
	color: rgba(245, 239, 229, 0.86);
	margin: 24px 0 0 0;
	max-width: 720px;
	text-wrap: balance;
}

/* Byline block — author photo + name + role + date + reading time */
.eddies-journal-byline {
	display: flex;
	align-items: center;
	gap: 16px;
	margin: 32px 0 0 0;
	padding: 24px 0 0 0;
	border-top: 1px solid rgba(245, 239, 229, 0.18);
}
.eddies-journal-byline__photo {
	width: 64px;
	height: 64px;
	border-radius: 50%;
	overflow: hidden;
	flex-shrink: 0;
	background: #2A2520;
}
.eddies-journal-byline__photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.eddies-journal-byline__text {
	display: flex;
	flex-direction: column;
	gap: 2px;
}
.eddies-journal-byline__name {
	font-family: 'DM Serif Display', serif;
	font-weight: 400;
	font-size: 1.125rem;
	color: #F5EFE5;
	margin: 0;
	line-height: 1.2;
}
.eddies-journal-byline__role {
	font-family: Inter, sans-serif;
	font-size: 13px;
	color: rgba(245, 239, 229, 0.72);
	margin: 0;
	line-height: 1.4;
}
.eddies-journal-byline__meta {
	font-family: Inter, sans-serif;
	font-size: 12px;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: #EBBA4D;
	margin: 4px 0 0 0;
	font-weight: 600;
}
.eddies-journal-byline__meta .sep { margin: 0 8px; color: rgba(235, 186, 77, 0.5); }

/* Prose body — typography for long-form reading */
.eddies-journal-prose {
	max-width: 720px;
	margin: 0 auto;
	font-family: Inter, sans-serif;
}
.eddies-journal-prose > * + * { margin-top: 1.25em; }
.eddies-journal-prose p {
	font-size: 1.125rem;
	line-height: 1.7;
	color: #2A2520;
	margin: 0;
}
.eddies-journal-prose h2 {
	font-family: 'DM Serif Display', serif;
	font-weight: 400;
	font-size: clamp(1.625rem, 2.4vw, 2.125rem);
	line-height: 1.2;
	color: #1A1714;
	margin: 56px 0 16px 0 !important;
	max-width: 30ch;
	text-wrap: balance;
}
.eddies-journal-prose h3 {
	font-family: 'DM Serif Display', serif;
	font-weight: 400;
	font-size: 1.375rem;
	line-height: 1.3;
	color: #1A1714;
	margin: 36px 0 12px 0 !important;
	max-width: 32ch;
}
.eddies-journal-prose ul,
.eddies-journal-prose ol {
	padding-left: 24px;
	margin: 0;
}
.eddies-journal-prose li {
	font-size: 1.0625rem;
	line-height: 1.65;
	color: #2A2520;
	margin: 0 0 10px 0;
}
.eddies-journal-prose li::marker { color: #C99830; }
.eddies-journal-prose a {
	color: #1A1714;
	text-decoration: none;
	border-bottom: 1px solid #C99830;
	transition: color 180ms, border-color 180ms;
}
.eddies-journal-prose a:hover { color: #C99830; }
.eddies-journal-prose strong { color: #1A1714; font-weight: 700; }
.eddies-journal-prose em { font-style: italic; }
.eddies-journal-prose blockquote {
	margin: 32px 0;
	padding: 0 0 0 24px;
	border-left: 3px solid #EBBA4D;
	font-family: 'DM Serif Display', serif;
	font-style: italic;
	font-size: 1.375rem;
	line-height: 1.45;
	color: #1A1714;
}
.eddies-journal-prose .has-drop-cap:first-letter {
	float: left;
	font-family: 'DM Serif Display', serif;
	font-size: 4.5em;
	line-height: 0.85;
	color: #EBBA4D;
	margin: 4px 12px -4px 0;
	font-weight: 400;
}

/* Callout boxes — sidebar tips / definitions / warnings */
.eddies-journal-callout {
	background: #FAF5EC;
	border-left: 3px solid #EBBA4D;
	padding: 24px 28px;
	margin: 36px 0;
	font-family: Inter, sans-serif;
}
.eddies-journal-callout__label {
	font-size: 11px;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: #C99830;
	font-weight: 700;
	margin: 0 0 8px 0;
}
.eddies-journal-callout__body {
	font-size: 1rem;
	line-height: 1.6;
	color: #2A2520;
	margin: 0;
}

/* Table of contents */
.eddies-journal-toc {
	background: #FAF5EC;
	border: 1px solid rgba(26,23,20,0.12);
	padding: 24px 28px;
	margin: 0 auto 56px auto;
	max-width: 720px;
	font-family: Inter, sans-serif;
}
.eddies-journal-toc__label {
	font-size: 11px;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: #8A8377;
	font-weight: 700;
	margin: 0 0 14px 0;
}
.eddies-journal-toc ol {
	list-style: none;
	margin: 0;
	padding: 0;
	counter-reset: toc;
}
.eddies-journal-toc li {
	counter-increment: toc;
	padding: 8px 0;
	border-top: 1px solid rgba(26,23,20,0.08);
	font-size: 15px;
	color: #2A2520;
}
.eddies-journal-toc li:first-child { border-top: 0; }
.eddies-journal-toc li::before {
	content: counter(toc, decimal-leading-zero);
	color: #C99830;
	font-weight: 700;
	margin-right: 14px;
	font-family: 'DM Serif Display', serif;
}
.eddies-journal-toc a {
	color: #1A1714;
	text-decoration: none;
	border-bottom: 1px solid transparent;
}
.eddies-journal-toc a:hover {
	color: #C99830;
	border-bottom-color: #C99830;
}

/* Author bio (bottom of post) */
.eddies-journal-author-bio {
	display: flex;
	gap: 28px;
	align-items: flex-start;
	max-width: 760px;
	margin: 64px auto 0 auto;
	padding: 40px 0 0 0;
	border-top: 1px solid rgba(26,23,20,0.18);
}
.eddies-journal-author-bio__photo {
	width: 96px;
	height: 96px;
	border-radius: 50%;
	overflow: hidden;
	background: #2A2520;
	flex-shrink: 0;
	margin: 0;
}
.eddies-journal-author-bio__photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.eddies-journal-author-bio__label {
	font-family: Inter, sans-serif;
	font-size: 11px;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: #8A8377;
	font-weight: 700;
	margin: 0 0 8px 0;
}
.eddies-journal-author-bio__name {
	font-family: 'DM Serif Display', serif;
	font-weight: 400;
	font-size: 1.5rem;
	color: #1A1714;
	margin: 0 0 8px 0;
}
.eddies-journal-author-bio__role {
	font-family: Inter, sans-serif;
	font-size: 14px;
	color: #5A544D;
	margin: 0 0 14px 0;
	font-style: italic;
}
.eddies-journal-author-bio__body {
	font-family: Inter, sans-serif;
	font-size: 15px;
	line-height: 1.6;
	color: #2A2520;
	margin: 0;
}
.eddies-journal-author-bio__body a {
	color: #1A1714;
	border-bottom: 1px solid #C99830;
	text-decoration: none;
}
@media (max-width: 720px) {
	.eddies-journal-author-bio { flex-direction: column; gap: 16px; }
}

/* Journal hub grid */
.eddies-journal-list {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: clamp(28px, 3vw, 48px);
	max-width: 1280px;
	margin: 0 auto;
}
@media (max-width: 900px) {
	.eddies-journal-list { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 600px) {
	.eddies-journal-list { grid-template-columns: 1fr; }
}
.eddies-journal-card {
	display: block;
	text-decoration: none;
	color: inherit;
	background: #FFFFFF;
	border: 1px solid rgba(26,23,20,0.12);
	transition: transform 220ms ease, box-shadow 220ms ease;
}
.eddies-journal-card:hover {
	transform: translateY(-2px);
	box-shadow: 0 12px 32px rgba(26,23,20,0.10);
}
.eddies-journal-card__photo {
	margin: 0;
	aspect-ratio: 16/10;
	background: #1A1714;
	overflow: hidden;
}
.eddies-journal-card__photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 400ms ease;
}
.eddies-journal-card:hover .eddies-journal-card__photo img {
	transform: scale(1.04);
}
.eddies-journal-card__body {
	padding: 24px 28px 28px 28px;
}
.eddies-journal-card__meta {
	font-family: Inter, sans-serif;
	font-size: 11px;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: #8A8377;
	font-weight: 600;
	margin: 0 0 12px 0;
}
.eddies-journal-card__meta .sep { margin: 0 6px; color: #C9C2B4; }
.eddies-journal-card__h3 {
	font-family: 'DM Serif Display', serif;
	font-weight: 400;
	font-size: 1.5rem;
	line-height: 1.2;
	color: #1A1714;
	margin: 0 0 12px 0;
	text-wrap: balance;
}
.eddies-journal-card__dek {
	font-family: Inter, sans-serif;
	font-size: 14px;
	line-height: 1.55;
	color: #2A2520;
	margin: 0 0 12px 0;
}
.eddies-journal-card__byline {
	font-family: Inter, sans-serif;
	font-size: 12px;
	color: #5A544D;
	margin: 0;
	letter-spacing: 0.04em;
}


/* ---------- 26a-tables. Editorial tables inside journal/area prose ---------- */
.eddies-journal-prose table,
.eddies-journal-prose figure.wp-block-table table {
	width: 100%;
	border-collapse: collapse;
	margin: 32px 0;
	font-family: Inter, sans-serif;
	font-size: 15px;
	line-height: 1.5;
	background: #FFFFFF;
	border: 1px solid rgba(26, 23, 20, 0.12);
}
.eddies-journal-prose figure.wp-block-table {
	margin: 32px 0;
	overflow-x: auto;
}
.eddies-journal-prose figure.wp-block-table table {
	margin: 0;
}
.eddies-journal-prose table th {
	font-size: 11px;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	font-weight: 700;
	color: #5A544D;
	text-align: left;
	padding: 14px 18px;
	background: #FAF5EC;
	border-bottom: 2px solid #C99830;
}
.eddies-journal-prose table td {
	padding: 14px 18px;
	color: #2A2520;
	border-top: 1px solid rgba(26, 23, 20, 0.08);
	vertical-align: top;
}
.eddies-journal-prose table tbody tr:hover {
	background: #FAF5EC;
}
.eddies-journal-prose table td:first-child {
	font-weight: 600;
	color: #1A1714;
}
@media (max-width: 720px) {
	.eddies-journal-prose table {
		display: block;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}
}


/* ---------- 26b. Studio credit bar (below Kadence footer) ---------- */
.eddies-studio-credit {
	background: #0F0D0B;
	padding: 18px 0;
	border-top: 1px solid rgba(245, 239, 229, 0.06);
}
.eddies-studio-credit__inner {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 clamp(20px, 4vw, 48px);
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 10px;
	font-family: Inter, sans-serif;
	font-size: 12px;
	letter-spacing: 0.06em;
	color: rgba(245, 239, 229, 0.45);
}
.eddies-studio-credit__brand {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: rgba(245, 239, 229, 0.78);
	text-decoration: none;
	font-weight: 600;
	transition: color 180ms;
}
.eddies-studio-credit__brand:hover {
	color: #EBBA4D;
}
.eddies-studio-credit__logo {
	height: 18px;
	width: auto;
	display: inline-block;
	opacity: 0.85;
	transition: opacity 180ms;
}
.eddies-studio-credit__brand:hover .eddies-studio-credit__logo {
	opacity: 1;
}
@media (max-width: 480px) {
	.eddies-studio-credit__inner {
		flex-direction: column;
		gap: 8px;
		text-align: center;
	}
}


/* ---------- 27. Areas We Serve — neighborhood landing pages ---------- */

/* Single area page body reuses .eddies-journal-prose for typography — see Section 26. */

/* Hub grid */
.eddies-area-list {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: clamp(28px, 3vw, 40px);
	max-width: 1280px;
	margin: 0 auto;
}
@media (max-width: 720px) {
	.eddies-area-list { grid-template-columns: 1fr; }
}

.eddies-area-card {
	display: grid;
	grid-template-columns: 220px 1fr;
	gap: 28px;
	text-decoration: none;
	color: inherit;
	background: #FFFFFF;
	border: 1px solid rgba(26,23,20,0.12);
	transition: transform 220ms ease, box-shadow 220ms ease;
	overflow: hidden;
}
.eddies-area-card:hover {
	transform: translateY(-2px);
	box-shadow: 0 12px 32px rgba(26,23,20,0.10);
}
.eddies-area-card__photo {
	margin: 0;
	aspect-ratio: 1/1;
	background: #1A1714;
	overflow: hidden;
}
.eddies-area-card__photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.eddies-area-card__body {
	padding: 28px 28px 28px 0;
	display: flex;
	flex-direction: column;
	justify-content: center;
}
.eddies-area-card__meta {
	font-family: Inter, sans-serif;
	font-size: 11px;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: #8A8377;
	font-weight: 600;
	margin: 0 0 12px 0;
}
.eddies-area-card__h3 {
	font-family: 'DM Serif Display', serif;
	font-weight: 400;
	font-size: 1.625rem;
	line-height: 1.2;
	color: #1A1714;
	margin: 0 0 10px 0;
}
.eddies-area-card__dek {
	font-family: Inter, sans-serif;
	font-size: 14px;
	line-height: 1.55;
	color: #2A2520;
	margin: 0 0 14px 0;
}
.eddies-area-card__more {
	font-family: Inter, sans-serif;
	font-size: 12px;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: #C99830;
	font-weight: 700;
}
@media (max-width: 560px) {
	.eddies-area-card { grid-template-columns: 1fr; }
	.eddies-area-card__photo { aspect-ratio: 16/10; }
	.eddies-area-card__body { padding: 24px; }
}


/* ---------- 28. Our App page — store buttons + screenshots grid ---------- */

/* Two store badges, side by side. Lives inside .eddies-page-hero (centered),
   but defaults to flex-start in any other context. */
.eddies-app-stores {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	align-items: center;
	justify-content: center;
	margin: 28px 0 0 0;
}
.eddies-app-stores__button {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	background: #0F0D0B;
	color: #F5EFE5;
	padding: 10px 22px 10px 18px;
	border-radius: 8px;
	text-decoration: none;
	font-family: Inter, sans-serif;
	transition: background 180ms ease, transform 180ms ease;
	min-width: 200px;
	border: 1px solid rgba(245, 239, 229, 0.18);
}
.eddies-app-stores__button:hover,
.eddies-app-stores__button:focus {
	background: #000000;
	transform: translateY(-1px);
}
.eddies-app-stores__icon {
	width: 28px;
	height: 28px;
	flex-shrink: 0;
	color: #F5EFE5;
}
.eddies-app-stores__text {
	display: flex;
	flex-direction: column;
	line-height: 1.1;
	text-align: left;
}
.eddies-app-stores__text-small {
	font-size: 10px;
	letter-spacing: 0.04em;
	color: rgba(245, 239, 229, 0.72);
	text-transform: uppercase;
	margin: 0;
}
.eddies-app-stores__text-large {
	font-size: 18px;
	font-weight: 600;
	color: #F5EFE5;
	margin-top: 2px;
	letter-spacing: -0.01em;
}

/* When the buttons sit inside a dark hero, the border-on-ink reads oddly. Drop it. */
.eddies-page-hero .eddies-app-stores__button {
	border-color: rgba(245, 239, 229, 0.28);
}
.eddies-page-hero .eddies-app-stores {
	justify-content: flex-start;
	margin-top: 36px;
}

/* 3-up phone screenshot grid */
.eddies-app-screens {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: clamp(20px, 3vw, 40px);
	max-width: 880px;
	margin: 0 auto;
	align-items: start;
}
.eddies-app-screens__item {
	margin: 0;
	text-align: center;
}
.eddies-app-screens__phone {
	margin: 0 auto;
	background: #0F0D0B;
	padding: 8px;
	border-radius: 28px;
	box-shadow: 0 16px 40px rgba(26, 23, 20, 0.18);
	overflow: hidden;
	width: 100%;
	max-width: 280px;
	aspect-ratio: 636 / 1284;
	display: flex;
}
.eddies-app-screens__phone img {
	width: 100%;
	height: 100%;
	display: block;
	border-radius: 20px;
	object-fit: cover;
}
.eddies-app-screens__caption {
	font-family: Inter, sans-serif;
	font-size: 13px;
	color: #5A544D;
	margin: 16px 0 0 0;
	line-height: 1.4;
	font-style: italic;
}
@media (max-width: 720px) {
	.eddies-app-screens {
		grid-template-columns: 1fr;
		max-width: 320px;
	}
}
