/* ============================================================
   Post T1 — decorative editorial single-post template.
   Used by templates/post-t1.php. Left-aligned title + bold
   pull-quote excerpt, centered 16:9 image, narrow-column body
   with a bold drop cap, share row, related-posts grid.
   ============================================================ */

.post-t1 {
	padding: 70px 0 100px;
}

/* ── Head: title + excerpt (aligned to the reading column) ── */
.post-t1__head {
	max-width: 782px;
	margin: 0 auto;
	padding: 0 40px;
	text-align: left;
}
.post-t1__title {
	font-family: 'Young Serif', Georgia, serif;
	font-weight: 400;
	font-size: clamp(36px, 5.5vw, 60px);
	line-height: 1.12;
	color: var(--off-black);
	margin: 0 0 28px 0;
}
.post-t1__excerpt {
	font-family: 'EB Garamond', Georgia, serif;
	font-weight: 700;
	font-style: italic;
	font-size: 20px;
	line-height: 1.5;
	color: var(--off-black);
	margin: 0;
	padding-left: 20px;
	border-left: 3px solid var(--off-black);
}

/* ── Hero image (16:9, centered) ─────────────────────────── */
.post-t1__image {
	max-width: 920px;
	margin: 48px auto 52px;
	padding: 0 40px;
}
.post-t1__img {
	display: block;
	width: 100%;
	aspect-ratio: 16 / 9;
	object-fit: cover;
	margin: 0;
}
.post-t1__credit {
	margin: 10px 0 0 0;
	text-align: left;
	font-family: 'JetBrains Mono', monospace;
	font-size: 12px;
	letter-spacing: 0.3px;
	color: var(--neutral-grey);
}

/* ── Date / Share meta bar ───────────────────────────────── */
.post-t1__meta {
	max-width: 702px;
	margin: 40px auto 36px;
	padding: 0 0 22px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	border-bottom: 1px solid var(--sweatpants);
}
.post-t1__meta-date {
	font-family: 'JetBrains Mono', monospace;
	font-weight: 500;
	font-size: 13px;
	letter-spacing: 1px;
	text-transform: uppercase;
	color: var(--off-black);
}
.post-t1__meta-share {
	display: flex;
	align-items: center;
	gap: 8px;
	font-family: 'JetBrains Mono', monospace;
	font-weight: 800;
	font-size: 13px;
	letter-spacing: 1px;
	text-transform: uppercase;
	color: var(--off-black);
	text-decoration: none;
	transition: color 0.15s;
}
.post-t1__meta-share:hover {
	color: var(--link-orange);
}
.post-t1__meta-share svg {
	width: 16px;
	height: 16px;
}

/* ── Body: narrow column, bold drop cap ──────────────────── */
.post-t1__body {
	max-width: 782px;
	margin: 0 auto;
	padding: 0 40px;
	font-family: 'EB Garamond', Georgia, serif;
	font-weight: 400;
	font-size: 21px;
	line-height: 1.75;
	color: var(--off-black);
}
.post-t1__body p {
	margin: 0 0 28px 0;
}
.post-t1__body h2,
.post-t1__body h3 {
	font-family: 'Young Serif', Georgia, serif;
	font-weight: 400;
	color: var(--off-black);
	line-height: 1.25;
	margin: 44px 0 20px 0;
}
.post-t1__body h2 { font-size: 30px; }
.post-t1__body h3 { font-size: 24px; }
.post-t1__body img {
	display: block;
	width: 100%;
	height: auto;
	margin: 12px 0 36px 0;
}
.post-t1__body blockquote {
	margin: 36px 0;
	padding-left: 24px;
	border-left: 3px solid var(--line-dark);
	font-style: italic;
	color: #4a473e;
}
.post-t1__body a {
	color: var(--link-orange);
	text-decoration-color: var(--link-orange);
	text-underline-offset: 3px;
}
.post-t1__body a:hover {
	color: var(--earth-orange);
	text-decoration-color: var(--earth-orange);
}

/* Drop cap — real bold (EB Garamond 700), not synthetic. */
.post-t1__body > p:first-of-type::first-letter {
	font-family: 'EB Garamond', Georgia, serif;
	font-weight: 700;
	font-size: 3.8em;
	line-height: 0.82;
	float: left;
	padding: 5px 9px 0 0;
	color: var(--off-black);
}

/* ── Share row ──────────────────────────────────────────── */
.post-t1__share {
	max-width: 940px;
	margin: 64px auto 0;
	padding: 0 40px;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
}
.post-t1__share-btn {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 18px 0;
	border: 1px solid var(--line-dark);
	margin-left: -1px; /* collapse doubled borders between cells */
	color: var(--off-black);
	transition: color 0.15s, background 0.15s;
}
.post-t1__share-btn:first-child { margin-left: 0; }
.post-t1__share-btn:hover {
	color: #fff;
	background: var(--off-black);
}
.post-t1__share-btn svg {
	width: 18px;
	height: 18px;
}

