/* ==========================================================================
   WordPress-only additions (load after style.css): admin bar, skip link,
   plain blocks typed straight into a page, embeds.
   ========================================================================== */

/* Sticky header sits below the admin bar when logged in */
.admin-bar header.site{top:32px;}
@media(max-width:782px){.admin-bar header.site{top:46px;}}
@media(max-width:600px){.admin-bar header.site{top:0;}}

/* Skip link appears when focused with the keyboard */
.skip-link:focus{position:fixed;top:8px;left:8px;width:auto;height:auto;clip:auto;margin:0;padding:10px 16px;z-index:100;background:var(--ink);color:#fff;border-radius:4px;}

/* Plain blocks (paragraphs, headings, lists, images…) added directly to a page
   get the site width and readable spacing; full-width sections are left alone. */
.entry-content > :where(p,h1,h2,h3,h4,h5,h6,ul,ol,blockquote,pre,table,hr,.wp-block-image,.wp-block-buttons,.wp-block-group,.wp-block-columns,.wp-block-embed,.wp-block-quote,.wp-block-table){--bv-plain:1;max-width:1120px;margin-left:auto;margin-right:auto;padding-left:28px;padding-right:28px;}
.entry-content > :where(p,h1,h2,h3,h4,h5,h6,ul,ol,blockquote,pre,table,.wp-block-image,.wp-block-buttons,.wp-block-group,.wp-block-columns,.wp-block-embed,.wp-block-quote,.wp-block-table):first-child{margin-top:56px;}
.entry-content > :where(p,h1,h2,h3,h4,h5,h6,ul,ol,blockquote,pre,table,.wp-block-image,.wp-block-buttons,.wp-block-group,.wp-block-columns,.wp-block-embed,.wp-block-quote,.wp-block-table):last-child{margin-bottom:56px;}
.entry-content > :where(p,h1,h2,h3,h4,h5,h6,ul,ol,blockquote,pre,table,.wp-block-image,.wp-block-buttons,.wp-block-group,.wp-block-columns,.wp-block-embed,.wp-block-quote,.wp-block-table) + :where(p,h1,h2,h3,h4,h5,h6,ul,ol,blockquote,pre,table,.wp-block-image,.wp-block-buttons,.wp-block-group,.wp-block-columns,.wp-block-embed,.wp-block-quote,.wp-block-table){margin-top:18px;}
.entry-content > :where(p,h1,h2,h3,h4,h5,h6,ul,ol,blockquote,pre,table,.wp-block-image,.wp-block-buttons,.wp-block-group,.wp-block-columns,.wp-block-embed,.wp-block-quote,.wp-block-table) + :where(section,article){margin-top:56px;}
/* SCF wraps a block's inner text in this container; keep it layout-neutral */
.acf-innerblocks-container{display:contents;}
.entry-content > p,.entry-content > ul,.entry-content > ol{font-size:16.5px;line-height:1.75;color:var(--text-dim);}
.entry-content > ul,.entry-content > ol{padding-left:48px;}
.entry-content > h2,.entry-content > h3,.entry-content > h4{font-family:'Rosarivo',serif;font-weight:500;color:var(--text);line-height:1.25;}
.entry-content > h2{font-size:clamp(26px,3vw,32px);margin-top:36px;}
.entry-content > h3{font-size:22px;margin-top:28px;}
/* Links in plain text typed straight into a page (sections keep their own link colours) */
.entry-content > :where(p,ul,ol,h2,h3,h4,blockquote,.wp-block-quote) a{color:var(--ink-2);}
/* WordPress adds width/height attributes to images. Default them to height:auto
   with zero specificity, so the design's own sizes (aspect-ratio, fixed heights) win. */
:where(.entry-content img){height:auto;}

/* Fallback list template */
.entry-list{list-style:none;padding:40px 0 56px;}
.entry-list li{padding:12px 0;border-bottom:1px solid var(--line);font-size:17px;}
.page-content{padding-top:40px;padding-bottom:56px;}
.btn-link{color:var(--ink-2);}

/* Substack's own embed, if pasted in Site Settings */
.subscribe-embed{display:flex;justify-content:center;}
.subscribe-embed iframe{max-width:100%;border-radius:6px;}

/* ---- Section backgrounds (inc/blocks.php): light / tinted, alternating automatically ---- */
.bv-tone-light{background-color:var(--parchment)!important;}
.bv-tone-tinted{background-color:var(--parchment-2)!important;}
/* Cards that sit on a section keep contrast on either background */
.bv-tone-tinted .card{background:var(--parchment);}

/* Grids adapt to how many items they hold (data-count set by the block) */
.grid3[data-count="1"]{grid-template-columns:minmax(0,560px);justify-content:center;}
.grid3[data-count="2"]{grid-template-columns:repeat(2,1fr);}
@media(max-width:860px){.grid3[data-count]{grid-template-columns:1fr;}}

/* Editor: a block with nothing filled in yet */
.bv-empty{padding:28px;border:2px dashed var(--line);border-radius:8px;text-align:center;color:var(--text-dim);font-size:15px;background:var(--parchment);}

/* Jump links on any dark page hero (same look as the About page) */
.page-header .about-jump{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:30px;list-style:none;}
.page-header .about-jump a{display:inline-block;padding:8px 18px;border:1px solid rgba(248,242,230,.4);border-radius:2px;font-family:'Rosarivo',serif;font-size:16px;text-decoration:none;background:rgba(20,8,6,.45);color:#F8F2E6;transition:border-color .2s ease,color .2s ease,background .2s ease;}
.page-header .about-jump a:hover{background:rgba(20,8,6,.7);border-color:var(--brass-dim);color:var(--brass-dim);}
.ed-jump[data-count="1"]{grid-template-columns:minmax(0,320px);justify-content:center;}
.ed-jump[data-count="2"]{grid-template-columns:repeat(2,1fr);max-width:660px;}
@media(max-width:860px){.ed-jump[data-count]{grid-template-columns:1fr;}}
.sos-hero .about-jump a,.sos-hero .lede{color:#F3EAD6;}
.sos-hero .lede{margin:18px auto 0;max-width:56ch;font-size:17px;line-height:1.65;}
.sc-glory{font-family:'Marcellus',serif;font-style:italic;font-size:clamp(18px,2.2vw,22px);color:#F3EAD6;margin-bottom:14px;}
.sc-hero-cta{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;margin-top:30px;}
.sc-btn{display:inline-block;padding:12px 22px;border-radius:999px;background:var(--brass);color:#2A1A10;font-weight:600;font-size:15px;text-decoration:none;transition:background .2s ease,transform .2s ease;}
.sc-btn:hover{background:var(--brass-dim);transform:translateY(-2px);}
.sc-btn.ghost{background:transparent;border:1px solid rgba(248,242,230,.5);color:#F8F2E6;}
.sc-btn.ghost:hover{background:rgba(248,242,230,.12);}

/* Google maps (bviscs_map_embed): crop away Google's address card at the top; zoom buttons and map credits stay visible */
.bv-map{position:relative;overflow:hidden;width:100%;height:100%;}
.bv-map.bv-map iframe{position:absolute;left:0;top:-140px;width:100%;height:calc(100% + 140px);border:0;display:block;}
