/*
Theme Name: Catholic Cultural Revival
Description: Block theme for Catholic Cultural Revival. Structured investigations with archival apparatus. Design tokens live in theme.json; this file holds structural CSS for the templates and patterns.
Version: 0.1.0
Requires at least: 6.6
Requires PHP: 7.4
License: GPL-2.0-or-later
Text Domain: register
*/

:root { --register-wide: 1180px; }

/* ---------- Header ---------- */
header.wp-block-template-part { position: sticky; top: 0; z-index: 20; }
.admin-bar header.wp-block-template-part { top: 32px; }
.register-header {
	display: flex; align-items: center; justify-content: space-between; gap: 24px;
	padding: 18px clamp(18px, 4vw, 32px);
	background: rgba(244, 240, 232, .95);
	-webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px);
	border-bottom: 1px solid var(--wp--preset--color--line);
}
.register-header > * { margin: 0; }
.register-brand { font-size: 14px; letter-spacing: .16em; text-transform: uppercase; font-weight: 700; }
.register-brand a { text-decoration: none; }
.register-nav {
	font-family: var(--wp--preset--font-family--sans);
	font-size: 12px; letter-spacing: .08em; text-transform: uppercase;
}
.register-nav a { text-decoration: none; }

/* ---------- Layout ---------- */
.register-main { padding: 0 clamp(18px, 4vw, 32px) 80px; }
.register-hero, .register-filenotes, .register-wrap { max-width: var(--register-wide); margin-inline: auto; }
.register-hero { padding: 74px 0 40px; }
.register-wrap { padding-top: 60px; }
.register-article { padding-top: 50px; }

/* ---------- Hero ---------- */
.register-eyebrow-row { display: flex; flex-wrap: wrap; align-items: baseline; gap: .6em; margin-bottom: 22px; }
.register-eyebrow-row > * { margin: 0; }
.register-eyebrow, .register-eyebrow a {
	font-family: var(--wp--preset--font-family--sans);
	font-size: 12px; letter-spacing: .16em; text-transform: uppercase; font-weight: 700;
	color: var(--wp--preset--color--accent); margin: 0;
}
.register-eyebrow a { text-decoration: none; }
.register-hero h1 { max-width: 900px; margin: 0; }
.register-dek {
	max-width: 780px; margin-top: 28px;
	font-size: var(--wp--preset--font-size--dek); line-height: 1.45;
	color: var(--wp--preset--color--ink-soft);
}
.register-dek p { margin: 0; }
.register-meta {
	margin-top: 34px;
	font: 12px/1.4 var(--wp--preset--font-family--sans);
	letter-spacing: .06em; text-transform: uppercase; color: var(--wp--preset--color--muted);
}

/* ---------- File notes strip ---------- */
.register-filenotes {
	display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px;
	padding: 18px 0;
	border-top: 1px solid var(--wp--preset--color--line);
	border-bottom: 1px solid var(--wp--preset--color--line);
	font-size: var(--wp--preset--font-size--small);
}
.register-filenotes p, .register-filenotes ul { margin: 0; }
.register-filenotes a { text-decoration: none; }
.register-label {
	margin: 0 0 6px;
	font-family: var(--wp--preset--font-family--sans);
	font-size: 11px; letter-spacing: .14em; text-transform: uppercase; font-weight: 700;
	color: var(--wp--preset--color--muted);
}

/* ---------- Article ---------- */
p.has-drop-cap:not(:focus)::first-letter { color: var(--wp--preset--color--accent); }

/* ---------- Artifacts: source extract, finding, plate ---------- */
.register-artifact {
	margin-block: 46px;
	background: var(--wp--preset--color--plate);
	border: 1px solid var(--wp--preset--color--line);
}
.register-artifact > * { margin-block: 0; }
.register-artifact-head {
	display: flex; justify-content: space-between; align-items: center; gap: 20px;
	padding: 13px 16px; border-bottom: 1px solid var(--wp--preset--color--line);
	font-family: var(--wp--preset--font-family--sans);
	font-size: 11px; letter-spacing: .12em; text-transform: uppercase;
	color: var(--wp--preset--color--muted);
}
.register-artifact-head p { margin: 0; }
.register-artifact-body { padding: 24px; }

.register-artifact-body.register-source {
	border-left: 4px solid var(--wp--preset--color--accent);
	padding: 24px 24px 24px 20px; font-size: 1.125rem;
}
.register-source p { margin: 0; }
.register-source .register-cite {
	display: block; margin-top: 14px;
	font: 12px var(--wp--preset--font-family--sans); color: var(--wp--preset--color--muted);
}

.register-artifact-body.register-finding {
	display: grid; grid-template-columns: 150px 1fr; gap: 14px 24px; align-items: baseline;
	padding: 26px; background: var(--wp--preset--color--panel); font-size: 1rem;
}
.register-finding > * { margin: 0; }

.register-plate.wp-block-columns { gap: 0; margin: 0; min-height: 420px; }
.register-plate-art {
	display: flex; align-items: center; justify-content: center;
	padding: 26px; background: #d7d0c3;
}
.register-plate-art figure { margin: 0; }
.register-plate-art img, .register-plate-art svg { max-width: 100%; height: auto; }
.register-plate-caption { padding: 28px; }
.register-plate-caption h3 { margin: 0 0 18px; font-size: 1.875rem; }
.register-plate-caption p { font-size: 1rem; color: var(--wp--preset--color--ink-soft); }

/* ---------- Call to action ---------- */
.register-cta {
	margin-top: 58px; padding: 34px;
	background: var(--wp--preset--color--ink); color: var(--wp--preset--color--paper);
}
.register-cta h3 { margin: 0 0 8px; font-size: 1.875rem; color: inherit; }
.register-cta p { margin: 0 0 18px; font-size: 1rem; color: #d8d2c8; }
.register-cta a { color: inherit; }
.register-cta .wp-block-button__link { background: var(--wp--preset--color--paper); color: var(--wp--preset--color--ink); }
.register-cta p.register-cta-login { margin: 18px 0 0; font-size: .8125rem; }

/* ---------- Index / archive ---------- */
.register-index-item { padding: 28px 0; border-bottom: 1px solid var(--wp--preset--color--line); }
.register-index-item h2 { margin: 6px 0 0; }
.register-index-item .register-dek { margin-top: 10px; font-size: 1.125rem; }

/* ---------- Footer ---------- */
.register-footer {
	display: flex; justify-content: space-between; flex-wrap: wrap; gap: 20px;
	margin-top: 80px; padding: 26px clamp(18px, 4vw, 32px);
	border-top: 1px solid var(--wp--preset--color--line);
	font: 11px var(--wp--preset--font-family--sans);
	letter-spacing: .09em; text-transform: uppercase; color: var(--wp--preset--color--muted);
}
.register-footer p { margin: 0; }

/* ---------- Small screens ---------- */
@media (max-width: 720px) {
	.register-hero { padding: 48px 0 30px; }
	.register-filenotes { grid-template-columns: 1fr; gap: 14px; }
	.register-artifact-body.register-finding { grid-template-columns: 1fr; gap: 4px; }
	.register-finding .register-label { margin-top: 12px; }
	.register-footer { flex-direction: column; }
}

body{margin:0}*{box-sizing:border-box}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #7b211e;outline-offset:4px}.register-main,.register-article,.wp-block-column{min-width:0;overflow-wrap:anywhere}@media(max-width:782px){.admin-bar header.wp-block-template-part{top:46px}}@media(max-width:600px){.admin-bar header.wp-block-template-part{position:static}}