/* ── Subscribe CTA (dedicated form, id 29540565) ─────────── */
.post-t1__subscribe {
	max-width: 468px;
	margin: 64px auto 0;
	padding: 0 40px;
	text-align: center;
}
.post-t1__subscribe-head {
	font-family: 'JetBrains Mono', monospace;
	font-weight: 700;
	font-size: 20px;
	letter-spacing: 1px;
	text-transform: uppercase;
	color: var(--off-black);
	margin: 0 0 18px 0;
}

/* MailerLite form skin — !important required: webforms.min.js injects
   inline styles after load, which beats a plain stylesheet rule by
   specificity (same issue documented in subscribe.css for the main band). */
#mlb2-29540565 { width: 100% !important; max-width: 468px !important; margin: 0 auto !important; }
#mlb2-29540565 form { margin: 0 !important; }
#mlb2-29540565 .row-form { display: flex !important; align-items: center !important; background: #F7F5F2 !important; }
#mlb2-29540565 .ml-field-email { flex: 1 !important; min-width: 0 !important; }
#mlb2-29540565 input[type="email"] {
	display: block !important; width: 100% !important; box-sizing: border-box !important;
	background: transparent !important; color: #6b6b6b !important; border: 0 !important; outline: none !important;
	-webkit-appearance: none !important; appearance: none !important;
	font: 500 13px/20px 'JetBrains Mono', monospace !important;
	padding: 14px 16px !important; margin: 0 !important;
}
#mlb2-29540565 input::placeholder { color: #9a9a9a !important; }
#mlb2-29540565 button {
	background: #302D2A !important; color: #fff !important; border: 0 !important; border-radius: 0 !important; cursor: pointer !important;
	-webkit-appearance: none !important; appearance: none !important;
	font: 13px/20px 'Young Serif', serif !important; letter-spacing: .02em !important;
	padding: 14px 25px !important; margin: 0 !important;
	transition: background-color .2s !important;
}
#mlb2-29540565 button:hover { background: #1a1816 !important; }
#mlb2-29540565 .ml-error input { box-shadow: inset 0 0 0 1px #ff5252 !important; }
#mlb2-29540565 .row-success { padding: 14px 16px !important; background: #F7F5F2 !important; color: #6b6b6b !important; font: 500 13px 'JetBrains Mono', monospace !important; }

/* ── You might also like ────────────────────────────────── */
.post-t1__related {
	max-width: 1280px;
	margin: 72px auto 0;
	padding: 0 40px;
}
.post-t1__related-head {
	font-family: 'Young Serif', Georgia, serif;
	font-weight: 400;
	font-size: 32px;
	color: var(--off-black);
	margin: 0 0 28px 0;
}
.post-t1__related-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 30px 28px;
}
.post-t1__related-card {
	display: block;
	text-decoration: none;
	color: inherit;
}
.post-t1__related-card:hover .post-t1__related-title {
	text-decoration: underline;
	text-underline-offset: 4px;
}
.post-t1__related-img {
	display: block;
	width: 100%;
	aspect-ratio: 16 / 10;
	object-fit: cover;
	margin: 0 0 16px 0;
}
.post-t1__related-img--empty { background: var(--line); }
.post-t1__related-title {
	font-family: 'JetBrains Mono', monospace;
	font-weight: 800;
	font-size: 18px;
	letter-spacing: -0.3px;
	text-transform: uppercase;
	line-height: 1.35;
	color: var(--off-black);
	margin: 0 0 8px 0;
}
.post-t1__related-date {
	font-family: 'JetBrains Mono', monospace;
	font-size: 11px;
	letter-spacing: 0.5px;
	color: #a8a49e;
}

/* ── Responsive ─────────────────────────────────────────── */
@media (max-width: 900px) {
	.post-t1__image { padding: 0 24px; }
	.post-t1__related-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 560px) {
	.post-t1 { padding: 48px 0 64px; }
	.post-t1__head { padding: 0 20px; }
	.post-t1__meta { max-width: none; width: calc(100% - 40px); padding: 0 0 18px; margin: 28px auto 26px; }
	.post-t1__meta-date,
	.post-t1__meta-share { font-size: 12px; font-weight: 400; }
	.post-t1__excerpt { font-size: 18px; }
	.post-t1__image { padding: 0 20px; margin: 36px auto 40px; }
	.post-t1__body { padding: 0 20px; font-size: 19px; }
	.post-t1__body > p:first-of-type::first-letter { font-size: 2.9em; }
	.post-t1__share { padding: 0 20px; margin-top: 48px; }
	.post-t1__subscribe { padding: 0 20px; margin-top: 48px; }
	#mlb2-29540565 input[type="email"] { font-size: 12px !important; padding: 12px !important; }
	#mlb2-29540565 button { font-size: 11px !important; padding: 12px 16px !important; }
	.post-t1__related { padding: 0 20px; margin-top: 56px; }
	.post-t1__related-grid { grid-template-columns: 1fr; }
	.post-t1__related-head { font-size: 26px; }
}
