/* Shared chrome stays outside retained Elementor content, so homepage resets
   cannot override existing article markup, embeds or review widgets. */
body.gvn-sitewide { margin:0; background:#fff; }
.gvn-sitewide .gvn-site { width:100%; }
.gvn-sitewide .gvn-sitewide-header { position:relative; z-index:20; }
.gvn-sitewide .gvn-site .gvn-archive-main { padding-top:40px; padding-bottom:80px; min-height:55vh; }
.gvn-sitewide .gvn-archive-intro { border-bottom:3px solid #dd3333; padding-bottom:30px; margin-bottom:36px; }
.gvn-sitewide .gvn-site .gvn-breadcrumb { font-size:12px; color:#555; margin-bottom:32px; }
.gvn-sitewide .gvn-site .gvn-breadcrumb a { text-decoration:underline; text-underline-offset:3px; }
.gvn-sitewide .gvn-site .gvn-archive-intro>.gvn-eyebrow { color:#b22222; font-size:11px; letter-spacing:.12em; margin-bottom:12px; font-weight:800; text-transform:uppercase; }
.gvn-sitewide .gvn-site .gvn-archive-intro h1 { font-size:clamp(36px,5.5vw,72px); max-width:1050px; text-wrap:balance; }
.gvn-sitewide .gvn-site .gvn-archive-description { max-width:760px; color:#444; font-size:18px; line-height:1.65; margin-top:18px; }
.gvn-sitewide .gvn-site .gvn-archive-description a { text-decoration:underline; color:#b22222; }
.gvn-sitewide .gvn-site .gvn-archive-description:empty { display:none; }
.gvn-sitewide .gvn-site .gvn-archive-count { margin-top:18px; color:#626262; font-size:13px; }
.gvn-sitewide .gvn-archive-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:36px 28px; }
.gvn-sitewide .gvn-site .gvn-archive-card h2 { font-size:23px; line-height:1.2; margin-bottom:14px; }
.gvn-sitewide .gvn-archive-card .gvn-image-wrap { display:block; position:relative; overflow:hidden; aspect-ratio:16/10; background:#f0f0ee; }
.gvn-sitewide .gvn-archive-card .gvn-image-wrap img { width:100%; height:100%; object-fit:cover; }
.gvn-sitewide .gvn-site .gvn-archive-excerpt { font-size:15px; line-height:1.65; color:#555; margin-top:14px; }
.gvn-sitewide .gvn-site .gvn-archive-pagination { border-top:1px solid #ddd; margin-top:44px; padding-top:26px; }
.gvn-sitewide .gvn-archive-pagination .nav-links { display:flex; flex-wrap:wrap; gap:8px; }
.gvn-sitewide .gvn-archive-pagination .page-numbers { display:inline-flex; align-items:center; justify-content:center; min-height:44px; min-width:44px; padding:8px 14px; border:1px solid #ddd; }
.gvn-sitewide .gvn-archive-pagination .current { background:#111; color:#fff; border-color:#111; }
.gvn-sitewide .gvn-archive-pagination .screen-reader-text { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; }
.gvn-sitewide .gvn-site .gvn-site-search { max-width:620px; margin:26px 0; }
.gvn-sitewide .gvn-site-search label { display:block; font-size:13px; font-weight:700; margin-bottom:8px; }
.gvn-sitewide .gvn-site-search>div { display:flex; gap:8px; }
.gvn-sitewide .gvn-site-search input { min-width:0; width:100%; height:48px; padding:12px 14px; border:1px solid #777; border-radius:0; background:#fff; color:#111; font:inherit; }
.gvn-sitewide .gvn-site-search>div>input { flex:1 1 0; width:0; }
.gvn-sitewide .gvn-site .gvn-site-search button { flex:0 0 auto; white-space:nowrap; text-transform:none; }
.gvn-sitewide .gvn-site .gvn-site-search button, .gvn-sitewide .gvn-site .gvn-site-button { display:inline-flex; align-items:center; justify-content:center; gap:18px; min-height:48px; padding:12px 22px; background:#b22222; border:1px solid #b22222; color:#fff; font-size:14px; font-weight:700; text-decoration:none; line-height:1.4; }
.gvn-sitewide .gvn-site .gvn-site-search button:hover, .gvn-sitewide .gvn-site .gvn-site-button:hover { background:#111; border-color:#111; color:#fff; }
.gvn-sitewide .gvn-site .gvn-empty-state { background:#f5f5f3; padding:40px; }
.gvn-sitewide .gvn-empty-state p { margin:14px 0 24px; }
.gvn-sitewide .gvn-not-found { display:grid; grid-template-columns:1fr 1.4fr; align-items:center; gap:60px; padding:60px 0; }
.gvn-sitewide .gvn-error-number { font-size:clamp(110px,16vw,230px); font-weight:900; letter-spacing:-.09em; line-height:1; color:#111; }
.gvn-sitewide .gvn-error-number span { color:#dd3333; }
.gvn-sitewide .gvn-site .gvn-not-found h1 { font-size:clamp(34px,4vw,56px); margin:16px 0 20px; }
.gvn-sitewide .gvn-site .gvn-error-message { color:#555; font-size:18px; line-height:1.65; }
.gvn-sitewide .gvn-recovery-links { display:flex; flex-wrap:wrap; gap:12px; border-top:1px solid #ddd; padding-top:28px; }
.gvn-sitewide .gvn-recovery-links a { min-height:44px; display:flex; gap:24px; align-items:center; padding:10px 18px; border:1px solid #ddd; font-size:14px; font-weight:700; }
.gvn-sitewide .gvn-basic-page { width:min(1200px,calc(100% - 64px)); margin:48px auto 72px; color:#181818; background:#fff; }
.gvn-sitewide .gvn-page-title { font:800 clamp(32px,4vw,56px)/1.12 Arial,Helvetica,sans-serif; letter-spacing:-.03em; margin-bottom:32px; }
.gvn-sitewide .gvn-page-content { overflow-wrap:break-word; }
.gvn-sitewide .gvn-page-content img { max-width:100%; height:auto; }
.gvn-sitewide .gvn-preserved-content { margin-top:40px; margin-bottom:60px; }
@media(max-width:1000px) { .gvn-sitewide .gvn-archive-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.gvn-sitewide .gvn-not-found { gap:30px; } }
@media(max-width:600px) {
 .gvn-sitewide .gvn-site .gvn-archive-main { padding-top:24px; padding-bottom:48px; }
 .gvn-sitewide .gvn-archive-grid { grid-template-columns:minmax(0,1fr); gap:32px; }
 .gvn-sitewide .gvn-site .gvn-archive-card h2 { font-size:23px; }
 .gvn-sitewide .gvn-not-found { grid-template-columns:minmax(0,1fr); gap:24px; padding:20px 0 36px; }
 .gvn-sitewide .gvn-error-number { font-size:130px; }
 .gvn-sitewide .gvn-basic-page { width:calc(100% - 36px); margin:28px auto 48px; }
 .gvn-sitewide .gvn-site .gvn-empty-state { padding:24px; }
 .gvn-sitewide .gvn-site-search button { padding-inline:14px !important; }
}
@media(prefers-reduced-motion:reduce) { .gvn-sitewide .gvn-card img { transition:none !important; transform:none !important; } }
